/* ================================================================
   Allsfly — Ana Sayfa Stilleri (home.css) — Premium Tema
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;600&family=DM+Sans:wght@300;400;500;600;700&display=swap');

/* ── RESET ────────────────────────────────────────── */
.pg * { box-sizing:border-box; -webkit-tap-highlight-color:transparent; }
.pg { font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; background:var(--bk); color:var(--wh); min-height:100vh; }

/* ── RENK PALETİ ─────────────────────────────────── */
/* Eski değişken isimleri korundu — PHP inline stilleri kırılmasın */
/* Değerler premium altın/koyu temaya güncellendi                  */
.pg {
  /* Ana renkler */
  --y:   #C9A96E;   /* Altın (eski: neon cyan)      */
  --y2:  #A07840;   /* Koyu altın                   */
  --ac:  #E05A5A;   /* Soft kırmızı (eski: pembe)   */
  --ac2: #C04040;

  /* Arkaplanlar */
  --bk:  #0D0F14;   /* En koyu                      */
  --d1:  #161920;   /* Kart koyu                    */
  --d2:  #1E2230;   /* Kart orta                    */
  --d3:  #252A3A;   /* Kart açık                    */

  /* Kenarlık & metin */
  --bd:  #2A2F3E;   /* Kenarlık                     */
  --wh:  #F5F6F8;   /* Beyaz metin                  */
  --gr:  #6B7280;   /* Gri metin                    */
  --gn:  #6EE7B7;   /* Yeşil (direkt rozet)         */
  --wa:  #25D366;   /* WhatsApp                     */
  --rr:  14px;      /* Border radius                */

  /* Yeni isim takma adları (JS dosyaları için) */
  --gold:  #C9A96E;
  --gold2: #A07840;
  --ink:   #0D0F14;
  --ink2:  #1E2230;
  --ink3:  #252A3A;
  --line:  #2A2F3E;
  --white: #F5F6F8;
  --muted: #6B7280;
  --soft:  #9CA3AF;
  --red:   #E05A5A;
}

/* ── HEADER ───────────────────────────────────────── */
.az-hdr {
  background:rgba(13,15,20,0.97);
  border-bottom:1px solid var(--bd);
  height:54px; padding:0 16px;
  display:flex; align-items:center; justify-content:space-between;
  position:sticky; top:0; z-index:300;
  backdrop-filter:blur(12px);
}
.az-hdr-logo {
  display:flex; align-items:center; gap:8px;
  font-family:'Cormorant Garamond', serif;
  font-weight:600; font-size:1.25rem;
  letter-spacing:2px; color:var(--wh);
}
.az-hdr-logo i { color:var(--y); }
.az-hdr-logo img { height:34px; width:auto; object-fit:contain; }
.az-hdr-badge {
  font-size:.58rem;
  background:rgba(201,169,110,.1);
  color:var(--y); padding:3px 8px; border-radius:20px;
  font-weight:700; border:1px solid rgba(201,169,110,.25);
  letter-spacing:.5px; font-family:'DM Sans',sans-serif;
}

/* ── SEARCH BOX ───────────────────────────────────── */
.az-sc {
  background:var(--d2);
  border-bottom:1px solid var(--bd);
  padding:14px;
}
.az-trip { display:flex; gap:8px; margin-bottom:14px; }
.az-tbtn {
  flex:1; padding:10px 6px;
  border-radius:10px; border:1px solid var(--bd);
  background:var(--d1); color:var(--gr);
  font-size:.82rem; font-weight:500;
  font-family:'DM Sans',sans-serif;
  display:flex; align-items:center; justify-content:center; gap:6px;
  cursor:pointer; transition:all .2s ease;
}
.az-tbtn.on {
  background:rgba(201,169,110,.08);
  border-color:var(--y); color:var(--y); font-weight:600;
}

/* ports */
.az-ports {
  background:var(--d1); border:1px solid var(--bd);
  border-radius:var(--rr); position:relative; margin-bottom:10px;
}
.az-port { padding:13px 50px 13px 14px; cursor:pointer; }
.az-port:first-child { border-bottom:1px solid var(--bd); }
.az-plbl {
  font-size:.58rem; color:var(--gr); font-weight:700;
  text-transform:uppercase; letter-spacing:1.5px; margin-bottom:4px;
}
.az-plbl i { color:var(--y); }
.az-pval { font-size:.95rem; font-weight:500; color:var(--wh); }
.az-pval.ph { color:#4B5563; font-weight:400; }

.az-swap {
  position:absolute; right:12px; top:50%; transform:translateY(-50%);
  width:34px; height:34px; border-radius:50%;
  background:var(--d3); border:1px solid var(--bd); color:var(--soft);
  font-size:.85rem; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:all .25s ease;
}
.az-swap:hover { border-color:var(--y); color:var(--y); }
.az-swap:active { transform:translateY(-50%) rotate(180deg); }

/* dates */
.az-drow { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:8px; }
.az-dbox {
  background:var(--d1); border:1px solid var(--bd);
  border-radius:var(--rr); padding:12px 14px; cursor:pointer; transition:border-color .2s;
}
.az-dbox.dis { opacity:.35; pointer-events:none; }
.az-dbox:focus-within { border-color:var(--y2); }
.az-dlbl {
  font-size:.58rem; color:var(--gr); font-weight:700;
  text-transform:uppercase; letter-spacing:1.5px; margin-bottom:4px;
}
.az-dlbl i { color:var(--y); }
.az-dbox input[type=date] {
  background:transparent; border:none; outline:none;
  color:var(--wh); font-weight:500; font-size:.88rem;
  width:100%; color-scheme:dark; font-family:'DM Sans',sans-serif;
}

/* pax */
.az-pbox {
  background:var(--d1); border:1px solid var(--bd);
  border-radius:var(--rr); padding:12px 14px;
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:14px; cursor:pointer; transition:border-color .2s;
}
.az-pbox:focus-within, .az-pbox:hover { border-color:var(--y2); }
.az-plbl2 {
  font-size:.58rem; color:var(--gr); font-weight:700;
  text-transform:uppercase; letter-spacing:1.5px; margin-bottom:4px;
}
.az-plbl2 i { color:var(--y); }
.az-pvl { font-size:.88rem; font-weight:500; color:var(--wh); }

/* search button — altın, koyu metin */
.az-sbtn {
  width:100%; padding:14px;
  background:var(--y); border:none; border-radius:var(--rr);
  color:var(--ink); font-family:'DM Sans',sans-serif;
  font-size:.9rem; font-weight:700;
  letter-spacing:1.5px; text-transform:uppercase; cursor:pointer;
  display:flex; align-items:center; justify-content:center; gap:8px;
  transition:all .2s ease;
}
.az-sbtn:hover { background:var(--wh); }
.az-sbtn:active { transform:scale(.98); }

/* ── LOADING ───────────────────────────────────────── */
#az-ld {
  display:none; position:fixed; inset:0;
  background:rgba(13,15,20,.95); backdrop-filter:blur(10px);
  z-index:9000; align-items:center; justify-content:center;
}
.ld-card { padding:32px; text-align:center; min-width:250px; }
.ld-sub {
  font-size:.65rem; color:var(--y); letter-spacing:3px;
  text-transform:uppercase; margin-bottom:20px; font-weight:700;
}
.ld-route {
  display:flex; align-items:center; justify-content:center;
  gap:18px; margin-bottom:15px;
}
.ld-code { font-size:2.5rem; font-weight:600; color:var(--wh); }
.ld-spin {
  width:56px; height:56px; position:relative;
  display:flex; align-items:center; justify-content:center;
}
.ld-ring {
  position:absolute; inset:0;
  border:2px solid var(--bd); border-top-color:var(--y);
  border-radius:50%; animation:spin .9s linear infinite;
}
.ld-spin i { color:var(--y); font-size:1.2rem; }
@keyframes spin { to { transform:rotate(360deg); } }
.ld-txt { font-weight:500; color:var(--gr); letter-spacing:1px; font-size:.8rem; }

/* ── BLOG ────────────────────────────────────────── */
.az-blog-grid {
  display:grid; grid-template-columns:1fr;
  gap:14px; margin-bottom:20px;
}
@media (min-width:768px) { .az-blog-grid { grid-template-columns:1fr 1fr; } }
.az-blog-card {
  background:var(--d2); border:1px solid var(--bd);
  border-radius:var(--rr); overflow:hidden; text-decoration:none;
  transition:border-color .2s, transform .2s;
}
.az-blog-card:hover { border-color:rgba(201,169,110,.4); transform:translateY(-1px); }
.az-blog-card:active { transform:scale(0.99); }
.az-blog-img { width:100%; height:160px; object-fit:cover; border-bottom:1px solid var(--bd); display:block; }
.az-blog-body { padding:14px; }
.az-blog-title { color:var(--wh); font-size:.9rem; font-weight:600; margin-bottom:6px; line-height:1.5; display:block; }
.az-blog-summary {
  color:var(--gr); font-size:.78rem; line-height:1.6;
  display:-webkit-box; -webkit-line-clamp:2;
  -webkit-box-orient:vertical; overflow:hidden;
}
.az-blog-date {
  color:var(--y); font-size:.62rem; font-weight:700;
  margin-top:8px; display:block; letter-spacing:.5px;
}

/* ── RESULTS ───────────────────────────────────────── */
#az-res { display:none; }

.az-dnav {
  background:var(--d2); border-bottom:1px solid var(--bd);
  display:flex; overflow-x:auto;
  position:sticky; top:54px; z-index:200;
}
.az-dnav::-webkit-scrollbar { display:none; }
.az-dnbtn {
  flex-shrink:0; min-width:68px; padding:12px 8px;
  display:flex; flex-direction:column; align-items:center; gap:4px;
  font-size:.75rem; font-weight:500; color:var(--gr);
  border-bottom:2px solid transparent; cursor:pointer;
  white-space:nowrap; transition:all .2s;
}
.az-dnbtn.ac {
  color:var(--wh); background:rgba(201,169,110,.05);
  border-bottom-color:var(--y); font-weight:600;
}
.az-dnbtn .dds { font-size:.58rem; opacity:.7; color:var(--y); }

.az-rbar {
  background:var(--ink); padding:12px 14px;
  display:flex; align-items:center; justify-content:space-between;
  border-bottom:1px solid var(--bd);
}
.az-rcnt { font-size:.82rem; color:var(--gr); }
.az-rcnt b { color:var(--y); font-size:.95rem; font-weight:700; }
.az-ffab {
  background:rgba(201,169,110,.08); color:var(--y);
  border:1px solid rgba(201,169,110,.3); padding:7px 14px;
  border-radius:20px; font-size:.78rem; font-weight:600;
  cursor:pointer; display:flex; align-items:center; gap:6px; transition:.2s;
}
.az-ffab:active { background:var(--y); color:var(--ink); }

.az-tip {
  background:rgba(201,169,110,.06); border-left:2px solid var(--y);
  margin:0 12px 10px; padding:10px 14px; border-radius:0 8px 8px 0;
  font-size:.78rem; color:var(--wh); font-weight:400;
  display:none; align-items:center; gap:10px;
}
.az-tip i { color:var(--y); font-size:1rem; }

/* flight cards */
.az-flist { padding:0 12px 100px; }
.az-fc {
  background:var(--d2); border:1px solid var(--bd);
  border-radius:var(--rr); margin-bottom:12px;
  overflow:hidden; cursor:pointer; transition:all .2s;
}
.az-fc:hover { border-color:rgba(201,169,110,.35); transform:translateY(-1px); }
.az-fc:active { transform:scale(0.995); }

/* flight card iç bileşenler (buildLeg inline stil kullanıyor ama bunlar da lazım) */
.az-logo {
  width:48px; height:48px; border-radius:10px; background:#fff;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden; flex-shrink:0; padding:6px;
}
.az-logo img { width:100%; height:100%; object-fit:contain; }
.az-tm { font-size:1.3rem; font-weight:600; color:var(--wh); letter-spacing:.5px; }
.az-cd { font-size:.72rem; font-weight:500; color:var(--gr); }
.az-sb { font-size:.62rem; font-weight:700; padding:3px 8px; border-radius:8px; text-transform:uppercase; letter-spacing:.5px; }
.az-sb.dir { background:rgba(110,231,183,.1); color:var(--gn); border:1px solid rgba(110,231,183,.25); }
.az-sb.con { background:rgba(224,90,90,.1); color:var(--ac); border:1px solid rgba(224,90,90,.25); }

.az-price { font-size:1.4rem; font-weight:600; color:var(--y); }
.az-phide { font-size:.85rem; font-weight:600; color:var(--ac); line-height:1.3; }
.az-agt { font-size:.62rem; color:var(--gr); margin-top:2px; }

/* SEÇ butonu */
.az-selbtn {
  background:var(--y); color:var(--ink); border:none;
  padding:10px 20px; border-radius:10px;
  font-size:.82rem; font-weight:700; letter-spacing:.5px;
  display:flex; align-items:center; gap:6px; cursor:pointer;
  transition:background .2s;
}
.az-selbtn:hover { background:var(--wh); }

/* Dönüş separator */
.az-rt-sep {
  display:flex; align-items:center; gap:8px; margin:0 20px;
  font-size:.62rem; font-weight:700; color:var(--y);
  letter-spacing:1.5px; text-transform:uppercase;
}
.az-rt-sep::before,.az-rt-sep::after { content:''; flex:1; height:1px; background:var(--bd); }

/* ── HOME CONTENT ──────────────────────────────────── */
.az-hc { padding:14px 12px 100px; }
.az-stl {
  font-size:.72rem; font-weight:700; color:var(--soft);
  text-transform:uppercase; letter-spacing:1.5px;
  margin:28px 0 15px;
  display:flex; align-items:center; gap:10px;
}
.az-stl i { color:var(--y); font-size:1rem; }
.az-stl::after { content:''; flex:1; height:1px; background:var(--bd); }

/* havayolları */
.az-srow { display:flex; gap:12px; overflow-x:auto; padding-bottom:10px; }
.az-srow::-webkit-scrollbar { display:none; }
.az-ac {
  min-width:130px; height:68px; background:#fff;
  border:1px solid var(--bd); border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  padding:10px; flex-shrink:0;
  filter:saturate(0.8);
  transition:filter .2s, border-color .2s;
}
.az-ac:hover { filter:saturate(1); border-color:rgba(201,169,110,.4); }
.az-ac img { max-width:100%; max-height:100%; object-fit:contain; }

/* why us cards */
.az-wcard {
  background:var(--d2); border:1px solid var(--bd);
  border-radius:var(--rr); padding:16px; margin-bottom:10px;
  display:flex; align-items:center; gap:14px;
}
.az-wi {
  width:44px; height:44px; border-radius:10px;
  background:rgba(201,169,110,.06); border:1px solid rgba(201,169,110,.2);
  display:flex; align-items:center; justify-content:center;
  color:var(--y); font-size:1.2rem; flex-shrink:0;
}
.az-wt { font-weight:600; font-size:.9rem; color:var(--wh); }
.az-ws { font-size:.75rem; color:var(--gr); margin-top:3px; line-height:1.5; }

/* ── AIRPORT MODAL ────────────────────────────────── */
#az-apmodal { display:none; position:fixed; inset:0; z-index:9500; flex-direction:column; background:var(--ink); }
#az-apmodal.open { display:flex; }
.az-aph {
  height:56px; display:flex; align-items:center; gap:12px;
  padding:0 14px; border-bottom:1px solid var(--bd);
  background:var(--d1); flex-shrink:0;
}
.az-apbk {
  width:36px; height:36px; border-radius:50%;
  background:var(--d3); border:none; color:var(--soft);
  font-size:.95rem; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
}
.az-aptitle {
  flex:1; text-align:center; font-weight:700; font-size:.85rem;
  color:var(--y); letter-spacing:1.5px; text-transform:uppercase;
}
.az-apsb {
  display:flex; align-items:center; gap:12px;
  background:var(--d2); border-bottom:1px solid var(--bd);
  padding:12px 16px; flex-shrink:0;
}
.az-apsb i { color:var(--gr); font-size:1rem; }
.az-apinput {
  flex:1; background:transparent; border:none; outline:none;
  color:var(--wh); font-size:.95rem; font-family:'DM Sans',sans-serif;
}
.az-apinput::placeholder { color:var(--gr); }
.az-aplist { flex:1; overflow-y:auto; padding:0 14px 40px; }
.az-aps {
  font-size:.58rem; font-weight:800; color:var(--y2);
  text-transform:uppercase; letter-spacing:2px; margin:18px 0 10px;
}
.az-apgrid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.az-apc {
  background:var(--d2); border:1px solid var(--bd); border-radius:10px;
  padding:12px; cursor:pointer; display:flex; align-items:center;
  gap:8px; transition:border-color .2s;
}
.az-apc:active { border-color:var(--y); }
.az-apcc { font-weight:700; font-size:.95rem; color:var(--wh); }
.az-apcn { font-size:.72rem; color:var(--muted); margin-top:2px; }
.az-api {
  display:flex; align-items:center; gap:14px;
  padding:13px 0; border-bottom:1px solid var(--bd); cursor:pointer;
}
.az-api:active { opacity:.7; }
.az-apic {
  font-weight:700; font-size:.9rem; color:var(--y); width:40px;
  flex-shrink:0; background:rgba(201,169,110,.08);
  padding:5px; border-radius:7px; text-align:center;
  border:1px solid rgba(201,169,110,.15);
}
.az-apin { font-weight:600; font-size:.88rem; color:var(--wh); }
.az-apism { font-size:.72rem; color:var(--muted); margin-top:2px; }

/* ── SHEETS ───────────────────────────────────────── */
.az-ov { display:none; position:fixed; inset:0; background:rgba(13,15,20,.8); backdrop-filter:blur(4px); z-index:8000; }
.az-ov.open { display:block; }
.az-sht {
  position:fixed; bottom:0; left:0; right:0;
  background:var(--d1); border:1px solid var(--bd); border-bottom:none;
  border-radius:22px 22px 0 0; z-index:8500;
  transform:translateY(100%);
  transition:transform .32s cubic-bezier(0.16,1,0.3,1);
  max-height:88vh; overflow-y:auto;
}
.az-sht.open { transform:translateY(0); }
.az-shdl { width:36px; height:3px; background:var(--bd); border-radius:4px; margin:12px auto 8px; }
.az-shd {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 20px 14px; border-bottom:1px solid var(--bd);
}
.az-shttl { font-size:1rem; font-weight:600; color:var(--wh); letter-spacing:.3px; }
.az-shx {
  width:32px; height:32px; border-radius:50%;
  background:var(--d3); border:1px solid var(--bd);
  color:var(--soft); cursor:pointer;
  display:flex; align-items:center; justify-content:center; font-size:.9rem;
}

/* pax rows */
.az-pxr { display:flex; justify-content:space-between; align-items:center; padding:15px 20px; border-bottom:1px solid var(--bd); }
.az-pxt { font-weight:600; font-size:.9rem; color:var(--wh); }
.az-pxs { font-size:.72rem; color:var(--muted); margin-top:3px; }
.az-pxc { display:flex; align-items:center; gap:14px; }
.az-pxb {
  width:34px; height:34px; border-radius:8px;
  border:1px solid var(--bd); background:var(--d3);
  color:var(--wh); font-size:1.1rem; font-weight:500;
  cursor:pointer; display:flex; align-items:center; justify-content:center; transition:.2s;
}
.az-pxb:active { background:var(--y); color:var(--ink); border-color:var(--y); }
.az-pxn { font-weight:700; font-size:1rem; color:var(--wh); width:24px; text-align:center; }
.az-shfoot { padding:14px 20px 22px; }

/* filter */
.az-fs { padding:0 20px; margin-bottom:10px; }
.az-fl {
  font-size:.6rem; font-weight:800; color:var(--y2);
  text-transform:uppercase; letter-spacing:2px; margin-bottom:10px; padding-top:14px;
}
.az-prl { display:flex; justify-content:space-between; font-size:.82rem; font-weight:600; color:var(--y); margin-bottom:10px; }
input[type=range] { width:100%; accent-color:var(--y); height:3px; cursor:pointer; }
.az-ckr {
  display:flex; align-items:center; justify-content:space-between;
  padding:11px 0; border-bottom:1px solid var(--bd); cursor:pointer;
}
.az-ckr:last-child { border-bottom:none; }
.az-ckl { display:flex; align-items:center; gap:12px; }
.az-ckbox {
  width:20px; height:20px; border-radius:5px; border:1.5px solid var(--bd);
  display:flex; align-items:center; justify-content:center;
  color:var(--ink); font-size:.7rem; transition:.2s; flex-shrink:0;
}
.az-ckr.ck .az-ckbox { background:var(--y); border-color:var(--y); }
.az-cknm { font-size:.88rem; color:var(--wh); font-weight:400; }
.az-ckcnt {
  font-size:.72rem; color:var(--muted); background:var(--d3);
  padding:2px 8px; border-radius:8px; font-weight:600;
}
.az-fbtns { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:14px 20px 22px; }
.az-frst {
  background:var(--d3); border:1px solid var(--bd); color:var(--soft);
  padding:13px; border-radius:10px; font-weight:600; font-size:.88rem; cursor:pointer;
}
.az-fapl {
  background:var(--y); border:none; color:var(--ink);
  padding:13px; border-radius:10px; font-weight:700; font-size:.88rem; cursor:pointer;
}

/* booking sheet */
.az-bkinfo { padding:12px 20px 0; text-align:center; }
.az-bkroute {
  font-family:'Cormorant Garamond', serif;
  font-size:1.6rem; font-weight:400; letter-spacing:2px;
  color:var(--wh); margin:10px 0 5px;
}
.az-bkdet { font-size:.82rem; color:var(--muted); font-weight:400; line-height:1.6; }
.az-bkprice {
  font-family:'Cormorant Garamond', serif;
  font-size:2rem; font-weight:400; color:var(--y);
  margin:14px 20px 0; letter-spacing:1px;
}
.az-bknote { font-size:.75rem; color:var(--muted); margin:8px 20px 18px; line-height:1.7; }
.az-bkbtn {
  display:flex; align-items:center; justify-content:center; gap:10px;
  padding:14px; border-radius:12px; font-weight:600; font-size:.9rem;
  margin:0 20px 10px; border:none; text-decoration:none;
  cursor:pointer; transition:transform .2s, opacity .2s;
  letter-spacing:.3px;
}
.az-bkbtn:active { transform:scale(0.98); opacity:.9; }
.az-bkcl { background:var(--y); color:var(--ink); }
.az-bkwa { background:var(--wa); color:#fff; }

/* ── COMPARE ── */
.az-comp-add {
  background:transparent; border:1px solid var(--bd);
  color:var(--muted); padding:5px 10px; border-radius:7px;
  font-size:.68rem; font-weight:600; cursor:pointer;
  margin-top:6px; display:inline-flex; align-items:center; gap:5px;
  transition:all .2s; pointer-events:auto;
}
.az-comp-add:hover { border-color:var(--y2); color:var(--wh); }
.az-comp-add.active { background:rgba(201,169,110,.12); border-color:var(--y); color:var(--y); }

.az-comp-bar {
  position:fixed; bottom:80px; left:50%; transform:translateX(-50%) translateY(150px);
  opacity:0; transition:all .35s cubic-bezier(0.16,1,0.3,1);
  background:rgba(22,25,32,0.97); backdrop-filter:blur(12px);
  border:1px solid var(--y); padding:10px 14px 10px 18px;
  border-radius:30px; display:flex; align-items:center; gap:14px;
  z-index:8000; pointer-events:none;
}
.az-comp-bar.show { transform:translateX(-50%) translateY(0); opacity:1; pointer-events:auto; }
.az-comp-btn {
  background:var(--y); color:var(--ink); border:none;
  padding:9px 18px; border-radius:20px; font-weight:700; font-size:.82rem; cursor:pointer;
}
.az-comp-count { font-weight:700; color:var(--y); font-size:1.1rem; }
.az-comp-txt { font-size:.82rem; font-weight:500; color:var(--wh); }

.az-comp-grid { display:flex; gap:14px; overflow-x:auto; padding:14px 20px; scroll-snap-type:x mandatory; }
.az-comp-grid::-webkit-scrollbar { display:none; }
.az-comp-col {
  flex:0 0 250px; scroll-snap-align:start;
  background:var(--d2); border:1px solid var(--bd);
  border-radius:14px; padding:14px;
}
.az-comp-row {
  border-bottom:1px dashed var(--bd); padding:10px 0;
  font-size:.8rem; display:flex; justify-content:space-between; align-items:center;
}
.az-comp-row:last-child { border-bottom:none; }

/* ── CALL BAR ─────────────────────────────────────── */
.az-cbar {
  position:fixed; bottom:0; left:0; right:0;
  background:rgba(22,25,32,0.97); border-top:1px solid var(--bd);
  padding:12px 16px; padding-bottom:max(12px,env(safe-area-inset-bottom));
  display:flex; align-items:center; justify-content:space-between;
  z-index:1000; backdrop-filter:blur(12px);
}
.az-cbl .cbl { font-size:.6rem; color:var(--y2); font-weight:700; text-transform:uppercase; letter-spacing:1px; }
.az-cbl .cbn { font-size:1rem; font-weight:600; color:var(--wh); margin-top:2px; }
.az-cbr { display:flex; gap:8px; }
.az-cbb {
  padding:10px 14px; border-radius:10px; font-weight:700; font-size:.8rem;
  border:none; display:flex; align-items:center; gap:6px;
  text-decoration:none; cursor:pointer; letter-spacing:.3px;
}
.az-cbwa { background:var(--wa); color:#fff; }
.az-cbph { background:var(--y); color:var(--ink); }

/* ── WELCOME MODAL ────────────────────────────────── */
.az-welcome-ov {
  position:fixed; inset:0;
  background:rgba(13,15,20,0.85); backdrop-filter:blur(8px);
  z-index:9998; opacity:0; visibility:hidden; transition:all .3s ease;
}
.az-welcome-ov.show { opacity:1; visibility:visible; }
.az-welcome-box {
  position:fixed; top:50%; left:50%;
  transform:translate(-50%,-48%) scale(0.96);
  width:90%; max-width:400px; max-height:85vh; overflow-y:auto;
  background:var(--d2); border:1px solid rgba(201,169,110,.3);
  border-radius:20px; z-index:9999;
  opacity:0; visibility:hidden;
  transition:all .35s cubic-bezier(0.16,1,0.3,1);
  box-shadow:0 24px 60px rgba(0,0,0,0.7);
}
.az-welcome-box::-webkit-scrollbar { display:none; }
.az-welcome-box.show { transform:translate(-50%,-50%) scale(1); opacity:1; visibility:visible; }
.az-wb-head { padding:20px 20px 10px; text-align:center; position:relative; }
.az-wb-close {
  position:absolute; top:14px; right:14px;
  width:30px; height:30px; border-radius:50%;
  background:var(--d3); border:1px solid var(--bd); color:var(--muted);
  display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:1rem;
}
.az-wb-close:active { background:var(--y); color:var(--ink); }
.az-wb-title { font-size:1.1rem; font-weight:600; color:var(--wh); margin-bottom:5px; }
.az-wb-sub { font-size:.75rem; color:var(--y); font-weight:600; letter-spacing:.5px; }
.az-wb-body { padding:10px 20px 18px; display:grid; grid-template-columns:1fr; gap:10px; }
.az-svc-card {
  background:var(--d1); border:1px solid var(--bd);
  border-radius:12px; padding:14px;
  display:flex; align-items:flex-start; gap:12px; transition:border-color .2s;
}
.az-svc-card:active { border-color:var(--y2); }
.az-svc-icon {
  width:38px; height:38px; border-radius:9px;
  background:rgba(201,169,110,.07); border:1px solid rgba(201,169,110,.2);
  color:var(--y); display:flex; align-items:center; justify-content:center;
  font-size:1.1rem; flex-shrink:0;
}
.az-svc-card:nth-child(2) .az-svc-icon { color:var(--ac); border-color:rgba(224,90,90,.25); background:rgba(224,90,90,.07); }
.az-svc-card:nth-child(3) .az-svc-icon { color:#D4A843; border-color:rgba(212,168,67,.25); background:rgba(212,168,67,.07); }
.az-svc-card:nth-child(4) .az-svc-icon { color:var(--gn); border-color:rgba(110,231,183,.25); background:rgba(110,231,183,.07); }
.az-svc-text h4 { font-size:.88rem; font-weight:600; color:var(--wh); margin:0 0 3px; }
.az-svc-text p { font-size:.75rem; color:var(--muted); margin:0; line-height:1.5; }
.az-wb-foot { padding:0 20px 18px; }
.az-wb-btn {
  width:100%; padding:13px; border-radius:12px;
  background:var(--y); color:var(--ink); font-weight:700; font-size:.9rem;
  border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:8px;
  letter-spacing:.5px;
}

/* ── THEME TOGGLE ───────────────────────────────────── */
.az-theme-toggle {
  background:var(--d3); border:1px solid var(--bd);
  border-radius:8px; padding:6px 10px; cursor:pointer; font-size:.9rem;
  transition:.2s; color:var(--wh);
}

/* ── DESKTOP ──────────────────────────────────────── */
@media (min-width:1024px) {
  .az-sc, #az-res, .az-hc {
    max-width:960px;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .az-sc {
    margin-top:28px;
    border-radius:18px;
    border:1px solid var(--bd);
    overflow:hidden;
  }
  .az-hdr {
    padding-left:max(16px,calc(50vw - 480px)) !important;
    padding-right:max(16px,calc(50vw - 480px)) !important;
  }
  .az-fc:hover {
    border-color:rgba(201,169,110,.35);
    transform:translateY(-1px);
    box-shadow:0 8px 30px rgba(0,0,0,0.4);
  }
}
