
:root{color-scheme:light dark;--bg:#f3f5f2;--surface:#fff;--elevated:#edf2ee;--text:#172b24;--muted:#627169;--border:#dce5df;--accent:#22694c;--accent-ink:#fff;--soft:#e5f0e9;--warning:#8a5616;--danger:#a53e39;--backdrop:#0008;--radius:1.1rem;--gap:.8rem;--page-title:1.35rem;--section-title:.94rem;--body:.9rem;--caption:.73rem;--numeric:1.04rem;--display:1.95rem;--nav-height:4.2rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.5}
@media(prefers-color-scheme:dark){:root{--bg:#0d1713;--surface:#15241d;--elevated:#1b3025;--text:#edf3ee;--muted:#a3b8aa;--border:#2a4034;--accent:#92d7af;--accent-ink:#10231a;--soft:#213f2e;--warning:#e8bc77;--danger:#efaaa1}}
*{box-sizing:border-box}html{scroll-padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-size:var(--body)}h1,h2,h3,p{margin:0}h1{font-size:var(--page-title);font-weight:700;letter-spacing:-.03em;line-height:1.3}h2{font-size:var(--section-title);font-weight:650;line-height:1.4}h3{font-size:var(--body);font-weight:650}p{overflow-wrap:anywhere}button,input,select,textarea{font:inherit;min-height:44px;border:1px solid var(--border);border-radius:.7rem;padding:.65rem .8rem;background:var(--surface);color:var(--text);max-width:100%;min-width:0}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:650}a{color:var(--accent);text-underline-offset:.2em}input,select,textarea{font-size:1rem}small,.muted,.caption{color:var(--muted)}.caption{font-size:var(--caption);line-height:1.5}.numeric{font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}.accent{color:var(--accent)}.pending{color:var(--warning)}.error{color:var(--danger);padding:.8rem}
.app-shell{width:min(100%,46rem);margin:auto;padding:max(.9rem,env(safe-area-inset-top)) 1rem calc(var(--nav-height) + env(safe-area-inset-bottom) + 1.5rem)}.app-header{padding:.1rem 0 1.25rem}.environment{font-size:.65rem;letter-spacing:.04em;margin-top:.25rem}.page-content{display:grid;gap:var(--gap);min-width:0}.page-content>h1{margin:.3rem 0 .5rem}.card{background:var(--surface);border-radius:var(--radius);padding:1rem;min-width:0}.card>h2{margin-bottom:.75rem}.row,.section-heading{display:flex;justify-content:space-between;align-items:center;gap:.5rem;min-width:0}.section-heading{margin-bottom:.75rem}.text-button,.back-button{background:none;border:0;padding:0;color:var(--accent);font-size:var(--caption);font-weight:550}.text-button{margin:-.5rem 0;flex-shrink:0}.back-button{text-align:left;justify-self:start;font-size:var(--body)}.badge{display:inline-flex;background:var(--soft);color:var(--accent);padding:.2rem .5rem;border-radius:.4rem;font-size:.67rem;line-height:1.4;max-width:100%;flex-shrink:0}.badge.pending{background:var(--elevated);color:var(--warning)}
.decision-card{background:var(--elevated);padding:1.25rem}.decision-heading{display:grid;gap:.25rem;margin-bottom:1rem}.decision-heading .decision{font-size:var(--display);color:var(--accent);letter-spacing:-.035em;line-height:1.25}.decision-price-grid{display:grid;grid-template-columns:1.1fr .8fr 1.1fr;gap:.5rem;margin-bottom:1rem}.metric{display:grid;gap:.25rem;min-width:0}.metric strong{font-size:var(--numeric);font-weight:650}.decision-price-grid .metric strong{font-size:clamp(1rem,4.8vw,1.17rem)}.next-tier{padding:.75rem 0;border-top:1px solid var(--border);display:grid;gap:.5rem}.next-tier>.row strong{font-size:var(--numeric)}.metric-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-size:var(--body);min-width:0}.metric-row strong{font-size:var(--body);font-weight:550;white-space:normal;text-align:right}.quote-freshness{margin-top:.55rem;font-size:.66rem}.quote-freshness span{display:inline}.hero-link{width:100%;margin-top:.75rem;background:var(--soft);color:var(--accent);border:0;font-weight:650;font-size:var(--body)}
.money-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.pool-summary{padding:.75rem 0}.pool-summary+.pool-summary{border-top:1px solid var(--border)}.pool-summary>.row{margin-bottom:.5rem}.pool-summary progress{width:100%;height:.25rem;accent-color:var(--accent);border:0;display:block;margin-top:.75rem}.pool-summary .caption{margin-top:.25rem}.pool-summary .metric .caption{margin:0}.pool-summary .metric strong{font-size:1rem}
.candidate-section{padding-bottom:0}.candidate-row{border:0;border-radius:0;width:100%;background:none;padding:1rem 0;display:grid;gap:.5rem;text-align:left;color:var(--text);white-space:normal;min-height:44px}.candidate-row+.candidate-row{border-top:1px solid var(--border)}.candidate-heading{display:flex;align-items:center;gap:.5rem;min-width:0}.candidate-heading>div{flex:1;min-width:0}.ticker{font-size:1.12rem;letter-spacing:.01em}.rank{color:var(--muted);font-size:var(--caption);width:1.4rem;flex-shrink:0}.company{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.candidate-prices .metric strong{font-size:.88rem}.candidate-row .body-copy{font-size:.84rem;line-height:1.5}.candidate-row .quote-freshness{margin:0}.body-copy{line-height:1.65;white-space:pre-line;overflow-wrap:anywhere}.empty{color:var(--muted);font-size:var(--body);line-height:1.6;padding:.5rem 0}.change-row{padding:.6rem 0}.change-row+.change-row{border-top:1px solid var(--border)}.change-row strong{font-size:.83rem}.change-row .body-copy{font-size:.8rem;color:var(--muted);margin-top:.25rem}
.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:.2rem max(.5rem,env(safe-area-inset-right)) max(.2rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--border);z-index:10;min-height:calc(var(--nav-height) + env(safe-area-inset-bottom))}.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;background:none;border:0;padding:.25rem;min-height:56px;font-size:.7rem;color:var(--muted);white-space:nowrap}.bottom-nav .active{color:var(--accent);font-weight:650}.nav-icon{font-size:1.35rem;line-height:1.3;font-weight:500}
.asset-title{font-size:2rem;line-height:1.2}.detail-conclusion{padding:.5rem .1rem}.detail-conclusion>.caption{margin:.65rem 0}.detail-conclusion .body-copy{font-size:.98rem}.zone-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--border)}.zone-price{font-size:1.35rem}.zone-row h3{color:var(--accent);margin-bottom:.2rem}.card>.body-copy{margin:.5rem 0}.scenario-row,.evidence-row,.journal-row,.exit-row{padding:.75rem 0}.scenario-row+.scenario-row,.evidence-row+.evidence-row,.journal-row+.journal-row,.exit-row+.exit-row{border-top:1px solid var(--border)}.scenario-row h3,.journal-row h3{margin-bottom:.35rem}.invalidation{border-left:3px solid var(--warning)}.invalidation h2{color:var(--warning)}
.ladder-list{display:grid;gap:.55rem}.tier{background:var(--surface);border-radius:var(--radius);padding:.85rem 1rem;border:1px solid transparent}.tier.next{border-color:var(--accent)}.tier.completed{background:var(--elevated)}.tier-heading{display:grid;grid-template-columns:3.1rem minmax(0,1fr) auto;gap:.5rem;align-items:center;margin-bottom:.4rem}.tier-level{font-size:1.2rem}.tier-price{font-size:1rem}.ledger-states{display:flex;flex-wrap:wrap;gap:.45rem;font-size:.66rem;margin-top:.65rem}.ledger-states .recorded{color:var(--text)}.holding-row{display:flex;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid var(--border)}.execution-row{padding:.8rem 0}.execution-row+.execution-row{border-top:1px solid var(--border)}.execution-row .caption{margin-top:.3rem}.menu{padding:.25rem 1rem}.menu-row{display:flex;align-items:center;width:100%;background:none;border:0;border-radius:0;border-bottom:1px solid var(--border);padding:.9rem 0;text-align:left;font-size:var(--body);min-height:56px}.menu-row:last-child{border:0}.menu-row.logout{color:var(--muted)}.secondary-button{background:var(--surface);color:var(--accent);font-weight:600}
.form{width:100%;max-width:40rem}.form label,.stack{display:grid;gap:.55rem}.form label{font-size:var(--body)}.form input,.form select,.form textarea{width:100%}.form{gap:.85rem}.login{width:min(calc(100% - 2rem),26rem);margin:10svh auto;padding:1.5rem}.login h1{margin-bottom:.6rem}.login label{display:grid;gap:.35rem}.login input{width:100%}textarea{min-height:8rem;resize:vertical}dl{display:grid;grid-template-columns:minmax(5rem,.8fr) minmax(0,1.4fr);gap:.5rem;font-size:var(--body);margin:.75rem 0}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere;min-width:0}details{margin-top:.75rem}summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--accent);font-size:var(--body)}dialog{width:min(94vw,40rem);max-height:85svh;overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}dialog h2{margin-bottom:1rem}dialog::backdrop{background:var(--backdrop)}.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.65rem}.banner{background:var(--soft);color:var(--accent);border-radius:.7rem;padding:.7rem .8rem;font-size:var(--body)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}pre{white-space:pre-wrap;overflow-wrap:anywhere}
@media(min-width:48rem){.app-shell{width:100%;max-width:60rem;padding:2rem 2rem 6rem}.app-header{padding-bottom:1.5rem}.page-content{gap:1rem}.bottom-nav{left:50%;right:auto;transform:translateX(-50%);width:min(100%,60rem);border-radius:1rem 1rem 0 0}.card{padding:1.3rem}.decision-card{padding:1.5rem}.decision-price-grid .metric strong{font-size:1.5rem}.decision-heading .decision{font-size:2.3rem}.candidate-row{grid-template-columns:1fr 1fr;gap:.65rem 1.5rem}.candidate-heading,.candidate-row>.body-copy{grid-column:1 / -1}.candidate-row .quote-freshness{grid-column:1 / -1}}
