:root{
  --ink:#082a27;--ink-2:#0d3934;--blue:#168ed1;--teal:#1eb4a5;--green:#39b76f;
  --bg:#f4f7f8;--surface:#fff;--line:#dfe8e7;--muted:#6b7f7c;--text:#173330;
  --red:#d34f5d;--amber:#e99b2e;--shadow:0 8px 28px rgba(8,42,39,.08);--r:14px
}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:"Segoe UI","Microsoft YaHei",Arial,sans-serif;font-size:14px}
button,input,select,textarea{font:inherit}.shell{display:grid;grid-template-columns:276px minmax(0,1fr);min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:276px;background:linear-gradient(155deg,#062b2a 0%,#072724 48%,#092f2c 100%);color:#dceae8;padding:18px 18px 14px;display:flex;flex-direction:column;z-index:10;box-shadow:10px 0 28px rgba(5,35,32,.08)}
.brand{height:66px;display:flex;align-items:center;gap:10px;padding:0 8px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.brand img{width:45px;height:45px;object-fit:contain;background:#fff;border-radius:10px;padding:3px}.brand strong{display:block;color:#fff;font-size:20px;letter-spacing:2px}.brand small{color:#9fc1bc}
.nav{display:grid;gap:3px;margin:15px -4px 10px;padding:0 4px 10px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#35665f transparent}.nav-group{display:grid;gap:2px}.nav button{display:flex;align-items:center;gap:12px;border:0;color:#b8cecb;background:transparent;padding:10px 10px;border-radius:10px;text-align:left;cursor:pointer;min-height:42px;width:100%;transition:background .18s,color .18s}
.nav button:hover,.nav button.active{color:#fff}.nav-parent:hover,.nav-parent.active{background:rgba(32,181,166,.09)}.nav-parent i{width:23px;height:23px;display:grid;place-items:center;color:#9eb8b5}.nav svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.nav-parent span{flex:1;font-weight:650;font-size:14px}.nav-parent em{width:20px;height:20px;display:grid;place-items:center;color:#91aaa6;transition:.2s}.nav-parent em svg{width:16px;height:16px}.nav-group.open>.nav-parent em{transform:rotate(180deg)}.nav-group.open>.nav-parent i,.nav-group.open>.nav-parent span{color:#e4f4f1}.nav-children{display:none;padding:1px 0 5px;margin:0 0 1px 11px}.nav-group.open .nav-children{display:grid;gap:1px}.nav-children button{padding:10px 9px 10px 20px;min-height:41px;font-size:13px;position:relative;color:#b5c9c6;border-radius:11px}.nav-children button i{width:21px;height:21px;display:grid;place-items:center;color:#8ca8a4}.nav-children button i svg{width:16px;height:16px}.nav-children button:hover{background:rgba(30,180,165,.08);color:#dff7f3}.nav-children button:hover i,.nav-children button.active i{color:#23c2b2}.nav-children button.active{background:linear-gradient(90deg,rgba(30,180,165,.22),rgba(30,180,165,.12));color:#24c5b5;box-shadow:none}.nav-children button small{margin-left:auto;color:#dfb66c;font-size:9px}.nav-children button.active:before{content:"";position:absolute;left:8px;width:4px;height:24px;border-radius:4px;background:#2bd0bf;box-shadow:0 0 10px rgba(43,208,191,.45)}
.user-card{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:17px 8px 2px;display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--green));color:#fff;font-weight:800}.user-card small{display:block;color:#9fc1bc;margin-top:2px}
.main{grid-column:2;min-width:0}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:22px;padding:0 28px;position:sticky;top:0;z-index:8}
.search{max-width:560px;flex:1;position:relative}.search input{width:100%;height:40px;border:1px solid var(--line);border-radius:10px;background:#f7faf9;padding:0 16px 0 38px;outline:none}.search span{position:absolute;left:13px;top:10px;color:var(--muted)}
.top-actions{margin-left:auto;display:flex;gap:8px}.content{padding:25px 28px 42px;max-width:1680px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.page-head h1{font-size:25px;margin:0 0 6px;color:var(--ink)}.page-head p{margin:0;color:var(--muted)}
.btn{border:1px solid var(--line);background:#fff;color:var(--ink-2);border-radius:9px;padding:9px 15px;font-weight:650;cursor:pointer}.btn:hover{border-color:var(--teal);color:#0a7167}.btn.primary{background:var(--ink-2);color:#fff;border-color:var(--ink-2)}.btn.accent{background:var(--teal);color:#fff;border-color:var(--teal)}.btn.small{padding:6px 10px;font-size:12px}.btn.danger{color:var(--red)}
.grid{display:grid;gap:16px}.stats{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 19px;box-shadow:0 2px 8px rgba(8,42,39,.03)}.stat span{color:var(--muted)}.stat strong{display:block;font-size:28px;color:var(--ink);margin:10px 0 5px}.stat small{color:var(--green)}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:0 2px 10px rgba(8,42,39,.035);overflow:hidden}.panel-head{min-height:54px;padding:0 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;justify-content:space-between}.panel-head h2{font-size:16px;margin:0;color:var(--ink)}.panel-body{padding:18px}
.dashboard-grid{grid-template-columns:1.35fr .85fr}.chart{height:238px;display:flex;align-items:end;gap:16px;padding:30px 15px 5px;border-bottom:1px solid var(--line);position:relative}.bar{flex:1;min-width:24px;background:linear-gradient(180deg,var(--teal),var(--blue));border-radius:7px 7px 2px 2px;position:relative}.bar span{position:absolute;bottom:-27px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--muted)}.chart-labels{display:flex;justify-content:space-between;margin-top:38px;color:var(--muted);font-size:12px}
.todo{display:grid;gap:10px}.todo-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px}.todo-row b{display:block;margin-bottom:3px}.todo-row small{color:var(--muted)}.dot{width:10px;height:10px;border-radius:50%;background:var(--teal);flex:none}.dot.amber{background:var(--amber)}.dot.red{background:var(--red)}
table{width:100%;border-collapse:collapse}th{font-size:12px;color:#57706c;background:#f6f9f8;text-align:left;font-weight:700}th,td{padding:11px 12px;border-bottom:1px solid var(--line)}tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums}.tag{display:inline-flex;align-items:center;padding:4px 8px;border-radius:20px;background:#e9f8f4;color:#08766a;font-size:11px;font-weight:700}.tag.blue{background:#eaf5fc;color:#157db4}.tag.amber{background:#fff5e4;color:#a86b0c}.tag.red{background:#fff0f1;color:#b83c49}.tag.gray{background:#eef2f2;color:#6c7d7a}
.form-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.field label{display:block;margin-bottom:7px;font-size:12px;font-weight:700;color:#526b67}.field input,.field select,.field textarea{width:100%;border:1px solid #cfdddb;border-radius:8px;background:#fff;color:var(--text);outline:none}.field input,.field select{height:39px;padding:0 10px}.field textarea{padding:10px;min-height:80px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(30,180,165,.11)}
.mode{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.mode button{flex:1;border:0;padding:10px;background:#fff;cursor:pointer}.mode button.active{background:var(--ink-2);color:#fff}.cost-layout{display:grid;grid-template-columns:minmax(620px,1.45fr) minmax(340px,.65fr);gap:16px;align-items:start;margin-top:16px}.sticky{position:sticky;top:88px}
.config-table select,.config-table input{height:34px;border:1px solid #cfdddb;border-radius:7px;padding:0 8px;max-width:100%}.thumb{width:42px;height:42px;border-radius:8px;background:linear-gradient(135deg,#eaf6f5,#eef5fa);display:grid;place-items:center;color:var(--teal);font-weight:800;border:1px solid var(--line)}.option-cell{display:flex;align-items:center;gap:9px}.post-price{color:#0a7167;font-size:12px;font-weight:700}
.summary-list{display:grid}.summary-row{padding:13px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.summary-row strong{font-size:17px}.summary-row.total{margin:12px -18px -18px;padding:18px;background:var(--ink);color:#fff}.summary-row.total strong{font-size:24px}.rate-input{width:72px;height:32px;border:1px solid var(--line);border-radius:7px;text-align:right}
.ladder-wrap{overflow:auto}.ladder-table td,.ladder-table th{white-space:nowrap}.ladder-table tr.current td{background:#ecf8f5;font-weight:700;color:#075e56}.copyable{cursor:pointer}.copyable:hover{background:#edf8f6!important}
.split{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px}.list-card{display:grid;gap:7px}.product-item{display:flex;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.product-item.active,.product-item:hover{border-color:var(--teal);background:#f2fbf9}.product-visual{width:58px;height:70px;border-radius:12px;background:linear-gradient(155deg,var(--blue),var(--teal),var(--green));position:relative;overflow:hidden}.product-visual:after{content:"";position:absolute;width:14px;height:52px;border-radius:12px;background:#fff;left:22px;top:9px;opacity:.92}.product-item b{display:block;margin:9px 0 5px}.product-item small{color:var(--muted)}
.tabs{display:flex;gap:3px;border-bottom:1px solid var(--line);padding:0 18px}.tab{border:0;background:#fff;padding:13px 14px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}.tab.active{color:#08766a;border-color:var(--teal);font-weight:700}.hero-detail{display:flex;align-items:center;gap:18px;padding:20px}.hero-product{width:105px;height:125px}.hero-detail h2{font-size:24px;margin:0 0 8px}.hero-detail p{color:var(--muted);margin:8px 0 14px}.detail-actions{margin-left:auto;display:flex;gap:8px}
.knowledge-cats{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.cat{padding:20px;border-top:4px solid var(--teal)}.cat:nth-child(2){border-color:var(--blue)}.cat:nth-child(3){border-color:var(--green)}.cat:nth-child(4){border-color:var(--ink)}.cat strong{font-size:17px}.cat span{display:block;color:var(--muted);margin-top:8px}.course-grid{grid-template-columns:repeat(3,1fr)}.course-cover{height:120px;background:linear-gradient(135deg,#dff4f1,#dceffa);display:grid;place-items:center;font-size:38px;color:var(--teal)}.course-body{padding:15px}.course-body h3{font-size:15px;margin:7px 0}.course-body p{color:var(--muted);font-size:12px;line-height:1.7}.progress{height:7px;background:#e7efed;border-radius:6px;overflow:hidden}.progress i{display:block;height:100%;background:var(--teal);border-radius:6px}
.kanban{grid-template-columns:repeat(4,1fr);align-items:start}.kanban-col{background:#edf3f2;border-radius:12px;padding:12px}.kanban-col h3{font-size:13px;margin:2px 0 12px;display:flex;justify-content:space-between}.project{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px;margin-bottom:10px}.project b{display:block;margin-bottom:7px}.project p{color:var(--muted);font-size:12px;line-height:1.6;margin:0 0 10px}.faces{display:flex}.face{width:23px;height:23px;border-radius:50%;background:var(--teal);color:#fff;display:grid;place-items:center;font-size:10px;border:2px solid #fff;margin-right:-5px}
.case-grid{grid-template-columns:repeat(3,1fr)}.case{padding:17px}.case h3{font-size:16px}.case p{color:var(--muted);line-height:1.7}.case-foot{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:12px}
.quick-grid{display:grid;gap:9px}.quick-action{display:flex;align-items:center;gap:12px;width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;color:var(--text);cursor:pointer}.quick-action:hover{border-color:var(--teal);background:#f3fbf9}.quick-action i{width:36px;height:36px;border-radius:9px;background:#e9f8f4;color:#08766a;display:grid;place-items:center;font-style:normal;font-weight:800}.quick-action span{min-width:0}.quick-action b,.quick-action small{display:block}.quick-action small{color:var(--muted);margin-top:4px;font-size:11px}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.module-card{padding:20px;display:flex;gap:15px;align-items:flex-start}.module-card>i{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#e3f5f2,#e4f0f8);color:var(--teal);display:grid;place-items:center;font-style:normal;font-size:20px;flex:none}.module-card h3{margin:2px 0 7px}.module-card p{color:var(--muted);line-height:1.6;min-height:44px;margin:0 0 12px}.employee-hero{display:flex;align-items:center;gap:16px;padding:22px;margin-bottom:18px;background:linear-gradient(125deg,#fff 35%,#e8f8f4)}.employee-avatar{width:58px;height:58px;font-size:20px}.employee-hero h2{margin:4px 0 6px}.employee-hero p,.employee-hero small{color:var(--muted);margin:0}.employee-score{margin-left:auto;text-align:right}.employee-score b{display:block;color:var(--teal);font-size:32px}.employee-score span{color:var(--muted);font-size:11px}
.quote-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:16px}.quote-flow>div{display:grid;grid-template-columns:38px 1fr;column-gap:10px}.quote-flow i{grid-row:1/3;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e5f7f3;color:#08766a;font-style:normal;font-weight:800}.quote-flow b,.quote-flow small{display:block}.quote-flow small{color:var(--muted);margin-top:4px}.quote-flow>span{color:var(--teal);font-size:20px}.quote-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote-tool{padding:22px;display:grid;grid-template-columns:180px 1fr;gap:22px;align-items:center;border-top:4px solid var(--blue)}.quote-tool.chinese{border-top-color:var(--green)}.quote-tool h2{margin:10px 0 7px}.quote-tool p,.quote-tool li{color:var(--muted);line-height:1.6}.quote-tool ul{padding-left:18px}.doc-preview{height:210px;background:#fff;border:1px solid var(--line);border-radius:7px;box-shadow:0 12px 24px rgba(8,42,39,.09);padding:20px;display:flex;flex-direction:column;gap:15px;color:var(--blue)}.doc-preview b{font-size:22px;letter-spacing:2px}.doc-preview i{height:7px;border-radius:5px;background:#dce9e7}.doc-preview i:nth-child(3){width:75%}.doc-preview i:nth-child(4){width:55%}.doc-preview span{margin-top:auto;font-size:11px;color:var(--muted)}.settings-tabs{display:flex;gap:5px;background:#e8efee;padding:5px;border-radius:10px;margin-bottom:16px;overflow:auto}.settings-tabs button{border:0;background:transparent;padding:9px 14px;border-radius:7px;color:var(--muted);white-space:nowrap;cursor:pointer}.settings-tabs button.active{background:#fff;color:var(--ink);font-weight:700;box-shadow:0 2px 6px rgba(8,42,39,.07)}.module-control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px}.module-control{border:1px solid var(--line);border-radius:10px;padding:13px;display:flex;align-items:center;gap:12px}.module-control div{flex:1;min-width:0}.module-control b,.module-control small{display:block}.module-control small{color:var(--muted);font-size:10px;margin-top:5px}.module-control select{border:1px solid var(--line);border-radius:7px;padding:7px;background:#fff}.status-试用中{color:#157db4}.status-暂未开放{color:#a86b0c}.status-已隐藏{color:#b83c49}
.empty{padding:54px;text-align:center;color:var(--muted)}.notice{padding:12px 14px;border-radius:9px;background:#eaf8f5;color:#0a7167;margin-bottom:15px}.muted{color:var(--muted)}.actions{display:flex;gap:8px;align-items:center}.right{margin-left:auto}.toast{position:fixed;right:28px;bottom:28px;background:var(--ink);color:#fff;padding:12px 17px;border-radius:9px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);transition:.2s;pointer-events:none;z-index:100}.toast.show{opacity:1;transform:none}
.modal-backdrop{position:fixed;inset:0;background:rgba(8,42,39,.45);display:grid;place-items:center;z-index:50;padding:20px}.modal{background:#fff;border-radius:16px;width:min(760px,100%);max-height:90vh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.22)}.modal-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.modal-head h2{margin:0;font-size:18px}.modal-body{padding:20px}.close{border:0;background:#edf3f2;border-radius:7px;width:30px;height:30px;cursor:pointer}
@media(max-width:1250px){.stats,.knowledge-cats{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:repeat(3,1fr)}.cost-layout,.dashboard-grid{grid-template-columns:1fr}.sticky{position:static}.kanban,.module-grid,.module-control-grid{grid-template-columns:repeat(2,1fr)}.quote-tool{grid-template-columns:130px 1fr}}
@media(max-width:850px){.shell{display:block}.sidebar{display:none}.main{display:block}.content{padding:18px}.topbar{padding:0 18px}.stats,.course-grid,.case-grid,.knowledge-cats,.kanban,.split,.module-grid,.module-control-grid,.quote-tool-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr 1fr}.page-head{gap:12px}.detail-actions{display:none}.employee-hero{align-items:flex-start}.employee-score{display:none}.quote-flow{display:none}.quote-tool{grid-template-columns:1fr}.doc-preview{display:none}}
@media print{.sidebar,.topbar,.page-head .actions,.btn{display:none!important}.shell{display:block}.main{display:block}.content{padding:0}.panel{box-shadow:none}.sticky{position:static}}

.login-page{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;background:linear-gradient(135deg,#062b2a,#0b4741);padding:7vw;gap:7vw;align-items:center}
.login-brand{color:#fff}.login-brand img{width:96px;height:96px;background:#fff;border-radius:20px;padding:8px}.login-brand h1{font-size:54px;letter-spacing:8px;margin:22px 0 4px}.login-brand p{color:#b8d8d4;font-size:18px}.login-brand div{display:grid;margin-top:50px}.login-brand div b{font-size:24px}.login-brand div span{color:#9ecbc5;margin-top:8px}
.login-card,.install-card{background:#fff;border-radius:20px;padding:38px;box-shadow:0 28px 80px rgba(0,0,0,.24)}.login-card h2{font-size:28px;margin:18px 0 5px}.login-card p{color:var(--muted)}.login-card label{display:grid;gap:7px;font-weight:700;margin:18px 0}.login-card input{height:44px;border:1px solid var(--line);border-radius:9px;padding:0 12px}.login-card .btn{width:100%;margin-top:12px}.install-page{min-height:100vh;background:#edf4f2;padding:5vh 20px}.install-card{width:min(850px,100%);margin:auto}.install-card>img{width:70px}
@media(max-width:850px){.login-page{grid-template-columns:1fr;padding:25px}.login-brand{display:none}}

/* JOOKIA Business Platform phase 1 */
.global-search-trigger{width:min(700px,60vw);height:42px;border:1px solid var(--line);border-radius:10px;background:#f7faf9;color:var(--muted);display:flex;align-items:center;gap:11px;padding:0 13px;cursor:pointer;text-align:left}
.global-search-trigger>span:nth-child(2){flex:1}.global-search-trigger kbd,.shortcut-hint,.command-input kbd{font:600 11px/1 "Segoe UI","Microsoft YaHei",sans-serif;background:#fff;border:1px solid #cfdddb;border-bottom-width:2px;border-radius:6px;padding:6px 8px;color:#647774}
.favorites-panel{margin-bottom:18px}.favorite-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-top:0}.favorite-entry{position:relative;display:flex;align-items:center;gap:11px;padding:17px 15px;border:0;border-right:1px solid var(--line);background:#fff;text-align:left;color:var(--text);cursor:pointer}.favorite-entry:last-child{border-right:0}.favorite-entry:hover{background:#f2fbf9}.favorite-entry i{width:38px;height:38px;border-radius:10px;background:#e9f8f4;color:#08766a;display:grid;place-items:center;flex:none}.favorite-entry i svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}.favorite-entry b,.favorite-entry small{display:block}.favorite-entry small{color:var(--muted);font-size:10px;margin-top:4px;line-height:1.35}.favorite-entry em{position:absolute;right:8px;top:7px;font-size:9px;color:#a86b0c;font-style:normal}.favorite-entry.disabled{opacity:.7}
.route-placeholder{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px}.placeholder-icon{width:64px;height:64px;border-radius:18px;background:#e9f8f4;color:#08766a;display:grid;place-items:center}.placeholder-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7}.route-placeholder h2{font-size:23px;margin:18px 0 6px}.route-placeholder p{color:var(--muted);margin:0 0 16px}.route-placeholder .tag{margin:0 3px}.route-placeholder>small{color:var(--muted);margin-top:24px}
.tool-entry-page{min-height:430px;padding:52px;display:grid;grid-template-columns:150px minmax(0,620px);justify-content:center;align-items:center;gap:45px}.tool-entry-mark{width:140px;height:140px;border-radius:32px;background:linear-gradient(145deg,#e3f6f2,#e3f0f8);color:var(--teal);display:grid;place-items:center}.tool-entry-mark svg{width:58px;height:58px;fill:none;stroke:currentColor;stroke-width:1.5}.tool-entry-copy h2{font-size:27px;margin:13px 0 8px}.tool-entry-copy>p{color:var(--muted);line-height:1.75}.tool-status-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.tool-status-list div{padding:12px;border:1px solid var(--line);border-radius:10px}.tool-status-list b,.tool-status-list span{display:block}.tool-status-list span{color:var(--muted);font-size:11px;margin-top:5px}
.command-backdrop{position:fixed;inset:0;background:rgba(5,31,29,.48);z-index:100;display:flex;justify-content:center;align-items:flex-start;padding-top:10vh}.command-panel{width:min(720px,calc(100vw - 32px));background:#fff;border-radius:15px;box-shadow:0 30px 80px rgba(0,0,0,.3);overflow:hidden}.command-input{height:62px;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid var(--line)}.command-input input{flex:1;border:0;outline:0;font-size:16px;color:var(--ink)}.command-categories{display:flex;gap:6px;padding:11px 15px;background:#f6f9f8;border-bottom:1px solid var(--line);overflow:auto}.command-categories span{font-size:11px;color:var(--muted);white-space:nowrap;padding:5px 8px}.command-categories span.active{background:#e5f7f3;color:#08766a;border-radius:6px;font-weight:700}.command-results{max-height:390px;overflow:auto;padding:8px}.command-result{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:#fff;padding:12px;border-radius:8px;color:var(--text);cursor:pointer}.command-result:hover,.command-result.selected{background:#eaf8f5;color:#08766a}.command-result small{color:var(--muted)}.command-empty{padding:45px;text-align:center;color:var(--muted)}.command-footer{display:flex;gap:18px;padding:11px 17px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}
@media(max-width:1350px){.favorite-grid{grid-template-columns:repeat(3,1fr)}.favorite-entry:nth-child(3){border-right:0}.favorite-entry{border-bottom:1px solid var(--line)}}
@media(max-width:850px){.global-search-trigger{width:100%}.global-search-trigger kbd{display:none}.favorite-grid{grid-template-columns:1fr 1fr}.favorite-entry:nth-child(3){border-right:1px solid var(--line)}.favorite-entry:nth-child(even){border-right:0}.tool-entry-page{grid-template-columns:1fr;padding:30px}.tool-entry-mark{width:90px;height:90px;border-radius:22px}.tool-status-list{grid-template-columns:1fr}}

/* Order collaboration center */
.order-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 16px}
.order-tabs button{border:1px solid var(--line);background:#fff;color:var(--ink-2);border-radius:999px;padding:9px 15px;font-weight:800;cursor:pointer}
.order-tabs button.active,.order-tabs button:hover{background:linear-gradient(135deg,#073b34,#16b3a8);color:#fff;border-color:transparent}
.order-workbench{grid-template-columns:minmax(0,1.35fr) 360px}
.sop-list{display:grid;gap:12px;padding:4px 0}.sop-list div{border:1px solid var(--line);border-radius:12px;padding:14px;background:#f7fbfa}.sop-list b,.sop-list span{display:block}.sop-list span{color:var(--muted);font-size:13px;margin-top:5px}
.order-filter{display:grid;grid-template-columns:minmax(260px,1fr) 180px 160px auto;gap:10px;margin-bottom:14px}
.order-filter input,.order-filter select,.order-form input,.order-form select,.order-form textarea{border:1px solid #cfdddb;border-radius:9px;padding:10px;background:#fff}
.order-form{grid-template-columns:repeat(4,1fr)}.wide-field{grid-column:span 2}.order-form textarea{min-height:90px;resize:vertical}
tr[data-order-open]{cursor:pointer}tr[data-order-open]:hover{background:#f2faf8}.row-danger{background:#fff5f4!important}
.tag.red{background:#ffe6e2;color:#b42318}.btn.danger{border-color:#f0b4ad;color:#b42318;background:#fff5f4}.btn.danger:hover{background:#ffe6e2}
.order-basic{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}.order-basic div{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px}.order-basic span{display:block;color:var(--muted);font-size:12px}.order-basic b{display:block;margin-top:6px;font-size:18px}
.order-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:16px;margin-bottom:16px}
.process-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.process-node{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff}.process-node i{width:12px;height:12px;border-radius:999px;background:#c8d7d4;margin-top:4px;flex:0 0 auto}.process-node.in_progress i{background:#17b6ad}.process-node.completed i{background:#16a34a}.process-node.exception i{background:#e5483e}.process-node b,.process-node small{display:block}.process-node small{color:var(--muted);margin-top:4px}
.issue-list,.comment-list{display:grid;gap:10px}.issue-card,.comment-list article{border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.issue-card h3{font-size:15px;margin:8px 0}.issue-card p,.comment-list p{color:var(--ink-2);margin:7px 0}.issue-card small,.comment-list small{color:var(--muted)}
.timeline{position:relative;display:grid;gap:13px;padding-left:18px}.timeline:before{content:"";position:absolute;left:5px;top:5px;bottom:5px;width:1px;background:var(--line)}.timeline div{position:relative}.timeline i{position:absolute;left:-18px;top:4px;width:11px;height:11px;border-radius:999px;background:#17b6ad;border:2px solid #fff;box-shadow:0 0 0 1px #a7dcd6}.timeline b,.timeline p,.timeline small{display:block}.timeline p{margin:5px 0;color:var(--ink-2)}.timeline small{color:var(--muted)}
.order-empty{min-height:130px;display:grid;place-items:center;gap:12px;color:var(--muted)}.modal.wide{width:min(920px,calc(100vw - 36px))}td small{display:block;color:var(--muted);margin-top:4px}
@media(max-width:1250px){.order-workbench,.order-detail-grid{grid-template-columns:1fr}.order-basic{grid-template-columns:repeat(3,1fr)}.process-list{grid-template-columns:1fr}}
@media(max-width:850px){.order-filter,.order-form,.order-basic{grid-template-columns:1fr}.wide-field{grid-column:auto}}

/* JOOKIA light blue-violet redesign */
:root{
  --ink:#172033;--ink-2:#26324a;--blue:#4f7dff;--teal:#20c7b5;--green:#31c77f;
  --violet:#7a5cff;--bg:#f6f8fd;--surface:#fff;--line:#e6ebf5;--muted:#748095;--text:#25324b;
  --shadow:0 18px 50px rgba(40,63,115,.08);--soft-shadow:0 10px 28px rgba(48,72,122,.06);--r:18px
}
body{background:linear-gradient(180deg,#f8faff 0%,#f5f7fc 100%);color:var(--text)}
.shell{grid-template-columns:256px minmax(0,1fr)}
.sidebar{width:256px;background:rgba(255,255,255,.92);color:#657188;border-right:1px solid #edf1f8;box-shadow:14px 0 38px rgba(39,63,111,.05);backdrop-filter:blur(16px)}
.brand{border-bottom:1px solid #edf1f8}.brand strong{color:#18243a;letter-spacing:3px}.brand small{color:#7a8598}.brand img{box-shadow:0 8px 20px rgba(79,125,255,.16)}
.nav{scrollbar-color:#d8deeb transparent}.nav button{color:#6a7589}.nav button:hover,.nav button.active{color:#244068}.nav-parent:hover,.nav-parent.active{background:#f3f6ff}.nav-parent i{color:#8290a5}.nav-parent span{font-weight:750}.nav-group.open>.nav-parent i,.nav-group.open>.nav-parent span{color:#25324b}.nav-children button{color:#718099}.nav-children button:hover{background:#f5f8ff;color:#3257d9}.nav-children button.active{background:linear-gradient(90deg,rgba(79,125,255,.15),rgba(32,199,181,.12));color:#315bff}.nav-children button.active i,.nav-children button:hover i{color:#4f7dff}.nav-children button.active:before{background:linear-gradient(180deg,#4f7dff,#20c7b5);box-shadow:0 0 14px rgba(79,125,255,.35)}.nav-parent em{color:#9aa6b8}
.user-card{border-top:1px solid #edf1f8}.user-card b{color:#23304a}.user-card small{color:#7a8598}.avatar{background:linear-gradient(135deg,#4f7dff,#20c7b5)}
.main{background:transparent}.topbar{height:72px;background:rgba(255,255,255,.78);border-bottom:1px solid #edf1f8;backdrop-filter:blur(18px)}.top-actions b{color:#22304a}
.global-search-trigger{background:#fff;border-color:#e4eaf5;border-radius:16px;box-shadow:0 8px 24px rgba(44,66,120,.04);color:#8a94a6}
.content{padding:24px 32px 44px}.page-head h1{color:#172033;font-size:28px}.page-head p{color:#748095}
.order-head-summary{display:flex;flex-wrap:wrap;gap:7px 18px;align-items:center;max-width:1040px;line-height:1.8;color:#66758c}
.order-head-summary span{white-space:nowrap}
.order-head-summary b{color:#172033;font-weight:800}
.panel,.stat{border-color:#e6ebf5;border-radius:20px;box-shadow:var(--soft-shadow);background:rgba(255,255,255,.94)}.panel-head{border-bottom-color:#edf1f8}.panel-head h2{color:#172033}.light-card{box-shadow:var(--shadow)}
.btn{border-color:#e1e7f2;border-radius:12px;color:#26324a}.btn:hover{border-color:#90a9ff;color:#315bff}.btn.primary{background:linear-gradient(135deg,#4f7dff,#20c7b5);border:0;box-shadow:0 10px 24px rgba(79,125,255,.22)}.btn.accent{background:#4f7dff;border-color:#4f7dff}
.tag{background:#e9fbf8;color:#159582}.tag.blue{background:#edf3ff;color:#4169e1}.tag.amber{background:#fff6df;color:#b77900}.tag.red{background:#fff0f0;color:#d64545}
.cockpit-page{display:grid;gap:18px}.cockpit-hero{position:relative;min-height:230px;border-radius:28px;padding:34px 38px;overflow:hidden;background:linear-gradient(135deg,#eef4ff 0%,#f7f4ff 48%,#eafff9 100%);box-shadow:var(--shadow);display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:center}.cockpit-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 22%,rgba(79,125,255,.22),transparent 28%),radial-gradient(circle at 30% 80%,rgba(32,199,181,.14),transparent 28%)}.hero-copy,.hero-visual{position:relative;z-index:1}.hero-kicker{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(122,92,255,.13);color:#6c56e8;font-weight:800;font-size:12px}.cockpit-hero h1{margin:14px 0 8px;font-size:34px;color:#172033}.cockpit-hero p{margin:0;color:#60708a;font-size:16px}.hero-actions{display:flex;gap:10px;margin-top:22px}
.hero-visual{height:180px}.cube{position:absolute;border-radius:24px;background:linear-gradient(145deg,#6e8cff,#31d6c0);box-shadow:0 26px 50px rgba(79,125,255,.24);transform:rotate(-12deg)}.cube.c1{width:120px;height:105px;right:120px;top:38px}.cube.c2{width:80px;height:70px;right:70px;top:75px;opacity:.82}.cube.c3{width:64px;height:58px;right:185px;top:98px;opacity:.55}.hero-visual i,.hero-visual em{position:absolute;border-radius:999px;background:rgba(122,92,255,.18)}.hero-visual i{width:54px;height:54px;right:70px;top:22px}.hero-visual em{width:28px;height:28px;right:235px;top:34px}
.daily-quote{display:flex;align-items:center;gap:14px;padding:18px 22px;border-radius:20px;background:linear-gradient(90deg,#fff 0%,#f2f6ff 48%,#eefdf9 100%);border:1px solid #e6ebf5;box-shadow:var(--soft-shadow)}.daily-quote span{color:#6c56e8;font-weight:900}.daily-quote strong{font-size:17px;color:#26324a}
.cockpit-top-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.favorite-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:16px}.favorite-entry{border:1px solid #edf1f8;border-radius:18px;padding:16px;background:#fff;box-shadow:0 10px 24px rgba(44,66,120,.04)}.favorite-entry:hover{transform:translateY(-1px);background:#fff;border-color:#d9e4ff}.favorite-entry i{border-radius:14px;color:#fff;background:linear-gradient(135deg,#4f7dff,#7a5cff)}.favorite-entry.color-1 i{background:linear-gradient(135deg,#ffad42,#ff7a59)}.favorite-entry.color-2 i{background:linear-gradient(135deg,#20c7b5,#31c77f)}.favorite-entry.color-3 i{background:linear-gradient(135deg,#ff6b8a,#ff9fba)}.favorite-entry.color-4 i{background:linear-gradient(135deg,#4f7dff,#20c7b5)}.favorite-entry.color-5 i{background:linear-gradient(135deg,#7a5cff,#a86bff)}
.message-list{padding:14px 18px;display:grid;gap:12px}.message-list div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px}.message-list i{width:7px;height:7px;border-radius:50%;background:#4f7dff}.message-list small{color:#9aa6b8}.message-list a,.panel-head a{color:#4f7dff;font-size:12px;text-decoration:none}
.stats{grid-template-columns:repeat(5,1fr)}.stat{padding:20px}.stat strong{color:#172033}.stat small{color:#20a98f}.chart{background:linear-gradient(180deg,#fbfcff,#fff);border-radius:18px}.bar{background:linear-gradient(180deg,#4f7dff,#20c7b5);box-shadow:0 8px 18px rgba(79,125,255,.15)}
.quick-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.quick-strip button{border:1px solid #e6ebf5;border-radius:18px;background:#fff;padding:18px;text-align:left;box-shadow:var(--soft-shadow);cursor:pointer}.quick-strip button:hover{border-color:#cddcff;transform:translateY(-1px)}.quick-strip b,.quick-strip small{display:block}.quick-strip b{color:#25324b}.quick-strip small{margin-top:6px;color:#748095}
.order-tabs button.active,.order-tabs button:hover{background:linear-gradient(135deg,#4f7dff,#20c7b5)}
@media(max-width:1350px){.cockpit-hero{grid-template-columns:1fr 260px}.favorite-grid{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(3,1fr)}.cockpit-top-grid{grid-template-columns:1fr}}
@media(max-width:850px){.cockpit-hero{grid-template-columns:1fr}.hero-visual{display:none}.daily-quote{align-items:flex-start;flex-direction:column}.stats,.quick-strip{grid-template-columns:1fr}.favorite-grid{grid-template-columns:1fr 1fr}}

.order-create-modal{max-width:1060px}
.form-section-title{margin:0 0 14px;color:#172033;font-size:16px}
.product-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:22px 0 10px}
.product-section-head p{margin:4px 0 0;color:#748095;font-size:13px}
.order-product-wrap{overflow:auto;border:1px solid #e6ebf5;border-radius:16px;background:#fff}
.order-product-table,.detail-product-table{width:100%;border-collapse:collapse}
.order-product-table th,.order-product-table td,.detail-product-table th,.detail-product-table td{padding:12px 10px;border-bottom:1px solid #edf1f8;text-align:left;white-space:nowrap}
.order-product-table th,.detail-product-table th{background:#f8fbff;color:#50607a;font-size:12px}
.order-product-table input{width:100%;min-width:94px;border:1px solid #dfe7f3;border-radius:10px;padding:9px 10px;background:#fff;color:#172033}
.order-product-table input:focus{outline:0;border-color:#85a3ff;box-shadow:0 0 0 3px rgba(79,125,255,.12)}
.order-product-table .num,.detail-product-table .num{text-align:right}
.order-product-table .product-row-amount{font-weight:800;color:#172033;font-variant-numeric:tabular-nums}
.order-product-table .btn[disabled]{opacity:.42;cursor:not-allowed}
.muted{display:block;margin-top:3px;color:#8a97ab;font-size:12px;font-weight:500}
.countdown-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;white-space:nowrap}
.countdown-pill.green{background:#e9fbf4;color:#13936b}
.countdown-pill.amber{background:#fff6df;color:#b77900}
.countdown-pill.red{background:#fff0f0;color:#d64545}
.countdown-pill.gray{background:#f1f4f8;color:#6f7d90}
.evidence-panel{overflow:hidden}
.evidence-chain{display:flex;gap:12px;overflow-x:auto;padding:12px 2px 18px;scrollbar-color:#c8d5ef transparent}
.evidence-node{position:relative;min-width:190px;border:1px solid #e6ebf5;border-radius:18px;background:#fff;padding:16px;box-shadow:0 10px 22px rgba(44,66,120,.05)}
.evidence-node:before{content:"";position:absolute;left:-13px;top:34px;width:13px;height:2px;background:#dce5f3}.evidence-node:first-child:before{display:none}
.evidence-node.completed{border-color:#bfeedd;background:linear-gradient(180deg,#f8fffc,#fff)}
.evidence-node.in_progress{border-color:#bcd0ff;background:linear-gradient(180deg,#f7faff,#fff)}
.evidence-node.exception{border-color:#ffd1d1;background:linear-gradient(180deg,#fff8f8,#fff)}
.evidence-node.special{box-shadow:0 12px 26px rgba(79,125,255,.08)}
.node-num{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:999px;background:#eef3ff;color:#4f7dff;font-weight:900}
.evidence-node h3{margin:10px 0 8px;color:#172033;font-size:15px}.evidence-node p{margin:5px 0;color:#65758f;font-size:12px}.evidence-node em{display:inline-flex;margin:4px 0 8px;border-radius:999px;background:#fff6df;color:#b77900;padding:4px 9px;font-size:12px;font-style:normal;font-weight:800}
.node-status{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}.node-status.completed{background:#e9fbf4;color:#13936b}.node-status.in_progress{background:#edf3ff;color:#4169e1}.node-status.exception{background:#fff0f0;color:#d64545}.node-status.not_started{background:#f1f4f8;color:#6f7d90}
.evidence-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;border-top:1px solid #edf1f8;padding-top:14px}.evidence-summary div{border:1px solid #edf1f8;border-radius:16px;background:#fbfdff;padding:14px}.evidence-summary b,.evidence-summary span{display:block}.evidence-summary b{font-size:20px;color:#172033}.evidence-summary span{margin-top:4px;color:#748095;font-size:12px}
.special-node-grid{align-items:stretch}.special-node-card.danger{border-color:#ffd1d1}.node-meta{display:grid;grid-template-columns:80px 1fr 80px 1fr;gap:8px 12px;margin-bottom:12px}.node-meta span{color:#748095}.node-meta b{color:#172033}.node-remark{border-radius:14px;background:#f8fbff;padding:10px 12px;color:#52627a}.checklist-view{list-style:none;margin:0;padding:0;border:1px solid #edf1f8;border-radius:14px;overflow:hidden}.checklist-view li{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #edf1f8}.checklist-view li:last-child{border-bottom:0}.checklist-view b.ok{color:#13936b}.checklist-view b.bad{color:#d64545}.empty.mini{padding:12px;border-radius:12px;background:#f8fbff;color:#748095}
.evidence-files{display:grid;gap:8px;margin-top:12px}.evidence-files b{color:#172033}.evidence-files span,.evidence-files small{display:block;border-radius:10px;background:#f8fbff;border:1px solid #edf1f8;padding:8px 10px;color:#52627a}
.node-checklist-editor{display:grid;gap:8px;margin-bottom:16px}.node-checklist-editor div{display:grid;grid-template-columns:1fr 130px;gap:10px}.node-checklist-editor input,.node-checklist-editor select{border:1px solid #dfe7f3;border-radius:10px;padding:10px;background:#fff}
.node-detail-modal textarea{min-height:84px}

/* Order detail airy layout */
.content{max-width:none;padding:34px 40px 56px;background:linear-gradient(180deg,#f7fbff 0%,#f5f8fd 100%)}
.page-head{margin-bottom:24px}.page-head h1{font-size:30px;letter-spacing:.2px}.page-head p{font-size:14px;color:#66758c}
.order-tabs{margin:0 0 22px;gap:12px}.order-tabs button{padding:12px 18px;border-radius:999px;background:#fff}
.order-basic{grid-template-columns:repeat(8,minmax(130px,1fr));gap:0;margin-bottom:24px;background:#fff;border:1px solid #dfe7f3;border-radius:22px;box-shadow:0 14px 36px rgba(44,66,120,.06);overflow:hidden}
.order-basic div{border:0;border-right:1px solid #edf1f8;border-radius:0;padding:22px 24px;min-height:86px}.order-basic div:last-child{border-right:0}.order-basic span{font-size:13px;color:#6f7d90}.order-basic b{font-size:18px;color:#172033}
.panel{border-color:#dfe7f3;border-radius:22px;box-shadow:0 16px 36px rgba(44,66,120,.055)}.panel-head{min-height:64px;padding:0 24px}.panel-head h2{font-size:18px}.panel-head small{font-size:13px}
.evidence-panel{margin-bottom:24px}.evidence-chain{gap:10px;padding:22px 16px 24px}.evidence-node{min-width:156px;border-radius:16px;padding:18px 14px 16px;text-align:left;box-shadow:0 12px 28px rgba(44,66,120,.055)}.evidence-node h3{font-size:14px;line-height:1.3;min-height:36px}.evidence-node p{font-size:12px;line-height:1.45}.evidence-node .btn{width:100%;margin-top:8px;border-radius:8px}
.node-num{position:absolute;top:-13px;left:50%;transform:translateX(-50%);width:30px;height:30px;box-shadow:0 6px 14px rgba(79,125,255,.16)}.evidence-node:before{top:18px}
.evidence-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding-top:22px}.evidence-summary div{min-height:116px;border-radius:22px;padding:24px;background:#fff}.evidence-summary b{font-size:30px}.evidence-summary span{font-size:14px}
.order-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:22px}.special-node-card{min-height:300px}.node-meta{grid-template-columns:78px 1fr 78px 1fr;gap:10px 14px}.node-remark{padding:14px 16px}.checklist-view li{padding:12px 14px}.evidence-files span,.evidence-files small{padding:10px 12px}
.detail-product-table th,.detail-product-table td{padding:16px 18px}.ladder-wrap table th,.ladder-wrap table td{padding:14px 16px}
.mini-progress{height:6px;border-radius:999px;background:#e9eef7;margin-top:8px;overflow:hidden}.mini-progress i{display:block;height:100%;border-radius:999px;background:#2563eb}
@media(max-width:1400px){.content{padding:28px 32px 48px}.order-basic{grid-template-columns:repeat(4,1fr)}.order-basic div{border-bottom:1px solid #edf1f8}.evidence-node{min-width:170px}.order-detail-grid{grid-template-columns:1fr}}

/* Order detail density tune */
.page-head{margin-bottom:18px}.order-tabs{margin-bottom:20px}
.order-basic{margin-bottom:22px}
.order-basic div{padding:18px 22px;min-height:58px;display:flex;flex-direction:column;justify-content:flex-start}
.order-basic span{line-height:1.2}.order-basic b{font-size:17px;line-height:1.25;white-space:nowrap}
.order-basic .countdown-pill,.order-basic .tag{white-space:nowrap;width:max-content}
.mini-progress{max-width:120px}
.panel-head{min-height:58px}.detail-product-table th,.detail-product-table td{padding:13px 18px}
.danger-note{background:#fff6f6;color:#b42318;border-color:#ffd6d6}

/* Order list/detail compact fixes */
.ladder-wrap table{table-layout:auto}
.ladder-wrap th,.ladder-wrap td{font-size:14px;line-height:1.35;vertical-align:middle}
.ladder-wrap td b{font-size:14px;line-height:1.3}
.ladder-wrap th,.ladder-wrap td{white-space:nowrap}
.ladder-wrap th:nth-child(1),.ladder-wrap td:nth-child(1){min-width:128px}
.ladder-wrap td:nth-child(1) b{white-space:nowrap}
.ladder-wrap th:nth-child(2),.ladder-wrap td:nth-child(2){min-width:92px}
.ladder-wrap th:nth-child(3),.ladder-wrap td:nth-child(3),.ladder-wrap th:nth-child(4),.ladder-wrap td:nth-child(4){min-width:78px}
.ladder-wrap th:nth-child(5),.ladder-wrap td:nth-child(5){min-width:120px}
.ladder-wrap th:nth-child(7),.ladder-wrap td:nth-child(7){min-width:96px}
.ladder-wrap th:nth-child(8),.ladder-wrap td:nth-child(8){min-width:105px}
.ladder-wrap th:nth-child(9),.ladder-wrap td:nth-child(9){min-width:100px}
.ladder-wrap th:nth-child(10),.ladder-wrap td:nth-child(10){min-width:74px}
.ladder-wrap th:nth-child(11),.ladder-wrap td:nth-child(11){min-width:72px}
.ladder-wrap th:nth-child(12),.ladder-wrap td:nth-child(12){min-width:118px}
.order-basic{margin-bottom:18px}
.order-basic div{padding:14px 20px;min-height:50px}
.order-basic b{font-size:16px}
.panel{margin-bottom:14px}.panel-head{min-height:52px}
.detail-product-table th,.detail-product-table td{padding:10px 18px}
.detail-product-table{margin-bottom:0}
.evidence-panel{margin-top:0}

/* Order detail workbench upgrade */
.order-detail-workbench{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}
.order-detail-workbench>main{min-width:0}
.order-side-stack{display:grid;gap:16px;position:sticky;top:88px}
.current-node-panel{border-color:#bcd0ff;background:linear-gradient(180deg,#fbfdff,#fff)}
.current-node-body{display:grid;grid-template-columns:58px minmax(0,1fr) 180px;gap:18px;align-items:center;padding:20px 24px}
.current-node-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#4f7dff,#20c7b5);color:#fff;font-size:24px;box-shadow:0 14px 28px rgba(79,125,255,.2)}
.current-node-body h3{margin:0 0 8px;color:#172033;font-size:22px}
.current-node-body p{margin:0 0 12px;color:#65758f}
.current-node-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.current-node-meta span,.summary-grid span{display:block;color:#748095;font-size:12px}
.current-node-meta b,.summary-grid b{display:block;margin-top:4px;color:#172033}
.current-node-actions{display:grid;gap:10px}
.warning-panel{border-color:#ffd1d1;background:linear-gradient(180deg,#fffafa,#fff)}
.warning-panel .issue-list{padding:0 16px 16px}
.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:18px}
.summary-grid div{border:1px solid #edf1f8;border-radius:16px;background:#fbfdff;padding:14px}
.quick-action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:18px}
.comment-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.comment-head span{display:flex;align-items:center;gap:8px}
.comment-list article{position:relative}
.timeline{padding:4px 18px 4px 34px}
.timeline:before{left:16px}
.timeline i{left:-24px}
.timeline b{color:#172033}
.timeline-panel .timeline{max-height:320px;overflow-y:auto;padding-right:18px}
.timeline-panel .timeline::-webkit-scrollbar{width:8px}
.timeline-panel .timeline::-webkit-scrollbar-thumb{background:#d7e2f3;border-radius:999px}
.timeline-panel .timeline::-webkit-scrollbar-track{background:#f5f8fd;border-radius:999px}
@media(max-width:1280px){.current-node-body{grid-template-columns:52px minmax(0,1fr)}.current-node-actions{grid-column:1/-1;grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.current-node-body{grid-template-columns:1fr}.current-node-meta,.summary-grid,.quick-action-grid{grid-template-columns:1fr}}

/* Visual page layout builder */
.layout-builder-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;padding:18px}
.layout-builder-grid aside{border:1px solid #edf1f8;border-radius:18px;background:#fbfdff;padding:16px}
.layout-builder-grid h3{margin:0 0 14px;color:#172033}
.layout-module-card{border:1px solid #e2e9f4;border-radius:14px;background:#fff;padding:13px;margin-bottom:10px;box-shadow:0 8px 18px rgba(44,66,120,.035)}
.layout-module-card.disabled{opacity:.56;background:#f6f8fb}
.layout-module-card b,.layout-module-card small,.layout-module-card span{display:block}
.layout-module-card small{color:#748095;line-height:1.5;margin-top:5px}
.layout-module-card span{margin-top:8px;color:#4f7dff;font-size:12px;font-weight:800}
.layout-builder table small{display:block;margin-top:5px}
.layout-actions{display:flex;flex-wrap:wrap;gap:6px}
.layout-actions .btn[disabled]{opacity:.45;cursor:not-allowed}
@media(max-width:1100px){.layout-builder-grid{grid-template-columns:1fr}}

/* Order progress V2: stage + milestone */
.order-stage-board{margin-bottom:22px;overflow:visible}
.stage-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 24px 16px;border-bottom:1px solid #edf1f8}
.stage-board-head h2{margin:0 0 6px;color:#172033;font-size:20px}
.stage-board-head p{margin:0;color:#748095;line-height:1.6}
.stage-timeline{display:grid;gap:18px;padding:18px 20px 20px}
.stage-card{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:18px;align-items:center;min-height:160px;padding:24px 26px;border:1px solid #d7e4ff;border-radius:22px;background:#fff;box-shadow:0 18px 42px rgba(44,66,120,.045)}
.stage-card.current{border-color:#9fbaff;box-shadow:0 20px 46px rgba(79,125,255,.09)}
.stage-card.exception{border-color:#ffd1d1}
.stage-card.blue .stage-icon{background:linear-gradient(135deg,#4f7dff,#2f65e7)}
.stage-card.orange .stage-icon{background:linear-gradient(135deg,#ffad42,#ff7a59)}
.stage-card.purple .stage-icon{background:linear-gradient(135deg,#7a5cff,#9a6bff)}
.stage-card.green .stage-icon{background:linear-gradient(135deg,#20c7b5,#31c77f)}
.stage-card.yellow .stage-icon{background:linear-gradient(135deg,#f6c343,#f59e0b)}
.stage-card.gray .stage-icon{background:linear-gradient(135deg,#98a4b8,#6f7d90)}
.stage-left{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;align-items:center;padding-right:20px;border-right:1px solid #edf1f8}
.stage-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:21px;font-weight:900;box-shadow:0 14px 28px rgba(79,125,255,.22)}
.stage-left h3{margin:0 0 7px;color:#172033;font-size:19px}
.stage-left p{margin:0;color:#748095;line-height:1.55}
.stage-progress{grid-column:2;display:flex;align-items:center;gap:12px;margin-top:18px}
.stage-progress em{height:8px;flex:1;border-radius:999px;background:#edf2f8;overflow:hidden}
.stage-progress u{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#4f7dff,#20c7b5);text-decoration:none}
.stage-progress strong{color:#315bff;font-size:18px}
.stage-node-table{display:grid;align-content:center;min-width:0}
.stage-node-head,.stage-node-row{display:grid;grid-template-columns:26px minmax(100px,1.2fr) minmax(68px,.72fr) minmax(92px,.82fr) minmax(92px,.82fr) 70px;gap:8px;align-items:center;min-width:0}
.stage-node-head{padding:0 0 10px;color:#748095;font-size:12px;font-weight:800;border-bottom:1px solid #edf1f8}
.stage-node-row{min-height:39px;padding:8px 0;border-bottom:1px solid #edf1f8;color:#52627a;cursor:pointer}
.stage-node-row:last-child{border-bottom:0}
.stage-node-row b{color:#25324b;font-size:13px}
.stage-node-row em{display:inline-flex;margin-left:6px;border-radius:999px;background:#fff6df;color:#b77900;padding:3px 7px;font-size:11px;font-style:normal;font-weight:800}
.stage-node-check{width:22px;height:22px;border-radius:999px;display:grid;place-items:center;border:2px solid #dbe3f1;color:#8a97ab;font-size:12px;font-weight:900}
.stage-node-row.completed .stage-node-check{border-color:#2f7cf6;background:#2f7cf6;color:#fff}
.stage-node-row.in_progress .stage-node-check{border-color:#ff8a32;color:#ff8a32}
.stage-node-row.exception .stage-node-check,.stage-node-row.delayed .stage-node-check{border-color:#d64545;color:#d64545}
@media(max-width:1500px){.content{padding:26px 24px 44px}.stage-board-head{padding:18px 20px 14px}.stage-timeline{padding:14px;gap:16px}.stage-card{grid-template-columns:178px minmax(0,1fr);gap:12px;min-height:142px;padding:18px 16px}.stage-left{grid-template-columns:44px minmax(0,1fr);gap:12px;padding-right:12px}.stage-icon{width:44px;height:44px;font-size:18px}.stage-left h3{font-size:16px;margin-bottom:5px}.stage-left p{font-size:12px;line-height:1.45}.stage-progress{gap:8px;margin-top:12px}.stage-progress strong{font-size:15px}.stage-node-head,.stage-node-row{grid-template-columns:22px minmax(76px,1.05fr) minmax(48px,.66fr) minmax(70px,.82fr) minmax(70px,.82fr) 56px;gap:6px;font-size:12px}.stage-node-head{font-size:11px}.stage-node-row{min-height:34px;padding:6px 0}.stage-node-row b{font-size:12px}.stage-node-check{width:20px;height:20px}.stage-node-row em{padding:2px 5px;font-size:10px}.stage-node-row .node-status{padding:3px 7px;font-size:11px}}
@media(max-width:1180px){.stage-card{grid-template-columns:1fr;padding:20px}.stage-left{border-right:0;border-bottom:1px solid #edf1f8;padding:0 0 14px}.stage-node-table{overflow-x:auto}.stage-node-head,.stage-node-row{min-width:560px}}
@media(max-width:850px){.stage-timeline{padding:14px}.stage-board-head{padding:18px}.stage-card{padding:18px}.stage-left{grid-template-columns:48px minmax(0,1fr);gap:12px}.stage-icon{width:46px;height:46px}.stage-left h3{font-size:17px}}

/* Order board summary dashboard */
.board-filter{display:grid;grid-template-columns:minmax(260px,1fr) 150px 170px 150px;gap:12px;padding:16px;margin-bottom:18px}
.board-filter input,.board-filter select{border:1px solid #dfe7f3;border-radius:14px;background:#fff;padding:11px 13px;color:#25324b}
.board-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:18px}
.board-kpi{padding:18px 18px 16px;margin:0;min-height:116px;position:relative;overflow:hidden}
.board-kpi:after{content:"";position:absolute;right:-24px;top:-24px;width:86px;height:86px;border-radius:50%;background:rgba(79,125,255,.1)}
.board-kpi span,.board-kpi small{display:block;color:#748095}
.board-kpi b{display:block;margin:10px 0 8px;font-size:30px;color:#172033}
.board-kpi.color-1:after,.board-kpi.color-2:after{background:rgba(214,69,69,.1)}
.board-kpi.color-3:after{background:rgba(49,199,127,.12)}
.board-kpi.color-4:after{background:rgba(255,173,66,.14)}
.board-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px;margin-bottom:18px}
.board-grid.lower{grid-template-columns:1fr 1fr 1fr}
.delivery-trend{height:260px;padding:24px 28px 18px;display:flex;align-items:flex-end;gap:22px;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f7faff);border:1px solid #edf1f8;margin:18px}
.delivery-trend span{flex:1;min-width:24px;border-radius:14px 14px 6px 6px;background:linear-gradient(180deg,#4f7dff,#20c7b5);position:relative;box-shadow:0 12px 22px rgba(79,125,255,.15)}
.delivery-trend span b{position:absolute;left:50%;bottom:-28px;transform:translateX(-50%);font-size:12px;color:#748095}
.chart-legend{display:flex;align-items:center;gap:8px;padding:0 22px 18px;color:#748095}
.chart-legend i,.chart-legend em{width:10px;height:10px;border-radius:50%;background:#4f7dff}.chart-legend em{background:#ff7a59}
.stage-donut{width:156px;height:156px;margin:18px auto;border-radius:50%;background:conic-gradient(#4f7dff calc(var(--p)*1%),#eef3fb 0);display:grid;place-items:center;position:relative}
.stage-donut:after{content:"";position:absolute;inset:18px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #edf1f8}
.stage-donut b,.stage-donut small{position:relative;z-index:1;display:block;text-align:center}.stage-donut b{font-size:30px;color:#172033}.stage-donut small{margin-top:40px;color:#748095;font-size:12px}
.stage-list{display:grid;gap:10px;padding:0 20px 20px}.stage-list div{display:flex;justify-content:space-between;align-items:center;border:1px solid #edf1f8;border-radius:12px;padding:10px 12px;background:#fbfdff}.stage-list span{display:flex;align-items:center;gap:8px;color:#52627a}.stage-list i{width:9px;height:9px;border-radius:50%;background:#4f7dff}.stage-list .dot-1{background:#20c7b5}.stage-list .dot-2{background:#ffad42}.stage-list .dot-3{background:#7a5cff}.stage-list .dot-4{background:#31c77f}.stage-list .dot-5{background:#98a4b8}
.owner-rank,.risk-rank,.due-list{padding-bottom:16px}
.owner-bar{display:grid;grid-template-columns:86px minmax(0,1fr) 32px;gap:12px;align-items:center;padding:10px 18px}.owner-bar span{color:#52627a}.owner-bar em{height:10px;border-radius:999px;background:#eef3fb;overflow:hidden}.owner-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#4f7dff,#20c7b5)}.owner-bar b{color:#172033;text-align:right}
.risk-rank article,.due-list article{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;margin:0 18px 10px;padding:13px 14px;border:1px solid #edf1f8;border-radius:14px;background:#fbfdff;cursor:pointer}
.risk-rank article:hover,.due-list article:hover{border-color:#bdd0ff;background:#f7faff}
.risk-rank article span,.due-list article span{color:#748095;font-size:12px}.risk-rank article b,.due-list article b{color:#172033}
.risk-rank article em,.due-list article em{grid-row:1/3;grid-column:2;border-radius:999px;padding:5px 9px;font-style:normal;font-size:12px;font-weight:800;background:#edf3ff;color:#4169e1}
.risk-rank article em.red,.due-list article em.red{background:#fff0f0;color:#d64545}.risk-rank article em.amber,.due-list article em.amber{background:#fff6df;color:#b77900}.risk-rank article em.green,.due-list article em.green{background:#e9fbf4;color:#13936b}
@media(max-width:1450px){.board-kpis{grid-template-columns:repeat(3,1fr)}.board-grid,.board-grid.lower{grid-template-columns:1fr}.delivery-trend{height:220px}}
@media(max-width:850px){.board-filter,.board-kpis{grid-template-columns:1fr}.delivery-trend{gap:10px;padding:18px 14px}.board-kpi{min-height:auto}}

/* Order center fix v2: responsive order list + Nutstore link archive */
.order-list-cards{display:grid;gap:10px;padding:12px}
.order-list-card{display:grid;grid-template-columns:minmax(170px,1.35fr) repeat(8,minmax(74px,1fr));gap:0;align-items:stretch;border:1px solid #edf1f8;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(44,66,120,.04);overflow:hidden;cursor:pointer}
.order-list-card:hover{border-color:#bdd0ff;background:#fbfdff}
.order-list-card.danger{border-color:#ffd1d1}
.order-list-card>div{min-width:0;padding:14px 12px;border-right:1px solid #edf1f8;display:flex;flex-direction:column;justify-content:center;gap:4px}
.order-list-card>div:last-child{border-right:0}
.order-list-card span,.order-list-card small{color:#748095;font-size:12px;line-height:1.35}
.order-list-card b{color:#172033;font-size:14px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.order-list-main b{font-size:16px}
.order-list-main small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.order-list-card .progress{width:70px;max-width:100%}
.file-link-list{display:grid;gap:10px;padding:16px}
.file-link-list article{border:1px solid #edf1f8;border-radius:16px;background:#fbfdff;padding:14px 16px;display:grid;gap:8px}
.file-link-list b{color:#172033;font-size:15px}
.file-link-list small{color:#748095}
.file-link-list div{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.file-link-list a{color:#2563eb;font-weight:800;text-decoration:none}
.file-link-list a:hover{text-decoration:underline}
.file-link-list em,.file-link-list time{color:#748095;font-style:normal;font-size:12px}
.stats-position{padding:22px 24px;line-height:1.8}
.stats-position h2{margin:0 0 12px;color:#172033}
.stats-position p{margin:8px 0;color:#52627a}
@media(max-width:1500px){
  .order-list-card{grid-template-columns:minmax(160px,1.4fr) repeat(4,minmax(84px,1fr));}
  .order-list-card>div{min-height:64px}
  .order-list-card>div:nth-child(6),.order-list-card>div:nth-child(7),.order-list-card>div:nth-child(8),.order-list-card>div:nth-child(9){border-top:1px solid #edf1f8}
}
@media(max-width:1180px){
  .order-list-card{grid-template-columns:1.5fr 1fr 1fr}
  .order-list-card>div{border-top:1px solid #edf1f8}
  .order-list-card>div:nth-child(-n+3){border-top:0}
}
@media(max-width:850px){.order-list-card{grid-template-columns:1fr 1fr}.order-list-card>div:nth-child(-n+3){border-top:1px solid #edf1f8}.order-list-card>div:first-child{grid-column:1/-1;border-top:0}}

/* Payment confirmation modal for deposit/balance nodes */
.payment-modal{width:min(1180px,94vw)}
.payment-modal .modal-head p{margin:6px 0 0;color:#748095;font-size:13px}
.payment-status-row{display:flex;align-items:center;gap:12px;margin-bottom:16px;min-height:32px}
.payment-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;background:#eef3fb;color:#52627a;font-size:13px;font-weight:900}
.payment-status.success{background:#e9fbf4;color:#13936b}
.payment-status.warning{background:#fff6df;color:#b77900}
.payment-status.danger{background:#fff0f0;color:#d64545}
.payment-warning{border-radius:999px;background:#fff6df;color:#b77900;padding:7px 12px;font-size:13px;font-weight:800}
.payment-confirm-grid{display:grid;grid-template-columns:1fr 1fr .9fr;gap:16px;align-items:start}
.payment-card{border:1px solid #e2eaf6;border-radius:18px;background:#fbfdff;padding:18px;box-shadow:0 12px 28px rgba(44,66,120,.04)}
.payment-card h3{margin:0 0 14px;color:#172033;font-size:18px}
.payment-card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.payment-card-title h3{margin:0}
.payment-card-title .btn{padding:7px 10px;font-size:12px;border-radius:10px}
.payment-card .field{margin-bottom:13px}
.payment-card .field label{display:block;margin-bottom:7px;color:#52627a;font-size:13px;font-weight:900}
.payment-card input,.payment-card select,.payment-card textarea{width:100%;border:1px solid #dfe7f3;border-radius:12px;background:#fff;color:#172033;padding:10px 12px;font:inherit;outline:none}
.payment-card input:focus,.payment-card select:focus,.payment-card textarea:focus{border-color:#4f7dff;box-shadow:0 0 0 3px rgba(79,125,255,.1)}
.payment-card textarea{min-height:82px;resize:vertical}
.payment-card small{display:block;margin-top:7px;color:#8a97ab;font-size:12px;line-height:1.5}
.money-field>div{display:grid;grid-template-columns:92px 1fr;gap:10px}
.payment-preview,.payment-empty{border:1px dashed #dfe7f3;border-radius:12px;background:#fff;padding:10px 12px;margin-top:9px;color:#748095;font-size:13px}
.payment-preview{display:flex;justify-content:space-between;gap:10px;align-items:center}
.payment-preview span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.payment-preview a{color:#2563eb;font-weight:900;text-decoration:none}
.payment-voucher-thumb{width:100%;border:1px dashed #cfe0ff;border-radius:14px;background:#fff;padding:10px;display:grid;grid-template-columns:86px minmax(0,1fr);gap:10px;align-items:center;text-align:left;cursor:pointer;color:#52627a}
.payment-voucher-thumb:hover{border-color:#4f7dff;background:#f7faff}
.payment-voucher-thumb img{width:86px;height:66px;object-fit:cover;border-radius:10px;border:1px solid #edf1f8;background:#f7faff}
.payment-voucher-thumb span{font-size:13px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payment-image-viewer{position:fixed;inset:0;z-index:9999;background:rgba(15,23,42,.72);display:grid;place-items:center;padding:28px}
.payment-image-viewer img{max-width:min(1100px,92vw);max-height:88vh;border-radius:18px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.35)}
.payment-image-viewer button{position:fixed;right:28px;top:24px;width:42px;height:42px;border:0;border-radius:999px;background:#fff;color:#172033;font-size:24px;cursor:pointer}
.payment-check{display:flex;align-items:center;gap:9px;margin-top:10px;color:#172033;font-weight:900}
.payment-check input{width:auto}
.payment-section-btn{width:100%;justify-content:center;margin-top:12px}
.payment-collab{max-height:470px;overflow:auto}
.payment-collab article{border:1px solid #edf1f8;border-radius:14px;background:#fff;padding:12px;margin-bottom:10px}
.payment-collab article b{display:block;color:#172033;margin-bottom:6px}
.payment-collab article p{margin:0 0 6px;color:#52627a;line-height:1.5}
.payment-collab article small{margin:0;color:#8a97ab}
.payment-actions{margin-top:18px}
@media(max-width:1180px){.payment-confirm-grid{grid-template-columns:1fr}.payment-collab{max-height:260px}}

/* Packaging confirmation modal */
.packaging-modal{width:min(1160px,94vw)}
.pack-head-right{display:flex;align-items:center;gap:12px}
.packaging-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(260px,3fr);gap:18px;align-items:start}
.packaging-card{border:1px solid #dbe7ff;border-radius:18px;background:#fbfdff;padding:18px;box-shadow:0 12px 28px rgba(44,66,120,.04)}
.packaging-card h3{margin:0 0 16px;color:#172033;font-size:18px}
.pack-file-head,.pack-file-row{display:grid;grid-template-columns:minmax(220px,1fr) 92px 300px;gap:12px;align-items:center}
.pack-file-head{padding:0 0 10px;color:#748095;font-size:12px;font-weight:900;border-bottom:1px solid #edf1f8}
.pack-file-row{min-height:62px;padding:12px 0;border-bottom:1px solid #edf1f8}
.pack-file-row:last-child{border-bottom:0}
.pack-file-row b{display:block;color:#172033;font-size:14px}
.pack-file-row small{display:block;margin-top:5px;color:#748095;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pack-file-row>span{color:#52627a;font-size:13px}
.pack-file-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.pack-file-actions .btn{padding:7px 9px;border-radius:10px;font-size:12px}
.pack-confirm-check{margin-top:16px;padding-top:16px;border-top:1px solid #edf1f8}
.packaging-records{max-height:520px;overflow:auto}
.packaging-records article{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid #edf1f8}
.packaging-records article:last-child{border-bottom:0}
.record-avatar{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,#4f7dff,#20c7b5);color:#fff;font-weight:900}
.packaging-records time{display:block;color:#8a97ab;font-size:12px}
.packaging-records b{display:block;margin:3px 0;color:#172033;font-size:13px}
.packaging-records p{margin:0;color:#52627a;line-height:1.5;font-size:13px}
.pack-file-viewer iframe{width:min(1100px,92vw);height:86vh;border:0;border-radius:18px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.35)}
@media(max-width:1180px){.packaging-grid{grid-template-columns:1fr}.pack-file-head,.pack-file-row{grid-template-columns:minmax(180px,1fr) 80px minmax(220px,.8fr)}}
@media(max-width:760px){.pack-file-head{display:none}.pack-file-row{grid-template-columns:1fr}.pack-file-actions{justify-content:flex-start}}

/* Packaging process mode: Nutstore stores files, system tracks workflow */
.process-packaging-modal{width:min(1280px,95vw)}
.packaging-process-grid{display:grid;grid-template-columns:minmax(480px,1.35fr) minmax(280px,.8fr) minmax(260px,.65fr);gap:18px;align-items:start}
.packaging-flow{display:grid;gap:12px}
.packaging-flow>h3{margin-bottom:4px}
.pack-step{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:14px;border:1px solid #e2eaf6;border-radius:16px;background:#fff}
.pack-step.done{border-color:#bfe8d8;background:#fbfffd}
.pack-step-index{width:24px;height:24px;border-radius:999px;border:2px solid #dbe3f1;background:#fff;position:relative;margin-top:2px}
.pack-step.done .pack-step-index{border-color:#31c77f;background:#31c77f}
.pack-step.done .pack-step-index:after{content:"";position:absolute;left:7px;top:4px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.pack-step-body h4{margin:0 0 10px;color:#172033;font-size:15px}
.pack-step-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pack-step-fields .field{margin:0}
.pack-step-fields .field label,.packaging-cloud .field label{display:block;margin-bottom:6px;color:#52627a;font-size:12px;font-weight:900}
.pack-step-fields input,.pack-step-fields select,.packaging-cloud input,.packaging-cloud textarea{width:100%;border:1px solid #dfe7f3;border-radius:12px;background:#fff;color:#172033;padding:9px 11px;font:inherit;outline:none}
.pack-step-fields textarea{width:100%;min-height:70px;border:1px solid #dfe7f3;border-radius:12px;background:#fff;color:#172033;padding:9px 11px;font:inherit;outline:none;resize:vertical}
.pack-field-wide{grid-column:1 / -1}
.packaging-cloud textarea{min-height:92px;resize:vertical}
.pack-step-fields input:focus,.pack-step-fields select:focus,.pack-step-fields textarea:focus,.packaging-cloud input:focus,.packaging-cloud textarea:focus{border-color:#4f7dff;box-shadow:0 0 0 3px rgba(79,125,255,.1)}
.pack-step .payment-check{margin-top:10px}
.packaging-cloud .field{margin-bottom:13px}
.pack-cloud-open{width:100%;justify-content:center;text-decoration:none}
.packaging-cloud small{display:block;margin-top:12px;color:#8a97ab;line-height:1.5}
@media(max-width:1280px){.packaging-process-grid{grid-template-columns:1fr}.packaging-records{max-height:280px}.pack-step-fields{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.pack-step-fields{grid-template-columns:1fr}.pack-step{grid-template-columns:26px minmax(0,1fr);padding:12px}}

/* Packaging confirm v17: Nutstore entry + process tracking only */
.process-packaging-modal{width:min(1240px,96vw);max-height:92vh;overflow:hidden}
.process-packaging-modal .modal-body{max-height:calc(92vh - 210px);overflow:auto;padding-bottom:18px}
.pack-cloud-top{display:grid;grid-template-columns:46px minmax(190px,.9fr) minmax(220px,1fr) minmax(160px,.65fr) minmax(260px,1.1fr) auto auto;gap:14px;align-items:center;padding:16px 28px;border-bottom:1px solid #e6eef8;background:#fbfdff}
.pack-cloud-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#edf4ff;color:#2f6bff;font-size:22px}
.pack-cloud-title{display:grid;gap:4px;color:#172033}
.pack-cloud-title b{font-size:15px}
.pack-cloud-title small{color:#748095;font-size:12px}
.pack-cloud-meta{display:grid;gap:5px;min-width:0}
.pack-cloud-meta span{color:#748095;font-size:12px;font-weight:800}
.pack-cloud-meta strong{color:#172033;font-size:14px}
.pack-cloud-meta input,.pack-cloud-url{width:100%;border:1px solid #dfe7f3;border-radius:12px;background:#fff;color:#172033;padding:10px 12px;font:inherit;outline:none}
.pack-cloud-meta input:focus,.pack-cloud-url:focus{border-color:#4f7dff;box-shadow:0 0 0 3px rgba(79,125,255,.1)}
.packaging-main-grid{display:grid;grid-template-columns:minmax(560px,1.35fr) minmax(300px,.65fr);gap:18px;align-items:start}
.pack-flow-head,.pack-record-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.pack-flow-head h3,.pack-record-head h3{margin:0}
.pack-step-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.pack-step-title h4{margin:0;color:#172033;font-size:15px}
.pack-step-controls{display:flex;align-items:center;gap:10px}
.pack-step-title span{border-radius:999px;background:#eef3fb;color:#52627a;padding:5px 10px;font-size:12px;font-weight:900}
.pack-step.done .pack-step-title span{background:#e9fbf4;color:#13936b}
.pack-done-btn{height:32px;border:1px solid #cfe0f5;border-radius:999px;background:#fff;color:#52627a;padding:0 14px;font-weight:900;cursor:pointer;transition:.18s ease}
.pack-done-btn:hover{border-color:#4f7dff;color:#285fff;background:#f6f9ff}
.pack-done-btn.is-done{border-color:#bfe8d8;background:#e9fbf4;color:#13936b}
.pack-step-action{margin-top:10px;width:100%;justify-content:center}
.pack-step-controls .pack-step-action{margin-top:0;width:auto;height:32px;padding:0 14px;border-radius:999px}
.pack-record-line{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pack-record-line span{color:#748095;font-weight:700}
.pack-complete-note{margin-top:14px;color:#52627a;font-size:13px;line-height:1.6}
@media(max-width:1180px){
  .pack-cloud-top{grid-template-columns:42px minmax(180px,1fr) minmax(220px,1fr);gap:12px}
  .pack-cloud-url{grid-column:2 / span 2}
  .packaging-main-grid{grid-template-columns:1fr}
  .process-packaging-modal .modal-body{max-height:calc(92vh - 270px)}
}
@media(max-width:760px){
  .pack-cloud-top{grid-template-columns:1fr;padding:14px 18px}
  .pack-cloud-icon{display:none}
  .pack-cloud-url{grid-column:auto}
  .pack-step-fields{grid-template-columns:1fr}
}

/* Material follow modal */
.material-modal{width:min(1240px,96vw);max-height:92vh;overflow:hidden}
.material-modal .modal-body{max-height:calc(92vh - 94px);overflow:auto}
.material-grid{display:grid;grid-template-columns:minmax(560px,1.35fr) minmax(320px,.65fr);gap:18px;align-items:start}
.material-main,.material-side{display:grid;gap:14px}
.material-card{border:1px solid #dbe7ff;border-radius:18px;background:#fbfdff;padding:18px;box-shadow:0 12px 28px rgba(44,66,120,.04)}
.material-card h3{margin:0 0 14px;color:#172033;font-size:17px}
.material-card.info{background:#f6f9ff}
.material-card.info p{margin:0;color:#52627a;line-height:1.7}
.material-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;border:1px solid #dfe7f3;border-radius:14px;background:#fff}
.material-checks label{display:flex;align-items:center;gap:7px;color:#172033;font-weight:800}
.material-overview{display:grid;grid-template-columns:1fr auto;gap:10px;margin:0}
.material-overview dt{color:#748095;font-weight:800}
.material-overview dd{margin:0;color:#172033;font-weight:900;text-align:right}
.material-alert{border-radius:14px;background:#eef3fb;color:#52627a;padding:14px;line-height:1.6;font-weight:900}
.material-alert.success{background:#e9fbf4;color:#13936b}
.material-alert.warning{background:#fff6df;color:#b77900}
.material-alert.danger{background:#fff0f0;color:#d64545}
.material-links{display:grid;gap:10px;margin-bottom:14px}
.material-link-btn{justify-content:center}
.material-link-btn:disabled{opacity:.45;cursor:not-allowed}
.material-records{max-height:320px;overflow:auto}
.material-records article{padding:12px 0;border-bottom:1px solid #edf1f8}
.material-records article:last-child{border-bottom:0}
.material-records b{display:block;color:#172033;margin-bottom:5px}
.material-records p{margin:0 0 4px;color:#52627a;line-height:1.5}
.material-records small{color:#8a97ab}
@media(max-width:1180px){.material-grid{grid-template-columns:1fr}.material-modal .modal-body{max-height:calc(92vh - 120px)}}
@media(max-width:760px){.material-checks{grid-template-columns:1fr}.material-overview{grid-template-columns:1fr}.material-overview dd{text-align:left}}

/* Material follow dashboard v23 */
.material-dashboard-modal{width:min(1320px,96vw);max-height:92vh;overflow:hidden}
.material-head{border-bottom:1px solid #e5edf8}
.material-dashboard-body{max-height:calc(92vh - 156px);overflow:auto;padding:20px 22px 92px;background:#f7faff}
.material-hero{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}
.material-hero.material-hero-six{grid-template-columns:repeat(6,minmax(0,1fr))}
.material-hero>div{background:#fff;border:1px solid #dce8fb;border-radius:18px;padding:16px 18px;box-shadow:0 14px 34px rgba(41,67,115,.06)}
.material-hero span{display:block;color:#71809a;font-weight:800;font-size:13px;margin-bottom:8px}
.material-hero strong{display:block;color:#172033;font-size:20px;line-height:1.25}
.tone-good{color:#0f9b72!important}.tone-warn{color:#c27a00!important}.tone-bad{color:#d64545!important}.tone-empty{color:#71809a!important}
.material-main,.material-side{display:grid;gap:14px}
.material-info-card,.material-workorder-card,.material-check-card,.material-judge-card,.material-communication-card{background:#fff;border:1px solid #dce8fb;border-radius:20px;padding:18px;box-shadow:0 14px 34px rgba(41,67,115,.06)}
.material-info-card{display:grid;grid-template-columns:38px 1fr;gap:12px;background:#f1f7ff;color:#32517a}
.material-info-card span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e2efff;color:#2d6cff;font-weight:900}
.material-info-card b{display:block;color:#172033;margin-bottom:5px}
.material-info-card p,.material-workorder-card p,.material-section-title p{margin:0;color:#64748b;line-height:1.65}
.material-workorder-card{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.material-workorder-card h3,.material-section-title h3,.material-card h3{margin:0 0 8px;color:#172033;font-size:18px}
.material-workorder-card small{display:inline-flex;margin-top:10px;border-radius:999px;background:#eef4ff;color:#3c6dbe;padding:6px 10px;font-weight:900}
.material-config{grid-column:1/-1;margin-top:4px}
.material-config summary{cursor:pointer;color:#3570df;font-weight:900}
.material-config label{display:block;margin-top:10px;color:#64748b;font-weight:800}
.material-config input{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d7e3f3;border-radius:12px;padding:10px 12px;color:#172033;background:#fff}
.material-online-config{border:1px solid #e3ecfb;border-radius:16px;background:#f8fbff;padding:12px}
.material-online-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.material-online-grid label{margin-top:0}
.material-check-card{display:flex;justify-content:space-between;gap:18px;align-items:center}
.material-check-card.is-done,.material-communication-card.is-done{background:#f0fff8;border-color:#bfe8d8}
.material-communication-card.is-warn{background:#fff9ed;border-color:#ffdca3}
.material-check-card h3{margin:0 0 8px;color:#172033}
.material-check-card p{margin:0;color:#64748b}
.material-toggle{display:flex;align-items:center;gap:10px;color:#172033;font-weight:900;cursor:pointer}
.material-toggle input{width:18px;height:18px}
.material-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.material-status-card{border:1px solid #dfe8f5;border-radius:18px;background:#fbfdff;padding:16px;transition:.18s ease}
.material-status-card>span{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eef4ff;color:#2f6df6;font-weight:900;margin-bottom:10px}
.material-status-card small{display:block;color:#71809a;font-weight:900;margin-bottom:8px}
.material-status-card b{display:block;font-size:22px;color:#172033;margin-bottom:12px}
.material-status-card.good{border-color:#bfe8d8;background:#f2fff9}
.material-status-card.warn{border-color:#ffdca3;background:#fff9ed}
.material-status-card.bad{border-color:#ffcaca;background:#fff4f4}
.material-status-card.empty{border-color:#dfe8f5;background:#fbfdff}
.material-status-card div button,.material-notify-choice button{border:1px solid #d7e3f3;border-radius:999px;background:#fff;color:#52627a;font-weight:900;padding:8px 12px;margin:0 6px 6px 0;cursor:pointer}
.material-status-card div button.is-active,.material-notify-choice button.is-active{background:#2f6df6;border-color:#2f6df6;color:#fff;box-shadow:0 8px 18px rgba(47,109,246,.18)}
.material-delay-inline{margin-top:12px}
.material-delay-inline label,.material-notify-row label,.material-weak-field{display:block;color:#64748b;font-weight:800}
.material-delay-inline input,.material-notify-row input,.material-notify-row select,.material-weak-field input{width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #d7e3f3;border-radius:12px;padding:10px 12px;background:#fff;color:#172033}
.material-reasons{margin-top:14px}
.material-reasons b{display:block;margin-bottom:10px;color:#172033}
.material-reason{border:1px solid #d7e3f3;border-radius:999px;background:#fff;color:#52627a;font-weight:900;padding:9px 14px;margin:0 8px 8px 0;cursor:pointer}
.material-reason.is-active{background:#fff1d7;border-color:#ffb44d;color:#a45a00}
.material-weak-field{margin-top:14px}
.material-notify-choice{margin:12px 0}
.material-notify-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.material-card{background:#fff;border:1px solid #dce8fb;border-radius:20px;padding:18px;box-shadow:0 14px 34px rgba(41,67,115,.06)}
.summary-big{border-radius:16px;background:#f4f8ff;padding:16px;margin-bottom:12px}
.summary-big span{display:block;color:#71809a;font-weight:900;margin-bottom:4px}
.summary-big b{font-size:30px}
.summary-states{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.summary-states div{border:1px solid #edf2f8;border-radius:14px;padding:12px;background:#fbfdff}
.summary-states small{display:block;color:#71809a;font-weight:800;margin-bottom:5px}
.summary-states b{font-size:16px;color:#172033}
.material-reminder{border-radius:16px;padding:14px 16px;font-weight:900;line-height:1.55}
.material-reminder.info{background:#eef4ff;color:#466283}
.material-reminder.success{background:#e9fbf4;color:#0f9b72}
.material-reminder.warning{background:#fff4db;color:#b16a00}
.material-reminder.danger{background:#fff0f0;color:#d64545}
.material-entry-list{display:grid;gap:10px}
.material-entry{display:grid;grid-template-columns:38px 1fr auto;grid-template-rows:auto auto;gap:2px 10px;align-items:center;text-align:left;border:1px solid #dce8fb;border-radius:16px;background:#fbfdff;padding:12px;cursor:pointer}
.material-entry span{grid-row:1/3;width:34px;height:34px;border-radius:12px;background:#eef4ff;display:grid;place-items:center;color:#2f6df6;font-weight:900}
.material-entry b{color:#172033}
.material-entry small{color:#71809a}
.material-entry i{grid-row:1/3;grid-column:3;color:#8a97ab;font-style:normal}
.material-entry.disabled{opacity:.48;cursor:not-allowed}
.material-record-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.material-timeline{display:grid;gap:12px;max-height:300px;overflow:auto;padding-right:4px}
.material-timeline article{display:grid;grid-template-columns:34px 1fr;gap:10px;border:0;padding:0}
.material-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#2f6df6,#27c5bd);color:#fff;font-weight:900}
.material-timeline b{display:flex;justify-content:space-between;gap:8px;color:#172033}
.material-timeline b span{color:#71809a;font-weight:700}
.material-timeline time{display:block;color:#8a97ab;font-size:12px;margin:2px 0 4px}
.material-timeline p{margin:0;color:#52627a;line-height:1.55}
.material-empty-timeline{border:1px dashed #d7e3f3;border-radius:14px;padding:18px;text-align:center;color:#8a97ab;font-weight:900}
.material-sticky-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e5edf8;padding:16px 22px;margin:20px -22px -92px;z-index:2}
@media(max-width:1180px){.material-hero,.material-hero.material-hero-six{grid-template-columns:repeat(3,minmax(0,1fr))}.material-status-grid{grid-template-columns:1fr}.material-workorder-card,.material-check-card{grid-template-columns:1fr;display:grid}.material-notify-row{grid-template-columns:1fr}}
@media(max-width:920px){.material-online-grid{grid-template-columns:1fr}}
@media(max-width:820px){.material-hero{grid-template-columns:1fr}.material-dashboard-body{padding:16px 14px 88px}}

/* Material follow v25 - compact cockpit layout */
.material-v25-modal{width:min(1480px,96vw);max-height:92vh;overflow:hidden;background:#fff}
.material-v25-head{align-items:flex-start;border-bottom:0;padding:22px 26px 14px}
.material-v25-head h2{font-size:28px;margin-bottom:14px}
.material-v25-meta{display:flex;flex-wrap:wrap;gap:22px;color:#43536c;font-weight:800}
.material-v25-meta b{font-size:18px}
.material-head-actions{display:flex;align-items:center;gap:12px}
.material-v25-body{display:grid;grid-template-columns:minmax(680px,1fr) 500px;gap:18px;max-height:calc(92vh - 104px);overflow:auto;padding:0 26px 84px;background:#fff}
.material-v25-left,.material-v25-right{display:grid;gap:14px;align-content:start}
.material-v25-note,.material-v25-section{display:grid;grid-template-columns:46px 1fr;gap:16px;border:1px solid #dce8fb;border-radius:6px;background:#fff;padding:16px 18px;box-shadow:0 10px 28px rgba(41,67,115,.04)}
.material-v25-note{align-items:center;background:#f8fbff}
.material-v25-note p{margin:0;color:#30425f;line-height:1.65}
.material-step-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:900}
.material-step-icon.blue{background:#edf4ff;color:#1f64f2}
.material-step-icon.green{background:#e9fbf2;color:#18a668}
.material-step-icon.orange{background:#fff0df;color:#ec7a00}
.material-section-content h3{font-size:19px;margin:0 0 10px;color:#172033}
.material-section-content p{margin:0 0 14px;color:#52627a}
.material-inline-actions{display:flex;align-items:center;gap:18px}
.material-inline-actions span{color:#8a97ab;font-weight:800}
.material-config.compact{margin-top:12px}
.material-checkline{display:grid;grid-template-columns:1.3fr auto auto;gap:18px;align-items:center;color:#43536c;font-weight:800}
.material-checkline input[type=checkbox]{width:16px;height:16px;accent-color:#15a66a}
.material-checkline input[type=datetime-local]{border:1px solid #d7e3f3;border-radius:6px;padding:8px 10px}
.material-choice-grid{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:16px}
.material-choice-box{border:1px solid #dce8fb;border-radius:6px;background:#fbfdff;padding:16px}
.material-choice-box.good{border-color:#bcebd8;background:#f3fff9}
.material-choice-box.warn{border-color:#ffdba5;background:#fff9ee}
.material-choice-box.bad{border-color:#ffcaca;background:#fff6f6}
.material-choice-box h4{margin:0 0 12px;color:#172033;font-size:15px}
.material-choice-box label{display:flex;align-items:center;gap:8px;margin:10px 0;color:#233047;font-weight:900}
.material-choice-box input[type=radio]{width:17px;height:17px;accent-color:#1f64f2}
.tag{font-size:12px;border-radius:999px;padding:3px 8px;margin-left:6px}
.tag.green{background:#e7f8ef;color:#0c9a62}.tag.orange{background:#fff0dd;color:#c46a00}
.material-delay-inline label{display:flex;align-items:center;gap:8px}
.material-delay-inline input{width:86px!important;margin-top:0!important}
.material-reason-panel{display:none;margin-top:12px;border:1px solid #ffd6d6;background:#fffafa;border-radius:6px;padding:14px}
.material-reason-panel b{display:block;margin-bottom:10px;color:#172033}
.material-note-input{display:flex;align-items:center;gap:10px;margin-top:12px;color:#43536c;font-weight:800}
.material-note-input input{flex:1;border:1px solid #d7e3f3;border-radius:6px;padding:10px 12px}
.material-note-input small{color:#8a97ab}
.material-follow-row{display:grid;grid-template-columns:1.1fr auto auto 1fr;gap:16px;align-items:end}
.material-follow-row b{display:block;margin-bottom:8px;color:#172033}
.material-follow-row label{color:#43536c;font-weight:800}
.material-follow-row input,.material-follow-row select{border:1px solid #d7e3f3;border-radius:6px;padding:9px 10px}
.material-v25-tip{margin:0;color:#71809a;font-weight:800}
.material-v25-right .material-card{border-radius:6px;box-shadow:0 10px 28px rgba(41,67,115,.04)}
.material-v25-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.material-v25-kpis div{display:grid;gap:5px}
.material-v25-kpis span{color:#71809a;font-weight:800}
.material-v25-kpis b{font-size:22px;color:#172033}
.material-v25-kpis small{color:#52627a;font-weight:800}
.material-entry-v25{border-radius:6px;background:#fff}
.material-entry-v25 span{border-radius:6px}
.material-sticky-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e5edf8;padding:16px 26px;margin:0 -26px -84px;z-index:5}
@media(max-width:1280px){.material-v25-body{grid-template-columns:1fr}.material-v25-right{grid-template-columns:1fr 1fr}.material-records{grid-column:1/-1}}
@media(max-width:980px){.material-choice-grid,.material-checkline,.material-follow-row,.material-v25-kpis{grid-template-columns:1fr}.material-v25-meta{gap:10px}.material-v25-body{padding:0 14px 84px}.material-v25-head{padding:18px 14px 12px}}

/* Material follow v26 - cleaner cockpit */
.material-v25-modal{width:min(1380px,96vw);background:#f6f8fc}
.material-v25-head{background:#fff;border-bottom:1px solid #edf2f8;padding:22px 28px 18px}
.material-v25-head h2{display:flex;align-items:center;gap:10px;font-size:26px;margin:0 0 16px;color:#102038}
.material-head-actions .btn.small{display:none}
.material-v25-meta{display:grid;grid-template-columns:1.35fr 1.1fr 1fr 1.25fr;gap:10px;width:100%}
.material-v25-meta span{display:flex;align-items:center;min-height:38px;border:1px solid #e2eaf6;background:#f9fbff;border-radius:10px;padding:0 12px;color:#43536c;font-size:14px}
.material-v25-meta b{font-size:16px}
.material-v25-body{grid-template-columns:minmax(700px,1fr) 390px;gap:20px;padding:18px 28px 92px;background:#f6f8fc}
.material-v25-left{gap:12px}
.material-v25-right{gap:12px;position:sticky;top:0}
.material-v25-note,.material-v25-section{border-color:#e1e9f5;border-radius:14px;box-shadow:0 10px 26px rgba(40,60,100,.045);padding:18px 20px;background:#fff}
.material-v25-note{grid-template-columns:40px 1fr;background:#f2f7ff;border-color:#d7e7ff}
.material-v25-note p{font-size:14px}
.material-step-icon{width:32px;height:32px;font-size:14px;box-shadow:none}
.material-section-content h3{font-size:18px;margin-bottom:8px}
.material-section-content p{font-size:14px;margin-bottom:12px}
.material-inline-actions{gap:14px}
.material-inline-actions .btn{min-width:160px}
.material-config.compact{border:0;background:transparent;padding:0;margin-top:10px}
.material-config.compact summary{font-size:13px;color:#6b7a92}
.material-checkline{grid-template-columns:1.6fr 230px 1fr;gap:14px}
.material-checkline label:first-child{background:#f3fbf7;border:1px solid #d7f0e4;border-radius:10px;padding:10px 12px}
.material-checkline span{color:#627189}
.material-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.material-choice-box{border-radius:12px;background:#fff;border-color:#e3ebf6;padding:14px}
.material-choice-box h4{font-size:14px;color:#52627a;margin-bottom:12px}
.material-choice-box label{min-height:28px;margin:8px 0;font-size:14px}
.material-choice-box.good{box-shadow:inset 4px 0 0 #1fb678;background:#fbfffd}
.material-choice-box.warn{box-shadow:inset 4px 0 0 #f2a23a;background:#fffdf8}
.material-choice-box.bad{box-shadow:inset 4px 0 0 #e55353;background:#fffafa}
.tag{white-space:nowrap}
.material-reason-panel{border-radius:12px;margin-top:12px;background:#fff8f8}
.material-reason{padding:7px 12px;margin:0 6px 8px 0}
.material-note-input{background:#fbfdff;border:1px solid #e8eef7;border-radius:10px;padding:10px 12px;margin-top:10px}
.material-note-input input{border:0;background:transparent;padding:4px 0}
.material-follow-row{grid-template-columns:1.2fr 210px 160px 1fr;gap:12px}
.material-follow-row>div,.material-follow-row>label{background:#fbfdff;border:1px solid #e8eef7;border-radius:10px;padding:10px 12px}
.material-follow-row input,.material-follow-row select{width:100%;box-sizing:border-box;margin-top:6px;background:#fff}
.material-v25-tip{padding:0 4px 4px;font-size:13px}
.material-v25-right .material-card{border-color:#e1e9f5;border-radius:14px;padding:16px;box-shadow:0 10px 26px rgba(40,60,100,.045)}
.material-v25-right .material-card h3{font-size:18px;margin-bottom:12px}
.material-v25-kpis{grid-template-columns:1fr;gap:10px}
.material-v25-kpis div{border:1px solid #e8eef7;border-radius:12px;background:#fbfdff;padding:12px}
.material-v25-kpis b{font-size:20px}
.material-reminder{font-size:14px}
.material-entry-v25{grid-template-columns:34px 1fr 18px;border-color:#e4ebf6;padding:10px 12px}
.material-entry-v25 span{width:30px;height:30px}
.material-entry-v25 b{font-size:14px}
.material-entry-v25 small{font-size:12px}
.material-timeline{max-height:260px}
.material-timeline article{grid-template-columns:30px 1fr}
.material-avatar{width:30px;height:30px;font-size:13px}
.material-sticky-actions{background:rgba(255,255,255,.96);backdrop-filter:blur(8px);padding:14px 28px;margin:0 -28px -92px}
@media(max-width:1280px){.material-v25-body{grid-template-columns:1fr}.material-v25-right{position:static;grid-template-columns:1fr 1fr}.material-v25-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1080px){.material-v25-meta,.material-checkline,.material-choice-grid,.material-follow-row{grid-template-columns:1fr}.material-v25-right{grid-template-columns:1fr}.material-v25-kpis{grid-template-columns:1fr}}

/* Material follow v27 - alignment fixes */
.material-follow-row{
  grid-template-columns:minmax(210px,260px) minmax(190px,220px) minmax(150px,180px) minmax(220px,1fr);
  align-items:stretch;
}
.material-follow-row>div,
.material-follow-row>label{
  min-height:84px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.material-follow-row>div label{
  display:flex;
  align-items:center;
  gap:8px;
  margin:8px 0 0;
  color:#43536c;
  font-weight:800;
}
.material-follow-row>div input[type=radio]{
  width:16px;
  height:16px;
  margin:0;
  flex:0 0 auto;
}
.material-follow-row input,
.material-follow-row select{
  min-height:38px;
}
.material-sticky-actions{
  margin:0 -20px -92px;
  padding:14px 38px 14px 28px;
  justify-content:flex-end;
  gap:12px;
}
.material-sticky-actions .btn{
  min-width:88px;
}
@media(max-width:1080px){
  .material-follow-row{grid-template-columns:1fr}
  .material-sticky-actions{margin:0 -14px -92px;padding:14px 24px}
}

/* Production schedule modal */
.schedule-modal{width:min(1120px,94vw);max-height:92vh;overflow:hidden;background:#f6f8fc}
.schedule-head{background:#fff;border-bottom:1px solid #edf2f8}
.schedule-head h2{display:flex;align-items:center;gap:10px}
.schedule-head p{margin:7px 0 0;color:#64748b;font-size:13px}
.schedule-body{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;max-height:calc(92vh - 96px);overflow:auto;padding:18px 20px 84px}
.schedule-main,.schedule-side{display:grid;gap:14px;align-content:start}
.schedule-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.schedule-summary>div,.schedule-card,.schedule-side-card{background:#fff;border:1px solid #e1e9f5;border-radius:16px;box-shadow:0 10px 26px rgba(40,60,100,.045)}
.schedule-summary>div{padding:14px}
.schedule-summary span{display:block;color:#71809a;font-weight:800;font-size:12px;margin-bottom:6px}
.schedule-summary b{font-size:17px;color:#172033}
.schedule-card,.schedule-side-card{padding:18px}
.schedule-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.schedule-card h3,.schedule-side-card h3{margin:0 0 8px;color:#172033;font-size:18px}
.schedule-card p{margin:0;color:#64748b;font-size:13px}
.schedule-edit-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.schedule-date-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.schedule-date-grid label{display:block;color:#52627a;font-weight:900}
.schedule-date-grid input{width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #d7e3f3;border-radius:12px;padding:10px 12px;background:#fff;color:#172033}
.schedule-date-grid input:disabled{background:#f4f7fb;color:#52627a}
.schedule-hint{margin-top:14px!important;border-radius:12px;background:#f6f9ff;padding:12px;color:#43536c!important;font-weight:900}
.schedule-card textarea{width:100%;min-height:86px;border:1px solid #d7e3f3;border-radius:12px;padding:12px;box-sizing:border-box;resize:vertical}
.schedule-side-card dl{display:grid;grid-template-columns:1fr auto;gap:10px;margin:0}
.schedule-side-card dt{color:#71809a;font-weight:800}
.schedule-side-card dd{margin:0;color:#172033;font-weight:900;text-align:right}
.schedule-timeline{display:grid;gap:12px;max-height:360px;overflow:auto;padding-right:4px}
.schedule-timeline article{display:grid;grid-template-columns:32px 1fr;gap:10px}
.schedule-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#2f6df6,#27c5bd);color:#fff;font-weight:900}
.schedule-timeline b{display:block;color:#172033}
.schedule-timeline time{display:block;color:#8a97ab;font-size:12px;margin:2px 0 4px}
.schedule-timeline p{margin:0;color:#52627a;line-height:1.5}
.schedule-empty{border:1px dashed #d7e3f3;border-radius:14px;padding:18px;text-align:center;color:#8a97ab;font-weight:900}
.schedule-actions{position:sticky;bottom:0;grid-column:1/-1;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid #e5edf8;padding:18px 34px 18px 20px;margin:0 -20px -84px;z-index:5;justify-content:flex-end;gap:12px}
.schedule-actions .btn{min-width:88px}
@media(max-width:1100px){.schedule-body{grid-template-columns:1fr}.schedule-summary,.schedule-date-grid{grid-template-columns:1fr}.schedule-card-head{display:grid}.schedule-edit-actions{justify-content:flex-start}}
.settlement-modal{width:min(1180px,94vw);max-height:92vh;overflow:hidden;background:#f6f8fc}
.settlement-head{background:#fff;border-bottom:1px solid #edf2f8}
.settlement-head h2{display:flex;align-items:center;gap:10px}
.settlement-head p{margin:7px 0 0;color:#64748b;font-size:13px}
.settlement-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;max-height:calc(92vh - 96px);overflow:auto;padding:18px 20px 92px}
.settlement-main,.settlement-side{display:grid;gap:14px;align-content:start}
.settlement-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.settlement-kpis article,.settlement-card,.settlement-side-card{background:#fff;border:1px solid #e1e9f5;border-radius:18px;box-shadow:0 10px 28px rgba(40,60,100,.045)}
.settlement-kpis article{padding:16px}
.settlement-kpis span,.settlement-card-head span{display:block;color:#71809a;font-weight:900;font-size:12px}
.settlement-kpis b{display:block;margin:8px 0 4px;color:#172033;font-size:23px;line-height:1.1}
.settlement-kpis small{color:#71809a;font-weight:800}
.settlement-card,.settlement-side-card{padding:18px}
.settlement-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.settlement-card h3,.settlement-side-card h3{margin:0;color:#172033;font-size:18px}
.settlement-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.settlement-two-col label,.settlement-profit-grid label{display:block;color:#52627a;font-weight:900}
.settlement-two-col input,.settlement-two-col select,.settlement-profit-grid input,.settlement-card textarea,.settlement-fee-row input{width:100%;box-sizing:border-box;border:1px solid #d7e3f3;border-radius:12px;padding:10px 12px;background:#fff;color:#172033;font-weight:800}
.settlement-two-col input[readonly]{background:#f3f6fb;color:#52627a}
.settlement-check{display:flex!important;align-items:center;gap:8px;border:1px solid #e6edf8;border-radius:12px;padding:10px 12px;background:#fbfdff}
.settlement-check input{width:auto!important}
.settlement-fee-grid{display:grid;gap:8px}
.settlement-fee-head,.settlement-fee-row{display:grid;grid-template-columns:150px minmax(120px,170px) 1fr;gap:10px;align-items:center}
.settlement-fee-head{color:#71809a;font-weight:900;font-size:12px;padding:0 4px}
.settlement-fee-row{border:1px solid #edf2f8;border-radius:14px;padding:10px;background:#fbfdff}
.settlement-fee-row b{color:#172033}
.settlement-profit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.settlement-profit-grid article{border:1px solid #e5edf8;border-radius:16px;background:#fbfdff;padding:16px}
.settlement-profit-grid span{color:#71809a;font-weight:900;font-size:12px}
.settlement-profit-grid b{display:block;margin:5px 0 12px;color:#172033;font-size:20px}
.settlement-profit-grid label:not(.settlement-check){display:grid;grid-template-columns:1fr 96px 18px;align-items:center;gap:8px;margin-bottom:10px}
.settlement-profit-grid strong{display:block;margin:10px 0 12px;color:#1763ff;font-size:22px}
.settlement-card textarea{margin-top:14px;min-height:80px;resize:vertical}
.settlement-side-card dl{display:grid;grid-template-columns:1fr auto;gap:12px;margin:0}
.settlement-side-card dt{color:#71809a;font-weight:900}
.settlement-side-card dd{margin:0;color:#172033;font-weight:900;text-align:right}
.settlement-records{display:grid;gap:12px;max-height:430px;overflow:auto;padding-right:4px}
.settlement-records article{display:grid;grid-template-columns:32px 1fr;gap:10px}
.settlement-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#2f6df6,#27c5bd);color:#fff;font-weight:900}
.settlement-record-line{display:flex;justify-content:space-between;gap:8px}
.settlement-record-line b{color:#172033}
.settlement-record-line time{color:#8a97ab;font-size:12px}
.settlement-records p{margin:3px 0 0;color:#52627a;line-height:1.5}
.settlement-empty{border:1px dashed #d7e3f3;border-radius:14px;padding:18px;text-align:center;color:#8a97ab;font-weight:900}
.negative{color:#dc2626!important}
.settlement-actions{position:sticky;bottom:0;grid-column:1/-1;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid #e5edf8;padding:18px 34px 18px 20px;margin:0 -20px -92px;z-index:5;justify-content:flex-end;gap:12px}
.settlement-actions .btn{min-width:88px}
@media(max-width:1120px){.settlement-body{grid-template-columns:1fr}.settlement-kpis,.settlement-two-col,.settlement-profit-grid{grid-template-columns:1fr}.settlement-fee-head{display:none}.settlement-fee-row{grid-template-columns:1fr}}

/* v31 detail polish */
.stage-node-row{min-height:42px;padding:9px 0;color:#52627a;font-size:14px;font-weight:700}
.stage-node-row b{color:#172033;font-size:15px;font-weight:900;letter-spacing:.01em}
.stage-node-row span:not(.stage-node-check):not(.node-status){color:#52627a;font-size:13px;font-weight:800}
.stage-node-row .node-status{border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}
.stage-node-row.completed .node-status{background:#e9fbf4;color:#13936b}
.stage-node-row.in_progress .node-status{background:#eef4ff;color:#285fff}
.stage-node-row.not_started .node-status{background:#eef3fb;color:#52627a}
.stage-node-row.exception .node-status,.stage-node-row.delayed .node-status{background:#fff0f0;color:#d64545}
@media(max-width:1500px){.stage-node-row{min-height:38px;padding:7px 0}.stage-node-row b{font-size:13px}.stage-node-row span:not(.stage-node-check):not(.node-status){font-size:12px}}
.packaging-records{max-height:660px}
@media(max-width:1280px){.packaging-records{max-height:420px}}
.order-summary-panel .summary-grid{padding:18px 18px 6px}
.summary-schedule{margin:16px 18px 18px;border:1px solid #e5edf8;border-radius:18px;background:linear-gradient(180deg,#fbfdff 0%,#f7faff 100%);padding:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.summary-schedule h3{grid-column:1/-1;margin:0 0 2px;color:#172033;font-size:17px;font-weight:900;letter-spacing:-.01em}
.summary-schedule h3:after{content:"";display:block;width:36px;height:3px;margin-top:9px;border-radius:999px;background:linear-gradient(90deg,#4f7dff,#20c7b5)}
.summary-schedule div{min-height:64px;border:1px solid #e8eef7;border-radius:14px;background:#fff;padding:13px 14px;box-sizing:border-box}
.summary-schedule span{display:block;color:#748095;font-size:12px;font-weight:900;margin-bottom:7px;white-space:nowrap}
.summary-schedule b{display:block;color:#172033;font-size:15px;font-weight:900;line-height:1.25;word-break:keep-all}
@media(max-width:1280px){.order-side-stack .summary-schedule{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px}.order-side-stack .summary-schedule div{padding:12px;min-height:60px}.order-side-stack .summary-schedule b{font-size:14px}}

/* Order communication modal */
.order-communication-modal{width:min(1380px,96vw);max-height:92vh;background:#f6f8fc;overflow:hidden}
.order-communication-head{background:#fff;border-bottom:1px solid #e6eef8}
.order-communication-head h2{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.order-communication-head p{margin:0;color:#64748b;font-size:13px}
.communication-top{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:14px 20px;background:#fff;border-bottom:1px solid #e6eef8}
.communication-top div{border:1px solid #edf2f8;border-radius:14px;background:#fbfdff;padding:10px 12px;min-width:0}
.communication-top span{display:block;color:#71809a;font-size:12px;font-weight:900;margin-bottom:5px}
.communication-top b{display:block;color:#172033;font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.communication-body{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;max-height:calc(92vh - 202px);overflow:auto;padding:18px 20px 92px}
.communication-main,.communication-side{display:grid;gap:14px;align-content:start;min-width:0}
.communication-card{background:#fff;border:1px solid #dfe8f6;border-radius:18px;box-shadow:0 12px 30px rgba(41,67,115,.055);padding:18px}
.communication-card h3{margin:0 0 14px;color:#172033;font-size:18px}
.communication-tags,.comm-choice-row{display:flex;gap:10px;flex-wrap:wrap}
.comm-tag,.comm-choice{border:1px solid #dbe7f6;background:#f8fbff;color:#52627a;border-radius:999px;padding:8px 13px;font-weight:900;cursor:pointer}
.comm-tag.active,.comm-choice.active{border-color:#2f6df6;background:#eef4ff;color:#245bdb;box-shadow:0 8px 18px rgba(47,109,246,.12)}
.communication-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.communication-form-grid label,.communication-two label{display:grid;gap:7px;color:#52627a;font-weight:900;font-size:13px}
.communication-form-grid textarea,.communication-two textarea,.communication-two input{width:100%;box-sizing:border-box;border:1px solid #d7e3f3;border-radius:12px;background:#fbfdff;padding:10px 12px;color:#172033;min-height:70px;resize:vertical}
.communication-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.communication-two>div{display:grid;gap:12px;align-content:start}
.communication-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-radius:12px;background:#f7faff;padding:10px;color:#71809a;font-size:12px}
.communication-meta b{color:#172033}
.comm-participants{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}
.comm-participants label{display:flex;align-items:center;gap:6px;font-weight:800}
.comm-checklist{display:grid;gap:10px}
.comm-checklist label{display:flex;align-items:center;gap:9px;border:1px solid #edf2f8;border-radius:12px;background:#fbfdff;padding:10px;color:#52627a;font-weight:900}
.communication-records{max-height:520px;overflow:auto}
.communication-records article{border-bottom:1px solid #edf2f8;padding:10px 0}
.communication-records article:last-child{border-bottom:0}
.communication-records b{display:block;color:#172033}
.communication-records p{margin:5px 0;color:#52627a;line-height:1.5}
.communication-records small{color:#8a97ab}
.communication-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid #e5edf8;padding:18px 28px;z-index:5;justify-content:flex-end;gap:12px}
@media(max-width:1280px){.communication-top{grid-template-columns:repeat(4,minmax(0,1fr))}.communication-body{grid-template-columns:1fr}.communication-side{grid-template-columns:1fr 1fr}.communication-records{max-height:360px}}
@media(max-width:760px){.communication-top,.communication-form-grid,.communication-two,.communication-side{grid-template-columns:1fr}.communication-body{padding:14px 14px 92px}}

/* v51 order communication cockpit refinement */
.order-communication-modal{background:linear-gradient(180deg,#f8fbff 0%,#f3f7fc 100%)}
.order-communication-head{padding:22px 28px 18px}
.order-communication-head h2{font-size:26px;letter-spacing:-.03em}
.communication-top{display:grid;gap:10px;padding:16px 24px;background:rgba(255,255,255,.88)}
.communication-info-row{display:grid;gap:10px}
.communication-top .communication-info-row{border:0;background:transparent;box-shadow:none;padding:0;min-height:0}
.communication-info-row.primary{grid-template-columns:1.2fr 1.15fr 1.4fr .7fr 1fr 1fr .8fr}
.communication-info-row.secondary{grid-template-columns:repeat(4,minmax(0,1fr))}
.communication-top .comm-info-card{min-height:70px;border:1px solid #dfe9f7;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 10px 26px rgba(41,67,115,.045);padding:14px 16px;box-sizing:border-box}
.communication-top .comm-info-card span{display:block;color:#71809a;font-size:12px;font-weight:900;margin-bottom:8px}
.communication-top .comm-info-card b{display:block;color:#172033;font-size:18px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.communication-top .comm-info-card.strong{border-color:#bcd2ff;background:linear-gradient(135deg,#f7fbff,#eef5ff)}
.communication-body{grid-template-columns:minmax(0,1fr) 360px;gap:18px;padding:20px 24px 96px;max-height:calc(92vh - 224px)}
.communication-card{border-color:#dce7f6;border-radius:22px;padding:20px;box-shadow:0 16px 40px rgba(41,67,115,.06)}
.communication-card h3{font-size:18px;margin-bottom:16px}
.comm-focus-card{background:linear-gradient(135deg,#fff,#f5fbff)}
.communication-tags{gap:12px}
.comm-tag{min-height:42px;padding:10px 18px;border-radius:16px;border-color:#d8e5f7;background:#f3f7ff;color:#3560a8;font-size:14px;box-shadow:0 8px 18px rgba(47,109,246,.055)}
.comm-tag.active{background:linear-gradient(135deg,#2f6df6,#27c5bd);border-color:transparent;color:#fff;box-shadow:0 14px 28px rgba(47,109,246,.2)}
.communication-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.communication-form-grid label,.communication-two label{font-size:12px;color:#64748b}
.communication-form-grid textarea{min-height:46px;height:46px;resize:none;background:#f8fbff;border-color:#e0e9f6;border-radius:14px;font-size:13px}
.communication-two{gap:18px}
.comm-confirm-card{border:1px solid #dfe8f6;border-radius:18px;background:#fbfdff;padding:16px;display:grid;gap:12px}
.comm-confirm-card:has(.comm-status-check input:checked){border-color:#b9ecd5;background:linear-gradient(180deg,#f8fffb,#f3fff9)}
.comm-status-check{min-height:48px;border-radius:16px!important;background:#f1f5fb!important;border:1px solid #e0e8f4!important;color:#60718a!important;padding:12px 14px!important;font-size:14px!important;font-weight:950!important}
.comm-status-check:has(input:checked){background:#e9fbf3!important;border-color:#b9ecd5!important;color:#119064!important}
.comm-status-check input{accent-color:#16b978;transform:scale(1.1)}
.comm-confirm-card textarea,.comm-risk-meeting textarea{min-height:44px;height:44px;resize:none;background:#fff;border-color:#e3ebf6}
.communication-meta{background:#fff;border:1px solid #e5edf8;border-radius:14px}
.risk-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.risk-cards .comm-choice{min-height:70px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:15px}
.risk-cards .comm-choice:before{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;margin-right:8px;color:#fff;font-size:12px}
.risk-cards [data-risk="低风险"]:before{content:"\2713";background:#18b981}
.risk-cards [data-risk="中风险"]:before{content:"!";background:#f59e0b}
.risk-cards [data-risk="高风险"]:before{content:"!";background:#ef4444}
.risk-cards [data-risk="低风险"].active{border-color:#86efac;background:#f0fdf4;color:#11835d}
.risk-cards [data-risk="中风险"].active{border-color:#fcd58a;background:#fffbeb;color:#b45309}
.risk-cards [data-risk="高风险"].active{border-color:#fca5a5;background:#fff1f2;color:#dc2626}
.meeting-cards .comm-choice{border-radius:16px;min-width:92px;background:#fff}
#commMeetingFields{display:grid;gap:10px}
#commMeetingFields[hidden]{display:none}
#commMeetingFields input{min-height:38px;border:1px solid #e0e8f4;border-radius:12px;padding:8px 10px}
.comm-participants label{background:#f7faff;border:1px solid #e5edf8;border-radius:999px;padding:7px 10px;color:#52627a}
.comm-check-card{background:linear-gradient(180deg,#fff,#f8fbff)}
.comm-checklist label{position:relative;gap:10px;border-radius:14px;padding:12px 12px 12px 42px;background:#f4f7fb;color:#71809a;border-color:#e4ebf6;cursor:pointer}
.comm-checklist label:before{content:"";position:absolute;left:12px;top:50%;width:20px;height:20px;border-radius:50%;border:2px solid #cdd8e8;transform:translateY(-50%);box-sizing:border-box}
.comm-checklist label:has(input:checked){background:#edfdf5;border-color:#bcebd4;color:#11835d}
.comm-checklist label:has(input:checked):before{content:"\2713";display:grid;place-items:center;border-color:#19b878;background:#19b878;color:#fff;font-size:13px;font-weight:950}
.comm-checklist input{position:absolute;opacity:0;pointer-events:none}
.communication-records{padding-bottom:12px}
.communication-records article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;border:0;padding:12px 0;position:relative}
.communication-records article+article{border-top:1px solid #edf2f8}
.comm-record-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#2f6df6,#27c5bd);color:#fff;font-weight:950}
.communication-records header{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center}
.communication-records header b{color:#172033;font-size:14px}
.communication-records header span,.communication-records time{color:#8a97ab;font-size:12px}
.communication-records p{margin:5px 0 0;color:#52627a;line-height:1.55}
@media(max-width:1380px){.communication-info-row.primary{grid-template-columns:repeat(4,minmax(0,1fr))}.communication-info-row.secondary{grid-template-columns:repeat(4,minmax(0,1fr))}.communication-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.communication-info-row.primary,.communication-info-row.secondary,.communication-body,.communication-form-grid,.communication-two,.communication-side{grid-template-columns:1fr}.risk-cards{grid-template-columns:1fr}}

/* v52 design-system alignment for order communication */
.order-communication-modal{width:min(1480px,96vw);max-height:85vh;background:#f6f8fc;border-radius:16px}
.order-communication-head{padding:24px 28px 18px;background:#fff}
.order-communication-head h2{font-size:24px;line-height:28px;font-weight:700;color:#0f172a}
.order-communication-head p{font-size:12px;color:#64748b}
.communication-body{grid-template-columns:minmax(0,68%) minmax(330px,32%);max-height:calc(85vh - 230px)}
.communication-card{border-color:#e2e8f0;border-radius:12px;padding:20px 24px;box-shadow:0 12px 28px rgba(15,23,42,.045)}
.communication-card h3{font-size:16px;line-height:20px;font-weight:700;color:#0f172a}
.communication-top{background:#f6f8fc;padding:18px 24px;border-bottom:1px solid #e2e8f0}
.communication-top .comm-info-card{border-color:#e2e8f0;border-radius:12px;box-shadow:0 8px 20px rgba(15,23,42,.035);min-height:72px}
.communication-top .comm-info-card span{color:#64748b}
.communication-top .comm-info-card b{color:#0f172a;font-size:18px}
.comm-tag{border-radius:999px;min-height:44px;padding:11px 18px;background:#eff6ff;border-color:#bfdbfe;color:#2563eb}
.comm-tag.active{background:#2563eb;color:#fff}
.communication-form-grid textarea,.comm-confirm-card textarea,.comm-risk-meeting textarea{border-color:#e2e8f0;background:#fff;box-shadow:none}
.comm-status-check{border-radius:12px!important}
.comm-status-check input{position:absolute;opacity:0;pointer-events:none}
.comm-status-check:before{content:"";width:22px;height:22px;border-radius:50%;border:2px solid #cbd5e1;display:inline-grid;place-items:center;margin-right:4px;box-sizing:border-box}
.comm-status-check:has(input:checked):before{content:"\2713";background:#16a34a;border-color:#16a34a;color:#fff;font-size:13px;font-weight:900}
.risk-cards .comm-choice{border-color:#e2e8f0;box-shadow:0 8px 18px rgba(15,23,42,.035)}
.comm-overview-card{background:#fff}
.comm-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.comm-overview-grid div{border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;padding:12px;position:relative;overflow:hidden}
.comm-overview-grid div.wide{grid-column:1/-1}
.comm-overview-grid span{display:block;color:#64748b;font-size:12px;font-weight:700;margin-bottom:6px}
.comm-overview-grid b{display:block;color:#0f172a;font-size:16px;font-weight:800}
.comm-overview-grid b.ok,.comm-overview-grid b.success{color:#16a34a}
.comm-overview-grid b.warning{color:#f59e0b}
.comm-overview-grid b.danger{color:#dc2626}
.comm-overview-grid b.muted{color:#94a3b8}
.comm-overview-grid i{display:block;height:6px;border-radius:999px;background:#2563eb;margin-top:10px}
.comm-reminder-card{border-left:4px solid #94a3b8;background:#fff}
.comm-reminder-card h3{margin-bottom:8px}
.comm-reminder-card p{margin:0;color:#475569;line-height:1.6;font-size:14px}
.comm-reminder-card.success{border-left-color:#16a34a;background:#f0fdf4}
.comm-reminder-card.warning{border-left-color:#f59e0b;background:#fffbeb}
.comm-reminder-card.danger{border-left-color:#dc2626;background:#fff1f2}
.comm-checklist label{border-radius:12px;min-height:44px}
.communication-records{max-height:460px;overflow:auto}
.communication-actions{border-top:1px solid #e2e8f0;padding:16px 28px}
.communication-actions .btn{height:40px;border-radius:8px}
.communication-actions .btn.primary{background:#2563eb}
@media(max-width:1280px){.communication-body{grid-template-columns:1fr}.communication-side{grid-template-columns:1fr 1fr}.comm-overview-card,.comm-reminder-card{grid-column:auto}}
@media(max-width:900px){.communication-side{grid-template-columns:1fr}.communication-info-row.primary,.communication-info-row.secondary{grid-template-columns:1fr}}

/* v53 kickoff-style order communication modal */
.kick-modal{width:min(1500px,97vw);max-height:92vh;background:#fff;border-radius:16px;overflow:hidden}
.kick-head{padding:28px 30px 18px;background:#fff;border-bottom:0}
.kick-head h2{font-size:26px;line-height:32px;font-weight:800;color:#0f172a}
.kick-head p{margin-top:8px;font-size:13px;color:#4f6384}
.kick-head-actions{display:flex;align-items:center;gap:12px}
.kick-head-actions .btn{height:36px;border-color:#c7d8ff;color:#2563eb;background:#fff}
.kick-head .close{font-size:28px;color:#3b5390;background:transparent}
.kick-top{display:grid;gap:0;margin:0 30px 12px;padding:0;border:1px solid #dce7f6;border-radius:8px;background:#fff;overflow:hidden}
.kick-info-row{display:grid;grid-template-columns:1.15fr 1.3fr 1.15fr .85fr 1.05fr 1fr .8fr}
.kick-people-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;border-top:1px solid #e5edf8}
.kick-info-item,.kick-people-item{min-height:58px;padding:14px 22px;border-right:1px solid #e5edf8;display:grid;align-content:center;gap:5px;box-sizing:border-box}
.kick-info-item:last-child,.kick-people-item:last-child{border-right:0}
.kick-info-item span,.kick-people-item>span{font-size:12px;font-weight:800;color:#566987}
.kick-info-item b,.kick-people-item b{font-size:15px;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kick-people-item div{display:flex;align-items:center;gap:10px}
.kick-avatar{width:28px;height:28px;border-radius:50%;display:inline-grid;place-items:center;background:linear-gradient(135deg,#2563eb,#22c7b8);color:#fff;font-size:13px;font-weight:900;flex:0 0 auto}
.kick-body{display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:16px;max-height:calc(92vh - 242px);overflow:auto;padding:0 30px 100px;background:#fff}
.kick-main{display:grid;gap:12px;align-content:start;min-width:0}
.kick-side{display:grid;gap:12px;align-content:start;min-width:0}
.kick-grid-top{display:grid;grid-template-columns:430px minmax(0,1fr);gap:12px}
.kick-grid-mid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:12px}
.kick-section{border:1px solid #dce7f6;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.035);padding:16px}
.kick-section h3{margin:0 0 16px;font-size:16px;line-height:20px;color:#0f172a;font-weight:800}
.kick-section h3 small{color:#64748b;font-size:12px;font-weight:700}
.kick-focus{min-height:205px}
.kick-focus .communication-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kick-focus .comm-tag{height:38px;border-radius:6px;background:#f8fafc;border:1px solid #d6e3f5;color:#304360;font-size:13px;font-weight:800;box-shadow:none}
.kick-focus .comm-tag.active{background:#ecfdf5;border-color:#86efac;color:#15803d}
.kick-focus .comm-tag:nth-child(2).active{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}
.kick-focus .comm-tag:nth-child(3).active{background:#f5f3ff;border-color:#c4b5fd;color:#6d28d9}
.kick-focus .comm-tag:nth-child(4).active{background:#fff7ed;border-color:#fdba74;color:#c2410c}
.kick-focus .comm-tag:nth-child(6).active{background:#fff1f2;border-color:#fda4af;color:#be123c}
.kick-brief-list{display:grid;gap:8px}
.kick-brief-list label{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;border:1px solid #dce7f6;border-radius:7px;overflow:hidden;background:#fff}
.kick-brief-list span{height:34px;display:flex;align-items:center;padding:0 12px;background:#f8fafc;border-right:1px solid #dce7f6;color:#334155;font-weight:800;font-size:13px}
.kick-brief-list textarea{height:34px;min-height:34px;border:0;resize:none;padding:8px 12px;color:#0f172a;background:#fff}
.kick-confirm{min-height:235px}
.kick-confirm .comm-status-check{margin:0 0 8px;min-height:30px;padding:0!important;border:0!important;background:transparent!important;color:#16a34a!important;font-size:14px!important}
.kick-confirm .comm-status-check:before{width:18px;height:18px}
.kick-note-block{display:grid;gap:6px;margin-top:10px}
.kick-note-block b,.kick-risk label,.kick-meeting label,.kick-meeting-row>div>span{font-size:12px;color:#334155;font-weight:800}
.kick-note-block textarea,.kick-risk textarea{height:56px;min-height:56px;border:1px solid #dce7f6;border-radius:7px;resize:none;padding:10px;background:#fff}
.kick-confirm-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;color:#64748b;font-size:12px}
.kick-confirm-meta b{display:block;color:#1e3a8a;margin-top:4px}
.kick-risk .risk-cards{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}
.kick-risk .risk-cards .comm-choice{min-height:40px;border-radius:6px;font-size:13px}
.kick-risk label{display:grid;gap:6px;margin-top:10px}
.kick-meeting{padding-bottom:14px}
.kick-meeting-row{display:grid;grid-template-columns:1.1fr 1.25fr 1fr 1.4fr;gap:14px;align-items:end}
.kick-meeting-row label{display:grid;gap:7px}
.kick-meeting-row input{height:38px;border:1px solid #dce7f6;border-radius:6px;padding:0 12px}
.kick-meeting .meeting-cards{display:flex;gap:12px}
.kick-meeting .meeting-cards .comm-choice{height:38px;min-width:82px;border-radius:6px}
.kick-meeting .comm-participants{margin-top:12px}
.kick-meeting .comm-participants label{height:34px;border-radius:6px;background:#f8fafc;border-color:#dce7f6}
.kick-side .kick-section{padding:18px}
.kick-side .comm-checklist{gap:9px}
.kick-side .comm-checklist label{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;min-height:36px;padding:6px 0 6px 30px;border:0;border-radius:0;background:transparent;color:#0f172a}
.kick-side .comm-checklist label:before{left:0;width:18px;height:18px;border:0;background:#cbd5e1;color:#fff;content:"";display:grid;place-items:center}
.kick-side .comm-checklist label:has(input:checked):before{content:"\2713";background:#16a34a}
.kick-side .comm-checklist span{font-size:13px;font-weight:800}
.kick-side .comm-checklist em{font-style:normal;font-size:12px;font-weight:800;color:#16a34a}
.kick-side .comm-checklist label:not(:has(input:checked)) em{color:#94a3b8}
.kick-side .communication-records{min-height:330px;max-height:410px}
.kick-side .communication-records article{grid-template-columns:34px 1fr;padding:12px 0}
.kick-more-records{display:block;margin:12px auto 0;color:#2563eb}
.kick-actions{position:sticky;bottom:0;padding:18px 30px;background:rgba(255,255,255,.96);border-top:1px solid #e2e8f0;justify-content:flex-end;gap:18px}
.kick-actions .btn{min-width:112px;height:40px;border-radius:8px}
.kick-actions .btn.primary{background:#2563eb}
@media(max-width:1350px){.kick-info-row{grid-template-columns:repeat(4,minmax(0,1fr))}.kick-grid-top,.kick-grid-mid,.kick-body{grid-template-columns:1fr}.kick-side{grid-template-columns:1fr 1fr}.kick-meeting-row{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.kick-people-row,.kick-side,.kick-meeting-row{grid-template-columns:1fr}.kick-info-row{grid-template-columns:1fr}.kick-body{padding:0 16px 100px}.kick-top{margin:0 16px 12px}.kick-head{padding:20px 16px}}

/* v32 settlement cockpit modal */
.settlement-cockpit-modal{width:min(1380px,96vw);max-height:92vh;background:#f6f8fc;overflow:hidden}
.settlement-cockpit-head{background:#fff;border-bottom:1px solid #e7eef8;padding-bottom:14px}
.settlement-cockpit-head h2{margin-bottom:10px}
.settlement-meta-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;color:#64748b;font-size:13px}
.settlement-meta-row span{white-space:nowrap}
.settlement-meta-row b{color:#172033}
.settlement-cockpit-body{display:grid;grid-template-columns:minmax(440px,45%) minmax(300px,30%) minmax(260px,25%);gap:16px;max-height:calc(92vh - 112px);overflow:auto;padding:18px 20px 92px}
.settlement-col{display:grid;gap:14px;align-content:start;min-width:0}
.settlement-money-cards{display:grid;grid-template-columns:1fr 1fr .72fr;gap:12px}
.settlement-money-cards article,.settlement-panel,.settlement-profit-cards article,.settlement-commission-cards article,.settlement-overview-card,.settlement-record-card{background:#fff;border:1px solid #dfe8f6;border-radius:18px;box-shadow:0 12px 30px rgba(41,67,115,.055)}
.settlement-money-cards article{position:relative;min-height:118px;padding:16px;overflow:hidden}
.settlement-money-cards article:after{content:"";position:absolute;right:-22px;top:-22px;width:72px;height:72px;border-radius:50%;background:rgba(79,125,255,.08)}
.settlement-money-cards span,.settlement-panel-head span,.settlement-profit-cards span,.settlement-commission-cards span{display:block;color:#71809a;font-size:12px;font-weight:900;margin-bottom:8px}
.settlement-money-cards b{display:block;color:#172033;font-size:23px;line-height:1.15;position:relative;z-index:1}
.settlement-money-cards small{display:block;margin-top:8px;color:#71809a;font-weight:800;position:relative;z-index:1}
.settlement-money-cards input,.settlement-money-cards select{position:relative;z-index:1;width:100%;box-sizing:border-box;margin-top:10px;border:1px solid #d7e3f3;border-radius:12px;background:#fbfdff;padding:9px 10px;color:#172033;font-weight:900}
.settlement-money-cards .editable i{position:absolute;right:14px;top:14px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eef4ff;color:#285fff;font-style:normal;font-weight:900}
.settlement-panel{padding:16px}
.settlement-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.settlement-panel-head h3{margin:0;color:#172033;font-size:17px}
.settlement-check.compact{padding:7px 10px;font-size:12px;background:#f8fbff}
.settlement-fee-table-wrap{border:1px solid #e8eef7;border-radius:14px;overflow:hidden;background:#fff}
.settlement-fee-table{width:100%;border-collapse:collapse}
.settlement-fee-table th{background:#f7faff;color:#64748b;font-size:12px;font-weight:900;text-align:left;padding:10px}
.settlement-fee-table td{border-top:1px solid #edf2f8;padding:8px 10px;vertical-align:middle}
.settlement-fee-table td:first-child{width:96px;color:#172033}
.settlement-fee-table input{width:100%;box-sizing:border-box;border:1px solid transparent;border-radius:10px;background:#fbfdff;padding:8px 9px;color:#172033;font-weight:800}
.settlement-fee-table input:focus{border-color:#4f7dff;background:#fff;outline:0;box-shadow:0 0 0 3px rgba(79,125,255,.08)}
.settlement-fee-table td:nth-child(2){width:120px}
.settlement-fee-table td:last-child{width:70px;white-space:nowrap}
.icon-btn{width:26px;height:26px;border:0;border-radius:8px;background:#eef4ff;color:#285fff;font-weight:900;cursor:pointer;margin-right:4px}
.icon-btn.danger{background:#fff0f0;color:#d64545}
.settlement-fee-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;color:#172033}
.settlement-fee-footer strong{font-size:15px}
.settlement-panel textarea{width:100%;min-height:82px;box-sizing:border-box;border:1px solid #d7e3f3;border-radius:14px;background:#fff;padding:12px;color:#172033;resize:vertical}
.settlement-profit-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.settlement-profit-cards article{padding:18px;min-height:126px}
.settlement-profit-cards b{display:block;font-size:30px;line-height:1.05;color:#13936b;margin:4px 0 8px}
.settlement-profit-cards b.negative{color:#dc2626!important}
.settlement-profit-cards b.positive{color:#13936b!important}
.settlement-profit-cards small{color:#71809a;font-weight:800;line-height:1.5}
.settlement-commission-cards{display:grid;gap:12px}
.settlement-commission-cards article{padding:18px}
.settlement-commission-cards h3{margin:0 0 12px;color:#172033;font-size:20px}
.settlement-commission-cards label:not(.settlement-check){display:flex;align-items:center;gap:8px;color:#64748b;font-weight:900}
.settlement-commission-cards input[type=number]{width:78px;border:1px solid #d7e3f3;border-radius:10px;padding:8px 9px;color:#172033;font-weight:900}
.settlement-commission-cards strong{display:block;margin:14px 0 12px;color:#1763ff;font-size:28px;line-height:1.1}
.settlement-overview-card,.settlement-record-card{padding:16px}
.settlement-overview-card h3,.settlement-record-card h3{margin:0 0 12px;color:#172033;font-size:17px}
.settlement-overview-card dl{display:grid;gap:0;margin:0}
.settlement-overview-card dt,.settlement-overview-card dd{padding:9px 0;border-bottom:1px solid #edf2f8}
.settlement-overview-card dt{grid-column:1;color:#71809a;font-weight:900}
.settlement-overview-card dd{grid-column:2;margin:0;text-align:right;color:#172033;font-weight:900}
.settlement-overview-card dd.positive{color:#13936b!important;font-size:15px}
.settlement-overview-card dd.negative{color:#dc2626!important;font-size:15px}
.settlement-records.timeline-style{display:grid;gap:0;max-height:430px;overflow:auto;padding-right:4px}
.settlement-records.timeline-style article{position:relative;display:grid;grid-template-columns:34px 1fr;gap:10px;padding:0 0 16px}
.settlement-records.timeline-style article:before{content:"";position:absolute;left:16px;top:34px;bottom:0;width:1px;background:#dfe8f6}
.settlement-records.timeline-style article:last-child:before{display:none}
.settlement-record-line{display:flex;justify-content:space-between;gap:8px}
.settlement-record-line span{color:#71809a;font-weight:700}
.settlement-empty.is-plain{border:0;background:#f7faff;border-radius:14px;color:#71809a}
.settlement-actions{position:sticky;bottom:0;grid-column:1/-1;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid #e5edf8;padding:18px 34px 18px 20px;margin:0 -20px -92px;z-index:5;justify-content:flex-end;gap:12px}
@media(max-width:1180px){.settlement-cockpit-body{grid-template-columns:1fr}.settlement-money-cards,.settlement-profit-cards{grid-template-columns:1fr}.settlement-fee-table-wrap{overflow:auto}.settlement-fee-table{min-width:640px}}

/* v33 settlement cockpit refinement */
.settlement-cockpit-modal{width:min(1360px,96vw)}
.settlement-cockpit-body{grid-template-columns:minmax(430px,45%) minmax(330px,30%) minmax(280px,25%);gap:14px}
.settlement-cockpit-head h2{font-size:22px}
.settlement-meta-row{font-size:13px;gap:12px}
.settlement-money-cards{grid-template-columns:1fr 1fr;gap:10px}
.settlement-money-cards article{min-height:106px;padding:14px}
.settlement-money-cards span,.settlement-profit-cards span,.settlement-commission-cards span{font-size:12px;margin-bottom:7px}
.settlement-money-cards b{font-size:21px}
.settlement-money-cards small{font-size:12px;line-height:1.45}
.settlement-money-cards select{width:100%;box-sizing:border-box;margin-top:8px;border:1px solid #d7e3f3;border-radius:12px;background:#fff;padding:8px 10px;color:#172033;font-weight:900}
.settlement-meta-currency{display:inline-flex;align-items:center;gap:6px}
.settlement-meta-currency select{border:1px solid #d7e3f3;border-radius:10px;background:#fff;padding:5px 28px 5px 10px;color:#172033;font-weight:900}
.settlement-review-split{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.settlement-review-split article{background:#fff;border:1px solid #dfe8f6;border-radius:18px;box-shadow:0 12px 30px rgba(41,67,115,.055);padding:14px}
.settlement-review-split h3{margin:0 0 10px;color:#172033;font-size:16px}
.settlement-review-split small{display:block;margin-top:10px;color:#71809a;font-weight:800;line-height:1.45}
.settlement-commission-cards.settlement-commission-inline{align-items:stretch}
.settlement-commission-cards.settlement-commission-inline article{min-height:168px;display:flex;flex-direction:column}
.settlement-commission-cards.settlement-commission-inline strong{margin-top:auto}
.settlement-product-panel{margin-top:10px}
.settlement-product-table-wrap{overflow:auto;border:1px solid #e8eff9;border-radius:14px;background:#fff}
.settlement-product-table{width:100%;min-width:760px;border-collapse:collapse}
.settlement-product-table th{background:#f5f8fc;color:#53647d;font-size:12px;text-align:left;padding:10px;font-weight:900}
.settlement-product-table td{border-top:1px solid #edf2f8;padding:9px 10px;color:#172033;font-weight:800}
.settlement-product-table td small{display:block;color:#71809a;margin-top:3px;font-weight:700}
.settlement-product-table .num{text-align:right}
.settlement-product-table input{width:100%;box-sizing:border-box;border:1px solid #d7e3f3;border-radius:10px;background:#fbfdff;padding:7px 8px;color:#172033;font-weight:900}
.settlement-product-table input.settlement-purchase-input{width:86px;min-width:86px;display:inline-block}
.settlement-product-table .positive{color:#059669}
.settlement-product-table .negative{color:#dc2626}
.settlement-empty-cell{text-align:center!important;color:#71809a!important;padding:18px!important}
.settlement-panel{padding:14px}
.settlement-panel-head h3,.settlement-overview-card h3,.settlement-record-card h3,.settlement-note-card h3{font-size:16px}
.settlement-rate-panel[hidden]{display:none!important}
.settlement-rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.settlement-rate-grid label{display:block;color:#52627a;font-size:12px;font-weight:900}
.settlement-rate-grid input{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d7e3f3;border-radius:12px;background:#fff;padding:9px 10px;color:#172033;font-weight:900}
.settlement-rate-panel small{display:block;margin-top:10px;color:#71809a;font-weight:800;line-height:1.5}
.settlement-fee-table th{font-size:12px;padding:9px}
.settlement-fee-table td{padding:7px 9px}
.settlement-fee-table input{padding:7px 8px;font-size:13px}
.settlement-profit-cards{gap:10px}
.settlement-profit-cards article{padding:16px;min-height:112px}
.settlement-profit-cards b{font-size:28px}
.settlement-commission-cards.settlement-commission-inline{grid-template-columns:1fr 1fr;gap:10px}
.settlement-commission-cards article{padding:14px}
.settlement-commission-cards h3{font-size:17px;margin-bottom:10px}
.settlement-commission-cards label:not(.settlement-check){font-size:12px}
.settlement-commission-cards strong{font-size:22px;margin:12px 0 10px}
.settlement-note-card textarea{width:100%;min-height:92px;box-sizing:border-box;border:1px solid #d7e3f3;border-radius:14px;background:#fff;padding:12px;color:#172033;resize:vertical}
.settlement-overview-card dt,.settlement-overview-card dd{font-size:13px;padding:8px 0}
.settlement-records.timeline-style{max-height:300px}
@media(max-width:1180px){.settlement-cockpit-body{grid-template-columns:1fr}.settlement-money-cards,.settlement-profit-cards,.settlement-rate-grid,.settlement-commission-cards.settlement-commission-inline,.settlement-review-split{grid-template-columns:1fr}}

/* v37 settlement cockpit stability fixes */
.settlement-cockpit-modal{width:min(1500px,98vw)}
.settlement-cockpit-body{
  grid-template-columns:minmax(610px,1fr) minmax(320px,340px) minmax(280px,300px);
  gap:16px;
  align-items:start;
}
.settlement-left,.settlement-mid,.settlement-right{min-width:0}
.settlement-left{grid-column:1;grid-row:1}
.settlement-mid{grid-column:2;grid-row:1}
.settlement-right{grid-column:3;grid-row:1}
.settlement-product-table-wrap,.settlement-fee-table-wrap{max-width:100%;overflow:auto}
.settlement-product-table{min-width:600px}
.settlement-profit-cards.settlement-profit-three{grid-template-columns:1fr 1fr}
.settlement-profit-cards.settlement-profit-three article:first-child{grid-column:1/-1}
.settlement-commission-cards.settlement-commission-inline{grid-template-columns:1fr 1fr}
.settlement-commission-cards.settlement-commission-inline article{min-width:0}
.settlement-commission-cards .settlement-confirm-btn{width:100%;height:42px;margin-top:10px;white-space:nowrap}
.settlement-review-split{grid-template-columns:1fr 1fr}
.settlement-review-split article{min-width:0}
.settlement-review-split .btn{width:100%}
.settlement-review-split.compact-only-buttons{margin-top:8px}
.settlement-review-split.compact-only-buttons article{padding:10px;background:transparent;border:0;box-shadow:none}
.settlement-review-split.compact-only-buttons .btn{height:42px;white-space:nowrap}
.settlement-note-card,.settlement-side-card{min-width:0}
@media(max-width:1320px){
  .settlement-cockpit-body{grid-template-columns:minmax(0,1fr)}
  .settlement-left,.settlement-mid,.settlement-right{grid-column:1;grid-row:auto}
  .settlement-money-cards,
  .settlement-profit-cards.settlement-profit-three,
  .settlement-commission-cards.settlement-commission-inline,
  .settlement-review-split,
  .settlement-rate-grid{grid-template-columns:1fr}
  .settlement-profit-cards.settlement-profit-three article:first-child{grid-column:auto}
}

/* v48 order completion light modal */
.order-completion-modal .payment-status-row{display:flex;gap:18px;flex-wrap:wrap;padding:12px 18px;background:#f8fbff;border:1px solid #dbe7f6;border-radius:16px;margin-bottom:16px}
.order-completion-modal .completion-grid{grid-template-columns:1fr 1.1fr .9fr}
.completion-fee-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.completion-fee-grid label{display:flex;flex-direction:column;gap:6px;color:#51627a;font-weight:700}
.completion-fee-grid input{height:38px;border:1px solid #d6e3f3;border-radius:10px;padding:0 10px;font:inherit;background:#fff}
.order-completion-modal .notice{margin-top:14px;color:#72839d;font-size:13px;line-height:1.7}
@media(max-width:1180px){.order-completion-modal .completion-grid,.completion-fee-grid{grid-template-columns:1fr}}
