@charset "UTF-8";
:root{font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:#182d41;background:#f3f6f9;font-size:14px;--navy:#0d2538;--teal:#087f79;--muted:#718293;--line:#e2eaf0}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,.table-scroll:focus-visible{outline:3px solid #58bdb2;outline-offset:3px}[hidden]{display:none!important}p{margin:0}a{color:inherit}h1,h2,h3{margin:0}button{line-height:1.5}
.sidebar{width:224px;background:var(--navy);position:fixed;inset:0 auto 0 0;color:#b6c8d8;padding:30px 20px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:12px;align-items:center;color:white;text-decoration:none;font-size:19px;font-weight:650;letter-spacing:.04em}.brand-mark{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;background:#143c4b;color:#6de4ce;border:1px solid #2c5864;border-radius:10px;font-size:26px}.brand small{display:block;margin-top:7px;font-size:11px;font-weight:400;letter-spacing:.06em;color:#8faebb}.nav-caption{font-size:11px;letter-spacing:.15em;color:#6c8a9c;margin:43px 15px 15px}.side-nav{display:flex;flex-direction:column;gap:8px}.nav-item{border:1px solid transparent;color:#b6c8d8;background:transparent;display:flex;gap:12px;align-items:center;text-align:left;padding:13px 14px;border-radius:8px;width:100%;white-space:nowrap}.nav-item.active{color:#70e3cb;background:#183f4a;border-color:#27515a}.nav-item:hover{background:#173947}.nav-icon{font-size:20px;font-weight:400}.nav-item b{margin-left:auto;padding:2px 6px;border-radius:5px;background:#e9ae61;color:#55350e;font-size:11px}.sidebar-bottom{margin-top:auto;border-top:1px solid #254251;padding:20px 7px 0}.sidebar-bottom strong{font-size:13px;color:#a7d9d0}.sidebar-bottom p{margin-top:10px;font-size:11px;line-height:1.9;color:#8ea8b9}.sidebar-bottom>span{display:block;font-size:10px;color:#627f92;margin-top:21px}
.workspace{margin-left:224px;min-width:0}.topbar{height:76px;background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;padding:0 36px}.breadcrumb{color:#8b9aa6;font-size:12px}.breadcrumb span{margin:0 13px;color:#c2cdd6}.breadcrumb strong{color:#4f6576;font-weight:500}.topbar-right{display:flex;align-items:center;gap:16px}.readonly-pill{color:#8c4b14;background:#fff0d9;border:1px solid #e9bf84;padding:7px 11px;border-radius:6px;font-size:12px;font-weight:700;white-space:nowrap}.quiet{border:1px solid #d7e2eb;border-radius:6px;padding:9px 12px;color:#526e80;background:white;white-space:nowrap}.quiet:hover{border-color:#77aaa6;color:var(--teal);background:#f7fcfb}.shell{padding:31px 36px 16px;max-width:1750px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px}.eyebrow{font-size:10px;color:#8096a7;letter-spacing:.15em;margin-bottom:9px}h1{font-size:27px;letter-spacing:.01em}.page-heading p{font-size:13px;color:var(--muted);margin-top:9px;line-height:1.8}.refresh-button{padding:10px 15px}
.readonly-banner{background:#e9f5f1;border:1px solid #b0d9cd;border-left:5px solid #16826e;border-radius:8px;padding:17px 20px;margin-bottom:17px;display:flex;gap:15px;align-items:center}.readonly-icon{width:42px;height:42px;border:1px solid #9bcbbd;display:grid;place-items:center;border-radius:10px;font-size:27px;flex-shrink:0;color:#0c7865;background:#d8eee6}.readonly-banner h2{color:#096855;font-size:19px;letter-spacing:.03em}.readonly-banner p{color:#4f796d;line-height:1.8;margin-top:6px;font-size:12px}.status{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:11px 14px;border:1px solid #d1e8e1;border-radius:6px;background:#f2faf7;color:#3b7f70;font-size:12px;line-height:1.8;margin-bottom:20px}.status.warning{background:#fff3df;border-color:#eacb94;color:#92561e}.status-dot{width:7px;height:7px;border-radius:50%;background:#128873;flex-shrink:0}.warning .status-dot{background:#c9822c}.status strong{font-weight:600}.status .status-time{color:#6f8e91}.status.warning .status-time{color:#a28256}
.summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 23px}.metric{background:white;border:1px solid var(--line);border-radius:9px;padding:17px 20px;min-width:0}.metric>span{font-size:12px;color:#5e7789}.metric strong{display:block;font-size:31px;margin:9px 0;color:#193d51;font-weight:650;line-height:1.2}.metric:first-child strong{color:var(--teal)}.metric small{font-size:10px;color:#8a9ca9;line-height:1.7;display:block}.notice{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid;padding:16px 20px;border-radius:8px;margin:12px 0;line-height:1.7}.notice strong{font-size:15px}.notice p{font-size:12px;margin:5px 0 0}.notice.review{border-color:#bed6ed;background:#edf5fd;color:#36638e}.notice.attention{border:2px solid #e6b573;background:#fff6e9;color:#93490e}.notice-button{border:1px solid currentColor;border-radius:6px;padding:8px 12px;background:#fff;color:inherit;white-space:nowrap;font-size:12px}.notice-button:hover{filter:brightness(.97)}
.data-panel{margin-top:23px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:white;box-shadow:0 3px 16px #14334c03}.panel-top{display:flex;justify-content:space-between;align-items:center;padding:0 22px;border-bottom:1px solid var(--line);gap:12px;min-height:62px}.tabs{display:flex;gap:26px}.tabs button{border:0;border-bottom:3px solid transparent;padding:19px 2px 16px;background:transparent;color:#718696;font-weight:600;font-size:14px;white-space:nowrap}.tabs .active{color:var(--teal);border-bottom-color:var(--teal)}.tabs span{display:inline-block;background:#eaf0f4;padding:2px 6px;font-size:10px;border-radius:4px;margin-left:6px;vertical-align:1px}.tabs .active span{background:#e1f2ed}.panel-title{color:#294b60;font-size:15px}.panel-readonly{font-size:11px;color:#6b8790;font-weight:400;white-space:nowrap}.toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:20px 22px 11px}.search{display:flex;align-items:center;flex:1;min-width:210px;gap:8px;padding:0 11px;border:1px solid #dce6ed;background:#fbfcfe;border-radius:6px;height:39px}.search>span{font-size:22px;color:#8ba1b3;line-height:1}.search input{min-width:0;width:100%;border:0;background:none;outline:none;font-size:12px;color:#36576b;height:100%}.search input::placeholder{color:#8fa2b0}.toolbar select{max-width:100%;border:1px solid #dce6ed;padding:9px 8px;border-radius:6px;color:#587185;background:white;font-size:11px;min-height:39px}.toolbar .quiet{font-size:11px;padding:9px 10px;min-height:39px}.result-count{color:#8497a5;font-size:11px;white-space:nowrap;margin-left:auto}.scope-hint{font-size:11px;color:#8b9daa;line-height:1.8;padding:0 22px 16px}.scroll-hint{display:none}.table-scroll{overflow:auto;width:100%;max-height:72vh;border-top:1px solid #e8eef3;isolation:isolate;overscroll-behavior-x:contain}table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:980px;background:white}th{text-align:left;font-size:11px;font-weight:500;color:#738b9b;background:#f6f9fb;padding:14px 17px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2;vertical-align:middle}td{font-size:12px;color:#426075;padding:20px 17px;border-bottom:1px solid #eaf0f4;vertical-align:top;background:white;line-height:1.7;overflow-wrap:anywhere}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fbfdfd}.table-scroll th:first-child,.table-scroll td:first-child{position:sticky;left:0;z-index:1}.table-scroll th:first-child{z-index:3}.shipments-table th:nth-child(1){width:21%}.shipments-table th:nth-child(2){width:26%}.shipments-table th:nth-child(3){width:10%}.shipments-table th:nth-child(4){width:10%}.shipments-table th:nth-child(5){width:13%}.shipments-table th:nth-child(6){width:14%}.shipments-table th:nth-child(7){width:6%;min-width:60px}.number{text-align:right;white-space:nowrap}.number strong{font-size:18px;color:#31556a;font-weight:650}.number.accent strong{color:var(--teal)}.cell-title{font-weight:600;color:#26495f;font-size:13px;line-height:1.7}.cell-subtitle{display:block;color:#8b9cab;font-size:10px;line-height:1.8;margin-top:5px;white-space:normal}.cell-code{color:#366c80;font-size:12px;font-weight:600;overflow-wrap:anywhere}.code-link{border:0;background:none;text-align:left;padding:0;color:#277a7c;font-weight:600;font-size:12px;text-decoration:none;line-height:1.8}.code-link:hover{text-decoration:underline}.code-link:focus-visible{outline-offset:2px}.source-line{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:6px 0 8px}.source-badge,.type-badge{display:inline-block;font-size:9px;padding:2px 6px;border-radius:4px;line-height:1.7;white-space:nowrap}.source-badge.official{color:#468aaa;background:#edf5fa}.source-badge.temporary{color:#8561a6;background:#f2edfa}.type-badge.sample{color:#48886b;background:#edf6ef}.type-badge.contract{color:#967844;background:#faf3e8}.row-note{margin-top:9px;padding:8px 10px;border:1px solid #edf0f2;border-radius:5px;background:#f7f9fb;color:#6d8495;font-size:11px;white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere}.row-note strong{color:#637c8e;font-weight:500}.due{font-size:12px;white-space:nowrap;line-height:1.9}.due.overdue{color:#b45530}.due small{display:block;font-size:10px;color:#b7785b;margin-top:4px}.status-tag{font-size:10px;font-weight:600;display:inline-block;white-space:nowrap;background:#eff4f8;color:#68849a;border-radius:5px;padding:4px 8px}.status-tag.partial{background:#fff3df;color:#a27933}.status-tag.shipped{background:#eaf6ee;color:#468263}.progress{display:block;width:100%;max-width:110px;height:4px;border:0;border-radius:4px;margin-top:12px;overflow:hidden;background:#eaf0f4;accent-color:#4aa58d}.progress::-webkit-progress-bar{background:#eaf0f4}.progress::-webkit-progress-value{background:#4aa58d;border-radius:4px}.progress::-moz-progress-bar{background:#4aa58d}.badge{display:block;width:100%;text-align:left;border:1px solid #e9b385;background:#fff3e5;color:#a24f14;border-radius:5px;padding:7px 8px;font-size:10px;font-weight:650;line-height:1.8;margin-top:9px}.badge:hover{background:#ffe7c9}.badge.review-badge{color:#396a9c;background:#edf5fc;border-color:#c1d9ed}.details-button{background:#f2f8f8;border:1px solid #cfe4e1;color:#20857d;border-radius:5px;padding:5px 8px;font-size:11px;white-space:nowrap}.details-button:hover{background:#e2f2ee}.linked-summary{color:#8c7f9e;font-size:10px;margin-top:8px;line-height:1.7}.sort-button{padding:0;border:0;background:none;font-size:11px;color:#7f94a4;text-align:left;white-space:nowrap}.sort-button.active{color:var(--teal);font-weight:650}.sort-arrow{margin-left:4px;font-size:11px;opacity:.7}.sort-divider{color:#abb9c4;padding:0 3px;font-size:10px}.number .sort-button{float:none}.empty-cell{padding:48px 20px!important;text-align:center!important;position:static!important}.empty-cell strong{font-size:16px;color:#587385;display:block;margin-bottom:8px}.empty-cell p{color:#8a9eac;font-size:12px}.panel-footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;border-top:1px solid var(--line);padding:13px 22px;color:#8c9eac;font-size:10px;line-height:1.8}footer{text-align:center;padding:27px 0 7px;font-size:10px;color:#8fa2af}
.inventory-table{min-width:750px}.inventory-table th:nth-child(1){width:26%}.inventory-table th:nth-child(2){width:25%}.inventory-table th:nth-child(3){width:27%}.inventory-table th:nth-child(4){width:14%}.inventory-table th:nth-child(5){width:8%}.inventory-table .number strong{color:var(--teal)}.inventory-table .negative strong{color:#b45530}.materials-table{min-width:1020px}.materials-table th:nth-child(1){width:19%}.materials-table th:nth-child(2){width:22%}.materials-table th:nth-child(3){width:10%}.materials-table th:nth-child(4){width:15%}.materials-table th:nth-child(5){width:20%}.materials-table th:nth-child(6){width:14%}.material-memo{white-space:pre-wrap;line-height:1.9;font-size:11px}.material-state{font-size:10px;padding:4px 7px;border:1px solid #e9bd82;border-radius:4px;color:#a5671b;background:#fff4e1;display:inline-block;font-weight:600}.material-state.linked{color:#4f8474;background:#ecf6f1;border-color:#c9e2d5}.material-state.ignored,.material-state.internal{color:#8393a1;background:#f4f6f8;border-color:#dfe5eb}
dialog{width:min(710px,calc(100% - 24px));max-height:85vh;border:1px solid var(--line);border-radius:12px;padding:24px;color:#19364a;box-shadow:0 16px 70px #102f4d38}dialog::backdrop{background:#122b3f66}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;background:white;padding:0 0 19px}.dialog-head h2{font-size:19px;line-height:1.6;overflow-wrap:anywhere}.dialog-eyebrow{display:block;font-size:10px;letter-spacing:.08em;color:#7f9a9b;margin-bottom:6px}.detail-section{border-top:1px solid var(--line);padding:17px 0;overflow-wrap:anywhere}.detail-section h3{font-size:14px;margin:0 0 10px}.detail-section p{font-size:12px;line-height:1.9;white-space:pre-wrap;margin:5px 0}.detail-section .reason{color:#9a4212;font-weight:600}.difference{background:#fff3e5;border:1px solid #eab37e;border-left:4px solid #d78d32;border-radius:7px;padding:15px;margin:12px 0}.difference h3{color:#9a4212}.difference .reason{color:#94400d;font-size:15px;font-weight:700;white-space:pre-wrap;line-height:1.9;margin:8px 0 12px}.compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compare div{background:#fffaf4;padding:12px;border:1px solid #f1deca;border-radius:6px}.compare small{color:#9d7757}.compare p{font-size:12px;line-height:1.8}.dialog-note{font-size:12px;color:#8195a3;line-height:1.9;margin-bottom:17px}
.login-body{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at top,#dceae9,transparent 65%),#f3f7fa}.login-panel{width:100%;max-width:430px;background:white;border:1px solid var(--line);padding:34px;border-radius:15px;box-shadow:0 18px 60px #1a474712}.login-panel .brand-mark{margin-bottom:25px;background:#11384b}.login-panel .eyebrow{color:#6a9592}.login-panel h1{font-size:29px;margin-bottom:17px}.login-readonly{color:#106d60;background:#e5f4ed;border:1px solid #b9dbce;border-radius:6px;padding:11px 12px;font-size:14px;font-weight:700;margin-bottom:13px}.muted{color:var(--muted);font-size:12px;line-height:1.9}.login-panel form{margin:25px 0}.login-panel label{display:block;margin:15px 0;font-size:12px;color:#526e80}.login-panel input{display:block;width:100%;margin-top:8px;border:1px solid var(--line);border-radius:6px;padding:13px;font-size:13px}.primary{display:block;width:100%;background:var(--teal);color:white;border:0;border-radius:6px;padding:13px;margin-top:24px;font-weight:600}.login-note{color:var(--muted);font-size:11px;line-height:1.9}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.difference-badge span,.difference-badge small{display:block}.difference-badge small{white-space:nowrap;font-size:10px;font-weight:500;margin-top:3px}
@media(min-width:1600px){.toolbar .search{max-width:480px}.shell{padding:36px 42px 16px}.topbar{padding:0 42px}}
@media(max-width:1100px){.sidebar{width:190px;padding:26px 15px}.workspace{margin-left:190px}.brand{font-size:17px;gap:10px}.brand-mark{width:35px;height:35px}.topbar{padding:0 23px}.shell{padding:26px 23px 14px}.summary{gap:11px}.metric{padding:16px}.metric strong{font-size:28px}.toolbar .result-count{margin-left:0}.toolbar{padding:17px 18px 10px}}
@media(max-width:760px){.sidebar{position:static;width:auto;padding:16px 16px 0;display:block}.brand{font-size:18px}.brand small{font-size:10px;margin-top:5px}.brand-mark{width:36px;height:36px}.nav-caption,.sidebar-bottom{display:none}.side-nav{flex-direction:row;gap:5px;margin:16px -4px 0}.nav-item{justify-content:center;padding:10px 5px 12px;border-radius:6px 6px 0 0;font-size:12px;gap:6px}.nav-icon{font-size:17px}.nav-item b{margin-left:0;font-size:9px;padding:1px 5px}.workspace{margin:0}.topbar{height:57px;padding:0 16px;gap:7px}.breadcrumb{font-size:10px}.breadcrumb span{margin:0 7px}.topbar-right{gap:8px}.topbar .quiet{font-size:10px;padding:6px 8px}.readonly-pill{font-size:10px;padding:5px 7px}.shell{padding:22px 14px 12px}.page-heading{align-items:center;gap:12px;margin-bottom:18px}h1{font-size:23px}.eyebrow{font-size:9px;margin-bottom:7px}.page-heading p{font-size:11px;margin-top:7px}.refresh-button{font-size:10px;padding:8px 10px}.readonly-banner{padding:13px 12px;gap:10px;margin-bottom:13px;border-left-width:4px}.readonly-icon{width:33px;height:33px;font-size:22px;border-radius:8px}.readonly-banner h2{font-size:16px}.readonly-banner p{font-size:10px;line-height:1.9}.status{padding:10px 11px;font-size:10px;gap:6px;margin-bottom:16px}.status-time{display:block;width:100%;padding-left:13px}.summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:17px}.metric{padding:13px 15px}.metric>span{font-size:11px}.metric strong{font-size:26px;margin:7px 0}.metric small{font-size:9px}.notice{padding:12px 13px;align-items:flex-start;gap:10px}.notice strong{font-size:13px}.notice p{font-size:10px;line-height:1.9}.notice-button{font-size:10px;padding:7px 8px}.data-panel{margin-top:18px}.panel-top{padding:0 14px;min-height:56px}.tabs{gap:20px}.tabs button{font-size:12px;padding:17px 0 14px}.tabs span{font-size:9px;margin-left:4px}.panel-readonly{font-size:9px}.panel-title{font-size:13px}.toolbar{padding:14px 12px 9px;gap:7px}.search{flex-basis:100%;min-width:0;height:38px}.search input{font-size:11px}.toolbar select{flex:1;min-width:0;font-size:10px;min-height:36px;padding:7px 5px}.toolbar .quiet{font-size:10px;padding:7px;min-height:36px}.toolbar #reset-sort{margin-right:auto}.result-count{font-size:10px;margin-left:auto!important}.scope-hint{padding:0 13px 10px;font-size:10px}.scroll-hint{display:block;font-size:10px;color:#7f979e;background:#f6faf9;padding:8px 13px;border-top:1px solid #e7efed}.table-scroll{max-height:74vh}.shipments-table{min-width:990px}.table-scroll th{padding:12px 14px}.table-scroll td{padding:17px 14px}.table-scroll th:first-child,.table-scroll td:first-child{width:180px;max-width:180px;box-shadow:4px 0 5px -5px #637b8f77}.shipments-table th:nth-child(1){width:180px}.shipments-table th:nth-child(2){width:260px}.shipments-table th:nth-child(3),.shipments-table th:nth-child(4){width:95px}.shipments-table th:nth-child(5){width:125px}.shipments-table th:nth-child(6){width:150px}.shipments-table th:nth-child(7){width:85px}.panel-footer{padding:11px 13px;font-size:9px;gap:6px}.panel-footer span{width:100%}footer{font-size:9px;padding:22px 0 6px}dialog{padding:18px}.dialog-head h2{font-size:16px}.dialog-head .quiet{font-size:11px;padding:8px 10px}.compare{grid-template-columns:1fr}.login-panel{padding:28px}.login-panel h1{font-size:27px}}
.mobile-only,.mobile-logout,.mobile-filter-toggle,.mobile-columns-toggle,.readonly-compact-copy,.note-toggle{display:none}
@media(max-width:760px){
  .sidebar{position:relative;padding:8px 10px 0}
  .brand{font-size:15px;gap:7px;width:calc(100% - 45px);min-height:29px}
  .brand-mark{width:27px;height:27px;border-radius:7px;font-size:21px}
  .brand>span:last-child{display:flex;align-items:center;gap:9px;min-width:0}
  .brand small{font-size:9px;margin:0;letter-spacing:0}
  .mobile-logout{display:block;position:absolute;right:10px;top:9px}
  .mobile-logout button{border:1px solid #365769;border-radius:5px;color:#a7c5d2;background:transparent;font-size:10px;padding:4px 8px}
  .side-nav{margin:7px 0 0;gap:4px}
  .nav-item{padding:6px 4px 7px;font-size:11px;gap:5px}
  .nav-icon{font-size:15px}
  .topbar{display:none}
  .shell{padding:9px 8px 8px}
  .page-heading{margin-bottom:7px;gap:10px;min-height:28px}
  .page-heading h1{font-size:19px;line-height:1.5}
  .page-heading .eyebrow,.page-heading p{display:none}
  .refresh-button{font-size:10px;padding:4px 8px}
  .readonly-banner{padding:6px 9px;margin-bottom:6px;gap:0;border-left-width:3px;border-radius:5px}
  .readonly-banner .readonly-icon,.readonly-full-copy{display:none}
  .readonly-banner>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
  .readonly-banner h2{font-size:12px;line-height:1.6;letter-spacing:0}
  .readonly-banner .readonly-compact-copy{display:block;font-size:10px;margin:0;line-height:1.6}
  .status{padding:5px 8px;margin-bottom:7px;font-size:9px;gap:5px;line-height:1.6;border-radius:5px}
  .status .status-time{display:none}
  .mobile-only{display:block}
  .status-compact-time{margin-left:auto;font-size:9px;white-space:nowrap}
  .summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:7px}
  .metric{padding:6px 7px;border-radius:5px}
  .metric>span{font-size:9px;white-space:nowrap}
  .metric strong{font-size:19px;line-height:1.1;margin:4px 0 0}
  .metric small{display:none}
  .notice{padding:7px 8px;margin:5px 0;border-radius:5px;align-items:center;gap:6px;line-height:1.5}
  .notice.attention{border-width:1px}
  .notice strong{font-size:10px;line-height:1.6}
  .notice p{display:none}
  .notice-button{padding:3px 6px;font-size:9px;border-radius:4px}
  .data-panel{margin-top:8px;border-radius:6px}
  .panel-top{padding:0 9px;min-height:35px;gap:8px}
  .tabs{gap:18px}
  .tabs button{padding:8px 0 7px;font-size:11px;border-bottom-width:2px}
  .tabs span{font-size:9px;padding:1px 4px}
  .panel-readonly{display:none}
  .panel-title{font-size:12px}
  .mobile-columns-toggle,.mobile-filter-toggle{display:block;font-size:10px;line-height:1.5;padding:4px 7px;border:1px solid #cbdfe1;border-radius:4px;background:#f7fbfa;color:#3c7a75;white-space:nowrap}
  .mobile-columns-toggle{margin-left:auto}
  .mobile-columns-toggle[aria-pressed=true],.mobile-filter-toggle[aria-expanded=true]{background:#e4f3ed;border-color:#8fbbb2;color:#187565}
  .toolbar{padding:8px 8px 5px;gap:6px;align-items:center}
  .toolbar .search{flex:1;flex-basis:0;min-width:90px;height:31px;padding:0 7px;order:0}
  .search input{font-size:16px}
  .search input::placeholder{font-size:11px}
  .toolbar .result-count{font-size:9px;order:1;margin-left:0!important}
  .toolbar .mobile-filter-toggle{order:2;height:31px}
  .toolbar>select,.toolbar>#direction,.toolbar>#reset-sort{display:none;order:3}
  .toolbar.filters-expanded>select,.toolbar.filters-expanded>#direction,.toolbar.filters-expanded>#reset-sort{display:block;min-height:30px;font-size:10px;padding:6px}
  .toolbar.filters-expanded #scope{flex:1 0 42%}
  .toolbar.filters-expanded #sort{flex:1 0 42%}
  .toolbar.filters-expanded #direction{margin-left:auto}
  .toolbar.filters-expanded #reset-sort{margin-right:0}
  .scope-hint{display:none}
  .scroll-hint{padding:4px 9px;font-size:9px;line-height:1.5}
  .table-scroll{max-height:76vh}
  .table-scroll table:not(.full-columns){min-width:0;width:100%;table-layout:fixed}
  .table-scroll table:not(.full-columns) th,.table-scroll table:not(.full-columns) td{padding:10px 6px;font-size:11px}
  .table-scroll table:not(.full-columns) th{padding-block:8px}
  .table-scroll table:not(.full-columns) th:first-child,.table-scroll table:not(.full-columns) td:first-child{max-width:none;box-shadow:none}
  .table-scroll table:not(.full-columns) .sort-button{font-size:9px;white-space:normal}
  .table-scroll table:not(.full-columns) .sort-arrow{font-size:9px;margin-left:2px}
  .table-scroll table:not(.full-columns) .sort-divider{padding:0 1px;font-size:9px}
  .table-scroll table:not(.full-columns) .cell-title{font-size:11px;line-height:1.6}
  .table-scroll table:not(.full-columns) .cell-subtitle{font-size:9px;line-height:1.5;margin-top:4px}
  .table-scroll table:not(.full-columns) .code-link{font-size:10px;line-height:1.6}
  .table-scroll table:not(.full-columns) .source-line{gap:3px;margin:4px 0}
  .table-scroll table:not(.full-columns) .source-badge,.table-scroll table:not(.full-columns) .type-badge{font-size:8px;padding:1px 4px}
  .table-scroll table:not(.full-columns) .number strong{font-size:16px}
  .table-scroll table:not(.full-columns) .due{font-size:10px;line-height:1.6}
  .table-scroll table:not(.full-columns) .due small{font-size:8px;margin-top:3px;white-space:normal}
  .table-scroll table:not(.full-columns) .linked-summary{display:none}
  .table-scroll table:not(.full-columns) .row-note{font-size:9px;line-height:1.7;margin-top:5px;padding:4px 5px;background:#f7f9fa;border-color:#edf1f2}
  .table-scroll table:not(.full-columns) .mobile-collapsed{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding-block:0}
  .table-scroll table:not(.full-columns) .row-note:not(.mobile-collapsed){font-size:12px;line-height:1.8}
  .table-scroll table:not(.full-columns) .note-toggle{display:block;color:#648b8b;background:none;border:0;font-size:9px;padding:3px 0 0;line-height:1.4}
  .mobile-progress{color:#698b88;font-size:9px;line-height:1.5;margin-top:4px}
  .mobile-total{font-size:9px;color:#8299a7;line-height:1.5;margin-top:3px;white-space:normal}
  .mobile-spec{font-size:9px;color:#8599a8;line-height:1.5;margin-top:4px}
  .mobile-signals .badge{font-size:9px;padding:4px 5px;line-height:1.6;margin-top:5px}
  .mobile-signals .badge small{font-size:8px;margin-top:1px}
  .shipments-table:not(.full-columns) th:nth-child(3),.shipments-table:not(.full-columns) td:nth-child(3),.shipments-table:not(.full-columns) th:nth-child(6),.shipments-table:not(.full-columns) td:nth-child(6),.shipments-table:not(.full-columns) th:nth-child(7),.shipments-table:not(.full-columns) td:nth-child(7){display:none}
  .table-scroll .shipments-table:not(.full-columns) th:nth-child(1){width:27%}
  .table-scroll .shipments-table:not(.full-columns) th:nth-child(2){width:35%}
  .table-scroll .shipments-table:not(.full-columns) th:nth-child(4){width:18%}
  .table-scroll .shipments-table:not(.full-columns) th:nth-child(5){width:20%}
  .inventory-table:not(.full-columns) th:nth-child(3),.inventory-table:not(.full-columns) td:nth-child(3){display:none}
  .table-scroll .inventory-table:not(.full-columns) th:nth-child(1){width:35%}
  .table-scroll .inventory-table:not(.full-columns) th:nth-child(2){width:32%}
  .table-scroll .inventory-table:not(.full-columns) th:nth-child(4){width:23%}
  .table-scroll .inventory-table:not(.full-columns) th:nth-child(5){width:10%}
  .materials-table:not(.full-columns) th:nth-child(4),.materials-table:not(.full-columns) td:nth-child(4),.materials-table:not(.full-columns) th:nth-child(5),.materials-table:not(.full-columns) td:nth-child(5){display:none}
  .table-scroll .materials-table:not(.full-columns) th:nth-child(1){width:26%}
  .table-scroll .materials-table:not(.full-columns) th:nth-child(2){width:35%}
  .table-scroll .materials-table:not(.full-columns) th:nth-child(3){width:16%}
  .table-scroll .materials-table:not(.full-columns) th:nth-child(6){width:23%}
  .table-scroll .materials-table:not(.full-columns) .material-state{font-size:9px;padding:3px 4px;white-space:normal}
  .table-scroll .full-columns .mobile-only{display:none}
  .panel-footer{padding:8px 9px;font-size:9px}
  .panel-footer span:last-child{display:none}
  footer{padding:13px 0 4px}
}
