/* abchost-nav / styles.css — Atelier premium textured theme (v2) */

:root{
  --bg:#f5f2ec; --bg-2:#ece7dc; --surface:#ffffff; --surface-2:#faf8f3;
  --line:#e6dfd2; --line-2:#d3cab8;
  --ink:#1a1714; --text:#1a1714; --text-2:#403a32; --muted:#6b6055; --muted-2:#8c8174;
  --brand:#4338ca; --brand-2:#7c3aed; --brand-soft:#e7e1fb; --brand-glow:rgba(67,56,202,.22);
  --gold:#9a6a16; --gold-soft:#f7ecd6;
  --tier-e:#047857; --tier-e-bg:#d4f5e3;
  --tier-i:#1d4ed8; --tier-i-bg:#dde7fb;
  --tier-a:#6d28d9; --tier-a-bg:#ece2fb;
  --warn:#b45309; --warn-bg:#fcefd5; --warn-line:#e9c677;
  --ok:#15803d; --ok-bg:#dcf3e3; --ok-line:#86cfa1;
  --sh-card:0 1px 0 rgba(255,255,255,.9) inset, 0 1px 2px rgba(26,23,20,.05), 0 12px 30px -12px rgba(26,23,20,.12);
  --sh-lg:0 1px 0 rgba(255,255,255,.9) inset, 0 2px 6px rgba(26,23,20,.06), 0 30px 60px -25px rgba(26,23,20,.25);
  --grad-brand:linear-gradient(135deg,var(--brand),var(--brand-2));
  --grad-gold:linear-gradient(135deg,#b8841f,#9a6a16);
  --rad:14px; --rad-sm:10px; --rad-xs:7px;
  --maxw:1180px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:"Geist",system-ui,-apple-system,sans-serif;
  color:var(--text);
  background:
    radial-gradient(640px 460px at 12% -10%, rgba(124,58,237,.10), transparent 60%),
    radial-gradient(780px 540px at 96% 4%, rgba(67,56,202,.10), transparent 60%),
    radial-gradient(600px 420px at 50% 108%, rgba(154,106,22,.08), transparent 60%),
    linear-gradient(180deg,var(--bg) 0%, var(--bg-2) 100%);
  background-attachment:fixed;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"ss01","cv01";
}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
input,select{font-family:inherit;font-size:inherit;color:inherit}

/* Premium overlays */
.grain{
  position:fixed;inset:0;pointer-events:none;z-index:9999;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.1 0 0 0 0 0.09 0 0 0 0 0.07 0 0 0 0.4 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  opacity:.5;mix-blend-mode:multiply;
}
.top-accent{
  position:fixed;top:0;left:0;right:0;height:3px;z-index:10000;
  background:var(--grad-brand);
  box-shadow:0 0 18px 0 rgba(124,58,237,.4);
}

/* Layout */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}

/* Topbar */
.topbar{
  position:sticky;top:3px;z-index:100;
  background:rgba(245,242,236,.78);
  backdrop-filter:saturate(160%) blur(14px);
  border-bottom:1px solid var(--line);
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset;
}
.tb{display:flex;align-items:center;gap:20px;height:62px}
.brand{display:flex;align-items:center;gap:10px;font-weight:600;font-family:"Fraunces",serif;letter-spacing:-.01em;font-size:1.05rem;color:var(--ink)}
.nav{display:flex;gap:6px}
.nav a{
  padding:7px 12px;border-radius:7px;font-size:.85rem;color:var(--text-2);
  transition:color .15s, background .15s;
}
.nav a:hover{background:var(--surface-2);color:var(--ink)}
.nav a[aria-current="page"]{background:var(--brand-soft);color:var(--brand);font-weight:500}
.tb-tools{margin-left:auto;display:flex;align-items:center;gap:10px}
.disc-badge{
  display:inline-flex;align-items:center;padding:4px 9px;border-radius:99px;
  background:var(--gold-soft);color:var(--gold);
  font-size:.68rem;font-weight:600;font-family:"JetBrains Mono",monospace;letter-spacing:.04em;
  border:1px solid var(--warn-line);
}
.lang-switch, .curr-switch{
  display:inline-flex;border:1px solid var(--line-2);border-radius:99px;background:var(--surface);
  padding:2px;
}
.lang-switch button, .curr-switch button{
  padding:4px 9px;border-radius:99px;font-size:.74rem;font-weight:500;
  color:var(--muted);font-family:"JetBrains Mono",monospace;
  transition:color .15s, background .15s;
}
.lang-switch button[aria-pressed="true"], .curr-switch button[aria-pressed="true"]{
  background:var(--grad-brand);color:#fff;
}
.curr-switch button[aria-pressed="false"]:hover{color:var(--ink)}

/* Breadcrumb */
.crumbs{padding:10px 0 0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;font-size:.78rem;color:var(--muted)}
.crumbs li+li::before{content:"/";color:var(--line-2);margin-right:6px}
.crumbs a:hover{color:var(--brand)}
.crumbs [aria-current="page"]{color:var(--text-2);font-weight:500}

/* Headings */
.display{
  font-family:"Fraunces",serif;font-weight:700;
  font-optical-sizing:auto;
  font-size:clamp(2.4rem,5vw,3.6rem);
  line-height:1.04;letter-spacing:-.025em;
  color:var(--ink);margin:0 0 14px;
}
.display .g{
  background:var(--grad-brand);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:block;
}
.eyebrow{
  display:inline-block;font-family:"JetBrains Mono",monospace;font-size:.7rem;
  text-transform:uppercase;letter-spacing:.18em;color:var(--brand);
  margin:0 0 14px;padding:4px 10px;border-radius:99px;background:var(--brand-soft);
  border:1px solid rgba(124,58,237,.18);
}
.lead{font-size:1.075rem;color:var(--text-2);max-width:54ch;margin:0 0 26px}

/* Section heads */
.sec-head{margin:0 0 18px;display:flex;flex-direction:column;gap:4px}
.sec-head h2{
  font-family:"Fraunces",serif;font-weight:600;font-size:1.75rem;letter-spacing:-.015em;margin:0;color:var(--ink)
}
.sec-head p{margin:0;color:var(--muted);font-size:.95rem}

/* Hero */
.hero{padding:54px 0 30px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.stats{display:flex;flex-wrap:wrap;gap:18px;margin-top:6px}
.stat{display:flex;flex-direction:column;gap:2px}
.stat b{font-family:"Fraunces",serif;font-weight:700;font-size:1.4rem;color:var(--ink);letter-spacing:-.02em}
.stat span{font-size:.74rem;color:var(--muted);font-family:"JetBrains Mono",monospace;letter-spacing:.04em}
.hero-atlas svg{width:100%;max-width:380px;display:block;margin-left:auto;filter:drop-shadow(0 20px 40px rgba(67,56,202,.15))}

/* Use case rail */
.usecases{padding:30px 0 24px}
.uc-rail{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.uc{
  position:relative;text-align:left;padding:16px 14px;border-radius:var(--rad);
  background:var(--surface);border:1px solid var(--line);
  box-shadow:var(--sh-card);transition:transform .18s ease, box-shadow .18s ease, border-color .18s;
}
.uc::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;border-radius:2px 2px 0 0;background:var(--grad-brand);opacity:.0;transition:opacity .18s}
.uc:hover{transform:translateY(-2px);box-shadow:var(--sh-lg);border-color:var(--line-2)}
.uc:hover::before{opacity:1}
.uc[aria-pressed="true"]{border-color:var(--brand);background:linear-gradient(180deg,var(--brand-soft) 0%,var(--surface) 60%)}
.uc[aria-pressed="true"]::before{opacity:1}
.uc .ic{font-family:"JetBrains Mono",monospace;font-size:.72rem;color:var(--brand);letter-spacing:.08em;display:block;margin-bottom:8px}
.uc .t{font-family:"Fraunces",serif;font-weight:600;font-size:1.1rem;color:var(--ink);margin:0 0 4px}
.uc .h{font-size:.78rem;color:var(--muted);margin:0;line-height:1.4}

/* Catalog */
.catalog{padding:36px 0 24px}
.filterbar{
  display:flex;flex-wrap:wrap;gap:10px;align-items:end;
  padding:16px;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--rad);box-shadow:var(--sh-card);
}
.filterbar input[type="search"]{flex:1 1 220px;min-width:200px;padding:9px 12px;border:1px solid var(--line-2);border-radius:var(--rad-xs);background:var(--surface-2)}
.filterbar input[type="search"]:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-glow)}
.select-group{display:flex;flex-direction:column;gap:3px}
.select-group label{font-size:.68rem;color:var(--muted);font-family:"JetBrains Mono",monospace;letter-spacing:.08em;text-transform:uppercase}
.select-group select{padding:8px 28px 8px 10px;border:1px solid var(--line-2);border-radius:var(--rad-xs);background:var(--surface-2);min-width:140px}

.tier-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}
.chip-label{font-size:.7rem;color:var(--muted);font-family:"JetBrains Mono",monospace;letter-spacing:.08em;text-transform:uppercase;margin-right:6px}
.chip{
  padding:6px 14px;border-radius:99px;border:1px solid var(--line-2);background:var(--surface);
  font-size:.82rem;font-weight:500;color:var(--text-2);transition:all .15s;
}
.chip:hover{border-color:var(--brand);color:var(--brand)}
.chip[aria-pressed="true"]{background:var(--grad-brand);color:#fff;border-color:transparent;box-shadow:0 4px 12px -4px var(--brand-glow)}
.chip-clear{margin-left:auto;font-size:.78rem;color:var(--muted);padding:6px 10px}
.chip-clear:hover{color:var(--warn)}

.results-meta{display:flex;justify-content:space-between;align-items:center;margin:18px 0 14px;font-size:.85rem;color:var(--muted)}
.results-meta b{color:var(--ink);font-family:"JetBrains Mono",monospace;font-weight:500}
.sample-tag{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.08em;color:var(--gold);background:var(--gold-soft);padding:3px 8px;border-radius:99px;border:1px solid var(--warn-line);text-transform:uppercase}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:18px}

/* Card */
.card{
  position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--rad);padding:20px;box-shadow:var(--sh-card);
  transition:transform .2s ease, box-shadow .2s ease;
}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;border-radius:2px 2px 0 0;background:var(--grad-brand);opacity:.0;transition:opacity .2s}
.card::after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;pointer-events:none;background:radial-gradient(280px 120px at 50% 0, var(--brand-glow), transparent 70%);opacity:0;transition:opacity .2s}
.card:hover{transform:translateY(-3px);box-shadow:var(--sh-lg)}
.card:hover::before, .card:hover::after{opacity:1}

.card-head{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:12px}
.card-brand{font-family:"Fraunces",serif;font-weight:600;font-size:1.15rem;color:var(--ink);margin:0}
.card-prod{font-size:.78rem;color:var(--muted);margin:2px 0 0}
.card-type-badge{
  font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.06em;
  padding:3px 7px;border-radius:5px;background:var(--brand-soft);color:var(--brand);text-transform:uppercase;
}

.tier-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:14px 0}
.tier-cell{padding:8px 9px;border-radius:var(--rad-xs);border:1px solid var(--line)}
.tier-cell .tier-name{font-size:.66rem;color:var(--muted);font-family:"JetBrains Mono",monospace;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px}
.tier-cell .tier-price{font-family:"Fraunces",serif;font-weight:700;font-size:1.18rem;color:var(--ink);letter-spacing:-.02em}
.tier-cell .tier-spec{font-size:.68rem;color:var(--muted-2);margin-top:2px}
.tier-cell.t-entry{background:var(--tier-e-bg);border-color:#bedfd0}
.tier-cell.t-entry .tier-name{color:var(--tier-e)}
.tier-cell.t-mid{background:var(--tier-i-bg);border-color:#b9ccf6}
.tier-cell.t-mid .tier-name{color:var(--tier-i)}
.tier-cell.t-pro{background:var(--tier-a-bg);border-color:#d6c5f6}
.tier-cell.t-pro .tier-name{color:var(--tier-a)}

.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:14px 0;font-size:.78rem}
.meta-grid .m{display:flex;flex-direction:column;gap:2px}
.meta-grid .m .mk{font-family:"JetBrains Mono",monospace;font-size:.62rem;color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase}
.meta-grid .m .mv{color:var(--text-2)}

.badges{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}
.badge{font-size:.66rem;padding:3px 7px;border-radius:5px;font-family:"JetBrains Mono",monospace;letter-spacing:.04em;background:var(--surface-2);color:var(--text-2);border:1px solid var(--line)}
.badge.warn{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}
.badge.ok{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-line)}
.badge.brand{background:var(--brand-soft);color:var(--brand);border-color:rgba(124,58,237,.18)}

.regions{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0 12px}
.regions .r{font-size:.66rem;padding:2px 6px;background:var(--surface-2);border-radius:4px;color:var(--muted);font-family:"JetBrains Mono",monospace}

.card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}
.rating-pill{display:inline-flex;align-items:center;gap:5px;font-family:"JetBrains Mono",monospace;font-size:.78rem;color:var(--gold);font-weight:500;background:var(--gold-soft);padding:3px 8px;border-radius:99px;border:1px solid var(--warn-line)}
.cmp-cb{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-2);cursor:pointer}
.cmp-cb input{margin:0}
.cta-btn{
  display:inline-block;padding:7px 14px;background:var(--grad-brand);color:#fff;
  font-size:.78rem;font-weight:500;border-radius:var(--rad-xs);
  text-decoration:none;transition:transform .15s, box-shadow .15s;
}
.cta-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px -3px var(--brand-glow)}

.coupon-bar{
  margin-top:10px;padding:7px 10px;background:var(--gold-soft);border:1px dashed var(--warn-line);
  border-radius:var(--rad-xs);display:flex;align-items:center;gap:8px;font-size:.74rem;color:var(--gold);
}
.coupon-bar .code{font-family:"JetBrains Mono",monospace;font-weight:600;padding:1px 6px;background:#fff;border:1px solid var(--warn-line);border-radius:4px;letter-spacing:.05em}
.checked-stamp{font-family:"JetBrains Mono",monospace;font-size:.62rem;color:var(--muted-2);letter-spacing:.06em;text-transform:uppercase;margin-top:8px}

/* Finder wizard */
.finder{padding:42px 0 30px}
.tree-card{
  position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--rad);padding:24px;box-shadow:var(--sh-card);
}
.tree-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:3px 3px 0 0;background:var(--grad-brand)}
.tree-card::after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;pointer-events:none;background:radial-gradient(360px 120px at 50% 0, var(--brand-glow), transparent 70%);opacity:.6}
.tree-prog{display:flex;align-items:center;gap:12px;margin-bottom:18px;position:relative}
.tree-prog #treeN{font-family:"JetBrains Mono",monospace;font-size:.72rem;color:var(--brand);letter-spacing:.08em;font-weight:500}
.prog{flex:1;height:5px;background:var(--surface-2);border-radius:99px;overflow:hidden;border:1px solid var(--line)}
.prog #treeBar{display:block;height:100%;width:0%;background:var(--grad-brand);transition:width .3s}
.tree-body{position:relative}
#treeQ{font-family:"Fraunces",serif;font-weight:600;font-size:1.5rem;color:var(--ink);margin:0 0 18px;letter-spacing:-.015em}
.tree-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tree-opt{
  text-align:left;padding:14px;border:1px solid var(--line-2);border-radius:var(--rad-sm);
  background:var(--surface);color:var(--text);font-size:.92rem;transition:all .15s;
}
.tree-opt:hover{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}
.tree-opt.sel{border-color:var(--brand);background:var(--brand-soft);color:var(--brand);font-weight:500;box-shadow:0 0 0 3px var(--brand-glow)}
.tree-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:22px}
.btn-primary{padding:9px 18px;border-radius:var(--rad-xs);background:var(--grad-brand);color:#fff;font-weight:500;font-size:.86rem;border:none;transition:transform .15s, box-shadow .15s}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 18px -6px var(--brand-glow)}
.btn-ghost{padding:9px 16px;border-radius:var(--rad-xs);background:transparent;border:1px solid var(--line-2);color:var(--text-2);font-size:.86rem;font-weight:500;transition:all .15s}
.btn-ghost:hover{border-color:var(--brand);color:var(--brand)}

.tree-result{padding:18px;background:linear-gradient(180deg,var(--brand-soft) 0%,var(--surface) 80%);border:1px solid rgba(124,58,237,.2);border-radius:var(--rad-sm);position:relative}
.tree-result::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:3px;background:var(--grad-brand)}
.tree-result h3{font-family:"Fraunces",serif;font-weight:600;font-size:1.15rem;margin:0 0 8px;color:var(--ink)}
.tree-result p{margin:0 0 8px;color:var(--text-2);font-size:.88rem}
.tree-result .res-cta{margin-top:14px}

/* Use case landing view */
.uc-land{padding:40px 0 50px}
.uc-land-head{text-align:left;margin-bottom:30px}
.uc-land-cta{margin-top:20px}
.uc-land-recs{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;margin:20px 0 40px}
.uc-land-faq h2{font-family:"Fraunces",serif;font-weight:600;font-size:1.5rem;letter-spacing:-.015em;color:var(--ink);margin:0 0 14px}
.faq-item{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);box-shadow:var(--sh-card);margin-bottom:10px;overflow:hidden}
.faq-item summary{padding:14px 16px;cursor:pointer;font-weight:500;color:var(--ink);font-family:"Fraunces",serif;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";float:right;color:var(--brand);font-family:"JetBrains Mono",monospace;font-weight:500}
.faq-item[open] summary::after{content:"−"}
.faq-item p{padding:0 16px 16px;margin:0;color:var(--text-2);font-size:.88rem;line-height:1.6}

/* Compliance matrix view */
.compliance-mat{padding:40px 0 50px}
.comp-legend{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.comp-legend .lg{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:99px;background:var(--surface);border:1px solid var(--line);font-size:.74rem;color:var(--text-2)}
.comp-legend .lg .dot{width:8px;height:8px;border-radius:50%;background:var(--ok)}
.comp-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--rad);box-shadow:var(--sh-card);background:var(--surface)}
.comp-table{width:100%;border-collapse:collapse;font-size:.82rem;min-width:760px}
.comp-table th, .comp-table td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--line)}
.comp-table thead th{background:var(--surface-2);font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.comp-table tbody tr:hover{background:var(--surface-2);cursor:pointer}
.comp-table .brand-cell{font-family:"Fraunces",serif;font-weight:600;color:var(--ink)}
.comp-table .yes{color:var(--ok);font-family:"JetBrains Mono",monospace}
.comp-table .no{color:var(--muted-2);font-family:"JetBrains Mono",monospace}
.comp-notes{margin-top:24px;display:grid;gap:12px}
.comp-notes p{margin:0;padding:14px 16px;background:var(--surface);border-left:3px solid var(--gold);border-radius:0 var(--rad-xs) var(--rad-xs) 0;color:var(--text-2);font-size:.86rem;line-height:1.6;box-shadow:var(--sh-card)}

/* Methodology view */
.method{padding:40px 0 50px}
.meth-body{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);
  padding:30px;box-shadow:var(--sh-card);max-width:780px;
}
.meth-body h3{font-family:"Fraunces",serif;font-weight:600;font-size:1.15rem;margin:24px 0 8px;color:var(--ink);letter-spacing:-.01em}
.meth-body h3:first-child{margin-top:0}
.meth-body p{margin:0 0 12px;color:var(--text-2);line-height:1.7}
.meth-body p:last-child{margin-bottom:0}

/* Radar chart */
.radar{display:inline-block;width:110px;height:110px;vertical-align:middle}
.radar polygon{fill:rgba(124,58,237,.18);stroke:var(--brand);stroke-width:1.2}
.radar polygon.outer{fill:none;stroke:var(--line-2);stroke-width:.6}
.radar line{stroke:var(--line-2);stroke-width:.5}
.radar .axis-label{font-size:8px;font-family:"JetBrains Mono",monospace;fill:var(--muted)}

/* Compare drawer */
.veil{position:fixed;inset:0;background:rgba(26,23,20,.42);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .25s;z-index:200}
.veil[aria-hidden="false"]{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(680px,90vw);background:var(--bg);transform:translateX(100%);transition:transform .3s cubic-bezier(.2,.7,.2,1);z-index:210;display:flex;flex-direction:column;border-left:1px solid var(--line);box-shadow:-30px 0 60px -20px rgba(26,23,20,.25)}
.drawer[aria-hidden="false"]{transform:translateX(0)}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line);background:var(--surface)}
.drawer-head h2{font-family:"Fraunces",serif;font-weight:600;font-size:1.25rem;margin:0;color:var(--ink)}
.dh-right{display:flex;align-items:center;gap:10px}
.drawer-head .x{width:32px;height:32px;border-radius:50%;font-size:1.3rem;color:var(--muted);background:var(--surface-2)}
.drawer-head .x:hover{background:var(--warn-bg);color:var(--warn)}
.drawer-body{flex:1;overflow:auto;padding:20px 24px}
.cmp-table{width:100%;border-collapse:collapse;font-size:.78rem}
.cmp-table th, .cmp-table td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}
.cmp-table thead th{font-family:"Fraunces",serif;font-weight:600;color:var(--ink);background:var(--surface-2)}
.cmp-table tbody th{text-align:left;font-family:"JetBrains Mono",monospace;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);width:140px}
.cmp-empty{padding:40px 20px;text-align:center;color:var(--muted)}

/* Floating compare button */
.cmp-float{position:fixed;right:24px;bottom:24px;z-index:150;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:99px;background:var(--grad-brand);color:#fff;font-weight:500;font-size:.86rem;box-shadow:0 10px 30px -8px var(--brand-glow);transition:transform .15s}
.cmp-float:hover{transform:translateY(-2px)}
.cmp-float b{background:rgba(255,255,255,.25);padding:1px 8px;border-radius:99px;font-family:"JetBrains Mono",monospace;font-size:.74rem}
.cmp-float.hidden{display:none}

/* Cookie banner */
.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:300;display:flex;align-items:center;gap:18px;justify-content:space-between;padding:14px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);box-shadow:var(--sh-lg);max-width:780px;margin:0 auto}
.cookie-banner::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;border-radius:2px 2px 0 0;background:var(--grad-gold)}
.cookie-banner.hidden{display:none}
.cb-text{display:flex;flex-direction:column;gap:3px}
.cb-text strong{font-family:"Fraunces",serif;font-weight:600;color:var(--ink);font-size:.92rem}
.cb-text span{font-size:.78rem;color:var(--muted)}
.cb-actions{display:flex;gap:8px;flex-shrink:0}

/* Footer */
.footer{margin-top:50px;border-top:1px solid var(--line);background:linear-gradient(180deg,var(--bg-2) 0%,var(--bg) 60%);padding:40px 0 20px}
.foot-grid{display:grid;grid-template-columns:1.4fr 2fr;gap:40px;margin-bottom:30px}
.foot-about .brand{display:inline-flex;align-items:center;gap:8px;margin-bottom:8px}
.foot-about p{color:var(--muted);font-size:.84rem;line-height:1.6;margin:0}
.foot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.foot-col h4{font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.foot-col a{display:block;color:var(--text-2);font-size:.84rem;padding:3px 0}
.foot-col a:hover{color:var(--brand)}
.disclosure{position:relative;padding:18px 18px 18px 22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);box-shadow:var(--sh-card)}
.disclosure::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:3px;background:var(--grad-gold)}
.disclosure .disc-title{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.disclosure .disc-title span:last-child{font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.08em;color:var(--muted-2);text-transform:uppercase}
.disclosure p{margin:0;font-size:.78rem;color:var(--muted);line-height:1.6}

/* Helpers */
.hidden{display:none !important}

/* Responsive */
@media (max-width: 880px){
  .hero-grid{grid-template-columns:1fr;gap:24px}
  .hero-atlas{order:-1}
  .hero-atlas svg{max-width:280px;margin:0 auto}
  .nav{display:none}
  .tb{height:auto;flex-wrap:wrap;padding:10px 0;gap:12px}
  .tb-tools{margin-left:0;width:100%;justify-content:space-between}
  .foot-grid{grid-template-columns:1fr;gap:24px}
  .foot-cols{grid-template-columns:repeat(3,1fr);gap:16px}
  .tree-opts{grid-template-columns:1fr}
  .tier-grid{grid-template-columns:1fr 1fr 1fr}
  .cookie-banner{flex-direction:column;align-items:stretch;left:10px;right:10px;bottom:10px}
  .cb-actions{justify-content:space-between}
}
@media (max-width: 560px){
  .foot-cols{grid-template-columns:1fr 1fr}
  .filterbar{flex-direction:column;align-items:stretch}
  .filterbar input[type="search"], .select-group select{width:100%}
  .stats{gap:12px}
  .stat b{font-size:1.15rem}
}
