/* =====================================================
   ASYA DESIGN SYSTEM - Header + Footer + Buttons + Cards
   Footer dikkat çekici hali korunur, header ve içerik aynı dilde toparlanır.
   ===================================================== */
:root{
  --asya-bg:#020814;
  --asya-bg-2:#010711;
  --asya-red:#ff1e24;
  --asya-red-soft:rgba(255,30,36,.14);
  --asya-blue:#0096ff;
  --asya-blue-soft:rgba(0,150,255,.12);
  --asya-white:#f7fbff;
  --asya-muted:rgba(255,255,255,.68);
  --asya-border:rgba(255,255,255,.10);
  --asya-glass:rgba(255,255,255,.055);
  --asya-shadow:0 24px 80px rgba(0,0,0,.36);
  --asya-radius:18px;
  --asya-font-head:'Rajdhani',sans-serif;
  --asya-font-body:'Public Sans',Arial,sans-serif;
}

html{scroll-behavior:smooth;}
body{
  background:var(--asya-bg-2);
  color:var(--asya-white);
  font-family:var(--asya-font-body);
}
::selection{background:rgba(255,30,36,.45);color:#fff;}

/* ---------- Ortak container nefesi ---------- */
.container{
  width:min(1400px, calc(100% - 48px));
  margin-inline:auto;
}

/* ---------- HEADER: footer ile aynı marka dili ---------- */
.component-header-wrap{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,30,36,.16), transparent 34%),
    radial-gradient(circle at 88% 0%, rgba(0,150,255,.12), transparent 34%),
    linear-gradient(180deg, rgba(7,14,28,.96), rgba(2,8,18,.92)) !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 10px 38px rgba(0,0,0,.28) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
}
.component-header-wrap .topbar{
  isolation:isolate;
}
.component-header-wrap .brand-dot{
  background:linear-gradient(135deg,#ff1e24,#ff7a18) !important;
  box-shadow:0 0 24px rgba(255,30,36,.55),0 0 42px rgba(255,122,24,.22) !important;
}
.component-header-wrap .brand-name{
  color:#fff !important;
  text-shadow:0 0 14px rgba(255,30,36,.25),0 0 26px rgba(0,150,255,.10) !important;
}
.component-header-wrap .nav{
  padding:0 18px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.035) !important;
  border:1px solid rgba(255,255,255,.07) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}
.component-header-wrap .nav a{
  height:54px !important;
  color:rgba(255,255,255,.82) !important;
}
.component-header-wrap .nav a:hover,
.component-header-wrap .nav a.active{
  color:#fff !important;
  text-shadow:0 0 12px rgba(255,30,36,.52) !important;
}
.component-header-wrap .nav a::before{
  bottom:8px !important;
  height:2px !important;
  background:linear-gradient(90deg,transparent,var(--asya-red),#fff,var(--asya-red),transparent) !important;
}
.component-header-wrap .header-cta,
.floating-cta,
.home-primary-btn,
.btn-primary,
.contact-submit,
button[type="submit"]{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(135deg,#ff1e24,#d70d14) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 12px 32px rgba(255,30,36,.26),0 0 0 1px rgba(255,255,255,.045) inset !important;
  transition:transform .24s ease, box-shadow .24s ease, filter .24s ease !important;
}
.component-header-wrap .header-cta::before,
.floating-cta::before,
.home-primary-btn::before,
.btn-primary::before,
.contact-submit::before,
button[type="submit"]::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.34), transparent);
  transform:translateX(-140%);
  transition:transform .55s ease;
  z-index:-1;
}
.component-header-wrap .header-cta:hover,
.floating-cta:hover,
.home-primary-btn:hover,
.btn-primary:hover,
.contact-submit:hover,
button[type="submit"]:hover{
  transform:translateY(-2px) !important;
  filter:saturate(1.1) !important;
  box-shadow:0 18px 42px rgba(255,30,36,.36),0 0 24px rgba(255,30,36,.20) !important;
}
.component-header-wrap .header-cta:hover::before,
.floating-cta:hover::before,
.home-primary-btn:hover::before,
.btn-primary:hover::before,
.contact-submit:hover::before,
button[type="submit"]:hover::before{transform:translateX(140%);}

/* Header sepet butonu */
.asya-cart-link{
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.05) !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.22) !important;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease !important;
}
.asya-cart-link:hover{
  transform:translateY(-2px) !important;
  border-color:rgba(255,30,36,.45) !important;
  box-shadow:0 16px 34px rgba(255,30,36,.16),0 10px 28px rgba(0,0,0,.25) !important;
}
.asya-cart-link [data-cart-count],
[data-cart-count]{
  min-width:22px !important;
  height:22px !important;
  padding:0 7px !important;
  border-radius:999px !important;
  background:#ff1e24 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 0 12px rgba(255,30,36,.45) !important;
}

/* ---------- Kartlar / bölümler: aynı cam + glow dili ---------- */
.home-category-card,
.service-card,
.product-card,
.project-card,
.contact-card,
.cart-card,
.set-card,
.category-card,
[class*="product-card"],
[class*="service-card"]{
  border:1px solid rgba(255,255,255,.09) !important;
  background:linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
  box-shadow:0 16px 48px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  transition:transform .28s ease, border-color .28s ease, box-shadow .28s ease !important;
}
.home-category-card:hover,
.service-card:hover,
.product-card:hover,
.project-card:hover,
.contact-card:hover,
.cart-card:hover,
.set-card:hover,
.category-card:hover,
[class*="product-card"]:hover,
[class*="service-card"]:hover{
  transform:translateY(-5px) !important;
  border-color:rgba(255,30,36,.26) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 30px rgba(255,30,36,.10) !important;
}

/* ---------- İkincil butonlar/linkler ---------- */
.home-secondary-btn,
.btn-secondary,
.outline-btn{
  border:1px solid rgba(255,255,255,.18) !important;
  background:rgba(255,255,255,.035) !important;
  color:#fff !important;
  backdrop-filter:blur(10px) !important;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease !important;
}
.home-secondary-btn:hover,
.btn-secondary:hover,
.outline-btn:hover{
  transform:translateY(-2px) !important;
  border-color:rgba(255,30,36,.55) !important;
  box-shadow:0 12px 28px rgba(255,30,36,.14) !important;
}

/* ---------- Footer: mevcut dikkat çekici hali korunur, bir tık dengelenir ---------- */
#site-footer .footer,
.footer{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,30,36,.16), transparent 38%),
    radial-gradient(circle at 88% 2%, rgba(0,150,255,.13), transparent 36%),
    linear-gradient(180deg, rgba(10,16,30,.98), rgba(2,7,17,.98)) !important;
}
#site-footer .footer-grid-premium,
.footer-grid-premium,
#site-footer .footer-grid,
.footer-grid{
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:0 24px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
#site-footer .footer-col h4,
.footer-col h4{letter-spacing:.055em !important;}
#site-footer .footer-col a,
.footer-col a{color:rgba(255,255,255,.66) !important;text-decoration:none !important;}
#site-footer .footer-col a:hover,
.footer-col a:hover{color:#fff !important;text-shadow:0 0 10px rgba(255,30,36,.36) !important;}

/* ---------- Mobil toparlama ---------- */
@media(max-width:1100px){
  .component-header-wrap .nav{display:none !important;}
}
@media(max-width:760px){
  .container{width:calc(100% - 28px);}
  .component-header-wrap .header-right{gap:10px !important;}
  .asya-cart-text{display:none !important;}
  .component-header-wrap .header-cta{display:none !important;}
}

/* ==========================================================
   ASYA BUTTON TEXT READABILITY FIX
   Amaç: Renk değişkeni/admin önizleme buton zeminini kırmızı/gradient
   yaptığında yazı da kırmızıya dönmesin. Dolu butonlar her zaman beyaz
   yazı kullanır; outline/ghost butonlar hover'da okunur kalır.
   ========================================================== */
.home-primary-btn,
.services-primary-btn,
.alarm-primary-btn,
.cta-btn,
.hero-btn,
.btn-primary,
.btn.primary,
.button-primary,
.login-card-submit,
.offer-submit-btn,
.contact-submit,
.asya-slide-btn.primary,
.asya-pro-btn.primary,
.pack-btn.primary,
.mockup-btn.primary,
.cms-btn,
.cms-product button,
.cart-checkout-btn,
.asya-cart-primary,
.asya-cart-drawer-primary,
.mini-cart-go,
.toast-btn,
.account-wrap .btn.primary,
.account-wrap .account-card .btn,
.account-wrap .account-hero .btn.primary,
.project-support button,
.detail-btn.add-cart,
.detail-compare-btn,
.related-cart,
.related-compare.is-active{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-shadow:none !important;
}

.home-primary-btn *,
.services-primary-btn *,
.alarm-primary-btn *,
.cta-btn *,
.hero-btn *,
.btn-primary *,
.btn.primary *,
.button-primary *,
.login-card-submit *,
.offer-submit-btn *,
.contact-submit *,
.asya-slide-btn.primary *,
.asya-pro-btn.primary *,
.pack-btn.primary *,
.mockup-btn.primary *,
.cms-btn *,
.cms-product button *,
.cart-checkout-btn *,
.asya-cart-primary *,
.asya-cart-drawer-primary *,
.mini-cart-go *,
.toast-btn *,
.account-wrap .btn.primary *,
.account-wrap .account-card .btn *,
.account-wrap .account-hero .btn.primary *,
.project-support button *,
.detail-btn.add-cart *,
.detail-compare-btn *,
.related-cart *,
.related-compare.is-active *{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Dolu butonların hover/focus durumunda okunurluğunu koru */
.home-primary-btn:hover,
.home-primary-btn:focus,
.services-primary-btn:hover,
.services-primary-btn:focus,
.alarm-primary-btn:hover,
.alarm-primary-btn:focus,
.cta-btn:hover,
.cta-btn:focus,
.hero-btn:hover,
.hero-btn:focus,
.btn-primary:hover,
.btn-primary:focus,
.btn.primary:hover,
.btn.primary:focus,
.button-primary:hover,
.button-primary:focus,
.login-card-submit:hover,
.login-card-submit:focus,
.offer-submit-btn:hover,
.offer-submit-btn:focus,
.contact-submit:hover,
.contact-submit:focus,
.asya-slide-btn.primary:hover,
.asya-slide-btn.primary:focus,
.asya-pro-btn.primary:hover,
.asya-pro-btn.primary:focus,
.pack-btn.primary:hover,
.pack-btn.primary:focus,
.mockup-btn.primary:hover,
.mockup-btn.primary:focus,
.cms-btn:hover,
.cms-btn:focus,
.cms-product button:hover,
.cms-product button:focus,
.account-wrap .btn.primary:hover,
.account-wrap .btn.primary:focus,
.account-wrap .account-card .btn:hover,
.account-wrap .account-card .btn:focus{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Outline/ghost butonlar: normalde beyaz, hover'da zemin kırmızılaşsa da beyaz kalır */
.home-secondary-btn,
.services-secondary-btn,
.alarm-secondary-btn,
.btn-secondary,
.outline-btn,
.pack-btn.ghost,
.asya-slide-btn.secondary,
.asya-cart-secondary,
.account-wrap .side-menu a,
.account-wrap .btn:not(.primary){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.home-secondary-btn:hover,
.services-secondary-btn:hover,
.alarm-secondary-btn:hover,
.btn-secondary:hover,
.outline-btn:hover,
.pack-btn.ghost:hover,
.asya-slide-btn.secondary:hover,
.asya-cart-secondary:hover,
.account-wrap .side-menu a:hover,
.account-wrap .btn:not(.primary):hover{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Buton içindeki ikonlar metinden daha koyu/kırmızı kalıp okunurluğu bozmasın */
.home-primary-btn i,
.services-primary-btn i,
.alarm-primary-btn i,
.cta-btn i,
.btn.primary i,
.btn-primary i,
.asya-slide-btn.primary i,
.account-wrap .btn.primary i,
.account-wrap .account-card .btn i,
.project-support button i{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Admin canlı önizleme inline background verdiğinde de buton metni güvenli kalsın */
[data-preview*="button"],
[data-preview*="primary_text"],
[data-preview*="cta.button_text"]{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* ==========================================================
   ASYA PREMIUM BUTTON SYSTEM - okunurluk + tek tip CTA
   Amaç: kırmızı/gradient zeminlerde yazı her zaman beyaz kalsın,
   iletişim haritasındaki küçük butonlar dahil tüm CTA butonlar
   premium gradient görünümüne çekilsin.
   ========================================================== */
:root{
  --asya-premium-btn-bg: linear-gradient(135deg,#ff1e24 0%,#e83d5d 48%,#1598f4 100%);
  --asya-premium-btn-bg-hover: linear-gradient(135deg,#ff3036 0%,#ee4b6a 45%,#28a7ff 100%);
  --asya-premium-btn-shadow: 0 14px 34px rgba(255,30,36,.24), 0 0 24px rgba(21,152,244,.12);
}

/* Ana CTA butonları: ikinci görseldeki gradient hissi */
.home-primary-btn,
.btn-primary,
.button-primary,
.btn.primary,
.contact-submit,
.offer-submit-btn,
.services-primary-btn,
.alarm-primary-btn,
.cta-btn,
.hero-btn,
.asya-slide-btn.primary,
.asya-pro-btn.primary,
.pack-btn.primary,
.mockup-btn.primary,
.cms-btn,
.cms-product button,
.project-support button,
.detail-btn.add-cart,
.detail-btn.secondary,
.account-wrap .btn.primary,
.account-wrap .account-card .btn,
.asya-cart-primary,
.login-card-submit,
.toast-btn,
.mini-cart-go,
.cart-panel-checkout,
.cart-panel-offer,
.contact-map-actions a,
button[type="submit"]:not(.header-search-toggle):not(.login-pass-toggle),
a[data-offer-trigger="1"]{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  background:var(--asya-premium-btn-bg) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(255,255,255,.20) !important;
  border-radius:4px !important;
  box-shadow:var(--asya-premium-btn-shadow) !important;
  text-decoration:none !important;
  text-shadow:none !important;
  font-family:'Rajdhani','Public Sans',Arial,sans-serif !important;
  font-weight:900 !important;
  letter-spacing:.035em !important;
  overflow:hidden !important;
  isolation:isolate !important;
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease, background .22s ease !important;
}

.home-primary-btn::before,
.btn-primary::before,
.button-primary::before,
.btn.primary::before,
.contact-submit::before,
.offer-submit-btn::before,
.services-primary-btn::before,
.alarm-primary-btn::before,
.cta-btn::before,
.hero-btn::before,
.asya-slide-btn.primary::before,
.asya-pro-btn.primary::before,
.pack-btn.primary::before,
.mockup-btn.primary::before,
.cms-btn::before,
.cms-product button::before,
.project-support button::before,
.detail-btn.add-cart::before,
.detail-btn.secondary::before,
.account-wrap .btn.primary::before,
.account-wrap .account-card .btn::before,
.asya-cart-primary::before,
.login-card-submit::before,
.toast-btn::before,
.mini-cart-go::before,
.cart-panel-checkout::before,
.cart-panel-offer::before,
.contact-map-actions a::before,
button[type="submit"]:not(.header-search-toggle):not(.login-pass-toggle)::before,
a[data-offer-trigger="1"]::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.34),transparent) !important;
  transform:translateX(-140%) !important;
  transition:transform .55s ease !important;
  z-index:-1 !important;
}

.home-primary-btn:hover,
.btn-primary:hover,
.button-primary:hover,
.btn.primary:hover,
.contact-submit:hover,
.offer-submit-btn:hover,
.services-primary-btn:hover,
.alarm-primary-btn:hover,
.cta-btn:hover,
.hero-btn:hover,
.asya-slide-btn.primary:hover,
.asya-pro-btn.primary:hover,
.pack-btn.primary:hover,
.mockup-btn.primary:hover,
.cms-btn:hover,
.cms-product button:hover,
.project-support button:hover,
.detail-btn.add-cart:hover,
.detail-btn.secondary:hover,
.account-wrap .btn.primary:hover,
.account-wrap .account-card .btn:hover,
.asya-cart-primary:hover,
.login-card-submit:hover,
.toast-btn:hover,
.mini-cart-go:hover,
.cart-panel-checkout:hover,
.cart-panel-offer:hover,
.contact-map-actions a:hover,
button[type="submit"]:not(.header-search-toggle):not(.login-pass-toggle):hover,
a[data-offer-trigger="1"]:hover{
  background:var(--asya-premium-btn-bg-hover) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  transform:translateY(-2px) !important;
  box-shadow:0 18px 42px rgba(255,30,36,.34),0 0 28px rgba(21,152,244,.20) !important;
  filter:saturate(1.08) !important;
}

.home-primary-btn:hover::before,
.btn-primary:hover::before,
.button-primary:hover::before,
.btn.primary:hover::before,
.contact-submit:hover::before,
.offer-submit-btn:hover::before,
.services-primary-btn:hover::before,
.alarm-primary-btn:hover::before,
.cta-btn:hover::before,
.hero-btn:hover::before,
.asya-slide-btn.primary:hover::before,
.asya-pro-btn.primary:hover::before,
.pack-btn.primary:hover::before,
.mockup-btn.primary:hover::before,
.cms-btn:hover::before,
.cms-product button:hover::before,
.project-support button:hover::before,
.detail-btn.add-cart:hover::before,
.detail-btn.secondary:hover::before,
.account-wrap .btn.primary:hover::before,
.account-wrap .account-card .btn:hover::before,
.asya-cart-primary:hover::before,
.login-card-submit:hover::before,
.toast-btn:hover::before,
.mini-cart-go:hover::before,
.cart-panel-checkout:hover::before,
.cart-panel-offer:hover::before,
.contact-map-actions a:hover::before,
button[type="submit"]:not(.header-search-toggle):not(.login-pass-toggle):hover::before,
a[data-offer-trigger="1"]:hover::before{
  transform:translateX(140%) !important;
}

/* Buton içindeki metin/ikon kırmızıya düşmesin */
.home-primary-btn *,
.btn-primary *,
.button-primary *,
.btn.primary *,
.contact-submit *,
.offer-submit-btn *,
.services-primary-btn *,
.alarm-primary-btn *,
.cta-btn *,
.hero-btn *,
.asya-slide-btn.primary *,
.asya-pro-btn.primary *,
.pack-btn.primary *,
.mockup-btn.primary *,
.cms-btn *,
.cms-product button *,
.project-support button *,
.detail-btn.add-cart *,
.detail-btn.secondary *,
.account-wrap .btn.primary *,
.account-wrap .account-card .btn *,
.asya-cart-primary *,
.login-card-submit *,
.toast-btn *,
.mini-cart-go *,
.cart-panel-checkout *,
.cart-panel-offer *,
.contact-map-actions a *,
button[type="submit"]:not(.header-search-toggle):not(.login-pass-toggle) *,
a[data-offer-trigger="1"] *{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* İletişim harita kartındaki küçük butonları özel kompakt premium yap */
.contact-map-actions a{
  min-height:34px !important;
  padding:8px 14px !important;
  border-radius:6px !important;
  font-size:13px !important;
  line-height:1 !important;
}
.contact-map-actions a i{font-size:13px !important;}

/* Outline butonlar hover'da dolu butona döndüğünde okunurluk korunsun */
.home-secondary-btn:hover,
.services-secondary-btn:hover,
.alarm-secondary-btn:hover,
.btn-secondary:hover,
.outline-btn:hover,
.pack-btn.ghost:hover,
.asya-slide-btn.secondary:hover,
.asya-cart-secondary:hover,
.account-wrap .side-menu a:hover,
.account-wrap .btn:not(.primary):hover{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
