:root{color-scheme:light;--paper:#fff;--canvas:#f8f9fb;--inset:#f5f6f8;--ink:#242932;--secondary:#555e6c;--muted:#687281;--rule:#dde1e7;--soft-rule:#eceef2;--action:#2855ac;--action-hover:#1e448d;--action-wash:#edf2fb;--deficit:#a94432;--deficit-wash:#faf0eb;--receipt:#287051;--focus:#2855ac;--radius:4px;--space:4px}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}::selection{background:#dce6fb;color:var(--ink)}a{color:var(--action);text-underline-offset:3px}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation;-webkit-tap-highlight-color:#2855ac20}button,a,summary{cursor:pointer}button{border-radius:var(--radius);white-space:nowrap;font-weight:500;min-height:38px;padding:8px 14px}button:disabled{opacity:.5;cursor:not-allowed}button:not(:disabled):active{transform:translateY(1px)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}h1,h2,h3,h4,p{margin:0}h1{font-size:23px;line-height:1.4;font-weight:600;letter-spacing:-.02em;text-wrap:balance}h2{font-size:19px;font-weight:600}h3{font-size:15px;font-weight:600}h4{font-size:13px;font-weight:600}p{line-height:1.7}small,.helper{font-size:12px;color:var(--muted)}.helper{margin-top:8px}.skip-link{position:fixed;left:12px;top:-80px;z-index:20;background:var(--paper);padding:12px}.skip-link:focus{top:12px}.primary{background:var(--action);border:1px solid var(--action);color:white}.primary:hover:not(:disabled){background:var(--action-hover)}.secondary{background:var(--paper);border:1px solid #c9cfd8;color:var(--ink);border-radius:var(--radius);text-decoration:none}.secondary:hover:not(:disabled){background:var(--inset);border-color:#a9b3c0}.compact{padding:8px 12px;font-size:13px}.text-button{background:transparent;border:0;color:var(--action);padding:8px;font-size:13px}.text-button:hover{background:var(--action-wash)}
.sidebar{width:208px;position:fixed;inset:0 auto 0 0;padding:28px 16px 20px;border-right:1px solid var(--rule);display:flex;flex-direction:column;background:var(--canvas);z-index:10}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);padding:0 8px}.brand svg{width:30px;height:30px;stroke:#b1bac7;stroke-width:1.3;flex-shrink:0}.brand .mark-line{stroke:var(--action);stroke-width:2.6}.brand span{font-size:20px;font-weight:650;letter-spacing:.02em}.brand small{display:block;font-size:12px;font-weight:400;letter-spacing:0;margin-top:2px}.sidebar nav{display:grid;gap:6px;margin-top:40px}.tab{padding:12px;min-height:44px;display:flex;align-items:center;gap:12px;color:var(--secondary);text-decoration:none;border-radius:var(--radius);font-size:14px;font-weight:500}.tab svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.tab:hover{background:#edf0f5;color:var(--ink)}.tab.active{background:var(--action-wash);color:var(--action)}.sidebar-foot{margin-top:auto;font-size:12px;color:var(--muted);padding:16px 8px 0}.local-status{display:flex;align-items:center;gap:7px;margin-bottom:16px}.local-status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--receipt)}.sidebar-foot details{border-top:1px solid var(--rule);padding-top:12px}.sidebar-foot summary{font-size:12px}.sidebar-foot p{margin-top:12px;font-size:12px}.app-shell{margin-left:208px}.topbar{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 32px;border-bottom:1px solid var(--rule);background:var(--paper)}.workspace-label{color:var(--muted);font-size:13px;white-space:nowrap}.workspace-label span:first-child{color:#a7afba;margin:0 12px}.workspace-label #view-name{color:var(--ink)}.top-actions{display:flex;align-items:center;gap:10px}.top-actions #freshness{font-size:12px;color:var(--muted);margin-right:6px}.top-actions button{font-size:13px}main{max-width:1536px;margin:auto;padding:28px 32px 0;outline:none}.order-context{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.context-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted);margin-bottom:8px}.context-meta #context-id{font-variant-numeric:tabular-nums}.tag{background:#eceef1;border:1px solid var(--rule);font-size:12px;line-height:1.5;padding:1px 6px;border-radius:3px;color:var(--secondary)}.context-scenario{text-align:right;max-width:300px;font-size:12px;color:var(--muted)}.context-scenario strong{display:block;font-size:14px;color:var(--ink);font-weight:500;margin-top:5px;overflow-wrap:anywhere}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:28px;align-items:start}.workspace-main{min-width:0;background:var(--paper);border:1px solid var(--rule)}.page{padding:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.section-heading p{font-size:12px;color:var(--muted);margin-top:5px}.sheet+.sheet{border-top:1px solid var(--rule);margin-top:28px;padding-top:24px}.sheet>h3{margin-bottom:16px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--secondary);min-width:0}.field.wide{grid-column:span 2}input,select{width:100%;min-width:0;border:1px solid #d2d7df;border-radius:var(--radius);background:var(--inset);padding:9px 10px;min-height:38px;color:var(--ink);caret-color:var(--action);font-size:13px;font-variant-numeric:tabular-nums}input:hover:not(:disabled),select:hover:not(:disabled){border-color:#aab4c3}input:focus-visible,select:focus-visible{background:var(--paper)}input:disabled,select:disabled{color:var(--muted);background:#f0f1f3;border-style:dashed}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{opacity:.6}.field.invalid input,.field.invalid select{border-color:var(--deficit);background:var(--deficit-wash)}.field-error{color:var(--deficit);font-size:12px}.field[data-field="order.name"]{grid-column:span 1}.field[data-field="order.product"]{grid-column:span 1}.ledger-block+.ledger-block{margin-top:24px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.card-heading h4{display:flex;align-items:center;gap:8px}.flow-dot{width:6px;height:6px;display:inline-block;border-radius:50%}.flow-dot.in{background:var(--receipt)}.flow-dot.out{background:var(--deficit)}.event-row{display:grid;grid-template-columns:1.3fr .7fr 1fr 36px;align-items:end;gap:12px;padding:12px 0;border-top:1px solid var(--soft-rule)}.event-row input[type=number]{text-align:right}.remove{width:36px;height:38px;min-height:38px;padding:9px;background:transparent;border:1px solid transparent;color:var(--muted)}.remove svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}.remove:hover{color:var(--deficit);background:var(--deficit-wash);border-color:#e6c9c0}.evidence-section{margin-top:28px;border-top:1px solid var(--rule);padding-top:18px}.evidence-section summary,.stress-section summary{font-size:13px;font-weight:500}.evidence-section summary>span,.stress-section summary>span{font-weight:400;color:var(--muted);font-size:12px;margin-left:12px}.evidence-section .fields{margin-top:20px;grid-template-columns:1fr}.scenario-switch{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;align-items:center;padding-bottom:24px;border-bottom:1px solid var(--rule);margin-bottom:24px}.scenario-switch>label{font-size:13px;color:var(--secondary)}.scenario-switch select{background:var(--paper);font-weight:500}.scenario-switch #scenario-summary{grid-column:2;font-size:12px;color:var(--muted);line-height:1.6}.override-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;align-items:end;gap:12px;border-top:1px solid var(--soft-rule);padding:16px 0}.override-grid strong{font-size:12px;font-weight:400;line-height:1.7;align-self:center}.override-grid input{text-align:right}#overrides{margin-top:16px}#overrides>.field{margin-bottom:20px}
.inspector{padding:4px 0;min-width:0}.inspector-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px}.inspector-heading h2{font-size:14px}.inspector-heading>span{font-size:12px;color:var(--muted)}.inspector-result{border-bottom:1px solid var(--rule);padding-bottom:20px;margin-bottom:22px}.inspector-result>p{font-size:12px;color:var(--muted)}.inspector-result .rail-gap{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.rail-gap span{font-size:12px;color:var(--secondary)}.rail-gap strong{font-size:25px;letter-spacing:-.025em;font-variant-numeric:tabular-nums;color:var(--deficit);font-weight:550}.rail-metric{display:flex;justify-content:space-between;font-size:12px;padding-top:8px;color:var(--secondary)}.rail-metric b{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.inspector-result .secondary{font-size:12px;padding:7px 10px;display:block;text-align:center;margin-top:18px}.basis-summary h3,.rail-events h3{font-size:12px;color:var(--muted);font-weight:500}.basis-summary dl{margin:12px 0 24px}.basis-summary dl div{display:flex;justify-content:space-between;gap:8px;margin:10px 0;font-size:13px}.basis-summary dt{color:var(--secondary)}.basis-summary dd{margin:0;font-variant-numeric:tabular-nums;font-weight:500}.rail-events{border-top:1px solid var(--rule);padding-top:20px}.rail-events ol{list-style:none;padding:0;margin:16px 0}.rail-events li{display:grid;grid-template-columns:45px minmax(0,1fr);gap:12px;padding:0 0 18px;position:relative}.rail-events li:before{content:"";position:absolute;left:51px;top:8px;bottom:0;border-left:1px solid var(--rule)}.rail-events li:last-child:before{display:none}.rail-events time{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:1px}.rail-events li>div{padding-left:10px;position:relative;font-size:12px;overflow-wrap:anywhere}.rail-events li>div:before{content:"";width:5px;height:5px;background:var(--muted);border:2px solid var(--canvas);border-radius:50%;position:absolute;left:-9px;top:4px}.rail-events li.in>div:before{background:var(--receipt)}.rail-events li.out>div:before{background:var(--deficit)}.rail-events strong{display:block;font-size:13px;font-weight:500;margin-top:3px;font-variant-numeric:tabular-nums}.inspector-note{font-size:12px;color:var(--muted);border-top:1px solid var(--rule);padding-top:16px}.workspace-grid.full{grid-template-columns:1fr}.workspace-grid.full .inspector{display:none}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:18px 0 26px;padding:18px 0}.metric{padding:0 20px;border-right:1px solid var(--rule);min-width:0}.metric:first-child{padding-left:0}.metric:last-child{border-right:0;padding-right:0}.metric small{display:block;font-size:12px}.metric strong{display:block;font-size:25px;font-weight:550;margin:6px 0;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.metric:first-child strong{color:var(--deficit)}.metric span{font-size:12px;color:var(--muted)}.result-badge{font-size:12px;color:var(--muted)}.result-badge.stale{background:#fff6e7;color:#7d5013;padding:10px 12px}.chart-sheet h3{font-size:16px}.chart-sheet>.card-heading label{font-size:12px;white-space:nowrap;color:var(--secondary)}.day-input{display:inline-block;width:72px;min-height:34px;padding:6px}.chart{width:100%;overflow:auto}.chart svg{width:100%;min-width:0;display:block;height:auto}.legend{display:inline-block;vertical-align:middle;width:18px;height:2px;margin:0 5px 0 12px}.legend:first-child{margin-left:0}.legend.baseline{background:#8a929f}.legend.current{background:var(--action)}.legend.deficit{height:9px;width:12px;background:var(--deficit-wash);border:1px solid #e2bbaa}.event-timeline{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 18px}.event-chip{display:flex;gap:10px;align-items:center;min-height:36px;text-align:left;border:1px solid var(--rule);background:var(--paper);font-size:12px;color:var(--secondary);padding:7px 10px}.event-chip time{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.event-chip.active{border-color:var(--action);background:var(--action-wash);color:var(--action)}.event-chip:hover{background:var(--inset)}#day-detail{background:var(--inset);padding:14px 16px;font-size:12px;border-radius:var(--radius)}#day-detail strong{font-weight:500}#day-detail p{margin-top:6px}.interpretation{margin:22px 0 28px;display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 20px;font-size:12px}.interpretation h3{font-size:13px;grid-row:span 3}.interpretation p{margin:0 0 6px}#warnings{color:#7d5013}#notes summary{color:var(--muted);font-size:12px}#notes details p{margin-top:8px;color:var(--secondary)}.comparison-section{border-top:1px solid var(--rule);padding-top:24px;margin-top:24px}.table-wrap{max-width:100%;overflow:auto;scrollbar-color:#aab3c0 var(--inset);scrollbar-width:thin}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}th{font-weight:500;color:var(--secondary);background:var(--inset);text-align:right;border-bottom:1px solid var(--rule);padding:10px 12px}td{padding:12px;border-bottom:1px solid var(--soft-rule);text-align:right}th:nth-child(-n+2),td:nth-child(-n+2),th:last-child,td:last-child{text-align:left}tbody tr:hover{background:#f6f8fc}.table-placeholder{font-size:12px;padding:20px 0;color:var(--muted)}.stress-section{border-top:1px solid var(--rule);margin-top:24px;padding-top:20px}.stress-section>.card-heading{margin-top:20px}.sensitivity-table{max-height:400px}.sensitivity-table th{position:sticky;top:0}.empty{padding:40px 24px;background:var(--inset);margin-bottom:24px}.empty p{font-size:13px;color:var(--secondary);max-width:60ch;margin:10px 0 20px}.empty a{font-size:13px}.errorbox{padding:16px;background:var(--deficit-wash);border:1px solid #e2bbaa;color:var(--deficit);font-size:13px;margin-bottom:16px}.errorbox ul{margin:8px 0 0;padding-left:20px}#toast{font-size:12px;color:var(--secondary);margin:0 0 16px}#toast:empty{display:none}.report-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:32px}.report-preview{border-top:2px solid var(--ink);padding:24px 0}.brief-title{font-size:20px;font-weight:550;line-height:1.6}.brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:20px 0}.brief-grid>div{padding:14px 0;border-bottom:1px solid var(--rule);min-width:0}.brief-grid>div:nth-child(n+5){grid-column:span 2}.brief-grid span{font-size:12px;color:var(--muted);display:block;margin-bottom:5px}.brief-grid strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.export-panel{background:var(--inset);padding:20px;align-self:start}.export-panel h3{margin-bottom:16px}.export-panel button{width:100%;margin-bottom:10px;font-size:12px;padding:9px 8px}.snapshot-section{border-top:1px solid var(--rule);padding-top:24px;margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:24px}.snapshot-section p{font-size:12px;color:var(--muted);margin-top:6px}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions button{font-size:12px}footer{font-size:12px;color:var(--muted);padding:24px 0;display:flex;justify-content:space-between;gap:16px}[hidden]{display:none!important}
@media(min-width:1450px){#order-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.page{padding:28px}.workspace-grid{gap:32px}}
@media(max-width:1150px){.sidebar{width:184px;padding-left:12px;padding-right:12px}.app-shell{margin-left:184px}main{padding:24px 24px 0}.topbar{padding:12px 24px}.top-actions #freshness{max-width:110px;font-size:12px}.workspace-grid{grid-template-columns:1fr}.inspector{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:var(--paper);border:1px solid var(--rule);padding:20px}.inspector-heading{grid-column:span 2;margin-bottom:0}.inspector-result{border:0;margin:0;padding:0}.rail-events{border:0;padding:0}.inspector-note{grid-column:span 2}.basis-summary dl{margin-bottom:0}.metric strong{font-size:22px}.report-layout{grid-template-columns:minmax(0,1fr) 200px}}
@media(max-width:760px){.sidebar{position:static;width:auto;padding:16px 20px 0;border-right:0;border-bottom:1px solid var(--rule)}.brand{padding:0}.brand svg{width:26px;height:26px}.brand span{font-size:18px}.brand small{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:16px;margin-bottom:8px}.tab{justify-content:center;gap:6px;padding:10px 4px;font-size:12px;min-height:44px}.tab svg{width:16px;height:16px}.sidebar-foot{display:none}.app-shell{margin-left:0}.topbar{padding:12px 20px;min-height:60px}.workspace-label{display:none}.top-actions{width:100%;justify-content:flex-end;gap:8px}.top-actions #freshness{margin-right:auto;max-width:120px;font-size:12px}.top-actions .compact{font-size:12px;padding:8px}.top-actions button{font-size:12px;padding:8px 10px}main{padding:20px 16px 0}.order-context{align-items:flex-start;margin-bottom:20px;display:block}h1{font-size:21px}.context-scenario{text-align:left;margin-top:12px;display:flex;gap:10px;align-items:center;max-width:none}.context-scenario strong{font-size:12px;margin:0}.context-meta{font-size:12px}.page{padding:20px 16px}.section-heading{margin-bottom:20px;align-items:flex-start}.section-heading h2{font-size:18px}.section-heading p{font-size:12px}.section-heading button{font-size:12px}.fields{gap:16px 12px}.event-row{grid-template-columns:1.1fr .65fr 1fr 28px;gap:6px}.event-row .field{font-size:12px}.event-row input{padding:9px 6px;font-size:12px}.remove{width:28px;padding:6px}.override-grid{grid-template-columns:1fr 1fr;gap:10px}.override-grid strong{grid-column:span 2}.metrics{grid-template-columns:1fr 1fr;gap:20px 0}.metric{padding:0 12px}.metric:nth-child(2){border-right:0}.metric:nth-child(3){padding-left:0}.metric:nth-child(4){padding-right:0}.metric strong{font-size:22px}.metric span{font-size:12px}.chart-sheet>.card-heading{align-items:flex-start;flex-wrap:wrap}.chart-sheet .helper{font-size:12px}.interpretation{display:block}.interpretation h3{margin-bottom:10px}.card-heading{gap:12px}.card-heading .secondary{font-size:12px;padding:8px}.stress-section>.card-heading{align-items:flex-start;flex-direction:column}.stress-section summary>span{font-size:12px}.report-layout{grid-template-columns:1fr;gap:16px}.export-panel{padding:16px}.snapshot-section{align-items:flex-start;flex-direction:column;gap:16px}.inspector{gap:20px 16px}.inspector-result,.rail-events,.basis-summary{grid-column:span 2}footer{flex-direction:column;gap:4px;font-size:12px}.evidence-section summary>span{font-size:12px}.scenario-switch{grid-template-columns:64px minmax(0,1fr)}}
@media(max-width:430px){.fields{grid-template-columns:1fr}.field.wide{grid-column:auto}.tab{gap:4px;font-size:12px}.tab svg{width:15px;height:15px}.event-row{grid-template-columns:1fr 1fr 30px;gap:8px}.event-row .field:first-child{grid-column:span 3}.event-row .field:first-child input{font-size:13px}.event-row .field{font-size:12px}.remove{width:30px;min-height:38px}.metric strong{font-size:20px}.brief-grid{grid-template-columns:1fr}.brief-grid>div:nth-child(n+5){grid-column:auto}.section-heading .text-button{padding:8px 0}.scenario-switch select{font-size:12px}.tag{font-size:12px}.top-actions #freshness{max-width:94px}}
@media(prefers-reduced-motion:no-preference){button,.tab,.secondary{transition:background-color 120ms ease,border-color 120ms ease,color 120ms ease}button:active{transition:transform 80ms ease}}

@media(min-width:1250px){#order-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}
.event-chip{max-width:100%;white-space:normal}.event-chip span{overflow-wrap:anywhere}.event-chip time{white-space:nowrap}input,select{font-size:14px}.field{font-size:13px}
