:root{
  --bg: #060915;
  --bg2:#0b1020;
  --card:#0d1530cc;
  --card2:#0e1938;
  --text:#eaf0ff;
  --muted:#a9b7e6;
  --line:#27315c;
  --accent:#7c5cff;
  --accent2:#32d3ff;
  --good:#39f0b5;
  --radius: 18px;
  --shadow: 0 18px 60px rgba(0,0,0,.45);
  --shadow2: 0 8px 26px rgba(0,0,0,.35);
  --container: 1140px;
}
@media (prefers-color-scheme: light){
  :root{
    --bg:#f7f8ff;
    --bg2:#ffffff;
    --card:#ffffffcc;
    --card2:#ffffff;
    --text:#0b1020;
    --muted:#39405a;
    --line:#e7e9ff;
    --shadow: 0 18px 60px rgba(10,20,40,.12);
    --shadow2: 0 8px 26px rgba(10,20,40,.10);
  }
}
*{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  background: radial-gradient(1200px 800px at 10% -10%, rgba(124,92,255,.35), transparent 55%),
              radial-gradient(900px 600px at 95% 10%, rgba(50,211,255,.22), transparent 55%),
              linear-gradient(180deg, var(--bg), var(--bg2));
  color: var(--text);
  line-height:1.5;
  overflow-x:hidden;
}
a{ color:inherit; text-decoration:none; }
a:hover{ text-decoration:underline; text-underline-offset:3px; }
img{ max-width:100%; display:block; }
.container{ width:min(var(--container), calc(100% - 2rem)); margin-inline:auto; }
.skip-link{ position:absolute; left:-999px; top:0; padding:.75rem 1rem; background:var(--bg2); border:1px solid var(--line); border-radius:12px; z-index:9999; }
.skip-link:focus{ left:1rem; top:1rem; }
.site-header{ position:sticky; top:0; z-index:50; backdrop-filter: blur(12px); background: color-mix(in oklab, var(--bg2) 78%, transparent); border-bottom:1px solid color-mix(in oklab, var(--line) 70%, transparent); }
.header-inner{ display:flex; align-items:center; justify-content:space-between; padding:.9rem 0; gap:1rem; }
.header-glow{ height:1px; background:linear-gradient(90deg, transparent, rgba(124,92,255,.55), rgba(50,211,255,.45), transparent); }
.brand{ display:flex; align-items:center; gap:.65rem; text-decoration:none !important; }
.brand-mark{ filter: drop-shadow(0 10px 24px rgba(124,92,255,.35)); }
.brand-text{ display:flex; align-items:baseline; gap:.1rem; }
.brand-name{ font-weight:750; letter-spacing:.2px; }
.brand-domain{ color:var(--muted); font-weight:650; }
.nav{ display:none; gap:1rem; padding:.35rem .6rem; border:1px solid color-mix(in oklab, var(--line) 75%, transparent); border-radius:999px; background: color-mix(in oklab, var(--bg2) 85%, transparent); }
.nav a{ padding:.35rem .55rem; border-radius:999px; color:var(--muted); font-weight:650; }
.nav a:hover{ color:var(--text); text-decoration:none; background: color-mix(in oklab, var(--card2) 80%, transparent); }
.header-cta{ display:flex; align-items:center; gap:.6rem; }
.btn{
  border:1px solid color-mix(in oklab, var(--line) 75%, transparent);
  background: color-mix(in oklab, var(--bg2) 82%, transparent);
  color:var(--text);
  padding:.72rem 1rem;
  border-radius:999px;
  font-weight:750;
  box-shadow: var(--shadow2);
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.btn:hover{ transform: translateY(-1px); text-decoration:none; }
.btn:active{ transform: translateY(0px); box-shadow:none; }
.btn:focus-visible{ outline:3px solid color-mix(in oklab, var(--accent2) 70%, transparent); outline-offset:2px; }
.btn-primary{ border-color: color-mix(in oklab, var(--accent) 55%, var(--line)); background: linear-gradient(135deg, color-mix(in oklab, var(--accent) 72%, #ffffff 0%), color-mix(in oklab, var(--accent2) 56%, #ffffff 0%)); color:#071022; }
.btn-secondary{ background: color-mix(in oklab, var(--card2) 85%, transparent); }
.btn-ghost{ background: transparent; box-shadow:none; }
.btn-sm{ padding:.55rem .85rem; font-weight:750; }
.hero{ padding:3.2rem 0 1.8rem; }
.hero-grid{ display:grid; grid-template-columns:1fr; gap:1.4rem; align-items:center; }
.hero-copy h1{ font-size: clamp(2rem, 3vw + 1.2rem, 3.25rem); line-height:1.06; letter-spacing:-0.02em; margin:.8rem 0 .8rem; }
.subhead{ color:var(--muted); font-size:1.05rem; margin:0 0 1.2rem; max-width:60ch; }
.pill{ display:inline-flex; align-items:center; gap:.6rem; padding:.45rem .75rem; border-radius:999px; border:1px solid color-mix(in oklab, var(--line) 75%, transparent); background: color-mix(in oklab, var(--bg2) 80%, transparent); color:var(--muted); font-weight:650; margin:0; }
.dot{ width:.55rem; height:.55rem; border-radius:999px; background: radial-gradient(circle at 30% 30%, #fff, var(--good)); box-shadow: 0 0 0 6px rgba(57,240,181,.12); }
.hero-actions{ display:flex; flex-wrap:wrap; gap:.75rem; margin:1.1rem 0 1.2rem; }
.hero-stats{ display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:.8rem; margin:1.1rem 0 1.2rem; }
.stat{ border:1px solid color-mix(in oklab, var(--line) 75%, transparent); border-radius: var(--radius); background: color-mix(in oklab, var(--card) 70%, transparent); padding:.8rem .9rem; box-shadow: var(--shadow2); }
.stat-value{ font-weight:850; font-size:1.25rem; letter-spacing:-0.01em; }
.stat-label{ color:var(--muted); font-weight:650; font-size:.92rem; margin-top:.2rem; }
.search{ display:flex; gap:.65rem; flex-wrap:wrap; align-items:center; max-width:720px; }
.search input{ flex:1 1 320px; min-width:220px; padding:.78rem .9rem; border-radius:14px; border:1px solid color-mix(in oklab, var(--line) 75%, transparent); background: color-mix(in oklab, var(--bg2) 85%, transparent); color:var(--text); outline:none; }
.search input::placeholder{ color: color-mix(in oklab, var(--muted) 80%, transparent); }
.search input:focus{ border-color: color-mix(in oklab, var(--accent2) 70%, var(--line)); box-shadow: 0 0 0 4px color-mix(in oklab, var(--accent2) 18%, transparent); }
.hero-art{ position:relative; border-radius: calc(var(--radius) + 10px); overflow:hidden; min-height:420px; border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--card2) 70%, transparent); box-shadow: var(--shadow); }
.art-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.9; }
.art-ship{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform: translateY(6px); filter: drop-shadow(0 26px 50px rgba(0,0,0,.45)); }
.art-card{ position:absolute; right:18px; bottom:18px; left:18px; max-width:420px; margin-left:auto; border-radius: calc(var(--radius) + 6px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--bg2) 78%, transparent); backdrop-filter: blur(10px); box-shadow: var(--shadow2); padding:1rem; }
.art-card-top{ display:flex; align-items:center; justify-content:space-between; gap:.8rem; }
.badge{ display:inline-flex; align-items:center; justify-content:center; padding:.25rem .6rem; border-radius:999px; font-weight:800; background: color-mix(in oklab, var(--accent) 25%, transparent); border:1px solid color-mix(in oklab, var(--accent) 45%, var(--line)); }
.muted{ color:var(--muted); }
.art-card-mid{ display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-top:.75rem; }
.rating-score{ font-size:2.15rem; font-weight:900; letter-spacing:-0.03em; }
.rating-label{ display:block; color:var(--muted); font-weight:650; margin-top:.15rem; }
.mini-bars{ display:flex; align-items:flex-end; gap:.35rem; height:42px; }
.mini-bars span{ width:10px; height: var(--h); border-radius:10px; background: linear-gradient(180deg, color-mix(in oklab, var(--accent2) 60%, #fff 0%), color-mix(in oklab, var(--accent) 65%, #fff 0%)); opacity:.95; }
.art-card-bottom{ display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.75rem; }
.chip{ padding:.28rem .55rem; border-radius:999px; border:1px solid color-mix(in oklab, var(--line) 75%, transparent); background: color-mix(in oklab, var(--card2) 80%, transparent); font-weight:700; color:var(--muted); font-size:.9rem; }
.trust{ padding:.7rem 0 0; }
.trust-row{ display:grid; grid-template-columns:1fr; gap:.6rem; padding:1rem; border-radius: calc(var(--radius) + 10px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--bg2) 78%, transparent); box-shadow: var(--shadow2); }
.trust-item{ display:flex; align-items:center; gap:.65rem; color:var(--muted); font-weight:650; }
.trust-icon{ width:34px; height:34px; border-radius:12px; display:grid; place-items:center; background: color-mix(in oklab, var(--accent) 16%, transparent); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); }
.section{ padding:3.2rem 0; }
.section-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-bottom:1.2rem; }
.section-head h2{ margin:0; font-size: clamp(1.5rem, 1vw + 1.2rem, 2.1rem); letter-spacing:-0.02em; }
.cards-grid{ display:grid; grid-template-columns:1fr; gap:1rem; }
.card{ border-radius: calc(var(--radius) + 6px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--card) 72%, transparent); box-shadow: var(--shadow2); padding:1.1rem; overflow:hidden; position:relative; }
.card::before{ content:""; position:absolute; inset:-2px; background: radial-gradient(600px 220px at 20% 0%, rgba(124,92,255,.22), transparent 55%), radial-gradient(500px 240px at 90% 40%, rgba(50,211,255,.18), transparent 60%); pointer-events:none; }
.card > *{ position:relative; }
.card-kicker{ color:var(--muted); font-weight:750; letter-spacing:.06em; text-transform:uppercase; font-size:.78rem; }
.card-title{ margin:.35rem 0 .3rem; font-size:1.25rem; }
.card-sub{ margin:0 0 1rem; color:var(--muted); }
.score-row{ display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:.7rem; margin:0 0 1rem; }
.score-row dt{ color:var(--muted); font-weight:650; font-size:.82rem; }
.score-row dd{ margin:.1rem 0 0; font-weight:900; font-size:1.05rem; }
.card-actions{ display:flex; gap:.6rem; flex-wrap:wrap; align-items:center; }
.split{ display:grid; grid-template-columns:1fr; gap:1rem; align-items:start; }
.panel{ border-radius: calc(var(--radius) + 10px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--bg2) 78%, transparent); box-shadow: var(--shadow2); padding:1.1rem; }
.filters{ display:flex; flex-wrap:wrap; gap:.45rem; margin-top:.8rem; }
.chip-btn{ padding:.45rem .7rem; border-radius:999px; border:1px solid color-mix(in oklab, var(--line) 75%, transparent); background: color-mix(in oklab, var(--card2) 80%, transparent); color:var(--muted); font-weight:750; cursor:pointer; }
.chip-btn.is-active{ color:#071022; background: linear-gradient(135deg, color-mix(in oklab, var(--accent) 72%, #fff 0%), color-mix(in oklab, var(--accent2) 56%, #fff 0%)); border-color:transparent; }
.panel-note{ margin-top:.9rem; padding:.8rem; border-radius: var(--radius); border:1px dashed color-mix(in oklab, var(--line) 75%, transparent); color:var(--muted); }
.guide-list{ display:grid; gap:.6rem; margin-top:1rem; }
.guide{ display:block; padding:.9rem; border-radius: calc(var(--radius) + 6px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--card) 70%, transparent); box-shadow: var(--shadow2); text-decoration:none !important; }
.guide:hover{ transform: translateY(-1px); }
.guide-title{ font-weight:850; }
.guide-meta{ color:var(--muted); margin-top:.2rem; font-weight:650; }
.lab-grid{ display:grid; grid-template-columns:1fr; gap:1rem; }
.lab-item{ padding:1.1rem; border-radius: calc(var(--radius) + 6px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--card) 70%, transparent); box-shadow: var(--shadow2); }
.lab-item h3{ margin:0 0 .35rem; }
.cta{ display:grid; grid-template-columns:1fr; gap:1rem; align-items:center; padding:1.3rem; border-radius: calc(var(--radius) + 10px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: radial-gradient(900px 300px at 20% 0%, rgba(124,92,255,.22), transparent 60%), radial-gradient(800px 350px at 90% 60%, rgba(50,211,255,.18), transparent 60%), color-mix(in oklab, var(--bg2) 78%, transparent); box-shadow: var(--shadow); }
.cta-form{ display:grid; grid-template-columns:1fr; gap:.6rem; }
.cta-form input{ padding:.85rem .95rem; border-radius:14px; border:1px solid color-mix(in oklab, var(--line) 75%, transparent); background: color-mix(in oklab, var(--bg2) 85%, transparent); color:var(--text); outline:none; }
.cta-form input:focus{ border-color: color-mix(in oklab, var(--accent2) 70%, var(--line)); box-shadow: 0 0 0 4px color-mix(in oklab, var(--accent2) 18%, transparent); }
.fineprint{ margin:0; color:var(--muted); font-size:.9rem; }
.bullets{ margin:.9rem 0 0; padding-left:1.1rem; color:var(--muted); font-weight:650; }
.about-card{ border-radius: calc(var(--radius) + 10px); border:1px solid color-mix(in oklab, var(--line) 70%, transparent); background: color-mix(in oklab, var(--card) 70%, transparent); box-shadow: var(--shadow2); padding:1.1rem; }
.about-badge{ display:inline-flex; align-items:center; padding:.25rem .6rem; border-radius:999px; font-weight:850; background: color-mix(in oklab, var(--good) 18%, transparent); border:1px solid color-mix(in oklab, var(--good) 35%, var(--line)); margin-bottom:.6rem; }
.about-actions{ display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.9rem; }
.footer{ padding:2.6rem 0 3rem; border-top:1px solid color-mix(in oklab, var(--line) 70%, transparent); }
.footer-inner{ display:grid; grid-template-columns:1fr; gap:1.2rem; align-items:start; }
.footer-links{ display:flex; gap:1rem; flex-wrap:wrap; color:var(--muted); font-weight:700; }
.footer-meta .muted{ margin:.2rem 0; }
.toast{ position:fixed; left:50%; bottom:18px; transform: translateX(-50%); background: color-mix(in oklab, var(--bg2) 88%, transparent); border:1px solid color-mix(in oklab, var(--line) 75%, transparent); box-shadow: var(--shadow); border-radius:999px; padding:.75rem 1rem; color:var(--text); max-width:min(680px, calc(100% - 2rem)); z-index:100; }
.sr-only{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (min-width: 860px){
  .nav{ display:flex; }
  .hero-grid{ grid-template-columns: 1.1fr .9fr; gap:1.4rem; }
  .trust-row{ grid-template-columns: repeat(4, minmax(0,1fr)); }
  .cards-grid{ grid-template-columns: repeat(3, minmax(0,1fr)); }
  .split{ grid-template-columns: 1.15fr .85fr; gap:1.4rem; }
  .lab-grid{ grid-template-columns: repeat(4, minmax(0,1fr)); }
  .cta{ grid-template-columns: 1.2fr .8fr; }
  .cta-form{ grid-template-columns: 1fr auto; align-items:center; }
  .cta-form .fineprint{ grid-column: 1 / -1; }
  .footer-inner{ grid-template-columns: 1.1fr .8fr .8fr; align-items:center; }
}
@media (prefers-reduced-motion: reduce){
  *{ scroll-behavior:auto !important; transition:none !important; }
}
