@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap');
:root{
  --bg:#0e1626;--card:#16202f;--card2:#1d2a3d;--line:#2b3b52;
  --text:#eef3fa;--muted:#93a4bd;--accent:#3aa0ff;--accent2:#5fd0e8;--accent-soft:#122a44;
  --ok:#3ddc97;--ok-soft:#0f2f26;--warn:#f5b942;--warn-soft:#332611;--bad:#ff6b6b;--bad-soft:#3a1a1e;
  --r:18px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:hidden}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;position:relative}
body::before{content:"";position:fixed;inset:0;background:radial-gradient(900px 500px at 50% -10%,rgba(58,160,255,.13),transparent 65%),radial-gradient(700px 500px at 90% 30%,rgba(95,208,232,.09),transparent 60%);pointer-events:none;z-index:0}
body>*{position:relative;z-index:1}
#nav{z-index:60}
a{color:inherit;text-decoration:none}
.wrap{max-width:1060px;margin:0 auto;padding:0 22px}
nav{display:flex;align-items:center;gap:28px;padding:20px 0}
.logo{display:flex;align-items:center;gap:10px;font-weight:600;font-size:22px;letter-spacing:-.01em;font-family:'Fraunces',serif}
.logo svg{width:28px;height:28px;color:var(--accent)}
nav .links{display:flex;gap:22px;margin-left:auto;font-size:15.5px;color:var(--muted);flex-wrap:wrap}
nav .links a:hover,nav .links a.on{color:var(--text)}
.btn{display:inline-block;background:linear-gradient(120deg,var(--accent),var(--accent2));color:#fff;font-weight:600;font-size:16px;padding:13px 26px;border-radius:999px;border:none;cursor:pointer;transition:.2s;box-shadow:0 8px 24px rgba(58,160,255,.28);font-family:inherit}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(58,160,255,.4)}
.btn.ghost{background:transparent;border:1.5px solid var(--line);color:var(--text);box-shadow:none}
.btn.ghost:hover{border-color:var(--accent)}
.btn.sm{font-size:14.5px;padding:9px 18px}
.hero{text-align:center;padding:78px 0 44px}
.hero h1{font-size:clamp(36px,5.6vw,56px);font-weight:600;letter-spacing:-.01em;line-height:1.12;font-family:'Fraunces',serif}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero p{color:var(--muted);max-width:600px;margin:18px auto 0;font-size:18.5px}
.search{max-width:600px;margin:34px auto 8px;position:relative}
.search input{width:100%;background:var(--card);border:1.5px solid var(--line);border-radius:999px;padding:17px 22px 17px 52px;color:var(--text);font-size:17px;font-family:inherit;outline:none;transition:.2s}
.search input:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(58,160,255,.15)}
.search .ic{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:var(--muted);display:flex}
.stats{display:flex;justify-content:center;gap:44px;margin:30px 0 8px;color:var(--muted);font-size:14.5px}
.stats b{color:var(--text);font-size:22px;display:block;font-weight:700}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px;margin:36px 0 72px}
.pcard{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px 24px 24px;transition:.2s;display:block;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.tix{position:absolute;top:20px;right:22px;text-align:right;line-height:1.1}
.tix b{display:block;font-size:30px;font-weight:700}
.tix span{font-size:10.5px;color:var(--muted);letter-spacing:.02em}
.pcard .prow{padding-right:76px;align-items:center;margin-bottom:14px}
.badge.vsm{font-size:11.5px;padding:3px 10px;margin:5px 0 0;display:inline-block}
.pmeta{font-size:14.5px;color:var(--muted);margin-bottom:12px}
.pmeta b{color:var(--text);font-weight:600}
.pcard .plats{margin:0 0 20px}
.plats{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.plat{font-size:11.5px;padding:2px 9px;border-radius:999px;background:var(--card2);border:1px solid var(--line);color:var(--muted)}
.pcard.v-ok{background:linear-gradient(155deg,rgba(61,220,151,.12),var(--card) 60%);border-color:rgba(61,220,151,.35)}
.pcard.v-warn{background:linear-gradient(155deg,rgba(245,185,66,.12),var(--card) 60%);border-color:rgba(245,185,66,.35)}
.pcard.v-bad{background:linear-gradient(155deg,rgba(255,107,107,.13),var(--card) 60%);border-color:rgba(255,107,107,.38)}
.pcard:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 12px 28px rgba(58,160,255,.15)}
.prow{display:flex;align-items:center;gap:13px;margin-bottom:16px}
.pinfo{flex:1 1 auto;min-width:0}
.av{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0}
.prow .h{font-weight:600;font-size:17px}
.prow .p{font-size:14px;color:var(--muted)}
.badge{font-size:12.5px;font-weight:600;padding:5px 13px;border-radius:999px;margin-left:auto;white-space:nowrap}
.b-ok{background:var(--ok-soft);color:var(--ok)}.b-warn{background:var(--warn-soft);color:var(--warn)}.b-bad{background:var(--bad-soft);color:var(--bad)}.b-acc{background:var(--accent-soft);color:var(--accent)}
.b-none{background:var(--card2);color:var(--muted)}
.pcard.v-none{background:var(--card);border-style:dashed}
.bar.empty{background:repeating-linear-gradient(105deg,#131c2a,#131c2a 6px,#16202f 6px,#16202f 12px)}
.meter .lab b.nov{font-size:13.5px;font-weight:600;color:var(--muted)}
.meter{margin-bottom:16px}
.meter .lab{display:flex;justify-content:space-between;font-size:15px;color:var(--muted);margin-bottom:7px}
.meter .lab b{font-weight:700;font-size:16px}
.bar{height:8px;background:#0b121d;border-radius:4px;overflow:hidden}
.bar i{display:block;height:100%;border-radius:4px;transition:width .5s ease}
.conf{font-size:13.5px;color:var(--muted);margin-top:6px}
.pcard .conf{margin-top:18px;padding-top:15px;border-top:1px solid rgba(255,255,255,.07)}
.sec{padding:48px 0;border-top:1px solid var(--line)}
.sec h2{font-size:30px;font-weight:600;letter-spacing:-.01em;margin-bottom:10px;font-family:'Fraunces',serif}
.sec .sub{color:var(--muted);margin-bottom:30px;max-width:660px;font-size:17px}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
.col{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.col .n{width:36px;height:36px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:16px;font-size:15px}
.col h3{font-size:19px;font-weight:600;margin-bottom:8px}
.col p{font-size:15.5px;color:var(--muted)}
footer{border-top:1px solid var(--line);padding:32px 0 48px;color:var(--muted);font-size:14.5px}
footer .fx{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:16px}
footer p{max-width:780px}
.pill18{border:1.5px solid var(--line);border-radius:8px;padding:1px 8px;font-weight:700;font-size:12.5px}
.detail{max-width:660px;margin:36px auto 72px}
.dhead{display:flex;align-items:center;gap:18px;margin-bottom:8px}
.dhead .av{width:64px;height:64px;font-size:21px}
.dhead h1{font-size:30px;font-weight:600;letter-spacing:-.01em;font-family:'Fraunces',serif}
.dhead .p{color:var(--muted);font-size:15.5px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;margin-top:24px;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.card h3{font-size:18px;font-weight:600;margin-bottom:12px}
.gauges{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gauge{text-align:center;padding:8px 0}
.donut{width:128px;height:128px;border-radius:50%;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;position:relative}
.donut::after{content:"";position:absolute;inset:11px;background:var(--card);border-radius:50%}
.donut b{position:relative;z-index:1;font-size:27px;font-weight:700}
.gauge .gl{font-size:15px;color:var(--muted)}
.gauge .gwhy{font-size:13px;color:var(--muted);opacity:.75;margin-top:3px}
.donut.dnone{background:repeating-conic-gradient(#1e2a3b 0 12deg,#16202f 12deg 24deg)}
.donut.dnone b{color:var(--muted)}
.sig{display:flex;gap:12px;padding:11px 0;font-size:15.5px;color:var(--muted);border-top:1px solid var(--line);align-items:flex-start}
.sig:first-of-type{border-top:none}
.sig .dot{width:9px;height:9px;border-radius:50%;margin-top:8px;flex-shrink:0}

/* ---------- score modal rows ---------- */
.mrow{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--line);align-items:flex-start}
.mrow .mdot{width:10px;height:10px;border-radius:50%;margin-top:8px;flex-shrink:0}
.mrow b{font-size:16px;font-weight:600}
.mrow p{font-size:14.5px;color:var(--muted);margin-top:3px}

/* ---------- review recap ---------- */
.recap{font-size:16px;color:var(--text);line-height:1.6}
.rbar{display:flex;align-items:center;gap:12px;margin-top:12px}
.rbar span{flex:0 0 190px;font-size:14.5px;color:var(--muted)}
.rbar .bar{flex:1;height:7px}
.rbar b{flex:0 0 40px;text-align:right;font-size:14.5px;font-weight:700}
.accts{display:flex;flex-direction:column;gap:10px}
.acct{display:flex;align-items:center;gap:12px;background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:11px 15px}
.acct .pl{font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}
.acct .hn{font-size:15.5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.acct.pend{border-style:dashed;opacity:.75}
.acct.pend .pl{background:var(--card);color:var(--muted)}
.pendtag{font-size:12px;color:var(--muted);white-space:nowrap}
.linkbtn{background:none;border:none;color:var(--accent);font:inherit;font-size:14.5px;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px}

/* ---------- methodology layout ---------- */
.mhero{text-align:center;padding:52px 0 8px}
.mhero h1{font-size:clamp(32px,4.8vw,46px);font-weight:600;font-family:'Fraunces',serif;letter-spacing:-.01em}
.mhero p{color:var(--muted);max-width:620px;margin:16px auto 0;font-size:18px}
.toc{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:26px 0 8px}
.toc a{font-size:14.5px;color:var(--muted);border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 15px;transition:.15s}
.toc a:hover{border-color:var(--accent);color:var(--text)}
.mblock{margin:24px 0}
.mblock h2{font-size:27px;font-weight:600;font-family:'Fraunces',serif;margin-bottom:8px;scroll-margin-top:20px}
.mblock>p{color:var(--muted);font-size:17px;max-width:720px;margin-bottom:18px}
.duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.scard2{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.scard2 .ico{width:40px;height:40px;border-radius:13px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.scard2 h3{font-size:19px;font-weight:600;margin-bottom:6px}
.scard2 p{font-size:15.5px;color:var(--muted)}
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;counter-reset:s}
.step{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;position:relative}
.step .n{width:30px;height:30px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;margin-bottom:12px}
.step h3{font-size:17px;font-weight:600;margin-bottom:6px}
.step p{font-size:14.5px;color:var(--muted)}
.wtable{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.wrow{display:flex;align-items:center;gap:16px;padding:15px 22px;border-top:1px solid var(--line);flex-wrap:wrap}
.wrow:first-child{border-top:none}
.wrow .who{flex:0 0 210px;font-weight:600;font-size:16px}
.wrow .wb{flex:1 1 160px;height:9px;background:#0b121d;border-radius:5px;overflow:hidden;min-width:120px}
.wrow .wb i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.wrow .wv{flex:0 0 74px;text-align:right;font-weight:700;font-size:15px;color:var(--accent)}
.wrow .wd{flex:1 1 100%;font-size:14.5px;color:var(--muted)}
.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.rule{border:1px solid var(--line);border-radius:var(--r);padding:22px;background:linear-gradient(160deg,rgba(61,220,151,.09),var(--card) 60%)}
.rule.no{background:linear-gradient(160deg,rgba(255,107,107,.1),var(--card) 60%)}
.rule .tag{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ok);margin-bottom:8px;display:block}
.rule.no .tag{color:var(--bad)}
.rule p{font-size:15.5px;color:var(--muted)}
.rule b{color:var(--text)}

/* ---------- Known as ---------- */
.kmain{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.kname{font-family:'Fraunces',serif;font-size:24px;font-weight:600}
.kmeta{font-size:14px;color:var(--muted)}
.kalt{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.ktag{background:var(--card2);border:1px solid var(--line);border-radius:999px;padding:5px 13px;font-size:14px;color:var(--muted)}
.ktag b{color:var(--text);font-weight:600}
.kguard{font-size:14px;color:var(--muted);margin-top:14px;border-left:2px solid var(--line);padding-left:14px}
.kempty{color:var(--muted);font-size:15.5px}
.field{width:100%;background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:12px 16px;color:var(--text);font-size:15.5px;font-family:inherit;outline:none;transition:.15s}
.field:focus{border-color:var(--accent)}
label.flab{display:block;font-size:14.5px;color:var(--muted);margin:14px 0 6px}
.checkrow{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:var(--muted);margin-top:14px}
.checkrow input{margin-top:5px;accent-color:var(--accent);width:17px;height:17px;flex-shrink:0}

/* ---------- Most trusted ranking ---------- */
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}
.fchip{border:1.5px solid var(--line);background:var(--card);border-radius:999px;padding:9px 18px;font-size:15px;color:var(--muted);cursor:pointer;transition:.15s;font-family:inherit}
.fchip:hover{border-color:var(--accent);color:var(--text)}
.fchip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.ranklist{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}
.rrow{display:flex;align-items:center;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px 20px;transition:.2s;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.rrow:hover{border-color:var(--accent);transform:translateY(-2px)}
.rrow.top{background:linear-gradient(140deg,rgba(61,220,151,.12),var(--card) 55%);border-color:rgba(61,220,151,.35)}
.rnum{font-family:'Fraunces',serif;font-size:24px;font-weight:600;color:var(--muted);width:34px;flex-shrink:0;text-align:center}
.rrow.top .rnum{color:var(--ok)}
.rinfo{flex:1 1 140px;min-width:0}
.rinfo .h{font-weight:600;font-size:17px}
.rinfo .p{font-size:14px;color:var(--muted)}
.rti{text-align:right;flex-shrink:0}
.rti b{display:block;font-size:26px;font-weight:700;color:var(--ok);line-height:1.1}
.rti span{font-size:12.5px;color:var(--muted)}
.rbars{flex:0 0 150px}
.rbars .meter{margin-bottom:8px}
.rbars .meter .lab{font-size:13px;margin-bottom:4px}
.rbars .meter .lab b{font-size:13.5px}
.rbars .bar{height:6px}

/* ---------- Embeddable badge ---------- */
.embedprev{display:flex;justify-content:center;padding:18px;background:#0b121d;border:1px dashed var(--line);border-radius:14px;margin:14px 0}
.embedprev iframe{border:0;width:264px;height:64px;max-width:100%}
.embedprev img{width:264px;height:60px;max-width:100%}
.ctarow{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.ctarow .btn{flex:1 1 190px;text-align:center}
.legal{max-width:760px;margin:36px auto 72px}
.legal h1{font-size:34px;font-weight:600;font-family:'Fraunces',serif;margin-bottom:6px}
.legal .upd{color:var(--muted);font-size:14.5px;margin-bottom:22px}
.legal h2{font-size:21px;font-weight:600;margin:30px 0 8px}
.legal p,.legal li{color:var(--muted);font-size:16px;margin-bottom:11px}
.legal ul{padding-left:22px}
.legal b,.legal strong{color:var(--text)}
.legal table{width:100%;border-collapse:collapse;font-size:15px;margin:14px 0}
.legal td,.legal th{border-top:1px solid var(--line);padding:9px 0;text-align:left;vertical-align:top;color:var(--muted)}
.legal th{color:var(--text);font-weight:600}
.draftnote{background:var(--warn-soft);border:1px solid rgba(245,185,66,.35);color:#f7d9a0;border-radius:var(--r);padding:16px 20px;font-size:15px;margin-bottom:26px}
footer .flinks{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:14px;font-size:14px}
footer .flinks a:hover{color:var(--text)}
.snippet{width:100%;background:#0b121d;border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.5;resize:vertical;min-height:78px;outline:none}
.snippet:focus{border-color:var(--accent)}
.erow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}

/* ---------- contributor account ---------- */
.tiers{list-style:none;margin:14px 0 0}
.tiers li{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:15px;color:var(--muted);align-items:flex-start}
.tiers li:first-child{border-top:none}
.tiers .tk{width:9px;height:9px;border-radius:50%;margin-top:8px;flex-shrink:0;background:var(--line)}
.tiers li.now .tk{background:var(--warn)}
.tiers li.goal .tk{background:var(--ok)}
.tiers b{color:var(--text);font-weight:600}
.whoami{font-size:13.5px;color:var(--muted);margin-top:8px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.whoami a{color:var(--accent)}

.detail{max-width:660px;margin:36px auto 72px}
.deck{position:relative;height:500px;max-width:420px;margin:0 auto 72px}
.chero{text-align:center;margin:8px 0 20px}
.chero .av{margin:0 auto 14px;box-shadow:0 0 0 4px var(--accent-soft),0 10px 28px rgba(58,160,255,.3)}
.chandle{font-family:'Fraunces',serif;font-size:26px;font-weight:600;letter-spacing:-.01em}
.cplat{color:var(--muted);font-size:15px;margin-top:4px}
.scard .meter .lab{font-size:16.5px}
.scard .meter .lab b{font-size:20px}
.scard .bar{height:10px;border-radius:5px}
.scard .conf{font-size:15px;text-align:center;margin-top:0}
.cues{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding:0 2px 10px}
.cue{font-size:15px;font-weight:600;padding:9px 15px;border-radius:999px;border:1.5px solid;pointer-events:none;background:rgba(14,22,38,.5)}
.cue.l{color:var(--bad);border-color:rgba(255,107,107,.5);animation:cueL 1.7s ease-in-out infinite}
.cue.r{color:var(--ok);border-color:rgba(61,220,151,.5);animation:cueR 1.7s ease-in-out infinite}
@keyframes cueL{0%,100%{transform:translateX(0)}50%{transform:translateX(-9px)}}
@keyframes cueR{0%,100%{transform:translateX(0)}50%{transform:translateX(9px)}}
.peek{animation:peek 2.1s ease .5s 1}
@keyframes peek{0%,100%{transform:translateY(0)}18%{transform:translateX(30px) rotate(2.5deg)}36%{transform:translateY(0)}58%{transform:translateX(-30px) rotate(-2.5deg)}76%{transform:translateY(0)}}
.spark{position:fixed;width:10px;height:10px;border-radius:50%;z-index:120;pointer-events:none;transition:transform .6s ease,opacity .6s ease}
.scard{position:absolute;inset:0;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:28px;cursor:grab;user-select:none;touch-action:pan-y;transition:transform .22s,opacity .22s;display:flex;flex-direction:column;box-shadow:0 14px 40px rgba(0,0,0,.3);overflow:hidden}
.scard.drag{transition:none}
.scard .qs{margin-top:auto}
.stamp{position:absolute;top:26px;padding:6px 18px;border:3.5px solid;border-radius:12px;font-size:32px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:0;pointer-events:none;font-family:'Fraunces',serif;background:rgba(14,22,38,.55);z-index:5}
.stamp.yes{left:20px;transform:rotate(-13deg);color:var(--ok);border-color:var(--ok)}
.stamp.no{right:20px;transform:rotate(13deg);color:var(--bad);border-color:var(--bad)}
.qblock{margin-top:18px}
.qblock.gated{display:none}
.qblock.gated.open{display:block;animation:gateIn .25s ease}
@keyframes gateIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.gatehint{font-size:14px;color:var(--muted);margin-top:16px;border-left:2px solid var(--line);padding-left:14px}
.qblock .q{font-size:16.5px;font-weight:600;margin-bottom:10px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{border:1.5px solid var(--line);background:var(--card2);border-radius:999px;padding:11px 19px;font-size:15.5px;color:var(--muted);cursor:pointer;transition:.15s}
.chip:hover{border-color:var(--accent);color:var(--text)}
.chip.sel{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.trust{max-width:420px;margin:0 auto 24px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px 20px;position:relative;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.trust .trow{display:flex;justify-content:space-between;font-size:15px;margin-bottom:8px}
.trust .trow b{color:var(--accent)}
.trust .bar{height:10px;border-radius:5px}
.trust .bar i{background:linear-gradient(90deg,var(--accent),var(--accent2))}
.tfloat{position:absolute;right:22px;top:8px;font-weight:700;font-size:19px;color:var(--ok);opacity:0;pointer-events:none}
.tfloat.go{animation:floatUp 1.1s ease forwards}
@keyframes floatUp{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-30px)}}
.trust.lvlup{animation:pulse .7s ease}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(58,160,255,.55)}100%{box-shadow:0 0 0 22px rgba(58,160,255,0)}}
.prose{max-width:700px;margin:36px auto 72px}
.prose h1{font-size:36px;font-weight:600;letter-spacing:-.01em;margin-bottom:12px;font-family:'Fraunces',serif}
.prose h2{font-size:24px;font-weight:600;margin:36px 0 12px;font-family:'Fraunces',serif}
.prose p,.prose li{color:var(--muted);font-size:17px;margin-bottom:13px}
.prose ul{padding-left:22px}
.prose .hl{color:var(--text);font-weight:600}
.note{background:var(--accent-soft);border:1px solid #26527d;border-radius:var(--r);padding:18px 22px;color:#d8ecff;font-size:16px;margin:22px 0}
.sheet-overlay{position:fixed;inset:0;background:rgba(6,11,20,.65);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}
.sheet{background:var(--card);border:1px solid var(--line);border-radius:24px;width:100%;max-width:min(540px,calc(100vw - 24px));padding:26px 24px;max-height:82dvh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.5);animation:sheetUp .28s ease}
.sheet h3{font-family:'Fraunces',serif;font-size:23px;font-weight:600;margin-bottom:8px}
@keyframes sheetUp{from{transform:translateY(36px);opacity:0}to{transform:none;opacity:1}}
.bnav{display:none}
.deck.flow{height:auto;position:static}
.deck.flow .scard{position:static;overflow:visible;cursor:default}
@media(max-width:640px){
  body{padding-bottom:92px}
  nav{padding:14px 0;justify-content:center}
  nav .links{display:none}
  .bnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:rgba(14,22,38,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);z-index:50;padding:10px 2px calc(10px + env(safe-area-inset-bottom))}
  .bnav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;color:var(--muted);min-width:0}
  .bnav a svg{width:21px;height:21px}
  .bnav a.on{color:var(--accent)}
  .hero{padding:42px 0 28px}
  .hero p{font-size:16.5px}
  .stats{gap:22px}
  .gauges{grid-template-columns:1fr}
  .deck{height:430px;margin-bottom:48px}
  .scard{padding:22px}
  .stamp{font-size:24px;top:20px}
  .chandle{font-size:22px}
  .chero{margin:2px 0 14px}
  .chero .av{width:72px!important;height:72px!important;margin-bottom:10px}
  .cue{font-size:13px;padding:7px 11px}
  .detail{margin:24px auto 48px}
  .prose{margin:24px auto 48px}
  .trust{margin-bottom:24px}
  .sheet-overlay{align-items:flex-end;padding:0}
  .sheet{border-radius:24px 24px 0 0;max-width:100vw;padding-bottom:calc(26px + env(safe-area-inset-bottom))}
  .rrow{flex-wrap:wrap;gap:12px;padding:16px}
  .rbars{flex:1 1 100%;order:3}
  .rnum{width:26px;font-size:20px}
  .rbar span{flex:0 0 130px;font-size:13.5px}
  .wrow .who{flex:1 1 100%}
  .mhero{padding:34px 0 4px}
}
