:root{--ink:#111318;--ink2:#1c2029;--paper:#f3f1ed;--white:#fff;--line:#dcd8d1;--muted:#706e69;--coral:#ee5c45;--coral2:#ffe9e4;--blue:#2e68d2;--blue2:#e8effc;--lime:#b8e34b;--green:#197254;--red:#b53a37;--rail:164px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:0}button,input,select{font:inherit;letter-spacing:0}button{color:inherit;cursor:pointer}a{color:inherit}svg{width:18px;height:18px;stroke-width:1.8}[hidden]{display:none!important}.case-line{min-height:36px;padding:6px 18px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;color:#b8bdc8;background:#07080b;font-size:.64rem}.case-line b{color:var(--lime)}.case-line span{text-align:center}.app{min-height:calc(100vh - 36px);display:grid;grid-template-columns:var(--rail) minmax(0,1fr)}.app>aside{min-height:calc(100vh - 36px);position:sticky;top:0;align-self:start;display:flex;flex-direction:column;color:#f3f5f9;background:var(--ink);border-right:1px solid #313642}.brand{min-height:84px;padding:16px;display:flex;align-items:center;gap:9px;text-decoration:none;border-bottom:1px solid #303541}.brand>span{width:36px;height:36px;display:grid;place-items:center;color:var(--ink);background:var(--coral);font:900 .7rem ui-monospace,monospace}.brand div{display:grid;gap:3px}.brand b{font-size:.78rem}.brand small{color:#a5aab4;font-size:.56rem}.app aside nav{padding:16px 9px;display:grid;gap:5px}.app aside nav button{min-height:48px;padding:0 10px;display:flex;align-items:center;gap:9px;color:#aeb3bd;background:transparent;border:1px solid transparent;border-radius:4px;font-size:.65rem}.app aside nav button.active{color:#fff;background:#2a303b;border-color:#3e4552}.app aside nav button.active svg{color:var(--coral)}.side-foot{margin:auto 13px 15px;padding-top:13px;border-top:1px solid #353a45}.side-foot b{color:var(--lime);font:.58rem ui-monospace,monospace}.side-foot p{margin:6px 0 0;color:#9fa5af;font-size:.55rem;line-height:1.55}main{min-width:0}main>header{min-height:83px;padding:16px 27px;position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border-bottom:1px solid var(--line)}main>header p,.screen-title p,.panel-head p,.dialog-head p{margin:0 0 5px;color:var(--coral);font:800 .56rem ui-monospace,monospace}main>header h1{margin:0;font-size:1.25rem}main>header>div:last-child{display:flex;gap:8px}.icon,.primary{min-height:39px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:4px;font-size:.65rem;font-weight:780}.icon{width:39px;padding:0;background:#fff;border:1px solid #bbb8b2}.primary{color:#fff;background:var(--coral);border:1px solid var(--coral)}.screen{padding:24px 28px 42px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line)}.metrics article{min-height:108px;padding:17px;display:grid;align-content:space-between;border-right:1px solid var(--line)}.metrics article:last-child{border:0}.metrics span,.metrics small{color:var(--muted);font-size:.6rem}.metrics strong{margin:7px 0;font-size:1.8rem}.metrics .live strong{color:var(--blue)}.metrics .risk strong{color:var(--red)}.metrics .profit strong{color:var(--green)}.desk-grid{margin-top:16px;display:grid;grid-template-columns:1.22fr .78fr;gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:5px}.panel-head{min-height:60px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.panel-head h2{margin:0;font-size:.86rem}.panel-head button{display:flex;align-items:center;gap:6px;color:var(--coral);background:none;border:0;font-size:.61rem;font-weight:780}.project-row{min-height:67px;padding:11px 16px;display:grid;grid-template-columns:1fr 120px 85px;align-items:center;gap:10px;border-bottom:1px solid #eae7e2}.project-row:last-child{border-bottom:0}.project-row div{display:grid;gap:4px}.project-row b{font-size:.66rem}.project-row small,.project-row>span{color:var(--muted);font-size:.57rem}.cue ul{margin:0;padding:8px 16px 13px;list-style:none}.cue li{min-height:67px;display:grid;grid-template-columns:33px 1fr;gap:10px;align-items:center;border-bottom:1px solid #e9e6e1}.cue li:last-child{border:0}.cue li>svg{width:31px;height:31px;padding:7px;color:var(--blue);background:var(--blue2)}.cue li div{display:grid;gap:4px}.cue b{font-size:.63rem}.cue small{color:var(--muted);font-size:.56rem}.tag{padding:5px 7px;display:inline-flex;border-radius:3px;font-size:.55rem;font-weight:780}.tag.quote{color:#725300;background:#fff2ce}.tag.allocate,.tag.checkout{color:var(--blue);background:var(--blue2)}.tag.onsite{color:#8d3527;background:var(--coral2)}.tag.return{color:var(--red);background:#f8e6e5}.tag.closed{color:var(--green);background:#e5f2ec}.screen-title{margin-bottom:16px;display:flex;align-items:end;justify-content:space-between;gap:16px}.screen-title h2{margin:0;font-size:1.2rem}.screen-title>span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.58rem}.screen-title>span i{width:10px;height:10px;background:var(--blue)}.screen-title>span i.conflict{background:var(--red)}.schedule{overflow-x:auto}.schedule-head,.schedule-row{min-width:900px;display:grid;grid-template-columns:180px repeat(14,1fr)}.schedule-head>div,.schedule-row>div{min-height:39px;display:grid;place-items:center;border-right:1px solid #ebe8e3;border-bottom:1px solid #ebe8e3;font-size:.55rem}.schedule-head>div{color:var(--muted);background:#f7f5f2}.schedule-row .project-name{padding:8px 12px;display:block}.schedule-row .project-name b,.schedule-row .project-name small{display:block}.schedule-row .project-name small{margin-top:3px;color:var(--muted)}.slot.booked{margin:8px 2px;min-height:23px;background:var(--blue)}.slot.conflict{background:var(--red)}.kit-grid{margin-top:15px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.kit{padding:15px;background:#fff;border:1px solid var(--line)}.kit div{display:flex;justify-content:space-between;gap:10px}.kit b{font-size:.67rem}.kit span{font-size:.56rem;color:var(--green)}.kit p{margin:9px 0 0;color:var(--muted);font-size:.57rem;line-height:1.5}.runbook{min-height:620px;display:grid;grid-template-columns:270px minmax(0,1fr);background:#fff;border:1px solid var(--line)}.project-index{border-right:1px solid var(--line)}.index-head{height:50px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:.65rem}.index-head b{padding:3px 7px;color:#fff;background:var(--ink)}.project-tab{width:100%;min-height:81px;padding:11px 13px;display:grid;gap:4px;text-align:left;background:#fff;border:0;border-bottom:1px solid #e9e6e1}.project-tab.active{background:var(--coral2);box-shadow:inset 4px 0 var(--coral)}.project-tab b{font-size:.64rem}.project-tab span,.project-tab small{color:var(--muted);font-size:.56rem}.project-work{padding:21px;min-width:0}.project-hero{display:flex;justify-content:space-between;gap:18px}.project-hero h2{margin:5px 0;font-size:1.08rem}.project-hero p{margin:0;color:var(--coral);font:.58rem ui-monospace,monospace}.project-hero small{color:var(--muted);font-size:.6rem}.stage-track{margin:20px 0;display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line)}.stage-node{min-height:69px;padding:9px;display:grid;align-content:center;gap:5px;border-right:1px solid var(--line)}.stage-node:last-child{border:0}.stage-node i{font-style:normal;width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:#ebe9e5;font-size:.53rem}.stage-node b{color:var(--muted);font-size:.54rem}.stage-node.done i,.stage-node.current i{color:#fff;background:var(--coral)}.stage-node.current{background:var(--coral2)}.stage-node.done b,.stage-node.current b{color:var(--ink)}.work-grid{display:grid;grid-template-columns:1fr 230px;gap:16px}.work-form,.project-log{padding:15px;border:1px solid var(--line)}.work-form h3,.project-log h3{margin:0 0 11px;font-size:.7rem}.check{min-height:40px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #e9e6e1;font-size:.6rem}.check input{accent-color:var(--coral)}.stage-fields{margin-top:11px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.stage-fields label{display:grid;gap:4px;color:var(--muted);font-size:.56rem}.stage-fields input{height:36px;padding:0 8px;border:1px solid #bcb8b1}.advance{margin-top:12px;width:100%;min-height:40px;color:#fff;background:var(--coral);border:0;border-radius:3px;font-size:.64rem;font-weight:800}.advance:disabled{background:#aaa8a4}.project-log{color:#fff;background:var(--ink2);border-color:var(--ink2)}.project-log div{padding:8px 0;color:#c6c9cf;border-bottom:1px solid #383e49;font-size:.56rem}.finance-strip{margin-bottom:15px;display:grid;grid-template-columns:repeat(4,1fr);color:#fff;background:var(--ink2)}.finance-strip article{padding:17px;display:grid;gap:7px;border-right:1px solid #3c414c}.finance-strip span{color:#acb1bb;font-size:.57rem}.finance-strip strong{font-size:1.35rem}.table-wrap{overflow-x:auto}table{width:100%;min-width:850px;border-collapse:collapse}th,td{height:52px;padding:0 13px;border-bottom:1px solid #e8e5df;text-align:left;white-space:nowrap;font-size:.62rem}th{height:39px;color:var(--muted);background:#f7f5f2;font-size:.55rem}dialog{width:min(650px,calc(100% - 28px));padding:0;border:0;border-radius:5px;box-shadow:0 25px 75px #0008}dialog::backdrop{background:#080a0dcc}dialog form{padding:20px}.dialog-head{margin-bottom:17px;display:flex;justify-content:space-between}.dialog-head h2{margin:0;font-size:1rem}.dialog-head button{width:34px;height:34px;display:grid;place-items:center;background:#fff;border:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label{display:grid;gap:5px;color:var(--muted);font-size:.58rem}.form-grid input,.form-grid select{height:39px;padding:0 9px;border:1px solid #bcb8b1}.full{width:100%;margin-top:16px}.toast{position:fixed;right:20px;bottom:20px;z-index:80;padding:11px 15px;color:#fff;background:var(--ink);border-left:4px solid var(--coral);font-size:.62rem}
@media(max-width:800px){.case-line{grid-template-columns:1fr auto}.case-line span{display:none}.app{display:block}.app>aside{min-height:0;position:static}.brand{min-height:67px}.side-foot{display:none}.app aside nav{padding:0;position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;background:var(--ink);border-top:1px solid #343a45}.app aside nav button{height:60px;min-height:60px;flex:1;padding:0 3px;flex-direction:column;justify-content:center;gap:3px;font-size:.51rem}.app aside nav button.active{border:0;border-top:3px solid var(--coral)}main>header{top:0;padding:12px 14px;min-height:70px}main>header h1{font-size:1.02rem}main>header .primary{padding:0;width:39px}main>header .primary svg{margin:0}main>header .primary{font-size:0}.screen{padding:18px 14px 80px}.metrics{grid-template-columns:1fr 1fr}.metrics article:nth-child(2){border-right:0}.metrics article:nth-child(-n+2){border-bottom:1px solid var(--line)}.desk-grid{grid-template-columns:1fr}.kit-grid{grid-template-columns:1fr}.runbook{grid-template-columns:1fr;min-height:0}.project-index{border-right:0;border-bottom:1px solid var(--line)}#project-index{display:flex;overflow-x:auto}.project-tab{min-width:210px}.project-work{padding:14px}.stage-track{overflow-x:auto;grid-template-columns:repeat(6,110px)}.work-grid{grid-template-columns:1fr}.stage-fields{grid-template-columns:1fr}.finance-strip{grid-template-columns:1fr 1fr}.screen-title{align-items:start}.form-grid{grid-template-columns:1fr}}
