/* ============================================================
   Web Tasarım Ankara - Ana Stiller
   Profesyonel, modern, mobil-öncelikli
   ============================================================ */

:root {
	--wta-primary: #2563eb;
	--wta-primary-700: #1d4ed8;
	--wta-primary-50: #eff6ff;
	--wta-secondary: #0f172a;
	--wta-text: #0f172a;
	--wta-muted: #64748b;
	--wta-bg: #ffffff;
	--wta-bg-soft: #f8fafc;
	--wta-border: #e2e8f0;
	--wta-success: #16a34a;
	--wta-whatsapp: #25D366;
	--wta-radius: 14px;
	--wta-radius-lg: 22px;
	--wta-shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
	--wta-shadow: 0 10px 30px -10px rgba(15, 23, 42, 0.15), 0 2px 6px rgba(15, 23, 42, 0.06);
	--wta-shadow-lg: 0 25px 60px -15px rgba(15, 23, 42, 0.25);
	--wta-transition: all .25s cubic-bezier(.4, 0, .2, 1);
}

/* ---------- Base ---------- */
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html { scroll-behavior: smooth; }
body {
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11';
	color: var(--wta-text);
	background: var(--wta-bg);
	line-height: 1.6;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Plus Jakarta Sans', 'Inter', sans-serif;
	letter-spacing: -0.015em;
	color: var(--wta-secondary);
	font-weight: 700;
}
h1, .display-1, .display-2, .display-3, .display-4, .display-5, .display-6 { letter-spacing: -0.025em; }
a { color: var(--wta-primary); transition: var(--wta-transition); }
a:hover { color: var(--wta-primary-700); }

/* ---------- Bootstrap tema uyumu ---------- */
.btn {
	border-radius: 10px;
	font-weight: 600;
	padding: .6rem 1.2rem;
	letter-spacing: -0.01em;
	transition: var(--wta-transition);
}
.btn-lg { padding: .85rem 1.6rem; border-radius: 12px; }
.btn-primary {
	background: var(--wta-primary);
	border-color: var(--wta-primary);
	box-shadow: 0 1px 2px rgba(37, 99, 235, 0.1), 0 4px 12px -2px rgba(37, 99, 235, 0.3);
}
.btn-primary:hover, .btn-primary:focus {
	background: var(--wta-primary-700);
	border-color: var(--wta-primary-700);
	transform: translateY(-1px);
	box-shadow: 0 2px 4px rgba(37, 99, 235, 0.12), 0 10px 20px -4px rgba(37, 99, 235, 0.4);
}
.btn-outline-dark { border-color: var(--wta-border); color: var(--wta-text); }
.btn-outline-dark:hover { background: var(--wta-text); border-color: var(--wta-text); color: #fff; transform: translateY(-1px); }

.bg-primary-subtle { background-color: var(--wta-primary-50) !important; }
.text-primary { color: var(--wta-primary) !important; }
.bg-primary { background-color: var(--wta-primary) !important; }

.rounded-3 { border-radius: 12px !important; }
.rounded-4 { border-radius: var(--wta-radius-lg) !important; }

.badge.rounded-pill { padding: .45em 1em; font-weight: 600; font-size: .78em; }

.shadow-sm { box-shadow: var(--wta-shadow-sm) !important; }
.shadow { box-shadow: var(--wta-shadow) !important; }
.shadow-lg { box-shadow: var(--wta-shadow-lg) !important; }

.py-lg-6 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
@media (max-width: 991.98px) {
	.py-lg-6 { padding-top: 3.5rem !important; padding-bottom: 3.5rem !important; }
}

/* ---------- Topbar / Header ---------- */
.wta-topbar { font-size: .82rem; letter-spacing: .01em; }
.wta-topbar a { transition: var(--wta-transition); }
.wta-topbar a:hover { color: #fff !important; opacity: .9; }

.site-header {
	backdrop-filter: saturate(180%) blur(14px);
	-webkit-backdrop-filter: saturate(180%) blur(14px);
	background: rgba(255, 255, 255, 0.92) !important;
	border-bottom: 1px solid var(--wta-border);
}
.site-header .navbar-brand img { max-height: 48px; }
.site-header .nav-link {
	font-weight: 600;
	color: var(--wta-text);
	padding: .6rem 1rem !important;
	position: relative;
	letter-spacing: -0.01em;
}
.site-header .nav-link:hover,
.site-header .nav-link.active { color: var(--wta-primary); }
.site-header .nav-link.active::after {
	content: '';
	position: absolute;
	bottom: -2px; left: 50%;
	transform: translateX(-50%);
	width: 20px; height: 3px;
	background: var(--wta-primary);
	border-radius: 2px;
}
.site-header .dropdown-menu {
	border: 1px solid var(--wta-border);
	border-radius: 14px;
	box-shadow: var(--wta-shadow);
	padding: .5rem;
	margin-top: .5rem;
}
.site-header .dropdown-item { border-radius: 8px; padding: .5rem .75rem; font-weight: 500; }
.site-header .dropdown-item:hover { background: var(--wta-primary-50); color: var(--wta-primary); }

/* Cart badge */
.wta-cart-count {
	position: absolute;
	top: -5px; right: -5px;
	font-size: 10px;
	min-width: 18px; height: 18px;
	display: inline-flex; align-items: center; justify-content: center;
	padding: 0;
}

/* ---------- SLIDER ---------- */
.wta-slider { position: relative; }
.wta-slide {
	min-height: 640px;
	background-size: cover;
	background-position: center center;
	position: relative;
	display: flex; align-items: center;
	overflow: hidden;
}
@media (max-width: 991.98px) { .wta-slide { min-height: 520px; } }
@media (max-width: 575.98px) { .wta-slide { min-height: 460px; } }
.wta-slide::after {
	content: '';
	position: absolute; inset: 0;
	background:
		radial-gradient(900px 500px at 100% 0%, rgba(255,255,255,0.08), transparent 55%),
		radial-gradient(600px 400px at 0% 100%, rgba(0,0,0,0.25), transparent 60%);
	pointer-events: none;
	z-index: 1;
}
.wta-slide-overlay {
	position: absolute; inset: 0;
	background: linear-gradient(135deg, rgba(15,23,42,0.1), rgba(15,23,42,0.4));
	z-index: 0;
}
.wta-slide .container { z-index: 2; min-height: inherit; }
.wta-slide-left   .wta-slide-content { text-align: left; }
.wta-slide-center .wta-slide-content { text-align: center; margin: 0 auto; }
.wta-slide-right  .wta-slide-content { text-align: right; margin-left: auto; }

/* Ken Burns efekti */
.wta-slider .carousel-item.active {
	animation: wta-kenburns 12s ease-in-out forwards;
}
@keyframes wta-kenburns {
	0% { transform: scale(1); }
	100% { transform: scale(1.08); }
}
/* Fade geçişi düzgün görünsün */
.carousel-fade .carousel-item { transition: opacity 1s ease-in-out, visibility 1s ease-in-out; }

/* İçerik animasyonu */
.wta-slide-anim { opacity: 0; transform: translateY(28px); display: inline-block; }
.carousel-item.active .wta-slide-anim {
	animation: wta-slide-up .9s cubic-bezier(.22,.61,.36,1) forwards;
	animation-delay: var(--d, 0ms);
}
@keyframes wta-slide-up {
	to { opacity: 1; transform: translateY(0); }
}

/* Kontroller */
.wta-slide-ctrl {
	width: 60px;
	opacity: .7;
	transition: var(--wta-transition);
}
.wta-slide-ctrl:hover { opacity: 1; }
.wta-slide-ctrl .wta-ctrl-icon {
	width: 54px; height: 54px;
	background: rgba(255,255,255,0.18);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.3);
	border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	color: #fff; font-size: 1.4rem;
	transition: var(--wta-transition);
}
.wta-slide-ctrl:hover .wta-ctrl-icon {
	background: #fff; color: var(--wta-primary);
	transform: scale(1.07);
}
@media (max-width: 767.98px) { .wta-slide-ctrl { display: none; } }

/* Göstergeler */
.wta-slider .carousel-indicators {
	gap: 8px;
	margin-bottom: 2rem;
}
.wta-slider .carousel-indicators [data-bs-target] {
	width: 32px;
	height: 4px;
	border-radius: 999px;
	background: rgba(255,255,255,0.5);
	border: 0;
	opacity: 1;
	transition: var(--wta-transition);
}
.wta-slider .carousel-indicators .active {
	background: #fff;
	width: 48px;
}

/* Scroll hint */
.wta-slide-scroll-hint {
	position: absolute;
	bottom: 1.5rem; left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	display: flex; flex-direction: column; align-items: center; gap: 6px;
	color: rgba(255,255,255,0.75);
	font-size: .8rem; letter-spacing: .08em; text-transform: uppercase;
}
.wta-slide-scroll-hint span {
	width: 1px; height: 36px;
	background: rgba(255,255,255,0.65);
	animation: wta-scroll-hint 1.8s ease-in-out infinite;
	transform-origin: top;
}
@keyframes wta-scroll-hint {
	0% { transform: scaleY(0); }
	50% { transform: scaleY(1); }
	100% { transform: scaleY(0); transform-origin: bottom; }
}

/* ---------- HERO (artık opsiyonel, slider kullanılırsa gerekli değil) ---------- */
.wta-hero { background: var(--wta-bg); overflow: hidden; }
.wta-hero-bg {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(1200px 500px at 10% -10%, rgba(37, 99, 235, 0.12), transparent 60%),
		radial-gradient(900px 500px at 100% 20%, rgba(99, 102, 241, 0.1), transparent 55%),
		linear-gradient(180deg, #fafbff 0%, #ffffff 70%);
	z-index: 0;
}
.wta-hero .container { z-index: 1; }
.wta-hero h1 { font-weight: 800; }
.wta-hero-card {
	position: relative;
	transform: perspective(1200px) rotateY(-6deg) rotateX(2deg);
	transition: var(--wta-transition);
}
.wta-hero-card:hover { transform: perspective(1200px) rotateY(-3deg) rotateX(1deg); }

/* ---------- Trust bar ---------- */
.wta-trust-bar { font-weight: 500; }

/* ---------- Service cards ---------- */
.wta-service-card {
	transition: var(--wta-transition);
	border-radius: var(--wta-radius-lg);
}
.wta-service-card:hover {
	transform: translateY(-6px);
	box-shadow: var(--wta-shadow-lg) !important;
}
.wta-service-icon { transition: var(--wta-transition); }
.wta-service-card:hover .wta-service-icon {
	background: var(--wta-primary) !important;
	color: #fff !important;
	transform: rotate(-8deg) scale(1.05);
}

/* ---------- Builder CTA ---------- */
.wta-builder-cta {
	background: linear-gradient(135deg, var(--wta-primary) 0%, #4f46e5 55%, #7c3aed 100%);
	box-shadow: 0 30px 60px -20px rgba(79, 70, 229, 0.5);
}
.wta-builder-cta::before {
	content: '';
	position: absolute; inset: 0;
	background:
		radial-gradient(600px 300px at 100% 0%, rgba(255, 255, 255, 0.14), transparent 60%),
		radial-gradient(500px 300px at 0% 100%, rgba(255, 255, 255, 0.08), transparent 60%);
	pointer-events: none;
}

/* ---------- Pricing / Packages ---------- */
.wta-pricing-card {
	transition: var(--wta-transition);
	border-radius: var(--wta-radius-lg);
	border: 1px solid transparent;
}
.wta-pricing-card:hover {
	border-color: var(--wta-primary);
	transform: translateY(-4px);
	box-shadow: var(--wta-shadow-lg) !important;
}

/* ---------- Portfolio ---------- */
.wta-portfolio-item {
	position: relative;
	transition: var(--wta-transition);
}
.wta-portfolio-item img { transition: transform .5s ease; }
.wta-portfolio-item:hover img { transform: scale(1.06); }
.wta-portfolio-overlay {
	position: absolute;
	left: 0; right: 0; bottom: 0;
	background: linear-gradient(0deg, rgba(15, 23, 42, 0.9), transparent);
	padding-top: 3rem !important;
}
.wta-portfolio-overlay h3 { text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); }

/* ---------- Accordion ---------- */
.accordion-button {
	padding: 1.25rem 1.5rem;
	font-size: 1rem;
	color: var(--wta-text);
}
.accordion-button:not(.collapsed) {
	color: var(--wta-primary);
	background-color: var(--wta-primary-50);
	box-shadow: none;
}
.accordion-button:focus { box-shadow: 0 0 0 .2rem rgba(37, 99, 235, 0.18); border-color: transparent; }

/* ---------- Forms ---------- */
.form-control, .form-select {
	border-radius: 10px;
	border-color: var(--wta-border);
	padding: .7rem 1rem;
}
.form-control-lg, .form-select-lg { padding: .85rem 1.1rem; font-size: 1rem; }
.form-control:focus, .form-select:focus {
	border-color: var(--wta-primary);
	box-shadow: 0 0 0 .2rem rgba(37, 99, 235, 0.14);
}
.form-label { color: var(--wta-text); }

/* ---------- Footer ---------- */
.site-footer {
	background: linear-gradient(180deg, #0b1222 0%, #0f172a 100%);
}
.site-footer .footer-menu li { margin-bottom: .5rem; }
.site-footer .footer-menu a { color: rgba(255, 255, 255, 0.75); text-decoration: none; transition: var(--wta-transition); }
.site-footer .footer-menu a:hover { color: #fff; padding-left: 4px; }
.site-footer .widget-title { color: #fff; }

/* ---------- Breadcrumb ---------- */
.breadcrumb { background: transparent; padding: 0; }
.breadcrumb-item + .breadcrumb-item::before { color: var(--wta-muted); }
.breadcrumb-item a { color: var(--wta-muted); text-decoration: none; }
.breadcrumb-item.active { color: var(--wta-text); font-weight: 600; }

/* ---------- Pagination ---------- */
.page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	width: 40px; height: 40px;
	border-radius: 10px;
	margin: 0 .15rem;
	background: #fff;
	border: 1px solid var(--wta-border);
	color: var(--wta-text);
	text-decoration: none;
	font-weight: 600;
	transition: var(--wta-transition);
}
.page-numbers:hover { border-color: var(--wta-primary); color: var(--wta-primary); }
.page-numbers.current {
	background: var(--wta-primary);
	border-color: var(--wta-primary);
	color: #fff;
}
.pagination { gap: 2px; margin-top: 2rem; }

/* ---------- WhatsApp sabit buton ---------- */
.wta-whatsapp-float {
	position: fixed;
	bottom: 1.25rem; left: 1.25rem;
	z-index: 1040;
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: .75rem 1.15rem;
	background: var(--wta-whatsapp);
	color: #fff !important;
	text-decoration: none !important;
	border-radius: 999px;
	font-weight: 600;
	box-shadow: 0 10px 30px -8px rgba(37, 211, 102, 0.6), 0 2px 6px rgba(0, 0, 0, 0.1);
	transition: var(--wta-transition);
}
.wta-whatsapp-float i { font-size: 1.4rem; }
.wta-whatsapp-float:hover {
	transform: translateY(-2px) scale(1.03);
	box-shadow: 0 20px 40px -10px rgba(37, 211, 102, 0.65), 0 4px 10px rgba(0, 0, 0, 0.14);
	color: #fff;
}
.wta-whatsapp-pulse {
	position: absolute;
	inset: 0;
	border-radius: inherit;
	border: 2px solid var(--wta-whatsapp);
	animation: wta-pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
	pointer-events: none;
}
@keyframes wta-pulse {
	0% { transform: scale(1); opacity: .9; }
	100% { transform: scale(1.35); opacity: 0; }
}
@media (max-width: 575.98px) {
	.wta-whatsapp-float { padding: .7rem; }
	.wta-whatsapp-float .wta-whatsapp-text { display: none !important; }
}

/* ---------- AI Chat Widget ---------- */
.wta-ai-chat {
	position: fixed;
	bottom: 1.25rem;
	right: 1.25rem;
	z-index: 1050;
}
.wta-ai-chat-toggle {
	width: 60px; height: 60px;
	border: none;
	background: linear-gradient(135deg, var(--wta-primary) 0%, #6366f1 100%);
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 15px 40px -10px rgba(79, 70, 229, 0.55);
	transition: var(--wta-transition);
}
.wta-ai-chat-toggle:hover { transform: scale(1.07); }
.wta-ai-chat-pulse {
	position: absolute;
	top: -2px; right: -2px;
	width: 14px; height: 14px;
	background: #22c55e;
	border: 2px solid #fff;
	border-radius: 50%;
}
.wta-ai-chat-panel {
	position: absolute;
	bottom: 76px; right: 0;
	width: 380px;
	max-width: calc(100vw - 2rem);
	max-height: 70vh;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	animation: wta-pop .25s cubic-bezier(.34, 1.56, .64, 1);
}
.wta-ai-chat-panel[hidden] { display: none; }
.wta-ai-chat-head {
	background: linear-gradient(135deg, var(--wta-primary) 0%, #6366f1 100%);
}
.wta-ai-chat-body {
	flex: 1 1 auto;
	overflow-y: auto;
	background: #f8fafc;
	min-height: 240px;
	max-height: 50vh;
}
.wta-ai-msg {
	display: inline-block;
	padding: .7rem 1rem;
	border-radius: 16px;
	max-width: 85%;
	margin-bottom: .6rem;
	line-height: 1.45;
	font-size: .95rem;
	animation: wta-fade-up .22s ease both;
}
.wta-ai-msg-bot {
	background: #fff;
	color: var(--wta-text);
	border: 1px solid var(--wta-border);
	border-bottom-left-radius: 4px;
}
.wta-ai-msg-user {
	background: var(--wta-primary);
	color: #fff;
	float: right; clear: both;
	border-bottom-right-radius: 4px;
}
.wta-ai-row { display: flex; }
.wta-ai-row-user { justify-content: flex-end; }
.wta-ai-quick { display: flex; flex-wrap: wrap; gap: .35rem; }
.wta-ai-quick-btn { border-radius: 999px; font-size: .82rem; padding: .3rem .75rem; }
.wta-ai-typing {
	display: inline-flex; gap: 4px; padding: .7rem 1rem;
	background: #fff; border: 1px solid var(--wta-border); border-radius: 16px;
}
.wta-ai-typing span {
	width: 8px; height: 8px; border-radius: 50%; background: var(--wta-muted);
	animation: wta-typing 1.3s infinite;
}
.wta-ai-typing span:nth-child(2) { animation-delay: .15s; }
.wta-ai-typing span:nth-child(3) { animation-delay: .3s; }
@keyframes wta-typing { 0%, 60%, 100% { opacity: .3; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-3px); } }
@keyframes wta-pop { from { opacity: 0; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes wta-fade-up { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 575.98px) {
	.wta-ai-chat-panel { width: calc(100vw - 1.5rem); right: -.25rem; }
	.wta-ai-chat { bottom: 1rem; right: 1rem; }
}

/* AI chat ve WhatsApp çakışmasın: AI sağda, WA solda. */

/* ---------- Dil switcher & Google Translate bar gizle ---------- */
.wta-lang-switcher .dropdown-item { padding: .55rem .85rem; border-radius: 8px; }
.wta-lang-switcher .wta-lang-flag { font-size: 1.1rem; line-height: 1; }
.wta-lang-menu { min-width: 220px; padding: .5rem; border-radius: 14px; }

/* Google Translate'in üst barını, iframe ve altını gizle. */
.goog-te-banner-frame.skiptranslate,
.goog-te-balloon-frame,
#goog-gt-tt { display: none !important; }
body { top: 0 !important; position: static !important; }
.goog-te-gadget { height: 0; overflow: hidden; }
font[style*="background-color"] { background: transparent !important; box-shadow: none !important; }

/* RTL destek: Arapça için body yönlendirme */
html[lang="ar"] body, body.wta-rtl { direction: rtl; text-align: right; }
html[lang="ar"] .me-1, body.wta-rtl .me-1 { margin-right: 0 !important; margin-left: .25rem !important; }
html[lang="ar"] .me-2, body.wta-rtl .me-2 { margin-right: 0 !important; margin-left: .5rem !important; }
html[lang="ar"] .ms-auto, body.wta-rtl .ms-auto { margin-left: 0 !important; margin-right: auto !important; }

/* ---------- Form status ---------- */
.wta-form-status.success { color: var(--wta-success); }
.wta-form-status.error { color: #dc2626; }

/* ---------- Breadcrumbs page header spacing ---------- */
.wta-breadcrumbs { margin-bottom: 1rem; }

/* ---------- Map responsive ---------- */
.wta-map-ratio iframe { width: 100%; height: 100%; }
@media (max-width: 767.98px) {
	.ratio-21x9 { --bs-aspect-ratio: 100%; }
}

/* ---------- Section rhythm ---------- */
section { scroll-margin-top: 90px; }

/* ---------- Mobile navbar tweaks ---------- */
@media (max-width: 991.98px) {
	.site-header .navbar-collapse { padding: 1rem 0; }
	.site-header .nav-link { padding: .75rem 0 !important; border-bottom: 1px solid var(--wta-border); }
	.site-header .nav-link.active::after { display: none; }
	.wta-hero-card { transform: none; margin-top: 2rem; }
}

/* ---------- Utility ---------- */
.object-fit-cover { object-fit: cover; }
.cursor-pointer { cursor: pointer; }

/* ---------- Scrollbars (webkit) ---------- */
.wta-ai-chat-body::-webkit-scrollbar { width: 8px; }
.wta-ai-chat-body::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
.wta-ai-chat-body::-webkit-scrollbar-track { background: transparent; }

/* ---------- Builder (standalone) ---------- */
.wta-builder-wrap {
	display: grid;
	grid-template-columns: 420px 1fr;
	gap: 1.5rem;
	min-height: calc(100vh - 100px);
	padding: 1.5rem;
	background: var(--wta-bg-soft);
}
@media (max-width: 991.98px) {
	.wta-builder-wrap { grid-template-columns: 1fr; }
}
.wta-builder-form {
	background: #fff;
	border-radius: var(--wta-radius-lg);
	padding: 1.75rem;
	box-shadow: var(--wta-shadow-sm);
	max-height: calc(100vh - 120px);
	overflow-y: auto;
	position: sticky;
	top: 1rem;
}
.wta-builder-preview {
	background: #fff;
	border-radius: var(--wta-radius-lg);
	box-shadow: var(--wta-shadow-sm);
	overflow: hidden;
	position: relative;
}
.wta-builder-steps {
	display: flex; gap: 6px; margin-bottom: 1.5rem;
}
.wta-builder-step {
	flex: 1;
	height: 6px;
	background: var(--wta-border);
	border-radius: 999px;
	transition: var(--wta-transition);
}
.wta-builder-step.is-done { background: var(--wta-success); }
.wta-builder-step.is-active { background: var(--wta-primary); }
.wta-step-pane { display: none; animation: wta-fade-up .3s ease both; }
.wta-step-pane.is-active { display: block; }
.wta-component-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; }
.wta-component-chip {
	display: flex; align-items: center; gap: .5rem;
	padding: .65rem .85rem;
	border: 1px solid var(--wta-border);
	border-radius: 10px;
	cursor: pointer;
	transition: var(--wta-transition);
	font-size: .9rem;
}
.wta-component-chip input { margin: 0; }
.wta-component-chip:has(input:checked),
.wta-component-chip.is-checked {
	border-color: var(--wta-primary);
	background: var(--wta-primary-50);
	color: var(--wta-primary);
}
.wta-template-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.wta-template-card {
	border: 2px solid var(--wta-border);
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
	transition: var(--wta-transition);
	background: #fff;
}
.wta-template-card.is-selected { border-color: var(--wta-primary); transform: translateY(-2px); box-shadow: var(--wta-shadow); }
.wta-template-thumb {
	aspect-ratio: 4/3;
	display: flex; align-items: center; justify-content: center;
	font-weight: 700;
	color: #fff;
}
.wta-template-label { padding: .5rem .75rem; font-size: .85rem; font-weight: 600; }
.wta-color-swatches { display: flex; gap: .5rem; flex-wrap: wrap; }
.wta-color-swatch {
	width: 32px; height: 32px; border-radius: 8px; cursor: pointer; border: 2px solid transparent;
}
.wta-color-swatch.is-selected { border-color: #0f172a; }
.wta-preview-frame {
	width: 100%; height: calc(100vh - 180px); min-height: 600px; border: 0;
}
.wta-preview-toolbar {
	display: flex; justify-content: space-between; align-items: center;
	padding: .75rem 1rem; border-bottom: 1px solid var(--wta-border);
	background: var(--wta-bg-soft);
}
.wta-device-btns .btn { padding: .35rem .6rem; font-size: .8rem; }
.wta-device-btns .btn.active { background: var(--wta-primary); color: #fff; border-color: var(--wta-primary); }
.wta-preview-stage { padding: 1rem; display: flex; justify-content: center; }
.wta-preview-stage.device-mobile .wta-preview-frame { max-width: 390px; margin: 0 auto; border: 10px solid #0f172a; border-radius: 32px; min-height: 700px; }
.wta-preview-stage.device-tablet .wta-preview-frame { max-width: 820px; margin: 0 auto; border: 10px solid #0f172a; border-radius: 24px; }
