/* ASX v2 foundations: shared light theme, 8px rhythm, accessible focus. */
:root{--canvas:#f7f9fc;--surface:#fff;--ink:#101c32;--muted:#53627b;--border:#dce3ee;--brand:#3555d6;--selected:#eef2ff;--positive:#156441;--negative:#ad2931;--warning:#835000;--radius:10px;color-scheme:light;font-family:Inter,"Noto Sans SC",ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--canvas);font-size:14px}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);margin:0;padding-top:76px}a{color:var(--brand)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary,[tabindex]{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--brand);outline-offset:3px}button:disabled,input:disabled,select:disabled{opacity:.55;cursor:not-allowed}h1{font-size:28px;font-weight:750;letter-spacing:-.035em;line-height:1.25}h2{font-size:21px;letter-spacing:-.02em}h3{line-height:1.5}p{line-height:1.6}.shell{max-width:1600px;padding:24px 32px;margin:0 auto}.top{margin-bottom:24px;gap:16px}.eyebrow{color:var(--brand);font-size:11px;letter-spacing:.1em}.sub,.hint,.help,.fine,.muted,.company,.sector,.modelmeta,.trackmeta,.trackfoot,.datebox span,.emptybucket,.watchtable small,.watchtable td.reason,.statusnote,footer,.health-meta,.health-right,.health-component p,.health-empty,.gate-titlebar p,.gate-meta,.gate-foot,.gate-count small,.model-validation-note,.metricline,.promotion,.trackreason{color:var(--muted)}.hint,.fine{font-size:12px;line-height:1.55}.label,th,.metric .label,.mini span,.stat span,.detailgrid span,.structure span,.watchform label,.gate-step span,.model-validation-title,.model-validation-cell span{color:var(--muted);font-size:11px;letter-spacing:.04em}.card,.gate-wrap,.health-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:none;backdrop-filter:none}.mini,.stat,.bucket,.trackitem,.catalyst,.gate-card,.gate-step,.watchmetric,.detailgrid div,.structure,.note,.health-component,.health-day,.model-validation-cell{background:var(--canvas);border-color:var(--border);border-radius:8px;color:var(--ink)}.section,.reporthead,.scoreline,.health-body,.gate-foot,.metricline{border-color:var(--border)}.section p,.section li,.thesis,.zonelegend b,.metricline strong,.promotion strong,.health-section h3{color:var(--ink)}.tab,.navbtn,.tiny,.iconbtn,.linkbtn{background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:7px;min-height:40px;padding:9px 13px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1.3}.tab:hover,.navbtn:hover,.tiny:hover{background:var(--selected);border-color:var(--brand);color:var(--brand)}.tab.active{background:var(--selected);border-color:var(--brand);color:var(--brand)}.primary{background:var(--brand);color:white;border-radius:7px;min-height:44px}.iconbtn{font-size:12px;min-width:44px;align-self:flex-start}.auth input,.settings input,.filters input,.filters select,.watchform input,.watchform textarea,.watchform select,input,select,textarea{background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:7px;padding:11px 12px;min-height:44px}input::placeholder,textarea::placeholder{color:#697790}input[type=checkbox]{min-height:20px;width:20px;height:20px;accent-color:var(--brand)}.grid{gap:12px}.metric{min-height:100px}.metricbtn{box-shadow:none}.metricbtn:hover{transform:none}.metric .value{font-size:28px;font-weight:750}.big{font-size:28px}.hero{padding:16px 20px}.badge,.tag,.role,.access-badge,.alertpill{border-radius:5px;font-size:11px;line-height:1.4}.badge,.tag,.role,.access-badge,.zonelegend span{background:var(--selected);color:var(--brand);border-color:var(--border)}.badge.high,.badge.lowrisk,.badge.delivered,.role.prod,.badge.prod,.badge.mature,.state-READY,.state-TRIGGERED,.zone-READY,.zone-TRIGGERED{background:#e7f5ee;color:var(--positive)}.badge.medium,.badge.mediumrisk,.state-SETUP,.badge.b2,.zone-NEAR_READY,.gate-step.current{background:#fff0d9;color:var(--warning);border-color:#e4c994}.badge.low,.badge.highrisk,.badge.caution,.badge.missed,.zone-DECISION,.alert-down{background:#fde9e8;color:var(--negative)}.badge.priority,.badge.changed,.role.shadow,.zone-APPROACHING,.gate-lock{background:#f2edff;color:#6546a0}.badge.watch,.state-WATCH,.badge.b1,.badge.pending,.gate-state,.zone-EARLY{background:var(--selected);color:var(--brand)}.good,.radar-in,.regime-GREEN,.change.up,.health-status.OK,.health-pill.ok{color:var(--positive)}.error,.bad,.danger,.watcherror,.radar-out,.regime-RED,.change.down,.health-status.FAIL{color:var(--negative)}.warn,.awaiting,.priority-HIGH,.regime-AMBER,.health-status.WARN{color:var(--warning)}.near{color:var(--ink);font-weight:650}.bar,.gate-progress,.model-validation-progress{background:var(--border)}.bar>span,.gate-progress>i{background:var(--brand)}.dot,.health-light{box-shadow:none}.zonelegend span{background:var(--canvas);color:var(--muted)}table{font-size:13px;font-variant-numeric:tabular-nums}th{background:var(--canvas);position:sticky;top:0;z-index:1;font-weight:650}th,td{border-color:var(--border);padding:14px 10px}td:not(:first-child){font-variant-numeric:tabular-nums}.stockrow:hover,.stockrow.selected,.eventrow:hover,.eventrow.selected{background:var(--selected)}.stockrow small{color:var(--muted);font-size:11px;line-height:1.5}.detail{top:90px;padding:24px}.detailgrid{gap:12px}.detailgrid strong{font-size:18px}.detailgrid div{padding:12px}.detailtop h2{font-size:32px;margin:8px 0}.detailtop .sub{font-size:13px}.scoreline{margin:20px 0 12px}.scoreline strong{font-size:28px}.layout:has(.detail){grid-template-columns:minmax(0,1fr) 390px}.queue-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.queue-heading h2{font-size:18px}.queue-heading>span{color:var(--muted)}.scan-controls{display:flex;gap:8px;margin-bottom:14px}.scan-controls input{min-width:0;flex:1}.scan-controls select{max-width:190px}.section-heading{margin:22px 0 10px;font-size:16px}.factor-review>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border);font-size:12px}.factor-review strong{color:var(--muted);font-weight:500;text-align:right}.scanner-view>.hero,.scanner-view>.grid{display:none}.scanner-view>.model-validation{display:none}.scanner-view .layout:has(.detail){grid-template-columns:340px minmax(0,1fr);align-items:start}.scanner-view .listcard{padding:18px 12px}.scanner-view .scan-controls{flex-direction:column}.scanner-view .scan-controls select{max-width:none}.scanner-view .toolbar{gap:4px}.scanner-view .toolbar .tab{font-size:11px;padding:6px 8px;min-height:32px}.scanner-view .stockrow td:first-child{min-width:0}.scanner-view .stockrow td:first-child small{max-width:170px}.scanner-view table th:nth-child(n+5),.scanner-view table td:nth-child(n+5),.scanner-view table th:nth-child(3),.scanner-view table td:nth-child(3){display:none}.scanner-view .detail{position:static;margin:0;min-height:760px}.scanner-view .detailgrid{grid-template-columns:repeat(4,minmax(0,1fr))}.scanner-view .detailgrid strong{font-size:19px}.scanner-view .detailtop h2{font-size:38px}.scanner-view .listcard .tablewrap{max-height:680px;overflow:auto}.reportlist{gap:20px}.reporthead{background:var(--surface)}.reportbody{padding:24px}.report .section{padding-top:16px}.datebox{max-width:250px;overflow-wrap:anywhere}.filters{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.calendar{gap:12px}.watchhero{grid-template-columns:1fr}.watchmetrics{grid-template-columns:repeat(5,1fr)}.watchform{grid-template-columns:repeat(4,minmax(0,1fr))}.summarygrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.modelcard{min-width:0}.health-shell{max-width:1600px;margin:16px auto 0;padding:0 32px}.health-summary{padding:10px 16px}.health-title{font-size:12px}.health-right{color:var(--muted)}#gatePanel{max-width:1600px;padding:20px 32px 0}.gate-wrap{padding:20px}.gate-lock{white-space:normal}.gate-state{padding:5px 8px}.row{display:flex;justify-content:space-between;gap:24px;align-items:center}.row>div{min-width:0}.row strong{overflow-wrap:anywhere}.switch{display:flex;gap:8px;align-items:center;flex-shrink:0}.switch span{min-width:35px}.notice{background:var(--selected);padding:12px;border-radius:7px;color:var(--brand)}.sources a,.details summary,.catalyst .when,.tracklinks a{color:var(--brand)}.details summary{min-height:44px;padding:10px 0}.auth{margin:8vh auto;max-width:440px;padding:32px}.settings{margin:32px auto}.v2-header{position:fixed;z-index:50;top:0;left:0;right:0;height:76px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:16px}.v2-brand{font-size:18px;font-weight:750;letter-spacing:-.025em;text-decoration:none;color:var(--ink)}.v2-brand span{color:var(--muted);font-size:12px;font-weight:500;margin-left:16px}.v2-language{display:flex;gap:4px;background:var(--canvas);padding:4px;border:1px solid var(--border);border-radius:8px}.v2-language button{min-height:36px;border:0;border-radius:5px;background:none;color:var(--muted);padding:6px 14px;cursor:pointer}.v2-language button[aria-pressed=true]{background:var(--brand);color:white}.v2-nav{position:fixed;top:76px;left:0;bottom:0;width:200px;background:var(--surface);border-right:1px solid var(--border);padding:24px 14px;z-index:40;overflow:auto}.v2-nav a{display:block;min-height:44px;padding:13px 16px;margin-bottom:5px;color:var(--muted);text-decoration:none;border-radius:7px;font-weight:550}.v2-nav a[aria-current=page]{background:var(--selected);color:var(--brand)}.v2-nav a:hover{background:var(--canvas)}.v2-nav .access-badge{display:inline-block;margin:16px 4px 0;padding:6px 8px}.v2-nav .access-nav{position:static;display:contents;background:none;padding:0;border:0;box-shadow:none}.v2-has-nav{padding-left:200px}.v2-has-nav #accessNav{position:static}.v2-top-note{font-size:12px;color:var(--muted)}.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:white;padding:12px}.skip-link:focus{top:10px}.v2-report-toggle{margin-top:16px}.report.v2-collapsed .reportbody>.section,.report.v2-collapsed .reportbody>.details,.report.v2-collapsed .reportbody>.fine{display:none}.v2-original-note{font-size:12px;color:var(--muted);margin-bottom:16px}.v2-report-toggle{border:1px solid var(--border);color:var(--brand);background:var(--selected);padding:10px 14px;min-height:44px;border-radius:7px;cursor:pointer}
@media(max-width:1200px){.v2-nav{width:170px;padding:20px 8px}.v2-has-nav{padding-left:170px}.shell{padding:24px}.scanner-view .layout:has(.detail){grid-template-columns:290px minmax(0,1fr)}.scanner-view .detailgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.scan-controls{flex-wrap:wrap}.layout:has(.detail){grid-template-columns:minmax(0,1fr)}.detail{position:static}}@media(max-width:900px){body,.v2-has-nav{padding-left:0;padding-top:120px}.v2-header{height:68px;padding:0 16px}.v2-brand{font-size:15px}.v2-brand span{display:none}.v2-nav{top:68px;bottom:auto;width:100%;height:52px;display:flex;align-items:center;gap:4px;padding:4px 12px;border-right:0;border-bottom:1px solid var(--border);overflow-x:auto}.v2-nav a{white-space:nowrap;min-height:40px;padding:10px 12px;margin:0;font-size:12px}.v2-nav .access-nav{display:contents}.v2-nav .access-badge{margin:0 4px;white-space:nowrap;font-size:10px}.scanner-view .layout:has(.detail){grid-template-columns:minmax(0,1fr)}.scanner-view .detail{min-height:0;scroll-margin-top:132px}.scanner-view .listcard .tablewrap{max-height:350px}.scanner-view table th:nth-child(n+5),.scanner-view table td:nth-child(n+5){display:none}.scanner-view .stockrow td:first-child small{max-width:none}.watchform{grid-template-columns:1fr 1fr}.gate-grid{grid-template-columns:1fr}.detailgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-top-note{display:none}.filters{grid-template-columns:1fr 1fr}}@media(max-width:550px){.shell{padding:20px 14px}.health-shell{padding:0 14px}#gatePanel{padding:18px 14px 0}.card{padding:16px}.report{padding:0}.reporthead,.reportbody{padding:16px}.top,.hero{flex-direction:column;align-items:flex-start}.topactions{flex-wrap:wrap;width:100%}.topactions>*{flex:1}.grid,.summarygrid,.watchmetrics{grid-template-columns:1fr 1fr}.metric{min-height:100px}.metric .value{font-size:26px}.watchform{grid-template-columns:1fr}.watchform .wide{grid-column:span 1}.filters{grid-template-columns:1fr}.detailgrid strong{font-size:17px}.scanner-view .detailtop h2{font-size:32px}.factor-review>div{flex-direction:column;gap:5px}.factor-review strong{text-align:left}.scan-controls{flex-direction:column}.scan-controls select{max-width:none}.v2-language button{padding:6px 9px}.v2-brand{max-width:190px;font-size:14px}.row{align-items:flex-start;flex-wrap:wrap;gap:12px}.settingsgrid{grid-template-columns:1fr}.calendar{grid-template-columns:1fr}.mini-grid{grid-template-columns:1fr 1fr}h1{font-size:25px}.health-grid{grid-template-columns:1fr}.health-components{grid-template-columns:1fr}.tablewrap{max-width:100%}.gate-titlebar{flex-direction:column}.datebox{text-align:left}.reporthead{grid-template-columns:1fr}.auth{padding:22px;margin:5vh auto}.model-validation-grid{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Workspace composition and persistent navigation. */
.v2-has-nav #accessNav{position:fixed}.v2-brand{display:flex;flex-direction:column;gap:3px}.v2-brand strong{font-size:18px}.v2-brand strong span{font:inherit;color:inherit;margin:0}.v2-brand small{font-size:10px;color:var(--muted);font-weight:500;letter-spacing:.1em}.v2-header-right{display:flex;align-items:center;gap:24px}.v2-market-label{color:var(--muted);font-size:12px}.detail-actions{display:flex;align-items:center;gap:12px}.detailtop{align-items:flex-start}.quote-grid{margin:26px 0 10px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:22px 0}.quote-grid>div{background:none;border:0;border-right:1px solid var(--border);border-radius:0;padding:0 14px}.quote-grid>div:first-child{padding-left:0}.quote-grid>div:last-child{border:0}.quote-grid strong{font-size:24px!important;display:block;margin-top:9px}.detail-columns{display:grid;grid-template-columns:1fr;gap:24px}.scanner-view .detail-columns{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.detail-columns>section{min-width:0}.detail-columns .section-heading{margin-top:20px;font-size:18px}.scanner-view .detail-columns>section+section{border-left:1px solid var(--border);padding-left:24px}.factor-review>div{font-size:12px;padding:16px 0}.factor-review strong{max-width:50%}.risk-list{margin:14px 0 0;font-size:13px}.risk-list>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0}.risk-list dt{color:var(--muted)}.risk-list dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.risk-total{border-top:1px solid var(--border);margin-top:14px;padding-top:20px!important}.entry-note{background:var(--canvas);border:1px solid var(--border);border-radius:8px;padding:16px;margin-top:20px;font-size:12px;line-height:1.6}.entry-note p{color:var(--muted);margin-bottom:0}.entry-range{display:flex;flex-direction:column;gap:8px;margin-top:24px;font-size:12px}.entry-range span{color:var(--muted)}.signal-context{margin-top:28px;border-top:1px solid var(--border)}.signal-context .detailgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.scanner-view .detail{min-height:700px}.scanner-view .layout{grid-template-columns:minmax(0,1fr)}.scanner-view .layout:has(.detail){grid-template-columns:340px minmax(0,1fr)}.scanner-view .listcard .toolbar .tab{min-height:40px}.v2-report-toggle{margin:0 24px 20px}.scanner-view .top{margin-bottom:20px}.v2-has-nav:has(.scanner-view) #systemHealth{display:none}.btn{background:white;color:var(--muted);border:1px solid var(--border);min-height:44px;border-radius:7px}.btn.primary{background:var(--brand);color:white}
@media(max-width:1200px){.scanner-view .layout:has(.detail){grid-template-columns:290px minmax(0,1fr)}.scanner-view .detail-columns{grid-template-columns:1fr}.scanner-view .detail-columns>section+section{border-left:0;border-top:1px solid var(--border);padding-left:0}.scanner-view .quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.scanner-view .layout:has(.detail){grid-template-columns:1fr}.v2-market-label{display:none}.v2-brand strong{font-size:14px}.v2-brand strong span{display:inline}.v2-brand small{font-size:8px}.detail-actions{flex-direction:column;align-items:flex-end}.quote-grid strong{font-size:20px!important}.scanner-view .detail{scroll-margin-top:136px}.scanner-view .stockrow td:first-child small{white-space:normal}.scanner-view .stockrow td:first-child{width:60%}.scanner-view .detailgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.factor-review>div{flex-direction:row}.factor-review strong{max-width:55%;text-align:right}.v2-header-right{gap:0}.scanner-view .detail-columns{gap:8px}}
#accessNav.v2-nav{left:0;right:auto;bottom:0;z-index:40}.v2-nav .access-nav a{background:transparent;box-shadow:none;font-size:13px;font-weight:550;color:var(--muted)}.v2-nav .access-nav a[aria-current=page]{background:var(--selected);color:var(--brand)}.v2-nav .access-nav a:hover{background:var(--canvas)}.access-badge{box-shadow:none}.v2-nav .access-badge{font-size:10px;padding:6px 7px}.gate-progress>i{background:var(--brand)}.model-validation-progress>i{background:var(--brand)}
@media(max-width:900px){#accessNav.v2-nav{bottom:auto;right:0;left:0}.v2-nav .access-nav a{font-size:12px}}
