:root{--ink:#25283e;--muted:#777b90;--teal:#2b3bb5;--line:#e2e4ef;--paper:#f5f6fb;--amber:#9c5918;--soft:#eef0fc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 'Segoe UI','Microsoft YaHei',sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:6px;background:white;padding:9px 15px;color:var(--ink);transition:background .15s}button:hover{background:#eef0fc}button:focus-visible,a:focus-visible{outline:3px solid #8c88df;outline-offset:3px}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--teal);color:white;border-color:var(--teal)}.primary:hover{background:#202d91}.quiet{border:0;background:transparent}.rail{position:fixed;inset:0 auto 0 0;width:210px;background:#172b35;color:#dfe9e8;padding:30px 18px;display:flex;flex-direction:column}.brand{font-size:28px;letter-spacing:6px;padding:0 15px 34px;font-weight:600}.brand span{display:block;font-size:9px;letter-spacing:2px;margin-top:4px;font-weight:400}.rail-label{font-size:11px;letter-spacing:2px;color:#8ca3aa;padding:12px 15px}.nav-item{width:100%;border:0;display:flex;align-items:center;gap:12px;background:none;color:#bdcdcf;text-align:left;padding:15px;margin:4px 0}.nav-item.active{background:#29434a;color:#fff}.nav-item span{font-size:11px;color:#8da9aa}.rail-bottom{margin-top:auto;padding:18px 15px;font-size:12px;border-top:1px solid #33454d}.rail-bottom span{font-size:11px;color:#91a7ad}main{margin-left:210px}header{height:72px;display:flex;justify-content:space-between;align-items:center;padding:0 36px;background:#fff;border-bottom:1px solid var(--line)}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb b{color:var(--ink);font-weight:500}.header-actions{display:flex;gap:18px;align-items:center}.pill{font-size:11px;border-radius:3px;padding:4px 8px;background:var(--soft);color:var(--teal);white-space:nowrap}.pill.warn{color:var(--amber);background:#fff3df}.notice{font-size:11px;background:#faf5e9;border-bottom:1px solid #ece1c8;color:#84663c;padding:9px 36px}#app{padding:28px 36px 36px;max-width:1700px;margin:auto}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--teal);font-weight:600}.title-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}h1{font-size:26px;font-weight:600;margin:6px 0}h2{font-size:17px;font-weight:600;margin:0}h3{font-size:14px;margin:0 0 12px}.sub{color:var(--muted);margin:4px 0;font-size:12px}.actions{display:flex;align-items:center;gap:8px}.panel{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}.panel-body{padding:22px}.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:20px}.plan{background:#f1f2fa;padding:12px;position:relative}.plan svg{width:100%;display:block;max-height:400px}.plan .caption{font-size:10px;color:#627778;padding:0 10px 8px}.plan svg text{font-family:'Segoe UI','Microsoft YaHei',sans-serif}.plan-select{display:flex;gap:5px}.plan-select button{font-size:11px;padding:5px 9px}.plan-select .active{background:var(--teal);color:white}.formula{padding:16px;background:#f0f1fb;border-left:3px solid var(--teal);font:14px/1.8 Consolas,'Microsoft YaHei',monospace;overflow-wrap:anywhere;margin:15px 0}.big-number{font-size:34px;font-weight:600;letter-spacing:-1px;line-height:1.3}.big-number small{font-size:13px;font-weight:400;letter-spacing:0;color:var(--muted)}.meta{display:grid;grid-template-columns:88px 1fr;gap:8px;font-size:12px}.meta dt{color:var(--muted)}.meta dd{margin:0;overflow-wrap:anywhere}.warning{background:#fcf4e7;padding:12px 15px;color:var(--amber);font-size:12px;border-radius:5px;margin:14px 0}.good{background:#edf5f0;color:#326a49}.review-control{display:flex;gap:10px;align-items:flex-start;padding:12px 0;font-size:12px}.review-control input{accent-color:var(--teal);margin-top:4px;width:16px;height:16px}.review-control small{display:block;color:var(--muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-weight:500;color:var(--muted);background:#f7f8f7;padding:12px 16px;white-space:nowrap}td{padding:15px 16px;border-bottom:1px solid #edf0ef;vertical-align:middle}tbody tr:last-child td{border:0}.clickrow{cursor:pointer}.clickrow:hover,.clickrow.selected{background:#f0f1fc}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.small{font-size:11px;color:var(--muted)}.link{border:0;background:none;color:var(--teal);font-size:12px;padding:0;text-decoration:underline;text-underline-offset:3px}.summary{display:flex;gap:0;margin-bottom:22px;background:#fff;border:1px solid var(--line);border-radius:8px}.metric{flex:1;padding:18px 22px;border-right:1px solid var(--line)}.metric:last-child{border:0}.metric-label{font-size:11px;color:var(--muted);margin-bottom:6px}.metric-value{font-size:25px;font-weight:600;font-variant-numeric:tabular-nums}.metric-value span{font-size:12px;font-weight:400;margin-left:5px}.bottom-bar{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.hint{color:var(--muted);font-size:11px;max-width:70%}.file-row{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.file-row:last-child{border:0}.file-icon{font:11px Consolas;color:var(--teal);border:1px solid #c6c9e9;background:var(--soft);border-radius:4px;padding:11px 7px}.file-row .pill{margin-left:auto}.section{margin-top:22px}.price-option{display:block;text-align:left;width:100%;margin:10px 0;padding:13px 15px;position:relative}.price-option.active{border:1px solid var(--teal);background:var(--soft)}.price-option strong{font-size:21px;margin-right:8px}.price-option .small{display:block}.field{width:66px;border:1px solid var(--line);border-radius:4px;padding:6px;text-align:right;background:white}.detail-pair{display:flex;justify-content:space-between;align-items:center;margin:14px 0}.review-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.delta{color:#a15b22}.positive{color:var(--teal)}.note-line{font-size:12px;padding:12px 0;border-bottom:1px solid var(--line)}.note-line:last-child{border:0}.hero-copy{padding:28px 30px}.hero-copy p{font-size:13px;color:var(--muted);max-width:480px}.flow-list{counter-reset:flow}.flow-item{padding:16px 0;display:flex;gap:15px;border-bottom:1px solid var(--line)}.flow-item:last-child{border:0}.flow-item:before{counter-increment:flow;content:'0' counter(flow);color:var(--teal);font:20px Consolas;margin-top:1px}.flow-item strong{font-size:13px}.flow-item p{font-size:12px;margin:3px 0;color:var(--muted)}dialog{width:min(700px,90vw);padding:28px;border:1px solid var(--line);border-radius:10px;color:var(--ink)}dialog::backdrop{background:#172b3580}dialog h2{margin-bottom:16px}dialog .primary{margin-top:20px}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#172b35;color:white;padding:12px 20px;border-radius:6px;opacity:0;pointer-events:none;font-size:13px;max-width:80vw}#toast.show{opacity:1}.export-status{font-size:11px;color:var(--teal)}.empty-state{padding:50px} @media(max-width:1150px){.rail{width:175px}main{margin-left:175px}#app{padding:24px}.workspace{grid-template-columns:1.35fr 1fr}.plan-select{flex-wrap:wrap}.panel-head{padding:15px}.panel-body{padding:18px}td,th{padding:12px}.review-grid{grid-template-columns:1fr}}@media(max-width:850px){.rail{position:relative;width:100%;padding:12px 18px;display:block}.brand{font-size:20px;padding:0}.brand span,.rail-label,.rail-bottom{display:none}nav{display:flex}.nav-item{padding:8px;font-size:12px;margin-bottom:0}.nav-item span{display:none}main{margin-left:0}header{height:55px;padding:0 20px}.notice{padding:8px 20px}#app{padding:20px}.workspace{grid-template-columns:1fr}.title-row{align-items:flex-start;flex-direction:column}.summary{flex-wrap:wrap}.metric{min-width:45%}.bottom-bar{align-items:flex-start;gap:15px;flex-direction:column}.hint{max-width:100%}h1{font-size:23px}}
.history-panel{margin-bottom:22px}.history-tabs{display:flex;gap:10px;margin-bottom:18px}.history-tabs button{flex:1;text-align:left}.history-tabs span{display:block;font-size:11px;opacity:.75}.history-tabs .active{background:var(--teal);color:white;border-color:var(--teal)}.history-candidates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.history-card{border:1px solid var(--line);padding:18px;border-radius:6px}.history-card.selected{border-color:var(--teal);background:var(--soft)}.history-card-title{display:flex;align-items:flex-start;gap:8px;justify-content:space-between;font-size:12px}.historical-price{font-size:26px;font-weight:600;margin-top:14px}.historical-price small{font-size:12px;font-weight:400;color:var(--muted)}.history-card p{font-size:12px;margin:10px 0}.match-reason{font-size:11px;color:var(--teal);padding:10px 0;border-top:1px solid var(--line)}.ineligible .match-reason{color:var(--amber)}.history-actions{display:flex;gap:14px;align-items:center}.history-actions button{font-size:12px}.reference-selection{margin:16px 0 8px;padding:14px;background:#f3f4fb;display:flex;align-items:center;justify-content:space-between}.ref-total{background:var(--soft)}@media(max-width:1100px){.history-candidates{grid-template-columns:1fr}.history-card-title{font-size:14px}.history-card{padding:16px}.history-tabs{flex-wrap:wrap}.history-card p{margin:6px 0}}
.edit-label{display:block;margin:18px 0 6px;font-size:12px}.price-input,textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:5px;font:inherit;background:white}.price-input{font-size:22px}textarea{resize:vertical}.selected-basis{padding-bottom:16px;border-bottom:1px solid var(--line)}.selected-basis h3{margin:4px 0 12px}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:10px}.before-after div{padding:12px;background:var(--soft)}.before-after span{display:block;font-size:11px;color:var(--muted)}.before-after b{font-size:20px}.correction{padding-top:18px}.correction p{font-size:12px}.correction button.primary{width:100%;white-space:normal}.correction .formula{font-size:12px}summary{padding:18px 22px;cursor:pointer;font-weight:600}
.workflow-intro{background:#eef0fc;border:1px solid #d6d9f1;border-radius:8px;padding:24px 26px;margin-bottom:20px}.workflow-intro p{color:#5e6485;font-size:13px}.workflow-path{display:flex;gap:15px;align-items:center;flex-wrap:wrap;font-size:15px;font-weight:600;color:#303e9a}.workflow-path span{font-weight:400;color:#9694bc}.bench-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.bench-card{background:white;border:1px solid var(--line);border-radius:8px;padding:22px;display:flex;flex-direction:column}.bench-number{font:24px Consolas;color:var(--teal);margin-bottom:10px}.bench-task{font-size:13px;color:var(--muted);min-height:42px}.bench-card p{font-size:12px}.bench-handoff{font-size:12px;color:#656b88;border-top:1px solid var(--line);padding-top:12px;margin:10px 0 20px}.bench-card button{margin-top:auto}.rule-examples{display:grid;grid-template-columns:1fr 1fr;gap:24px}.rule-examples article{padding:22px;background:#f6f7fc;border-radius:6px}.rule-examples h3{font-size:16px;margin:16px 0}.rule-fields{display:grid;grid-template-columns:80px 1fr;gap:12px;font-size:12px}.rule-fields dt{color:var(--muted)}.rule-fields dd{margin:0}.method-guide{background:white;border:1px solid #d5d8ef;border-radius:8px;margin-bottom:22px}.method-guide summary{padding:15px 20px;cursor:pointer;color:var(--teal);font-weight:600}.method-guide summary small{display:inline-block;font-weight:400;color:var(--muted);font-size:12px;margin-left:18px}.method-body{padding:0 22px 22px}.method-io{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--line);padding-top:18px}.method-io b,.method-note b{font-size:12px;color:var(--teal)}.method-io p,.method-note p{font-size:13px;margin:5px 0 12px}.method-rules{padding-left:24px;margin:16px 0}.method-rules li{padding:6px 0 10px 6px}.method-rules li::marker{color:var(--teal);font-weight:600}.method-rules b{font-size:14px}.method-rules p{font-size:13px;color:#53616a;margin:5px 0}.method-note{background:#f8f6ed;padding:14px 18px;border-radius:5px}.method-note p:last-child{margin-bottom:0}.meeting-decisions p{font-size:13px;margin:0 0 16px}.meeting-decisions p:last-child{margin-bottom:0}.scope-details .panel-body{padding-top:0;font-size:13px}@media(max-width:1200px){.bench-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){nav{flex-wrap:wrap}.nav-item{width:auto;flex:1;min-width:90px;justify-content:center}.method-guide summary small{display:block;margin:4px 0 0 18px}.rule-examples{grid-template-columns:1fr}.workflow-path{gap:10px;font-size:13px}}@media(max-width:500px){.bench-grid,.method-io{grid-template-columns:1fr}.bench-task{min-height:0}.rule-fields{grid-template-columns:1fr;gap:4px}.rule-fields dd{margin-bottom:12px}}
.compact-history .panel-body{padding:14px 20px}.compact-history .history-tabs{margin-bottom:10px}.compact-history .history-tabs button{padding:7px 12px}.quote-list{display:flex;flex-direction:column;gap:6px}.quote-row{display:flex;align-items:flex-start;border:1px solid var(--line);border-radius:6px;padding:0 10px 0 0;gap:12px}.quote-row.chosen{border-color:var(--teal);background:var(--soft)}.quote-row details{flex:1;min-width:0}.quote-row summary{padding:12px 14px;display:flex;align-items:center;gap:12px;cursor:pointer;font-size:13px}.quote-row summary:before{content:'▸';color:var(--muted)}.quote-row details[open] summary:before{content:'▾'}.quote-row summary span{flex:1}.quote-row summary strong{font-size:18px;white-space:nowrap}.quote-row summary small{font-size:11px;font-weight:400;margin-left:4px}.quote-row>button{margin-top:9px;padding:5px 12px;min-width:70px;font-size:12px}.quote-row>button:disabled{cursor:not-allowed}.quote-detail{padding:0 16px 16px;font-size:12px}.quote-detail p{margin:7px 0}.compact-history .reference-selection{font-size:12px;padding:8px 0;margin:8px 0 0;background:none;gap:12px}.price-workspace,.order-workspace{grid-template-columns:minmax(280px,.9fr) minmax(0,1.3fr)}.preliminary{margin-bottom:20px}.preliminary .panel-body{padding:10px 20px}.order-line{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.order-result{margin:20px 0;padding:20px;background:var(--soft);border-radius:6px;display:flex;flex-direction:column;gap:8px}.order-result strong{font-size:32px}.order-result span{font-size:13px;color:var(--teal)}.bench-card h2{font-size:18px}.bench-card .small{margin-bottom:24px}.rail .nav-item{padding:12px 8px;font-size:13px;gap:8px}@media(max-width:850px){.price-workspace,.order-workspace{grid-template-columns:1fr}.nav-item{min-width:145px}.quote-row summary{padding:12px 8px;gap:7px}.quote-row summary strong{font-size:16px}.compact-history .panel-body{padding:12px}.quote-row{gap:5px}.quote-row>button{min-width:60px;padding:5px 8px}}@media(max-width:500px){.quote-row summary{flex-wrap:wrap}.quote-row summary span{min-width:130px}.quote-row summary strong{margin-left:16px}}

.quote-workspace{grid-template-columns:1fr 1fr;align-items:start}.comparison-tabs{margin:20px 0 14px}.quote-workspace .compact-history{margin:0}.quote-workspace .quote-list{max-height:none}.quote-delta{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:4px}.quote-row summary{gap:12px}.quote-row summary strong{white-space:nowrap}.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.mode-card{padding:24px}.mode-card h2{margin:0 0 20px}.mode-profit{display:block;font-size:30px;margin:8px 0}.mode-card.recommended{border-color:#6e73d5;background:#f5f5ff}.mode-formula{border-top:1px solid #e0e2f0;padding-top:16px;font-size:13px;line-height:1.8;color:#666a85}.recommendation{padding:24px 28px;background:#edeffc;border-radius:12px;margin-bottom:20px}.recommendation h2{margin:10px 0}.recommendation p{margin:0;line-height:1.7}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.mode-assumptions{border-top:1px solid #e0e2f0;margin-top:20px;padding-top:16px}.mode-assumptions summary{cursor:pointer;font-weight:600}.mode-assumptions .price-input{width:100%}.mode-card p{font-size:13px}.panel.section>summary{padding:18px 24px;cursor:pointer}@media(max-width:850px){.quote-workspace{grid-template-columns:1fr}.mode-grid{grid-template-columns:1fr}.mode-card{padding:20px}.mode-profit{font-size:28px}.input-grid{grid-template-columns:1fr}.recommendation{padding:20px}}

.decision-controls{margin:0 0 16px}.decision-controls>summary{padding:16px 20px;cursor:pointer;font-weight:600}.capacity-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:16px}.capacity-grid label{display:block;font-size:13px;margin-bottom:8px}.capacity-grid input,.capacity-grid select,[data-mode-field]{border:1px solid #e0e2f0;border-radius:6px;background:white;padding:10px;width:100%;font:inherit}.capacity-grid select{min-height:44px}.check-line{display:flex;align-items:center;gap:8px;font-size:13px;margin:18px 0}.check-line input{width:auto}.insight-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.insight-heading h2,.insight-heading h3{margin:0}.mode-card h2{margin-bottom:0}.mode-card .insight-heading{margin-bottom:16px}.mode-resources{border-top:1px solid #e0e2f0;padding-top:14px;display:grid;gap:6px;font-size:13px}.mode-fit{line-height:1.7;color:#626985}.constraint-text{line-height:1.7;color:#96612a;background:#fcf5e9;padding:10px;border-radius:6px}.mode-calculation{font-size:12px;color:#626985}.mode-calculation summary{cursor:pointer}.mode-calculation p{line-height:1.8}.mode-card{padding:22px}.mode-profit{font-size:28px}.mode-assumptions table input{min-width:90px}.mode-assumptions table select{min-width:170px}.price-insight{margin:18px 0;background:#f6f7ff;border-color:#ced3f0}.price-insight p{line-height:1.8;margin:10px 0}.insight-lead{font-size:17px;font-weight:600}.insight-evidence{border-top:1px solid #e0e2f0;margin-top:14px;padding-top:14px}.insight-evidence summary{cursor:pointer;font-size:13px}.evidence-notes{font-size:13px}.decision-controls summary{line-height:1.8}@media(max-width:850px){.capacity-grid{grid-template-columns:1fr}.insight-heading{align-items:flex-start}.mode-profit{font-size:26px}}

/* Blue-violet palette adapted from the public TINGNOVA identity. */
.rail{background:linear-gradient(180deg,#fff 0%,#f6f6ff 100%);color:var(--ink);border-right:1px solid var(--line)}.brand{padding:0 0 24px;letter-spacing:0}.brand-logo{position:relative;overflow:hidden;height:68px;background:#f7f7f7;border-radius:6px;margin-bottom:17px}.brand-logo img{position:absolute;width:150%;max-width:none;left:50%;top:50%;transform:translate(-50%,-54%)}.brand-title{padding:0 10px;font-size:22px;letter-spacing:3px}.brand-title span{font-size:11px;letter-spacing:4px;color:var(--muted);margin-top:5px}.rail-label{color:#9194ac;font-size:9px;letter-spacing:1.4px;padding:12px 8px}.nav-item{color:#626983}.nav-item span{color:#8e94b7}.nav-item:hover{background:#eceefb}.nav-item.active{background:linear-gradient(110deg,#2939ad,#5652b9);color:white;box-shadow:0 4px 12px #303ca91a}.nav-item.active span{color:#c9ceff}.rail-bottom{border-color:var(--line);color:#646987}.rail-bottom span{color:#9195af}header{border-top:3px solid #343fb3}.recommendation{background:linear-gradient(105deg,#eceffc,#f2edfa);border:1px solid #daddf4}.mode-card.recommended{box-shadow:0 3px 16px #4842a60a}.brand-logo img{display:block}@media(max-width:850px){.brand{display:flex;align-items:center;gap:14px;padding:0 0 8px}.brand-logo{width:145px;height:48px;margin:0;flex-shrink:0}.brand-title{font-size:18px;padding:0;letter-spacing:2px}.brand-title span{display:block;font-size:10px;letter-spacing:2px}.rail{border-bottom:1px solid var(--line);border-right:0}}
