/* Signal / 03 — graphite, acid lime, editorial scale, track-line geometry. */
:root{--bg:#141613;--panel:#1b1e19;--panel2:#22261f;--line:#3a4033;--txt:#f1f2e8;--dim:#b6bdab;--dim2:#939d88;--lime:#d2fa36;--gov:#bdde83;--pub:#f3bf80;--pred:#d2fa36;--ok:#a9d37c;--warn:#e8ba69}

body{height:auto;min-height:100vh;overflow:auto}

a{color:inherit}
button,input,select{font:inherit}
a,button,input,select,summary{-webkit-tap-highlight-color:transparent}

:focus-visible{outline:2px solid var(--lime);outline-offset:5px}

.skip-link{position:fixed;top:10px;left:10px;z-index:1000;padding:12px;background:var(--lime);color:var(--bg);transform:translateY(-180%)}
.skip-link:focus{transform:none}

.site-header{padding:22px 4%;gap:30px;min-height:84px}
.brand{text-decoration:none;font-family:var(--sans);letter-spacing:-.7px;font-size:18px;font-weight:800}
.brand span{color:var(--txt)}
.brand::before{content:'↗';display:inline-grid;place-items:center;width:28px;height:28px;color:var(--bg);background:var(--lime);border-radius:7px;transform:skew(-8deg);margin-right:10px}

.site-header nav{justify-content:center}
.tab{text-decoration:none;font-family:var(--sans);letter-spacing:0;font-size:12px;font-weight:600;padding:9px 15px;border-radius:999px;color:var(--dim)}
.tab.active{color:var(--bg);background:var(--lime);border-color:var(--lime)}
.tab.active::before{content:none}
.tab:hover{border-color:var(--dim2)}
.clock{font-size:10px;white-space:nowrap}
.fixture-notice{padding:8px 4%;background:#393321;color:#f4d598;font:10px var(--mono);letter-spacing:.7px}

.hero{position:relative;display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:20px;padding:42px 4% 38px;overflow:hidden}
.hero-kicker{font:10px var(--mono);letter-spacing:1.8px;color:var(--dim);display:flex;align-items:center;gap:9px;margin-bottom:22px}
.status-dot{width:7px;height:7px;background:var(--lime);border-radius:50%}
.hero h1{font-size:clamp(56px,7.7vw,126px);line-height:.87;letter-spacing:-.07em;font-weight:800}
.hero h1 span{display:block}
.hero h1 em{color:var(--lime);font-style:italic}
.hero-copy{display:flex;align-items:center;gap:35px;margin-top:28px}
.hero-copy p{font-size:12px;line-height:1.8;color:var(--dim)}
.hero-cta{font-size:11px;text-decoration:none;border-bottom:1px solid var(--lime);padding:10px 0;white-space:nowrap}
.hero-cta span{color:var(--lime);margin-left:24px;font-size:20px}
.hero-art{color:#acb896;position:relative;transform:rotate(-4deg)}
.hero-art svg{width:100%;height:auto;display:block}
.hero-art>span{display:block;text-align:center;font:9px var(--mono);letter-spacing:3px;margin-top:8px}

.sector-bar{margin:0 4% 22px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px}
.eyebrow,.sector-count{font:9px var(--mono);letter-spacing:1.2px;color:var(--dim2)}
.sector-bar nav{gap:6px}
.sector-bar .tab{background:var(--panel2);border:1px solid var(--line)}
.sector-bar .tab.active{background:var(--lime);border-color:var(--lime)}
.sector-count{margin-left:auto;white-space:nowrap}

.dashboard>.banner{margin:0 4% 20px;border-radius:8px;font-size:10px}
.dashboard main{padding:0 4% 32px;gap:18px;align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);scroll-margin-top:20px}
.col{min-width:0;border-radius:14px;padding:20px;overflow:visible}
main .col{overflow:visible}
main .col .list{max-height:360px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.col h2{font-family:var(--sans);letter-spacing:-.5px;font-size:19px;text-transform:none;gap:8px;padding-bottom:17px}
.col-index{margin-left:auto;font:10px var(--mono);color:var(--dim2)}
.dot{width:6px;height:6px;box-shadow:none!important}
.sub{font-size:9px;letter-spacing:.7px;gap:10px;margin-top:18px;line-height:1.7}
.card{border-color:transparent;border-radius:8px;padding:14px}
.card:hover{border-color:#67734e;transform:none}
.card .t{font-size:12px;line-height:1.6}
.card .m{font-size:11px}
.card a{font-size:10px}
.badge{font-size:8px;border-radius:4px;color:var(--dim);padding:2px 5px}
.amt{display:block;font-size:22px;letter-spacing:-.8px;margin:5px 0}
.heat{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.heat .h{border-radius:8px;padding:11px}
.heat .h .n{font-size:8px;line-height:1.8}
.heat .h .v{font-size:20px;letter-spacing:-.7px}
.pick{gap:9px}
.pick .tk{min-width:40px;font-size:13px}
.pick .sc{font-size:23px}
.pick .info .nm{font-size:12px}
.pick .info .dt{font-size:10px}
.pick .conf{font-size:8px}
.chart-slot{padding-top:18px;margin-top:18px}
.cs-chart-head{flex-wrap:wrap}
.cs-chart-head h4{font-size:9px}
.cs-chart-head span{font-size:9px}
.cs-table td,.cs-table th,.set-table td{border-bottom-color:var(--line)}
.cs-table summary{padding:8px 0}
.cs-tip{background:var(--bg);border-color:var(--line);border-radius:8px}

#refreshPred{border-radius:50%;width:30px;height:30px;color:var(--lime)}
.research-note{font:10px/1.8 var(--mono);color:var(--dim2);margin:14px 0}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-top b{font:800 24px var(--sans);letter-spacing:-1px;color:var(--txt)}
.footer-top a{font-size:11px;color:var(--lime);text-decoration:none}
footer{padding:26px 4% 35px}
footer .health{max-height:none;overflow:visible}
.health .hp{border-radius:5px;font-size:9px}
.health .hp.stale{color:var(--warn)}

body.page main{max-width:1440px;padding:35px 4% 60px}
body.page main.narrow{max-width:900px}
.bills-head h1{font:800 clamp(32px,5vw,66px)/1 var(--sans);letter-spacing:-2px;text-transform:none}
.bills-head .lede{font-size:13px;max-width:670px;margin-top:16px}
.bills-head{margin-bottom:26px}
.back{color:var(--lime);font-size:10px;margin-bottom:28px}
.panel-box,.tile,.bill,.controls,.quota .q{border-radius:10px}
.tile .val{color:var(--lime)}
.bill-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr))}
.bill:hover{border-color:#67734e}
.controls{top:12px;background:var(--panel);box-shadow:0 6px 20px #0002}
.controls input[type=search]{min-width:0}
.chip,.btn,.key-row input,.controls select,.controls input{border-radius:6px}
.btn.primary{background:var(--lime);color:var(--bg);border-color:var(--lime)}
.btn.primary:hover:not(:disabled){background:#e1ff79;color:var(--bg)}
.btn{min-height:40px}
.set-table{display:block;overflow-x:auto}
.set-note{font-size:13px}
.pill.good{border-color:var(--ok)}

.discovery{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}
.discovery summary{cursor:pointer;font-size:12px;color:var(--lime)}
.discovery summary span{float:right}
.discovery p{font-size:11px;color:var(--dim);margin:12px 0;line-height:1.7}
.discovery .btn{font-size:9px}
.discovery .card{margin-top:8px}
.source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.source-card{padding:24px;border:1px solid var(--line);background:var(--panel);border-radius:12px;display:flex;flex-direction:column;gap:12px}
.source-card .source-type{font:9px var(--mono);color:var(--lime);letter-spacing:1px}
.source-card h2{font-size:22px;letter-spacing:-.7px}
.source-card p{color:var(--dim);font-size:12px;line-height:1.8}
.source-card a{color:var(--lime);font-size:11px;margin-top:auto}
.methodology{margin-top:35px;padding:28px;border:1px solid var(--line);border-radius:12px}
.methodology h2{font-size:25px;letter-spacing:-.6px;margin-bottom:14px}
.methodology p{max-width:850px;color:var(--dim);font-size:13px;line-height:1.8;margin-bottom:10px}

@media(min-width:1650px){.hero{padding-top:60px;padding-bottom:55px}
.dashboard main{gap:24px}
.col{padding:25px}
}

@media(max-width:1150px){.site-header{flex-wrap:wrap;gap:15px}
.site-header nav{justify-content:flex-end}
.clock{display:none}
.hero-copy{align-items:flex-start;flex-direction:column;gap:8px}
.sector-bar{flex-wrap:wrap;gap:12px}
.sector-count{display:none}
.dashboard main{grid-template-columns:repeat(2,minmax(0,1fr))}
#colPred{grid-column:1/-1}
.heat{grid-template-columns:repeat(5,minmax(0,1fr))}
.source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:700px){.site-header{padding:18px 5%;gap:17px}
.brand{font-size:17px}
.site-header nav{flex-basis:100%;justify-content:space-between;gap:0}
.site-header .tab{font-size:11px;padding:8px 12px}
.hero{padding:30px 5%;grid-template-columns:1fr}
.hero h1{font-size:clamp(48px,12.8vw,86px)}
.hero-kicker{font-size:8px;letter-spacing:1px}
.hero-art{position:absolute;width:210px;right:-65px;bottom:20px;opacity:.23;pointer-events:none}
.hero-art>span{display:none}
.hero-content{position:relative;z-index:1}
.hero-copy{max-width:82%}
.sector-bar{margin:0 5% 18px}
.sector-bar nav{flex-basis:100%;flex-wrap:wrap}
.sector-bar .tab{font-size:11px;padding:8px 12px}
.dashboard>.banner{margin:0 5% 18px}
.dashboard main{grid-template-columns:minmax(0,1fr);padding:0 5% 25px}
#colPred{grid-column:auto}
.col{padding:18px}
main .col .list{max-height:420px}
.heat{grid-template-columns:repeat(2,minmax(0,1fr))}
.source-grid{grid-template-columns:1fr}
.footer-top{align-items:flex-start;flex-direction:column;gap:10px}
.controls{position:static}
.key-row{flex-wrap:wrap}
.key-row input{flex-basis:100%}
.bills-head h1{letter-spacing:-1.5px}
.methodology{padding:20px}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}


@media(max-width:700px){.site-header nav{flex-wrap:nowrap}.site-header .tab{font-size:10px;padding:8px 9px}.hero-copy{max-width:100%}}
/* Cross-market view */
.market-disclaimer{font-size:12px;color:var(--dim);max-width:960px;line-height:1.8}
.market-section{margin-top:35px}.market-heading{display:flex;justify-content:space-between;gap:15px;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:16px}.market-heading h2{font-size:25px;letter-spacing:-.7px}.market-heading h2 span{font:10px var(--mono);color:var(--lime);margin-left:12px}.market-heading>span{font:10px var(--mono);color:var(--dim2)}
.market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.quote-card{border:1px solid var(--line);background:var(--panel);padding:22px;display:flex;flex-direction:column;gap:10px}.quote-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.quote-top b{font-size:18px}.quote-card>p{font-size:12px;color:var(--dim)}.quote-price{font-size:32px;font-weight:800;letter-spacing:-1px}.quote-change{font:12px var(--mono)}.quote-change small{color:var(--dim2);font-size:9px}.positive{color:var(--lime)}.negative{color:var(--bad)}.quote-note{font:9px/1.7 var(--mono);color:var(--dim2)}.quote-spark{display:flex;align-items:center;gap:10px;justify-content:space-between}.quote-spark small{font:8px var(--mono);color:var(--dim2)}.quote-spark svg{max-width:60%}.quote-card>a{margin-top:auto;padding-top:5px;color:var(--lime)}.quote-form{margin-top:22px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.quote-form label{font-size:12px}.quote-form input{background:var(--panel);color:var(--txt);border:1px solid var(--line);border-radius:6px;padding:11px;min-width:0}.quote-form button{color:var(--lime)}#quoteResult{max-width:430px;margin-top:15px}.market-attribution{border-top:1px solid var(--line);padding-top:22px;margin-top:30px;font-size:11px;color:var(--dim);line-height:1.8}.market-attribution p{margin-bottom:10px}.market-attribution a{color:var(--lime)}
@media(max-width:900px){.market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-heading{flex-wrap:wrap}}
@media(max-width:700px){.site-header nav{flex-wrap:wrap;justify-content:flex-start;gap:4px}.market-grid{grid-template-columns:1fr}.quote-form{align-items:stretch;flex-direction:column}.market-heading h2{font-size:23px}}
.division-nav{display:flex;gap:24px;align-items:center;padding:16px 30px;border-bottom:1px solid #34392c;flex-wrap:wrap;font-size:13px}
.division-nav span{color:#aaba87;font-size:10px;letter-spacing:.12em}.division-nav a[aria-current]{color:#d2ff00}
.research-health,.research-controls,.connection-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:24px 0}
.source-status{padding:16px;background:#20251c;border:1px solid #39402e;border-radius:8px;overflow-wrap:anywhere}.source-status summary{cursor:pointer;font-weight:600}
.research-controls label{display:grid;gap:8px}.research-controls select,.research-controls input,.evidence-card textarea{width:100%;padding:12px;background:#161a14;color:#eef2e9;border:1px solid #49513a;border-radius:6px;font:inherit}
.evidence-card textarea{min-height:110px;margin-top:12px;resize:vertical}.evidence-card details{margin:18px 0}.evidence-card summary{cursor:pointer;color:#d2ff00}.evidence-date{font:12px monospace;color:#b9c59e}.evidence-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px}.company-links{font:12px monospace;color:#bac3a7}.company-links a{display:inline-block;padding:6px 10px;border:1px solid #465431;border-radius:4px}
.connection{display:grid;gap:8px;padding:20px;border:1px solid #404930;border-radius:8px;color:#eaf0df}.connection strong{font-size:26px;color:#d2ff00}.connection small{line-height:1.6;color:#aebba1}.health .hp.disabled i{background:#888}
.private-evidence{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:36px 0}.private-evidence h3{font-size:24px}.private-record{padding:20px 0;border-bottom:1px solid #38402e}.private-record h4{font-size:17px;line-height:1.5;margin:10px 0}.private-record time{font:12px monospace;color:#adb79f}#privateSectorTabs{display:flex;gap:8px;flex-wrap:wrap}#privateSectorTabs .tab{cursor:pointer}#privateNewsHealth,#privateFilingsHealth{line-height:1.8;padding:12px 0}@media(max-width:800px){.private-evidence{grid-template-columns:1fr}}
.wall-street .compact-quotes .quote-card{padding:14px;border-radius:8px;gap:7px;flex-shrink:0}.wall-street .quote-price{font-size:25px}.wall-street .private-record{padding:13px;border:1px solid var(--line);border-radius:8px;background:var(--bg);flex-shrink:0}.wall-street .private-record h4{font-size:13px;line-height:1.6;margin:7px 0}.wall-street .private-record time{font-size:9px}.wall-street .quote-form{display:grid;gap:8px}.wall-street .quote-form input{width:100%}.wall-street .quote-note{margin:10px 0}.wall-street .sub button{background:transparent;border:0;color:var(--lime);cursor:pointer;font-size:20px}.wall-street #cryptoGlobal{grid-template-columns:repeat(2,minmax(0,1fr))}.wall-street #cryptoGlobal .val{font-size:20px}
/* Always-available navigation, with measured offsets for wrapping and zoom. */
.navigation-shell{position:sticky;top:0;z-index:100;background:var(--bg);flex-shrink:0;box-shadow:0 5px 20px #0002}
.dashboard>.sector-bar{position:sticky;top:var(--navigation-height,84px);z-index:90;background:var(--bg);box-shadow:0 8px 15px #0002}
html{scroll-padding-top:calc(var(--navigation-height,84px) + var(--sector-height,0px) + 18px)}
.dashboard main{scroll-margin-top:18px}
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:110;background:var(--lime);color:var(--bg);border:1px solid var(--line);border-radius:999px;min-width:48px;min-height:48px;padding:12px 17px;font-weight:700;cursor:pointer;box-shadow:0 5px 24px #0006}
.back-to-top[hidden]{display:none}
@media(max-width:700px){.navigation-shell .site-header{padding:10px 5%;gap:9px;min-height:0}.navigation-shell .division-nav{padding:9px 5%;gap:14px;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;font-size:11px}.navigation-shell .division-nav>span{display:none}.dashboard>.sector-bar{padding:10px 0;gap:7px}.dashboard>.sector-bar nav,.dashboard #privateSectorTabs{flex-wrap:nowrap;overflow-x:auto;min-width:0;scrollbar-width:thin}.sector-bar .tab{flex-shrink:0}.back-to-top{right:14px;bottom:14px}}
.pick-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:7px 0}.pick-price strong{font:700 21px var(--sans);color:var(--txt)}.pick-price span{font:10px var(--mono);color:var(--dim)}
.access-login{max-width:650px!important;margin:10vh auto!important}.access-form{display:grid;gap:12px;max-width:440px;margin:24px 0}.access-form input,.issued-token{width:100%;background:var(--panel);color:var(--txt);border:1px solid var(--line);padding:12px;border-radius:6px}.issued-token{font:13px var(--mono);margin-top:12px}.access-list{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
