/* ProvePnL v3 — calm board. One family (Geist), one mono (Geist Mono), six type sizes, color only for meaning. */

/* Local fonts — the registry never phones a third party for its own face. */
@font-face{font-family:"Geist";src:url("/static/fonts/web/Geist-Regular-latin.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap;unicode-range:U+0020-007E,U+00A0-00AC,U+00AE-0113,U+0116-012B,U+012E-0137,U+0139-013E,U+0141-0148,U+014A-014D,U+0150-017E,U+2013-2014,U+2018-2019,U+201C-201D,U+2022,U+2026,U+2030,U+2032-2033,U+2039-203A,U+20AC,U+2122,U+2190-2193,U+2197-2198,U+2212,U+2248,U+2260,U+2264-2265,U+25B2,U+25BC,U+25CF}@font-face{font-family:"Geist";src:url("/static/fonts/web/Geist-Regular-ext.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap;unicode-range:U+018F,U+0192,U+01A0-01A1,U+01AF-01B0,U+01CD-01CE,U+01E4-01E9,U+0218-021B,U+0237,U+0259,U+02B9,U+02BC,U+02C6-02C8,U+02D8-02DD,U+0300-0304,U+0306-030C,U+0312,U+031B,U+0323,U+0326-0328,U+0335-0338,U+039B,U+03A9,U+03BB-03BC,U+03C0,U+03C9,U+0400-045F,U+0462-0463,U+046A-046B,U+0472-0475,U+0490-0493,U+0496-0497,U+049A-049B,U+04A2-04A3,U+04AE-04B3,U+04B6-04B7,U+04BA-04BB,U+04C0,U+04CF,U+04D8-04D9,U+04E2-04E3,U+04E8-04E9,U+04EE-04EF,U+0E3F,U+1E20-1E21,U+1E80-1E85,U+1E9E,U+1EA0-1EF9,U+201A,U+201E,U+2020-2021,U+2028-2029,U+2044,U+2070,U+2074-2079,U+2080-2089,U+20AA,U+20B1,U+20B4,U+20B9,U+20BD,U+2116-2117,U+2153-2155,U+215B-215E,U+2194-2196,U+2199,U+219D,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21E4-21E5,U+21E7,U+2202,U+2206,U+220F,U+2211,U+221A,U+221E,U+222B,U+2236,U+2460-2468,U+24EA,U+24FF,U+25B3,U+25B6-25B7,U+25BD,U+25C0-25C1,U+25CA-25CC,U+2639-263A,U+2776-277E,U+3003,U+301C,U+A78B-A78C,U+F8FF,U+FB01-FB02}@font-face{font-family:"Geist";src:url("/static/fonts/web/Geist-SemiBold-latin.woff2") format("woff2");font-weight:600 700;font-style:normal;font-display:swap;unicode-range:U+0020-007E,U+00A0-00AC,U+00AE-0113,U+0116-012B,U+012E-0137,U+0139-013E,U+0141-0148,U+014A-014D,U+0150-017E,U+2013-2014,U+2018-2019,U+201C-201D,U+2022,U+2026,U+2030,U+2032-2033,U+2039-203A,U+20AC,U+2122,U+2190-2193,U+2197-2198,U+2212,U+2248,U+2260,U+2264-2265,U+25B2,U+25BC,U+25CF}@font-face{font-family:"Geist";src:url("/static/fonts/web/Geist-SemiBold-ext.woff2") format("woff2");font-weight:600 700;font-style:normal;font-display:swap;unicode-range:U+018F,U+0192,U+01A0-01A1,U+01AF-01B0,U+01CD-01CE,U+01E4-01E9,U+0218-021B,U+0237,U+0259,U+02B9,U+02BC,U+02C6-02C8,U+02D8-02DD,U+0300-0304,U+0306-030C,U+0312,U+031B,U+0323,U+0326-0328,U+0335-0338,U+039B,U+03A9,U+03BB-03BC,U+03C0,U+03C9,U+0400-045F,U+0462-0463,U+046A-046B,U+0472-0475,U+0490-0493,U+0496-0497,U+049A-049B,U+04A2-04A3,U+04AE-04B3,U+04B6-04B7,U+04BA-04BB,U+04C0,U+04CF,U+04D8-04D9,U+04E2-04E3,U+04E8-04E9,U+04EE-04EF,U+0E3F,U+1E20-1E21,U+1E80-1E85,U+1E9E,U+1EA0-1EF9,U+201A,U+201E,U+2020-2021,U+2028-2029,U+2044,U+2070,U+2074-2079,U+2080-2089,U+20AA,U+20B1,U+20B4,U+20B9,U+20BD,U+2116-2117,U+2153-2155,U+215B-215E,U+2194-2196,U+2199,U+219D,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21E4-21E5,U+21E7,U+2202,U+2206,U+220F,U+2211,U+221A,U+221E,U+222B,U+2236,U+2460-2468,U+24EA,U+24FF,U+25B3,U+25B6-25B7,U+25BD,U+25C0-25C1,U+25CA-25CC,U+2639-263A,U+2776-277E,U+3003,U+301C,U+A78B-A78C,U+F8FF,U+FB01-FB02}@font-face{font-family:"Geist Mono";src:url("/static/fonts/web/GeistMono-Regular-latin.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0020-007E,U+00A0-00AC,U+00AE-0113,U+0116-012B,U+012E-0131,U+0134-0137,U+0139-013E,U+0141-0148,U+014A-014D,U+0150-017E,U+2013-2014,U+2018-2019,U+201C-201D,U+2022,U+2026,U+2030,U+2032-2033,U+2039-203A,U+20AC,U+2122,U+2190-2193,U+2197-2198,U+2212,U+2248,U+2260,U+2264-2265,U+25B2,U+25BC,U+25CF}@font-face{font-family:"Geist Mono";src:url("/static/fonts/web/GeistMono-Regular-ext.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+018F,U+0192,U+01A0-01A1,U+01AF-01B0,U+01CD-01CE,U+01E4-01E9,U+0218-021B,U+0237,U+0259,U+02B9,U+02BC,U+02C6-02C8,U+02D8-02DD,U+0300-0304,U+0306-030C,U+0312,U+031B,U+0323,U+0326-0328,U+0335-0338,U+039B,U+03A9,U+03BB-03BC,U+03C0,U+0400-045F,U+0462-0463,U+046A-046B,U+0472-0475,U+0490-0493,U+0496-0497,U+049A-049B,U+04A2-04A3,U+04AE-04B3,U+04B6-04B7,U+04BA-04BB,U+04C0,U+04CF,U+04D8-04D9,U+04E2-04E3,U+04E8-04E9,U+04EE-04EF,U+0E3F,U+1E20-1E21,U+1E80-1E85,U+1E9E,U+1EA0-1EF9,U+201A,U+201E,U+2020-2021,U+2028-2029,U+2044,U+2070,U+2074-2079,U+2080-2089,U+20AA,U+20B1,U+20B4,U+20B9,U+20BD,U+2107,U+2116-2117,U+2153-2155,U+215B-215E,U+2194-2196,U+2199,U+219D,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21E4-21E5,U+21E7,U+2202,U+2206,U+220F,U+2211,U+221A,U+221E,U+222B,U+2236,U+2326-2327,U+232B,U+23CE,U+240B-240C,U+2423,U+2460-2468,U+24EA,U+24FF-259F,U+25B3,U+25B6-25B7,U+25BD,U+25C0-25C1,U+25CA-25CC,U+2776-277E,U+3003,U+301C,U+A78B-A78C,U+F8FF}@font-face{font-family:"Geist Mono";src:url("/static/fonts/web/GeistMono-Medium-latin.woff2") format("woff2");font-weight:500 700;font-style:normal;font-display:swap;unicode-range:U+0020-007E,U+00A0-00AC,U+00AE-0113,U+0116-012B,U+012E-0131,U+0134-0137,U+0139-013E,U+0141-0148,U+014A-014D,U+0150-017E,U+2013-2014,U+2018-2019,U+201C-201D,U+2022,U+2026,U+2030,U+2032-2033,U+2039-203A,U+20AC,U+2122,U+2190-2193,U+2197-2198,U+2212,U+2248,U+2260,U+2264-2265,U+25B2,U+25BC,U+25CF}@font-face{font-family:"Geist Mono";src:url("/static/fonts/web/GeistMono-Medium-ext.woff2") format("woff2");font-weight:500 700;font-style:normal;font-display:swap;unicode-range:U+018F,U+0192,U+01A0-01A1,U+01AF-01B0,U+01CD-01CE,U+01E4-01E9,U+0218-021B,U+0237,U+0259,U+02B9,U+02BC,U+02C6-02C8,U+02D8-02DD,U+0300-0304,U+0306-030C,U+0312,U+031B,U+0323,U+0326-0328,U+0335-0338,U+039B,U+03A9,U+03BB-03BC,U+03C0,U+0400-045F,U+0462-0463,U+046A-046B,U+0472-0475,U+0490-0493,U+0496-0497,U+049A-049B,U+04A2-04A3,U+04AE-04B3,U+04B6-04B7,U+04BA-04BB,U+04C0,U+04CF,U+04D8-04D9,U+04E2-04E3,U+04E8-04E9,U+04EE-04EF,U+0E3F,U+1E20-1E21,U+1E80-1E85,U+1E9E,U+1EA0-1EF9,U+201A,U+201E,U+2020-2021,U+2028-2029,U+2044,U+2070,U+2074-2079,U+2080-2089,U+20AA,U+20B1,U+20B4,U+20B9,U+20BD,U+2107,U+2116-2117,U+2153-2155,U+215B-215E,U+2194-2196,U+2199,U+219D,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21E4-21E5,U+21E7,U+2202,U+2206,U+220F,U+2211,U+221A,U+221E,U+222B,U+2236,U+2326-2327,U+232B,U+23CE,U+240B-240C,U+2423,U+2460-2468,U+24EA,U+24FF-259F,U+25B3,U+25B6-25B7,U+25BD,U+25C0-25C1,U+25CA-25CC,U+2776-277E,U+3003,U+301C,U+A78B-A78C,U+F8FF}




:root{--bg:#0B0E11;--panel:#11151A;--panel-2:#161B21;--rule:rgba(255,255,255,.07);--rule-2:rgba(255,255,255,.12);--ink:#ECEFF3;--ink-2:#B3BAC4;--muted:#7C8590;--gain:#3DDC97;--loss:#FF6B6B;--gold:#E9B949;--silver:#B8C2CC;--bronze:#C98F5A;--gain-soft:rgba(61,220,151,.12);--loss-soft:rgba(255,107,107,.12);--gold-soft:rgba(233,185,73,.12);--up:#3DDC97;--down:#FF6B6B;--accent:#3DDC97;--accent-ink:#0B0E11;--lift-1:rgba(255,255,255,.03);--lift-2:rgba(255,255,255,.05);--lift-3:rgba(255,255,255,.08);--btn-bg:#EDEDED;--btn-ink:#0B0E11;--btn-bg-hover:#FFFFFF;--mono:"Geist Mono",ui-monospace,Menlo,monospace;--nav-bg:rgba(11,14,17,.9);color-scheme:dark;accent-color:var(--gain)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Geist",-apple-system,"Helvetica Neue",Arial,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
.mono,.n,.num{font-family:var(--mono);font-variant-numeric:tabular-nums}a{color:var(--ink);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
/* keyboard focus — one ring, everywhere */
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gain);outline-offset:2px;border-radius:6px}
.btn:focus-visible,.seg a:focus-visible,.wtabs a:focus-visible,.wtabs button:focus-visible,.tbtn:focus-visible{outline-offset:1px}
/* ticker — quiet */
.ticker{height:32px;border-bottom:1px solid var(--rule);background:var(--panel);overflow:hidden;display:flex;align-items:center;font-family:var(--mono);font-size:12px;color:var(--muted)}.ticker .live{display:flex;align-items:center;gap:7px;padding:0 14px;height:100%;border-right:1px solid var(--rule);color:var(--ink-2);letter-spacing:.08em;font-size:10.5px;white-space:nowrap;background:var(--panel);z-index:1}.dot{width:7px;height:7px;border-radius:50%;background:var(--gain);box-shadow:0 0 0 0 rgba(61,220,151,.6);animation:pulse 1.8s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(61,220,151,.5)}70%{box-shadow:0 0 0 8px rgba(61,220,151,0)}100%{box-shadow:0 0 0 0 rgba(61,220,151,0)}}
.ticker .track{flex:1;overflow:hidden}.ticker .run{display:flex;align-items:center;height:32px;gap:36px;padding-left:20px;white-space:nowrap;animation:marquee 100s linear infinite;width:max-content}.ticker:hover .run{animation-play-state:paused}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}.ticker .it{display:inline-flex;gap:7px;white-space:nowrap;align-items:center}.ticker .it b{font-weight:500}.ticker .up{color:var(--gain)}.ticker .dn{color:var(--loss)}.ticker .it .who{color:var(--muted)}.ticker a.live{color:var(--muted)}.ticker a.live:hover{color:var(--ink);text-decoration:none}.ticker .tksp{border-left:1px solid var(--rule);border-right:0;color:var(--muted);gap:5px}
/* nav */
nav.top{border-bottom:1px solid var(--rule);background:var(--nav-bg);backdrop-filter:blur(8px);position:sticky;top:0;z-index:5}nav.top .wrap{display:flex;align-items:center;gap:24px;height:56px}nav.top .brand{font-weight:600;font-size:15px;color:var(--ink);letter-spacing:-.01em}nav.top .brand b{color:var(--gain);font-weight:600}nav.top a.l{font-size:13px;color:var(--ink-2);padding:10px 0}nav.top a.l:hover{color:var(--ink);text-decoration:none}nav.top .sp{flex:1}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:13px;font-weight:600;padding:9px 16px;border-radius:99px;background:var(--btn-bg);color:var(--btn-ink);border:0;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .06s ease}.btn:hover{text-decoration:none;background:var(--btn-bg-hover)}.btn:active{transform:translateY(1px)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--rule-2)}.btn.ghost:hover{background:var(--lift-1);border-color:var(--ink-2)}.btn.gold{background:var(--gold);color:#151006}.btn.gold:hover{background:var(--gold);filter:brightness(1.06)}.btn[disabled]{opacity:.45;cursor:not-allowed}
/* hero */
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:56px 0 16px;align-items:center}@media(max-width:900px){.hero{grid-template-columns:1fr;gap:24px}}.hero h1{font-size:36px;line-height:1.15;font-weight:600;letter-spacing:-.02em;margin:0 0 14px;text-wrap:balance}.hero p{color:var(--ink-2);max-width:520px;margin:0 0 20px;font-size:15px}
.board{border:1px solid var(--rule-2);border-radius:14px;padding:22px 24px;background:var(--panel)}.board .k{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:var(--mono)}.board .big{font-family:var(--mono);font-size:36px;font-weight:500;line-height:1.1;margin:8px 0 4px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.board .big small{font-size:12px;color:var(--gain);font-weight:500;margin-left:8px;letter-spacing:.08em;text-transform:uppercase}.board .sub{font-size:13px;color:var(--ink-2)}
.facts{display:flex;gap:22px;margin-top:18px;padding-top:16px;border-top:1px solid var(--rule)}.fact .k{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:var(--mono)}.fact .v{font-family:var(--mono);font-size:22px;font-weight:500;margin-top:4px;font-variant-numeric:tabular-nums}.fact .v.gain{color:var(--gain)}.fact .d{font-size:12px;color:var(--muted)}
.flash{animation:flash .9s ease-out}@keyframes flash{0%{color:var(--gain)}100%{color:inherit}}
/* season — one line */
.season{margin:24px 0 0;border:1px solid rgba(233,185,73,.35);border-radius:12px;padding:12px 16px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.season .t{font-weight:600;color:var(--gold);font-size:14px}.season .m{font-family:var(--mono);font-size:12px;color:var(--ink-2)}.season .bar{flex:1;min-width:120px;height:4px;background:var(--lift-3);border-radius:999px;overflow:hidden}.season .bar i{display:block;height:100%;background:var(--gold);width:0}.season .pool{font-family:var(--mono);font-size:13px;color:var(--ink)}.season .pool a{color:var(--gold)}
/* sponsor strip + slots — quiet */
.strip{display:flex;gap:10px;align-items:center;padding:10px 14px;border:1px solid var(--rule);border-radius:10px;margin:16px 0;font-size:12.5px;color:var(--ink-2)}.adslot{display:block;padding:12px 14px;line-height:1.5;border:1px solid var(--rule);border-radius:10px;margin:16px 0;font-size:12.5px;color:var(--ink-2);background:transparent}.tag{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--rule-2);border-radius:999px;padding:2px 8px;white-space:nowrap}.adslot b{color:var(--ink);font-weight:500}.adslot.house{color:var(--muted);border-style:dashed}.adslot.house:hover{text-decoration:none;border-color:var(--rule-2);color:var(--ink-2)}.adslot.house b{color:var(--ink-2)}.adslot .mono{color:var(--muted)}
/* controls — segments and selects share one family: 36px tall, 10px radius, same border */
.controls{display:flex;gap:10px;align-items:center;margin:28px 0 12px;flex-wrap:wrap}
.seg{display:inline-flex;border:1px solid var(--rule-2);border-radius:10px;overflow:hidden;background:var(--panel)}
.seg a{display:inline-flex;align-items:center;padding:0 14px;height:34px;font-size:13px;color:var(--ink-2)}
.seg a+a{border-left:1px solid var(--rule)}
.seg a.on{background:var(--lift-3);color:var(--ink)}
.seg a:hover{text-decoration:none;color:var(--ink);background:var(--lift-1)}
.seg a.on:hover{background:var(--lift-3)}
.seg .cnt{font-family:var(--mono);font-size:11px;color:var(--muted);margin-left:6px}
.controls .sp{flex:1}
.controls select{font:inherit;font-size:13px;width:auto;height:36px;padding:0 10px;border-radius:10px;border:1px solid var(--rule-2);background:var(--panel);color:var(--ink);cursor:pointer}
.controls form{display:flex;gap:10px;flex-wrap:wrap}
/* table */
.panel{background:var(--panel);border:1px solid var(--rule-2);border-radius:14px;padding:6px 8px}.scroll{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:0 12px;height:56px;border-top:1px solid var(--rule);text-align:left;vertical-align:middle}th{height:40px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;border-top:0;font-family:var(--mono);white-space:nowrap}td.n,th.n{text-align:right}
.scroll.wide>table{min-width:720px}
.scroll .asklist{min-width:560px}
.scroll .ratecard{min-width:660px}
.scroll .transp{min-width:560px}
.mtop{margin-top:12px}
tr.r[data-href]{cursor:pointer}tr.r:hover td{background:var(--lift-1)}tr.r td:first-child{width:48px}td .rank{font-family:var(--mono);color:var(--ink-2)}tr.top td .rank{color:var(--gold);font-weight:500}td .delta{font-family:var(--mono);font-size:10.5px;margin-left:6px;color:var(--muted)}.delta.up{color:var(--gain)}.delta.dn{color:var(--loss)}
.who .nm{font-weight:500;color:var(--ink);white-space:nowrap}.who .nm a{color:var(--ink)}.who .nm a:hover{text-decoration:underline}.who .ok{color:var(--gain);font-size:12px;margin-left:6px}.who .sm{font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:2px;white-space:nowrap}
td .score{font-family:var(--mono);font-size:16px;font-weight:500}td .tier{display:block;font-size:11px;color:var(--muted);margin-top:1px}
.dd{display:inline-flex;align-items:center;gap:10px;justify-content:flex-end}.dd .bar{width:56px;height:4px;border-radius:999px;background:var(--lift-3);overflow:hidden}.dd .bar i{display:block;height:100%;background:var(--loss);opacity:.8}
.up{color:var(--gain)}.down{color:var(--loss)}.gold{color:var(--gold)}.spark{display:block}
.bandcell{color:var(--ink-2);white-space:nowrap}.emptyrow{height:72px}
.legend{font-size:12px;color:var(--muted);padding:14px 12px 10px;line-height:1.6}.legend a{color:var(--ink-2)}
/* chips — used on detail pages only */
.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:11.5px;border:1px solid var(--rule-2);color:var(--ink-2);white-space:nowrap}.chip.ok{color:var(--gain);border-color:rgba(61,220,151,.4)}.chip.off{color:var(--muted)}.chip.warn{color:var(--gold);border-color:rgba(233,185,73,.4)}.chip.t-Diamond,.chip.t-Gold,.chip.t-Silver,.chip.t-Bronze{color:var(--ink)}
.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:6px;background:var(--lift-2);color:var(--ink-2);margin-right:6px;border:1px solid var(--rule)}
/* generic pages */
h1,h2,h3,h4{text-wrap:balance}
h2{font-size:20px;font-weight:600;letter-spacing:-.01em;margin:40px 0 10px}h3{font-size:14px;font-weight:600;margin:16px 0 8px}p{margin:0 0 12px}.sub{color:var(--muted)}
.hero-page{padding:48px 0 16px}.hero-page h1{font-size:32px;line-height:1.15;font-weight:600;letter-spacing:-.02em;margin:10px 0 12px;max-width:720px}.hero-page p{color:var(--ink-2);max-width:600px;font-size:15px}
.grid2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start}@media(max-width:860px){.grid2{grid-template-columns:minmax(0,1fr)}}
.panel.pad{padding:22px 24px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.tile .k{font-size:11px;color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase}.tile .v{font-family:var(--mono);font-size:26px;font-weight:500;margin-top:6px;font-variant-numeric:tabular-nums}
form .f{margin-bottom:12px}label{display:block;font-size:13px;color:var(--ink-2);margin-bottom:4px}input,select,textarea{font:inherit;font-size:14px;width:100%;padding:9px 12px;border:1px solid var(--rule-2);border-radius:8px;background:var(--bg);color:var(--ink)}input:focus-visible,select:focus-visible{outline:2px solid var(--gain);outline-offset:1px;border-color:transparent}
input::placeholder{color:var(--muted)}
label.chk{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--ink-2);line-height:1.45}label.chk input{width:auto;margin-top:2px;flex-shrink:0}
.note{background:var(--lift-1);border:1px solid var(--rule);border-radius:10px;padding:10px 12px;font-size:13px;color:var(--ink-2)}.err{background:var(--loss-soft);color:var(--loss);border-radius:10px;padding:10px 12px;font-size:13.5px}div.ok,p.ok{background:var(--gain-soft);color:var(--gain);border-radius:10px;padding:10px 12px;font-size:13.5px}span.ok{color:var(--gain)}.vmark{color:var(--gain);font-size:12px;font-weight:500;margin-left:6px;white-space:nowrap}
.note.bad{border-color:rgba(255,107,107,.4)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:800px){.steps{grid-template-columns:minmax(0,1fr)}}.step{border:1px solid var(--rule-2);border-radius:12px;padding:16px;background:var(--panel)}.step .n{font-family:var(--mono);font-size:11px;color:var(--gain);margin-bottom:6px;letter-spacing:.08em;text-transform:uppercase}.step h4{margin:0 0 4px;font-size:14px}.step p{font-size:13px;color:var(--ink-2);margin:0}
.steps.four{grid-template-columns:repeat(4,1fr)}@media(max-width:960px){.steps.four{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.steps.four{grid-template-columns:minmax(0,1fr)}}
.kv{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:13.5px}.kv b{color:var(--muted);font-weight:500}.kv span{font-variant-numeric:tabular-nums}code,pre{font-family:var(--mono);font-size:12.5px}pre{background:var(--bg);border:1px solid var(--rule);padding:10px 12px;border-radius:8px;overflow-x:auto}
.measure{max-width:680px}ul.clean{padding-left:18px}li{margin-bottom:4px}.ratecard td.n{white-space:nowrap}
footer{color:var(--muted);font-size:12.5px;padding:34px 0 48px;border-top:1px solid var(--rule)}
.foot{display:grid;grid-template-columns:repeat(4, 1fr);gap:24px}
.fcol{display:flex;flex-direction:column;gap:4px}
.fcol h5{margin:0 0 7px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}
.fcol a{color:var(--ink-2);font-size:13px;padding:3px 0}.fcol a:hover{color:var(--ink);text-decoration:none}
.fcol a b{font-weight:600;color:var(--ink)}
.fbase{display:flex;gap:14px;align-items:center;margin-top:26px;padding-top:18px;border-top:1px solid var(--rule);font-size:12px;flex-wrap:wrap}
.fbase a{color:var(--muted);padding:3px 0}
@media (max-width:720px){.foot{grid-template-columns:repeat(2, 1fr)}}
#confetti{position:fixed;inset:0;pointer-events:none;z-index:50}
@media (prefers-reduced-motion: reduce){.ticker .run{animation:none}.dot{animation:none}.flash{animation:none}html{scroll-behavior:auto}}

/* review pass: hero check line, pulse, published source */
.checkline{display:flex;gap:8px;margin-top:16px;max-width:560px}
.checkline input{flex:1;min-width:0}
.statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.statgrid .fact{background:var(--panel);border:1px solid var(--rule);border-radius:10px;padding:14px 16px}
.statgrid .fact .v{font-size:26px}
pre.src{font-family:var(--mono);font-size:11.5px;line-height:1.55;color:var(--ink-2);background:var(--bg);border:1px solid var(--rule);border-radius:8px;padding:14px;overflow-x:auto;max-height:480px;overflow-y:auto}

.neutral .dd .bar i{background:var(--ink-2)}
.trustline{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center;margin:2px 0 14px;font-size:12.5px;color:var(--muted);font-family:var(--mono)}
.trustline span{color:var(--ink-2)}
.trustline span::before{content:"◆ ";color:var(--gain);font-size:9px;vertical-align:1px}
.trustline a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--rule-2)}
.trustline a:hover{color:var(--ink)}
.top .wrap{overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}
.top .wrap::-webkit-scrollbar{display:none}
.top .l,.top .brand{white-space:nowrap}
.top .btn{white-space:nowrap;flex-shrink:0}

/* v5: research-driven landing (Linear craft values + TrustMRR/Kolscan structure) */
.hero5{padding:88px 0 34px;max-width:820px}
.hero5 .kick{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero5 h1{font-size:clamp(34px,5.4vw,58px);line-height:1.02;letter-spacing:-.022em;font-weight:600;margin:14px 0 16px;text-wrap:balance}
.hero5 h1 em{font-style:normal;color:var(--gain)}
.sub5{color:var(--ink-2);font-size:16px;max-width:600px;margin:0 0 22px}
/* two paths, one wedge: Check leads, Get-verified follows */
.paths{display:flex;align-items:stretch;gap:14px;margin-top:4px;max-width:940px}
.path{flex:1;min-width:0;border:1px solid var(--rule);background:var(--panel);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.path.lead{flex:1.35;border-color:var(--rule-2);background:var(--panel)}
.plabel{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.path.lead .plabel{color:var(--ink-2)}
.phint{font-size:12.5px;color:var(--muted);margin:0;line-height:1.5}
.orsep{align-self:center;color:var(--muted);font-size:11px;letter-spacing:.08em;display:flex;flex-direction:column;align-items:center;gap:8px}
.orsep::before,.orsep::after{content:"";width:1px;height:22px;background:var(--rule-2)}
.btn.big{padding:12px 22px;font-size:15px;align-self:flex-start}
@media (max-width:760px){.paths{flex-direction:column}.orsep{flex-direction:row;gap:10px;align-self:stretch}.orsep::before,.orsep::after{width:auto;height:1px;flex:1}}
.checkwrap{position:relative}
.checkline5{display:flex;gap:8px}
.checkline5 input{flex:1;min-width:0;padding:12px 16px;font-size:16px;border-radius:10px}
.checkline5 .btn{font-size:14px;padding:10px 20px}
#suggestBox{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--panel);border:1px solid var(--rule-2);border-radius:10px;z-index:40;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.35)}
#suggestBox a{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;font-size:14px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule)}
#suggestBox a:last-child{border-bottom:0}
#suggestBox a:hover{background:var(--panel-2)}
#suggestBox .s{color:var(--muted);font-size:12px;font-family:var(--mono);white-space:nowrap}
.claimline{color:var(--muted);font-size:13.5px;margin:12px 0 0}
/* stat band: four facts, one line each */
.statband{display:flex;flex-wrap:wrap;gap:10px 32px;margin-top:28px;padding-top:18px;border-top:1px solid var(--rule);font-size:13px;color:var(--muted)}
.statband b{color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums}
.statband b.up{color:var(--gain)}.statband b.down{color:var(--loss)}
.statband a{color:var(--muted)}
.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0 10px}
@media(max-width:760px){.podium{grid-template-columns:minmax(0,1fr)}}
.pod{display:flex;flex-direction:column;gap:4px;background:var(--panel);border:1px solid var(--rule-2);border-radius:12px;padding:16px 18px;text-decoration:none;color:var(--ink)}
.pod:hover{border-color:var(--ink-2);text-decoration:none}
.pod .medal{font-size:12px;letter-spacing:.08em;color:var(--muted);font-family:var(--mono)}
.pod.gold .medal{color:var(--gold)}.pod.silver .medal{color:var(--silver)}.pod.bronze .medal{color:var(--bronze)}
.pod .nm{font-weight:600;font-size:15.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pod .nm .ok{color:var(--gain);font-size:13px}
.pod .sm{font-size:12px;color:var(--muted)}
.pod .row2{display:flex;align-items:baseline;gap:14px;margin:6px 0 4px}
.pod .ret{font-family:var(--mono);font-size:22px;font-weight:500;font-variant-numeric:tabular-nums}
.pod .sc{font-size:13px;color:var(--ink-2);font-family:var(--mono)}.pod .sc i{font-style:normal;color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.updated{font-size:12px;color:var(--muted);align-self:center}
.morebar{padding:14px;text-align:center;border-top:1px solid var(--rule)}
.morebar.pager{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}
.morebar.pager .pinfo{font-size:.82rem;opacity:.65}
.integ{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:96px 0 0}
@media(max-width:760px){.integ{grid-template-columns:minmax(0,1fr)}}
.ic{display:block;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:20px 22px;color:var(--ink);text-decoration:none}
.ic:hover{border-color:var(--rule-2);text-decoration:none}
.ic h4{margin:0 0 8px;font-size:15.5px}
.ic p{color:var(--ink-2);font-size:13.5px;margin:0 0 12px;line-height:1.55}
.ic .mono{font-size:12px;color:var(--muted)}
.creatorband{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;margin:96px 0 40px;padding:36px 40px;background:var(--panel);border:1px solid var(--rule);border-radius:14px}
.creatorband>div:first-child{flex:1 1 440px;min-width:0}
.creatorband .badgeframe{flex:0 0 auto}
.creatorband h2{font-size:26px;letter-spacing:-.015em;margin:0 0 10px;text-wrap:balance}
.creatorband p{color:var(--ink-2);font-size:14.5px;max-width:560px;margin:0 0 18px}
/* the badge is real — frame it like the artifact it is */
.badgeframe{display:inline-flex;flex-direction:column;gap:8px;align-items:flex-start;padding:18px;border:1px solid var(--rule-2);border-radius:12px;background:var(--bg);max-width:100%;min-width:0}
.badgeframe img{display:block;max-width:100%;height:auto}
.badgeframe .cap{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.06em}

/* record windows: 7D/30D/1Y/MAX switcher — first-class control */
.wtabs{display:inline-flex;gap:2px;background:var(--bg);border:1px solid var(--rule-2);border-radius:10px;padding:3px;margin-bottom:10px}
.wtabs a,.wtabs button{background:none;border:0;cursor:pointer;font:inherit;display:inline-flex;align-items:center;padding:6px 14px;border-radius:7px;font-family:var(--mono);font-size:12px;color:var(--muted);text-decoration:none}
.wtabs a.on,.wtabs button.on{background:var(--panel-2);color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule)}
.wtabs a:hover,.wtabs button:hover{color:var(--ink);text-decoration:none}
.wstats{font-size:12px;color:var(--muted);margin-top:8px;font-variant-numeric:tabular-nums}

/* social loop: share rows, momentum, feed */
.sharerow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}
.sharerow .sub{flex-basis:100%;margin:0}
.momentum{display:flex;gap:8px 18px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:6px 0 18px;font-family:var(--mono)}
.momentum .bar{width:140px;height:5px;background:var(--lift-3);border-radius:99px;overflow:hidden;display:inline-block}
.momentum .bar i{display:block;height:100%;background:var(--gold);border-radius:99px}

.wseg{margin-left:8px}
.wintable{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 4px}
.wt{border:1px solid var(--rule-2);background:var(--panel);border-radius:10px;padding:8px 14px 9px;display:flex;flex-direction:column;gap:2px;min-width:104px}
.wt .k{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.wt .v{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:16px;font-weight:500}
.wt .v.up{color:var(--gain)}.wt .v.down{color:var(--loss)}
.wt .d{font-size:11px;color:var(--muted)}

.sparkwrap{position:relative}
.stip{position:absolute;pointer-events:none;z-index:6;transform:translate(-50%,-140%);background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;padding:4px 9px;font-family:var(--mono);font-size:11.5px;white-space:nowrap;box-shadow:0 4px 14px rgba(0,0,0,.35)}
.stip .d{color:var(--muted);margin-right:7px}

/* light theme: system preference (unless explicitly dark) and the explicit toggle */
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]){--bg:#F5F6F7;--panel:#FFFFFF;--panel-2:#EFF1F3;--rule:rgba(16,22,29,.08);--rule-2:rgba(16,22,29,.15);--ink:#14181D;--ink-2:#4C545D;--muted:#5F6873;--gain:#087A52;--loss:#C03A3A;--gold:#7F6210;--silver:#6E7C8A;--bronze:#A16B3F;--gain-soft:rgba(12,157,104,.10);--loss-soft:rgba(217,74,74,.10);--gold-soft:rgba(158,122,20,.12);--up:#087A52;--down:#C03A3A;--accent:#087A52;--accent-ink:#FFFFFF;--lift-1:rgba(16,22,29,.03);--lift-2:rgba(16,22,29,.05);--lift-3:rgba(16,22,29,.09);--btn-bg:#14181D;--btn-ink:#FFFFFF;--btn-bg-hover:#2A3038;--nav-bg:rgba(245,246,247,.92);color-scheme:light}}
:root[data-theme="light"]{--bg:#F5F6F7;--panel:#FFFFFF;--panel-2:#EFF1F3;--rule:rgba(16,22,29,.08);--rule-2:rgba(16,22,29,.15);--ink:#14181D;--ink-2:#4C545D;--muted:#5F6873;--gain:#087A52;--loss:#C03A3A;--gold:#7F6210;--silver:#6E7C8A;--bronze:#A16B3F;--gain-soft:rgba(12,157,104,.10);--loss-soft:rgba(217,74,74,.10);--gold-soft:rgba(158,122,20,.12);--up:#087A52;--down:#C03A3A;--accent:#087A52;--accent-ink:#FFFFFF;--lift-1:rgba(16,22,29,.03);--lift-2:rgba(16,22,29,.05);--lift-3:rgba(16,22,29,.09);--btn-bg:#14181D;--btn-ink:#FFFFFF;--btn-bg-hover:#2A3038;--nav-bg:rgba(245,246,247,.92);color-scheme:light}
.tbtn{font:inherit;background:none;border:1px solid var(--rule-2);color:var(--ink-2);border-radius:99px;width:34px;height:34px;line-height:1;cursor:pointer;margin-right:10px;flex-shrink:0}
.tbtn:hover{color:var(--ink);background:var(--lift-2)}

.askband{border-top:1px solid var(--rule);background:var(--panel);margin-top:48px}
.askband .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:26px;padding-bottom:26px;flex-wrap:wrap}
.askband h3{margin:0 0 4px;font-size:16px}
.askband p{margin:0;color:var(--muted);font-size:13px;max-width:520px}
.askacts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.offerline,.creatorband p.offerline{margin:18px 0 0;font-size:12px;color:var(--muted);max-width:none}.offerline a{color:var(--ink-2);padding:3px 0;white-space:nowrap}.offerline a:hover{color:var(--ink)}

.featrow{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}@media (max-width:720px){.featrow{grid-template-columns:minmax(0,1fr)}}

.spothl{outline:2px solid var(--gold);outline-offset:3px;border-radius:10px;animation:spot 1.2s ease-in-out 4;box-shadow:0 0 0 6px var(--gold-soft)}
.spottag{display:inline-block;margin:0 0 6px;padding:3px 10px;background:var(--gold);color:#14181D;border-radius:999px;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.adslot .adimglink{display:inline-block;vertical-align:middle;margin:0 4px}.adslot .adimg{display:block;height:26px;width:auto;max-width:120px;border-radius:5px}
.fundchip{vertical-align:6px;margin-left:6px;border:1px solid var(--gold);color:var(--gold);background:var(--gold-soft);font-size:10.5px;letter-spacing:.1em;padding:2px 8px;border-radius:999px}
.spotbar{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;z-index:60;display:flex;gap:16px;align-items:center;max-width:calc(100vw - 32px);padding:10px 18px;background:var(--panel);border:1px solid var(--gold);border-radius:999px;font-size:12px;color:var(--ink-2);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.spotbar b{color:var(--gold);font-weight:600}.spotbar a{color:var(--ink);white-space:nowrap;padding:4px 0}
@keyframes spot{50%{outline-color:transparent}}
.saleshero .statband{margin-top:14px}
.ratecard td .prev{font-size:12px;color:var(--muted);display:inline-block;padding:3px 0}
.ratecard td .prev:hover{color:var(--ink)}
.soldout{color:var(--muted);font-size:12px}
.kpis{display:flex;gap:26px;flex-wrap:wrap;margin:14px 0 2px}
.kpi b{font-size:22px;font-weight:600;display:block;font-variant-numeric:tabular-nums}
.kpi span{font-size:11.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.ratecard td .prev{white-space:nowrap}
.ratecard .btn{white-space:nowrap}
.clickcount{color:var(--muted);font-size:11.5px}
.sect{margin-top:16px}
.ctarow{margin-top:10px}
.bignum{font-size:28px;font-family:var(--mono);font-variant-numeric:tabular-nums}
.bandcol{width:110px}
.fullbar{max-width:100%}
.hashcell{font-size:11.5px;word-break:break-all}
.nowrap{white-space:nowrap}
@media (max-width:620px){.wex th,.wex td{padding:0 6px;font-size:12.5px;height:auto;padding-top:10px;padding-bottom:10px}.wex th{font-size:10px;letter-spacing:.04em}.wex td:first-child{white-space:normal}}
.ink2{color:var(--ink-2)}
.strip .stripsp{flex:1}
.strip .striplink{font-size:12px;padding:3px 0}

/* check page: the verdict is the moment */
.verdict{border:1px solid var(--rule-2);border-radius:14px;background:var(--panel);padding:20px 22px;margin:18px 0;max-width:720px}
.verdict .vk{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;display:block}
.verdict.good{border-color:rgba(61,220,151,.45)}.verdict.good .vk{color:var(--gain)}
.verdict.bad{border-color:rgba(255,107,107,.4)}.verdict.bad .vk{color:var(--loss)}
.verdict.mid{border-color:rgba(233,185,73,.4)}.verdict.mid .vk{color:var(--gold)}
.verdict h3{margin:0 0 6px;font-size:17px}
.verdict p{color:var(--ink-2);font-size:13.5px;margin:0 0 12px}
.verdict p:last-child,.verdict form:last-child{margin-bottom:0}
.verdict .formrow{margin-top:12px}
.formrow{display:flex;gap:8px;flex-wrap:wrap}
.formrow input{flex:1;min-width:180px}
.checkform{max-width:640px}
.finehint{font-size:12px;color:var(--muted);margin:8px 0 0}
/* deeper-in: what a verified page holds */
.nextcard{display:flex;align-items:center;gap:18px;justify-content:space-between;flex-wrap:wrap;border:1px solid var(--rule);border-radius:14px;padding:18px 22px;margin:26px 0 0;background:transparent}
.nextcard p{margin:0;color:var(--ink-2);font-size:13.5px;max-width:520px}
.nextcard h3{margin:0 0 4px}

/* request pages: the count is the hero */
.counthero{font-family:var(--mono);font-size:clamp(44px,7vw,72px);font-weight:500;line-height:1;color:var(--gold);letter-spacing:-.02em;font-variant-numeric:tabular-nums;display:block;margin:6px 0 10px}
.kickline{font-size:13px;margin:0}
.askform{max-width:520px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.askform input{max-width:440px}
.askform .finehint{margin:0}
.watchrow{max-width:460px;margin-top:14px}
.namefield{flex:0 1 150px;min-width:120px}
.btn.small{padding:6px 12px;font-size:12px}
.feedpanel{margin-bottom:14px}
.listsub{margin-top:-2px}
.chcell a{color:var(--ink-2);padding:3px 0}.chcell a:hover{color:var(--ink)}
.persona{margin-top:26px;padding-top:16px;border-top:1px dashed var(--rule-2);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.persona .pk{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* pricing */
.plans{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch;margin-top:8px}
@media(max-width:800px){.plans{grid-template-columns:minmax(0,1fr)}}
.plan{border:1px solid var(--rule-2);border-radius:14px;background:var(--panel);padding:24px 26px;display:flex;flex-direction:column}
.plan.pro{border-color:rgba(61,220,151,.35)}
.plan .phead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:2px}
.plan h3{margin:0;font-size:16px}
.plan .price{font-family:var(--mono);font-size:26px;font-weight:500;margin:6px 0 2px;font-variant-numeric:tabular-nums}
.plan .price small{font-size:13px;color:var(--muted);font-weight:400}
.plan .pfor{color:var(--muted);font-size:12.5px;margin:0 0 14px}
.plan ul{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:9px}
.plan li{margin:0;font-size:13.5px;color:var(--ink-2);padding-left:22px;position:relative}
.plan li::before{content:"✓";position:absolute;left:0;color:var(--gain);font-size:12px}
.plan li .chip{margin-left:6px;font-size:10px;padding:1px 7px;vertical-align:1px}
.plan .pfoot{margin-top:auto}
.assure{font-size:12px;color:var(--muted);margin:10px 0 0;font-family:var(--mono)}
.faq{max-width:720px;margin-top:10px}
.faq details{border-bottom:1px solid var(--rule);padding:2px 0}
.faq summary{cursor:pointer;font-size:14px;font-weight:500;padding:12px 4px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--muted);font-family:var(--mono);font-size:15px}
.faq details[open] summary::after{content:"−"}
.faq details p{color:var(--ink-2);font-size:13.5px;padding:0 4px 14px;margin:0;max-width:640px}

/* claim */
.claimchips{margin-bottom:12px}
.claimgrid{align-items:start}
.routesub{font-size:13px}
.sidenote{font-size:13.5px}
.sidelist{font-size:13.5px;margin-top:12px}
.afterlist{padding-left:20px;color:var(--ink-2);font-size:13.5px;margin:8px 0}
.stackfield{margin-top:6px}
.detailsgap{margin-top:10px}
.bandchk{margin:12px 0 0}
.submitbtn{margin-top:14px}
details summary{cursor:pointer;font-size:13px;color:var(--ink-2)}
.routetabs{margin-bottom:14px;flex-wrap:wrap}
.routetabs a{flex-wrap:nowrap;white-space:nowrap}
@media(max-width:700px){.routetabs{display:flex;flex-direction:column;align-items:stretch;border-radius:10px}.routetabs a{height:40px;border-left:0!important}.routetabs a+a{border-top:1px solid var(--rule)}}
.signrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 8px}
.signrow .sub{font-size:12.5px}
.stepline{display:flex;gap:8px 22px;flex-wrap:wrap;margin:4px 0 22px;font-family:var(--mono);font-size:12px;color:var(--muted)}
.stepline b{color:var(--ink-2);font-weight:500}
.stepline .sn{color:var(--gain);margin-right:6px}

/* wallet/creator layout helpers (inline-style cleanup) */
.chartblock{margin:14px 0 6px}
.badgerow{margin:8px 0}
.scoredetail{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}
.stack>*+*{margin-top:14px}
.cardimg{max-width:100%;border:1px solid var(--rule);border-radius:8px;display:block}

@media (max-width:560px){
  .hero5{padding:56px 0 26px}
  .panel.pad{padding:18px 16px}
  .creatorband{padding:26px 22px}
  .tiles{gap:14px}
  .controls{gap:8px}
  .seg a{padding:0 12px;height:40px}
  .wtabs a,.wtabs button{padding:9px 13px}
  .btn{padding:10px 16px}
}

/* opt-in shared trades — identical treatment for every venue */
.fillspanel{margin-top:14px;padding:16px 18px}.fillshead{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:6px}.fillshead h3{margin:0;font-size:15px}.fillshead .fsub{font-size:11px;color:var(--muted)}
table.fills{width:100%;border-collapse:collapse;font-size:12.5px}table.fills th{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:left;padding:6px 12px 6px 0;border-bottom:1px solid var(--rule);white-space:nowrap}table.fills th.n{text-align:right}table.fills td{padding:7px 12px 7px 0;border-bottom:1px solid var(--rule);white-space:nowrap}table.fills td.n{text-align:right}table.fills tr:last-child td{border-bottom:0}

/* multi-account aggregation + alerts + owner tools */
.aggpanel{margin-top:16px;padding-top:14px;border-top:1px solid var(--rule)}.aggpanel h3{margin:0 0 6px;font-size:14px}.aggline{font-size:12.5px;color:var(--ink-2);margin:0 0 4px}
.subform{display:flex;gap:8px;flex-wrap:wrap}.subform input{flex:1;min-width:180px}
.addacct{margin-top:14px}.addacct summary{cursor:pointer;font-size:11.5px;color:var(--muted);padding:6px 0}.addacct summary:hover{color:var(--ink-2)}.addform{display:flex;flex-direction:column;gap:6px;margin:8px 0}

/* honest empties: absent windows say so; integrity flags ride with the window table */
.wintable .wt.off .v{color:var(--muted);font-weight:400}.wintable .wt.off .d{color:var(--muted)}
.wtabs .off{display:inline-flex;align-items:center;padding:0 12px;height:30px;font-size:12px;color:var(--muted);opacity:.55;cursor:not-allowed}
.flagrow{margin-top:8px}

/* score explainer — the formula as a visual, with a live worked example */
.scorebox{margin:18px 0}.sbhead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.sbhead h3{margin:0;font-size:15px}.sbhead .sbmore{font-size:11.5px;color:var(--muted)}.sbhead .sbmore:hover{color:var(--ink)}
.sbrow{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;margin:14px 0 10px}
.sbw{flex:1;min-width:120px;border:1px solid var(--rule-2);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.sbw .k{font-size:10px;letter-spacing:.1em;color:var(--muted)}.sbw .w{font-size:16px;font-weight:600}.sbw .d{font-size:11.5px;color:var(--muted)}
.sbtotal{border-color:var(--gain);background:var(--gain-soft)}.sbtotal .k,.sbtotal .d{color:var(--ink-2)}
.sbplus{align-self:center;color:var(--muted)}
.sbex{font-size:12px;color:var(--ink-2);margin:0 0 10px}
.sbnotes{font-size:12.5px;color:var(--ink-2);margin:0}.sbnotes li{margin-bottom:6px}
@media(max-width:700px){.sbplus{display:none}.sbw{min-width:calc(50% - 10px)}}

.sbwhy{font-size:13px;color:var(--ink-2);margin:10px 0 0;max-width:640px}
.sbnotes li b{color:var(--ink);font-weight:600}

/* claim — wallet signing row (sign.js). Appended rules only. */
.signrow [hidden]{display:none!important} /* .btn sets display, so [hidden] needs teeth here */
.signerr{font-family:var(--mono);font-size:11.5px;color:var(--muted)}

/* ── check page v2 (ck- namespace, append-only): the verdict is the moment; the checker is the mechanism ── */
.ck-v{display:flex;gap:16px;align-items:flex-start}
.ck-vb{flex:1;min-width:0}
.ck-stamp{flex:0 0 auto;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:20px;line-height:1;margin-top:1px}
.verdict.good .ck-stamp{background:var(--gain-soft);color:var(--gain);box-shadow:inset 0 0 0 1px rgba(61,220,151,.45)}
.verdict.bad .ck-stamp{background:var(--loss-soft);color:var(--loss);box-shadow:inset 0 0 0 1px rgba(255,107,107,.4)}
.verdict.mid .ck-stamp{background:var(--gold-soft);color:var(--gold);box-shadow:inset 0 0 0 1px rgba(233,185,73,.4)}
.ck-first{font-family:var(--mono);font-size:12px;color:var(--ink-2);margin:0 0 8px}
/* one clean entrance — no fake delays, the lookup is instant; the stamp settles with a slight spring */
@keyframes ck-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes ck-settle{0%{opacity:0;transform:scale(.5)}62%{opacity:1;transform:scale(1.12)}100%{opacity:1;transform:scale(1)}}
.ck-in{animation:ck-rise .28s cubic-bezier(.22,1,.36,1) both}
.ck-in.ck-d1{animation-delay:.08s}.ck-in.ck-d2{animation-delay:.15s}
.ck-in .ck-stamp span{display:block;animation:ck-settle .5s cubic-bezier(.34,1.56,.64,1) .1s both}
@media (prefers-reduced-motion:reduce){.ck-in,.ck-in .ck-stamp span{animation:none}}
/* example chips + recent strip — the whole painted capsule is the button */
.ck-tryrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:14px 0 0}
.ck-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ck-chip{display:inline-flex;align-items:center;gap:7px;font:inherit;font-size:12.5px;color:var(--ink-2);background:var(--panel);border:1px solid var(--rule-2);border-radius:999px;padding:7px 14px;cursor:pointer;text-decoration:none;transition:color .15s ease,border-color .15s ease,background .15s ease,transform .06s ease}
.ck-chip:hover{color:var(--ink);border-color:var(--ink-2);background:var(--lift-1);text-decoration:none}
.ck-chip:active{transform:translateY(1px)}
.ck-g{font-family:var(--mono);font-size:11px}
.ck-g.ok{color:var(--gain)}.ck-g.mid{color:var(--gold)}.ck-g.no{color:var(--muted)}
.ck-stats{margin:12px 0 0;font-size:12px;color:var(--muted)}
.ck-stats b{color:var(--ink-2);font-weight:500;font-variant-numeric:tabular-nums}
/* typeahead — the search never dead-ends */
.ck-suggest{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--panel);border:1px solid var(--rule-2);border-radius:10px;z-index:40;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.ck-suggest a{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;font-size:14px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule)}
.ck-suggest a:last-child{border-bottom:0}
.ck-suggest a:hover,.ck-suggest a.on{background:var(--panel-2)}
.ck-suggest .s{color:var(--muted);font-size:12px;font-family:var(--mono);white-space:nowrap}
/* the with-your-help journey: four steps, step 1 is yours */
.ck-journey{border:1px solid var(--rule);border-radius:14px;background:transparent;padding:20px 22px 6px;margin:14px 0 0;max-width:720px}
.ck-journey>.ck-k{display:block;margin-bottom:4px}
.ck-journey>h3{margin:0 0 18px;font-size:15px}
.ck-jsteps{list-style:none;margin:0;padding:0}
.ck-jstep{display:grid;grid-template-columns:32px minmax(0,1fr);gap:0 14px;position:relative;padding:0 0 18px}
.ck-jstep:not(:last-child)::before{content:"";position:absolute;left:15.5px;top:36px;bottom:4px;width:1px;background:var(--rule)}
.ck-jn{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12.5px;color:var(--muted);background:var(--bg);box-shadow:inset 0 0 0 1px var(--rule-2)}
.ck-jstep.ck-you .ck-jn{background:var(--gain);color:var(--accent-ink);box-shadow:none;font-weight:600}
.ck-jstep h4{margin:7px 0 3px;font-size:14px;line-height:1.25}
.ck-jstep p{font-size:12.5px;color:var(--ink-2);margin:0 0 10px;max-width:540px}
.ck-jstep .btn{margin:2px 0 2px}
.ck-jstep .formrow{margin:4px 0 0;max-width:560px}
.ck-jstep .finehint{margin:8px 0 0;max-width:540px}
/* share the receipt */
.ck-share{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap;margin:14px 0 0;max-width:720px}
.ck-share .finehint{margin:0}
@media (max-width:560px){.ck-v{gap:12px}.ck-stamp{width:38px;height:38px;font-size:16px}.ck-jstep{grid-template-columns:28px minmax(0,1fr);gap:0 12px}.ck-jn{width:28px;height:28px;font-size:11.5px}.ck-jstep:not(:last-child)::before{left:13.5px;top:32px}}
/* ab2 — the askband promoted to a real growth surface: bigger claim, bigger primary CTA, live count. */
.askband.ab2 h3{font-size:22px;letter-spacing:-.01em;margin-bottom:6px}
.askband.ab2 p{font-size:14px;max-width:520px}
.askband.ab2 .askacts{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.btn.abbig{padding:13px 26px;font-size:15px;font-weight:600}
.abmeta{font-size:11.5px;color:var(--muted)}
@media(max-width:700px){.askband.ab2 .askacts{align-items:flex-start}}

/* ── pulse v2 (pk- namespace, append-only): cross-venue breadth, where-would-you-rank, league, cohorts ── */
.pk-hero{margin:6px 0 0}
.pk-kick{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pk-headline{font-size:clamp(24px,4.2vw,38px);font-weight:600;letter-spacing:-.02em;line-height:1.15;margin:10px 0 18px;max-width:840px}
.pk-headline b{font-family:var(--mono);font-weight:500;color:var(--gain);font-variant-numeric:tabular-nums}
.pk-split{display:flex;gap:2px;height:36px;border-radius:10px;overflow:hidden}
.pk-seg{display:flex;align-items:center;min-width:0;overflow:hidden;white-space:nowrap;font-family:var(--mono);font-size:12px;font-variant-numeric:tabular-nums}
.pk-seg span{padding:0 12px}
.pk-g{flex:0 0 auto;background:var(--gain-soft);color:var(--gain);animation:pk-grow .9s cubic-bezier(.22,1,.36,1) both}
.pk-r{flex:1;background:var(--loss-soft);color:var(--loss);justify-content:flex-end}
@keyframes pk-grow{from{width:0}}
.pk-under{display:flex;gap:8px 28px;flex-wrap:wrap;margin:12px 0 0;font-size:13px;color:var(--muted)}
.pk-under b{font-family:var(--mono);font-weight:500;color:var(--ink-2);font-variant-numeric:tabular-nums}
/* rank widget — the board answers as you type; the histogram is the board */
.pk-rank{margin-top:30px;padding:22px 24px}
.pk-rank h2{font-size:22px;letter-spacing:-.01em;margin:6px 0 14px}
.pk-rankrow{display:flex;gap:12px 18px;align-items:center;flex-wrap:wrap;margin:2px 0 0}
.pk-inwrap{position:relative;flex:0 0 170px;margin:0}
.pk-inwrap input{font-family:var(--mono);font-size:17px;font-variant-numeric:tabular-nums;padding:10px 34px 10px 14px;border-radius:10px}
.pk-sfx{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:13px;color:var(--muted);pointer-events:none}
.pk-verdict{flex:1;min-width:240px;font-size:15px;font-weight:500;color:var(--ink);margin:0}
.pk-verdict.pk-hint{color:var(--muted);font-weight:400}
.pk-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pk-hist{display:flex;gap:3px;align-items:flex-end;height:150px;padding-top:24px;margin:20px 0 0}
.pk-hb{flex:1;min-width:0;position:relative;border-radius:3px 3px 0 0;background:var(--gain);opacity:.72;transition:opacity .15s ease}
.pk-hb.pk-neg{background:var(--loss);opacity:.38}
.pk-hb:hover{opacity:.95}
.pk-hb.pk-neg:hover{opacity:.6}
.pk-hb.pk-on{opacity:1;box-shadow:0 0 0 1.5px var(--ink)}
.pk-hb.pk-on::after{content:"you";position:absolute;top:-20px;left:50%;transform:translateX(-50%);font:600 9.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);white-space:nowrap}
.pk-hlabels{display:flex;gap:3px;margin-top:7px}
.pk-hl{flex:1;min-width:0;text-align:center;font-family:var(--mono);font-size:10px;color:var(--muted);white-space:nowrap}
.pk-ctarow{display:flex;gap:10px 14px;align-items:center;flex-wrap:wrap;margin:20px 0 2px;padding-top:16px;border-top:1px solid var(--rule)}
.pk-ask{font-size:14px;font-weight:600}
.pk-ctarow .finehint{margin:0}
/* league + cohort tables — green mini bars, honest sampling column */
.pk-league{min-width:640px}
.pk-cohorts{min-width:460px}
.pk-samp{font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap}
.pk-gg .bar i{background:var(--gain);opacity:.85}
.pk-vsub{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-left:6px}
.pk-of{font-size:14px;color:var(--muted);font-weight:400}
@media (max-width:640px){
  .pk-seg{font-size:11px}.pk-seg span{padding:0 8px}
  .pk-hl{visibility:hidden;font-size:9.5px}.pk-hl:first-child,.pk-hl:nth-child(5),.pk-hl:last-child{visibility:visible}
  .pk-hist{height:120px}
}
@media (prefers-reduced-motion:reduce){.pk-g{animation:none}}
/* dirbtn — the sort-direction arrow, same control family as the selects: 34px, whole square clickable */
.dirbtn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--rule-2);border-radius:10px;background:var(--panel);color:var(--ink-2);font-size:15px;text-decoration:none;flex:none}
.dirbtn:hover{border-color:var(--ink-2);color:var(--ink);text-decoration:none}

/* ── admin ops panel (adm- namespace, append-only): Traffic → Health → Claims → Money ── */
.adm-hero{padding:30px 0 8px}
.adm-hero h1{margin:6px 0 8px}
.adm-nav{position:sticky;top:64px;z-index:4;display:flex;gap:2px;width:max-content;max-width:100%;overflow-x:auto;scrollbar-width:none;margin:6px 0 16px;padding:4px;background:var(--nav-bg);backdrop-filter:blur(8px);border:1px solid var(--rule-2);border-radius:999px;font-size:11px}
.adm-nav::-webkit-scrollbar{display:none}
.adm-nav a{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:999px;color:var(--ink-2);text-decoration:none;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.adm-nav a:hover{color:var(--ink);background:var(--lift-2);text-decoration:none}
.adm-nav a b{font-family:var(--mono);font-weight:600;font-size:10px;line-height:1;padding:3px 7px;border-radius:999px;background:var(--gold);color:#151006}
.adm-sect{scroll-margin-top:118px;margin-top:14px}
.adm-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;margin-bottom:14px}
.adm-head h3{margin:0;font-size:16px;letter-spacing:-.01em}
.adm-note{font-size:11px;color:var(--muted)}
.adm-sub{margin:22px 0 8px;font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.adm-quiet{margin:4px 0 0;font-size:12.5px}
.adm-hint{font-size:11.5px;margin:6px 0 0}
.adm-dim{color:var(--muted)}
.adm-when{color:var(--muted);font-size:11px;white-space:nowrap}
/* traffic: tiles, 14-day bars with visitor overlay, tables, devices, funnel */
.adm-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 20px}
.adm-tile{border:1px solid var(--rule);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:5px}
.adm-tile .k{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.adm-tile .v{font-family:var(--mono);font-size:24px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1}
.adm-chart{display:flex;gap:4px;align-items:stretch;height:150px}
.adm-col{flex:1;min-width:0;display:flex;flex-direction:column}
.adm-bars{position:relative;flex:1;display:flex;align-items:flex-end}
.adm-bar{width:100%;min-height:2px;background:var(--muted);opacity:.35;border-radius:3px 3px 0 0}
.adm-bar.adm-z{height:2px;background:var(--rule);opacity:1;border-radius:0}
.adm-baru{position:absolute;left:25%;bottom:0;width:50%;min-height:3px;background:var(--gain);border-radius:2px 2px 0 0}
.adm-col:hover .adm-bar{opacity:.55}
.adm-day{height:15px;margin-top:6px;font-family:var(--mono);font-size:10px;color:var(--muted);text-align:center;white-space:nowrap;overflow:visible}
.adm-legend{display:flex;gap:16px;align-items:center;margin-top:4px;font-size:10.5px;color:var(--muted)}
.adm-ki{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.adm-kv{background:var(--muted);opacity:.5}
.adm-ku{background:var(--gain)}
.adm-kd{background:var(--ink-2)}
.adm-km{background:var(--muted);opacity:.6}
.adm-peak{margin-left:auto}
.adm-tgrid{display:grid;grid-template-columns:1.4fr 1fr;gap:0 32px;margin-top:6px}
@media(max-width:860px){.adm-tgrid{grid-template-columns:minmax(0,1fr)}}
.adm-tbl{font-size:12.5px}
.adm-tbl th{height:28px;font-size:10px}
.adm-tbl td{height:36px;padding:6px 10px;font-size:12.5px}
.adm-tbl td:first-child,.adm-tbl th:first-child{padding-left:0}
.adm-tbl td:last-child,.adm-tbl th:last-child{padding-right:0}
.adm-barcell{width:76px}
.adm-barline{height:4px;min-width:56px;border-radius:99px;background:var(--lift-2);overflow:hidden}
.adm-barline i{display:block;height:100%;background:var(--ink-2);opacity:.65;border-radius:99px}
.adm-devbar{display:flex;height:10px;border-radius:99px;overflow:hidden;background:var(--lift-2);margin:10px 0 8px}
.adm-devbar i{display:block;height:100%}
.adm-dd{background:var(--ink-2)}
.adm-dm{background:var(--muted);opacity:.6}
.adm-devkey{display:flex;gap:16px;font-size:11px;color:var(--muted)}
.adm-botnote{margin:10px 0 0;font-size:10.5px;color:var(--muted)}
.adm-funnel{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap;padding-top:2px}
.adm-fcell{display:flex;flex-direction:column;gap:3px;min-width:58px}
.adm-fcell b{font-family:var(--mono);font-size:20px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1}
.adm-fcell i{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.adm-farrow{color:var(--muted);font-size:14px;padding:0 2px;align-self:flex-start;margin-top:3px}
/* health: cycle chips — fresh quiet, >2h amber, >6h (or never) red */
.adm-cycles{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.adm-cyc{display:flex;flex-direction:column;gap:2px;border:1px solid var(--rule);border-radius:10px;padding:9px 13px;min-width:118px}
.adm-cyc b{font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
.adm-cyc .t{font-family:var(--mono);font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.adm-cyc .c{font-family:var(--mono);font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.adm-cyc.adm-warn{border-color:var(--gold);background:var(--gold-soft)}
.adm-cyc.adm-warn .t{color:var(--gold);font-weight:500}
.adm-cyc.adm-late{border-color:var(--loss);background:var(--loss-soft)}
.adm-cyc.adm-late .t{color:var(--loss);font-weight:500}
/* claims: the gate */
.adm-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:999px}
.adm-badge.ok{color:var(--gain);background:var(--gain-soft)}
.adm-badge.warn{color:var(--gold);background:var(--gold-soft);box-shadow:inset 0 0 0 1px var(--gold)}
.adm-gate{border:1px solid var(--gold);background:var(--gold-soft);border-radius:12px;padding:6px 16px 12px;margin-bottom:18px}
.adm-gatehint{font-size:12.5px;color:var(--ink-2);margin:10px 0 4px}
.adm-gatehint b{color:var(--ink)}
.adm-pend{display:flex;gap:10px 18px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--rule)}
.adm-pend:first-of-type{border-top:0}
.adm-pwho{min-width:0;line-height:1.55}
.adm-purl{font-size:10.5px;color:var(--muted);word-break:break-all}
.adm-preason{font-size:11px;color:var(--gold)}
.adm-pact{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.adm-cgrid{margin-top:4px}
/* money: sponsors as cards, labeled forms */
.adm-sp{border:1px solid var(--rule);border-radius:12px;padding:14px 16px;margin-top:10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:start}
@media(max-width:640px){.adm-sp{grid-template-columns:minmax(0,1fr)}}
.adm-spmeta{font-size:11.5px;color:var(--muted);margin-bottom:10px}
.adm-spmeta b{color:var(--ink)}
.adm-spimg{height:26px;width:auto;max-width:120px;border-radius:5px;background:#fff;display:block;margin:0 0 4px}
.adm-spfile{font-size:10px;color:var(--muted);margin-bottom:10px}
.adm-form{display:flex;flex-direction:column;gap:6px;align-items:stretch}
.adm-form .btn{align-self:flex-start}
.adm-frow{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}
.adm-frow input{flex:1;min-width:150px;width:auto}
.adm-lab{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:6px 0 0}
.adm-batch{font-family:var(--mono);font-size:12px}
.adm-runline{font-size:11px;color:var(--muted);margin:10px 0 4px}
.adm-report{font-size:11px;color:var(--ink-2);max-height:120px;overflow-y:auto;border:1px solid var(--rule);border-radius:8px;padding:8px 10px}
@media(max-width:700px){.adm-tiles{grid-template-columns:repeat(2,1fr)}.adm-nav{top:60px}.adm-chart{height:110px}}

/* ── record pages v2 (vp- namespace, append-only): acts and hierarchy for the verified page.
   Act 1 the score (gradient numeral + weighted-blend bar), act 2 poster numbers,
   act 3 the curve as centerpiece, act 4 window ledger, act 5 daily heat strip,
   then trades and a quiet metadata strip. Tokens only — light theme flips itself. ── */
.vp-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
/* act 1 — the score is the hero */
.vp-scoreact{padding:10px 0 0}
.vp-scorerow{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-top:2px}
.vp-scorenum{font-family:var(--mono);font-size:clamp(56px,9vw,88px);font-weight:500;line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums;background:linear-gradient(115deg,var(--gain) 12%,var(--gold) 88%);-webkit-background-clip:text;background-clip:text;color:transparent;animation:vp-rise .55s cubic-bezier(.22,1,.36,1) both}
@keyframes vp-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.vp-scorenum{animation:none}}
.vp-scorenum.vp-null{background:none;color:var(--muted);font-size:clamp(44px,7vw,64px)}
.vp-tier{font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.vp-t-Diamond{color:var(--ink)}.vp-t-Gold{color:var(--gold)}.vp-t-Silver{color:var(--silver)}.vp-t-Bronze{color:var(--bronze)}
/* the history-weighted blend as a visual: three segments, width = weight, fill height = window score */
.vp-blend{display:flex;gap:4px;margin:18px 0 10px;max-width:460px}
.vp-bseg{display:flex;flex-direction:column;gap:6px;min-width:0}
.vp-bfill{height:34px;background:var(--lift-1);border-radius:5px;overflow:hidden;display:flex;align-items:flex-end;box-shadow:inset 0 0 0 1px var(--rule)}
.vp-bfill i{display:block;width:100%;min-height:3px;background:var(--gain);opacity:.8}
.vp-bseg.vp-best .vp-bfill i{background:var(--muted);opacity:.4}
.vp-bk{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vp-bk em{font-style:normal;opacity:.7}
.vp-scorecap{max-width:560px}
/* act 2 — poster numbers: soft cells, color carries the meaning */
.vp-posters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:24px}
.vp-poster{min-width:0;background:var(--lift-1);border-radius:12px;padding:14px 16px 15px}
.vp-pv{font-family:var(--mono);font-size:clamp(26px,4.2vw,34px);font-weight:500;letter-spacing:-.02em;line-height:1.05;font-variant-numeric:tabular-nums;margin-top:7px;white-space:nowrap}
.vp-pv.up{color:var(--gain)}.vp-pv.down{color:var(--loss)}.vp-pv.vp-dd{color:var(--loss)}
.vp-pd{font-size:12px;color:var(--ink-2);margin-top:5px}
.vp-pd .finehint{display:inline;margin:0}
/* act 3 — the curve is the centerpiece: recessed screen, wash, first-class segmented control */
.vp-chart{margin:26px 0 12px;padding:16px 18px 12px;border:1px solid var(--rule);border-radius:12px;background:linear-gradient(180deg,var(--lift-1),transparent 55%),var(--bg)}
.vp-chart .spark{max-width:none!important}
.vp-charthead{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;margin-bottom:14px}
.vp-chart .wtabs{margin-bottom:0}
.vp-chart .wtabs a{padding:7px 16px;font-size:12.5px}
.vp-chart .wtabs .off{height:auto;padding:7px 14px;font-size:12.5px}
.vp-charthead .wstats{margin:0 0 0 auto;font-size:12px}
/* act 4 — the window ledger: one hairline grid, every window answers */
.vp-ledger{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:12px;overflow:hidden;margin:16px 0 6px}
.vp-ledger .wt{border:0;border-radius:0;background:var(--panel);padding:12px 16px 14px;min-width:0;gap:3px}
.vp-ledger .wt .v{font-size:17px}
.vp-ledger .wt .v i{display:block;font-size:12px;margin-top:1px}   /* the dollar figure always on its own line: sibling cells stay level */
.vp-ledger .wt .d{line-height:1.5}
.vp-ledger .wt.off .v{font-size:13px;padding:2px 0}
/* act 5 — daily PnL: a weekday-true calendar of the rolling window (labeled honestly, never a fake month);
   summary band above, streaks below, the exact table folds beneath */
.vp-daily{margin-top:16px}
.vp-dailyhead{display:flex;align-items:baseline;gap:8px;margin-bottom:14px}
.vp-dailyn{font-size:11px;color:var(--muted)}
.vp-calsum{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.vp-cs{border-radius:10px;padding:11px 13px;background:var(--lift-1);display:flex;flex-direction:column;gap:3px;min-width:0}
.vp-cs.vp-cs-g{background:var(--gain-soft)}
.vp-cs.vp-cs-r{background:var(--loss-soft)}
.vp-cs b{font-size:19px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.15}
.vp-cs i{font-style:normal;font-size:10.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vp-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.vp-calw{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;padding:2px 0 3px}
.vp-cd{position:relative;min-width:0;min-height:46px;border-radius:7px;background:var(--lift-1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:5px 2px;overflow:hidden;cursor:default}
.vp-cd.vp-cx{opacity:.35}
.vp-cd::before{content:"";position:absolute;inset:0;opacity:0}
.vp-cd.up{background:var(--gain-soft)}
.vp-cd.down{background:var(--loss-soft)}
.vp-cd.up::before{background:var(--gain);opacity:calc(var(--dm,0)*.3)}
.vp-cd.down::before{background:var(--loss);opacity:calc(var(--dm,0)*.3)}
.vp-cd>*{position:relative;z-index:1}
.vp-cd b{font-size:9.5px;font-weight:500;color:var(--muted);line-height:1}
.vp-cd span{font-size:10px;line-height:1.15;font-variant-numeric:tabular-nums}
.vp-cd.up span{color:var(--gain)}
.vp-cd.down span{color:var(--loss)}
.vp-cd i{font-style:normal;font-size:9px;color:var(--ink-2);line-height:1.15;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.vp-streaks{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;margin-top:12px;font-size:11.5px;color:var(--muted)}
.vp-streaks b{font-weight:500;font-variant-numeric:tabular-nums}
.vp-streaks .vp-swin{opacity:.7}
.vp-streaks .btn{margin-left:auto}
.vp-daily .vp-dailytable{margin-top:14px;border-top:1px solid var(--rule)}
.vp-daily .vp-dailytable summary{font-family:var(--mono);font-size:12px;color:var(--muted);padding:10px 0 6px;cursor:pointer}
.vp-daily .vp-dailytable summary:hover{color:var(--ink)}
.vp-daily .vp-dailytable .finehint{margin-top:10px}
/* trades: quiet zebra, colored PnL, sticky header inside its own scroll */
.vp-main .fillspanel{margin-top:16px}
.vp-main .fillspanel .scroll{max-height:420px;overflow-y:auto}
.vp-main table.fills thead th{position:sticky;top:0;background:var(--panel);z-index:2}
.vp-main table.fills tbody tr:nth-child(odd) td{background:var(--lift-1)}
.vp-main table.fills td:last-child{font-weight:500}
/* the metadata rows become a quieter strip at the bottom */
.kv.vp-meta{margin-top:22px;padding-top:18px;border-top:1px solid var(--rule);font-size:12.5px;gap:9px 20px}
.kv.vp-meta b{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;padding-top:2px}
.kv.vp-meta span{color:var(--ink-2)}
.vp-main .badgerow{margin:16px 0 0}
@media (max-width:560px){
  .vp-scorerow{gap:12px}
  .vp-posters{gap:8px}
  .vp-poster{padding:11px 12px 12px}
  .vp-chart{padding:14px 14px 10px}
  .vp-charthead .wstats{margin-left:0}
  .vp-calsum{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .vp-cs{padding:8px 9px}
  .vp-cs .vp-k{font-size:8.5px;letter-spacing:.1em}
  @media (max-width:350px){.vp-calsum{gap:4px}.vp-cs{padding:8px 6px}.vp-cs .vp-k{letter-spacing:.02em;min-height:2.5em}}   /* two label lines everywhere: the figures stay level */
  .vp-cs b{font-size:14px}
  .vp-cs i{font-size:9px;white-space:normal}
  .vp-cal{gap:2px}
  .vp-cd{min-height:40px;border-radius:6px;padding:4px 1px}
  .vp-cd span{font-size:8.5px}
  .vp-cd b{font-size:8.5px}
  .vp-cd i{font-size:8px}
  .vp-streaks .btn{margin-left:0}
}

/* --- footer newsletter --- */
.fnews{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:26px;padding-top:18px;border-top:1px solid var(--rule)}
.fnl{display:flex;flex-direction:column;gap:2px}
.fnl b{color:var(--ink);font-size:13.5px;font-weight:600}
.fnl span{font-size:12.5px;color:var(--muted)}
.fnform{display:flex;gap:8px;align-items:center}
.fnform input{width:250px;font-size:13.5px;padding:8px 12px}
.fnform .btn{white-space:nowrap}
@media (max-width:720px){.fnews{flex-direction:column;align-items:stretch}.fnform{flex-direction:column;align-items:stretch}.fnform input{width:100%}}
.nlpage{max-width:640px}


/* --- non-production environment marker --- */
.envbar{position:sticky;top:0;z-index:99;background:repeating-linear-gradient(135deg,var(--gold) 0 12px,color-mix(in srgb,var(--gold) 82%,#000) 12px 24px);color:#12100a;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-align:center;padding:5px 12px}

/* --- profile editing --- */
.edrow{display:flex;gap:18px;align-items:flex-start;margin-bottom:18px}
.edav{border-radius:50%;flex-shrink:0;border:1px solid var(--rule-2);object-fit:cover;background:var(--panel-2)}
.edavtext{flex:1;min-width:0}
.note.err{border:1px solid var(--loss);color:var(--loss);padding:10px 14px;border-radius:8px;margin:16px 0;font-size:13.5px}

/* --- leaderboard: identity row (avatar + handle) and top-3 medals --- */
.lbwho{display:flex;gap:11px;align-items:center;min-width:0}
.lbav{border-radius:50%;flex-shrink:0;object-fit:cover;background:var(--panel-2);border:1px solid var(--rule)}
.lbav-none{width:34px;height:34px;display:block;border-radius:50%;background:var(--panel-2);border:1px solid var(--rule);opacity:.5}
.lbtext{min-width:0}
.lbh{font-family:var(--mono);opacity:.85}
.lbmedal{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;font-family:var(--mono);font-size:12px;font-weight:600;color:#12100a}
.lbmedal.lbm1{background:linear-gradient(160deg,#F0D27A,#C99A20)}
.lbmedal.lbm2{background:linear-gradient(160deg,#DEE3E6,#A7B0B6)}
.lbmedal.lbm3{background:linear-gradient(160deg,#E0B486,#B0793F)}
@media (max-width:720px){.lbav,.lbav-none{width:28px;height:28px}}

/* --- creator page profile block --- */
.cprofile{display:flex;gap:18px;align-items:flex-start;margin:6px 0 4px}
.cav{border-radius:50%;flex-shrink:0;object-fit:cover;background:var(--panel-2);border:1px solid var(--rule-2)}
.cptext{min-width:0;flex:1}
.cptext h1{margin:0 0 2px}
.chandle{font-size:13.5px;color:var(--muted)}
.ctag{margin:8px 0 0;color:var(--ink-2);font-size:15px;max-width:52ch}
.cedit{flex-shrink:0;align-self:center}
@media (max-width:620px){.cprofile{gap:12px}.cav{width:56px;height:56px}}

/* --- share sheet --- */
.sharecard{margin-top:20px}
.shhead h3{margin:0 0 2px}
.shbody{display:flex;gap:22px;align-items:flex-start;margin-top:14px;flex-wrap:wrap}
.shprev{border-radius:12px;border:1px solid var(--rule-2);flex-shrink:0;background:var(--panel-2)}
.shacts{flex:1;min-width:230px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.shacts .btn{width:100%;text-align:center}
.shwins{display:flex;gap:6px;flex-wrap:wrap;width:100%}
.shwin{flex:1;min-width:62px;padding:7px 10px;font:inherit;font-size:12.5px;font-family:var(--mono);border:1px solid var(--rule-2);background:var(--bg);color:var(--ink-2);border-radius:8px;cursor:pointer}
.shwin:hover{border-color:var(--gain);color:var(--ink)}
.shwin.on{background:var(--gain);border-color:var(--gain);color:#08150e;font-weight:600}
.shwin:focus-visible{outline:2px solid var(--gain);outline-offset:1px}
.shreply{width:100%;display:flex;flex-direction:column;gap:4px}
.shreply .btn{font-family:var(--mono);font-size:12px}
@media (max-width:620px){.shbody{flex-direction:column}.shprev{width:100%;height:auto;max-width:270px}}

/* --- month-by-month grid: the track record as one object --- */
.mgrid-wrap{margin-top:18px}
.mgrid-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.mgrid-note{font-size:11.5px;color:var(--muted)}
.mgrid{border-collapse:separate;border-spacing:3px;width:100%;min-width:0;table-layout:fixed}.mgrid .mg-y{width:44px}.mgrid .mg-agg{width:76px}.mgrid .mg-dd{width:50px}
.mgrid th{padding:0 0 4px;font-weight:500}
.mg-m{font-size:10.5px;color:var(--muted);text-align:center}
.mg-y{font-size:12px;color:var(--muted);text-align:left;width:52px;white-space:nowrap}
.mg-agg{font-size:11px;color:var(--muted);text-align:right;padding-left:10px !important;white-space:nowrap}
.mgrid td.mg-agg{font-size:13px}
.mgrid td.mg-dd{color:var(--loss);opacity:.85}
.mg-c{height:34px;text-align:center;font-family:var(--mono);font-size:11px;border-radius:5px;color:var(--ink);
  background:color-mix(in srgb, var(--rule) 55%, transparent)}
/* magnitude in BOTH directions — a bad month is as loud as a good one */
.mg-c.up{background:color-mix(in srgb, var(--gain) calc(var(--m) * 82%), transparent);color:#07160f}
.mg-c.down{background:color-mix(in srgb, var(--loss) calc(var(--m) * 82%), transparent);color:#1a0b0b}
.mg-c.mg-none{background:transparent;border:1px solid var(--rule);opacity:.5}.mgrid .mg-c.mg-lo{color:var(--ink)}.mgrid .mg-c.flat{background:var(--lift-2);color:var(--muted)}.mgrid td.mg-dd.mg-zero{color:var(--muted)}.mg-c{overflow:hidden;white-space:nowrap;letter-spacing:-.03em;font-size:10.5px}
.mgrid-foot{margin:12px 0 0}
@media (prefers-color-scheme:dark){
  .mg-c.up{color:#04120b}.mg-c.down{color:#1b0a0a}
}
@media (max-width:620px){.mg-c{height:28px;font-size:10px}.mg-y{width:42px;font-size:11px}}

/* --- connect an exchange (onboarding) --- */
.cn-hero{padding-bottom:6px}
.cn-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;font-size:11.5px}
.cn-step{padding:4px 10px;border:1px solid var(--rule-2);border-radius:999px;color:var(--muted)}
.cn-step.on{border-color:var(--gain);color:var(--gain);background:color-mix(in srgb,var(--gain) 10%,transparent)}
.cn-step.done{color:var(--ink-2);border-color:var(--rule)}
.cn-search{display:flex;gap:8px;margin:18px 0 14px}
.cn-search input{flex:1;min-width:0;font-size:15px;padding:11px 14px}
.cn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:9px}
.cn-v{display:flex;flex-direction:column;gap:3px;padding:13px 15px;border:1px solid var(--rule);border-radius:10px;background:var(--panel);text-decoration:none}
.cn-v:hover{border-color:var(--gain);text-decoration:none}
.cn-vn{font-weight:600;color:var(--ink);font-size:15px}
.cn-tag{font-size:11px;color:var(--muted)}
.cn-history .cn-tag{color:var(--gain)}
.cn-foot{margin-top:16px}
.cn-how{margin:6px 0 18px;padding-left:20px;font-size:14.5px;color:var(--ink-2)}
.cn-how li{margin:7px 0}
.cn-k{margin:22px 0 8px;font-size:13px;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cn-caps{list-style:none;margin:0;padding:0;font-size:14px}
.cn-caps li{padding:5px 0 5px 24px;position:relative;color:var(--ink-2)}
.cn-caps li::before{position:absolute;left:0;font-family:var(--mono)}
.cn-caps li.yes::before{content:"✓";color:var(--gain)}
.cn-caps li.no::before{content:"–";color:var(--muted)}
.cn-caps li.no{color:var(--muted)}
.note.ok{border:1px solid var(--gain);color:var(--ink);padding:12px 16px;border-radius:8px;margin:16px 0;font-size:14.5px}


/* --- the guide --- */
.gd{display:flex;flex-direction:column;gap:14px;margin-top:6px}
.gd-s h2{margin:0 0 10px;font-size:21px}
.gd-s h3{margin:0 0 6px;font-size:15px}
.gd-s ul{padding-left:20px}
.gd-s li{margin:6px 0}
.gd-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:6px}
.gd-3>div{display:flex;flex-direction:column;gap:6px}
.gd-3 p{margin:0}
.gd-3 .btn{align-self:flex-start;margin-top:auto}
.gd-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.gd-2 ul{margin:4px 0 0}
.gd-t td:first-child a{font-weight:600}
@media (max-width:760px){.gd-3,.gd-2{grid-template-columns:1fr}}

.lbl{display:block;font-size:13px;color:var(--ink-2);margin-bottom:4px}
.usdrow.chk{display:block}.usdrow select{display:block;width:100%;max-width:360px;margin:6px 0 0}.usdrow .finehint{display:block;margin:6px 0 0}
/* free launch: the For-brands column is hidden, so the footer is three columns wide */
.foot3{grid-template-columns:repeat(3,1fr)}
@media (max-width:720px){.foot3{grid-template-columns:repeat(2,1fr)}}

/* ── phone layouts (append-only). The board, the data tables and the nav were laid out for a desk and
   hid their right-hand columns behind a silent sideways scroll on phones. Every rule below is scoped to
   a max-width query; nothing above 840px changes. Each table keeps every value and re-flows its cells
   into a two-line row — nothing is cut except the board's curve and band (both on the record page). ── */

/* nav: under 840px the five section links fold into a menu; the brand, the theme toggle and the
   primary "Claim your record" stay on the one 56px line. The menu is a native <details> — no script,
   keyboard-operable, whole 34px capsule is the button, closes itself on navigation. */
.navmenu{display:none}
@media (max-width:840px){
  nav.top .wrap{overflow:visible;gap:10px}
  .top .wrap>a.l{display:none}
  .top .tbtn{margin-right:0}
  .top .btn{padding:8px 13px}
  .navmenu{display:block;position:static}
  .navmenu summary{list-style:none;display:block;width:34px;height:34px;border:1px solid var(--rule-2);border-radius:99px;cursor:pointer;color:var(--ink-2);position:relative;background:none}
  .navmenu summary::-webkit-details-marker{display:none}
  .navmenu summary:hover{color:var(--ink);background:var(--lift-2)}
  .navmenu summary::before,.navmenu summary::after{content:"";position:absolute;left:9px;width:14px;height:1.5px;border-radius:1px;background:currentColor;transition:transform .18s ease,top .18s ease,box-shadow .18s ease}
  .navmenu summary::before{top:10px;box-shadow:0 5px 0 currentColor}
  .navmenu summary::after{top:20px}
  .navmenu[open] summary{color:var(--ink);background:var(--lift-2)}
  .navmenu[open] summary::before{top:15px;transform:rotate(45deg);box-shadow:none}
  .navmenu[open] summary::after{top:15px;transform:rotate(-45deg)}
  .navsheet{position:absolute;left:0;right:0;top:calc(100% + 1px);background:var(--panel);border-bottom:1px solid var(--rule-2);box-shadow:0 18px 36px rgba(0,0,0,.35);padding:6px 0 8px}
  nav.top .navsheet a.l{display:block;padding:13px 24px;font-size:15px;color:var(--ink)}
  nav.top .navsheet a.l+a.l{border-top:1px solid var(--rule)}
  nav.top .navsheet a.l:hover{background:var(--lift-1);color:var(--ink);text-decoration:none}
  @media (prefers-reduced-motion:reduce){.navmenu summary::before,.navmenu summary::after{transition:none}}
}
@media (max-width:400px){nav.top .wrap{gap:8px}.top .btn{padding:8px 11px}}

/* the board: one tappable row per record — rank and identity on the left; score + tier, window
   return and drawdown stacked on the right. The header keeps #, Name and the score. The band and
   the curve drop (both are on the record page a tap away; the band filter stays above the board).
   Same 840px line as the nav: below it the desktop table's natural width (926px) can't fit. */
@media (max-width:840px){
  .scroll.wide>table.lb{min-width:0}
  table.lb,.lb thead,.lb tbody{display:block}
  .lb tr{display:grid;grid-template-columns:30px minmax(0,1fr) auto;grid-template-areas:"rk who sc" "rk who ret" "rk who dd";column-gap:10px;row-gap:1px;align-items:start;padding:10px 6px 11px;border-top:1px solid var(--rule)}
  .lb thead tr{grid-template-areas:"rk who sc";padding:8px 6px 10px;border-top:0}
  .lb th,.lb td{height:auto;padding:0;border:0;width:auto}
  .lb tr.r td:first-child{width:auto}
  .lb th:nth-child(n+4),.lb td:nth-child(6),.lb td:nth-child(7){display:none}
  .lb tr>:nth-child(1){grid-area:rk}
  .lb tr>:nth-child(2){grid-area:who}
  .lb tr>:nth-child(3){grid-area:sc}
  .lb td:nth-child(4){grid-area:ret}
  .lb td:nth-child(5){grid-area:dd}
  .lb td[colspan]{grid-area:auto;grid-column:1/-1;padding:14px 4px;height:auto}
  .lb tr.r:hover td{background:transparent}
  .lb tr.r:hover{background:var(--lift-1)}
  .lb td:first-child{padding-top:2px}
  .lb td .rank{font-size:13px}
  .lb td .delta{display:block;margin:4px 0 0}
  .lb .lbwho{gap:9px}
  .lb .who .nm{overflow:hidden;text-overflow:ellipsis}
  .lb .who .sm{white-space:normal;font-size:11.5px;line-height:1.45;margin-top:2px}
  .lb td:nth-child(3){display:flex;justify-content:flex-end;align-items:baseline;gap:6px;white-space:nowrap}
  .lb td .score{font-size:16px;line-height:1.2}
  .lb td .tier{display:inline;margin:0}
  .lb td:nth-child(4){text-align:right;font-size:13px;line-height:1.3}
  .lb td:nth-child(5){text-align:right;font-size:12px;line-height:1.3;white-space:nowrap}
  .lb td:nth-child(5) .dd{gap:0}
  .lb td:nth-child(5) .dd .bar{display:none}
  .lb td:nth-child(5)::before{content:attr(data-k);font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:6px}
}

@media (max-width:720px){
  /* column headers may wrap on a phone instead of widening the whole table past the screen */
  th{white-space:normal}
  /* any table that still needs more width than the screen says so: a soft haze on the edge that has
     more behind it, drawn only while there is something to scroll to (background-attachment:local) */
  .panel.scroll,.panel .scroll{background:
    linear-gradient(90deg,var(--panel) 40%,transparent) 0 0/36px 100% no-repeat local,
    linear-gradient(270deg,var(--panel) 40%,transparent) 100% 0/36px 100% no-repeat local,
    linear-gradient(90deg,color-mix(in srgb,var(--ink) 12%,transparent),transparent) 0 0/20px 100% no-repeat scroll,
    linear-gradient(270deg,color-mix(in srgb,var(--ink) 12%,transparent),transparent) 100% 0/20px 100% no-repeat scroll,
    var(--panel)}

  /* pulse — venue league: venue, records, green share and median on one line; the sampling note
     underneath in full. Fixed number columns so the header lines up with every row. */
  .pk-league{min-width:0;display:block}
  .pk-league thead,.pk-league tbody{display:block}
  .pk-league tr{display:grid;grid-template-columns:minmax(0,1fr) 50px 78px 58px;column-gap:8px;row-gap:3px;align-items:center;padding:10px 4px;border-top:1px solid var(--rule)}
  .pk-league thead tr{padding:6px 4px 8px;border-top:0;align-items:end}
  .pk-league th,.pk-league td{height:auto;padding:0;border:0;line-height:1.3}
  .pk-league th{font-size:10px}
  .pk-league th:nth-child(2){display:none}
  .pk-league td:nth-child(1){grid-column:1;grid-row:1}
  .pk-league td:nth-child(2){grid-column:1/-1;grid-row:2;font-size:10.5px}
  .pk-league td:nth-child(3){grid-column:2;grid-row:1}
  .pk-league td:nth-child(4){grid-column:3;grid-row:1}
  .pk-league td:nth-child(5){grid-column:4;grid-row:1}
  .pk-league .dd .bar{width:40px}
  /* pulse — capital-band cohorts: still a table, just tighter */
  .pk-cohorts{min-width:0}
  .pk-cohorts th,.pk-cohorts td{padding:0 6px}
  .pk-cohorts th:first-child,.pk-cohorts td:first-child{padding-left:4px}
  .pk-cohorts th:last-child,.pk-cohorts td:last-child{padding-right:4px}
  .pk-cohorts .dd .bar{width:36px}
  .pk-cohorts .bandcol{width:auto}

  /* most wanted: creator + channels on the left, the request count under its header, Ask on the right */
  .scroll .asklist,.scroll .transp{min-width:0}
  .asklist{display:block}
  .asklist thead,.asklist tbody{display:block}
  .asklist tr{display:grid;grid-template-columns:minmax(0,1fr) 64px auto;grid-template-areas:"nm cnt btn" "ch cnt btn";column-gap:10px;row-gap:3px;align-items:center;padding:11px 4px;border-top:1px solid var(--rule)}
  .asklist thead tr{grid-template-areas:"nm cnt btn";padding:6px 4px 8px;border-top:0}
  .asklist th,.asklist td{height:auto;padding:0;border:0}
  .asklist th:nth-child(2){display:none}
  .asklist tr>:nth-child(1){grid-area:nm}
  .asklist td:nth-child(2){grid-area:ch;font-size:12.5px;line-height:1.5}
  .asklist tr>:nth-child(3){grid-area:cnt}
  .asklist tr>:nth-child(4){grid-area:btn}
  .asklist td:nth-child(3){font-size:16px}
  .feedpanel td.n{white-space:nowrap}
  /* the request form: the link field takes the full line, name and the button share the next */
  .checkline5:has(.namefield){flex-wrap:wrap}
  .checkline5:has(.namefield) input:first-child{flex:1 1 100%}
  .checkline5 .namefield{flex:1 1 auto;min-width:0}

  /* month by month: each year becomes a block — year, its return and max drawdown on one line,
     the twelve months as a strip under it. All twelve months and both totals fit on the screen. */
  .mgrid{min-width:0;display:block;border-spacing:0}
  .mgrid thead,.mgrid tbody{display:block}
  .mgrid tr{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;align-items:end;margin-top:9px}
  .mgrid thead tr{margin-top:0}
  .mgrid th,.mgrid td{height:auto;border:0}
  .mgrid th.mg-y,.mgrid th.mg-agg{display:none}
  .mgrid th.mg-m{grid-row:1;width:auto;padding:0 0 1px}
  .mgrid td.mg-y{grid-column:1/4;grid-row:1;width:auto;font-size:12px;color:var(--ink-2);padding:0 0 2px}
  .mgrid td.mg-agg{grid-column:4/9;grid-row:1;padding:0 0 2px!important;font-size:12px;white-space:nowrap}
  .mgrid td.mg-dd{grid-column:9/13}
  .mgrid td.mg-dd::before{content:attr(data-k);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:5px}
  .mgrid td.mg-c{grid-row:2;height:30px;font-size:9px;letter-spacing:-.03em;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0}
  @media (max-width:400px){.mgrid tr{gap:2px}}

  /* transparency index: venue and grade on one line, the reason in full, the check date under it */
  .transp{min-width:0;display:block}
  .transp thead{display:none}
  .transp tbody{display:block}
  .transp tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"nm gr" "why why" "ck ck";column-gap:12px;row-gap:6px;align-items:center;padding:14px 4px;border-top:1px solid var(--rule)}
  .transp tr:first-child{border-top:0}
  .transp td{height:auto;padding:0;border:0}
  .transp tr.r td:first-child{width:auto}
  .transp tr.r:hover td{background:transparent}
  .transp td:nth-child(1){grid-area:nm;font-size:15px}
  .transp td:nth-child(2){grid-area:gr}
  .transp td:nth-child(3){grid-area:why;font-size:13px;line-height:1.5}
  .transp td:nth-child(4){grid-area:ck;text-align:left;font-size:11px}
  .transp td:nth-child(4)::before{content:attr(data-k);font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;margin-right:6px}

  /* the guide's exchange table already fits once its headers may wrap; tighten the gutters */
  .gd-t th,.gd-t td{padding:0 8px}
  .gd-t th:first-child,.gd-t td:first-child{padding-left:0}
  .gd-t th:last-child,.gd-t td:last-child{padding-right:0}
}

/* ── phone forms and touch (2026-10) ─────────────────────────────────────────────────────────── */
.signmsg{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}
.queuelist{list-style:none;margin:0;padding:0}.queuelist li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-top:1px solid var(--rule)}.queuelist li:first-child{border-top:0}.queuelist .qwhen{color:var(--muted)}
.ck-dym{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:2px}.ck-dym a{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 10px;border-radius:8px}.ck-dym a:hover{background:var(--lift-2);text-decoration:none}
.verdict.open{border-color:var(--rule-2)}.verdict.open .ck-stamp{color:var(--muted);background:var(--lift-1);box-shadow:inset 0 0 0 1px var(--rule-2)}.verdict.open .vk{color:var(--ink-2)}
.claimline{margin:10px 0 0}
@media (max-width:840px){
  /* iOS zooms the page on any field under 16px and stays zoomed */
  input,select,textarea{font-size:16px}
  .tbtn{width:44px;height:44px;margin-right:6px}
  .seg a,.wseg a{min-height:44px;display:inline-flex;align-items:center}
  .wtabs a,.wtabs button{min-height:44px;min-width:44px}
  .controls select,.dirbtn{min-height:44px}
  .foot .fcol a{padding:9px 0}
  .shwin{min-height:44px}
  .btn.small{min-height:40px}
}
@media (max-width:840px){
  nav.top #themeBtn{display:none}   /* the toggle lives in the menu on phones, so the bar fits down to 320px */
  .navmenu summary{width:44px;height:44px}
  .navmenu summary::before,.navmenu summary::after{left:14px}
  .navmenu summary::before{top:15px}
  .navmenu summary::after{top:25px}
  .navmenu[open] summary::before,.navmenu[open] summary::after{top:20px}
  nav.top .navsheet .navtheme{display:block;width:100%;text-align:left;font:inherit;font-size:15px;color:var(--ink);background:none;border:0;border-top:1px solid var(--rule);padding:13px 24px;cursor:pointer}
  nav.top .btn{min-height:44px}
}
@media (max-width:360px){nav.top .wrap{padding:0 14px}}
#suggestBox a.on{background:var(--lift-2)}

/* ── October 2026 picks, phase 3: fund facts, calls, benchmarks ── */
.fundfacts,.callsbox{margin-top:16px}
.ff-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 10px}.ff-head h3{margin:0}
.ff-tag{font-size:12px;color:var(--gold)}
.ff-strategy{margin:0 0 14px;color:var(--ink);max-width:68ch}
.ff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 24px;margin:0 0 12px}
.ff-grid dt{font-size:12px;color:var(--muted);margin:0 0 2px}.ff-grid dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.ff-sheet{margin:12px 0 0}
.calls-sum{margin:0 0 12px;color:var(--ink-2)}
.calls-table td,.calls-table th{white-space:nowrap}.calls-table td:nth-child(2){white-space:normal;min-width:150px}
.calls-note{display:block;font-size:12.5px;color:var(--muted);margin-top:2px;max-width:34ch}
.calls-traded{color:var(--ink-2);font-size:13px}
.mg-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0 14px}
@media (max-width:620px){
.calls-table,.calls-table tbody{display:block}
.calls-table thead{display:none}
.calls-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;align-items:start;gap:10px 12px;padding:14px 0;border-top:1px solid var(--rule)}
.calls-table td{display:block;border:0;padding:0;height:auto!important;min-height:0;text-align:left!important;white-space:normal;font-size:14px}
.calls-table td::before{content:attr(data-k);display:block;font-size:11px;color:var(--muted);font-family:inherit;margin-bottom:1px}
.calls-table td:nth-child(1){grid-column:1}.calls-table td:nth-child(2){grid-column:2/-1;min-width:0}
.calls-table td:nth-child(6){grid-column:1/3}.calls-table td:nth-child(7){grid-column:3}
.ff-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
}

.wt .wt-bench{display:block;font-size:11px;line-height:1.45;color:var(--muted);margin-top:4px;padding-top:4px;border-top:1px dashed var(--rule-2)}
.wt .wt-bench+.wt-bench{border-top:0;margin-top:0;padding-top:0}
.mgrid tr.mg-btc td{padding:0 0 8px;border:0;background:none;height:auto}
.mgrid tr.mg-btc .mg-y,.mgrid tr.mg-btc .mg-b,.mgrid tr.mg-btc .mg-agg{font-size:10.5px;color:var(--muted);text-align:center;font-weight:400}
.mgrid tr.mg-btc .mg-y{text-align:left}.mgrid tr.mg-btc .mg-agg{text-align:right}
@media (max-width:720px){
.mgrid tr.mg-btc{margin-top:3px;row-gap:1px}
.mgrid tr.mg-btc td{padding:0}
.mgrid tr.mg-btc td.mg-y{grid-column:1/3;grid-row:1;font-size:10px;color:var(--muted)}
.mgrid tr.mg-btc td.mg-agg{grid-column:3/9;grid-row:1;text-align:left;font-size:10px;padding:0!important}
.mgrid tr.mg-btc td.mg-agg.mg-dd{display:none}
.mgrid tr.mg-btc td.mg-b{grid-row:2;font-size:8.5px;letter-spacing:-.03em;text-align:center;overflow:hidden;white-space:nowrap}
}
.r-more{margin:12px 0 0;font-size:13.5px}.r-more a{color:var(--ink-2);text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:3px}

/* ── October 2026 picks: site chrome, home and board, request pages, explainers ── */
/* home.css — home, board, check, request pages, explainers. Merged into style.css at the end of the build. */

/* ── board identity (C13): an unclaimed record gets a generated face, never an empty circle. Two hues and an
   angle from the record id (ident()), mixed into the panel colour so it stays quiet in both themes. ── */
.lbav-gen{--av1:54%;--av2:36%;display:block;width:34px;height:34px;border-radius:50%;flex-shrink:0;border:1px solid var(--rule);
  background:linear-gradient(var(--a,135deg),
    color-mix(in oklab,hsl(var(--h1,200) 50% 56%) var(--av1),var(--panel-2)),
    color-mix(in oklab,hsl(var(--h2,260) 45% 50%) var(--av2),var(--panel-2)))}
/* on a light page the same mix reads as candy: less colour, more grey */
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]) .lbav-gen{--av1:34%;--av2:24%}}
:root[data-theme="light"] .lbav-gen{--av1:34%;--av2:24%}
@media (max-width:720px){.lbav-gen{width:28px;height:28px}}
.lbid{font-family:var(--mono)}
.pod .pid{font-size:11.5px}
.pod .nw{white-space:nowrap}

/* ── paused data (C18) ── */
.latebar{background:var(--gold-soft);border-bottom:1px solid var(--rule);color:var(--ink);font-size:12.5px;line-height:1.45}
.latebar .wrap{padding-top:8px;padding-bottom:8px}
.pausenote{margin:0 0 10px;padding:10px 14px;border:1px solid var(--rule-2);border-radius:10px;background:var(--lift-1);font-size:13px;line-height:1.5;color:var(--ink-2)}
.pausenote p{margin:0}.pausenote p+p{margin-top:4px}
.nextref{white-space:nowrap}

/* the stat line and the season bar have a second copy under the board, shown on phones only */
.statband-m,.season-m{display:none}
/* iOS zooms into any field under 16px: the board's selects and the footer field were still 13px on phones */
@media (max-width:840px){.controls select,.fnform input{font-size:16px}}

/* ── phone home (C3): the first screen is the headline, the search and the board. Desktop is untouched. ── */
@media (max-width:620px){
  .hero5{padding:22px 0 0}
  .hero5 .kick{font-size:11px}
  .hero5 h1{margin:10px 0 18px}
  .sub5,.orsep,.paths>.path:not(.lead),.path.lead .phint,.hero5>.statband,.podium{display:none}
  .paths{display:block;margin:0}
  .path.lead{border:0;background:none;padding:0;border-radius:0;gap:8px}
  .path.lead .plabel{font-size:10.5px}
  .statband-m{display:flex;gap:6px 18px;margin:14px 2px 0;padding-top:0;border-top:0;font-size:12px}
  .season-top{display:none}
  .season-m{display:flex;margin-top:18px}
  /* an unsold slot's placeholder never stands between the search and the board (a sold slot still shows) */
  #slot-hero.house,#slot-strip.house{display:none}
  #slot-hero.house.spothl,#slot-strip.house.spothl{display:block}
  .pausenote{font-size:12.5px;line-height:1.45;padding:9px 12px}

  /* controls: four thumb-sized rows — view, window, the two filters, the sort */
  .controls{margin:22px 0 10px;gap:8px}
  .controls .sp{display:none}
  .controls .vseg,.controls .wseg{flex:1 1 100%;display:flex;margin-left:0}
  .controls .vseg a,.controls .wseg a{flex:1 1 0;justify-content:center;padding:0 8px;white-space:nowrap}
  .controls .vseg a{flex:1 1 auto}
  .controls form{flex:1 1 100%;gap:8px}
  .controls select[name=venue]{flex:1 1 0;min-width:0}
  .controls select[name=band]{flex:0 0 118px;min-width:0}
  .controls select[name=order]{flex:1 1 60%;min-width:0}
  .controls .dirbtn{flex:none;width:44px}

  /* board rows: a compact card. Name and status on top, the window's return and drawdown under them,
     the score and its tier on the right. */
  .lb tr{grid-template-columns:26px auto minmax(0,1fr) auto;grid-template-areas:"rk who who sc" "rk ret dd sc";column-gap:10px;row-gap:4px;padding:11px 4px 12px}
  .lb thead tr{grid-template-areas:"rk who who sc";padding:6px 4px 8px}
  .lb .lbwho{align-items:flex-start}
  .lb .lbwho .lbav{margin-top:1px}
  .lb .who .nm{font-size:14.5px;line-height:1.35}
  .lb .who .sm{font-family:inherit;font-size:12px;line-height:1.4;margin-top:1px}
  .lb .who .sm .lbh,.lb .who .sm .lbid{font-family:var(--mono);font-size:11.5px}
  .lb td:nth-child(3){flex-direction:column;align-items:flex-end;gap:1px;align-self:start}
  .lb td .score{font-size:17px}
  .lb td .tier{font-size:11px}
  .lb td:nth-child(4){text-align:left;padding-left:37px;font-size:13px;line-height:1.3;white-space:nowrap}
  .lb td:nth-child(5){text-align:left;font-size:13px;line-height:1.3}
  .lb td:nth-child(5)::before{content:none}
  .lb td:nth-child(5)::after{content:" " attr(data-k);font-size:12px;color:var(--muted)}
}

/* ── How it works (/guide): one page for the plain-language explainers (C15) ── */
.gd-hero p{margin-bottom:0}
.gd-toc{display:flex;flex-wrap:wrap;gap:2px 18px;margin:16px 0 0;font-size:13px}
.gd-toc a{color:var(--ink-2);padding:6px 0}
.gd-toc a:hover{color:var(--ink)}
.gd-s p,.gd-s li{max-width:72ch}
.gd-s [id]{scroll-margin-top:72px}
.gd-s{scroll-margin-top:72px}
.gd-then{margin:18px 0 0;color:var(--ink-2)}
.gd-sign{color:var(--ink-2);margin:0}
.gd-rules{padding-left:20px;margin:6px 0 12px}
.gd-rules li{margin:8px 0}
.gd-s .gd-ex{list-style:none;margin:16px 0 4px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));column-gap:20px}
.gd-s .gd-ex li{margin:0;padding:8px 0;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:1px;max-width:none}
.gd-ex a{font-weight:600;color:var(--ink)}
.gd-ex .t{font-size:11.5px;color:var(--muted)}
@media (max-width:620px){
  .gd-s .gd-ex{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}
  .gd-s .gd-ex li{padding:9px 0}
  .gd-toc{gap:0 16px}
  .gd-toc a{padding:8px 0}
}

/* ── Exchange openness (/transparency): one row per exchange — name, grade, the one plain sentence ── */
.opn-panel{padding:4px 24px}
.opn{list-style:none;margin:0;padding:0}
.opn li{display:grid;grid-template-columns:minmax(150px,220px) 120px minmax(0,1fr);column-gap:20px;align-items:baseline;padding:14px 0;margin:0;border-top:1px solid var(--rule)}
.opn li:first-child{border-top:0}
.opn-nm{font-weight:600}
.opn .chip{justify-self:start}
.opn-why{margin:0;color:var(--ink-2);font-size:13.5px;line-height:1.55;max-width:64ch}
.opn-why a{color:var(--ink);white-space:nowrap;text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:3px}
@media (max-width:720px){
  .opn-panel{padding:2px 16px}
  .opn li{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"nm gr" "why why";row-gap:6px;padding:13px 0}
  .opn-nm{grid-area:nm}.opn .chip{grid-area:gr}.opn-why{grid-area:why}
}
.hero-page .finehint{font-size:12.5px;color:var(--muted);margin-top:4px}

/* ── Pulse (C26): the whole Hyperliquid leaderboard leads; our board is a second, labelled population ── */
.pk-board{margin:34px 0 0;padding-top:24px;border-top:1px solid var(--rule)}
.pk-board .pk-sub{font-size:20px;letter-spacing:-.01em;margin:8px 0 8px}
.pk-note{color:var(--ink-2);font-size:14.5px;line-height:1.55;max-width:680px;margin:0 0 14px}
.pk-note b{font-family:var(--mono);font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}
.pk-split-sm{height:28px}
.pk-seg .pk-w{padding:0}
@media (max-width:640px){.pk-seg .pk-w{display:none}}

/* ── request page (C27): who they are, the honest status, the ask, hear back, claim ── */
.ask-hero h1{margin-bottom:8px}
.ask-ch{display:flex;flex-wrap:wrap;gap:2px 18px;margin:0 0 14px;font-size:14px}
.ask-ch a{color:var(--ink-2);padding:6px 0;text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:3px}
.ask-ch a:hover{color:var(--ink)}
.ask-hero p b{color:var(--ink);font-weight:600}
.ask-block{max-width:600px;margin:4px 0 0}
.ask-count{font-size:16px;color:var(--ink-2);margin:0 0 4px}
.ask-count0{color:var(--muted);margin:0 0 12px}
.ask-watch{margin-top:28px;padding-top:20px;border-top:1px solid var(--rule)}
.ask-watch h3{margin:0 0 10px;font-size:15px}
.ask-watch .watchrow{margin-top:0}
.ask-reply{margin-top:16px}
.ask-reply h3{margin-top:0}
.ask-watch + .persona{max-width:600px;border-top:1px solid var(--rule)}

/* footer base line: the operator sentence takes the free width, so the links (and the X link, when set) stay on one line */
.fbase>span:first-child{flex:1 1 320px;min-width:0}
/* privacy and terms: a readable line length inside the full-width panel */
.pv p,.pv li{max-width:72ch}
/* links inside running text on the explainers are findable without hovering */
.prose p a:not(.btn),.prose li a:not(.btn){text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:3px}
.prose p a:not(.btn):hover,.prose li a:not(.btn):hover{text-decoration-color:currentColor}

/* ── October 2026 picks: record and trader pages ── */
/* record.css — record and trader pages. Merged into style.css at the end of the build. Tokens only. */

/* ── the hero: name, then the ten-second verdict ── */
.r-hero{padding-bottom:20px}
.r-id{font-size:13px;color:var(--muted);margin:-6px 0 0}
.hero-page .r-verdict{max-width:680px;margin:14px 0 6px;font-size:15px;line-height:1.6;color:var(--ink-2)}
.r-lead{color:var(--ink);font-weight:600}
.r-lead-ok{color:var(--gain)}
.r-lead-wait{color:var(--gold)}
.r-verdict a,.r-own a,.r-namesake a,.r-bestof{color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:3px}
.r-report a,.r-howmore a{color:var(--ink-2);text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:3px}
.r-verdict a:hover,.r-own a:hover,.r-namesake a:hover,.r-bestof:hover,.r-report a:hover,.r-howmore a:hover{text-decoration-color:currentColor}
.r-asof{color:var(--muted);white-space:nowrap}
.hero-page .r-own{margin:10px 0 0;font-size:14px}
.r-hero .claimline{margin:8px 0 0}
.r-bio{margin:10px 0 0}
.r-bio .vmark{margin-left:3px}
.r-bio .r-mark{display:block;color:var(--muted);font-size:13px;white-space:normal;margin-top:2px}
.r-note,.r-namesake{max-width:680px;margin:12px 0 0}
.r-namesake p{margin:0;font-size:13.5px;color:var(--ink-2);max-width:none}
.r-namesake p+p{margin-top:4px;color:var(--muted)}
.r-preview{margin:16px 0 0;font-size:13.5px;line-height:1.55}
.r-preview a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.r-ownerbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 0;padding:6px 6px 6px 14px;border:1px solid var(--rule-2);border-radius:12px;background:var(--panel);font-size:13px;color:var(--ink-2)}

/* how to read this — a short glossary that stays folded until asked for */
.r-how{max-width:680px;margin:0}
.r-how summary{display:inline-flex;align-items:center;gap:8px;min-height:32px;font-size:13px;color:var(--ink-2);list-style:none;cursor:pointer}
.r-how summary::-webkit-details-marker{display:none}
.r-how summary::after{content:"+";font-family:var(--mono);color:var(--muted)}
.r-how[open] summary::after{content:"\2212"}
.r-how summary:hover{color:var(--ink)}
.r-howlist{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 18px;margin:8px 0 0;padding:14px 16px;background:var(--lift-1);border:1px solid var(--rule);border-radius:12px;font-size:13px;line-height:1.5}
.r-howlist dt{color:var(--ink);font-weight:500}
.r-howlist dd{margin:0;color:var(--ink-2)}
.hero-page .r-howmore{margin:8px 0 0;font-size:13px}

/* ── the score: number, standing, what it is built from ── */
.r-scorehead{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.r-bestof{font-size:12.5px}
.r-standing{margin-left:6px;font-size:13.5px;color:var(--ink-2)}
.r-standing b{color:var(--ink);font-weight:600}
.r-unscored{margin:10px 0 0;font-size:13.5px;color:var(--ink-2);max-width:520px}
.r-sub{font-size:12px;color:var(--muted);margin:0 0 6px}
.r-blend{margin:20px 0 0;max-width:460px}
.r-brow{display:grid;grid-template-columns:72px 40px minmax(0,1fr);gap:12px;align-items:baseline;padding:7px 0;border-top:1px solid var(--rule);font-size:13.5px}
.r-brow:last-child{border-bottom:1px solid var(--rule)}
.r-bl{color:var(--ink-2)}
.r-bw{font-size:12px;color:var(--muted)}
.r-bv{color:var(--ink)}
.r-b50{color:var(--ink-2)}
.r-bwhy{color:var(--muted)}
.r-comps{margin:16px 0 0;font-size:13px;color:var(--ink-2);max-width:520px}
.r-notes{margin:18px 0 0;max-width:520px}
.r-notes p{margin:0 0 6px;font-size:13.5px;color:var(--ink-2)}
.r-mature{margin:18px 0 0;max-width:460px}
.r-mature .r-sub{color:var(--ink);font-size:13.5px}
.r-steps{list-style:none;margin:0;padding:0}
.r-steps li{position:relative;display:flex;justify-content:space-between;gap:12px;margin:0;padding:4px 0 4px 18px;font-size:13px;color:var(--ink-2)}
.r-steps li::before{content:"";position:absolute;left:1px;top:10px;width:8px;height:8px;border-radius:50%;box-sizing:border-box;border:1.5px solid var(--muted)}
.r-steps li.done{color:var(--muted)}
.r-steps li.done::before{background:var(--muted)}
.r-stw{font-size:12px;color:var(--muted);white-space:nowrap}
.r-mature .finehint{margin:6px 0 0}

/* ── the chart: one readout line above, a plot tall enough to read, dates under it ── */
.vp-readout{height:20px;line-height:20px;margin:0 0 6px;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.vp-readout .vp-rd{color:var(--ink-2)}
.vp-plot{position:relative;height:254px;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.vp-plot>svg.spark{width:100%;height:220px!important}
.vp-svg{display:block}
.vp-gl{stroke:var(--ink);stroke-opacity:.09}
.vp-zl{stroke:var(--ink);stroke-opacity:.3;stroke-dasharray:2 3}
.vp-yl,.vp-xl{font-family:var(--mono);font-size:10.5px;fill:var(--muted)}
.vp-xh{stroke:var(--ink);stroke-opacity:.35}
.vp-nocurve{margin:0;padding:24px 0;font-size:13px;color:var(--muted)}
@media (max-width:720px){.vp-plot{height:214px}.vp-plot>svg.spark{height:180px!important}}
/* below 360px the summary takes two lines; a reading under the finger fits the same box, so the plot never jumps */
@media (max-width:360px){.vp-readout{height:auto;min-height:40px;white-space:normal}}

/* ── following it: what $1,000 would have done ── */
.r-follow{margin:18px 0 0;padding:16px 18px;border-radius:12px;background:var(--lift-1)}
.r-follow p{margin:0 0 6px;font-size:13.5px;color:var(--ink-2);max-width:600px}
.r-follow .r-flead{font-size:15px;line-height:1.5;color:var(--ink)}
.r-follow .r-flead b{font-weight:600}
.r-follow p.finehint{margin:8px 0 0;font-size:12px;color:var(--muted)}
.r-follow p.finehint+p.finehint{margin-top:2px}

/* ── month by month, day by day ── */
.mgrid td.mg-c{padding:0}   /* a month cell is ~27px wide on a desk: the table's 12px gutters were clipping "−14" */
.vp-dailyhead{flex-wrap:wrap;gap:2px 12px}
.vp-dailyhead .vp-k{white-space:nowrap}
.vp-cd.vp-open{outline:1px dashed var(--muted);outline-offset:-3px}   /* the last day of a live calendar is still open */

/* ── the side column: facts, where to check it, watch, share, report ── */
.r-facts h3,.r-trades h3,.r-act h3,.r-none h3{margin:0 0 12px}
.r-facts .kv.vp-meta{margin-top:0;padding-top:0;border-top:0;grid-template-columns:minmax(84px,max-content) minmax(0,1fr)}
.r-facts .kv.vp-meta b{max-width:150px}
.r-src{margin-top:18px;padding-top:16px;border-top:1px solid var(--rule)}
.r-src h3{margin:0 0 4px;font-size:13.5px}
.r-src .sub{margin:0 0 12px;font-size:13px;line-height:1.5}
.r-src .btn{margin:0 6px 6px 0}
.r-src .r-ref{margin:6px 0 0}
.r-trades p{margin:0 0 8px}
.r-trades p:last-child{margin:0}
.r-wform{display:flex;gap:8px}
.r-wform input{flex:1;min-width:0}
.r-wform .btn{flex-shrink:0;min-width:84px}
.r-watch .finehint{margin:8px 0 0}
.r-watch p.ok,.r-watch p.note,.r-watch p.err{margin:0 0 10px}
.r-share{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid var(--rule)}
.r-share:first-child{margin-top:0;padding-top:0;border-top:0}
.r-share .btn{min-width:112px}
.r-report{margin:12px 4px 0}
.r-report .finehint{margin:0 0 6px}
.r-accts tr.r td:first-child{width:auto;white-space:nowrap}
.r-accts td a{color:var(--ink)}
.r-accts td a:hover{text-decoration:none}

@media (max-width:840px){
  .r-how summary{min-height:44px}
  .r-wform input,.r-wform .btn,.r-share .btn,.r-ownerbar .btn{min-height:44px}
  .r-links a{display:inline-block;padding:10px 0}
  .r-bestof{padding:10px 0}
}
@media (max-width:720px){.r-share .r-dl{display:none}}   /* on a phone the card goes through the share sheet */
@media (max-width:560px){
  .r-hero{padding-top:28px}
  .hero-page .r-verdict{font-size:14.5px}
  .r-howlist{grid-template-columns:minmax(0,1fr);gap:2px}
  .r-howlist dd{margin-bottom:8px}
  .r-standing{margin-left:0;flex-basis:100%}
  .r-follow{padding:14px}
}
.fundlist .fl-what{display:block;font-size:13px;color:var(--muted);margin-top:3px;max-width:60ch;font-weight:400}
