@font-face{font-family:Roboto;src:url('/fonts/Roboto-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Roboto;src:url('/fonts/Roboto-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Roboto;src:url('/fonts/Roboto-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Roboto;src:url('/fonts/Roboto-Black.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}*{box-sizing:border-box}body{margin:0;background:#0d1117;color:#dce3ed;font:14px/1.45 Roboto,Arial,sans-serif}header{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 26px;border-bottom:1px solid #252c36;background:#111720;position:sticky;top:0;z-index:5}.brand{font-weight:900;font-size:20px;letter-spacing:.3px}.brand small{font-size:11px;color:#7f8b9c;margin-left:5px}nav{display:flex;gap:8px}a{color:#9bc4ff;text-decoration:none}nav a{padding:9px 12px;border-radius:8px;color:#c8d2df}nav a:hover{background:#1b2532}main{max-width:1500px;margin:auto;padding:26px}.hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.hero h1,h1{margin:0 0 8px;font-size:28px}.hero p{max-width:850px;color:#95a2b2}.kpi{background:#151d28;border:1px solid #283342;padding:12px 16px;border-radius:12px;min-width:130px}.kpi span,.kpi b{display:block}.kpi span{color:#8390a0;font-size:11px}.kpi b{font-size:22px}.filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:20px 0}.filters label,.stack label{display:grid;gap:5px;color:#8f9baa;font-size:12px}input,select,button{background:#111820;color:#e7edf5;border:1px solid #303b49;border-radius:8px;padding:9px 10px;font:inherit}button{cursor:pointer;background:#2769d7;border-color:#3479ea;font-weight:700}.ghost{background:transparent;border-color:#394557;color:#aab7c6;padding:5px 7px;margin-top:5px}.table-wrap{overflow:auto;border:1px solid #252f3b;border-radius:12px;background:#111720}table{width:100%;border-collapse:collapse;min-width:950px}th,td{padding:11px 12px;border-bottom:1px solid #222c37;text-align:left;vertical-align:top}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#7f8c9c;background:#121a24;position:sticky;top:0}td small{display:block;color:#718092;font-size:11px;margin-top:3px;max-width:450px}.badge{display:inline-block;border:1px solid;padding:4px 7px;border-radius:999px;font-size:11px;font-weight:800}.b-buy{color:#75e29b;border-color:#2c7950;background:#143523}.b-lead{color:#8ec5ff;border-color:#346596;background:#142b42}.b-watch{color:#f0cf75;border-color:#756129;background:#332b13}.b-pass{color:#8c99aa;border-color:#485260}.pos{color:#6ed994}.neg{color:#ec8585}.empty{text-align:center;color:#7f8c9c;padding:40px}.inline{display:inline}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.card{background:#111720;border:1px solid #28323e;border-radius:12px;padding:18px}.card h2{margin-top:0}.stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stack button{align-self:end}.closeform{display:flex;gap:5px;min-width:420px}.closeform input{width:110px}code{background:#0c1118;padding:3px 5px;border-radius:5px;color:#c9d6e6}footer{max-width:1500px;margin:auto;padding:20px 26px 40px;color:#647386}@media(max-width:800px){header{height:auto;align-items:flex-start;flex-direction:column;padding:14px 16px;gap:10px}nav{overflow:auto;width:100%}main{padding:18px 12px}.hero{display:block}.kpi{margin-top:12px}.grid2{grid-template-columns:1fr}.stack{grid-template-columns:1fr}.filters label{flex:1 1 130px}}
.b-candidate{color:#75e29b;border-color:#2c7950;background:#143523}.b-verify{color:#ffb86b;border-color:#8a5721;background:#38230f}.notice{margin:12px 0 18px;padding:11px 13px;border:1px solid #364454;border-radius:10px;background:#121b25;color:#aeb9c7}.feeform{border:1px solid #28323e;border-radius:10px;padding:14px}.feeform h3{margin:0 0 4px}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important}.check input{width:auto}ul{padding-left:20px;color:#aeb9c7}
.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0}.metric{background:#111720;border:1px solid #28323e;border-radius:12px;padding:14px}.metric span,.metric small{display:block;color:#7f8c9c;font-size:11px}.metric b{display:block;font-size:20px;margin:5px 0}.portfolio-table{min-width:1500px}.mini-badge{display:inline-block;margin:2px 3px 2px 0;padding:3px 6px;border-radius:999px;border:1px solid #49566a;color:#cbd5e1;font-size:10px}.muted{color:#7f8c9c}.section-gap{margin-top:28px}.top-gap{margin-top:14px}.ghost2{background:#182230;border-color:#3a4656}.price-chart{width:100%;height:auto;min-height:220px;background:#0d141d;border-radius:10px}.chart-axis{stroke:#384455;stroke-width:1}.chart-ref{stroke:#718096;stroke-width:1}.chart-line{stroke:#69a7ff;stroke-width:2.4;vector-effect:non-scaling-stroke}.chart-label{fill:#78879a;font-size:11px}.chart-empty{padding:70px 20px;text-align:center;background:#0d141d;border-radius:10px;color:#728095}.chart-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;color:#8795a6;font-size:11px}.snapshot-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.snapshot-grid>div{background:#0e151e;border:1px solid #263241;border-radius:9px;padding:10px}.snapshot-grid span,.snapshot-grid b{display:block}.snapshot-grid span{font-size:10px;color:#758398}.snapshot-grid b{font-size:17px;margin-top:4px}.kpi small{display:block;color:#738196;font-size:11px;margin-top:4px}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.kpi-grid,.snapshot-grid{grid-template-columns:1fr}.metric b{font-size:18px}}
/* R0.5.6 source-recovery & market-safety UI */
:root{--bg:#0b0f14;--panel:#111821;--panel2:#0e151d;--line:#273342;--text:#e5ebf3;--muted:#8190a2;--blue:#5597ff;--green:#67d892;--amber:#e7c266;--red:#e57e7e}
body{background:radial-gradient(circle at 20% -10%,#142239 0,#0b0f14 34%,#0b0f14 100%)}
.brandmark{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:7px;border-radius:9px;background:#2b6fdb;color:#fff;font-weight:900;font-size:15px}.brand{display:flex;align-items:center}.brand small{font-weight:500}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700;color:#6e9fe4;margin-bottom:6px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.page-head h1,.page-head h2{margin:0 0 5px}.page-head p{margin:0;color:var(--muted)}.flash{padding:11px 14px;border-radius:10px;margin-bottom:17px;border:1px solid}.flash-ok{background:#10291b;border-color:#235b3a;color:#91e5ad}.flash-err{background:#321718;border-color:#713436;color:#f1a4a4}
.item-link{color:#dce9fa;font-weight:700}.tags{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0}.tags span{font-size:10px;color:#9eb0c4;background:#182332;border:1px solid #2c3b4e;border-radius:999px;padding:2px 6px}.screen-table{min-width:1500px}.score-big{font-size:28px;font-weight:900;line-height:1;color:#eaf2ff}.score-parts{display:flex;gap:3px;flex-wrap:wrap;margin-top:7px}.score-parts span{font-size:9px;padding:2px 4px;border:1px solid #334154;border-radius:5px;color:#9db0c6}.reason-list{display:grid;gap:3px;margin-top:7px;max-width:260px}.reason-list span{font-size:10px;line-height:1.25;color:#95a4b6}.meter{height:4px;background:#202a36;border-radius:999px;overflow:hidden;margin-top:8px}.meter i{display:block;height:100%;background:#4e91f0;border-radius:999px}.action-stack{display:grid;gap:6px;min-width:130px}.action-stack form{margin:0}.action-stack details{font-size:11px}.action-stack summary{cursor:pointer;color:#9bc4ff}.btn-secondary,.btn-quiet{display:inline-block;text-align:center;border-radius:8px;padding:7px 9px;border:1px solid #354456;background:#17202b;color:#bcd1ea;font-weight:700;font-size:12px}.btn-quiet{width:100%;cursor:pointer}.compact{grid-template-columns:1fr 1fr;min-width:270px;padding:8px 0}.compact button{grid-column:1/-1}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.form-grid label{display:grid;gap:5px;color:#8f9baa;font-size:12px}.form-grid .wide{grid-column:span 3}.form-grid button{align-self:end}.wide{grid-column:1/-1}.analysis-row{padding:11px 0;border-bottom:1px solid #23303d}.analysis-row:last-child{border-bottom:0}.analysis-row>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:4px}.analysis-row small{display:block;color:#8291a4}.warning{background:#241b14;border:1px solid #674b2d;border-radius:9px;padding:10px 12px;margin:8px 0}.warning p{margin:5px 0 0;color:#c9ad90}.small-metric{min-width:125px;padding:10px 14px}.small-metric b{font-size:20px}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.feature-grid>div{padding:13px;background:#0e151e;border:1px solid #263343;border-radius:10px}.feature-grid b,.feature-grid span{display:block}.feature-grid span{color:#7e8d9f;font-size:11px;margin-top:4px}textarea{width:100%;background:#0e151d;color:#dfe7f0;border:1px solid #303b49;border-radius:8px;padding:10px;font:12px/1.45 Roboto,monospace;resize:vertical}hr{border:0;border-top:1px solid #283441;margin:18px 0}.b-locked{color:#ffb86b;border-color:#8a5721;background:#38230f}details{color:#a5b3c4}details[open]>summary{margin-bottom:7px}
@media(max-width:1200px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .wide{grid-column:1/-1}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.form-grid,.feature-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.page-head{display:block}.page-head>.btn-secondary{margin-top:10px}.screen-table{min-width:1300px}}
.login-wrap{max-width:560px;margin:8vh auto;padding:20px}.login-card{padding:28px}.login-brand{margin-bottom:24px}.login-card h1{font-size:26px}.login-card .stack{grid-template-columns:1fr}.login-card button{width:100%}
/* R0.5 shared-hosting control polish */
nav{flex-wrap:wrap;justify-content:flex-end}
header{height:auto;min-height:64px}
.job-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.job-buttons form{margin:0}
.job-buttons .btn-quiet{width:auto;min-width:110px}
.regime-risk-off{color:#ee8f8f}.regime-neutral{color:#b5c0ce}.regime-risk-on{color:#72dc9a}.regime-unknown{color:#d6bd77}
@media(max-width:800px){nav{flex-wrap:nowrap;justify-content:flex-start}header{min-height:0}}

/* R0.6.7 safe one-click updater */
.smart-update{margin:18px 0;padding:16px;border:1px solid #2a3442;border-radius:14px;background:#0e151d}
.smart-update-head{display:flex;gap:18px;align-items:flex-start;justify-content:space-between}.smart-update-head h3{margin:0 0 5px}.smart-update-head p{margin:0;max-width:720px}.smart-update-actions{display:flex;gap:8px;flex:0 0 auto}
.progress-track{height:12px;background:#1a2430;border:1px solid #2c3949;border-radius:999px;overflow:hidden;margin-top:15px}.progress-fill{height:100%;background:linear-gradient(90deg,#4d90fe,#71b7ff);transition:width .25s ease}
.progress-meta{display:flex;gap:12px;align-items:center;margin-top:9px}.progress-meta b{min-width:42px}.smart-update-sub{margin-top:5px;color:#96a2b2;font-size:13px}.smart-update-log{margin-top:9px;min-height:22px;font-size:13px;color:#bdc8d6}.warning-line{color:#e6b86a;margin-top:3px}
@media(max-width:760px){.smart-update-head{display:block}.smart-update-actions{margin-top:12px}.smart-update-actions button{flex:1}}

/* =========================================================
   R0.8.0 · Investment Intelligence interface
   Dense investment-terminal information hierarchy without CDN.
   ========================================================= */
:root{
 --inv-bg:#071018;--inv-panel:#0d1721;--inv-panel-2:#101d29;--inv-panel-3:#132331;
 --inv-line:#213446;--inv-line-soft:#182938;--inv-text:#edf5fb;--inv-muted:#8395a8;
 --inv-cyan:#58c7e8;--inv-blue:#6f9cff;--inv-green:#5ed092;--inv-amber:#e2b965;--inv-red:#e4777d;
 --inv-glow:0 18px 48px rgba(0,0,0,.22);
}
body{background:radial-gradient(950px 520px at 15% -5%,rgba(35,86,116,.18),transparent 55%),radial-gradient(850px 500px at 100% 0,rgba(58,82,151,.12),transparent 58%),#071018;color:var(--inv-text)}
.app-header{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(180px,1fr);align-items:center;gap:22px;min-height:72px;padding:11px max(22px,calc((100vw - 1540px)/2));border-bottom:1px solid rgba(96,128,153,.18);background:rgba(7,16,24,.92);backdrop-filter:blur(16px)}
.app-header .brand{text-decoration:none;color:var(--inv-text);gap:9px}.app-header .brand>span:last-child{display:grid}.app-header .brand b{font-size:17px;letter-spacing:.01em}.app-header .brand small{color:#6f8498;font-size:10px;margin:0;font-weight:600;letter-spacing:.025em}.app-header .brandmark{background:linear-gradient(145deg,#317ea3,#4d6fde);box-shadow:0 7px 22px rgba(69,125,190,.22)}
.primary-nav{display:flex;gap:3px;justify-content:center;flex-wrap:nowrap}.primary-nav a,.header-tools a{display:block;color:#8ca0b5;text-decoration:none;font-size:12px;font-weight:700;border-radius:8px;padding:9px 11px;transition:.15s}.primary-nav a:hover,.header-tools a:hover{color:#dce9f4;background:#101d28}.primary-nav a.active{color:#f3f9fc;background:#142536;box-shadow:inset 0 0 0 1px #27465e}.header-tools{display:flex;justify-content:flex-end;gap:4px}.header-tools .icon-link{font-size:11px}
.app-main{max-width:1540px;margin:0 auto;padding:28px 24px 56px}.app-main>.flash{box-shadow:var(--inv-glow)}
.invest-hero,.model-hero{display:grid;grid-template-columns:minmax(0,1.7fr) 260px;gap:24px;align-items:stretch;margin:3px 0 18px;padding:25px 27px;border:1px solid #20384b;border-radius:18px;background:linear-gradient(135deg,rgba(16,35,49,.96),rgba(9,21,31,.98));box-shadow:var(--inv-glow);position:relative;overflow:hidden}.invest-hero:after,.model-hero:after{content:"";position:absolute;width:380px;height:380px;right:-180px;top:-210px;border-radius:50%;background:radial-gradient(circle,rgba(82,181,218,.12),transparent 65%);pointer-events:none}.invest-hero h1,.model-hero h1{font-size:34px;line-height:1.09;letter-spacing:-.026em;margin:7px 0 11px;max-width:920px}.invest-hero p,.model-hero p{color:#9db0c1;font-size:14px;line-height:1.65;max-width:920px;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}.hero-actions form{margin:0}.primary-cta{padding:10px 14px;background:linear-gradient(135deg,#287ca5,#436fd5);border-color:#538fc7;box-shadow:0 7px 20px rgba(51,107,170,.2)}
.invest-hero-score,.model-version{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-left:1px solid rgba(115,155,182,.16);min-height:180px}.invest-hero-score>span,.model-version span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#7790a4;font-weight:800}.invest-hero-score>b{font-size:62px;line-height:.95;margin:9px 0 8px;letter-spacing:-.04em}.invest-hero-score small,.model-version small{color:#72869b}.score-orbit{position:absolute;width:152px;height:152px;border:1px solid rgba(75,138,175,.14);border-radius:50%;pointer-events:none}.score-orbit:before{content:"";position:absolute;inset:9px;border:1px dashed rgba(84,148,185,.17);border-radius:50%}.model-version b{font-size:15px;margin:10px 0;padding:8px 10px;border:1px solid #264257;background:#0a1722;border-radius:7px;color:#a9def2}
.invest-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:14px 0}.invest-kpi{min-height:100px;padding:13px 14px;background:linear-gradient(180deg,#0e1a25,#0b151e);border:1px solid var(--inv-line);border-radius:12px}.invest-kpi.strong{border-color:#2b5f58;background:linear-gradient(180deg,#11241f,#0d191a)}.invest-kpi span,.invest-kpi small{display:block}.invest-kpi>span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#71889c;font-weight:700}.invest-kpi>b{display:block;margin:7px 0 4px;font-size:22px;line-height:1.06;letter-spacing:-.025em}.invest-kpi small{font-size:10px;color:#6f8193;line-height:1.35}.invest-kpi .route-name{font-size:13px;line-height:1.35}
.model-strip,.model-protocol,.fee-policy{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:14px 0 17px;border:1px solid #213444;background:#213444;border-radius:12px;overflow:hidden}.model-strip>div,.model-protocol>div,.fee-policy>div{padding:13px 14px;background:#0c1721}.model-strip b,.model-strip span,.model-protocol b,.model-protocol span,.fee-policy b,.fee-policy span,.fee-policy small{display:block}.model-strip b,.model-protocol b{font-size:12px;margin-bottom:4px}.model-strip span,.model-protocol span{font-size:10px;color:#788da0;line-height:1.45}.fee-policy>div{text-align:center}.fee-policy span{font-size:24px;font-weight:900;margin:4px 0;color:#dcecf5}.fee-policy small{font-size:10px;color:#758a9e}
.invest-filters{display:grid;grid-template-columns:1.1fr 1fr 1.4fr repeat(5,minmax(95px,.7fr)) auto;gap:7px;align-items:end;padding:10px;margin:14px 0;background:#0b151f;border:1px solid #1f3344;border-radius:12px}.invest-filters label{font-size:9px;letter-spacing:.045em;text-transform:uppercase;color:#6f8498;font-weight:800}.invest-filters input,.invest-filters select{margin-top:5px;min-height:35px;padding:7px 8px;font-size:11px;background:#08121a;border-color:#263a4b}.invest-filters button{min-height:35px;padding:8px 11px}
.invest-table-wrap{overflow:auto;border:1px solid #213548;border-radius:14px;background:#09131c;box-shadow:var(--inv-glow)}.invest-table{min-width:1470px}.invest-table th{background:#0c1822;color:#61788c;font-size:9px;letter-spacing:.085em;padding:10px 11px}.invest-table td{padding:13px 11px;border-color:#172837}.invest-row{background:#0b151e}.invest-row:hover{background:#0e1b26}.invest-row.status-candidate{box-shadow:inset 3px 0 #4ebe87}.invest-row.status-verify{box-shadow:inset 3px 0 #d4a74d}.invest-row.status-watch{box-shadow:inset 3px 0 #527ba7}.asset-name{display:block;font-size:13px;font-weight:800;color:#e2eef7;text-decoration:none;max-width:260px}.asset-name:hover{color:#7fd3ef}.asset-meta,.market-confirm{font-size:10px;color:#6f8395;margin-top:4px}.market-confirm b{color:#acc5d7}.invest-score{display:flex;align-items:baseline;gap:2px}.invest-score b{font-size:28px;line-height:1;font-weight:900}.invest-score span{font-size:10px;color:#6f8495}.hero-score b{font-size:38px}.signal-chip{display:inline-block;margin-top:7px;padding:3px 6px;border-radius:5px;font-size:9px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;border:1px solid}.signal-candidate{color:#78e2a2;background:#102b20;border-color:#275f45}.signal-verify{color:#f3c978;background:#302711;border-color:#665121}.signal-watch{color:#94bae2;background:#13263a;border-color:#2e5578}.signal-pass{color:#8392a0;background:#141c23;border-color:#33404b}.roi-main{font-size:21px;font-weight:900;letter-spacing:-.02em}.horizon-grid{display:grid;grid-template-columns:repeat(3,minmax(82px,1fr));gap:5px}.horizon-box{padding:7px;border:1px solid #203241;border-radius:8px;background:#09131c}.horizon-box.best{border-color:#3e7188;background:#0d202a}.horizon-box span,.horizon-box small{display:block}.horizon-box span{font-size:9px;color:#70869a;font-weight:800}.horizon-box b{display:block;font-size:14px;margin:2px 0}.horizon-box small{font-size:8px;color:#687b8d;white-space:nowrap}.probability{display:flex;align-items:center;gap:8px}.probability>span{position:relative;display:block;width:74px;height:5px;background:#1d2c38;border-radius:10px;overflow:hidden}.probability i{display:block;height:100%;background:linear-gradient(90deg,#5779d5,#5dc28c)}.probability b{font-size:12px}.risk-stats{display:flex;gap:4px;flex-wrap:wrap;margin:7px 0 3px}.risk-stats span{font-size:8px;color:#8fa1b2;padding:2px 4px;border:1px solid #2a3b4a;border-radius:4px}.invest-reasons{max-width:245px}.invest-reasons span{padding-left:9px;position:relative}.invest-reasons span:before{content:"";position:absolute;left:0;top:.48em;width:3px;height:3px;border-radius:50%;background:#5695b6}.methodology-note{margin:14px 0;padding:13px 15px;border:1px solid #1f3343;border-radius:10px;background:#0a151e;color:#7f94a7;font-size:11px;line-height:1.55}.methodology-note b{color:#aec5d6}
.model-hero{grid-template-columns:minmax(0,1.6fr) 300px}.model-hero h1{font-size:30px}.accuracy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.accuracy-card{padding:16px;background:#0c1721;border:1px solid #203447;border-radius:13px}.accuracy-card>div{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #1d2d3a;padding-bottom:10px;margin-bottom:9px}.accuracy-card>div span{font-size:14px;font-weight:900}.accuracy-card>div b{font-size:10px;color:#758a9e}.accuracy-card dl{display:grid;grid-template-columns:1fr auto;gap:7px 14px;margin:0}.accuracy-card dt{color:#71879a;font-size:10px}.accuracy-card dd{margin:0;font-size:11px;font-weight:800}.section-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:12px}.section-title-row h2{margin:2px 0}.section-title-row p{margin:0;max-width:600px;text-align:right}.score-bucket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.score-bucket-grid h3{font-size:12px;color:#8ba3b5;margin:0 0 7px}.prediction-table{min-width:1200px}.model-protocol{grid-template-columns:repeat(5,1fr);margin-top:18px}.forecast-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.forecast-card{padding:14px;background:#0a151e;border:1px solid #213445;border-radius:11px}.forecast-card.selected{border-color:#3b738b;background:#0c202a}.forecast-card>span{font-size:10px;color:#73899c;text-transform:uppercase;font-weight:800}.forecast-card>b{display:block;font-size:24px;margin:5px 0}.forecast-card>div{display:flex;gap:12px}.forecast-card small{color:#768a9d;font-size:10px}.forecast-card em{display:block;font-style:normal;margin-top:8px;font-size:10px;color:#a1b8c8}.prediction-history{margin-top:12px}.effective-fee{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 10px}.effective-fee span{padding:3px 6px;border:1px solid #2c4152;border-radius:5px;font-size:9px;color:#839aab}.effective-fee b{color:#c8dbe7}.detail-kpis{grid-template-columns:repeat(6,1fr)}
/* Keep legacy tools visually subordinate to the investment surface. */
.card,.table-wrap{box-shadow:none}.card{background:linear-gradient(180deg,#0d1721,#0b151e);border-color:#203344}.hero{border:1px solid #203344;border-radius:15px;padding:21px;background:linear-gradient(135deg,#0f1d29,#0b151f);margin-bottom:16px}.hero h1{font-size:28px}.filters{border:1px solid #203344;background:#0b151f;border-radius:11px;padding:10px}.btn-secondary{background:#101e2a;border-color:#29445a;color:#b8d2e3}.btn-secondary:hover{border-color:#3f6781;color:#e1f1f8}.pos{color:#65d799!important}.neg{color:#e98288!important}.badge{border-radius:5px}.metric{background:#0c1721;border-color:#203344}.table-wrap{border-color:#203344;background:#09131c}table th{background:#0c1721}.smart-update{background:#09151e;border-color:#203547}.feeform{background:#0b151e;border-color:#203547}
@media(max-width:1280px){.app-header{grid-template-columns:1fr auto}.primary-nav{grid-row:2;grid-column:1/-1;justify-content:flex-start;overflow:auto}.header-tools{grid-column:2}.invest-kpi-grid{grid-template-columns:repeat(3,1fr)}.invest-filters{grid-template-columns:repeat(4,1fr)}.score-bucket-grid{grid-template-columns:1fr}.model-protocol{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.app-main{padding:18px 12px 40px}.app-header{position:relative;display:flex;flex-wrap:wrap;padding:11px 12px}.app-header .brand{flex:1}.primary-nav{order:3;width:100%;overflow:auto;justify-content:flex-start}.header-tools{display:none}.invest-hero,.model-hero{grid-template-columns:1fr;padding:19px}.invest-hero h1,.model-hero h1{font-size:26px}.invest-hero-score,.model-version{border-left:0;border-top:1px solid rgba(115,155,182,.16);padding-top:18px;min-height:130px}.score-orbit{display:none}.invest-kpi-grid,.detail-kpis{grid-template-columns:repeat(2,1fr)}.model-strip,.fee-policy{grid-template-columns:repeat(2,1fr)}.invest-filters{grid-template-columns:repeat(2,1fr)}.accuracy-grid,.forecast-cards{grid-template-columns:1fr}.model-protocol{grid-template-columns:1fr 1fr}.section-title-row{display:block}.section-title-row p{text-align:left;margin-top:6px}}
@media(max-width:520px){.invest-kpi-grid,.detail-kpis,.model-strip,.fee-policy,.invest-filters,.model-protocol{grid-template-columns:1fr}.invest-hero h1,.model-hero h1{font-size:23px}.invest-hero-score>b{font-size:48px}}

/* R0.8.2 · resumable Investment Score runner */
.investment-run-panel{margin:18px 0 20px;padding:20px 22px;border:1px solid #273547;border-radius:16px;background:linear-gradient(180deg,#111b28 0%,#0e1621 100%);box-shadow:0 16px 40px rgba(0,0,0,.14)}
.investment-run-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.investment-run-head h2{margin:3px 0 6px;font-size:20px}.investment-run-head p{margin:0;max-width:860px;color:#91a0b3}.run-state-pill{flex:0 0 auto;padding:7px 11px;border-radius:999px;background:#172334;border:1px solid #304258;color:#aab8ca;font-size:12px;font-weight:700;letter-spacing:.03em}.run-state-pill[data-state="running"]{background:#102a21;border-color:#1e5745;color:#85dbbd}.run-state-pill[data-state="done"]{background:#122d20;border-color:#2b6448;color:#91e2ad}.run-state-pill[data-state="error"]{background:#321b1d;border-color:#663238;color:#efaaaa}
.invest-progress{height:11px;margin-top:18px;border-radius:999px;overflow:hidden;background:#0a1119;border:1px solid #202d3d}.invest-progress-fill{height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#3b70ff,#36c8a1);transition:width .3s ease}.invest-progress-row{display:flex;align-items:center;gap:14px;margin-top:10px;color:#9aa9ba;font-size:13px}.invest-progress-row b{min-width:44px;color:#f2f6fb;font-size:16px}.invest-progress-row span:last-child{margin-left:auto}.invest-run-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.invest-run-stats>div{padding:12px 14px;border-radius:11px;background:#0b131d;border:1px solid #202e3e}.invest-run-stats span{display:block;color:#7f90a5;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.invest-run-stats b{display:block;margin-top:3px;font-size:17px}.invest-run-message{margin-top:12px;padding:10px 12px;border-radius:10px;background:#0b121b;color:#a8b5c5;font-size:13px;min-height:40px}
@media(max-width:760px){.investment-run-head{display:block}.run-state-pill{display:inline-block;margin-top:12px}.invest-run-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.invest-progress-row{flex-wrap:wrap}.invest-progress-row span:last-child{margin-left:0;width:100%}}

.invest-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:8px 0 10px;padding:10px 12px;border:1px solid #1f3344;border-radius:11px;background:#0a151e;color:#8195a6}.invest-results-toolbar>div{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.invest-results-toolbar b{color:#d9e8f3;font-size:12px}.invest-results-toolbar span{font-size:10px}.invest-results-toolbar-bottom{margin:10px 0 0}.invest-pager{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.invest-pager a,.invest-pager .pager-current{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 9px;border:1px solid #263b4d;border-radius:7px;background:#09131c;color:#8fa9bc;text-decoration:none;font-size:10px;font-weight:800}.invest-pager a:hover{border-color:#47708c;color:#dcecf6}.invest-pager a.active{background:#173044;border-color:#4a7d9a;color:#e8f5fb}.invest-pager>span:not(.pager-current){padding:0 3px;color:#607487}.invest-pager .pager-current{min-width:auto;background:#0d1c27;color:#afc5d4}.invest-render-note{font-size:10px;color:#70869a}

/* R0.9.1 · Freshness Pipeline */
.investment-audit{margin-top:18px;padding:18px;border:1px solid rgba(134,168,207,.22);border-radius:16px;background:linear-gradient(180deg,rgba(18,27,38,.86),rgba(13,20,29,.72))}.audit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.audit-grid>div{padding:12px;border:1px solid rgba(134,168,207,.16);border-radius:12px;background:rgba(255,255,255,.018)}.audit-grid span,.audit-grid small{display:block;color:var(--muted,#8e9baa);font-size:12px}.audit-grid b{display:block;font-size:18px;margin:4px 0}.audit-components{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.audit-components span{padding:7px 9px;border-radius:999px;background:rgba(119,151,186,.10);border:1px solid rgba(119,151,186,.18);font-size:12px}.gate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:14px 0}.gate-grid span{padding:8px 10px;border-radius:9px;font-size:11px;border:1px solid transparent}.gate-pass{background:rgba(62,187,116,.08);border-color:rgba(62,187,116,.22)!important;color:#9fd9b4}.gate-fail{background:rgba(232,95,95,.08);border-color:rgba(232,95,95,.22)!important;color:#f0a3a3}.audit-note{margin-top:12px}.model-guardrails{margin-bottom:16px}.model-guardrails .feature-grid>div{min-height:92px}.invest-kpi small{line-height:1.35}
@media(max-width:1100px){.audit-grid,.gate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.audit-grid,.gate-grid{grid-template-columns:1fr}.investment-audit{padding:13px}}
.current-model-row{background:rgba(77,140,255,.07)}
.current-model-row td:first-child{border-left:2px solid rgba(108,167,255,.72)}

/* R0.9.1 Freshness Pipeline */
.freshness-panel{margin:0 0 16px}.freshness-overall{align-self:flex-start;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.05em}.fresh-ok{background:#102b20;border:1px solid #2d684c;color:#78dba4}.fresh-warn{background:#302710;border:1px solid #665322;color:#edc873}.freshness-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:14px}.freshness-source{padding:10px 11px;border:1px solid #263746;border-radius:10px;background:#0b151e}.freshness-source span,.freshness-source small{display:block}.freshness-source span{font-size:10px;color:var(--muted)}.freshness-source b{display:block;margin:3px 0;font-size:13px}.freshness-source small{font-size:9px;color:#8094a5}.freshness-source.state-fresh{border-color:#285b43;background:#0c1d17}.freshness-source.state-fresh b{color:#72d99c}.freshness-source.state-aging{border-color:#5a4921;background:#211c0f}.freshness-source.state-aging b{color:#e8c06e}.freshness-source.state-stale,.freshness-source.state-expired{border-color:#653039;background:#28161a}.freshness-source.state-stale b,.freshness-source.state-expired b{color:#eb9298}.freshness-note{margin-top:10px;padding:9px 11px;border:1px dashed #304658;border-radius:9px;color:#9db0bf;font-size:11px}@media(max-width:1000px){.freshness-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.freshness-grid{grid-template-columns:1fr 1fr}}
