/* /cloud-i18n.css */
/* Spanish uses the same working surfaces as Chinese, with room for longer labels. */
body[data-language="es"]{visibility:visible}
body[data-language="es"] .nav-parent b{white-space:normal;line-height:1.25}
body[data-language="es"] .nav-subnav button{white-space:normal;line-height:1.25}
body[data-language="es"] .page-head{flex-wrap:wrap;gap:14px}
body[data-language="es"] .page-head>div:first-child{min-width:0}
body[data-language="es"] .transit-page-tools,body[data-language="es"] .product-actions{flex-wrap:wrap}
body[data-language="es"] .btn{white-space:nowrap;flex-shrink:0}
body[data-language="es"] th{white-space:nowrap}
body[data-language="es"] #cloudSyncBar{flex-wrap:wrap}
body[data-language="es"] .sidebar>nav{flex:1;min-height:0;overflow-y:auto}
body[data-language="es"] .sidebar-footer{flex-shrink:0}
body[data-language="es"] .demand-head{display:flex;flex-direction:column;align-items:stretch;gap:12px}
body[data-language="es"] .demand-head .demand-tools{width:100%;max-width:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end}
body[data-language="es"] .demand-tools .demand-period-tabs{flex-shrink:0}
body[data-language="es"] .settings-panel{max-height:80vh;overflow:auto}
@media(max-width:760px){body[data-language="es"] #cloudSyncBar{left:0!important;gap:6px!important}body[data-language="es"] .demand-head .demand-tools{justify-content:flex-start}body[data-language="es"] .demand-tools .demand-period-tabs{flex-wrap:wrap}}
.cloud-language{display:flex;gap:8px;justify-content:flex-end;align-items:center}
.cloud-language a{padding:7px 12px;border:1px solid #c8d4e4;border-radius:6px;color:#285da6;text-decoration:none}
.cloud-language a[aria-current="page"]{background:#285da6;color:#fff}

/* /styles.css */
:root{--navy:#0d1d2b;--navy2:#142a3c;--ink:#17232e;--muted:#71808d;--line:#dfe6ea;--bg:#f3f6f7;--white:#fff;--teal:#00a68a;--teal2:#007d70;--orange:#f39b4a;--blue:#478aed;--violet:#7568e8;--danger:#d9534f;--shadow:0 8px 28px rgba(18,42,55,.07)}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans","Microsoft YaHei",sans-serif}button,input,select{font:inherit}.app-shell{display:grid;grid-template-columns:246px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:var(--navy);color:#fff;padding:26px 18px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font:700 1.22rem "IBM Plex Sans",sans-serif;padding:0 10px 24px}.brand>span:last-child>span{color:#35d4b6}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#08b99b,#4ad6b7);font-size:1.15rem}.plant-card{margin:0 4px 22px;padding:14px;border:1px solid #2a4051;border-radius:10px;background:#152a3a;display:flex;flex-direction:column;gap:3px}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700;color:#81909b}.plant-card .eyebrow{color:#7f97a7}.plant-card strong{font-size:.9rem}.plant-card>span:last-child{font-size:.76rem;color:#8fa2b0}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-item{width:100%;border:0;background:transparent;color:#9eb0bc;display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:8px;text-align:left;cursor:pointer;font-size:.88rem;font-weight:600}.nav-item span{width:20px;text-align:center;font-size:1rem}.nav-item:hover,.nav-item.active{color:#fff;background:#1d394b}.nav-item.active{box-shadow:inset 3px 0 #23c7a8}.sidebar-footer{margin-top:auto}.compliance{display:flex;gap:10px;align-items:center;border-bottom:1px solid #253b4b;padding:15px 8px 18px;margin-bottom:10px}.compliance i,.live i{width:8px;height:8px;background:#31c99f;border-radius:50%;box-shadow:0 0 0 4px rgba(49,201,159,.12)}.compliance div{display:flex;flex-direction:column}.compliance strong{font-size:.77rem}.compliance span{font-size:.65rem;color:#8296a5;margin-top:3px}main{grid-column:2;min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:20}.menu-btn{display:none;border:0;background:none;font-size:1.4rem}.search{display:flex;align-items:center;gap:9px;width:min(440px,45vw);color:#8b98a2}.search input{width:100%;border:0;outline:0;font-size:.88rem;color:var(--ink)}.top-actions,.profile{display:flex;align-items:center;gap:16px}.icon-btn{border:0;background:#f5f7f8;width:38px;height:38px;border-radius:50%;position:relative}.icon-btn b{position:absolute;right:-1px;top:-2px;background:#eb6b57;color:#fff;font-size:.6rem;width:16px;height:16px;display:grid;place-items:center;border-radius:50%;border:2px solid white}.profile{gap:9px}.profile div{display:flex;flex-direction:column}.profile strong{font-size:.82rem}.profile small{font-size:.7rem;color:var(--muted)}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#daf5ee;color:var(--teal2);font-weight:700}.content{padding:30px 34px 50px;max-width:1500px;margin:auto}.view{display:none}.view.active{display:block;animation:fade .25s ease}@keyframes fade{from{opacity:.4;transform:translateY(4px)}}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.page-head h1{font:700 1.8rem "IBM Plex Sans",sans-serif;margin:4px 0}.page-head p{margin:0;color:var(--muted);font-size:.88rem}.page-head.compact{align-items:center}.head-actions{display:flex;gap:10px}.btn{border:1px solid var(--line);background:#fff;padding:10px 15px;border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer;color:var(--ink)}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--teal2);color:#fff;border-color:var(--teal2);box-shadow:0 5px 15px rgba(0,125,112,.18)}.btn.small{padding:7px 12px}.alert-bar{display:flex;align-items:center;gap:7px;background:#fff7e8;border:1px solid #f7d9a7;color:#6f5735;border-radius:9px;padding:11px 14px;margin-bottom:18px;font-size:.82rem}.alert-bar>span{display:grid;place-items:center;background:#f6a645;color:#fff;border-radius:50%;width:20px;height:20px;font-weight:700}.alert-bar button{margin-left:auto;border:0;background:none;color:#9a671e;font-weight:700;cursor:pointer}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:15px}.metric-grid.three{grid-template-columns:repeat(3,1fr)}.metric,.panel{background:#fff;border:1px solid #e4e9ec;border-radius:11px;box-shadow:var(--shadow)}.metric{padding:18px 19px;display:flex;flex-direction:column}.metric-top{display:flex;justify-content:space-between;align-items:center}.metric-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-style:normal;font-weight:700}.metric-icon.blue,.event.blue{background:#e8f0ff;color:var(--blue)}.metric-icon.green,.event.green{background:#ddf7ef;color:var(--teal2)}.metric-icon.orange,.event.orange{background:#fff0df;color:#d87825}.metric-icon.violet{background:#efedff;color:var(--violet)}.metric em{font-size:.68rem;font-style:normal;padding:3px 6px;border-radius:10px;background:#f0f3f4;color:var(--muted)}.metric em.up{background:#e4f8f1;color:#168969}.metric em.down{background:#fff0e4;color:#c86e2d}.metric>span{color:var(--muted);font-size:.78rem;margin:15px 0 3px}.metric>strong{font:700 1.55rem "IBM Plex Sans",sans-serif}.metric>small{color:#8a979f;font-size:.7rem;margin-top:5px}.metric .warn,.warn{color:#d1772a}.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}.dashboard-grid.equal{grid-template-columns:1fr 1fr}.panel{padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.panel h2{font:700 1rem "IBM Plex Sans",sans-serif;margin:0}.panel-head p{margin:3px 0 0;font-size:.72rem;color:var(--muted)}.live{display:flex;align-items:center;gap:7px;font-size:.7rem;color:var(--teal2);font-weight:700}.more,.link{border:0;background:none;color:var(--muted);cursor:pointer}.link{color:var(--teal2);font-size:.75rem;font-weight:700}.donut-row{display:flex;align-items:center;justify-content:space-around}.donut{width:145px;height:145px;border-radius:50%;background:conic-gradient(var(--teal) 0 92%,var(--orange) 92% 96%,#7992b4 96% 98%,#e5eaed 98%);display:grid;place-items:center;position:relative}.donut:before{content:"";position:absolute;width:105px;height:105px;background:#fff;border-radius:50%}.donut div{z-index:1;display:flex;flex-direction:column;text-align:center}.donut strong{font-size:1.6rem}.donut span{font-size:.68rem;color:var(--muted)}.legend{min-width:170px}.legend div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;margin:11px 0;font-size:.72rem}.legend i{width:7px;height:7px;border-radius:50%}.legend .c1{background:var(--teal)}.legend .c2{background:var(--orange)}.legend .c3{background:#7992b4}.legend .c4{background:#dfe5e8}.shift-list{border-top:1px solid var(--line);margin-top:18px;padding-top:13px}.shift-list>div{display:grid;grid-template-columns:145px 1fr 32px;align-items:center;gap:10px;margin:10px 0;font-size:.68rem;color:var(--muted)}.shift-list>div>div{height:5px;background:#e9eef0;border-radius:5px}.shift-list i{display:block;height:100%;background:var(--teal);border-radius:5px}.shift-list strong{color:var(--ink)}.cost-panel{position:relative}.chart-y{position:absolute;left:18px;top:70px;height:180px;display:flex;flex-direction:column;justify-content:space-between;font-size:.62rem;color:#9ba6ad}.bars{height:205px;margin-left:36px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,#edf1f3 0,#edf1f3 1px,transparent 1px,transparent 60px);display:flex;align-items:flex-end;justify-content:space-around;padding:0 8px}.bars>div{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;width:11%;position:relative}.bars i{display:block;width:100%;height:var(--h);background:#b6e4da;border-radius:5px 5px 0 0}.bars .current i{background:var(--teal)}.bars span{font-size:.65rem;color:var(--muted);position:absolute;bottom:-25px}.bars b{font-size:.65rem;background:var(--navy);color:#fff;padding:4px 6px;border-radius:4px;margin-bottom:4px;white-space:nowrap}.quick-panel,.activity-panel{margin-top:0}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.quick-grid button{border:1px solid var(--line);background:#fbfcfc;border-radius:8px;padding:13px 8px;display:flex;align-items:center;gap:9px;cursor:pointer;color:var(--ink)}.quick-grid button:hover{border-color:#8fd8c9;background:#f4fcfa}.quick-grid b{display:grid;place-items:center;background:#e5f6f2;color:var(--teal2);width:27px;height:27px;border-radius:7px}.quick-grid span{font-size:.7rem;font-weight:700}.activity{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;border-top:1px solid #edf0f2;padding:11px 0}.activity:first-of-type{border:0}.event{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;font-size:.7rem;font-weight:700}.activity strong{font-size:.74rem}.activity p{margin:3px 0 0;font-size:.65rem;color:var(--muted)}.activity button,.text-btn{border:0;background:none;color:var(--teal2);font-size:.7rem;font-weight:700;cursor:pointer}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tabs{display:flex;gap:3px;background:#e8edef;padding:4px;border-radius:8px}.tabs button{border:0;background:transparent;padding:7px 12px;border-radius:6px;font-size:.72rem;color:var(--muted);cursor:pointer}.tabs button.active{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(0,0,0,.06);font-weight:700}.toolbar select,.panel select{padding:8px 30px 8px 10px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-size:.75rem}.table-panel{overflow:auto;padding:0}.table-panel .panel-head{padding:19px 20px 0}.table-panel table{width:100%;border-collapse:collapse;min-width:760px}.table-panel th{text-align:left;background:#f8fafb;color:#7c8991;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;padding:11px 17px;border-bottom:1px solid var(--line)}.table-panel td{padding:13px 17px;border-bottom:1px solid #edf0f2;font-size:.75rem}.table-panel tbody tr:hover{background:#fbfdfd}.table-panel td:first-child{display:flex;flex-direction:column}.table-panel td small{color:var(--muted);font-size:.65rem;margin-top:2px}.status{display:inline-block;border-radius:12px;padding:4px 8px;font-size:.65rem;font-weight:700}.status.success{background:#e2f8f0;color:#168168}.status.warning{background:#fff0dc;color:#b66d27}.status.danger{background:#fde9e7;color:#c24b45}.status.info{background:#e8f0ff;color:#426ec1}.mini.metric{min-height:120px}.schedule{margin-bottom:15px}.date-nav{display:flex;align-items:center;gap:12px}.date-nav button{border:1px solid var(--line);background:#fff;border-radius:6px;width:28px;height:28px}.date-nav strong{font-size:.77rem}.shift-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.shift-cards>div{padding:17px;border:1px solid var(--line);border-top:3px solid var(--teal);border-radius:8px}.shift-cards>div:nth-child(2){border-top-color:var(--blue)}.shift-cards>div:nth-child(3){border-top-color:var(--violet)}.shift-cards span{display:block;color:var(--muted);font-size:.68rem;margin-bottom:6px}.shift-cards strong{font-size:.88rem}.shift-cards p{font-size:.67rem;color:var(--muted);margin:6px 0 18px}.shift-stat{border-top:1px solid var(--line);padding-top:12px;font-size:.7rem}.shift-stat b{font-size:1.15rem}.shift-stat em{float:right;font-style:normal;color:var(--teal2);font-weight:700}.payroll-progress{background:#fff;border:1px solid var(--line);border-radius:11px;padding:22px 35px;margin-bottom:15px;display:flex;align-items:center;box-shadow:var(--shadow)}.payroll-progress>div{display:flex;align-items:center;gap:8px;min-width:122px}.payroll-progress>div>i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9eef0;color:#82919a;font-style:normal;font-size:.72rem;font-weight:700}.payroll-progress .done i,.payroll-progress .active i{background:var(--teal);color:#fff}.payroll-progress .active i{box-shadow:0 0 0 5px #dcf5ef}.payroll-progress span{display:flex;flex-direction:column;font-size:.74rem;font-weight:700}.payroll-progress small{font-size:.62rem;color:var(--muted);font-weight:400;margin-top:2px}.payroll-progress>b{height:1px;flex:1;background:var(--line);margin:0 15px}.payroll-progress>b:first-of-type{background:var(--teal)}.breakdown>div{display:grid;grid-template-columns:1fr auto;gap:7px;margin:17px 0;font-size:.74rem}.breakdown i{grid-column:1/3;display:block;width:var(--w);height:6px;background:var(--teal);border-radius:5px}.breakdown i.red{background:#ef746b}.checklist>div{display:grid;grid-template-columns:26px 1fr auto;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:.74rem}.checklist i{width:21px;height:21px;display:grid;place-items:center;background:#e2f7f0;color:var(--teal2);border-radius:50%;font-style:normal;font-size:.65rem}.checklist b{color:var(--teal2);font-size:.68rem}.checklist .pending i{background:#fff0df;color:#c87429}.checklist .pending b{color:#c87429}.funnel>div{height:38px;width:var(--w);background:linear-gradient(90deg,var(--teal2),#3bc4a9);margin:9px 0;border-radius:4px;padding:0 11px;color:#fff;display:flex;align-items:center;justify-content:space-between;font-size:.7rem}.course>div{display:flex;justify-content:space-between;font-size:.72rem;margin:14px 0 5px}.course progress{width:100%;height:7px;accent-color:var(--teal)}.report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:15px}.report-grid button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:18px;display:flex;align-items:center;text-align:left;gap:12px;cursor:pointer;box-shadow:var(--shadow)}.report-grid button:hover{border-color:#8bd7c8;transform:translateY(-2px)}.report-grid div{display:flex;flex-direction:column;flex:1}.report-grid strong{font-size:.76rem}.report-grid small{color:var(--muted);font-size:.64rem;margin-top:4px}.line-chart svg{width:100%;height:280px}.grid-lines path{stroke:#e7ecef;stroke-width:1}.line{fill:none;stroke-width:4;stroke-linecap:round}.greenline{stroke:var(--teal)}.orangeline{stroke:var(--orange)}.area{fill:url(#none);fill:rgba(0,166,138,.07)}.xlabels text{fill:#8b979f;font-size:12px}.chart-legend{display:flex;gap:20px;justify-content:center;font-size:.72rem}.chart-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.green-dot{background:var(--teal)}.orange-dot{background:var(--orange)}.modal-backdrop{position:fixed;inset:0;background:rgba(5,18,28,.55);z-index:100;display:none;align-items:center;justify-content:center;padding:20px}.modal-backdrop.open{display:flex}.modal{width:min(600px,100%);background:#fff;border-radius:13px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.25);animation:modal .2s ease}@keyframes modal{from{opacity:0;transform:translateY(8px) scale(.98)}}.modal-head{display:flex;justify-content:space-between}.modal h2{margin:5px 0 20px}.close{border:0;background:#f1f4f5;border-radius:50%;width:32px;height:32px;font-size:1.2rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:.74rem;font-weight:700}.form-grid input,.form-grid select{border:1px solid var(--line);border-radius:7px;padding:10px;font-size:.8rem;outline:none}.form-grid input:focus,.form-grid select:focus{border-color:var(--teal)}.modal-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.toast{position:fixed;right:25px;bottom:25px;background:var(--navy);color:#fff;padding:12px 18px;border-radius:8px;font-size:.78rem;box-shadow:0 10px 35px rgba(0,0,0,.2);opacity:0;transform:translateY(15px);pointer-events:none;transition:.25s;z-index:120}.toast.show{opacity:1;transform:none}@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.profile div{display:none}}@media(max-width:760px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none;box-shadow:20px 0 50px rgba(0,0,0,.2)}main{width:100%}.topbar{padding:0 17px}.menu-btn{display:block}.search{width:52vw}.content{padding:22px 16px}.page-head{align-items:flex-start;gap:18px}.page-head,.page-head.compact{flex-direction:column}.metric-grid,.metric-grid.three,.report-grid,.shift-cards,.dashboard-grid.equal{grid-template-columns:1fr}.head-actions{width:100%}.head-actions .btn{flex:1}.alert-bar{align-items:flex-start}.alert-bar button{white-space:nowrap}.donut-row{flex-direction:column;gap:15px}.payroll-progress{overflow:auto;padding:18px}.payroll-progress>b{min-width:30px}.toolbar{align-items:flex-start;gap:12px;flex-direction:column}.tabs{overflow:auto;width:100%}.form-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.profile>span:last-child{display:none}}

/* /lang.css */
.lang-toggle{display:flex;align-items:center;padding:3px;border:1px solid var(--line);background:#f1f5f5;border-radius:18px;cursor:pointer}.lang-toggle span{display:grid;place-items:center;min-width:27px;height:25px;padding:0 5px;border-radius:14px;font-size:.66rem;font-weight:700;color:var(--muted)}.lang-toggle span.active{background:var(--navy);color:#fff}

/* /lang-pages.css */
.lang-toggle{text-decoration:none}
body[data-language="es"]{visibility:hidden}
body[data-language="es"].lang-ready{visibility:visible}

/* /master.css */
.master-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:-4px 0 18px}.master-tabs button{border:0;background:none;padding:12px 2px;color:var(--muted);font-weight:700;font-size:.78rem;cursor:pointer;border-bottom:2px solid transparent}.master-tabs button.active{color:var(--teal2);border-color:var(--teal)}.master-pane{display:none}.master-pane.active{display:block;animation:fade .2s ease}.master-layout{display:grid;grid-template-columns:270px 1fr;gap:15px}.master-groups{background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px;box-shadow:var(--shadow);align-self:start}.master-search{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:7px;padding:8px 10px;color:var(--muted);margin-bottom:9px}.master-search input{border:0;outline:0;width:100%;font-size:.72rem}.master-groups>button{width:100%;display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center;border:0;background:none;padding:11px 9px;text-align:left;border-radius:8px;cursor:pointer;color:var(--ink)}.master-groups>button:hover,.master-groups>button.active{background:#edf8f5}.master-groups>button>i{width:29px;height:29px;display:grid;place-items:center;border-radius:7px;background:#e9f1f4;color:#486273;font-style:normal;font-size:.68rem;font-weight:700}.master-groups>button.active>i{background:#d9f4ec;color:var(--teal2)}.master-groups>button span{display:flex;flex-direction:column}.master-groups strong{font-size:.74rem}.master-groups small{font-size:.62rem;color:var(--muted);margin-top:3px}.master-groups b{font-size:.65rem;color:#8b989f;background:#f1f4f5;border-radius:9px;padding:2px 6px}.master-content{padding:0;overflow:auto}.master-content .panel-head{padding:18px 20px 0}.master-actions{display:flex;gap:8px}.master-actions select,.permission-head select,.history-toolbar select,.history-toolbar>input{border:1px solid var(--line);border-radius:7px;padding:8px 10px;background:#fff;color:var(--ink);font-size:.72rem}.master-table,.permission-table{width:100%;border-collapse:collapse;min-width:720px}.master-table th,.permission-table th{text-align:left;background:#f8fafb;color:#76858e;font-size:.64rem;padding:10px 15px;border-block:1px solid var(--line)}.master-table td{padding:13px 15px;border-bottom:1px solid #edf0f2;font-size:.72rem}.master-table td:nth-child(2){font-weight:700}.master-table td small{display:block;color:var(--muted);margin-top:3px}.master-table tr:hover{background:#fbfdfd}.row-actions{display:flex;gap:5px}.row-actions button{border:0;background:none;color:var(--teal2);cursor:pointer;font-size:.68rem;font-weight:700}.permission-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.permission-head h2{margin:0;font-size:1rem}.permission-head p{margin:4px 0 0;color:var(--muted);font-size:.72rem}.permission-table-wrap{padding:0;overflow:auto}.permission-table th,.permission-table td{text-align:center;padding:13px;border-bottom:1px solid var(--line);font-size:.7rem}.permission-table th:first-child,.permission-table td:first-child{text-align:left}.permission-table th small{display:block;font-weight:400;margin-top:3px}.perm-check{appearance:none;width:18px;height:18px;border:1px solid #b9c5ca;border-radius:5px;display:inline-grid;place-content:center;cursor:pointer}.perm-check:checked{background:var(--teal);border-color:var(--teal)}.perm-check:checked:after{content:'✓';color:#fff;font-size:.65rem;font-weight:700}.perm-check:disabled{opacity:.5}.permission-foot{display:flex;justify-content:space-between;align-items:center;padding:16px}.permission-foot span{font-size:.68rem;color:var(--muted)}.permission-foot i{display:inline-block;width:7px;height:7px;background:var(--teal);border-radius:50%;margin-right:6px}.history-toolbar{display:flex;gap:10px;margin-bottom:12px}.history-toolbar .wide{margin:0;flex:1;background:#fff}.timeline{padding:8px 20px}.history-item{display:grid;grid-template-columns:42px 1fr auto;gap:13px;padding:16px 0;border-bottom:1px solid var(--line)}.history-item:last-child{border:0}.history-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e7f5f1;color:var(--teal2);font-weight:700;font-size:.68rem}.history-item strong{font-size:.76rem}.history-item p{font-size:.7rem;color:var(--muted);margin:5px 0}.history-item small{font-size:.63rem;color:#96a1a8}.history-item>span:last-child{font-size:.65rem;color:var(--muted);white-space:nowrap}.change-pill{display:inline-block;color:#8c661d;background:#fff1d9;padding:2px 6px;border-radius:8px;margin-left:5px}.full-label{display:flex;flex-direction:column;gap:6px;margin-top:15px;font-size:.74rem;font-weight:700}.full-label textarea{border:1px solid var(--line);border-radius:7px;padding:10px;resize:vertical;font:inherit;font-size:.78rem}.empty-master{text-align:center;padding:50px;color:var(--muted)}@media(max-width:900px){.master-layout{grid-template-columns:1fr}.master-groups{display:grid;grid-template-columns:repeat(2,1fr)}.master-search{grid-column:1/-1}.permission-head,.history-toolbar{align-items:stretch;flex-direction:column}}@media(max-width:560px){.master-groups{grid-template-columns:1fr}.master-tabs{gap:12px}.permission-foot{align-items:stretch;flex-direction:column;gap:12px}}

/* /organization.css */
.org-notice{display:flex;align-items:flex-start;gap:11px;padding:13px 15px;border:1px solid #bddfd8;background:#f0faf7;border-radius:9px;margin-bottom:14px}.org-notice>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--teal2);color:#fff;font-weight:700;font-size:.72rem}.org-notice strong{font-size:.76rem}.org-notice p{margin:3px 0 0;color:#567068;font-size:.7rem}.org-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.org-stats article{background:#fff;border:1px solid var(--line);border-radius:10px;padding:15px;box-shadow:var(--shadow);display:flex;flex-direction:column}.org-stats span{font-size:.68rem;color:var(--muted)}.org-stats strong{font:700 1.35rem "IBM Plex Sans",sans-serif;margin:4px 0}.org-stats small{font-size:.62rem;color:#8a979f}.org-toolbar{display:flex;gap:10px;margin-bottom:12px}.org-toolbar .wide{background:#fff;flex:1;margin:0}.org-toolbar select{border:1px solid var(--line);border-radius:7px;padding:8px 12px;background:#fff;font-size:.72rem}.org-canvas{padding:28px 22px;overflow:auto}.org-root{display:flex;justify-content:center;position:relative;margin-bottom:42px}.org-root:after{content:"";position:absolute;width:1px;height:26px;background:#aabac1;bottom:-26px}.org-card{background:#fff;border:1px solid #cfdadd;border-radius:8px;padding:11px 13px;min-width:160px;box-shadow:0 4px 12px rgba(18,42,55,.06);display:flex;flex-direction:column}.org-card.root{background:var(--navy);border-color:var(--navy);color:#fff;text-align:center;padding:15px 24px}.org-card span{font-size:.63rem;color:var(--teal2);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.org-card.root span{color:#77dfca}.org-card strong{font-size:.78rem;margin:4px 0}.org-card small{font-size:.62rem;color:var(--muted)}.org-card.root small{color:#9fb1bd}.org-branches{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:16px;min-width:960px;position:relative}.org-branches:before{content:"";position:absolute;top:-17px;left:12.5%;right:12.5%;height:1px;background:#aabac1}.org-dept{border:1px solid var(--line);border-radius:9px;background:#f8fafb;position:relative;align-self:start}.org-dept:before{content:"";position:absolute;width:1px;height:17px;background:#aabac1;top:-17px;left:50%}.org-dept-head{padding:13px 14px;background:#e8f4f1;border-radius:8px 8px 0 0;border-bottom:1px solid #cfe3df;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.org-dept-head div{display:flex;flex-direction:column}.org-dept-head strong{font-size:.75rem}.org-dept-head small{font-size:.61rem;color:var(--muted);margin-top:3px}.org-dept-head b{font-size:.65rem;background:#fff;color:var(--teal2);border-radius:10px;padding:3px 7px}.org-members{padding:8px}.org-dept.collapsed .org-members{display:none}.org-member{display:grid;grid-template-columns:29px 1fr auto;gap:8px;align-items:center;background:#fff;border:1px solid #e6ebed;border-radius:7px;padding:8px;margin:6px 0}.org-avatar{width:28px;height:28px;border-radius:7px;background:#edf1f4;display:grid;place-items:center;color:#4b6474;font-size:.6rem;font-weight:700}.org-member div{display:flex;flex-direction:column}.org-member strong{font-size:.68rem}.org-member small{font-size:.58rem;color:var(--muted);margin-top:2px}.org-member em{font-style:normal;font-size:.55rem;color:#ad6b25;background:#fff0dd;border-radius:8px;padding:2px 5px}.org-empty{text-align:center;color:var(--muted);font-size:.72rem;padding:35px}.source-note{color:#7d8c94;font-size:.66rem;margin-top:12px;text-align:right}@media(max-width:1050px){.org-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.org-stats{grid-template-columns:1fr 1fr}.org-notice p{line-height:1.45}.org-toolbar{flex-direction:column}.org-branches{grid-template-columns:repeat(2,minmax(220px,1fr));min-width:500px}.org-branches:before{display:none}.org-dept:before{display:none}}

/* /dingtalk-hr.css */
.ding-source-bar{margin:0 0 12px;padding:10px 12px;border:1px solid var(--border,#d8e1ee);border-radius:12px;background:var(--glass-panel,rgba(255,255,255,.85))}.ding-source-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ding-source-actions label{display:flex;align-items:center;gap:6px;font-size:12px}.ding-source-actions select,.ding-source-actions input[type=date],.ding-table-tools input,.ding-table-tools select{height:34px;padding:5px 8px;border:1px solid #cad6e7;border-radius:8px;background:var(--input-bg,#fff);color:inherit}.ding-message,.ding-data-note{font-size:12px;line-height:1.7;color:var(--muted,#61738e);margin:6px 0 0}.ding-mode>.ding-baseline{display:none!important}.ding-mode>.page-head p{display:none}.ding-table-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 10px}.ding-table-tools span{font-size:12px;color:var(--muted,#61738e)}.ding-table{overflow:auto;max-height:65vh}.ding-table table{width:100%;border-collapse:collapse;font-size:12px}.ding-table th{position:sticky;top:0;z-index:1;background:var(--table-head,#e6edf7);text-align:left;white-space:nowrap}.ding-table td,.ding-table th{padding:7px 10px;border-bottom:1px solid #dce4ef}.ding-table td{max-width:300px}.ding-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:10px}.ding-pagination button{border:1px solid #cad6e7;border-radius:6px;padding:5px 10px;background:transparent;color:inherit}.ding-org-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;align-items:start}.ding-dept{padding:12px;border:1px solid #dce4ef;border-radius:12px;background:var(--panel-bg,#fff)}.ding-dept summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px}.ding-dept>small{display:block;padding:7px 0;color:var(--muted,#61738e)}.ding-members{max-height:410px;overflow:auto}.ding-members>div{display:flex;flex-direction:column;padding:9px 6px;border-bottom:1px solid #e2e8f0}.ding-members small{display:block;margin-top:3px;color:var(--muted,#61738e)}.ding-connect-dialog{width:min(500px,calc(100vw - 32px));padding:24px;border:1px solid #d5deec;border-radius:18px;color:var(--text,#233852);background:var(--panel-bg,#fff)}.ding-connect-dialog::backdrop{background:rgba(12,28,50,.3);backdrop-filter:blur(5px)}.ding-dialog-head{display:flex;justify-content:space-between;align-items:center}.ding-dialog-head h2{font-size:20px;margin:0}.ding-close{border:0;background:transparent;color:inherit;font-size:25px}.ding-connection-form>p{font-size:12px;line-height:1.7;color:var(--muted,#61738e)}.ding-connection-form>label{display:flex;flex-direction:column;gap:6px;margin:14px 0;font-size:13px}.ding-connection-form>label input,.ding-connection-form>label select{width:100%;box-sizing:border-box;padding:10px;border:1px solid #cad6e7;border-radius:8px;background:var(--input-bg,#fff);color:inherit}.ding-connect-message{min-height:20px}

/* /dingtalk-oa.css */
#leaveOvertime .oa-workspace{display:flex;flex-direction:column;min-width:0;height:calc(100dvh - 32px);min-height:380px}#leaveOvertime .oa-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;flex:none}#leaveOvertime .oa-title{flex:0 1 auto;min-width:160px}#leaveOvertime h1{margin:4px 0;font-size:28px}#leaveOvertime .oa-subtitle,#leaveOvertime [data-status]{font-size:10px;color:#697b91;line-height:1.5;margin:0;display:block;max-width:480px}#leaveOvertime [data-status][data-error=true]{color:#b44536}#leaveOvertime .oa-actions,#leaveOvertime .oa-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}#leaveOvertime .oa-filters{justify-content:flex-end}#leaveOvertime button,#leaveOvertime input,#leaveOvertime select{font:inherit}#leaveOvertime input:not([type=checkbox]),#leaveOvertime select{height:32px;border:1px solid #dce3ef;border-radius:9px;background:#fbfcff;padding:5px 8px;font-size:12px;max-width:100%;min-width:0}#leaveOvertime .oa-filters input[type=search]{width:130px}#leaveOvertime .oa-filters select{width:auto;max-width:150px}#leaveOvertime .oa-date-range{display:inline-flex;align-items:center;gap:4px;max-width:100%;font-size:11px;color:#697b91}#leaveOvertime .oa-date-range input{width:124px}#leaveOvertime .oa-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:8px;font-size:18px;flex:none}#leaveOvertime .oa-icon[aria-busy=true] span{animation:oa-spin 1s linear infinite}@keyframes oa-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){#leaveOvertime .oa-icon[aria-busy=true] span{animation:none}}#leaveOvertime label{font-size:12px;color:#53667d}#leaveOvertime .oa-panel{background:#ffffffb8;border:1px solid #dce4f0;border-radius:12px;padding:10px 14px;margin-top:8px;flex:none;max-height:240px;overflow:auto}#leaveOvertime .oa-panel:not([open]){display:none}#leaveOvertime .oa-note{font-size:11px;color:#677b91;line-height:1.6}#leaveOvertime [data-filter-error]{margin:0 0 4px;color:#b44536}#leaveOvertime [data-filter-error]:empty{display:none}#leaveOvertime .oa-table-wrap{overflow:auto;flex:1 1 0;min-height:180px;border:1px solid #dce4f0;border-radius:14px;isolation:isolate;scrollbar-gutter:stable}#leaveOvertime table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;white-space:nowrap}#leaveOvertime th{position:sticky;top:0;background:#e8eef7;text-align:left;z-index:2;box-shadow:0 1px 0 #cad6e7}#leaveOvertime th,#leaveOvertime td{padding:4px 10px;line-height:1.4;border-bottom:1px solid #dfe6f2}#leaveOvertime th{padding:8px 10px}#leaveOvertime tbody tr:nth-child(even){background:#f1f5fb}#leaveOvertime .oa-empty{text-align:center;padding:32px;color:#73849a;white-space:normal}#leaveOvertime .oa-badge{color:#516980}#leaveOvertime .oa-approved,#leaveOvertime .oa-leave{color:#20795e}#leaveOvertime .oa-overtime{color:#956208}#leaveOvertime .oa-footer{display:flex;justify-content:flex-end;gap:8px;align-items:center;font-size:11px;padding-top:5px;flex:none}#leaveOvertime .oa-footer button{font-size:11px;padding:3px 8px;min-height:25px}#leaveOvertime [data-templates]{max-height:150px;overflow:auto;display:grid;gap:6px;margin:10px 0}#leaveOvertime .oa-template{display:flex;gap:10px;align-items:center;font-size:12px}#leaveOvertime .oa-template label{flex:1}#leaveOvertime summary{cursor:pointer;font-weight:600}#leaveOvertime .oa-details{white-space:normal;min-width:140px;max-width:280px;font-size:11px}#leaveOvertime .oa-details summary{font-weight:400;color:#567292}#leaveOvertime .oa-details p{margin:5px 0}#leaveOvertime [data-config]>.oa-actions{margin-top:8px}@media(max-width:1100px){#leaveOvertime .oa-head{flex-wrap:wrap}#leaveOvertime .oa-title{flex:1}#leaveOvertime .oa-filters{flex:1 1 560px}}@media(max-width:700px){#leaveOvertime .oa-workspace{height:calc(100dvh - 82px)}#leaveOvertime .oa-filters{justify-content:flex-start}#leaveOvertime .oa-panel{max-height:220px}}
#leaveOvertime .oa-manual{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;margin-top:10px}#leaveOvertime .oa-manual label,#leaveOvertime .oa-manual p{grid-column:1/-1;margin:0}#leaveOvertime .oa-manual textarea{min-width:0;max-width:100%;resize:vertical;border:1px solid #dce3ef;border-radius:8px;background:#fbfcff;padding:6px 8px;font-family:inherit;font-size:12px;line-height:1.6}#leaveOvertime .oa-manual button{font-size:12px}#leaveOvertime .oa-template small{color:#697b91;font-size:10px}@media(max-width:600px){#leaveOvertime .oa-manual{grid-template-columns:minmax(0,1fr)}}
#leaveOvertime .oa-implementation-state{border:0;background:transparent;cursor:pointer;padding:0;color:#6b7485;font-size:12px;text-decoration:underline;text-underline-offset:3px}#leaveOvertime .oa-implementation-state[data-tone=match]{color:#18805b}#leaveOvertime .oa-implementation-state[data-tone=partial]{color:#8050ae}#leaveOvertime .oa-implementation-state[data-tone=warning],#leaveOvertime .oa-implementation-state[data-tone=waiting]{color:#9c6509}#leaveOvertime .oa-implementation-state[data-tone=mismatch]{color:#b33c38}#leaveOvertime .oa-evidence-dialog{width:min(1050px,92vw);max-height:85vh;overflow:auto;border:1px solid #dce4f0;border-radius:15px;padding:20px;color:#243751;background:#f8faff}#leaveOvertime .oa-evidence-dialog::backdrop{background:#22304966}#leaveOvertime .oa-evidence-dialog header{display:flex;align-items:center;justify-content:space-between}#leaveOvertime .oa-evidence-dialog h2{font-size:19px}#leaveOvertime .oa-evidence-dialog p,#leaveOvertime .oa-evidence-dialog li{font-size:12px;line-height:1.6}#leaveOvertime .oa-evidence-dialog table{white-space:normal}#leaveOvertime .oa-evidence-dialog th{position:static}

/* /hik-attendance.css?v=20261019-01 */
.hik-mode>.ding-source-bar,.hik-mode>.page-head .hr-att-tools{display:none!important}
.hik-mode>.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.hik-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-left:auto;flex-wrap:nowrap;min-width:0;max-width:100%}
.hik-toolbar input,.hik-toolbar select,.hik-toolbar button{height:32px;border:1px solid var(--border,#d8e1ee);border-radius:10px;background:var(--input-bg,#fff);color:var(--text,#233852);font:inherit;font-size:12px;padding:5px 8px;box-sizing:border-box}
.hik-toolbar .hik-search{width:128px}.hik-toolbar select{width:88px}.hik-toolbar .hik-search,.hik-toolbar select{flex:none;min-width:0;max-width:100%}.hik-toolbar .hik-date{width:128px;flex:none}.hik-toolbar button{cursor:pointer;white-space:nowrap}.hik-toolbar button:disabled{opacity:.6;cursor:wait}
@layer liquid-glass{#attendanceList .hik-toolbar .hik-behavior{color:var(--hik-behavior-color,var(--text,#233852))!important}}
.hik-date-range{display:inline-flex;align-items:center;gap:4px;flex:none;max-width:100%;white-space:nowrap}.hik-date-range>span{font-size:11px;color:var(--muted,#61738e)}.hik-toolbar .hik-date-range .hik-date{width:124px;min-width:0;flex:0 1 auto}
.hik-toolbar input:focus-visible,.hik-toolbar select:focus-visible,.hik-toolbar button:focus-visible{outline:2px solid #508fe8;outline-offset:2px}
.hik-toolbar .hik-reload{display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;padding:0;border-radius:7px;font-size:18px;line-height:1;flex:none}
.hik-reload span{display:block}.hik-reload[aria-busy="true"] span{animation:hik-refresh-spin 1s linear infinite}
@keyframes hik-refresh-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.hik-reload[aria-busy="true"] span{animation:none}}
.hik-message{font-size:13px;line-height:1.7;margin:8px 0;color:var(--text,#233852)}
.hik-message[hidden],.hik-toolbar[hidden],.hik-content[hidden]{display:none!important}
.hik-table td:nth-child(1),.hik-table td:nth-child(4),.hik-table td:nth-child(5),.hik-table td:nth-child(6){white-space:nowrap;font-variant-numeric:tabular-nums}
.hik-present{color:#21715e;background:#e5f4ed;padding:3px 6px;border-radius:5px;white-space:nowrap}.hik-missing{color:var(--muted,#61738e);white-space:nowrap}
.hik-table td:nth-child(5){white-space:normal;overflow-wrap:anywhere;min-width:180px}
@media(max-width:700px){.hik-toolbar{width:100%;margin-left:0}.hik-mode>.page-head{gap:8px}}
/* Fill the attendance workspace while keeping column headings above scrolling rows. */
main>.content:has(>#attendanceList.hik-mode.active){padding-bottom:10px!important;min-height:0!important}
#attendanceList.hik-mode.active{height:calc(100dvh - 32px);min-height:360px;display:flex;flex-direction:column;min-width:0}
#attendanceList.hik-mode>.page-head{flex:0 0 auto;margin-bottom:6px;gap:8px 16px}
#attendanceList.hik-mode>.hik-content{display:flex;flex:1 1 0;min-height:0;flex-direction:column}
#attendanceList .hik-message{flex:none;font-size:11px;margin:0 0 4px;line-height:1.4}
#attendanceList .hik-table{flex:1 1 0;min-height:0;max-height:none;margin:0;padding:0;overflow:auto;isolation:isolate;scrollbar-gutter:stable}
#attendanceList .hik-table table{border-collapse:separate;border-spacing:0;width:100%}
#attendanceList .hik-table thead{position:sticky;top:0;z-index:3}
#attendanceList .hik-table th{position:sticky;top:0;z-index:3;background:var(--table-head,#e6edf7);box-shadow:0 1px 0 #cad6e7;padding:8px 10px}
#attendanceList .hik-table td{font-size:12px;padding:4px 10px;line-height:1.35}
#attendanceList .ding-pagination{flex:none;padding:5px 2px 0;gap:8px;font-size:11px;line-height:1.4}
#attendanceList .ding-pagination button{font-size:11px;padding:3px 8px;min-height:25px}
@media(max-width:700px){#attendanceList.hik-mode.active{height:calc(100dvh - 82px)}#attendanceList .hik-table table{min-width:760px}}
/* Reserve one toolbar row and let the status use the full header width. */
#attendanceList.hik-mode.active>.page-head.compact{display:grid!important;grid-template-columns:150px minmax(0,1fr);align-items:center!important;gap:2px 12px}
#attendanceList.hik-mode.active>.page-head>div:first-child{width:auto!important;min-width:0;align-self:center}
#attendanceList.hik-mode .page-head h1{margin:4px 0 0;line-height:1.15}
#attendanceList.hik-mode .page-head .eyebrow{display:block;margin:0;line-height:1.2}
#attendanceList.hik-mode.active>.page-head>.hik-toolbar{grid-column:2;grid-row:1;width:100%;margin:0;overflow-x:auto;scrollbar-width:thin}
#attendanceList .hik-toolbar .hik-search,#attendanceList .hik-toolbar select{flex:0 1 auto;min-width:76px;padding-inline:6px}
#attendanceList .hik-toolbar .hik-search{min-width:108px}
#attendanceList .hik-toolbar .hik-date-range .hik-date{width:116px;padding-inline:5px;flex:none}
@media(max-width:800px){#attendanceList.hik-mode.active>.page-head.compact{grid-template-columns:minmax(0,1fr);row-gap:4px}#attendanceList.hik-mode.active>.page-head>.hik-toolbar{grid-column:1;grid-row:2;justify-content:flex-start}#attendanceList .hik-toolbar .hik-search,#attendanceList .hik-toolbar select{flex-shrink:0}}

#attendanceList .hik-table td:last-child{white-space:nowrap;min-width:72px}.hik-entry{color:#2563eb}.hik-exit{color:#aa4b21}

#attendanceList .hik-update-status{grid-column:1/-1;min-width:0;font-size:11px;font-weight:400;line-height:1.5;color:var(--muted,#61738e);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#attendanceList .hik-update-status[data-state=busy]{color:#3169b3}#attendanceList .hik-update-status[data-state=error]{color:#aa4b21}
.hik-update-status[hidden]{display:none!important}

.hik-meal{color:#7953a3;white-space:nowrap}
.hik-work{font-weight:600}

/* /attendance-summary.css?v=20261031-02 */
#attendanceSummary.active{display:flex;flex-direction:column;height:calc(100dvh - 32px);min-height:360px;min-width:0}
#attendanceSummary>.page-head{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:2px 16px;align-items:center!important;margin-bottom:6px;flex:none}
#attendanceSummary>.page-head>div:first-child{width:auto!important;min-width:0}#attendanceSummary>.page-head>.as-toolbar{width:100%!important;margin:0}
#attendanceSummary .page-head h1{margin:4px 0;white-space:nowrap}#attendanceSummary .as-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;overflow-x:auto;padding:3px}
.as-toolbar input,.as-toolbar select,.as-toolbar button{border:1px solid var(--line,#dce3ed);background:var(--surface,#ffffffcf);color:var(--text,#263449);border-radius:9px;height:32px;padding:5px 8px;font-size:12px;flex:none}
.as-toolbar input[type=search]{width:125px}.as-toolbar input[type=date]{width:121px}.as-toolbar select{max-width:190px;width:auto}.as-dates{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:11px;color:var(--muted,#61738e)}
.as-toolbar .as-reload{width:32px;padding:0;font-size:19px}.as-reload span{display:block}.as-reload[aria-busy=true] span{animation:hik-refresh-spin 1s linear infinite}
.as-status{grid-column:1/-1;font-size:11px;color:var(--muted,#61738e);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.as-status[data-error=true]{color:#b45309}
.as-summary-line{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;margin:3px 0 8px;flex:none;color:var(--muted,#61738e)}
#attendanceSummary .as-table{flex:1 1 0;min-height:0;padding:0;margin:0;overflow:auto;scrollbar-gutter:stable;isolation:isolate}
#attendanceSummary table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}#attendanceSummary th{background:var(--table-head,#e6edf7);padding:8px 10px;text-align:left;position:sticky;top:0;z-index:2;white-space:nowrap}#attendanceSummary td{padding:4px 10px;line-height:1.4;border-bottom:1px solid var(--line,#dce3ed);white-space:nowrap}#attendanceSummary tbody tr:nth-child(even){background:#dce6f329}
.as-count,.as-evidence{border:0;background:transparent;color:#2463a6;text-decoration:underline;text-underline-offset:3px;padding:2px 4px;font:inherit;cursor:pointer}.as-count:disabled{color:#8794a6;cursor:default;text-decoration:none}.as-count[hidden]{display:none}
[data-tone=confirmed]{color:#2463a6}[data-tone=review]{color:#a35a05}[data-tone=normal]{color:#16704c}[data-tone=overtime]{color:#7753ad}[data-tone=pending]{color:#47648c}
.as-pagination{display:flex;gap:8px;justify-content:flex-end;align-items:center;font-size:11px;padding:6px 0}.as-pagination button{border:1px solid var(--line,#dce3ed);border-radius:5px;background:transparent;font-size:11px;padding:3px 8px;color:inherit}
.as-rules{flex:none;font-size:12px;color:var(--muted,#61738e);margin-bottom:6px}.as-rules>summary{cursor:pointer}.as-rules p{margin:5px 0;line-height:1.6}.as-rules:not([open]){display:none}
.as-dialog{width:min(1100px,92vw);max-height:85dvh;border:1px solid #dce3ed;border-radius:16px;padding:20px;color:#263449;background:#f8fbff;box-shadow:0 20px 65px #24345244;overflow:auto}.as-dialog::backdrop{background:#16223870}.as-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.as-dialog h2{font-size:19px;margin:0}.as-dialog h3{font-size:14px}.as-dialog p{font-size:13px;line-height:1.6;margin:8px 0}.as-dialog .as-muted{font-size:12px;color:#61738e}.as-evidence-table{overflow:auto;max-height:46dvh}.as-dialog tr[data-used=true]{background:#e1f4e9!important;font-weight:600}
#attendanceSummary button:focus-visible,#attendanceSummary input:focus-visible,#attendanceSummary select:focus-visible{outline:2px solid #508fe8;outline-offset:2px}
@media(max-width:1000px){#attendanceSummary>.page-head{grid-template-columns:1fr}.as-toolbar{justify-content:flex-start!important}.as-summary-line{font-size:11px}#attendanceSummary.active{height:calc(100dvh - 50px)}}
@media(prefers-reduced-motion:reduce){.as-reload[aria-busy=true] span{animation:none}}

/* /organization-tree.css?v=20260906-01 */
.org-dept-head div{min-width:0}.org-dept-head span{color:var(--teal2);font-size:.56rem;font-weight:700;letter-spacing:.06em}.org-dept-head strong{font-size:.78rem;margin-top:2px}.org-dept-head>b{display:flex;flex-direction:column;align-items:center;gap:2px;white-space:nowrap}.org-dept-head>b small{margin:0;color:#6d8795;font-size:.54rem}.org-branch-note{margin:2px 0 8px;padding:6px 8px;border-left:3px solid var(--teal2);background:#eff8f6;color:#5a736f;font-size:.6rem}.org-dept{transition:box-shadow .18s ease,border-color .18s ease}.org-dept:hover{border-color:#8fccc1;box-shadow:0 8px 18px rgba(28,105,91,.08)}.org-dept-head:after{content:'⌄';margin-left:8px;color:#4d857a;font-size:.8rem;transition:transform .18s ease}.org-dept.collapsed .org-dept-head:after{transform:rotate(-90deg)}.org-dept-head small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-dept.collapsed .org-dept-head{border-bottom:0;border-radius:8px}

/* /company.css */
.sidebar{overflow-y:auto}.sidebar nav{padding-bottom:18px}.nav-item{min-height:38px}.metric-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.company-metrics{margin-bottom:20px}.integration-strip{display:flex;align-items:center;gap:16px;background:#0d2644;color:#dce9f7;padding:13px 18px;border-radius:12px;margin-bottom:18px;font-size:14px}.integration-strip em{margin-left:auto;color:#91a8c0;font-style:normal}.integration-strip i{color:#5a7898}.source-badge,.demo-tag{background:#dcfce7;color:#08783e;border-radius:999px;padding:5px 9px;font-weight:700;font-size:12px}.company-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:18px;margin-bottom:18px}.plan-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;min-height:245px;align-items:end}.plan-day{display:flex;flex-direction:column;justify-content:flex-end;gap:8px;text-align:center}.plan-day .bar{height:var(--h);min-height:40px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#2d8cff,#0b5fbd);position:relative}.plan-day.risk-day .bar{background:linear-gradient(180deg,#ffb04a,#e27813)}.plan-day .bar b{position:absolute;top:8px;left:0;right:0;color:white;font-size:12px}.plan-day span{font-size:12px;color:#70839a}.scenario-card label{display:grid;grid-template-columns:1fr auto;gap:10px;margin:18px 0;color:#334a62;font-size:14px}.scenario-card input{grid-column:1/-1;width:100%;accent-color:#0878d1}.scenario-result{background:#f2f7fb;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:5px}.scenario-result strong{font-size:27px;color:#0a5fa8}.scenario-result small{color:#d16a0a}.risk{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:7px;font-weight:800;font-size:12px}.risk.high{background:#fee2e2;color:#b91c1c}.risk.medium{background:#ffedd5;color:#c45d08}.risk.low{background:#dcfce7;color:#147643}.department-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dept-card{padding:20px}.dept-card .dept-top{display:flex;justify-content:space-between;align-items:center}.dept-card .dept-top i{width:10px;height:10px;border-radius:50%;background:#15a05c}.dept-card strong.value{display:block;font-size:30px;margin:14px 0 5px;color:#102a43}.dept-card p{min-height:42px;color:#687b8f;font-size:14px}.dept-card footer{display:flex;justify-content:space-between;border-top:1px solid #e8eef4;padding-top:12px;margin-top:14px;font-size:13px}.dept-card footer b{color:#0b6fbd}.sync-health{background:#eaf8f0;border:1px solid #b8e5cb;border-radius:12px;padding:16px 18px;margin-bottom:18px}.sync-health>div{display:flex;align-items:center;gap:12px}.sync-health span{color:#49705a}.sync-health em{margin-left:auto;font-style:normal;color:#668373}.health-dot{width:10px;height:10px;border-radius:50%;background:#13a05a;box-shadow:0 0 0 5px #cdeedb}.connector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.connector{padding:18px}.connector header{display:flex;justify-content:space-between}.connector header span{font-size:12px;color:#11834b;background:#e4f8ed;padding:4px 7px;border-radius:5px}.connector strong{display:block;font-size:19px;margin:16px 0 6px}.connector p{font-size:13px;color:#667a90}.connector footer{margin-top:14px;font-size:12px;color:#8698aa}.boundary{padding:20px}.boundary>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.boundary span{background:#f5f8fb;border-radius:10px;padding:14px;font-size:13px;line-height:1.55}.boundary b{display:block;color:#0b69af;margin-bottom:5px}@media(max-width:1100px){.metric-grid.four,.department-cards,.connector-grid{grid-template-columns:repeat(2,1fr)}.company-grid{grid-template-columns:1fr}}@media(max-width:700px){.metric-grid.four,.department-cards,.connector-grid,.boundary>div{grid-template-columns:1fr}.integration-strip{flex-wrap:wrap}.integration-strip em{margin-left:0;width:100%}.plan-days{overflow-x:auto;grid-template-columns:repeat(7,70px)}}

/* /department-nav.css */
.department-nav{display:flex;flex-direction:column;gap:2px}.nav-group{border-radius:8px}.nav-parent{width:100%;display:flex;align-items:center;gap:10px;text-align:left}.nav-parent b{font-weight:600;flex:1}.nav-parent i{font-style:normal;color:#8fa4ba;transition:transform .18s}.nav-group.open .nav-parent i{transform:rotate(180deg)}.nav-subnav{display:none;margin:0 7px 5px 40px;padding:3px 0 5px;border-left:1px solid rgba(151,180,208,.26)}.nav-group.open .nav-subnav{display:grid}.nav-subnav button{border:0;background:transparent;color:#93a8bd;text-align:left;padding:7px 9px;font:inherit;font-size:12px;cursor:pointer;border-radius:5px}.nav-subnav button:hover,.nav-subnav button.active{background:#173d62;color:#fff}.nav-group.active>.nav-parent{color:#fff;background:#143d64}

/* HR people icon gets a warm contrast chip against the dark-blue rail. */
.department-nav .nav-group[data-dashboard="hrDashboard"]>.nav-parent>span{display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:7px;background:#ffd166;color:#17365d;font-size:16px;line-height:1}

/* /saaa-theme.css */
:root{--navy:#082747;--navy2:#0e3b68;--teal:#087bdb;--teal2:#075ca8;--blue:#168fe8;--bg:#f2f7fc}.brand>span:last-child>span{color:#59b5ff}.brand-mark{background:linear-gradient(135deg,#087bdb,#56b7ff)}.nav-item.active{box-shadow:inset 3px 0 #4eaef8}.nav-item:hover,.nav-item.active,.nav-group.active>.nav-parent{background:#123f6b}.compliance i,.live i{background:#3ea9f5;box-shadow:0 0 0 4px rgba(62,169,245,.14)}.avatar{background:#e3f1ff;color:#075ca8}.btn.primary{background:#075ca8;border-color:#075ca8;box-shadow:0 5px 15px rgba(7,92,168,.2)}.metric-icon.green,.event.green,.status.success{background:#e2f1ff;color:#075ca8}.metric em.up{background:#e3f1ff;color:#075ca8}.donut{background:conic-gradient(var(--teal) 0 92%,var(--orange) 92% 96%,#7992b4 96% 98%,#e5eaed 98%)}.bars i{background:#bfddf8}.quick-grid button:hover{border-color:#8cc8f7;background:#f5faff}.quick-grid b{background:#e1f0ff;color:#075ca8}.shift-cards>div{border-top-color:var(--teal)}.payroll-progress .active i{box-shadow:0 0 0 5px #dceeff}.funnel>div{background:linear-gradient(90deg,#075ca8,#38a1ef)}.master-groups>button:hover,.master-groups>button.active{background:#edf6ff}.master-groups>button.active>i,.history-icon{background:#dceeff;color:#075ca8}.org-notice{border-color:#b9d9f5;background:#f0f7ff}.org-notice>span{background:#075ca8}.org-notice p{color:#4a6883}.org-card.root span{color:#80c8ff}.org-dept-head{background:#e8f3ff;border-bottom-color:#cbe2f6}.org-dept-head b{color:#075ca8}.source-badge,.demo-tag{background:#e2f1ff;color:#075ca8}.risk.low{background:#e2f1ff;color:#075ca8}.dept-card .dept-top i,.health-dot{background:#168fe8;box-shadow:0 0 0 5px #dceeff}.sync-health{background:#f0f7ff;border-color:#bddcf5}.sync-health span{color:#456b8e}.sync-health em{color:#5a7997}.connector header span{color:#075ca8;background:#e2f1ff}.nav-subnav button:hover,.nav-subnav button.active{background:#1a568b}

/* /projectoverview.css */
.project-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0}.project-toolbar label{display:flex;align-items:center;gap:10px;min-width:300px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted)}.project-toolbar input{width:100%;padding:11px 0;border:0;outline:0;background:transparent;font:inherit}.project-toolbar>span{color:var(--muted);font-size:13px}.project-table-wrap{overflow:auto}.project-table{width:100%;border-collapse:collapse;min-width:760px}.project-table th,.project-table td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.project-table th{color:var(--muted);font-size:12px;font-weight:700}.project-table td{font-size:13px}.project-actions{display:flex;gap:8px}.project-actions button{border:0;border-radius:7px;padding:6px 10px;background:#edf4ff;color:#1455a3;font:inherit;cursor:pointer}.project-actions .delete{background:#fff0f0;color:#b42318}.project-modal{position:fixed;inset:0;z-index:30;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(15,30,50,.42)}.project-modal.open{display:flex}.project-dialog{width:min(620px,100%);background:#fff;border-radius:14px;box-shadow:0 20px 60px rgba(15,30,50,.25)}.project-dialog>header,.project-dialog>footer{display:flex;align-items:center;justify-content:space-between;padding:20px 24px}.project-dialog>header{border-bottom:1px solid var(--line)}.project-dialog h2{margin:4px 0 0;font-size:20px}.project-dialog footer{justify-content:flex-end;gap:10px;border-top:1px solid var(--line)}.project-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px}.project-form-grid label{display:grid;gap:7px;font-size:13px;font-weight:700;color:var(--ink)}.project-form-grid input{padding:10px 11px;border:1px solid var(--line);border-radius:8px;font:inherit}.icon-btn{border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:var(--muted)}@media(max-width:680px){.project-toolbar{align-items:stretch;flex-direction:column}.project-toolbar label{min-width:0}.project-form-grid{grid-template-columns:1fr}}
.project-toolbar{margin:16px 0}.project-toolbar label{border-color:#d8e1ef;border-radius:9px}.project-toolbar input{padding:9px 0;font-size:13px}.project-table-wrap{border:1px solid #d7e1ee;box-shadow:0 8px 20px rgba(17,62,112,.05)}.project-table{border-collapse:separate;border-spacing:0;min-width:2300px;font-size:12px}.project-table th,.project-table td{height:34px;padding:0 12px;border-bottom:1px solid #edf0f4}.project-table th{position:sticky;top:0;z-index:3;background:linear-gradient(90deg,#0b4c91,#176bb6);color:#fff;border-bottom:0;font-size:12px}.project-table td{color:#26384d}.project-table tbody tr:nth-child(odd) td{background:#fff}.project-table tbody tr:nth-child(even) td{background:#fff9e9}.project-table tbody tr:hover td{background:#e7f1ff}.project-table th:nth-child(1),.project-table td:nth-child(1){position:sticky;left:0;z-index:2;min-width:110px}.project-table th:nth-child(2),.project-table td:nth-child(2){position:sticky;left:134px;z-index:2;min-width:145px}.project-table th:nth-child(3),.project-table td:nth-child(3){position:sticky;left:303px;z-index:2;min-width:120px}.project-table th:nth-child(-n+3){z-index:4}.project-table tbody tr:nth-child(odd) td:nth-child(-n+3){background:#fff}.project-table tbody tr:nth-child(even) td:nth-child(-n+3){background:#fff9e9}.project-table tbody tr:hover td:nth-child(-n+3){background:#e7f1ff}.project-table th:last-child,.project-table td:last-child{position:sticky;right:0;z-index:2;box-shadow:-5px 0 10px rgba(31,55,84,.06)}.project-table th:last-child{z-index:4}.project-actions{gap:6px}.project-actions button{padding:4px 8px;font-size:12px}.project-dialog{width:min(900px,100%);max-height:88vh;overflow:auto}.project-dialog>header,.project-dialog>footer{padding:18px 24px}.project-dialog>header{position:sticky;top:0;z-index:1;background:#fff}.project-dialog footer{position:sticky;bottom:0;background:#fff}.project-form-grid{grid-template-columns:repeat(3,1fr);gap:14px;padding:22px 24px}.project-form-grid label{gap:6px;font-size:12px;color:#35506d}.project-form-grid input{min-width:0;padding:9px 10px;font-size:13px;border-color:#d8e1ef}@media(max-width:680px){.project-form-grid{grid-template-columns:1fr}}
.product-head{margin-bottom:10px}.product-head h1{margin:0}.product-actions{display:flex;gap:9px}.btn.danger{background:#fff0f0;color:#b42318;border:1px solid #f3c4c1}.project-table{min-width:max-content}.project-table th,.project-table td{padding:0 9px}.project-table th:first-child,.project-table td:first-child{min-width:36px;width:36px;left:0;text-align:center}.project-table th:nth-child(2),.project-table td:nth-child(2){left:54px;min-width:max-content}.project-table th:nth-child(3),.project-table td:nth-child(3){left:calc(54px + 10ch);min-width:max-content}.project-table th:nth-child(4),.project-table td:nth-child(4){left:calc(54px + 23ch);min-width:max-content}.project-table th:nth-child(-n+4){z-index:4}.project-table tbody tr:nth-child(odd) td:nth-child(-n+4){background:#fff}.project-table tbody tr:nth-child(even) td:nth-child(-n+4){background:#fff9e9}.project-table tbody tr:hover td:nth-child(-n+4){background:#e7f1ff}.matrix-label{grid-column:span 1}.matrix-label select{min-width:0;padding:9px 10px;border:1px solid #d8e1ef;border-radius:7px;background:#fff;font:inherit;font-size:13px}.matrix-label.computed input{background:#f3f7fb;color:#47617e}.selection-note{grid-column:1/-1;margin:-2px 0 0;color:#6d7c91;font-size:12px}@media(max-width:680px){.product-head{align-items:flex-start}.product-actions{width:100%;flex-wrap:wrap}.project-table th:nth-child(n),.project-table td:nth-child(n){position:static}.project-table th:first-child,.project-table td:first-child{position:sticky;left:0;z-index:3}}
.product-head{display:grid;grid-template-columns:auto minmax(230px,360px) auto;align-items:center;gap:20px;margin-bottom:14px}.product-head .project-toolbar{margin:0}.product-head .project-toolbar label{min-width:0}.product-head .project-toolbar>span{white-space:nowrap}.product-actions{justify-self:end}.project-actions .btn::first-letter{font-weight:900}.project-table-wrap{max-height:calc(100vh - 215px);overflow:auto;overscroll-behavior:contain}.project-table th{top:0}.project-table th:first-child,.project-table td:first-child{min-width:30px;width:30px;padding:0 4px}.project-table th:nth-child(2),.project-table td:nth-child(2){left:30px;padding-left:4px}.project-table th:nth-child(3),.project-table td:nth-child(3){left:calc(30px + 10ch)}.project-table th:nth-child(4),.project-table td:nth-child(4){left:calc(30px + 23ch)}@media(max-width:850px){.product-head{grid-template-columns:1fr}.product-actions{justify-self:start}.project-table-wrap{max-height:calc(100vh - 300px)}}
.project-table .num{text-align:right;font-variant-numeric:tabular-nums}.project-table{box-shadow:0 10px 28px rgba(11,76,145,.08)}.project-dialog{width:min(1280px,96vw)}.matrix-wrap{overflow:auto;border:1px solid #d6e1ef;border-radius:9px;margin:20px 24px 12px}.matrix-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.matrix-table th{position:sticky;top:0;background:#0b4c91;color:#fff;padding:9px;white-space:nowrap}.matrix-table td{padding:5px;border-bottom:1px solid #edf1f6;background:#fff}.matrix-table tr:nth-child(even) td{background:#fff9e9}.matrix-table input,.matrix-table select{width:105px;border:1px solid #d6e1ef;border-radius:5px;padding:7px;background:#fff;font:inherit}.matrix-table .computed{background:#eef4fa;color:#30577c}.add-row{margin:0 24px 18px}.project-dialog footer{margin-top:0}.project-table th,.project-table td{font-size:12px}.product-actions .btn{min-width:78px}

/* /settings.css */
.settings-panel{position:absolute;left:18px;right:18px;bottom:48px;z-index:45;display:none;padding:15px;border:1px solid #31577f;border-radius:10px;background:#fff;color:#17232e;box-shadow:0 18px 45px rgba(0,0,0,.28)}.settings-panel.open{display:grid;gap:13px}.settings-title,.settings-row,.settings-profile{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-title button{border:0;background:#eef3f8;border-radius:50%;width:24px;height:24px;font-size:17px}.settings-panel .search{width:100%;padding:9px 10px;border:1px solid #d7e1ee;border-radius:8px}.settings-panel .search input{font-size:12px}.settings-row{font-size:12px;color:#52677e}.settings-profile{justify-content:flex-start;border-top:1px solid #e5edf5;padding-top:12px}.settings-profile div{display:flex;flex-direction:column}.settings-profile strong{font-size:12px}.settings-profile small{font-size:11px;color:#71808d}.mobile-menu{position:fixed;top:14px;left:14px;z-index:25;background:#fff;border-radius:7px;width:36px;height:36px;box-shadow:0 3px 12px rgba(0,0,0,.12)}@media(min-width:761px){.mobile-menu{display:none}}@media(max-width:760px){.content{padding-top:62px}.settings-panel{position:fixed;left:16px;right:auto;width:260px;bottom:18px}}

/* /product-final.css?v=20260906-47 */
.product-head{position:sticky;top:0;z-index:50;background:linear-gradient(100deg,#eaf4ff 0%,#dceeff 55%,#f5faff 100%);padding:14px 12px;margin-inline:-12px;border-bottom:1px solid #c7def4;box-shadow:0 10px 18px -14px rgba(4,43,84,.68)}.project-table-wrap{max-height:calc(100vh - 214px);clip-path:inset(0 round 10px);position:relative;z-index:1}.matrix-table .computed{display:block;background:#edf4fb;color:#315a82;cursor:not-allowed}.matrix-table td:has(.computed){background:#edf4fb}.matrix-table th{z-index:2}
.project-table-wrap{height:calc(100vh - 190px);max-height:none;overflow-x:auto;overflow-y:hidden}.project-pagination{display:flex;justify-content:center;align-items:center;gap:6px;height:40px}.project-pagination button{border:1px solid #cad9e8;background:#fff;border-radius:6px;padding:5px 9px;color:#224b74}.project-pagination button.active{background:#1760aa;color:#fff}.project-pagination button:disabled{opacity:.4}.product-head{isolation:isolate}.project-table{position:relative;z-index:1}
.project-table-wrap{height:calc(100vh - 160px);overflow:auto;overscroll-behavior:contain}.project-pagination{display:none}.project-head{z-index:100}.project-dialog{width:calc(100vw - 80px);max-width:none;height:calc(100vh - 70px);max-height:none;border-radius:14px}.project-dialog .matrix-wrap{height:calc(100vh - 230px);max-height:none}.matrix-table{min-width:100%}.matrix-table th{top:0;z-index:5}.fill-col{margin-left:6px;border:1px solid rgba(255,255,255,.65);border-radius:4px;background:rgba(255,255,255,.18);color:#fff;font-size:10px;padding:2px 4px;cursor:pointer}.project-modal{z-index:200}
.content{max-width:none;padding-left:22px;padding-right:22px}.product-head{grid-template-columns:auto auto 1fr}.product-head .project-toolbar{justify-self:start}.project-actions{justify-self:end}.project-table-wrap{height:calc(100vh - 174px);overflow:auto}.project-pagination{display:none!important}.project-table th:nth-child(n),.project-table td:nth-child(n){position:static}.project-table th:first-child,.project-table td:first-child{position:sticky;left:0;z-index:8;width:32px;min-width:32px}.project-table th:nth-child(2),.project-table td:nth-child(2){position:sticky;left:32px;z-index:7}.project-table th:nth-child(-n+2){z-index:10}.sidebar-toggle{position:absolute;right:-19px;bottom:16px;width:38px;height:38px;border:3px solid #22a8f1;border-radius:50%;background:#fff;color:#0b4c91;font-size:18px;z-index:50}.sidebar-collapsed .sidebar{transform:translateX(-246px)}.sidebar-collapsed .app-shell{grid-template-columns:1fr}.sidebar-collapsed main{grid-column:1}.sidebar-collapsed .mobile-menu{display:block}@media(max-width:760px){.sidebar-toggle{display:none}.product-head{grid-template-columns:1fr}.product-head .project-toolbar{width:100%}}

/* /product-workspace.css?v=20260906-47 */
.content{padding-top:0}.product-head{position:sticky;top:0;z-index:120;isolation:isolate;min-height:82px;margin:0 -22px 14px;padding:14px 22px;background:linear-gradient(100deg,#edf7ff,#dceeff 58%,#f7fbff);border-bottom:1px solid #bfd9f2;box-shadow:0 8px 18px rgba(19,76,135,.14)}.project-table-wrap{height:calc(100vh - 126px);position:relative;z-index:1;background:#fff}.project-modal{padding:14px;background:rgba(7,24,45,.58)}.project-dialog{width:calc(100vw - 28px);height:calc(100vh - 28px);border-radius:12px;border:1px solid #c7ddf3}.project-dialog>header{height:68px;background:linear-gradient(100deg,#f4faff,#e3f1ff)}.project-dialog h2:after{content:' · 产品录入工作台';font-size:13px;font-weight:500;color:#5d7590}.project-dialog .matrix-wrap{height:calc(100vh - 190px);margin:14px 18px;border-radius:8px;box-shadow:inset 0 0 0 1px #d5e4f2}.matrix-table{min-width:100%;width:max-content}.matrix-table th{height:42px;background:linear-gradient(90deg,#0b4c91,#2f76be)}.matrix-table td{height:46px;padding:7px}.matrix-table input,.matrix-table select{width:132px;height:32px}.add-row{margin:0 18px 12px}.project-dialog footer{height:64px;background:#fff;box-shadow:0 -8px 18px rgba(13,48,83,.06)}
.project-table td input{width:100%;min-width:70px;border:1px solid #89b9e8;border-radius:4px;padding:4px;background:#fff}.inline-new td{background:#e9f5ff!important}.product-head{z-index:500}

/* /projectlist.css */
.project-list-head{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto 270px 1fr auto;gap:16px;align-items:center;padding:14px 18px;margin:-22px -22px 16px;background:linear-gradient(100deg,#edf7ff,#dceeff);border-bottom:1px solid #bfd9f2}.project-list-head h1{margin:0;font-size:28px}.project-list-head label{display:flex;gap:8px;align-items:center;padding:9px 12px;background:#fff;border:1px solid #d3dfec;border-radius:8px;color:#63809d}.project-list-head input{border:0;outline:0;width:100%}.project-list-head>span{color:#6d8094;font-size:13px}.project-list-head>div{display:flex;gap:8px}.project-list-wrap{height:calc(100vh - 145px);overflow:auto;padding:0}.project-list-wrap table{width:100%;border-collapse:collapse;min-width:900px}.project-list-wrap th{position:sticky;top:0;background:#2b65aa;color:#fff;text-align:left;padding:11px;font-size:12px}.project-list-wrap td{padding:10px 11px;border-bottom:1px solid #e8eef4;font-size:13px}.project-list-wrap tr:nth-child(even){background:#fff9e9}.project-list-wrap tr:hover{background:#eaf4ff}

/* /inline-edit.css?v=20260915-48 */
.project-table-wrap{position:relative;isolation:isolate}.project-table thead{position:sticky;top:0;z-index:30}.project-table thead th{position:sticky;top:0;z-index:32;background:linear-gradient(115deg,#3474b9,#185397);box-shadow:0 2px 0 #d4e5f8}.project-table th:first-child,.project-table td:first-child{min-width:32px;width:32px}.project-table th:nth-child(2),.project-table td:nth-child(2){box-shadow:none!important}.project-table th:nth-child(21),.project-table td:nth-child(21),.project-table th:nth-child(22),.project-table td:nth-child(22){border-left:0!important;border-right:0!important;box-shadow:none!important}.history-link{border:0;background:transparent;color:#125ba5;font:inherit;padding:0;cursor:pointer}.history-link:hover{text-decoration:underline}.inline-edit td{padding:3px!important;background:#eaf4ff!important}.inline-edit input,.inline-edit select{box-sizing:border-box;width:100%;min-width:76px;border:1px solid #a9c8e7;border-radius:4px;background:#fff;padding:5px 6px;font:inherit;color:#173b63}.inline-edit select{min-width:94px}.inline-edit .computed{background:#edf2f7;color:#5b7188;cursor:not-allowed}.sidebar-restore{display:none;position:fixed;left:12px;bottom:18px;width:38px;height:38px;border:3px solid #22a8f1;border-radius:50%;background:#fff;color:#0b4c91;font-size:18px;z-index:200;box-shadow:0 5px 16px rgba(0,52,103,.2)}body.sidebar-collapsed .sidebar-restore{display:grid;place-items:center}.history-modal{display:none;position:fixed;inset:0;z-index:500;background:rgba(13,35,62,.48);align-items:center;justify-content:center;padding:28px}.history-modal.open{display:flex}.history-card{width:min(980px,100%);max-height:min(72vh,680px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 22px 60px rgba(0,0,0,.3)}.history-card header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #d8e5f1}.history-card h2{font-size:20px;margin:3px 0 0}.history-card small{color:#657c93}.history-card header button{border:0;background:transparent;font-size:28px;color:#5a718c;cursor:pointer}.history-card table{width:100%;border-collapse:collapse;font-size:14px}.history-card th{background:#e9f3ff;color:#174c86;text-align:left}.history-card th,.history-card td{padding:11px 15px;border-bottom:1px solid #e3ebf4}.empty-history{padding:38px;text-align:center;color:#718399}
.add-row,.new-option{border:0;background:transparent;font-weight:800;cursor:pointer}.add-row{color:#195a9d;font-size:20px;line-height:20px}.new-option{float:right;color:#fff;font-size:16px;line-height:16px}
.project-table th{white-space:nowrap}.project-table th span{font-weight:700}.sort-up,.sort-down,.hide-col{display:none;border:0;background:rgba(255,255,255,.16);color:#fff;border-radius:3px;margin-left:2px;cursor:pointer}.project-table th:hover .sort-up,.project-table th:hover .sort-down,.project-table th:hover .hide-col{display:inline-block}.project-table td.money{text-align:right!important;font-variant-numeric:tabular-nums}.project-table th,.project-table td{box-sizing:border-box}
.content{min-width:0!important}.product-head{display:flex!important;align-items:center!important;gap:14px!important;min-height:74px!important}.product-head h1{white-space:nowrap!important;min-width:max-content!important}.project-toolbar{flex:1!important;min-width:170px!important}.product-actions{display:flex!important;gap:8px!important;white-space:nowrap}.product-actions .btn{min-width:74px;padding:9px 13px}.project-table-wrap{min-width:0!important}.project-table th:first-child,.project-table td:first-child{position:sticky!important;left:0!important;z-index:20!important;background:inherit!important}.project-table th:nth-child(2),.project-table td:nth-child(2){position:sticky!important;left:32px!important;z-index:19!important;min-width:118px!important;background:inherit!important}.project-table th:nth-child(2){background:#245b9f!important}.project-table tr[draggable=true] td:first-child{cursor:default}.project-table tr.dragging{opacity:1}
.sidebar{width:220px!important;min-width:220px!important;overflow-x:hidden!important}.sidebar *{max-width:100%}.sidebar-footer{overflow:hidden}.app-shell{grid-template-columns:220px minmax(0,1fr)!important}.project-table thead,.project-table th{z-index:80!important}.project-table tbody td{z-index:1}.project-table tbody td:nth-child(2){background:inherit!important;font-weight:inherit!important;color:inherit!important}.project-table tbody td:nth-child(2) .history-link{color:inherit!important;font-weight:inherit!important}
#projectoverview .project-table{border-collapse:separate;border-spacing:0;table-layout:auto;will-change:scroll-position}#projectoverview .project-table thead th{background:#2f63a4!important;color:#fff;box-shadow:inset 0 -1px 0 rgba(255,255,255,.16)}#projectoverview .project-table tbody tr:nth-child(odd)>td:nth-child(2),#projectoverview .project-table tbody tr:nth-child(odd)>td:nth-child(3){background:#fff!important}#projectoverview .project-table tbody tr:nth-child(even)>td:nth-child(2),#projectoverview .project-table tbody tr:nth-child(even)>td:nth-child(3){background:#fff8e8!important}#projectoverview .project-table tbody td:nth-child(2),#projectoverview .project-table tbody td:nth-child(3){color:#133a64!important;font-weight:400!important}#projectoverview .project-table tbody td:nth-child(2) .history-link{color:#133a64!important;font-weight:400!important;text-decoration:none}#projectoverview .project-table tbody td:nth-child(2) .history-link:hover{color:#145fae!important;text-decoration:underline}.project-table-wrap{scrollbar-gutter:stable;contain:paint}.project-table tr{contain:layout paint}.project-table td,.project-table th{backface-visibility:hidden}
.topbar{display:none!important}

/* 零件清单与项目清单共用同一工作区节奏：标题栏、操作区及表格从同一基线开始。 */
#projectoverview .project-table-wrap,#partoverview .project-table-wrap{scrollbar-gutter:auto!important;contain:layout style!important;overflow:auto!important}
#projectoverview .project-table,#partoverview .project-table{border-spacing:0!important}
#projectoverview .project-table th,#projectoverview .project-table td,#partoverview .project-table th,#partoverview .project-table td{border-right:0!important;box-shadow:none!important}
#partoverview{margin:0!important;padding:0!important}
#partoverview .product-head{
  position:sticky!important;top:0!important;z-index:500!important;box-sizing:border-box!important;
  display:flex!important;align-items:center!important;min-height:82px!important;
  width:auto!important;margin:0 -22px 14px!important;padding:14px 22px!important;
}
#partoverview .project-table-wrap{height:calc(100vh - 126px)!important;margin:0!important;min-width:0!important}
#partoverview .project-table{border-collapse:separate;border-spacing:0;table-layout:auto;width:max-content!important;min-width:100%!important;will-change:scroll-position}
#partoverview .project-table th,#partoverview .project-table td{white-space:nowrap;padding-left:9px!important;padding-right:9px!important}
#partoverview .project-table th:first-child,#partoverview .project-table td:first-child{position:sticky!important;left:0!important;z-index:86!important;width:32px!important;min-width:32px!important;background:inherit!important}
#partoverview .project-table th:nth-child(2),#partoverview .project-table td:nth-child(2){position:sticky!important;left:32px!important;z-index:85!important;min-width:118px!important;background:inherit!important}
#partoverview .project-table thead th{position:sticky!important;z-index:82!important;text-align:center;padding-top:7px!important;padding-bottom:7px!important;background:#2f63a4!important;color:#fff;box-shadow:inset 0 -1px 0 rgba(255,255,255,.16)}
#partoverview .project-table .part-group-head th{top:0!important;height:25px;background:#1b4f8d!important;color:#ddecff!important;font-size:12px;letter-spacing:.08em}
#partoverview .project-table .part-field-head th{top:25px!important;height:34px;background:linear-gradient(90deg,#326caf,#245b9f)!important;color:#fff;font-size:13px}
#partoverview .project-table .part-group-head th:first-child{top:0!important;background:#1b4f8d!important}
#partoverview .project-table .part-field-head th:nth-child(1){min-width:118px!important}
#partoverview .project-table .part-field-head th:nth-child(2){min-width:320px!important;text-align:left}
#partoverview .project-table .part-field-head th:nth-child(3){min-width:170px!important;text-align:left}
#partoverview .project-table tbody tr:nth-child(odd)>td:nth-child(2),#partoverview .project-table tbody tr:nth-child(odd)>td:nth-child(3){background:#fff!important}
#partoverview .project-table tbody tr:nth-child(even)>td:nth-child(2),#partoverview .project-table tbody tr:nth-child(even)>td:nth-child(3){background:#fff8e8!important}
#partoverview .project-table tbody td:nth-child(2),#partoverview .project-table tbody td:nth-child(3){color:#133a64!important;font-weight:400!important}
#partoverview .project-table .part-empty td{height:220px!important;text-align:center!important;color:#70839a!important;background:#f9fbfd!important;font-size:14px!important}
#partoverview .project-table td:nth-child(7){text-align:right!important;font-variant-numeric:tabular-nums}

/* 单一工作区基线：项目清单与零件清单不再拥有各自的外层偏移。 */
@media (min-width:761px){
  main{margin:0!important;padding:0!important;min-width:0!important;align-self:start!important}
  main>.content{display:block!important;box-sizing:border-box!important;max-width:none!important;margin:0!important;padding:0 22px 50px!important;min-height:100vh!important}
  main>.topbar,main>[data-legacy-topbar],main>.legacy-topbar{display:none!important;height:0!important;margin:0!important;padding:0!important;border:0!important}
  #projectoverview,#partoverview{margin:0!important;padding:0!important}
  #projectoverview .product-head,#partoverview .product-head{
    position:sticky!important;top:0!important;z-index:500!important;transform:none!important;
    box-sizing:border-box!important;min-height:82px!important;margin:0 -22px 14px!important;padding:14px 22px!important;
  }
  #projectoverview .project-table-wrap,#partoverview .project-table-wrap{margin:0!important;height:calc(100vh - 126px)!important}
}

#partoverview .project-table-wrap{width:100%!important;max-width:100%!important;overflow:auto!important;position:relative!important}
#partoverview .part-empty-state{position:absolute!important;inset:59px 0 0!important;display:grid!important;place-items:center!important;margin:0!important;padding:0 20px!important;color:#70839a!important;font-size:14px!important;pointer-events:none!important;background:#f9fbfd!important}
#partoverview .part-empty-state[hidden]{display:none!important}
#projectoverview .project-table{width:100%!important;min-width:100%!important;table-layout:auto!important}#projectoverview .project-table th,#projectoverview .project-table td{width:auto!important}#projectoverview .project-table th:nth-child(1),#projectoverview .project-table td:nth-child(1){min-width:15ch}#projectoverview .project-table th:nth-child(2),#projectoverview .project-table td:nth-child(2){min-width:16ch}#projectoverview .project-table th:nth-child(3),#projectoverview .project-table td:nth-child(3){min-width:14ch}#projectoverview .project-table th:nth-child(4),#projectoverview .project-table td:nth-child(4){min-width:8ch}#projectoverview .project-table th:nth-child(n+5),#projectoverview .project-table td:nth-child(n+5){min-width:5ch}

/* /project-select-add.css?v=20260906-01 */
/* Editable list fields use a controllable option panel instead of a native popup. */
#projectoverview .select-editor{position:relative;display:block;width:100%;min-width:0}#projectoverview .select-editor>select{display:none!important}#projectoverview .select-editor-button{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;min-width:0;height:32px;padding:5px 7px;border:1px solid #a9c8e7;border-radius:4px;background:#fff;color:#173b63;font:inherit;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden}#projectoverview .select-editor-button span{overflow:hidden;text-overflow:ellipsis}#projectoverview .select-editor-button i{font-style:normal;color:#406b96;font-size:11px;flex:none}#projectoverview .select-editor-menu{position:absolute;z-index:220;top:calc(100% + 3px);left:0;width:max(100%,170px);max-height:270px;padding:4px;background:#fff;border:1px solid #8ba5c1;box-shadow:0 10px 24px rgba(13,52,93,.22);overflow:auto}#projectoverview .select-editor-menu[hidden]{display:none}#projectoverview .select-editor-option{display:block;width:100%;border:0;background:transparent;color:#173b63;padding:7px 8px;text-align:left;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#projectoverview .select-editor-option:hover,#projectoverview .select-editor-option.active{background:#2f63a4;color:#fff}#projectoverview .select-editor-add{position:sticky;bottom:-4px;display:block;width:calc(100% + 8px);margin:4px -4px -4px;padding:9px 8px;border:0;border-top:1px solid #d7e4f0;background:#eff7ff;color:#135b9f;font-weight:700;text-align:left;cursor:pointer}#projectoverview .select-editor-add:hover{background:#dceeff}

/* /project-column-visibility-off.css?v=20260906-01 */
/* Project list always displays every column; per-column hiding is disabled. */
#projectoverview .project-table .hide-col{display:none!important}

/* /sidebar-collapse-fix.css?v=20260906-01 */
/* Keep the workspace full-width when the desktop sidebar is collapsed. */
body.sidebar-collapsed .sidebar{transform:translateX(-220px)}
body.sidebar-collapsed .app-shell{display:block;width:100%;grid-template-columns:none}
body.sidebar-collapsed main{display:block;width:100vw;min-width:100vw;max-width:none;grid-column:auto}
body.sidebar-collapsed .content{width:100%;max-width:none;margin:0}

/* /project-quality.css?v=20260906-50 */
.quality-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:8px 0 18px}.quality-head h1{margin:3px 0 6px;font:700 1.75rem "IBM Plex Sans","Microsoft YaHei",sans-serif}.quality-head p{margin:0;color:#627b94;font-size:.9rem}.quality-head-actions{display:flex;align-items:center;gap:10px}.quality-project,.quality-form select,.quality-form input{height:38px;min-width:180px;padding:0 11px;border:1px solid #cbdbea;border-radius:7px;background:#fff;color:#27476a;font:inherit}.quality-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:14px}.quality-kpis>div{padding:16px 19px;border:1px solid #d9e7f4;border-radius:10px;background:linear-gradient(135deg,#fff,#f4f9ff)}.quality-kpis .attention{border-color:#f3d49d;background:#fffaf0}.quality-kpis b{display:block;color:#175a9c;font-size:1.45rem}.quality-kpis span{color:#637b94;font-size:.82rem}.quality-form{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 14px;padding:13px;border:1px solid #d6e5f4;border-radius:10px;background:#f7fbff}.quality-form input{min-width:155px}.quality-panel{padding:0;overflow:auto}.quality-table{width:100%;border-collapse:collapse;min-width:890px}.quality-table th{padding:12px 14px;background:#285d9e;color:#fff;text-align:left;font-size:.8rem;white-space:nowrap}.quality-table td{padding:11px 14px;border-bottom:1px solid #e6edf5;color:#173b63;font-size:.85rem;vertical-align:middle}.quality-table tr:nth-child(even) td{background:#fffaeb}.quality-table strong{display:block}.quality-table small{display:block;margin-top:3px;color:#71859b;font-size:.75rem}.q-status,.q-score{display:inline-block;border-radius:99px;padding:4px 8px;font-size:.74rem;font-weight:700;white-space:nowrap}.q-status.ok{background:#e2f6ed;color:#147353}.q-status.warn{background:#fff1d8;color:#a65e12}.q-status.neutral{background:#eaf0f8;color:#47617d}.q-score{background:#e9f2ff;color:#1e60a5}.text-btn{border:0;background:transparent;color:#1d62aa;cursor:pointer;padding:2px 0;font:inherit;font-size:.78rem}.text-btn:hover{text-decoration:underline}.text-btn.danger{color:#be4a45;margin-left:10px}.quality-empty{text-align:center;color:#6d829b;padding:32px!important}.quality-toast{position:fixed;right:22px;bottom:22px;z-index:99;transform:translateY(16px);opacity:0;pointer-events:none;padding:11px 15px;border-radius:8px;background:#173b63;color:#fff;box-shadow:0 8px 24px #173b6344;transition:.2s}.quality-toast.show{transform:none;opacity:1}@media(max-width:850px){.quality-head{align-items:flex-start;flex-direction:column}.quality-head-actions{width:100%;flex-wrap:wrap}.quality-project{flex:1}.quality-kpis{grid-template-columns:1fr}.quality-form>*{width:100%;min-width:0!important}}

/* /hr-matrix.css?v=20260906-01 */
.hr-matrix-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.hr-matrix-summary article{background:#fff;border:1px solid #dce7f2;border-top:3px solid #3169ac;border-radius:10px;padding:15px 17px;box-shadow:0 7px 20px rgba(22,64,105,.06)}.hr-matrix-summary span{display:block;color:#617993;font-size:.78rem;font-weight:700}.hr-matrix-summary strong{display:block;color:#173b68;font-size:1.65rem;line-height:1.25;margin:6px 0}.hr-matrix-summary small{color:#8192a6;font-size:.71rem}.hr-filter-group{display:flex;gap:9px;align-items:center}.hr-filter-group input{min-width:240px;border:1px solid #cbd9e8;border-radius:7px;padding:9px 11px;background:#fff;color:#25394d;font-size:.82rem}.hr-filter-group select{border:1px solid #cbd9e8;border-radius:7px;padding:9px 28px 9px 10px;background:#fff;color:#25394d;font-size:.82rem}.hr-people-panel td small,.hr-skill-panel td small{display:block;color:#708398;font-size:.68rem;margin-top:3px}.skill-level{display:inline-block;border-radius:99px;padding:4px 8px;font-size:.7rem;font-weight:700}.skill-level.q1{background:#edf1f5;color:#5d6d7d}.skill-level.q2{background:#e5f1ff;color:#2461a4}.skill-level.q3{background:#e2f7f0;color:#157f6a}.skill-level.q4{background:#fff0d9;color:#a46018}.hr-skill-panel td:nth-child(3){min-width:280px}@media(max-width:1000px){.hr-matrix-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.hr-matrix-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.hr-filter-group{width:100%}.hr-filter-group input{flex:1;min-width:0}}@media(max-width:620px){.hr-matrix-summary{grid-template-columns:1fr}.hr-filter-group{flex-direction:column;align-items:stretch}.hr-filter-group input,.hr-filter-group select{width:100%}}

/* /hr-attendance.css?v=20261004-w40 */
.hr-att-tools,.hr-att-period{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.hr-att-tools input{width:220px}.hr-att-tools select{max-width:205px}.hr-att-tools input,.hr-att-tools select,.hr-att-period input,.hr-att-period button,.hr-att-period select{height:36px;padding:7px 10px;border:1px solid #cad8ec;border-radius:7px;background:#fff;color:#244576;font:inherit;font-size:12px}.hr-att-period{margin:0 0 12px}.hr-att-period label{font-size:12px;color:#617997}.hr-att-period>span{font-size:12px;color:#637c9e;margin-left:auto}.hr-data-note{padding:10px 12px;border:1px solid #d4e1f6;border-radius:7px;background:#f7faff;color:#4e6990;font-size:12px;line-height:1.6;margin-bottom:12px}.hr-att-panel{padding:0;overflow:hidden}.hr-att-scroll{height:calc(100dvh - 300px);min-height:300px;overflow:auto}.hr-att-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:1397px;min-width:100%;font-size:12px}.hr-att-table th{position:sticky;top:0;background:#47699f;color:white;z-index:3;padding:9px 8px;text-align:center}.hr-att-table th small{display:block;color:#e3ebfa;font-size:10px;font-weight:400;margin-top:3px}.hr-att-table td{height:28px;padding:4px 8px;border-right:1px solid #e0e7f0;border-bottom:1px solid #e0e7f0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#fff}.hr-att-table tr:nth-child(even) td{background:#fffaf0}.hr-att-table td:nth-child(2),.hr-att-table td:nth-child(3){text-align:left}.hr-att-table th:first-child,.hr-att-table td:first-child{position:sticky;left:0;z-index:2}.hr-att-table th:nth-child(2),.hr-att-table td:nth-child(2){position:sticky;left:76px;z-index:2}.hr-att-table th:first-child,.hr-att-table th:nth-child(2){z-index:4}.hr-att-table th.weekend{background:#746d55}.hr-att-table td.weekend{background:#f3f0e8}.hr-att-table td.future{color:#8693a7}.att-code{font-size:11px}.att-a{color:#246f56}.att-f{color:#a33e32;background:#fff0ec;border-radius:3px;padding:2px 6px}.att-other{color:#6c6191}.hr-att-footer{padding:10px 12px;color:#617a9d;border-top:1px solid #dce5f2;font-size:12px}.hr-data-details{background:white;border:1px solid #d9e4f2;border-radius:8px;padding:12px 15px;margin-top:12px;font-size:12px;color:#54708e}.hr-data-details summary{cursor:pointer;color:#234777;font-weight:600}.hr-data-details p{line-height:1.7}.hr-status{font-size:11px;border-radius:4px;padding:3px 6px;background:#edf6ef;color:#26704c}.hr-status.left{color:#8a5b54;background:#f8eded}.hr-empty{padding:35px!important;text-align:center}.hr-filter-group{flex-wrap:wrap}.hr-people-panel{overflow:auto;max-height:calc(100dvh - 280px)}.hr-people-panel thead th{position:sticky;top:0;z-index:1}.hr-roster-branches{min-width:0!important;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important}.hr-roster-branches .org-members{max-height:420px;overflow:auto}.hr-roster-branches .org-dept-head{width:100%;border:0;text-align:left}.hr-review-table{width:100%;font-size:12px}.hr-review-table td,.hr-review-table th{padding:8px}.hr-panel-pad{padding:18px}.hr-panel-pad h2{font-size:16px}.hr-panel-pad p{font-size:13px;color:#61758d;line-height:1.7}.hr-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px}.hr-counts article{background:white;border:1px solid #d6e2f1;border-radius:8px;padding:15px}.hr-counts span,.hr-counts small{display:block;color:#6c819d;font-size:12px}.hr-counts strong{display:block;font-size:26px;color:#2c5e9a;margin:5px 0}.hr-roster-branches .org-member{grid-template-columns:42px 1fr}.hr-roster-branches .org-member strong{overflow-wrap:anywhere}.hr-roster-branches .org-avatar{width:40px}.hr-roster-branches:before{display:none}.hr-roster-branches .org-dept:before{display:none}
@media(max-width:1000px){#attendanceList .page-head{display:block}.hr-att-tools{margin-top:12px}.hr-att-tools input{width:190px}.hr-att-scroll{height:calc(100dvh - 340px)}.hr-att-period>span{margin-left:0}.hr-roster-branches{grid-template-columns:repeat(2,minmax(240px,1fr))!important}}
@media(max-width:650px){.hr-att-tools input{flex:1;min-width:180px}.hr-att-scroll{height:55dvh}.hr-roster-branches{grid-template-columns:1fr!important}.hr-att-tools select{max-width:160px}}

/* /hr-dashboard.css?v=20260906-01 */
.hr-dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.hr-dashboard-metrics article{background:#fff;border:1px solid #dce7f2;border-top:3px solid #3169ac;border-radius:10px;padding:17px;box-shadow:0 7px 20px rgba(22,64,105,.06)}.hr-dashboard-metrics span{display:block;color:#617993;font-size:.78rem;font-weight:700}.hr-dashboard-metrics strong{display:block;color:#173b68;font-size:1.75rem;line-height:1.2;margin:8px 0}.hr-dashboard-metrics small{color:#8192a6;font-size:.72rem}.hr-dashboard-grid{grid-template-columns:1.15fr .85fr}.hr-coverage>div{display:grid;grid-template-columns:72px 1fr 40px;align-items:center;gap:10px;margin:16px 0;font-size:.8rem}.hr-coverage i{display:block;height:8px;border-radius:99px;background:#e5edf5;overflow:hidden}.hr-coverage b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b5ca8,#38a1ef)}.hr-coverage strong{text-align:right;color:#194a7e}.hr-todo>div{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid #e8eef4;font-size:.8rem}.hr-todo>div:last-child{border-bottom:0}.hr-todo b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e2f1ff;color:#075ca8}.hr-todo button{border:0;background:none;color:#075ca8;font-weight:700;cursor:pointer}@media(max-width:1000px){.hr-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.hr-dashboard-grid{grid-template-columns:1fr}}@media(max-width:620px){.hr-dashboard-metrics{grid-template-columns:1fr}}

/* /quality-docs.css?v=20260906-01 */
#qualitydocs{max-width:1480px;margin:0 auto}.qdocs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.qdocs-head h1{margin:4px 0 5px;font:700 1.85rem "IBM Plex Sans","Microsoft YaHei",sans-serif;color:#17344f}.qdocs-head p{margin:0;color:#71808d;font-size:.86rem}.qdocs-actions{display:flex;gap:9px;flex-wrap:wrap}.qdocs-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:14px}.qdocs-kpis article{background:linear-gradient(140deg,#fff,#f6faff);border:1px solid #dce7f3;border-radius:12px;padding:16px 18px;box-shadow:0 7px 22px rgba(28,61,95,.06)}.qdocs-kpis article:first-child{background:linear-gradient(140deg,#224a7a,#346aa6);border-color:#224a7a;color:#fff}.qdocs-kpis span{display:block;font-size:.75rem;color:#6e8194}.qdocs-kpis article:first-child span,.qdocs-kpis article:first-child small{color:#d7e6f7}.qdocs-kpis strong{display:block;margin:5px 0 3px;font:700 1.7rem "IBM Plex Sans",sans-serif}.qdocs-kpis small{font-size:.68rem;color:#8a9aaa}.qdocs-panel{background:#fff;border:1px solid #dfe8f1;border-radius:12px;box-shadow:0 8px 26px rgba(24,55,88,.06);overflow:hidden}.qdocs-toolbar{display:flex;gap:9px;padding:14px;border-bottom:1px solid #e7edf3;background:#fbfdff}.qdocs-search{display:flex;align-items:center;gap:7px;flex:1;min-width:210px;border:1px solid #d6e0ea;background:#fff;border-radius:8px;padding:0 11px;color:#67809a}.qdocs-search input{border:0;outline:0;width:100%;padding:10px 0;font-size:.78rem;background:transparent}.qdocs-toolbar select{border:1px solid #d6e0ea;border-radius:8px;background:#fff;padding:0 29px 0 10px;font-size:.76rem;color:#304a64}.qdocs-table-wrap{overflow:auto;max-height:560px}.qdocs-table{width:100%;min-width:1120px;border-collapse:collapse}.qdocs-table th{position:sticky;top:0;z-index:1;text-align:left;background:#2b598f;color:#fff;padding:12px 13px;font-size:.7rem;white-space:nowrap}.qdocs-table td{padding:11px 13px;border-bottom:1px solid #e8eef4;color:#1c3853;font-size:.74rem;vertical-align:middle}.qdocs-table tbody tr:nth-child(even){background:#fbfcfe}.qdocs-table tbody tr:hover{background:#eef6ff}.qdocs-table td:nth-child(2){min-width:205px}.qdocs-table td strong{font-weight:700}.qdocs-table td small{display:block;margin-top:3px;font-size:.65rem;color:#8492a0}.qdocs-level{display:inline-block;padding:3px 7px;border-radius:10px;background:#ebf1f8;color:#466a8e;font-size:.65rem;white-space:nowrap}.qdocs-status{display:inline-block;padding:4px 8px;border-radius:12px;font-size:.65rem;font-weight:700;white-space:nowrap}.qdocs-status.active{background:#ddf5eb;color:#167754}.qdocs-status.review{background:#fff0d9;color:#ae691c}.qdocs-status.obsolete{background:#f2e6e7;color:#a14c56}.qdocs-row-actions{display:flex;gap:5px}.qdocs-row-actions button{border:0;background:#eaf1fb;color:#28598f;font-size:.68rem;font-weight:700;border-radius:6px;padding:6px 8px;cursor:pointer;white-space:nowrap}.qdocs-row-actions button:last-child{background:#e1f5ef;color:#157557}.qdocs-foot{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;background:#fbfdff;color:#74869a;font-size:.7rem}.qdocs-empty{text-align:center!important;padding:42px!important;color:#7c90a5!important}.qdocs-modal-backdrop{position:fixed;z-index:200;inset:0;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(10,28,48,.5)}.qdocs-modal-backdrop.open{display:flex}.qdocs-modal{width:min(650px,100%);background:#fff;border-radius:14px;padding:23px;box-shadow:0 24px 75px rgba(8,24,42,.3)}.qdocs-modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.qdocs-modal h2{margin:4px 0 0;font-size:1.25rem;color:#193d64}.qdocs-close{width:31px;height:31px;border:0;border-radius:50%;background:#edf2f7;color:#45617e;font-size:1.25rem;cursor:pointer}.qdocs-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qdocs-form-grid label{display:flex;flex-direction:column;gap:5px;color:#456079;font-size:.72rem;font-weight:700}.qdocs-form-grid input,.qdocs-form-grid select{border:1px solid #cedae6;border-radius:7px;padding:9px 10px;color:#263e55;font-size:.8rem;outline:none}.qdocs-form-grid input:focus,.qdocs-form-grid select:focus{border-color:#2b6eae;box-shadow:0 0 0 3px #e8f2fc}.qdocs-span-2{grid-column:span 2}.qdocs-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px;padding-top:16px;border-top:1px solid #e6edf3}@media(max-width:900px){.qdocs-head{align-items:flex-start;flex-direction:column}.qdocs-kpis{grid-template-columns:repeat(2,1fr)}.qdocs-toolbar{flex-wrap:wrap}.qdocs-search{flex-basis:100%;height:38px}.qdocs-toolbar select{height:38px;flex:1}.qdocs-foot{flex-direction:column}}@media(max-width:520px){.qdocs-kpis{grid-template-columns:1fr}.qdocs-actions{width:100%}.qdocs-actions .btn{flex:1}.qdocs-form-grid{grid-template-columns:1fr}.qdocs-span-2{grid-column:span 1}}
.qdocs-attachments{border:0;background:#f1effc;color:#6352a8;font-size:.68rem;font-weight:700;border-radius:6px;padding:6px 8px;cursor:pointer;white-space:nowrap}.qdocs-attachment-backdrop{position:fixed;z-index:210;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(10,28,48,.5)}.qdocs-attachment-sheet{width:min(650px,100%);background:#fff;border-radius:14px;padding:23px;box-shadow:0 24px 75px rgba(8,24,42,.3)}.qdocs-attachment-sheet header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.qdocs-attachment-sheet h2{margin:4px 0 0;font-size:1.25rem;color:#193d64}.qdocs-attachment-sheet p{margin:5px 0 0;color:#6d8297;font-size:.78rem}.qdocs-file-list{max-height:min(58vh,500px);overflow:auto;border:1px solid #e4ebf2;border-radius:9px}.qdocs-file-list a{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;padding:12px;text-decoration:none;color:#263f59;border-bottom:1px solid #e8eef4}.qdocs-file-list a:last-child{border-bottom:0}.qdocs-file-list a:hover{background:#f0f7ff}.qdocs-file-list strong,.qdocs-file-list small{display:block}.qdocs-file-list strong{font-size:.75rem;word-break:break-word}.qdocs-file-list small{margin-top:4px;color:#71869b;font-size:.68rem}.qdocs-file-list b{color:#2c689f;font-size:.7rem}.qdocs-file-type{padding:5px 4px;border-radius:5px;background:#e5effb;color:#2f6498;text-align:center;font-size:.62rem;font-weight:800}.qdocs-no-files{padding:22px!important}@media(max-width:520px){.qdocs-file-list a{grid-template-columns:48px 1fr}.qdocs-file-list b{grid-column:2}}

/* /account-access.css?v=20260912-03 */
.settings-access-link{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 0;border:0;border-top:1px solid #e5edf5;background:transparent;color:#164d8e;font-size:13px;font-weight:700;cursor:pointer}.settings-access-link span{font-size:17px}.permission-preview-hidden{display:none!important}.access-head{margin-bottom:20px}.access-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.access-metrics article{padding:18px;border:1px solid #d7e3f0;border-radius:12px;background:#fff;box-shadow:0 8px 20px rgba(21,54,95,.05)}.access-metrics span,.access-metrics small{display:block;color:#64748b;font-size:13px}.access-metrics strong{display:block;margin:7px 0 5px;color:#153d70;font-size:29px;line-height:1}.access-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(440px,1.4fr);gap:16px;margin-bottom:16px}.access-layout.lower{grid-template-columns:minmax(550px,1.65fr) minmax(260px,.72fr)}.access-accounts,.access-detail,.access-layout.lower .panel{min-width:0}.access-search{display:flex;align-items:center;gap:6px;width:195px;padding:7px 9px;border:1px solid #d7e2ef;border-radius:7px;color:#66809b}.access-search input{width:100%;border:0;outline:0;color:#1d334f;font-size:13px}.access-account-row{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;width:100%;border:0;text-align:left;padding:12px 14px;border-top:1px solid #e9eff5;background:#fff;cursor:pointer}.access-account-row:hover,.access-account-row.active{background:#eef6ff}.access-account-row .avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#dcecff;color:#1553a2;font-size:12px;font-weight:800}.access-account-row b,.access-account-row small{display:block}.access-account-row b{font-size:14px;color:#16385e}.access-account-row small{margin-top:2px;color:#718198;font-size:12px}.role-pill,.scope-pill,.perm-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;white-space:nowrap;font-size:12px;font-weight:700}.role-pill{padding:5px 8px;background:#e8f1ff;color:#1f5da5}.scope-pill{padding:5px 9px;background:#eef2f7;color:#4a617b}.access-profile{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #e5edf5}.access-profile .profile-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#245c9e;color:#fff;font-size:17px;font-weight:800}.access-profile h3{margin:0;color:#173b66;font-size:17px}.access-profile p{margin:3px 0 0;color:#6e8095;font-size:13px}.access-detail-block{padding:16px 0;border-bottom:1px solid #e5edf5}.access-detail-block:last-child{border-bottom:0}.access-detail-block h4{margin:0 0 9px;color:#193e69;font-size:14px}.access-data-line{display:flex;flex-wrap:wrap;gap:7px}.access-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.access-permission{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:8px;background:#f7faff;font-size:13px;color:#36516f}.perm-pill{padding:4px 8px}.perm-manage{background:#dceeff;color:#1655a0}.perm-read{background:#e6f5ec;color:#197447}.perm-none{background:#f1f3f5;color:#8491a0}.access-table-wrap{overflow:auto}.access-table{width:100%;border-collapse:collapse;font-size:13px}.access-table th{padding:10px;text-align:left;background:#244f86;color:#fff;font-weight:700;white-space:nowrap}.access-table td{padding:11px 10px;border-bottom:1px solid #e5edf5;white-space:nowrap;color:#334f6b}.access-table td:first-child{color:#193d69;font-weight:700}.access-audit ol{margin:0;padding:2px 0;list-style:none}.access-audit li{display:grid;grid-template-columns:49px 1fr;gap:9px;padding:12px 0;border-bottom:1px solid #e5edf5;font-size:13px;line-height:1.45;color:#536b85}.access-audit li:last-child{border-bottom:0}.access-audit time{color:#7990a8;font-size:12px}.access-audit b{color:#214e83}.access-note{margin:4px 0 0;color:#71829a;font-size:12px}@media(max-width:1040px){.access-metrics{grid-template-columns:repeat(2,1fr)}.access-layout,.access-layout.lower{grid-template-columns:1fr}.access-search{width:170px}}@media(max-width:620px){.access-metrics{grid-template-columns:1fr}.access-permissions{grid-template-columns:1fr}.access-search{display:none}.access-account-row{padding:12px}.access-table{font-size:12px}}

.access-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 16px}.access-entry-grid button{display:grid;grid-template-columns:40px 1fr auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:19px;border:1px solid #d7e3f0;border-radius:12px;background:#fff;color:#173b66;text-align:left;cursor:pointer;box-shadow:0 8px 20px rgba(21,54,95,.05)}.access-entry-grid button:hover{border-color:#7eacd9;transform:translateY(-1px)}.access-entry-grid span{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#e8f2ff;color:#1e61aa;font-weight:800}.access-entry-grid strong{font-size:16px}.access-entry-grid small{color:#72839a;line-height:1.4}.access-entry-grid b{grid-column:3;grid-row:1/3;color:#1f5da5}.access-dashboard-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:16px}.risk-list>div{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid #e7edf4}.risk-list>div:last-child{border-bottom:0}.risk-list>div>b{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#fff0ed;color:#c14232}.risk-list span strong,.risk-list span small{display:block}.risk-list span strong{color:#213f62;font-size:14px}.risk-list span small{margin-top:4px;color:#76879c}.compact-audit{margin:0;padding:0;list-style:none}.compact-audit li{display:grid;grid-template-columns:54px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid #e7edf4;color:#48627e}.compact-audit li:last-child{border-bottom:0}.compact-audit time{color:#8191a5}.access-wide-panel{padding:0;overflow:hidden}.access-toolbar{display:flex;align-items:center;gap:10px;padding:14px}.access-toolbar .access-search{width:min(360px,40%)}.access-toolbar select,.audit-filter select{min-height:38px;padding:0 32px 0 11px;border:1px solid #d5e0ec;border-radius:8px;background:#fff;color:#344f6c}.access-toolbar>span{margin-left:auto;color:#718298;font-size:13px}.access-table-wrap{width:100%;overflow-x:auto}.access-table{min-width:1050px}.access-table thead{position:sticky;top:0;z-index:1}.access-table tbody tr:nth-child(even){background:#f8fbff}.access-table tbody tr:hover{background:#eef6ff}.account-name{display:flex;align-items:center;gap:9px}.account-name .avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e4efff;color:#1656a1;font-size:11px;font-weight:800}.account-table th:nth-child(1){min-width:92px}.account-table th:nth-child(2){min-width:155px}.account-table th:nth-child(4){min-width:120px}.account-table th:nth-child(5){min-width:170px}.account-table th:nth-child(8),.account-table th:nth-child(9){min-width:115px}.role-table th:first-child{min-width:180px}.role-table th:nth-child(n+4):nth-child(-n+8){min-width:112px}.policy-layout{display:grid;grid-template-columns:minmax(560px,1.45fr) minmax(300px,.7fr);gap:16px;margin-bottom:16px}.policy-cards>div{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #e5edf5}.policy-cards>div:last-child{border-bottom:0}.policy-cards>div>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e8f2ff;color:#1f5da5;font-weight:800}.policy-cards section b{color:#1c416c}.policy-cards section p{margin:4px 0;color:#566f8a}.policy-cards section small{color:#8090a4}.policy-cards em{padding:5px 9px;border-radius:999px;background:#e4f5ec;color:#177245;font-style:normal;font-size:12px;font-weight:700}.review-list>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:13px 0;border-bottom:1px solid #e5edf5}.review-list>div:last-child{border-bottom:0}.review-list b{color:#294968}.review-list small{color:#74869b}.risk{padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.risk.high{background:#fee9e6;color:#b73c2f}.risk.medium{background:#fff0d9;color:#a45c00}.risk.low{background:#e8f2ff;color:#2763a2}.audit-log-panel{padding:0;overflow:hidden}.audit-log-panel .panel-head{padding:15px}.audit-filter{display:flex;gap:8px}.policy-metrics article:first-child{border-top:3px solid #2b67ad}@media(max-width:1100px){.access-entry-grid{grid-template-columns:1fr}.access-dashboard-grid,.policy-layout{grid-template-columns:1fr}}@media(max-width:700px){.access-toolbar{flex-wrap:wrap}.access-toolbar .access-search{display:flex;width:100%}.access-toolbar>span{margin-left:0}.audit-filter{display:none}}

/* /governance-workbench.css?v=20260912-01 */
.settings-signout{margin-left:auto;color:#b42318;font-size:13px;font-weight:700;text-decoration:none;border:1px solid #fecaca;border-radius:8px;padding:6px 10px;background:#fff}
.approval-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.approval-metric{background:#fff;border:1px solid #dce6f2;border-radius:12px;padding:16px}.approval-metric strong{display:block;color:#173e72;font-size:28px;margin-top:8px}.approval-metric span{font-size:13px;color:#62748b}.approval-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.9fr);gap:18px}.approval-panel,.ai-panel{background:#fff;border:1px solid #dce6f2;border-radius:12px;padding:18px}.approval-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.approval-panel h2,.ai-panel h2{font-size:17px;margin:0;color:#173e72}.approval-panel select{height:34px;border:1px solid #c9d8ea;border-radius:7px;padding:0 8px;color:#25456e;background:#fff}.approval-list{display:grid;gap:10px}.approval-item{display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e2eaf4;border-radius:9px;overflow:hidden;background:#fff}.approval-band{height:100%;background:#e8a22f}.approval-item.processing .approval-band{background:#3c7bd6}.approval-item.approved .approval-band{background:#2a9a69}.approval-item.returned .approval-band{background:#d05757}.approval-main{padding:12px 0}.approval-main strong{display:block;color:#183c6b;font-size:14px;margin-bottom:5px}.approval-meta{display:flex;flex-wrap:wrap;gap:7px;color:#667991;font-size:12px}.approval-tag{background:#eef4fb;border-radius:999px;padding:3px 7px}.approval-actions{display:flex;gap:6px;padding-right:12px}.approval-actions button{border:0;border-radius:7px;padding:7px 9px;font-size:12px;font-weight:700;cursor:pointer}.approval-actions .approve{background:#e2f5eb;color:#18734b}.approval-actions .return{background:#fff1f0;color:#b42318}.workflow-list{display:grid;gap:10px}.workflow-definition{border-bottom:1px solid #e7eef6;padding:9px 0}.workflow-definition:last-child{border-bottom:0}.workflow-definition strong{font-size:14px;color:#173e72}.workflow-definition p{margin:5px 0 0;color:#60748d;font-size:12px;line-height:1.6}.approval-rules{margin-top:18px}.approval-rules ul{margin:10px 0 0;padding-left:19px;color:#60748d;font-size:13px;line-height:1.8}.ai-principles{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.ai-principles span{background:#eaf2fc;color:#22588f;border-radius:99px;padding:7px 10px;font-size:13px;font-weight:700}.ai-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ai-tool-card{border:1px solid #dce6f2;border-radius:12px;padding:17px;background:linear-gradient(145deg,#fff,#f6f9fe)}.ai-tool-card .ai-dept{font-size:12px;color:#3a70ac;font-weight:800}.ai-tool-card h3{margin:8px 0 7px;color:#183c6b;font-size:16px}.ai-tool-card p{min-height:40px;margin:0 0 12px;color:#61748b;font-size:13px;line-height:1.55}.ai-tool-card button{width:100%;border:1px solid #c7dcf4;background:#fff;color:#22588f;border-radius:7px;padding:8px;font-weight:700;cursor:pointer}.ai-boundary{margin-top:16px;color:#667991;font-size:12px;line-height:1.6}.governance-modal .modal{width:min(680px,calc(100vw - 36px))}.governance-modal .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.governance-modal label{display:grid;gap:6px;color:#35516f;font-size:13px;font-weight:700}.governance-modal input,.governance-modal select{height:38px;border:1px solid #cbd9e8;border-radius:7px;padding:0 10px;background:#fff;color:#183c6b}.governance-modal .modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
@media(max-width:1080px){.approval-layout{grid-template-columns:1fr}.ai-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.approval-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-tool-grid,.governance-modal .form-grid{grid-template-columns:1fr}.approval-item{grid-template-columns:5px 1fr}.approval-actions{padding:0 12px 12px;grid-column:2}.settings-signout{padding:4px 7px}}

/* /intransit.css?v=20260914-03 */
.transit-head{align-items:center;gap:18px}.transit-page-tools{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex:1;min-width:0}.transit-page-tools .transit-search{width:min(330px,32vw);height:40px;box-sizing:border-box;background:#fff}.transit-page-tools select{height:40px;padding:0 30px 0 10px;border:1px solid #d4dfeb;border-radius:8px;background:#fff;color:#38536f}.transit-page-tools .btn{height:40px;white-space:nowrap}.transit-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.transit-metrics article{padding:17px 18px;border:1px solid #d7e3f0;border-top:3px solid #2c67ad;border-radius:12px;background:#fff;box-shadow:0 8px 20px rgba(21,54,95,.05)}.transit-metrics span,.transit-metrics small{display:block;color:#6b7f96;font-size:13px}.transit-metrics strong{display:block;margin:7px 0 5px;color:#173f70;font-size:27px;line-height:1}.transit-panel{padding:0;overflow:hidden}.transit-table-meta{display:flex;justify-content:flex-end;min-height:18px;padding:10px 14px;color:#72849a;font-size:13px}.transit-search{display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #d4dfeb;border-radius:8px;color:#68809a}.transit-search input{width:100%;border:0;outline:0;background:transparent;color:#213b58;font-size:13px}.transit-table-wrap{max-height:570px;overflow:auto;border-top:1px solid #dfe7f0;border-bottom:1px solid #dfe7f0}.transit-table{width:100%;min-width:1460px;border-collapse:collapse;font-size:13px}.transit-table thead{position:sticky;top:0;z-index:2}.transit-table th{padding:10px 11px;background:#315f99;color:#fff;text-align:left;white-space:nowrap}.transit-table th:nth-child(10),.transit-table th:nth-child(11),.transit-table td:nth-child(6),.transit-table td:nth-child(10),.transit-table td:nth-child(11){text-align:right;font-variant-numeric:tabular-nums}.transit-table td{padding:10px 11px;border-bottom:1px solid #e7edf3;color:#314e6c;white-space:nowrap}.transit-table tbody tr:nth-child(even){background:#fffaf0}.transit-table tbody tr:hover{background:#edf6ff}.transit-table td:nth-child(5){color:#0c4e93;font-weight:700}.transit-pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;color:#687d95;font-size:13px}.transit-pagination div{display:flex;gap:8px}.transit-pagination button{padding:7px 11px;border:1px solid #d5e0ec;border-radius:7px;background:#fff;color:#255487;cursor:pointer}.transit-pagination button:disabled{cursor:not-allowed;opacity:.45}.transit-upload-modal{width:min(720px,calc(100vw - 32px))}.transit-upload-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 16px}.transit-upload-steps span{padding:9px;border-radius:8px;background:#eef3f8;color:#718299;text-align:center;font-size:12px;font-weight:700}.transit-upload-steps .active{background:#e3efff;color:#1557a4}.transit-dropzone{display:flex;flex-direction:column;align-items:center;gap:7px;padding:30px;border:2px dashed #a9c5e3;border-radius:12px;background:#f7fbff;color:#274c73;text-align:center;cursor:pointer}.transit-dropzone.dragging{border-color:#2769b2;background:#edf6ff}.transit-dropzone input{display:none}.transit-dropzone b{font-size:17px}.transit-dropzone span,.transit-dropzone small{color:#71849a}.transit-source-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.transit-source-rules div{padding:12px;border:1px solid #e0e8f0;border-radius:9px}.transit-source-rules b,.transit-source-rules span{display:block}.transit-source-rules b{margin-bottom:5px;color:#244b76;font-size:13px}.transit-source-rules span{color:#728399;font-size:12px;line-height:1.4}.transit-file-list{display:grid;gap:7px}.transit-file-list>div{display:flex;justify-content:space-between;padding:9px 11px;border-radius:7px;background:#eef6ff;color:#315476;font-size:13px}@media(max-width:1350px){.transit-head{align-items:flex-start;flex-direction:column}.transit-page-tools{width:100%;justify-content:flex-start;flex-wrap:wrap}.transit-page-tools .transit-search{width:min(420px,100%)}}@media(max-width:1050px){.transit-metrics{grid-template-columns:repeat(2,1fr)}.transit-source-rules{grid-template-columns:1fr}}@media(max-width:620px){.transit-metrics{grid-template-columns:1fr}.transit-page-tools>*{width:100%!important}}

.transit-group-row{background:#eaf3ff!important;cursor:pointer}.transit-group-row td{border-top:2px solid #c8dbef;font-weight:600}.transit-group-row:hover{background:#dcecff!important}.invoice-expand{width:27px;height:27px;margin-right:8px;border:1px solid #a9c5e3;border-radius:7px;background:#fff;color:#1f61aa;font-weight:800;cursor:pointer}.transit-part-row td:nth-child(2){padding-left:47px}.group-psh-editor,.psh-maintain{display:flex;align-items:center;gap:6px}.group-psh-editor input,.part-psh-input{width:165px;height:32px;padding:0 8px;border:1px solid #aec6df;border-radius:6px;background:#fff;color:#31506f}.group-psh-editor button,.psh-maintain button{height:32px;padding:0 9px;border:1px solid #2b69ad;border-radius:6px;background:#fff;color:#1f5ea3;font-weight:700;cursor:pointer}.group-psh-editor button{background:#2162aa;color:#fff}.psh-value{max-width:175px;overflow:hidden;text-overflow:ellipsis}.psh-value.empty{color:#8b6a32}

.transit-table th:nth-child(10),.transit-table th:nth-child(12),.transit-table td:nth-child(6),.transit-table td:nth-child(10),.transit-table td:nth-child(12){text-align:right;font-variant-numeric:tabular-nums}.transit-table th:nth-child(11),.transit-table td:nth-child(11){text-align:center}.transit-table td{height:34px;padding:5px 9px}.invoice-expand{width:25px;height:25px;margin-right:7px;border-radius:6px}.transit-part-row td:nth-child(2){padding-left:44px}.group-psh-editor,.psh-maintain{gap:5px;min-width:175px;min-height:28px}.psh-display{cursor:text;border-radius:6px}.psh-display:hover{background:#fff;box-shadow:inset 0 0 0 1px #9ebddb}.group-psh-editor input,.part-psh-input{width:155px;height:28px;padding:0 7px;border-radius:5px}.group-psh-editor button,.psh-maintain button{height:28px;padding:0 7px;border-radius:5px;background:#2162aa;color:#fff;font-size:12px}.group-psh-editor button.cancel,.psh-maintain button.cancel{border-color:#cbd7e3;background:#fff;color:#60748b}.psh-value{display:block;min-height:20px}
.editable-purchase-price{border:0;background:transparent;color:inherit;font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.editable-purchase-price:hover{text-decoration:underline;text-underline-offset:2px}.editable-purchase-price.missing-price{color:#b42318;font-weight:700;text-decoration:underline;text-underline-offset:2px}.editable-purchase-price.adjusted-purchase-price{color:#c62828;font-weight:800}
.transit-table th,.transit-table td{text-align:left}.transit-table th:nth-child(7),.transit-table th:nth-child(11),.transit-table th:nth-child(13),.transit-table td:nth-child(7),.transit-table td:nth-child(11),.transit-table td:nth-child(13){text-align:right;font-variant-numeric:tabular-nums}.transit-table th:nth-child(12),.transit-table td:nth-child(12){text-align:center}.transit-table td:nth-child(3){color:#173f70;font-weight:700}.transit-table td:nth-child(6){color:#0c4e93;font-weight:700}
.group-smx-editor{min-width:145px;min-height:28px}.group-smx-editor.smx-display{padding:5px 7px;border-radius:6px;cursor:text}.group-smx-editor.smx-display:hover{background:#fff;box-shadow:inset 0 0 0 1px #8eb0d3}.group-smx-editor:not(.smx-display){display:flex;align-items:center;gap:4px}.group-smx-editor input{width:118px;height:28px;padding:0 5px;border:1px solid #8eb0d3;border-radius:5px}.group-smx-editor button{height:28px;padding:0 7px;border:1px solid #2b69ad;border-radius:5px;background:#2162aa;color:#fff;font-size:12px;font-weight:700;cursor:pointer}.group-smx-editor button.cancel{border-color:#cbd7e3;background:#fff;color:#60748b}
.transit-page-tools select{font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif;color:#17365d}.transit-table{min-width:1370px;table-layout:auto;font-size:12px}.transit-table th{padding:7px 8px;font-size:12px}.transit-table td{height:28px;padding:3px 8px;line-height:1.25}.transit-table th:nth-child(6),.transit-table td:nth-child(6){width:125px;text-align:left!important}.transit-table th:nth-child(1){width:62px}.transit-table th:nth-child(2){width:112px}.transit-table th:nth-child(3){width:80px}.transit-table th:nth-child(5){width:132px}.transit-table th:nth-child(7){width:82px}.invoice-expand{width:23px;height:23px;margin-right:6px}.invoice-status{padding:3px 7px}.transit-group-row td{border-top-width:1px}.transit-part-row td:nth-child(2){padding-left:37px}
.transit-part-row td,.transit-part-row td strong{font-weight:400!important}.transit-part-row .invoice-status{font-weight:700!important}
.transit-table th:nth-child(7),.transit-table td:nth-child(7),.transit-table th:nth-child(10),.transit-table td:nth-child(10),.transit-table th:nth-child(12),.transit-table td:nth-child(12){text-align:right!important;font-variant-numeric:tabular-nums}.transit-table th:nth-child(11),.transit-table td:nth-child(11){text-align:center!important}.transit-table th:nth-child(13),.transit-table td:nth-child(13){text-align:left!important}.transit-edit-backdrop{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(12,35,61,.48);backdrop-filter:blur(2px)}.transit-edit-backdrop.open{display:flex}.transit-edit-dialog{width:min(430px,calc(100vw - 32px));padding:22px;border:1px solid #d7e3ef;border-radius:14px;background:#fff;box-shadow:0 24px 60px rgba(9,37,68,.24)}.transit-edit-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.transit-edit-head h3{margin:0;color:#173a63;font-size:20px}.transit-edit-head button{width:32px;height:32px;border:0;border-radius:50%;background:#eff4f8;color:#526a82;font-size:20px;cursor:pointer}.transit-edit-dialog>p{margin:10px 0 18px;color:#6c8096;font-size:13px;line-height:1.5}.transit-edit-dialog label,.transit-edit-dialog label span{display:block}.transit-edit-dialog label span{margin-bottom:7px;color:#294c70;font-size:13px;font-weight:700}.transit-edit-dialog input{width:100%;height:42px;box-sizing:border-box;padding:0 11px;border:1px solid #a9bfd8;border-radius:8px;color:#173a63;font-size:14px;outline:0}.transit-edit-dialog input:focus{border-color:#2567ad;box-shadow:0 0 0 3px rgba(37,103,173,.12)}.transit-edit-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.transit-edit-actions .btn{height:38px}.psh-display,.smx-display{cursor:pointer}
.transit-table{width:100%;min-width:1370px;table-layout:auto}.transit-table th,.transit-table td{white-space:nowrap}.transit-table th:nth-child(8),.transit-table td:nth-child(8){width:112px!important}.transit-table th:nth-child(13),.transit-table td:nth-child(13){width:165px!important}.group-smx-editor{min-width:105px}.group-psh-editor,.psh-maintain{min-width:145px}
.transit-table-wrap{overflow:auto;scrollbar-gutter:stable both-edges}.transit-table{table-layout:fixed!important}.transit-table th:nth-child(1){width:62px}.transit-table th:nth-child(2){width:116px}.transit-table th:nth-child(3){width:80px}.transit-table th:nth-child(4){width:180px}.transit-table th:nth-child(5){width:136px}.transit-table th:nth-child(6){width:126px}.transit-table th:nth-child(7){width:86px}.transit-table th:nth-child(8){width:116px!important}.transit-table th:nth-child(9){width:76px}.transit-table th:nth-child(10){width:100px}.transit-table th:nth-child(11){width:70px}.transit-table th:nth-child(12){width:130px}.transit-table th:nth-child(13){width:170px!important}.transit-invoice-link{max-width:100%;padding:0;border:0;background:transparent;color:#0757a6;font:inherit;font-weight:700;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.transit-invoice-link:hover,.transit-invoice-link:focus-visible{text-decoration-color:currentColor;outline:none}
.transit-add-modal{width:min(980px,calc(100vw - 32px))}.transit-add-help{margin:2px 0 12px;color:#647b93;font-size:13px;line-height:1.5}.transit-paste-data{width:100%;box-sizing:border-box;padding:12px;border:1px solid #b7cade;border-radius:9px;background:#f8fbff;color:#244663;font:13px/1.55 Consolas,"Microsoft YaHei",monospace;resize:vertical;outline:0}.transit-paste-data:focus{border-color:#2b68ad;box-shadow:0 0 0 3px rgba(43,104,173,.12)}.transit-paste-tools{display:flex;align-items:center;gap:12px;margin:10px 0}.transit-paste-tools span{color:#6c8096;font-size:13px}.transit-add-preview{max-height:270px;overflow:auto;border:1px solid #dce5ee;border-radius:9px}.transit-add-preview table{width:100%;border-collapse:collapse;font-size:12px}.transit-add-preview th{position:sticky;top:0;padding:8px;background:#315f99;color:#fff;text-align:left;white-space:nowrap}.transit-add-preview td{padding:7px 8px;border-bottom:1px solid #e4ebf2;color:#31506f;white-space:nowrap}.transit-add-preview td[colspan]{padding:24px;text-align:center;color:#7a8ca0}
.transit-batch-meta{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:12px;margin-bottom:12px}.transit-batch-meta label{color:#294d72;font-size:13px;font-weight:700}.transit-batch-meta input,.transit-batch-meta select{display:block;width:100%;height:40px;box-sizing:border-box;margin-top:6px;padding:0 10px;border:1px solid #b7cade;border-radius:8px;background:#fff;color:#274967}@media(max-width:800px){.transit-batch-meta{grid-template-columns:1fr}}
.invoice-attachment-link{padding:1px 0;border:0;border-bottom:1px dashed #3271b7;background:transparent;color:#0c4e93;font:inherit;font-weight:700;cursor:pointer}.invoice-attachment-link:hover{color:#174f91;border-bottom-style:solid}.transit-attachment-backdrop{position:fixed;inset:0;z-index:1210;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(12,35,61,.5);backdrop-filter:blur(2px)}.transit-attachment-backdrop.open{display:flex}.transit-attachment-dialog{width:min(720px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 40px));overflow:auto;padding:22px;border:1px solid #d7e3ef;border-radius:14px;background:#fff;box-shadow:0 24px 60px rgba(9,37,68,.26)}.transit-attachment-dialog .transit-edit-head small{display:block;margin-bottom:4px;color:#74879c;font-size:12px}.attachment-records{display:grid;gap:10px;margin-top:18px}.attachment-records article{padding:14px;border:1px solid #dbe5ef;border-radius:10px;background:#f8fbff}.attachment-records article>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.attachment-records article>div:first-child b{color:#173e6d}.attachment-records article>div:first-child span{color:#73869b;font-size:12px}.attachment-records dl{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:13px 0}.attachment-records dl div{min-width:0}.attachment-records dt{color:#8392a4;font-size:12px}.attachment-records dd{margin:3px 0 0;color:#31506f;font-size:13px}.attachment-records article>button{padding:7px 10px;border:1px solid #a9c1dc;border-radius:7px;background:#fff;color:#17599f;font-weight:700;cursor:pointer}.attachment-empty{padding:28px;border:1px dashed #c8d6e5;border-radius:10px;color:#718398;text-align:center}@media(max-width:700px){.attachment-records dl{grid-template-columns:repeat(2,1fr)}.attachment-records article>div:first-child{align-items:flex-start;flex-direction:column}}

/* v152: content-sized responsive transit columns and compact attachments */
.transit-table{width:max-content!important;min-width:100%!important;table-layout:auto!important}
.transit-table th,.transit-table td{width:auto!important;min-width:max-content;white-space:nowrap}
.transit-table th:nth-child(4),.transit-table td:nth-child(4){min-width:15ch!important}
.transit-table th:nth-child(6),.transit-table td:nth-child(6){min-width:11ch!important}
.transit-table th:nth-child(7),.transit-table td:nth-child(7),.transit-table th:nth-child(16),.transit-table td:nth-child(16),.transit-table th:nth-child(18),.transit-table td:nth-child(18){text-align:right!important;font-variant-numeric:tabular-nums}
.transit-table th:nth-child(17),.transit-table td:nth-child(17){text-align:center!important}
.transit-table thead th{text-align:center!important}
.transit-table th:nth-child(13),.transit-table td:nth-child(13),.transit-table th:nth-child(14),.transit-table td:nth-child(14){width:1%!important;min-width:max-content!important;padding-left:1ch!important;padding-right:1ch!important}
.transit-table td:nth-child(5)>strong{display:block;width:100%}.transit-invoice-with-icons{display:flex;width:100%;align-items:center;justify-content:space-between;gap:7px;white-space:nowrap}.transit-quick-icons{display:inline-flex;flex:0 0 auto;justify-content:flex-end;gap:3px;white-space:nowrap}.transit-quick-attachment{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid #b9cbe0;border-radius:5px;background:#f3f8fe;color:#1f64aa;cursor:pointer}.transit-quick-attachment svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.transit-quick-attachment:hover{border-color:#2d70b5;background:#e7f2ff}.transit-quick-attachment.unavailable{border-color:#d8e0e8;background:#f4f5f7;color:#a7b0ba;cursor:default}.transit-quick-attachment:disabled{opacity:1}.transit-group-row td,.transit-part-row td{height:34px!important;box-sizing:border-box;line-height:1.25}.transit-table-wrap{scrollbar-gutter:stable both-edges}
.transit-table th:nth-child(8),.transit-table td:nth-child(8),.transit-table th:nth-child(9),.transit-table td:nth-child(9),.transit-table th:nth-child(10),.transit-table td:nth-child(10),.transit-table th:nth-child(11),.transit-table td:nth-child(11),.transit-table th:nth-child(12),.transit-table td:nth-child(12){text-align:center!important;font-variant-numeric:tabular-nums}
.transit-table th:nth-child(13),.transit-table td:nth-child(13){text-align:center!important;font-variant-numeric:tabular-nums}
.transit-page-tools{gap:6px!important}.transit-page-tools .transit-search{width:250px!important}.transit-page-tools select{width:auto;min-width:118px;height:34px;padding:0 24px 0 8px}.transit-page-tools .btn{height:34px;padding:0 10px;font-size:12px}
.transit-table tbody tr{height:20px}.transit-table tbody td{height:20px;padding-top:0;padding-bottom:0}

/* Keep transit columns stable when invoice detail rows are expanded. */
.transit-table{width:100%!important;min-width:max(100%,1668px)!important;table-layout:fixed!important}
.transit-table thead th:nth-child(1){width:58px!important}.transit-table thead th:nth-child(2){width:108px!important}.transit-table thead th:nth-child(3){width:75px!important}.transit-table thead th:nth-child(4){width:140px!important}.transit-table thead th:nth-child(5){width:175px!important}.transit-table thead th:nth-child(6){width:120px!important}.transit-table thead th:nth-child(7){width:80px!important}.transit-table thead th:nth-child(8){width:85px!important}.transit-table thead th:nth-child(9){width:75px!important}.transit-table thead th:nth-child(10){width:90px!important}.transit-table thead th:nth-child(11){width:58px!important}.transit-table thead th:nth-child(12){width:58px!important}.transit-table thead th:nth-child(13){width:120px!important}.transit-table thead th:nth-child(14){width:145px!important}.transit-table thead th:nth-child(15){width:55px!important}.transit-table thead th:nth-child(16){width:75px!important}.transit-table thead th:nth-child(17){width:55px!important}.transit-table thead th:nth-child(18){width:96px!important}
.transit-table tbody td{min-width:0!important;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.transit-table tbody td:nth-child(13){width:120px!important;min-width:0!important}.transit-table tbody td:nth-child(14){width:145px!important;min-width:0!important}
.transit-table tbody tr,.transit-table tbody td,.transit-table tbody .transit-group-row>td,.transit-table tbody .transit-part-row>td{height:22px!important;box-sizing:border-box;line-height:20px!important;padding-top:0!important;padding-bottom:0!important}
.transit-table tbody .invoice-expand{width:18px!important;height:18px!important;margin-right:4px;padding:0}
.transit-table tbody .invoice-status{padding:1px 6px}
.transit-table tbody .transit-quick-attachment{width:20px;height:20px}
.transit-table tbody .group-smx-editor,.transit-table tbody .group-psh-editor,.transit-table tbody .psh-maintain{min-height:20px!important}
.transit-table tbody .group-smx-editor.smx-display{padding:0 4px!important}
.transit-table tbody .group-smx-editor input,.transit-table tbody .group-psh-editor input,.transit-table tbody .part-psh-input{height:20px!important}
.transit-table tbody .group-smx-editor button,.transit-table tbody .group-psh-editor button,.transit-table tbody .psh-maintain button{height:20px!important;padding:0 4px!important}

/* Keep invoice attachment actions on the same right-aligned three-column rail. */
.transit-invoice-with-icons{display:grid;grid-template-columns:minmax(0,1fr) 66px;align-items:center;gap:7px;width:100%;min-width:0}
.transit-invoice-with-icons>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}
.transit-quick-icons{display:grid;grid-template-columns:repeat(3,20px);gap:3px;width:66px;min-width:66px;justify-content:end}
.transit-table tbody .transit-quick-attachment{box-sizing:border-box;width:20px!important;height:20px!important;margin:0!important}

/* Show complete invoice IDs: let the invoice column grow and scroll with the table. */
.transit-table{width:max-content!important;table-layout:auto!important}
.transit-table thead th:nth-child(5),.transit-table tbody td:nth-child(5){width:auto!important;min-width:220px!important}
.transit-table tbody td:nth-child(5){overflow:visible!important;text-overflow:clip!important}
.transit-table tbody td:nth-child(5)>strong{width:max-content;min-width:100%}
.transit-invoice-with-icons{width:max-content;min-width:100%;grid-template-columns:max-content 66px}
.transit-invoice-with-icons>span:first-child{min-width:max-content;overflow:visible;text-overflow:clip}

/* Reserve enough room for the date plus the expanded-row indentation. */
.transit-table thead th:nth-child(2),.transit-table tbody td:nth-child(2){width:152px!important;min-width:152px!important}
.transit-table tbody td:nth-child(2){overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}

/* Emphasize invoice IDs without changing their intrinsic, content-sized column. */
#intransit .transit-table tbody .transit-group-row td:nth-child(5),
#intransit .transit-table tbody .transit-group-row td:nth-child(5) .transit-invoice-with-icons>span:first-child{font-weight:700!important}
#intransit .transit-table tbody .transit-part-row td:nth-child(5){font-weight:400!important}

/* Compact transit toolbar, retaining clear action labels. */
#intransit .transit-page-tools{flex:0 1 auto;gap:6px}
#intransit .transit-page-tools .transit-search{width:190px!important;min-width:140px;height:32px!important;padding:0 9px;flex:0 1 190px}
#intransit #transitSupplier{width:150px!important;min-width:0}
#intransit #transitPshStatus{width:82px!important;min-width:0}
#intransit .transit-page-tools select{height:32px!important;padding:0 22px 0 8px}
#intransit .transit-page-tools .btn{height:32px!important;min-width:0;width:auto!important;padding:0 10px!important;border-radius:6px;box-shadow:none;font-size:12px}
@media(max-width:620px){#intransit .transit-page-tools{gap:6px;flex-wrap:wrap}#intransit .transit-page-tools .transit-search{flex:1 1 160px}}

/* Keep filters beside the heading at desktop and tablet widths. */
#intransit.view.active>.page-head.transit-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start!important;gap:6px 18px!important}
#intransit.view.active>.page-head.transit-head>div:first-child{display:contents}
#intransit .transit-head .eyebrow{grid-column:1;grid-row:1}
#intransit .transit-head h1{grid-column:1;grid-row:2;margin:0}
#intransit .transit-head p{grid-column:1/-1;grid-row:3;margin-top:2px}
#intransit.view.active>.page-head.transit-head>.transit-page-tools{grid-column:2;grid-row:1/3;align-self:center;width:auto!important;margin:0!important;flex-wrap:nowrap;justify-content:flex-end!important}
#intransit .transit-page-tools .btn{width:32px!important;min-width:32px!important;padding:0!important;display:inline-flex;align-items:center;justify-content:center}
#intransit .transit-page-tools .btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:800px){#intransit.view.active>.page-head.transit-head{grid-template-columns:1fr}#intransit.view.active>.page-head.transit-head>.transit-page-tools{grid-column:1;grid-row:4;justify-self:end;flex-wrap:wrap;max-width:100%}#intransit .transit-head p{grid-column:1}}

/* /intransit-invoices.css?v=20260913-07 */
.invoice-object-table{min-width:1050px}
.invoice-object-table th:nth-child(4){min-width:150px}
.invoice-object-table th:nth-child(7){min-width:175px}
.invoice-object-table th:nth-child(8),.invoice-object-table td:nth-child(5),.invoice-object-table td:nth-child(6),.invoice-object-table td:nth-child(8){text-align:right;font-variant-numeric:tabular-nums}
.invoice-object-table td:nth-child(4){color:#0c4e93;font-weight:700}
.invoice-smx-input{height:34px;padding:0 9px;border:1px solid transparent;border-radius:7px;background:#f3f7fb;color:#234867;cursor:pointer}
.invoice-smx-input:hover,.invoice-smx-input:focus{outline:none;border-color:#2b69ad;background:#fff;box-shadow:0 0 0 2px rgba(37,105,178,.12)}
.invoice-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:700}
.invoice-status.received{background:#e3f4eb;color:#177145}
.invoice-status.transit{background:#fff0dc;color:#b66300}


.invoice-object-table{min-width:980px}
.invoice-object-table th:nth-child(7){min-width:230px}
.invoice-smx-display{min-height:28px;padding:5px 8px;border-radius:6px;cursor:text}
.invoice-smx-display:hover{background:#f2f7fc;box-shadow:inset 0 0 0 1px #9ebddb}
.invoice-object-table [data-smx-editor]{display:flex;align-items:center;gap:5px}
.invoice-smx-input{height:28px;padding:0 7px;border:1px solid #8eb0d3;border-radius:5px;background:#fff}
.invoice-object-table [data-smx-editor] button{height:28px;padding:0 7px;border:1px solid #2b69ad;border-radius:5px;background:#2162aa;color:#fff;font-size:12px;font-weight:700;cursor:pointer}
.invoice-object-table [data-smx-editor] button.cancel{border-color:#cbd7e3;background:#fff;color:#60748b}
.invoice-status{padding:4px 8px}

.invoice-object-table{min-width:1120px}
.invoice-object-table th,.invoice-object-table td{text-align:left}
.invoice-object-table th:nth-child(5){min-width:150px}
.invoice-object-table th:nth-child(8){min-width:230px}
.invoice-object-table th:nth-child(9),.invoice-object-table td:nth-child(6),.invoice-object-table td:nth-child(7),.invoice-object-table td:nth-child(9){text-align:right;font-variant-numeric:tabular-nums}
.invoice-object-table td:nth-child(3),.invoice-object-table td:nth-child(5){color:#0c4e93;font-weight:700}


.transit-add-modal{width:min(1180px,calc(100vw - 36px));max-height:calc(100vh - 36px);overflow:hidden;padding:22px 24px;display:flex;flex-direction:column}
.transit-add-modal>.modal-head{align-items:flex-start;gap:10px;flex:0 0 auto}
.transit-modal-top-actions{order:2;margin:0 0 0 auto!important;padding:0!important;border:0!important;flex:0 0 auto}
.transit-add-modal>.modal-head>.close{order:3;flex:0 0 auto}
.transit-modal-top-actions .btn{height:36px;padding:8px 13px}
.transit-add-modal>.transit-batch-meta{grid-template-columns:1fr 1fr 1.45fr;margin-top:10px;gap:12px;flex:0 0 auto}
.transit-modal-grid{display:flex;gap:14px;margin-top:14px;min-height:0;overflow:hidden}
.transit-modal-main{min-width:0;overflow:auto;padding-right:3px}
.transit-modal-main section,.transit-audit-panel{border:1px solid #d8e2ee;border-radius:10px;background:#fff}
.transit-content-section,.transit-preview-section{margin-top:12px}
.transit-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px}
.transit-section-heading h3{margin:0;color:#17334f;font-size:15px}
.transit-section-heading p{margin:3px 0 0;color:#71849a;font-size:12px}
.transit-attachment-progress{padding:5px 9px;border-radius:999px;background:#fff1df;color:#a65c00;font-size:12px;font-weight:700;white-space:nowrap}
.transit-attachment-progress.complete{background:#e5f5ec;color:#177145}
.transit-attachment-row{display:grid;grid-template-columns:110px minmax(0,1fr) 90px 78px;align-items:center;gap:10px;min-height:50px;padding:8px 12px;border-top:1px solid #e5ebf2}
.transit-attachment-type{display:flex;flex-direction:column;gap:2px}
.transit-attachment-type strong{font-size:13px;color:#17334f}
.transit-attachment-type em{color:#d34234;font-style:normal;margin-left:2px}
.transit-attachment-type span,.transit-no-file{color:#8493a5;font-size:11px}
.transit-file-chips{display:flex;gap:6px;min-width:0;overflow-x:auto;padding:2px 0}
.transit-file-chip{display:inline-flex;align-items:center;max-width:210px;border:1px solid #cbd9e7;border-radius:6px;background:#f5f8fc;flex:0 0 auto}
.transit-file-chip button{border:0;background:none;color:#205d9d;cursor:pointer}
.transit-file-chip button:first-child{max-width:175px;padding:5px 7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.transit-file-chip .remove{padding:5px 7px;color:#bf392e;border-left:1px solid #dbe4ee}
.transit-attachment-state{font-size:12px;color:#a65c00}
.transit-attachment-state.ready{color:#177145}
.transit-upload-file{height:30px!important;padding:4px 8px!important;font-size:12px!important}
.transit-content-section .transit-paste-data{display:block;width:calc(100% - 24px);height:145px;min-height:145px;margin:0 12px;resize:vertical}
.transit-content-section .transit-paste-tools{margin:8px 12px 10px}
.transit-preview-section .transit-add-preview{margin:0 12px 12px;max-height:190px;overflow:auto;border:1px solid #dbe4ee;border-radius:7px}
.transit-preview-section table{margin:0}
.transit-preview-section thead{position:sticky;top:0;z-index:2}
.transit-audit-panel{min-height:0;overflow:hidden;display:flex;flex-direction:column}
.transit-attachment-audit{overflow:auto;padding:0 12px 12px}
.transit-audit-item{position:relative;display:grid;grid-template-columns:12px minmax(0,1fr);gap:8px;padding:8px 0}
.transit-audit-item:not(:last-child):after{content:"";position:absolute;left:5px;top:20px;bottom:-8px;width:1px;background:#d4e0ec}
.transit-audit-dot{width:9px;height:9px;margin-top:4px;border-radius:50%;background:#2f6fb5;z-index:1}
.transit-audit-item strong{display:block;font-size:12px;color:#264865}
.transit-audit-item p{margin:2px 0;color:#335b7d;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.transit-audit-item small{color:#8797a8;font-size:10px}
.transit-audit-empty{padding:14px 4px;color:#8493a5;font-size:12px;line-height:1.6}
.transit-add-modal>.modal-actions{flex:0 0 auto}

@media(max-width:900px){.transit-modal-grid{flex-direction:column;overflow:auto}
.transit-audit-panel{max-height:180px}
.transit-add-modal>.transit-batch-meta{grid-template-columns:1fr}
.transit-attachment-row{grid-template-columns:90px minmax(0,1fr) 72px}
.transit-upload-file{grid-column:2/4;justify-self:end}
}

.transit-readonly .transit-batch-meta input:disabled,.transit-readonly .transit-batch-meta select:disabled,.transit-readonly textarea:disabled{color:#294b6d;background:#f5f8fb;opacity:1}
.transit-readonly .transit-paste-tools{display:none}

.transit-modal-main{display:flex;flex:1 1 auto;min-width:0;min-height:0;overflow:auto;padding-right:3px;flex-direction:column}
.transit-modal-main .transit-content-section{order:1;margin:0}
.transit-modal-main .transit-preview-section{order:2;margin-top:12px}
.transit-modal-rail{display:flex;flex:0 0 320px;min-width:0;min-height:0;overflow:auto;flex-direction:column;gap:12px;padding-right:2px}
.transit-modal-rail .transit-audit-panel{flex:1 1 180px;min-height:150px}
.transit-modal-rail .transit-attachment-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;padding:9px 10px}
.transit-modal-rail .transit-file-chips{grid-column:1/-1;display:grid;gap:5px;overflow:visible}
.transit-modal-rail .transit-upload-file{grid-column:2;justify-self:end}
.transit-modal-rail .transit-attachment-state{grid-column:1;grid-row:3;align-self:center}
.transit-file-chip{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;max-width:none}
.transit-file-chip button:first-child{max-width:none;padding:6px 7px;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;word-break:break-word;font-size:12px;line-height:1.35}
.transit-file-chip .remove{align-self:stretch}
.transit-content-section .transit-paste-data{height:260px;min-height:210px}
.transit-preview-section .transit-add-preview{max-height:240px}
.transit-readonly .transit-attachment-row{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:900px){.transit-modal-grid{flex-direction:column;overflow:auto}
.transit-modal-rail{overflow:visible}
.transit-modal-main{overflow:visible}
.transit-content-section .transit-paste-data{height:190px}
}

@media(max-width:900px){.transit-modal-rail{flex-basis:auto}
}

/* v152 compact attachment rail */
.transit-add-modal>.transit-batch-meta{grid-template-columns:repeat(4,minmax(0,1fr))}
.transit-modal-rail .transit-attachment-section{border:1px solid #d8e2ee;border-radius:10px;background:#fff}
.transit-modal-rail .transit-section-heading{padding:9px 10px}.transit-modal-rail .transit-section-heading p{white-space:nowrap;font-size:11px}
.transit-modal-rail .transit-attachment-row{display:grid;grid-template-columns:64px minmax(0,1fr) 68px 64px;min-height:42px;padding:5px 9px;gap:6px;align-items:center}
.transit-modal-rail .transit-attachment-type{display:block}.transit-modal-rail .transit-attachment-type span{display:none}
.transit-modal-rail .transit-file-chips{grid-column:auto;display:flex;overflow:hidden;padding:0}
.transit-modal-rail .transit-file-chip{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;max-width:none}
.transit-modal-rail .transit-file-chip button:first-child{padding:4px 5px;font-size:11px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.transit-modal-rail .transit-attachment-state{grid-column:auto;grid-row:auto;font-size:11px;white-space:nowrap}
.transit-modal-rail .transit-upload-file{grid-column:auto;justify-self:end;height:27px!important;padding:3px 6px!important;font-size:11px!important}
@media(max-width:900px){.transit-add-modal>.transit-batch-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.transit-modal-rail .transit-section-heading p{white-space:normal}}
@media(max-width:560px){.transit-add-modal>.transit-batch-meta{grid-template-columns:1fr}.transit-modal-rail .transit-attachment-row{grid-template-columns:58px minmax(0,1fr) 62px}}

/* /supplier-management.css?v=20260915-02 */
.supplier-panel{margin-top:16px;overflow:hidden}.supplier-table-wrap{max-height:calc(100vh - 190px)}.supplier-table{width:100%;table-layout:fixed;min-width:760px}.supplier-table th:nth-child(1){width:16%}.supplier-table th:nth-child(2){width:15%}.supplier-table th:nth-child(3){width:39%}.supplier-table th:nth-child(4){width:15%}.supplier-table th:nth-child(5){width:15%}.supplier-table td{font-weight:400}.supplier-code-link{border:0;background:transparent;padding:0;color:#0758a8;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.supplier-code-link:hover{text-decoration:underline}.supplier-dialog{width:min(880px,95vw)}.supplier-profile-dialog{width:min(980px,96vw)}.supplier-profile-body{max-height:calc(86vh - 136px);overflow:auto}.supplier-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.supplier-section-head h3,.supplier-history h3{margin:0;color:#17365d}.supplier-section-head p{margin:4px 0 0;color:#718299;font-size:12px}.supplier-files,.supplier-history{padding:0 22px 20px}.supplier-file-list,.supplier-history-list{margin-top:10px;border:1px solid #dbe4ee;border-radius:9px;overflow:hidden}.supplier-file-item,.supplier-history-item{display:grid;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid #e1e8f0;font-size:13px;color:#17365d}.supplier-file-item{grid-template-columns:minmax(180px,1fr) 90px 150px 64px}.supplier-history-item{grid-template-columns:150px 130px minmax(220px,1fr)}.supplier-file-item:last-child,.supplier-history-item:last-child{border-bottom:0}.supplier-file-item button{border:0;background:transparent;color:#b42318;cursor:pointer}.supplier-empty{padding:18px;text-align:center;color:#718299;font-size:13px}.supplier-upload-btn{cursor:pointer}.supplier-page .parts-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.supplier-page .parts-edit-grid textarea{min-height:78px;border:1px solid #cbd8e7;border-radius:8px;padding:9px 10px;color:#17365d;resize:vertical}.supplier-page .parts-edit-grid label.full{grid-column:1/-1}@media(max-width:800px){.supplier-page .parts-edit-grid{grid-template-columns:1fr}.supplier-page .parts-edit-grid label.full{grid-column:auto}.supplier-file-item,.supplier-history-item{grid-template-columns:1fr}.supplier-section-head{align-items:flex-start;flex-direction:column}}
.supplier-file-item{grid-template-columns:minmax(180px,1fr) 90px 150px 110px}.supplier-file-item>div{display:flex;gap:10px;justify-content:flex-end}.supplier-file-item button[data-file-download]{color:#0758a8}
@media(max-width:800px){.supplier-file-item{grid-template-columns:1fr}.supplier-file-item>div{justify-content:flex-start}}
.supplier-table{table-layout:fixed}.supplier-table th,.supplier-table td{text-align:center!important;vertical-align:middle}.supplier-table th:nth-child(1),.supplier-table td:nth-child(1){width:17%}.supplier-table th:nth-child(2),.supplier-table td:nth-child(2){width:15%}.supplier-table th:nth-child(3),.supplier-table td:nth-child(3){width:36%}.supplier-table th:nth-child(4),.supplier-table td:nth-child(4){width:17%}.supplier-table th:nth-child(5),.supplier-table td:nth-child(5){width:15%}

/* /inventory-info.css?v=20260913-01 */
.inventory-page{--inventory-line:#dbe4ee}.inventory-panel{margin-top:16px;overflow:hidden}.inventory-table-wrap{max-height:calc(100vh - 220px)}.inventory-table{width:max-content;min-width:100%;table-layout:auto;font-family:Consolas,monospace;font-variant-numeric:tabular-nums}.inventory-table th,.inventory-table td{white-space:nowrap}.inventory-table th:nth-child(1),.inventory-table td:nth-child(1){min-width:120px}.inventory-table th:nth-child(2),.inventory-table td:nth-child(2){min-width:190px}.inventory-table th:nth-child(3),.inventory-table td:nth-child(3){min-width:110px}.inventory-table th:nth-child(4),.inventory-table td:nth-child(4){min-width:72px}.inventory-table th:nth-child(n+5),.inventory-table td:nth-child(n+5){min-width:88px}.inventory-table td:nth-child(2){overflow:visible;text-overflow:clip}.inventory-table .num{text-align:right}.inventory-table .line-side{border-left:2px solid #f0a33a}.inventory-table tbody td:nth-child(10){background:#fff8e8}.inventory-refresh-meta{height:40px;display:flex;align-items:center;padding:0 10px;border:1px solid #cad7e6;border-radius:8px;background:#fff;color:#718299;font-size:12px;white-space:nowrap}.inventory-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-top:1px solid var(--inventory-line);color:#60748b;font-size:12px}.inventory-empty{text-align:center!important;color:#718299!important;padding:28px!important}@media(max-width:1250px){.inventory-refresh-meta{order:4}.inventory-table-wrap{max-height:calc(100vh - 280px)}}

/* Inventory toolbar: keep the title and compact controls in one aligned band at split-screen widths. */
#inventoryinfo>.page-head.transit-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:center!important;gap:12px 18px;margin-bottom:16px;text-align:left}
#inventoryinfo>.page-head.transit-head>div:first-child{min-width:0;margin:0;text-align:left}
#inventoryinfo>.page-head.transit-head .transit-page-tools{display:grid;grid-template-columns:minmax(170px,1fr) auto auto;align-items:center;justify-content:stretch;gap:6px;width:100%;min-width:0;flex:none}
#inventoryinfo>.page-head.transit-head .transit-search{grid-column:1;width:100%;min-width:0;height:36px;padding:7px 9px}
#inventoryinfo>.page-head.transit-head .inventory-refresh-meta{grid-column:1/-1;grid-row:2;height:28px;max-width:100%;padding-inline:8px;overflow:hidden;text-overflow:ellipsis;font-size:11px}
#inventoryinfo>.page-head.transit-head .transit-page-tools>.btn{height:36px;padding-inline:9px;font-size:12px}
#inventoryinfo table.inventory-table,#inventoryinfo table.inventory-table :is(th,td){font-family:"DM Sans","Microsoft YaHei",sans-serif!important}
@media(max-width:850px){#inventoryinfo>.page-head.transit-head{grid-template-columns:minmax(0,1fr);gap:10px}#inventoryinfo>.page-head.transit-head .transit-page-tools{grid-template-columns:minmax(130px,1fr) auto auto}}
@media(max-width:520px){#inventoryinfo>.page-head.transit-head .transit-page-tools{grid-template-columns:minmax(0,1fr) auto}#inventoryinfo>.page-head.transit-head .transit-search{grid-column:1/-1}#inventoryinfo>.page-head.transit-head .inventory-refresh-meta{grid-column:1/-1}}

/* /inventory-detail.css?v=20260928-sync-feedback */
.inventory-detail-page{--inventory-line:#dbe4ee;min-width:0}
main>.content:has(>#inventorydetail.view.active){padding-bottom:14px!important;min-height:0!important}
#inventorydetail.view.active{display:flex!important;flex-direction:column;height:calc(100dvh - 14px);min-height:0;overflow:hidden}
.inventory-detail-head{display:flex;align-items:center!important;justify-content:space-between;gap:12px 18px;margin-bottom:12px;text-align:left;flex:0 0 auto}
#inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head{display:grid!important;grid-template-columns:minmax(145px,auto) minmax(0,1fr)!important;flex-direction:row!important;align-items:center!important;column-gap:12px;row-gap:0}
#inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head>div:first-child{width:auto!important;max-width:none!important;min-width:0;align-self:center;text-align:left}
.inventory-detail-head h1{margin-bottom:0}
.inventory-detail-meta{display:block;margin-top:4px;color:#637a94;font-size:12px;line-height:18px;overflow-wrap:anywhere}
.inventory-detail-tools{display:grid!important;grid-template-columns:minmax(105px,1.15fr) minmax(82px,.82fr) minmax(66px,.58fr) minmax(66px,.58fr) auto;align-items:center;justify-content:stretch;gap:5px;flex:1 1 auto;width:auto!important;min-width:0}
.inventory-detail-tools>*{min-width:0}
#inventorydetail .inventory-detail-tools .transit-search{width:100%!important;min-width:0;height:38px;box-sizing:border-box;padding:0 9px;gap:6px;background:#fff}
.inventory-detail-tools .transit-search input{width:100%;min-width:0;height:100%;font:400 13px/1.2 "DM Sans","Microsoft YaHei",sans-serif}
.inventory-detail-tools>select,.inventory-detail-tools>input{width:100%;height:38px;min-width:0;box-sizing:border-box;padding:0 9px;border:1px solid #cad7e6;border-radius:8px;background:#fff;color:#17365d;font:400 13px/1.2 "DM Sans","Microsoft YaHei",sans-serif}
.inventory-detail-tools input::placeholder{color:#718299;opacity:1;font:400 13px/1.2 "DM Sans","Microsoft YaHei",sans-serif}
.inventory-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;flex:0 0 auto}
.inventory-detail-actions .btn.inventory-icon-button{display:grid;place-items:center;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;border-radius:7px;font-size:18px;line-height:1;white-space:nowrap}
.inventory-detail-actions .btn.inventory-icon-button span{display:block}
.inventory-detail-actions .btn.inventory-icon-button:hover{transform:none}
.inventory-detail-actions .btn.inventory-icon-button[hidden]{display:none!important}
.inventory-detail-panel{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;margin:0;overflow:hidden}
.inventory-detail-table-wrap{flex:1 1 auto;min-height:0;max-height:none;overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain}
.inventory-detail-page .inventory-detail-table{width:100%!important;min-width:var(--inventory-content-width,1100px)!important;table-layout:fixed!important;border-collapse:collapse;font-family:"Microsoft YaHei",sans-serif;font-size:12px}
.inventory-detail-page .inventory-detail-table th,.inventory-detail-page .inventory-detail-table td{box-sizing:border-box;overflow:hidden;padding:1px 8px;text-align:left!important;text-overflow:ellipsis;white-space:nowrap}
.inventory-detail-page .inventory-detail-table th{height:30px;padding-top:0;padding-bottom:0;line-height:30px;font-weight:700}
.inventory-detail-page .inventory-detail-table td{height:22px;line-height:20px;font-weight:400}
.inventory-detail-page .inventory-detail-table :is(th,td):nth-child(5){text-align:right!important;font-variant-numeric:tabular-nums}
.inventory-detail-page .inventory-detail-table :is(th,td):nth-child(9),.inventory-detail-page .inventory-detail-table :is(th,td):nth-child(10){text-align:center!important}
.inventory-detail-table td.pn strong,.inventory-detail-table td.batch strong{font-weight:700}
.inventory-detail-empty{text-align:center!important;padding:28px!important;color:#718299!important}
.inventory-detail-footer{display:flex;justify-content:space-between;gap:8px 16px;padding:8px 12px;border-top:1px solid var(--inventory-line);color:#60748b;font-size:12px;flex:0 0 auto;flex-wrap:wrap}
.inventory-detail-notice{min-height:0;margin-top:6px;color:#637a94;font-size:12px;flex:0 0 auto}
.inventory-detail-notice:not(:empty){padding:5px 9px;border:1px solid #d6e2f0;border-radius:7px;background:#f7faff}
.inventory-detail-notice:empty{display:none}
.inventory-detail-notice:not(:empty){display:block!important;margin:0 0 8px;line-height:20px;color:#17365d}
@media(max-width:1350px){
 #inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head{align-items:center!important;flex-direction:row!important;gap:8px;margin-bottom:10px}
 #inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head>div:first-child{width:auto!important;min-width:125px;align-self:center}
 #inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head>.inventory-detail-tools{width:auto!important;grid-template-columns:minmax(95px,1.1fr) minmax(75px,.82fr) minmax(60px,.58fr) minmax(60px,.58fr) auto;justify-content:stretch}
}
@media(max-width:760px){
 #inventorydetail.view.active{height:calc(100dvh - 80px)}
 #inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head{gap:7px;margin-bottom:8px}
 #inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head>.inventory-detail-tools{grid-template-columns:minmax(0,1.4fr) minmax(110px,1fr);gap:6px}
 .inventory-detail-tools>.transit-search{grid-column:1/-1;width:100%!important}
 .inventory-detail-actions{grid-column:auto;width:auto;justify-content:flex-end;gap:4px}
 .inventory-detail-actions .btn.inventory-icon-button{width:30px;min-width:30px;height:30px;min-height:30px}
}
@media(min-width:761px) and (max-width:1050px){
 #inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head{grid-template-columns:minmax(125px,auto) minmax(0,1fr)!important;column-gap:8px}
 #inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head>.inventory-detail-tools{grid-template-columns:minmax(78px,1.1fr) minmax(65px,.9fr) minmax(54px,.7fr) minmax(54px,.7fr) auto;gap:4px}
 .inventory-detail-tools>select,.inventory-detail-tools>input{padding-inline:6px;font-size:12px}
 .inventory-detail-tools .transit-search{padding-inline:6px}
 .inventory-detail-actions{grid-column:auto}
}
@media(min-width:561px) and (max-width:760px){#inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head{grid-template-columns:minmax(112px,auto) minmax(0,1fr)!important;column-gap:7px}#inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head>.inventory-detail-tools{grid-template-columns:minmax(70px,1fr) minmax(58px,.8fr) minmax(48px,.65fr) minmax(48px,.65fr) auto;gap:3px}.inventory-detail-meta{font-size:10px;line-height:13px}.inventory-detail-tools>select,.inventory-detail-tools>input{padding-inline:4px;font-size:11px}.inventory-detail-tools .transit-search{padding-inline:4px}.inventory-detail-actions .btn.inventory-icon-button{width:26px;min-width:26px;height:28px;min-height:28px}}
@media(max-width:560px){#inventorydetail.view.active:not(#inventoryinfo)>.inventory-detail-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:6px}.inventory-detail-tools{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.inventory-detail-tools>.transit-search{grid-column:1/-1}.inventory-detail-actions{grid-column:1/-1;justify-content:flex-end}.inventory-detail-tools>*{height:34px!important}.inventory-detail-actions .btn.inventory-icon-button{height:30px!important}}

/* /shipping-details.css?v=20261004-01 */
#shippingdetails.view.active{display:flex!important;flex-direction:column;height:calc(100dvh - 18px);min-height:0;overflow:hidden}
#shippingdetails.view.active>.shipping-head{display:grid!important;grid-template-columns:minmax(170px,1fr) auto!important;align-items:center!important;gap:12px;margin-bottom:12px;flex-shrink:0}
.shipping-head h1{margin-bottom:0}.shipping-meta{font-size:12px;color:#68809c;display:block;margin-top:5px}
.shipping-tools{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
#shippingdetails .shipping-tools select{width:auto!important;max-width:155px!important;flex:0 1 auto!important}#shippingdetails .shipping-tools input[type=search]{width:200px!important;flex:0 1 200px!important}
.shipping-tools input,.shipping-tools select,.shipping-tools button{height:35px;min-width:0;border:1px solid #cad7e6;border-radius:8px;background:#fff;color:#17365d;padding:0 9px;font-size:12px}
.shipping-tools input[type=date]{width:132px}.shipping-tools input[type=search]{width:200px}.shipping-tools select{max-width:155px}.shipping-tools label{display:flex;align-items:center;gap:4px;font-size:12px;color:#60748b}
#shippingSync{width:34px;font-size:20px;padding:0}.shipping-tools button{cursor:pointer;white-space:nowrap}#shippingQuery{background:#285ea8;color:#fff}
.shipping-panel{display:flex;flex:1;min-height:0;flex-direction:column;padding:0!important;margin:0;overflow:hidden;border:1px solid #dbe4ee;border-radius:10px;background:white}
.shipping-wrap{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable}.shipping-table{border-collapse:collapse;width:100%;min-width:2040px;table-layout:fixed;font:12px 'Microsoft YaHei',sans-serif;color:#264568}
.shipping-table th{position:sticky;top:0;z-index:1;background:#45679e;color:#fff;height:30px;padding:0 8px;text-align:left;white-space:nowrap}
.shipping-table td{height:24px;padding:1px 8px;border-bottom:1px solid #dbe4ee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shipping-table tr:nth-child(even){background:#fffaf0}.shipping-table tr[data-row]{cursor:pointer}.shipping-table tr[data-row]:hover{background:#edf4ff}.shipping-table .num{text-align:right;font-variant-numeric:tabular-nums}.shipping-table small{color:#7b8fa9}.shipping-expand{width:21px;height:21px;border:1px solid #a8c3eb;border-radius:5px;background:#fff;color:#2862b2;padding:0;margin-right:6px;cursor:pointer}.shipping-batch{background:#edf4ff!important;color:#536c89}.shipping-empty{text-align:center;padding:28px!important}
.shipping-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:7px 12px;color:#647d99;font-size:12px;border-top:1px solid #dbe4ee}.shipping-pager{display:flex;gap:8px;align-items:center}.shipping-pager button{background:#fff;border:1px solid #dbe4ee;border-radius:5px;cursor:pointer}.shipping-pager button:disabled{opacity:.4;cursor:default}
.shipping-notice{font-size:12px;color:#36577e;margin-top:6px;padding:5px 9px;background:#f7faff;border:1px solid #d6e2f0;border-radius:7px;flex-shrink:0}
@media(max-width:1450px){#shippingdetails.view.active>.shipping-head{grid-template-columns:1fr!important;gap:8px}.shipping-tools{justify-content:flex-start}.shipping-tools input[type=search]{width:180px}.shipping-head h1{font-size:28px}}
@media(max-width:760px){#shippingdetails.view.active{height:calc(100dvh - 80px)}.shipping-tools{gap:5px}.shipping-tools input[type=date]{width:125px}.shipping-tools select{max-width:130px}.shipping-tools input[type=search]{width:175px}.shipping-meta{font-size:11px}}

/* /inventory-count.css?v=20260926-01 */
.inventory-count-page{--count-line:#dbe4ee}
.inventory-count-head{align-items:flex-end}
.inventory-count-tools{display:flex;align-items:center;gap:8px}
.inventory-count-tools .transit-search{width:280px}
.inventory-count-summary{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin:14px 0}
.count-metric{background:#fff;border:1px solid #dbe4ee;border-radius:10px;padding:12px 14px;box-shadow:0 3px 12px #16385b0a}
.count-metric span{display:block;color:#72839a;font-size:12px}
.count-metric strong{display:block;margin-top:5px;font-size:20px;color:#15345a;font-variant-numeric:tabular-nums}
.inventory-count-panel{overflow:hidden}
.inventory-count-toolbar{min-height:58px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--count-line)}
.inventory-zone-list{display:flex;gap:6px;flex-wrap:wrap}
.inventory-zone{border:1px solid #cbd8e8;background:#fff;color:#36577e;border-radius:7px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}
.inventory-zone.active{background:#315f9e;border-color:#315f9e;color:#fff}
.inventory-history{display:flex;align-items:center;gap:7px;color:#72839a;font-size:12px}
.inventory-history select{height:34px;max-width:255px;border:1px solid #cbd8e8;border-radius:7px;background:#fff;color:#36577e;padding:0 8px;font-size:12px}
.inventory-batch-meta{font-size:12px;color:#72839a;text-align:right}
.inventory-count-table-wrap{max-height:calc(100vh - 350px);overflow:auto}
.inventory-count-table{min-width:860px;width:100%;table-layout:fixed}
.inventory-count-table th,.inventory-count-table td{white-space:nowrap}
.inventory-count-table th:nth-child(1){width:92px}
.inventory-count-table th:nth-child(2){width:170px}
.inventory-count-table th:nth-child(3){width:auto}
.inventory-count-table th:nth-child(n+4){width:135px}
.inventory-count-table .num{text-align:right;font-variant-numeric:tabular-nums}
.inventory-count-table td:nth-child(2){font-weight:700}
.inventory-count-table .count-input{width:105px;height:30px;text-align:right;border:1px solid #cbd8e8;border-radius:6px;padding:0 8px;color:#123c70;background:#fff;font:inherit;font-variant-numeric:tabular-nums}
.inventory-count-table .count-input:focus{outline:2px solid #85b5f1;border-color:#3977c5}
.inventory-count-table .count-delta{font-weight:700}
.inventory-count-table .delta-plus{color:#b54708}
.inventory-count-table .delta-minus{color:#b42318}
.inventory-count-table .delta-zero{color:#687b91}
.count-status{display:inline-flex;border-radius:99px;padding:3px 8px;background:#eef2f6;color:#66768b;font-size:11px}
.count-status.done{background:#e9f5ec;color:#26713a}
.count-status.diff{background:#fff1ed;color:#b54708}
.count-status.submitted{background:#eaf1fc;color:#315f9e}
.inventory-count-empty{text-align:center!important;color:#72839a!important;padding:34px!important}
.inventory-count-note{min-height:22px;padding:8px 2px;color:#74859a;font-size:12px}
.inventory-count-note.error{color:#b42318}
@media(max-width:1100px){.inventory-count-toolbar{align-items:flex-start;flex-direction:column}.inventory-batch-meta{text-align:left}.inventory-history{flex-wrap:wrap}}
@media(max-width:900px){.inventory-count-head{align-items:stretch}.inventory-count-tools{flex-wrap:wrap}.inventory-count-tools .transit-search{width:100%}.inventory-count-summary{grid-template-columns:repeat(2,minmax(120px,1fr))}.inventory-count-table-wrap{max-height:calc(100vh - 410px)}}

/* /fx-analysis.css?v=20260912-03 */
.fx-page{padding-bottom:36px}.fx-page-head{align-items:flex-start}.fx-head-actions,.fx-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fx-demo-tag{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid #f0cf92;border-radius:9px;background:#fff8e8;color:#9a6408;font-size:12px;font-weight:700}.fx-rate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.fx-rate-card{position:relative;min-width:0;padding:18px;border:1px solid #d7e2ee;border-top:3px solid #2c67ae;border-radius:13px;background:#fff;box-shadow:0 6px 18px rgba(26,64,106,.05)}.fx-rate-card header{display:flex;justify-content:space-between;align-items:center;color:#597089;font-size:13px}.fx-rate-card header b{color:#183d68}.fx-rate-card .value{display:flex;align-items:baseline;gap:8px;margin:12px 0 8px;color:#122d4d}.fx-rate-card .value strong{font-size:30px;line-height:1}.fx-rate-card .value span{font-size:12px;color:#77899b}.fx-rate-card footer{display:flex;justify-content:space-between;gap:8px;color:#74869a;font-size:12px}.fx-rate-card .up{color:#138264}.fx-rate-card .down{color:#d65145}.fx-rate-card.risk{border-top-color:#e39b36}.fx-main-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:14px}.fx-page .panel{border:1px solid #d7e2ee;border-radius:13px;background:#fff;box-shadow:0 6px 18px rgba(26,64,106,.045)}.fx-trend-panel,.fx-risk-panel,.fx-scenario-panel,.fx-exposure-panel{padding:18px}.fx-panel-head,.fx-section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.fx-panel-head h2,.fx-section-title h2{margin:0;color:#17375d;font-size:17px}.fx-panel-head p,.fx-section-title p{margin:4px 0 0;color:#7b8da0;font-size:12px}.fx-filters select,.fx-search{height:36px;border:1px solid #d4dfeb;border-radius:8px;background:#fff;color:#2a4666;padding:0 10px}.fx-search{display:flex;align-items:center;gap:7px}.fx-search input{width:170px;border:0;outline:0;background:transparent}.fx-chart-summary{display:flex;gap:24px;margin:18px 0 2px;color:#72869a;font-size:12px}.fx-chart-summary b{margin-left:4px;color:#183d68}.fx-chart-wrap{height:250px}.fx-chart-wrap svg{display:block;width:100%;height:100%;overflow:visible}.fx-chart-legend{display:flex;gap:20px;color:#6d8298;font-size:12px}.fx-chart-legend span{display:flex;align-items:center;gap:6px}.fx-chart-legend i{display:block;width:18px;height:3px;border-radius:2px;background:#2f7ddd}.fx-chart-legend i.average{background:#83a5ca}.fx-chart-legend i.budget{height:0;border-top:2px dashed #e6a03b;background:none}.fx-risk-count{padding:5px 9px;border-radius:12px;background:#fff1dc;color:#b76d05;font-size:12px;font-weight:700}.fx-risk-item{display:grid;grid-template-columns:8px 1fr;gap:11px;padding:15px 0;border-bottom:1px solid #e7edf4}.fx-risk-item:last-child{border-bottom:0}.fx-risk-item i{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#e49a33}.fx-risk-item.high i{background:#d9574f}.fx-risk-item b{display:block;margin-bottom:4px;color:#213f61;font-size:13px}.fx-risk-item span{color:#75889d;font-size:12px;line-height:1.5}.fx-section{margin:20px 0}.fx-net-result{color:#62768c;font-size:13px}.fx-net-result span{margin-left:8px;color:#168366;font-size:18px}.fx-impact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:12px}.fx-impact-card{padding:16px;border:1px solid #d9e4ef;border-radius:12px;background:#fff}.fx-impact-card header{display:flex;justify-content:space-between;color:#5d7188;font-size:13px}.fx-impact-card header i{font-style:normal}.fx-impact-card strong{display:block;margin:13px 0 5px;color:#17385e;font-size:23px}.fx-impact-card p{margin:0;color:#7b8ea2;font-size:12px}.fx-impact-card em{display:block;margin-top:12px;color:#168366;font-size:12px;font-style:normal}.fx-impact-card em.negative{color:#d05b4f}.fx-scenario-panel{margin:16px 0}.fx-scenario-body{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.8fr);gap:30px;align-items:center;margin-top:18px}.fx-scenario-control label{display:flex;justify-content:space-between;color:#49637f;font-size:13px}.fx-scenario-control label strong{color:#1765b3}.fx-scenario-control input{width:100%;margin:18px 0}.fx-scenario-buttons{display:flex;gap:6px}.fx-scenario-buttons button{flex:1;height:30px;border:1px solid #d5e1ed;border-radius:7px;background:#fff;color:#536c86;cursor:pointer}.fx-scenario-buttons button.active{border-color:#2d70be;background:#eaf3ff;color:#145da8;font-weight:700}.fx-scenario-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.fx-scenario-results>div{padding:13px;border-radius:10px;background:#f4f7fa}.fx-scenario-results span{display:block;color:#6f8398;font-size:12px}.fx-scenario-results b{display:block;margin-top:8px;color:#17385e;font-size:17px}.fx-scenario-results .primary{background:#eaf3ff}.fx-scenario-results .primary b{color:#1765b3}.fx-exposure-panel{margin-top:16px}.fx-table-wrap{overflow:auto;margin-top:14px;border:1px solid #e0e8f0;border-radius:9px}.fx-table-wrap table{width:100%;min-width:1080px;border-collapse:collapse}.fx-table-wrap th{padding:10px 12px;background:#315f99;color:#fff;font-size:12px;text-align:left;white-space:nowrap}.fx-table-wrap td{padding:10px 12px;border-bottom:1px solid #e5ebf1;color:#274562;font-size:12px;white-space:nowrap}.fx-table-wrap tbody tr:nth-child(even){background:#fbf7eb}.fx-table-wrap .number{text-align:right}.fx-risk-badge{display:inline-flex;padding:4px 9px;border-radius:12px;font-weight:700}.fx-risk-badge.low{background:#e7f6ef;color:#147557}.fx-risk-badge.medium{background:#fff1dc;color:#b46b05}.fx-risk-badge.high{background:#fdebea;color:#c84b43}.fx-data-note{margin:12px 2px 0;color:#8292a3;font-size:11px;text-align:right}@media(max-width:1150px){.fx-rate-grid,.fx-impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fx-main-grid{grid-template-columns:1fr}.fx-scenario-body{grid-template-columns:1fr}}@media(max-width:760px){.fx-rate-grid,.fx-impact-grid,.fx-scenario-results{grid-template-columns:1fr}.fx-page-head,.fx-panel-head,.fx-section-title{flex-direction:column}.fx-head-actions{width:100%}.fx-chart-summary{gap:10px;justify-content:space-between}.fx-scenario-buttons{flex-wrap:wrap}.fx-scenario-buttons button{flex:0 0 calc(33.33% - 6px)}}

/* /fx-analysis-live.css?v=20260912-01 */
.fx-rate-card.fx-attention{border-top-color:#e39b36}.fx-chart-date{fill:#8393a5;font-size:10px;text-anchor:middle}

/* /tariff-analysis.css?v=20260912-01 */
.tariff-page{color:#17365d}.tariff-head{align-items:flex-start}.tariff-head-tools{display:flex;align-items:center;gap:10px}.tariff-sync-state{display:grid;grid-template-columns:10px auto;column-gap:7px;padding-right:8px}.tariff-sync-state i{width:9px;height:9px;border-radius:50%;background:#2ca77b;margin-top:5px;box-shadow:0 0 0 4px #dcf5ec}.tariff-sync-state b{font-size:13px}.tariff-sync-state small{grid-column:2;color:#71839b;font-size:11px}.tariff-alert{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:16px;border:1px solid #f1ca86;background:#fff8e9;border-radius:10px}.tariff-alert>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e99b25;color:white;font-weight:800}.tariff-alert div{flex:1}.tariff-alert p{margin:2px 0 0;color:#765b2f;font-size:13px}.tariff-alert button{border:0;background:none;color:#8a5705;font-weight:700}.tariff-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.tariff-kpis article{padding:16px 18px;background:white;border:1px solid #d9e2ed;border-top:3px solid #396bac;border-radius:10px}.tariff-kpis span,.tariff-kpis small{display:block;color:#6e8098}.tariff-kpis strong{display:block;font-size:27px;margin:7px 0 4px;color:#17365d}.danger-text{color:#c34d42!important}.tariff-tabs{display:flex;gap:5px;margin-bottom:14px;border-bottom:1px solid #cad7e6}.tariff-tabs button{border:0;background:none;padding:11px 17px;color:#5b6f89;font-weight:700;border-bottom:3px solid transparent}.tariff-tabs button.active{color:#1d5ca5;border-color:#2c71c7}.tariff-tabs b{padding:2px 6px;border-radius:10px;background:#e7f1ff;color:#1d65b6}.tariff-pane{display:none}.tariff-pane.active{display:block}.tariff-overview-grid,.tariff-news-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.85fr);gap:14px;margin-bottom:14px}.tariff-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.tariff-panel-head h2{font-size:17px;margin:0}.tariff-panel-head p{margin:3px 0 0;color:#71839b;font-size:12px}.tariff-cost-card,.tariff-risk-card,.tariff-trend,.tariff-table-panel,.tariff-news-panel,.tariff-impact-panel,.tariff-source-panel{padding:18px}.tariff-donut-row{display:flex;align-items:center;justify-content:center;gap:45px;padding:20px 10px 8px}.tariff-donut{width:145px;height:145px;border-radius:50%;background:conic-gradient(#2d73c8 0 55%,#f1a33d 55% 85%,#90a4bd 85%);display:grid;place-items:center}.tariff-donut:before{content:"";width:91px;height:91px;background:#fff;border-radius:50%;grid-area:1/1}.tariff-donut div{grid-area:1/1;z-index:1;text-align:center}.tariff-donut strong,.tariff-donut span{display:block}.tariff-donut strong{font-size:22px}.tariff-donut span{font-size:12px;color:#71839b}.tariff-legend{min-width:245px}.tariff-legend div{display:grid;grid-template-columns:10px 1fr auto auto;gap:10px;padding:10px 0;border-bottom:1px solid #e4eaf1}.tariff-legend i{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#2d73c8}.tariff-legend .c2{background:#f1a33d}.tariff-legend .c3{background:#90a4bd}.tariff-legend em{font-style:normal;color:#71839b}.risk-pill{padding:5px 9px;border-radius:14px;background:#fff0dc;color:#ae6811;font-weight:700}.tariff-risk-list>div{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid #e2e9f1}.risk-level{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;font-weight:800}.risk-level.high{background:#fde9e6;color:#c24c42}.risk-level.medium{background:#fff0d7;color:#ba7415}.tariff-risk-list p{flex:1;margin:0}.tariff-risk-list small{display:block;color:#71839b;margin-top:3px}.tariff-risk-list button{border:0;background:none;color:#1f66b3;font-weight:700}.tariff-trend{margin-bottom:14px}.tariff-inline-legend{display:flex;gap:17px;color:#6e8098;font-size:12px}.tariff-inline-legend i{display:inline-block;width:10px;height:10px;background:#3978c9;margin-right:5px}.tariff-inline-legend span+span i{background:#f0a13a}.tariff-bars{height:170px;display:flex;align-items:flex-end;justify-content:space-around;border-bottom:1px solid #cad7e6;margin:18px 15px 0;background:repeating-linear-gradient(to bottom,#fff 0,#fff 41px,#edf2f7 42px)}.tariff-bars div{position:relative;width:8%;height:100%}.tariff-bars div:before,.tariff-bars div:after{content:"";position:absolute;bottom:0;width:43%;border-radius:4px 4px 0 0}.tariff-bars div:before{left:4%;height:var(--v);background:#3978c9}.tariff-bars div:after{right:4%;height:var(--t);background:#f0a13a}.tariff-bars b{position:absolute;bottom:-25px;width:100%;text-align:center;font-size:12px}.tariff-bars .current:before{background:#1c5fab}.tariff-bars .current b{color:#1c5fab}.tariff-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:13px}.tariff-toolbar label{display:flex;align-items:center;gap:7px;min-width:330px;padding:8px 11px;border:1px solid #cdd9e7;border-radius:7px}.tariff-toolbar input{width:100%;border:0;outline:0}.tariff-toolbar span{margin-left:auto;color:#71839b}.tariff-table-wrap{overflow:auto;max-height:560px}.tariff-table-wrap table{width:100%;border-collapse:collapse;white-space:nowrap}.tariff-table-wrap th{position:sticky;top:0;background:#35659f;color:white;padding:10px;text-align:left}.tariff-table-wrap td{padding:10px;border-bottom:1px solid #e2e8f0}.tariff-table-wrap tr:nth-child(even){background:#fffaf0}.tariff-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-weight:700;font-size:12px}.tariff-badge.high{background:#fde7e4;color:#bd473d}.tariff-badge.medium{background:#fff0d5;color:#ae6b11}.tariff-badge.low{background:#def4e9;color:#1e7d5c}.tariff-news-item{display:grid;grid-template-columns:74px 1fr auto;gap:13px;padding:16px 0;border-bottom:1px solid #e1e8f0}.tariff-news-item .type{height:max-content;text-align:center;padding:5px;border-radius:5px;background:#e7f1ff;color:#1b63b0;font-weight:700;font-size:12px}.tariff-news-item.alert .type{background:#fff0d7;color:#ae6710}.tariff-news-item h3{font-size:15px;margin:0 0 5px}.tariff-news-item p{margin:0 0 6px;color:#5e7189;font-size:13px}.tariff-news-item small{color:#8392a5}.tariff-news-item a{align-self:center;color:#1e64b1;text-decoration:none;font-weight:700}.tariff-impact-panel h2{margin:0 0 12px}.tariff-impact-panel>div{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #e2e9f1}.tariff-impact-panel strong{font-size:18px}.tariff-impact-panel button{width:100%;margin-top:18px}.tariff-source-list>div{display:grid;grid-template-columns:1.1fr 1.6fr .7fr .8fr auto;align-items:center;gap:15px;padding:15px;border-bottom:1px solid #e1e8f0}.tariff-source-list small{display:block;color:#7a8ba0;margin-top:3px}.source-ok{color:#19805d;font-weight:700}.tariff-source-list a{color:#1d63ae;font-weight:700;text-decoration:none}.tariff-source-note{padding:12px 14px;background:#f2f6fb;color:#5d7088;border-radius:8px;font-size:12px}.tariff-head-tools button,.tariff-tabs button,.tariff-alert button,.tariff-risk-list button{cursor:pointer}@media(max-width:1100px){.tariff-kpis{grid-template-columns:repeat(2,1fr)}.tariff-overview-grid,.tariff-news-layout{grid-template-columns:1fr}.tariff-head{display:block}.tariff-head-tools{margin-top:12px;flex-wrap:wrap}}@media(max-width:700px){.tariff-kpis{grid-template-columns:1fr}.tariff-tabs{overflow:auto}.tariff-donut-row{flex-direction:column}.tariff-toolbar{flex-wrap:wrap}.tariff-toolbar label{min-width:100%}.tariff-source-list>div{grid-template-columns:1fr}.tariff-head-tools{align-items:flex-start}.tariff-sync-state{width:100%}}

/* /parts-catalog.css?v=20261004-split */
#partscatalog{--pc-blue:#245da8;--pc-line:#dbe4ee}.parts-page-head{align-items:center;gap:18px}.parts-head-actions{display:flex;gap:8px;align-items:center;flex:1;justify-content:flex-end}.parts-head-actions label{display:flex;align-items:center;gap:8px;width:min(390px,28vw);height:40px;border:1px solid #cad7e6;border-radius:8px;padding:0 11px;background:#fff}.parts-head-actions input{width:100%;border:0;outline:0;background:transparent;color:#17365d}.parts-head-actions select{height:40px;border:1px solid #cad7e6;border-radius:8px;background:#fff;color:#17365d;padding:0 26px 0 10px}.parts-panel{overflow:hidden;margin-top:16px}.parts-list-meta{display:flex;justify-content:flex-end;gap:16px;align-items:center;padding:9px 14px;color:#718299}.parts-list-meta small{font-size:12px}.parts-table-wrap{overflow:auto;max-height:calc(100vh - 255px);border-top:1px solid var(--pc-line)}.parts-table-wrap table{border-collapse:collapse;width:100%;min-width:1380px;table-layout:fixed}.parts-table-wrap th:nth-child(1){width:105px}.parts-table-wrap th:nth-child(2){width:145px}.parts-table-wrap th:nth-child(3){width:135px}.parts-table-wrap th:nth-child(4){width:70px}.parts-table-wrap th:nth-child(5){width:105px}.parts-table-wrap th:nth-child(6){width:82px}.parts-table-wrap th:nth-child(7),.parts-table-wrap th:nth-child(8){width:60px}.parts-table-wrap th:nth-child(n+9){width:70px}.parts-table-wrap th{position:sticky;top:0;z-index:2;background:#3e68a2;color:#fff;padding:8px 8px;text-align:left;font-size:12px;white-space:nowrap}.parts-table-wrap td{padding:6px 8px;border-bottom:1px solid #e1e8f0;font-size:12px;color:#17365d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parts-table-wrap tbody tr:nth-child(even){background:#fffaf0}.parts-table-wrap tbody tr:hover{background:#eaf3ff}.parts-table-wrap tbody tr.selected{background:#dcecff;outline:1px solid #72a5e5;outline-offset:-1px}.parts-table-wrap .num{text-align:right}.part-link{border:0;background:transparent;color:#0758a8;font-weight:700;cursor:pointer;padding:0}.price-missing{color:#b54708}.parts-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;color:#718299}.parts-footer div{display:flex;gap:8px}.parts-modal{position:fixed;inset:0;z-index:1000;background:rgba(14,31,52,.54);display:none;align-items:center;justify-content:center;padding:24px}.parts-modal[aria-hidden="false"]{display:flex}.parts-dialog{width:min(850px,95vw);max-height:86vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.parts-dialog header,.parts-dialog footer{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--pc-line)}.parts-dialog footer{border:0;border-top:1px solid var(--pc-line);justify-content:flex-end;gap:8px}.parts-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:20px 22px}.parts-detail-grid div{background:#f5f8fc;border-radius:9px;padding:11px}.parts-detail-grid span{display:block;color:#718299;font-size:12px}.parts-detail-grid strong{display:block;margin-top:4px;color:#17365d}.price-history{padding:0 22px 20px}.price-history h3{margin:0 0 10px}.price-history table{width:100%;border-collapse:collapse}.price-history th,.price-history td{padding:9px;border-bottom:1px solid var(--pc-line);text-align:left;font-size:13px}.parts-edit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:20px 22px}.parts-edit-grid label{display:flex;flex-direction:column;gap:6px;color:#5f7289;font-size:12px}.parts-edit-grid input{height:40px;border:1px solid #cbd8e7;border-radius:8px;padding:0 10px;color:#17365d}.parts-edit-grid label.wide{grid-column:span 2}.parts-edit-grid .calculated input{background:#eef3f8;color:#62758b}.parts-form-note{grid-column:1/-1;color:#718299;font-size:12px}@media(max-width:1250px){.parts-page-head{align-items:flex-start;flex-direction:column}.parts-head-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.parts-head-actions label{width:min(440px,100%)}.parts-table-wrap{max-height:calc(100vh - 315px)}}
#partscatalog{container-type:inline-size}
#partscatalog.view.active > .page-head.parts-page-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start!important;gap:12px 16px;margin-bottom:12px}
#partscatalog .parts-page-head>div:first-child{flex:1 1 170px;min-width:0}
#partscatalog.view.active .parts-head-actions{flex:0 1 auto!important;width:auto!important;min-width:0;gap:6px;flex-wrap:nowrap!important;justify-content:flex-end;margin-top:20px}
#partscatalog .parts-head-actions label{width:clamp(160px,20vw,240px);min-width:0;height:34px;padding:0 9px;flex:0 1 200px}
#partscatalog .parts-head-actions input{min-width:0;font-size:12px}
#partscatalog .parts-head-actions select{height:34px;min-width:0;font-size:12px;padding:0 22px 0 9px;flex:none}
#partscatalog #partsOemFilter{width:100px}
#partscatalog #partsSupplierFilter{width:112px}
#partscatalog .parts-head-actions .bom-icon-action{width:34px;min-width:34px;height:34px;padding:0;flex:none;display:inline-flex;align-items:center;justify-content:center}
#partscatalog .parts-panel{margin-top:10px}
#partscatalog .parts-table-wrap{max-height:calc(100dvh - 190px)}
@container(max-width:760px){
 #partscatalog.view.active > .page-head.parts-page-head{grid-template-columns:minmax(0,1fr)}
 #partscatalog .parts-page-head>div:first-child{flex:0 0 100%}
 #partscatalog.view.active .parts-head-actions{width:100%!important;margin-top:0;justify-content:flex-start}
 #partscatalog .parts-head-actions label{width:auto;flex:1 1 140px}
 #partscatalog .parts-table-wrap{max-height:calc(100dvh - 230px)}
}
@container(max-width:480px){
 #partscatalog .parts-head-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) repeat(3,34px)}
 #partscatalog .parts-head-actions label{grid-column:1/-1;width:100%}
 #partscatalog #partsOemFilter,#partscatalog #partsSupplierFilter{width:100%}
 #partscatalog .parts-table-wrap{max-height:calc(100dvh - 270px)}
}

/* /continuous-scroll.css?v=20260913-05 */
#partscatalog .parts-panel{margin-top:10px}
#partscatalog .parts-table-wrap{height:calc(100vh - 185px);max-height:none;border-top:0;overflow:auto}
#intransit .transit-panel{margin-top:0}
#intransit .transit-table-wrap{height:calc(100vh - 335px);max-height:none;border-top:0;border-bottom:0;overflow:auto}
@media(max-width:1350px){#partscatalog .parts-table-wrap{height:calc(100vh - 245px)}#intransit .transit-table-wrap{height:calc(100vh - 385px)}}

/* 物料在途：移除指标卡后让表格占满首屏。 */
#intransit .transit-table-wrap{height:calc(100vh - 190px)}

/* 客户 EDI 需求：与部件清单一致的紧凑工作台。 */
.edi-page .parts-page-head{align-items:flex-start}
.edi-page .parts-head-actions{flex-wrap:wrap;max-width:1180px}
.edi-page .parts-head-actions label{width:min(360px,30vw)}
.edi-page .parts-head-actions input,.edi-page .parts-head-actions select{font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif}
.edi-page .parts-panel{margin-top:10px;overflow:hidden}
.edi-table-wrap{height:calc(100vh - 190px);max-height:none;overflow:auto;border:0}
.edi-table{width:100%;min-width:1720px;border-collapse:collapse;table-layout:fixed}
.edi-table th{position:sticky;top:0;z-index:2;padding:8px;background:#3e68a2;color:#fff;font-size:12px;text-align:left;white-space:nowrap}
.edi-table td{height:29px;padding:5px 8px;border-bottom:1px solid #e1e8f0;color:#17365d;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.edi-table tbody tr:nth-child(even){background:#fffaf0}
.edi-table tbody tr:hover{background:#eaf3ff;cursor:pointer}
.edi-table tbody tr.selected{background:#dcecff;outline:1px solid #72a5e5;outline-offset:-1px}
.edi-table .num{text-align:right;font-variant-numeric:tabular-nums}
.edi-table .part-no{font-weight:700;color:#0753a6}
.edi-table th:nth-child(1){width:116px}.edi-table th:nth-child(2),.edi-table th:nth-child(3){width:120px}.edi-table th:nth-child(4){width:145px}.edi-table th:nth-child(5){width:100px}.edi-table th:nth-child(6){width:72px}.edi-table th:nth-child(7),.edi-table th:nth-child(8){width:125px}.edi-table th:nth-child(9){width:110px}.edi-table th:nth-child(10){width:85px}.edi-table th:nth-child(11){width:70px}.edi-table th:nth-child(12){width:165px}.edi-table th:nth-child(13){width:155px}
.edi-status{display:inline-flex;justify-content:center;min-width:38px;padding:3px 7px;border-radius:999px;font-weight:700}.edi-status.计划{background:#e8f1ff;color:#1459aa}.edi-status.近期{background:#fff0db;color:#b66000}.edi-status.逾期{background:#ffe7e4;color:#b42318}.edi-match{display:inline-block;margin-left:5px;padding:2px 5px;border-radius:4px;background:#fff0db;color:#a75b00;font-size:10px;font-weight:700}
.edi-empty{text-align:center!important;padding:48px!important;color:#74869b!important;background:#fff}
.edi-import-dialog{width:min(1280px,94vw)}
.edi-import-summary{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px 14px;margin-bottom:12px;border:1px solid #cbdced;border-radius:8px;background:#f4f8fd;color:#17365d}
.edi-import-summary small{width:100%;color:#667c96}
.edi-batch-fields{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:10px;width:100%}.edi-batch-fields label{display:flex;flex-direction:column;gap:5px}.edi-batch-fields span{font-size:12px;font-weight:700;color:#516984}.edi-batch-fields input{height:36px;padding:0 10px;border:1px solid #bdcde0;border-radius:7px;background:#fff;color:#17365d;font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif}
.edi-preview-wrap{max-height:430px;overflow:auto;border:1px solid #d7e1ee;border-radius:8px}
.edi-preview-table{min-width:1450px;width:100%;border-collapse:collapse}
.edi-preview-table th{position:sticky;top:0;padding:7px 8px;background:#3e68a2;color:#fff;font-size:12px;text-align:left;white-space:nowrap}
.edi-preview-table td{padding:6px 8px;border-bottom:1px solid #e1e8f0;font-size:12px;white-space:nowrap}
.edi-preview-table tr.invalid{background:#fff1f0;color:#b42318}
.edi-import-dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.edi-import-dialog button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1350px){#intransit .transit-table-wrap,.edi-table-wrap{height:calc(100vh - 245px)}.edi-page .parts-head-actions{justify-content:flex-start;width:100%}.edi-page .parts-head-actions label{width:min(420px,100%)}}
#intransit .transit-group-row.selected td{background:#dcecff;outline:1px solid #72a5e5;outline-offset:-1px}

/* 客户需求：物料在途式工具栏 + 横向发货计划矩阵。 */
.demand-head{align-items:flex-start}.demand-tools{flex-wrap:wrap;max-width:1220px}.demand-period-tabs{display:flex;height:40px;padding:3px;border:1px solid #cad8e7;border-radius:8px;background:#fff}.demand-period-tabs button{padding:0 11px;border:0;border-radius:6px;background:transparent;color:#536c88;font:700 13px/1 "DM Sans","Noto Sans SC",sans-serif;cursor:pointer}.demand-period-tabs button.active{background:#245fa8;color:#fff}.demand-panel{padding:0;overflow:hidden}.demand-table-wrap{height:calc(100vh - 190px);overflow:auto}.demand-matrix{width:max-content;min-width:100%;border-collapse:collapse;table-layout:fixed}.demand-matrix th{position:sticky;top:0;z-index:3;min-width:88px;height:44px;padding:6px 8px;background:#315f99;color:#fff;font-size:12px;text-align:center;white-space:nowrap}.demand-matrix th small{display:block;margin-top:2px;color:#dceaff;font-size:10px}.demand-matrix th:nth-child(1),.demand-matrix td:nth-child(1){position:sticky;left:0;z-index:2;min-width:145px;text-align:left}.demand-matrix th:nth-child(2),.demand-matrix td:nth-child(2){position:sticky;left:161px;z-index:2;min-width:145px;text-align:left}.demand-matrix th:nth-child(3),.demand-matrix td:nth-child(3){position:sticky;left:322px;z-index:2;min-width:110px;text-align:left}.demand-matrix th:nth-child(4),.demand-matrix td:nth-child(4){position:sticky;left:448px;z-index:2;min-width:88px}.demand-matrix th:nth-child(-n+4){z-index:5}.demand-matrix td{height:30px;padding:4px 8px;border-right:1px solid #e1e8f0;border-bottom:1px solid #e1e8f0;background:#fff;color:#173c66;font-size:12px;white-space:nowrap}.demand-matrix tbody tr:nth-child(even) td{background:#fffaf0}.demand-matrix tbody tr:hover td{background:#edf6ff}.demand-matrix td.num{text-align:right;font-variant-numeric:tabular-nums}.demand-matrix td.total{font-weight:800}.demand-matrix td.has-demand{padding:0;background:#eef5ff}.demand-matrix td.has-demand button{width:100%;height:29px;padding:0 7px;border:0;background:transparent;color:#0755a5;font:800 12px/1 "DM Sans",sans-serif;text-align:right;cursor:pointer}.demand-matrix tr.unmatched td:first-child{color:#ad5f00}.demand-foot{display:flex;justify-content:space-between;gap:20px;padding:9px 14px;border-top:1px solid #dbe5ef;color:#647b94;font-size:12px}.demand-foot i{display:inline-block;width:8px;height:8px;margin:0 5px 0 12px;border-radius:50%}.demand-foot i.matched{background:#2f78cf}.demand-foot i.unmatched{background:#e29837}.demand-dialog{width:min(980px,94vw)}.demand-batch-meta{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;margin-bottom:12px}.demand-batch-meta label{display:flex;flex-direction:column;gap:6px}.demand-batch-meta span{color:#365775;font-size:12px;font-weight:700}.demand-batch-meta input,.demand-batch-meta select{height:40px;padding:0 10px;border:1px solid #bfcfe1;border-radius:8px;background:#fff;color:#173c66;font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif}.demand-preview-wrap,.demand-detail-wrap{max-height:320px;overflow:auto;border:1px solid #d8e3ee;border-radius:8px}.demand-preview-wrap table,.demand-detail-wrap table{width:100%;border-collapse:collapse}.demand-preview-wrap th,.demand-detail-wrap th{position:sticky;top:0;padding:8px;background:#3d68a1;color:#fff;font-size:12px;text-align:left}.demand-preview-wrap td,.demand-detail-wrap td{padding:7px 8px;border-bottom:1px solid #e2e9f1;color:#274866;font-size:12px}.demand-preview-wrap tr.invalid{background:#fff0ef;color:#b42318}.demand-preview-wrap tr.warning{background:#fff8e8}.demand-dialog footer,.demand-detail-dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.demand-detail-dialog{width:min(880px,94vw)}.demand-detail-wrap input{height:32px;padding:0 7px;border:1px solid #c5d4e4;border-radius:6px;color:#173c66}.demand-detail-wrap input[type=number]{width:100px}.demand-detail-wrap .btn{height:32px;padding:0 9px;margin-right:5px}.demand-detail-wrap .btn.danger{margin-right:0}@media(max-width:1350px){.demand-table-wrap{height:calc(100vh - 245px)}.demand-batch-meta{grid-template-columns:1fr}.demand-tools{width:100%;justify-content:flex-start}}
#partscatalog .parts-head-actions input,#partscatalog .parts-head-actions select{font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif}
#projectoverview .project-master-actions input,#projectoverview .project-master-actions select{font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif}
#partscatalog .parts-table-wrap th:nth-child(2){width:var(--product-name-ch,22ch)}
#projectoverview .product-head{display:flex;align-items:center;gap:18px}
#projectoverview .product-head>div:first-child{min-width:270px}
#projectoverview .project-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1}
#projectoverview .project-head-actions label{display:flex;align-items:center;gap:8px;width:min(430px,34vw);height:40px;padding:0 11px;border:1px solid #cad7e6;border-radius:8px;background:#fff}
#projectoverview .project-head-actions input{width:100%;border:0;outline:0;background:transparent;font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif;color:#17365d}
#projectoverview .project-table-wrap{height:calc(100vh - 185px);max-height:none;margin-top:10px;border:1px solid #d7e1ee;border-radius:12px;overflow:auto}
#projectoverview .project-table{min-width:2100px;box-shadow:none}
#projectoverview .project-table th{background:#3e68a2}
@media(max-width:1250px){#projectoverview .product-head{align-items:flex-start;flex-direction:column}#projectoverview .project-head-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}#projectoverview .project-head-actions label{width:min(440px,100%)}#projectoverview .project-table-wrap{height:calc(100vh - 245px)}}
#projectoverview .project-master-panel{margin-top:10px;overflow:hidden}
#projectoverview .project-master-wrap{height:calc(100vh - 185px);max-height:none;overflow:auto;border:0}
#projectoverview .project-master-table{width:100%;min-width:2200px;border-collapse:collapse;table-layout:fixed}
#projectoverview .project-master-table th{position:sticky;top:0;z-index:2;padding:8px;background:#3e68a2;color:#fff;font-size:12px;text-align:left;white-space:nowrap}
#projectoverview .project-master-table td{height:29px;padding:5px 8px;border-bottom:1px solid #e1e8f0;color:#17365d;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#projectoverview .project-master-table tbody tr:nth-child(even){background:#fffaf0}
#projectoverview .project-master-table tbody tr:hover{background:#eaf3ff}
#projectoverview .project-master-table tbody tr.selected{background:#dcecff;outline:1px solid #72a5e5;outline-offset:-1px}
#projectoverview .project-master-table .num{text-align:right;font-variant-numeric:tabular-nums}
#projectoverview .project-master-table th:nth-child(1){width:105px}#projectoverview .project-master-table th:nth-child(2){width:135px}#projectoverview .project-master-table th:nth-child(3){width:125px}#projectoverview .project-master-table th:nth-child(4){width:62px}#projectoverview .project-master-table th:nth-child(5){width:105px}#projectoverview .project-master-table th:nth-child(6){width:68px}#projectoverview .project-master-table th:nth-child(n+7){width:78px}
@media(max-width:1250px){#projectoverview .project-master-wrap{height:calc(100vh - 245px)}}
.price-master-page .parts-head-actions input,.price-master-page .parts-head-actions select{font:600 13px/1 "DM Sans","Noto Sans SC",sans-serif}.price-master-page .parts-panel{margin-top:10px;overflow:hidden}.price-master-page .price-master-wrap{height:calc(100vh - 185px);max-height:none;overflow:auto;border:0}.price-master-table{width:100%;min-width:1640px;border-collapse:collapse;table-layout:fixed}.price-master-table th{position:sticky;top:0;z-index:2;padding:8px;background:#3e68a2;color:#fff;font-size:12px;text-align:left;white-space:nowrap}.price-master-table td{height:29px;padding:5px 8px;border-bottom:1px solid #e1e8f0;color:#17365d;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.price-master-table tbody tr:nth-child(even){background:#fffaf0}.price-master-table tbody tr:hover{background:#eaf3ff}.price-master-table tbody tr.selected{background:#dcecff;outline:1px solid #72a5e5;outline-offset:-1px}.price-master-table .num{text-align:right;font-variant-numeric:tabular-nums}.price-master-table th:nth-child(1){width:110px}.price-master-table th:nth-child(2),.price-master-table th:nth-child(7),.price-master-table th:nth-child(8){width:95px}.price-master-table th:nth-child(3){width:100px}.price-master-table th:nth-child(4){width:85px}.price-master-table th:nth-child(9){width:90px}.price-master-table th:nth-child(n+10):nth-child(-n+15){width:68px}.price-version-state{display:inline-flex;padding:3px 8px;border-radius:999px;background:#e8f7ee;color:#087a45;font-weight:700}.price-version-state.待生效{background:#fff0df;color:#b35b00}.price-version-state.已失效{background:#edf0f4;color:#66788b}@media(max-width:1250px){.price-master-page .price-master-wrap{height:calc(100vh - 245px)}}

/* Customer demand: continuous matrix scrolling and a calmer import workspace. */
.demand-tools{max-width:1320px}
.demand-table-wrap{overflow:auto;overscroll-behavior:contain;scroll-behavior:smooth;scrollbar-gutter:stable}
.demand-matrix{border-collapse:separate;border-spacing:0}
.demand-matrix th,.demand-matrix td{box-sizing:border-box}
.demand-dialog{width:min(900px,calc(100vw - 96px))}
.demand-dialog>header,.demand-dialog>footer{padding-left:32px;padding-right:32px}
.demand-dialog>.demand-batch-meta,.demand-dialog>.transit-add-help,.demand-dialog>.transit-paste-data,.demand-dialog>.transit-paste-tools,.demand-dialog>.demand-preview-wrap{width:auto;margin-left:32px;margin-right:32px}
.demand-dialog>.demand-batch-meta{margin-top:18px;gap:16px}
@media(max-width:720px){.demand-dialog{width:calc(100vw - 28px)}.demand-dialog>header,.demand-dialog>footer{padding-left:18px;padding-right:18px}.demand-dialog>.demand-batch-meta,.demand-dialog>.transit-add-help,.demand-dialog>.transit-paste-data,.demand-dialog>.transit-paste-tools,.demand-dialog>.demand-preview-wrap{margin-left:18px;margin-right:18px}}

.demand-matrix th:nth-child(1),.demand-matrix td:nth-child(1){box-sizing:border-box;width:var(--d-col-1,145px);min-width:var(--d-col-1,145px);max-width:var(--d-col-1,145px)}
.demand-matrix th:nth-child(2),.demand-matrix td:nth-child(2){box-sizing:border-box;left:var(--d-col-1,145px);width:var(--d-col-2,145px);min-width:var(--d-col-2,145px);max-width:var(--d-col-2,145px)}
.demand-matrix th:nth-child(3),.demand-matrix td:nth-child(3){box-sizing:border-box;left:calc(var(--d-col-1,145px) + var(--d-col-2,145px));width:var(--d-col-3,110px);min-width:var(--d-col-3,110px);max-width:var(--d-col-3,110px)}
.demand-matrix th:nth-child(4){position:sticky;top:0;left:auto;z-index:3;width:var(--period-w);min-width:var(--period-w);max-width:var(--period-w)}
.demand-matrix td:nth-child(4){position:static;left:auto;z-index:auto;width:var(--period-w);min-width:var(--period-w);max-width:var(--period-w)}

.demand-matrix .period-col{box-sizing:border-box;width:var(--period-w);min-width:var(--period-w);max-width:var(--period-w)}
.demand-matrix th.period-col{background:#315f99!important;color:#fff!important}
.demand-matrix.list-mode{width:100%;min-width:980px;table-layout:fixed}
.demand-matrix.list-mode th:nth-child(n),.demand-matrix.list-mode td:nth-child(n){position:static;left:auto;z-index:auto;min-width:0;max-width:none}
.demand-matrix.list-mode th:nth-child(1){width:22%}.demand-matrix.list-mode th:nth-child(2){width:16%}.demand-matrix.list-mode th:nth-child(3){width:16%}.demand-matrix.list-mode th:nth-child(4){width:14%}.demand-matrix.list-mode th:nth-child(5){width:14%}.demand-matrix.list-mode th:nth-child(6){width:7%}.demand-matrix.list-mode th:nth-child(7){width:11%}
.demand-group-row{cursor:pointer}.demand-group-row.selected td{background:#dcecff!important;outline:1px solid #72a5e5;outline-offset:-1px}.demand-group-row td{font-weight:700}.demand-child-row td{color:#365775}.demand-child-row td:first-child{border-left:3px solid #78a9df}.demand-toggle{width:24px;height:24px;margin-right:7px;border:1px solid #9bbbe0;border-radius:6px;background:#fff;color:#16589d;font-weight:800;cursor:pointer}
.demand-dialog>.demand-paste-wide{display:block;width:calc(100% - 64px);min-height:210px}
.demand-dialog .demand-name-field{grid-column:1/-1}
.demand-dialog .demand-batch-meta{grid-template-columns:1fr}
@media(max-width:720px){.demand-dialog>.demand-paste-wide{width:calc(100% - 36px)}}
.view.active{animation:none!important}
#projectoverview .project-master-table{width:100%!important;min-width:1180px!important;table-layout:auto!important}
#projectoverview .project-master-table th,#projectoverview .project-master-table td{width:auto!important;min-width:0;padding-left:9px;padding-right:9px}
#projectoverview .project-master-table th:nth-child(1){width:12ch!important}
#projectoverview .project-master-table th:nth-child(2){width:16ch!important}
#projectoverview .project-master-table th:nth-child(3){width:16ch!important}
#projectoverview .project-master-table th:nth-child(4){width:7ch!important}
#projectoverview .project-master-table th:nth-child(5){width:11ch!important}
#projectoverview .project-master-table th:nth-child(6){width:7ch!important}
#projectoverview .project-master-table th:nth-child(7){width:8ch!important}
#projectoverview .project-master-table th:nth-child(n+8){width:6ch!important}

/* Project master: keep add/edit forms compact instead of inheriting the product workspace fullscreen dialog. */
#projectoverview .project-modal{padding:20px}
#projectoverview .project-dialog{
  width:min(900px,calc(100vw - 40px))!important;
  height:auto!important;
  max-width:900px!important;
  max-height:calc(100vh - 40px)!important;
  overflow:hidden!important;
  display:flex;
  flex-direction:column;
}
#projectoverview .project-dialog>header{
  position:static!important;
  flex:0 0 auto;
  height:auto!important;
  min-height:54px;
  padding:14px 18px!important;
}
#projectoverview .project-dialog h2:after{content:none!important}
#projectoverview .project-form-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px 14px!important;
  padding:18px!important;
  overflow:auto;
}
#projectoverview .project-form-grid input{box-sizing:border-box;height:38px}
#projectoverview .project-dialog>footer{
  position:static!important;
  flex:0 0 auto;
  height:auto!important;
  min-height:58px;
  padding:10px 18px!important;
}
@media(max-width:760px){#projectoverview .project-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){#projectoverview .project-modal{padding:12px}#projectoverview .project-dialog{width:calc(100vw - 24px)!important;max-height:calc(100vh - 24px)!important}#projectoverview .project-form-grid{grid-template-columns:1fr!important;padding:14px!important}}
.demand-tools{gap:6px;margin-top:2px}.demand-tools .transit-search{width:165px}.demand-tools>.btn{padding-left:10px;padding-right:10px}.demand-tools #demandExport{display:none!important}
.demand-page .btn{min-width:0;padding-left:10px;padding-right:10px}
.demand-page .demand-period-tabs button{padding-left:8px;padding-right:8px}
.project-master-table tbody td:nth-child(2),.project-master-table tbody td:nth-child(3),.project-master-table tbody td:nth-child(4){font-family:Arial,"Noto Sans SC",sans-serif;font-size:12px;font-weight:700}

/* /bom-workbench.css?v=20261003-01 */
#bommanagement.bom-workbench{--bw-edge:#dbe4ef;--bw-text:#284567;--bw-muted:#6d819c;--bw-head:#45689e;--bw-blue:#285eaa;--bw-tint:#edf4fe;color:var(--bw-text)}
#bommanagement .bw-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px}
#bommanagement .bw-head h1{margin:6px 0;font-size:28px;color:#1c2936}
#bommanagement .bw-head p{font-size:12px;color:var(--bw-muted);margin:0;min-height:18px}
#bommanagement .bw-tools{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:0;min-width:0;flex-wrap:wrap}
#bommanagement .bw-tools select,#bommanagement .bw-search{height:36px;border:1px solid #cbdaf0;background:white;border-radius:8px;color:var(--bw-text);font-size:12px}
#bommanagement .bw-tools select{width:230px;max-width:40vw;padding:0 9px}
#bommanagement .bw-search{display:flex;align-items:center;gap:7px;width:260px;max-width:50vw;padding:0 10px}
#bommanagement .bw-search input{border:0;background:transparent;outline:0;min-width:0;width:100%;font:inherit;color:inherit}
#bommanagement .bw-sync{width:34px;height:34px;padding:0;border:1px solid var(--bw-edge);border-radius:7px;background:#fff;color:#23374e;font:22px/1 sans-serif;cursor:pointer}
#bommanagement .bw-sync[aria-busy=true]{background:var(--bw-tint);color:var(--bw-blue)}
#bommanagement button:disabled{opacity:.5;cursor:default}
#bommanagement button:focus-visible,#bommanagement select:focus-visible,#bommanagement input:focus-visible{outline:2px solid #3b82db;outline-offset:2px}
#bommanagement .bw-workspace{display:grid;grid-template-columns:minmax(260px,29%) minmax(0,1fr);gap:10px;height:var(--bw-available-height,calc(100dvh - 160px));min-height:450px;max-height:950px}
#bommanagement .bw-tree-panel,#bommanagement .bw-detail-panel{border:1px solid var(--bw-edge);border-radius:10px;background:#fff;min-width:0;min-height:0;overflow:hidden}
#bommanagement .bw-tree-panel{display:flex;flex-direction:column}
#bommanagement .bw-panel-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--bw-edge);padding:10px 12px;gap:8px;min-height:43px;font-size:12px}
#bommanagement .bw-panel-head button{border:0;background:transparent;color:var(--bw-blue);font-size:12px;padding:2px 6px;cursor:pointer}
#bommanagement .bw-tree{overflow:auto;flex:1;padding:5px 4px;min-height:0;scrollbar-gutter:stable}
#bommanagement .bw-node{display:flex;align-items:center;min-height:43px;width:100%;padding:2px 5px 2px calc(4px + var(--bw-depth)*15px);border-radius:5px;cursor:pointer;gap:3px;border:1px solid transparent}
#bommanagement .bw-node:hover{background:#f4f7fb}
#bommanagement .bw-node[aria-selected=true]{background:#e7f0ff;border-color:#c9ddfa}
#bommanagement .bw-toggle{flex:0 0 18px;padding:0;border:0;background:transparent;color:#60758c;cursor:pointer;height:28px;font-size:13px}
#bommanagement .bw-node-copy{min-width:140px;flex:1;overflow:hidden;white-space:nowrap}
#bommanagement .bw-node-copy strong{display:block;text-align:left;font-size:12px;line-height:18px;color:var(--bw-blue)}
#bommanagement .bw-node-copy small{display:block;font-size:11px;color:var(--bw-muted);overflow:hidden;text-overflow:ellipsis;line-height:15px}
#bommanagement .bw-node-seq{font-size:10px;align-self:flex-start;padding-top:5px;color:var(--bw-muted);white-space:nowrap}
#bommanagement .bw-tree-foot{border-top:1px solid var(--bw-edge);font-size:11px;padding:8px 12px;color:var(--bw-muted)}
#bommanagement .bw-detail-panel{display:flex;flex-direction:column;padding:14px}
#bommanagement .bw-breadcrumb{font-size:11px;color:var(--bw-muted);white-space:nowrap;overflow:auto;padding-bottom:4px;min-height:22px;flex-shrink:0}
#bommanagement .bw-heading{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:3px 0 5px}
#bommanagement .bw-heading strong{font-size:21px;color:var(--bw-blue);text-align:left;font-weight:700}
#bommanagement .bw-badge{font-size:11px;background:#eef5f2;color:#3c6851;border-radius:4px;padding:3px 6px}
#bommanagement .bw-name{font-size:13px;margin:0 0 10px;overflow-wrap:anywhere;flex-shrink:0}
#bommanagement .bw-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;background:#f3f7fc;border-radius:6px;padding:10px 12px;flex-shrink:0}
#bommanagement .bw-field small{display:block;font-size:11px;color:var(--bw-muted);margin-bottom:2px}
#bommanagement .bw-field span{display:block;font-size:12px;min-height:17px;overflow-wrap:anywhere}
#bommanagement .bw-tabs{display:flex;gap:6px;margin:10px 0 0;border-bottom:1px solid var(--bw-edge);flex-shrink:0}
#bommanagement .bw-tab{font-size:12px;border:0;border-bottom:2px solid transparent;background:transparent;padding:9px 10px;color:var(--bw-text);cursor:pointer}
#bommanagement .bw-tab[aria-selected=true]{color:var(--bw-blue);font-weight:700;border-bottom-color:var(--bw-blue)}
#bommanagement .bw-content{flex:1;min-height:0;display:flex;flex-direction:column}
#bommanagement .bw-caption{font-size:11px;color:var(--bw-muted);margin:9px 0;flex-shrink:0}
#bommanagement .bw-table-wrap{overflow:auto;flex:1;min-height:0;border:1px solid var(--bw-edge);border-radius:5px;scrollbar-gutter:stable}
#bommanagement .bw-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:1266px;font-size:12px;margin:0}
#bommanagement .bw-table th{position:sticky;top:0;background:var(--bw-head);color:white;height:30px;padding:5px 7px;text-align:left;white-space:nowrap;z-index:1;border:0}
#bommanagement .bw-table td{height:28px;padding:4px 7px;border:0;border-bottom:1px solid var(--bw-edge);border-right:1px solid #edf1f6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#bommanagement .bw-table tbody tr:nth-child(even){background:#fdfaf2}
#bommanagement .bw-table tbody tr:hover{background:#edf4fe}
#bommanagement .bw-table .bw-number{text-align:right;font-variant-numeric:tabular-nums}
#bommanagement .bw-part-link{border:0;background:none;padding:0;color:var(--bw-blue);text-align:left;font-weight:700;font-size:12px;cursor:pointer}
#bommanagement .bw-properties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:0;border:1px solid var(--bw-edge);margin-top:12px;overflow:auto;border-radius:6px}
#bommanagement .bw-properties .bw-field{padding:11px 12px;border-bottom:1px solid var(--bw-edge)}
#bommanagement .bw-properties .bw-field:nth-child(odd){border-right:1px solid var(--bw-edge)}
#bommanagement .bw-empty{display:grid;place-content:center;min-height:130px;padding:24px 15px;font-size:12px;text-align:center;color:var(--bw-muted);line-height:1.7;overflow-wrap:anywhere}
#bommanagement .bw-status{padding:6px 10px;border:1px solid #d2e1f6;background:#f6f9ff;color:var(--bw-text);border-radius:6px;font-size:12px;margin-top:7px;min-height:30px;overflow-wrap:anywhere}
#bommanagement .bw-status[data-kind=error]{border-color:#e8b5ad;background:#fff6f3;color:#a34031}
#bommanagement .bw-status[data-kind=success]{color:#38674e}
@media(max-width:1100px){#bommanagement .bw-head{align-items:flex-start}#bommanagement .bw-tools{max-width:560px}#bommanagement .bw-tools select{width:200px}#bommanagement .bw-search{width:220px}#bommanagement .bw-workspace{grid-template-columns:minmax(225px,30%) minmax(0,1fr)}#bommanagement .bw-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){#bommanagement .bw-head{flex-direction:column;gap:10px}#bommanagement .bw-tools{width:100%;max-width:none;justify-content:flex-start}#bommanagement .bw-tools select{flex:1;max-width:none;width:160px}#bommanagement .bw-search{flex:1;max-width:none;width:180px}#bommanagement .bw-workspace{height:auto;max-height:none;grid-template-columns:1fr;min-height:0}#bommanagement .bw-tree-panel{height:300px}#bommanagement .bw-detail-panel{height:600px;padding:10px}#bommanagement .bw-table-wrap{min-height:180px}}

/* /process-flow.css?v=20260915-02 */
.process-flow-page{padding-bottom:24px}.process-flow-actions{display:flex;align-items:end;gap:10px}.process-select-label{display:flex;flex-direction:column;gap:5px;color:#58718f;font-size:12px;font-weight:700}.process-select-label select{height:40px;min-width:210px;border:1px solid #cbd9ea;border-radius:8px;background:#fff;padding:0 12px;color:#173b66;font-weight:600}.process-fitting-select select{min-width:190px;height:40px}.process-filter-summary{display:flex;gap:28px;background:#eef5fc;border:1px solid #d7e5f3;border-radius:10px;padding:11px 16px;margin:16px 0;color:#6a8098;font-size:13px}.process-filter-summary strong{color:#173b66}.process-matrix-panel{padding:0;overflow:hidden}.process-matrix-wrap{height:calc(100vh - 185px);max-height:calc(100vh - 185px);overflow:auto}.process-matrix-table{width:100%;min-width:1480px;border-collapse:collapse;font-size:12px}.process-matrix-table th{position:sticky;top:0;z-index:1;background:#3f659b;color:#fff;padding:9px 8px;text-align:center;line-height:1.35;white-space:nowrap}.process-matrix-table td{padding:8px;border-top:1px solid #dce7f2;color:#23466e;white-space:nowrap;text-align:center}.process-matrix-table tbody tr:nth-child(even){background:#f8fbfe}.process-matrix-table tbody tr:hover{background:#e9f2fd}.process-matrix-table td:nth-child(6){text-align:left;font-weight:600}.process-empty{padding:60px!important;color:#8194aa!important}@media(max-width:1000px){.process-flow-actions{flex-wrap:wrap}.process-filter-summary{flex-wrap:wrap}}
.compact-action{height:34px!important;padding:0 11px!important;font-size:13px!important;border-radius:7px!important}.process-editing td{background:#fff8dd}.process-editing td[contenteditable="true"]{outline:1px solid #8bb5e4;outline-offset:-2px;background:#fff}
.compact-action{height:34px!important;padding:0 12px!important;font-size:13px!important;border-radius:7px!important}

/* /production-plan.css?v=20260918-01 */
.production-plan-head{align-items:flex-end}.production-plan-actions{display:flex;align-items:flex-end;gap:8px}.production-plan-actions label{display:flex;flex-direction:column;gap:4px;color:#58718f;font-size:11px;font-weight:700}.production-plan-actions select,.production-plan-actions input{height:40px;min-width:130px;padding:0 9px;border:1px solid #cbd9ea;border-radius:8px;background:#fff;color:#173b66;font:600 12px inherit}.production-plan-actions input{width:150px}.production-plan-actions .bom-icon-action{width:40px!important;min-width:40px!important}.production-plan-summary{display:flex;align-items:center;gap:10px;margin:12px 0}.production-plan-summary span{display:flex;align-items:center;gap:10px;padding:9px 14px;background:#fff;border:1px solid #d9e4f0;border-radius:8px;color:#536d89;font-size:12px}.production-plan-summary strong{font-size:20px;color:#1765b0}.production-plan-summary em{margin-left:auto;padding:10px 14px;border-radius:8px;background:#fff8df;color:#8b6413;font-style:normal;font-size:12px;font-weight:700}.production-plan-panel{padding:0;overflow:hidden}.production-plan-wrap{height:calc(100vh - 220px);overflow:auto}.production-plan-table{width:max-content;min-width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.production-plan-table th{position:sticky;top:0;z-index:2;height:30px;padding:4px 6px;background:#3e68a2;color:#fff;text-align:center;white-space:nowrap;border-right:1px solid #d5e0ed}.production-plan-table th:first-child,.production-plan-table th:nth-child(2){z-index:3}.production-plan-table td{height:26px;padding:3px 6px;text-align:center;color:#17365d;border-right:1px solid #dfe7f0;border-bottom:1px solid #dfe7f0;white-space:nowrap}.production-plan-table tbody tr:nth-child(even){background:#fffaf0}.production-plan-table tbody tr:hover{background:#eaf3ff}.production-plan-table th:nth-child(1){width:60px}.production-plan-table th:nth-child(2){width:120px}.production-plan-table th:nth-child(3){width:70px}.production-plan-table th:nth-child(4){width:82px}.production-plan-table th:nth-child(5),.production-plan-table th:nth-child(6){width:78px}.production-plan-table th:nth-child(7){width:88px}.production-plan-table th:nth-child(n+8){width:47px;min-width:47px}.line-cell{font-weight:800;font-size:13px}.pn-cell{font-weight:700}.coverage{font-weight:800}.coverage.ok{background:#c9f0d8;color:#087a45}.coverage.risk{background:#ffd1d1;color:#b42318}.coverage.over{background:#fff0bf;color:#8b6413}.plan-cell{background:#fff8d9}.plan-cell.change{border-left:3px solid #f0a516}.production-plan-table tbody tr+tr td.line-cell{border-top:2px solid #6f97c4}@media(max-width:1100px){.production-plan-head{align-items:flex-start;flex-direction:column}.production-plan-actions{width:100%;flex-wrap:wrap}.production-plan-summary{flex-wrap:wrap}.production-plan-summary em{margin-left:0}}

/* /production-plan-live.css?v=20261001 */
#planning .production-plan-head{align-items:center;gap:16px;flex-wrap:wrap}#planning .production-plan-actions{flex-wrap:wrap}#planning .production-plan-actions label{font-size:14px}#planning .production-plan-actions select{min-width:110px}#planning .production-plan-summary{flex-wrap:wrap}#planning .production-plan-summary span{font-size:14px}#planning .production-plan-summary strong{font-size:18px}.plan-line-loads{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.plan-line-loads span{padding:8px 12px;background:#edf4fc;border:1px solid #d6e2f1;border-radius:6px;font-size:14px;color:#17365d}#planning .production-plan-wrap{height:calc(100vh - 330px);min-height:320px}#planning .production-plan-table{font-size:14px}#planning .production-plan-table th{height:38px;min-width:76px!important;width:76px}#planning .production-plan-table th:nth-child(2){min-width:130px!important;width:130px}#planning .production-plan-table td{height:32px}#planning .production-plan-table th:first-child,#planning .production-plan-table td:first-child{position:sticky;left:0;background:#edf4fc;z-index:1}#planning .production-plan-table th:first-child{background:#3e68a2;z-index:3}#planning .production-plan-table th:nth-child(2),#planning .production-plan-table td:nth-child(2){position:sticky;left:89px;background:#edf4fc;z-index:1}#planning .production-plan-table th:nth-child(2){background:#3e68a2;z-index:3}.plan-short{background:#fff0ed;color:#b42318!important;font-weight:700}.plan-issues{margin-top:12px;padding:12px;background:#fff;border:1px solid #d9e4f0;border-radius:8px;font-size:14px}.plan-issues p{margin:6px 0}

/* /production-plan-sections.css?v=20261001 */
#planning .production-plan-wrap{height:calc(100vh - 230px);min-height:360px}#planning .production-plan-table .plan-section td{position:static;background:#dce9f8;color:#17365d;text-align:left;height:42px;font-size:16px;border-top:3px solid #fff}#planning .plan-section span{margin-left:20px;font-size:14px;font-weight:400}#planning .production-plan-table th:nth-child(3){width:150px;min-width:150px!important}#planning .production-plan-table th:nth-child(8){width:200px;min-width:200px!important}#planning .production-plan-table td:nth-child(8){text-align:left}#planning .production-plan-table td{height:28px}.production-plan-summary:empty,.plan-line-loads:empty{display:none}

/* /production-plan-compact.css?v=20261001-02 */
#planning .production-plan-table{width:2622px!important;min-width:0;table-layout:fixed;border-collapse:separate;border-spacing:0}#planning .production-plan-table th,#planning .production-plan-table td{box-sizing:border-box}#planning .production-plan-table th:nth-child(1){width:78px!important;min-width:78px!important}#planning .production-plan-table th:nth-child(2){width:144px!important;min-width:144px!important}#planning .production-plan-table th:nth-child(3){width:160px!important;min-width:160px!important}#planning .production-plan-table th:nth-child(n+9){width:80px!important;min-width:80px!important}#planning .production-plan-table tr:not(.plan-section)>:nth-child(n+4):nth-child(-n+8){display:none}#planning .production-plan-table tr:not(.plan-section)>:nth-child(2){left:78px!important;text-align:left!important;font-weight:700!important;padding-left:10px}#planning .production-plan-table tr:not(.plan-section)>:nth-child(2) *{font-weight:700!important}#planning .production-plan-table .plan-section td{left:auto!important;padding-left:12px}

/* /production-plan-week.css?v=20261001-03 */
#planning .production-plan-table tr:not(.plan-section)>:nth-child(3){text-align:left;padding-left:10px}#planning .production-plan-table th.plan-saturday{background:#817044;color:#fff}#planning .production-plan-table th.plan-sunday{background:#7c5671;color:#fff}

/* /production-data.css?v=20261001-01 */
.actual-table{table-layout:fixed;width:2622px;border-collapse:separate;border-spacing:0;font-size:12px}.actual-table th,.actual-table td{box-sizing:border-box;width:80px;height:25px;padding:4px 8px;border-right:1px solid #dce5f0;border-bottom:1px solid #dce5f0;text-align:center;white-space:nowrap}.actual-table th{position:sticky;top:0;background:#486aa5;color:white;z-index:3}.actual-table th:first-child,.actual-table td:first-child{width:78px;position:sticky;left:0;background:#edf3fc;z-index:2}.actual-table th:nth-child(2),.actual-table td:nth-child(2){width:144px;position:sticky;left:78px;background:#f6f9fe;z-index:2;text-align:left}.actual-table th:nth-child(3),.actual-table td:nth-child(3){width:160px;text-align:left}.actual-table th:first-child,.actual-table th:nth-child(2){background:#486aa5;z-index:4}.actual-table tr:nth-child(even) td:not(:nth-child(2)){background:#fdfaf3}.actual-table th.plan-saturday{background:#817044}.actual-table th.plan-sunday{background:#7c5671}

/* /assembly-format.css?v=20260920-01 */
.assembly-number{font-family:Arial,sans-serif;font-weight:700;font-size:12px;background:transparent}
.demand-matrix tbody tr:nth-child(odd) td.has-demand{background:#fff}
.demand-matrix tbody tr:nth-child(even) td.has-demand{background:#fffaf0}
.demand-matrix tbody tr:hover td.has-demand{background:#edf6ff}
.demand-matrix td.has-demand button{background:transparent}
.demand-matrix:not(.list-mode){min-width:0;width:max-content}
.demand-matrix:not(.list-mode) th,.demand-matrix:not(.list-mode) td,.demand-matrix:not(.list-mode) td button,.demand-matrix:not(.list-mode) .assembly-number{font-family:"DM Sans","Noto Sans SC",Arial,sans-serif;font-size:12px}
.demand-matrix:not(.list-mode) tbody td{box-sizing:border-box;height:22px;padding-top:0;padding-bottom:0;line-height:20px}
.demand-matrix:not(.list-mode) td.has-demand button{display:block;box-sizing:border-box;height:20px;line-height:20px;padding-top:0;padding-bottom:0}
.demand-matrix:not(.list-mode) tbody td,.demand-matrix:not(.list-mode) tbody td button,.demand-matrix:not(.list-mode) tbody .assembly-number{font-weight:400}
.demand-matrix:not(.list-mode) tbody td:nth-child(2),.demand-matrix:not(.list-mode) tbody td:nth-child(3){font-weight:700}
.demand-matrix:not(.list-mode) tbody td:first-child,.demand-matrix:not(.list-mode) tbody .assembly-number{font-weight:700}
.demand-matrix[data-period="day"] th.period-col{font-size:10px}
.demand-matrix.list-mode{table-layout:auto;width:max-content;min-width:100%}
.demand-matrix.list-mode th:nth-child(n){width:auto}
.demand-matrix.list-mode th,.demand-matrix.list-mode td{white-space:nowrap}
.demand-matrix.list-mode th:nth-child(3),.demand-matrix.list-mode td:nth-child(3),.demand-matrix.list-mode th:nth-child(4),.demand-matrix.list-mode td:nth-child(4),.demand-matrix.list-mode th:nth-child(5),.demand-matrix.list-mode td:nth-child(5){text-align:right}
.demand-matrix.list-mode{table-layout:auto;width:max-content;min-width:100%}
.demand-matrix.list-mode th,.demand-matrix.list-mode td{width:auto;min-width:0;white-space:nowrap}
.demand-matrix.list-mode th:nth-child(1),.demand-matrix.list-mode td:nth-child(1){min-width:250px}
.demand-matrix.list-mode th:nth-child(2),.demand-matrix.list-mode td:nth-child(2){min-width:180px}
.demand-matrix.list-mode th:nth-child(3),.demand-matrix.list-mode td:nth-child(3),.demand-matrix.list-mode th:nth-child(4),.demand-matrix.list-mode td:nth-child(4),.demand-matrix.list-mode th:nth-child(5),.demand-matrix.list-mode td:nth-child(5){min-width:100px}
.demand-matrix.list-mode th:nth-child(6),.demand-matrix.list-mode td:nth-child(6){min-width:90px}
.demand-matrix.list-mode th:nth-child(7),.demand-matrix.list-mode td:nth-child(7){min-width:140px}
.demand-matrix.list-mode th:nth-child(7),.demand-matrix.list-mode td:nth-child(7){min-width:90px}
.demand-matrix.list-mode th:nth-child(8),.demand-matrix.list-mode td:nth-child(8){min-width:140px}
.demand-matrix:not(.list-mode) tbody td:nth-child(4){font-weight:700}
.demand-matrix.list-mode tbody td:nth-child(6){font-weight:700}
.demand-matrix[data-period="day"] th.period-col,.demand-matrix[data-period="week"] th.period-col{font-size:12px}

/* /purchase-orders.css?v=20260915-01 */
.purchase-order-tools{max-width:1180px}.purchase-order-tools .transit-search input{width:260px}.purchase-order-meta{max-width:190px;overflow:hidden;color:#60758e;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.purchase-order-panel{overflow:hidden}.purchase-order-wrap{height:calc(100vh - 188px);min-height:430px;overflow:auto}.purchase-order-table{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0;table-layout:fixed}.purchase-order-table th{position:sticky;top:0;z-index:3;height:34px;padding:7px 9px;background:#3e68a2;color:#fff;font-size:12px;text-align:center;white-space:nowrap}.purchase-order-table td{height:31px;padding:5px 9px;border-right:1px solid #e2e8f0;border-bottom:1px solid #dce5ef;color:#17365d;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.purchase-order-table td.num{text-align:right;font-variant-numeric:tabular-nums}.purchase-order-table tbody tr:nth-child(even){background:#fffaf0}.purchase-order-table .purchase-order-group td{background:#e7f2ff;font-weight:700}.purchase-order-table .purchase-order-child td:first-child{padding-left:42px}.purchase-order-toggle{width:23px;height:23px;margin-right:7px;border:1px solid #9bbbe0;border-radius:6px;background:#fff;color:#16589d;font-weight:800;cursor:pointer}.purchase-order-footer{display:flex;justify-content:space-between;padding:8px 13px;border-top:1px solid #dbe4ee;color:#60758e;font-size:12px}.purchase-order-empty{text-align:center!important;color:#71839a!important}.purchase-order-table th:nth-child(1){width:105px}.purchase-order-table th:nth-child(2){width:185px}.purchase-order-table th:nth-child(3){width:90px}.purchase-order-table th:nth-child(4){width:135px}.purchase-order-table th:nth-child(5){width:105px}.purchase-order-table th:nth-child(6),.purchase-order-table th:nth-child(7){width:110px}.purchase-order-table th:nth-child(8){width:70px}
.purchase-order-page{display:flex;flex-direction:column;min-height:calc(100vh - 118px)}.purchase-order-tools{max-width:none;flex:1;justify-content:flex-end}.purchase-order-meta{order:-1;max-width:none;flex:0 1 auto;overflow:visible;text-overflow:clip;white-space:nowrap;margin-right:4px}.purchase-order-panel{flex:1;min-height:0;display:flex;flex-direction:column}.purchase-order-wrap{height:auto;min-height:0;flex:1}.purchase-order-table td{height:26px;padding:2px 9px}.purchase-order-table th{height:30px;padding:5px 9px}
.purchase-order-page{display:none}.purchase-order-page.active{display:flex}
.purchase-order-page.active{display:block;min-height:0}.purchase-order-panel{display:block;flex:none}.purchase-order-wrap{height:auto;max-height:calc(100vh - 250px);flex:none}
.purchase-order-page.active{height:auto!important;min-height:0!important}.purchase-order-panel{height:auto!important;max-height:none!important}.purchase-order-wrap{height:auto!important;max-height:none!important}
.purchase-order-wrap{overflow:auto;max-height:calc(100vh - 250px);padding-bottom:8px}.purchase-order-table thead{position:sticky;top:0;z-index:5}.purchase-order-table thead th{position:sticky;top:0;z-index:6}
.purchase-order-page.active{display:flex;flex-direction:column;min-height:calc(100vh - 80px)}.purchase-order-panel{display:flex;flex:1;min-height:0;flex-direction:column}.purchase-order-wrap{height:calc(100vh - 215px)!important;max-height:none!important;min-height:360px;overflow:auto;padding-bottom:8px}.purchase-order-footer{flex:none}
.purchase-order-tools .purchase-order-icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;padding:0;border-radius:7px;font-size:18px;line-height:1;flex:none}.purchase-order-tools .purchase-order-icon-button:disabled{opacity:.55;cursor:wait}.purchase-order-icon-button[aria-busy="true"] span{animation:purchase-order-spin 1s linear infinite}.purchase-order-sync-status{flex:none;margin:6px 0 0;padding:6px 10px;border:1px solid #d4e1f2;border-radius:6px;background:#f6f9ff;color:#355b87;font-size:12px;line-height:1.4}.purchase-order-sync-status:empty{display:none}@keyframes purchase-order-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.purchase-order-icon-button[aria-busy="true"] span{animation:none}}
#purchaseorders.active>.purchase-order-head{display:grid!important;grid-template-columns:minmax(145px,auto) minmax(0,1fr);align-items:center!important;gap:12px;margin-bottom:12px}.purchase-order-head>div:first-child{width:auto!important;min-width:0}.purchase-order-head h1{margin-bottom:0}.purchase-order-head .purchase-order-meta{display:block;margin:4px 0 0;color:#637a94;font-size:12px;line-height:18px;max-width:260px;white-space:normal;overflow-wrap:anywhere}.purchase-order-head .purchase-order-tools{display:grid!important;grid-template-columns:minmax(105px,1.8fr) minmax(82px,1fr) auto;gap:5px;align-items:center;width:auto!important;min-width:0}.purchase-order-tools>*{min-width:0}.purchase-order-head .transit-search{width:100%!important;height:38px;box-sizing:border-box;padding:0 9px;gap:6px;background:#fff}.purchase-order-head .transit-search input{width:100%;height:100%;min-width:0;font:400 13px/1.2 "DM Sans","Microsoft YaHei",sans-serif}.purchase-order-head select{width:100%;height:38px;box-sizing:border-box;padding:0 9px;border:1px solid #cad7e6;border-radius:8px;background:#fff;color:#17365d;font:400 13px/1.2 "DM Sans","Microsoft YaHei",sans-serif}.purchase-order-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.purchase-order-actions .btn:hover{transform:none}@media(max-width:1050px){#purchaseorders.active>.purchase-order-head{grid-template-columns:minmax(125px,auto) minmax(0,1fr);gap:8px}}@media(max-width:560px){#purchaseorders.active>.purchase-order-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:6px}.purchase-order-head .purchase-order-tools{grid-template-columns:minmax(0,1fr) auto}.purchase-order-head .transit-search{grid-column:1/-1}}
.purchase-order-page .purchase-order-table{table-layout:fixed!important;width:100%!important}.purchase-order-page .purchase-order-table th{width:auto!important}.purchase-order-group{cursor:pointer}.purchase-order-group:hover td{background:#d8eaff!important}
.purchase-order-head .purchase-order-tools{grid-template-columns:minmax(180px,320px) minmax(110px,160px) auto!important;justify-content:end!important}.purchase-order-head .purchase-order-tools .transit-search{max-width:320px}.purchase-order-head .purchase-order-tools>select{max-width:160px}@media(max-width:760px){.purchase-order-head .purchase-order-tools{grid-template-columns:minmax(120px,1fr) 110px auto!important}}@media(max-width:560px){.purchase-order-head .purchase-order-tools{grid-template-columns:minmax(0,1fr) auto!important}.purchase-order-head .purchase-order-tools .transit-search{max-width:none}}
.purchase-order-actions .btn[hidden]{display:none!important}

/* /workspace-layout.css */
/* Shared workspace geometry; existing table typography and row heights are retained. */
:root{--cloud-bar-height:34px;--workspace-sidebar:220px}
.app-shell>main,.content{min-width:0;max-width:none}
.content{padding-bottom:calc(var(--cloud-bar-height) + 16px)}
body.sidebar-collapsed .app-shell>main{width:100%;min-width:0;max-width:100%}
.sidebar{height:100dvh;overflow:hidden;z-index:200}
.sidebar>.brand,.sidebar>.sidebar-footer{flex-shrink:0}
.sidebar>nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.page-head{gap:12px;flex-wrap:wrap;z-index:20}
.page-head>div{min-width:0;max-width:100%}
.parts-head-actions,.project-head-actions,.transit-page-tools,.demand-tools,.process-flow-actions,.production-plan-actions,.access-toolbar,.qdocs-toolbar,.master-actions{min-width:0;max-width:100%;flex-wrap:wrap;gap:6px}
.page-head :is(button,.btn),.demand-period-tabs{flex-shrink:0;white-space:nowrap}
.page-head :is(input,select){min-width:0;max-width:100%}
.page-head label{max-width:100%}
.page-head label>input{min-width:0}
.demand-head .demand-tools .transit-search{width:165px;flex:0 1 165px}
@media(min-width:1100px) and (max-width:1400px){.demand-head .demand-tools .transit-search{width:140px;flex-basis:140px}}
#bommanagement .bom-search-box button{width:auto;min-width:52px;padding-inline:10px}
.workspace-fit-table{height:var(--workspace-table-height)!important;min-height:0!important;max-height:none!important;overflow:auto!important;overscroll-behavior:contain}
.demand-foot,.inventory-footer,.purchase-order-footer,.qdocs-foot{flex-wrap:wrap;gap:6px 16px}
#cloudSyncBar{left:var(--workspace-sidebar)!important;z-index:100!important;flex-wrap:wrap;gap:5px 10px!important;max-height:35dvh;overflow:auto}
#cloudSyncText{min-width:0;overflow-wrap:anywhere}
#cloudSyncBar button{min-height:24px;padding:3px 8px;border:1px solid #bbcde2;border-radius:5px;background:#fff;color:#17365d;white-space:nowrap;cursor:pointer}
#cloudSyncBar a{color:#245fa8;text-underline-offset:2px}
body.sidebar-collapsed{--workspace-sidebar:0px}
.toast,.quality-toast{bottom:calc(var(--cloud-bar-height) + 12px)!important;max-width:calc(100vw - 32px);z-index:3000!important}
.modal-backdrop,.project-modal,.parts-modal,.qdocs-modal-backdrop,.transit-edit-backdrop,.qdocs-attachment-backdrop,.history-modal{z-index:2000!important}
.modal,.parts-dialog,.project-dialog,.qdocs-modal,.transit-attachment-dialog{max-height:calc(100dvh - 24px);min-width:0;overflow:auto}
.governance-modal .modal{width:min(680px,calc(100vw - 36px))}
.modal-actions,.parts-dialog>footer,.project-dialog>footer{flex-shrink:0;flex-wrap:wrap}
:is(button,a,input,select,textarea):focus-visible{outline:2px solid #3679cb;outline-offset:2px}
@media(max-width:760px){
 :root{--workspace-sidebar:0px}
 .content{padding-top:62px;padding-inline:16px}
 .mobile-menu{z-index:250}
 .page-head{align-items:flex-start}
 .parts-head-actions,.project-head-actions,.transit-page-tools,.process-flow-actions,.production-plan-actions{width:100%;justify-content:flex-start}
 .page-head .transit-search,.page-head .parts-head-actions>label{max-width:100%}
 .demand-period-tabs{max-width:100%}
 .demand-period-tabs button{padding-inline:7px}
 /* Keep the assembly identifier pinned; the other identifiers can scroll on a phone. */
 .demand-matrix:not(.list-mode) th:nth-child(2),.demand-matrix:not(.list-mode) th:nth-child(3){left:auto;z-index:3}
 .demand-matrix:not(.list-mode) td:nth-child(2),.demand-matrix:not(.list-mode) td:nth-child(3){position:static;left:auto;z-index:auto}
 #cloudSyncText{flex:1 1 100%}
 .transit-add-modal{display:block!important;overflow:auto!important}
 .transit-add-modal .transit-modal-grid{min-height:240px;overflow:visible}
 .transit-add-modal .modal-actions{position:sticky;bottom:0;background:#fff;padding:10px 0}
}
@media(prefers-reduced-motion:reduce){.view.active{animation:none}.btn:hover{transform:none}}

/* /workspace-shell.css?v=20260926-03 */
:root{--department-rail-width:58px;--workspace-sidebar:278px}
:root{--cloud-bar-height:0px}
.app-shell{grid-template-columns:var(--department-rail-width) minmax(0,1fr)!important;min-height:100dvh;transition:grid-template-columns .2s ease}
.app-shell.nav-open{grid-template-columns:var(--department-rail-width) 220px minmax(0,1fr)!important}
.app-shell>main{grid-column:2;min-width:0;max-width:none}
.app-shell.nav-open>main{grid-column:3}
.department-rail{position:fixed;inset:0 auto 0 0;width:var(--department-rail-width);z-index:220;display:flex;flex-direction:column;align-items:center;gap:14px;padding:14px 8px;background:#0e2a49;border-right:1px solid rgba(255,255,255,.08)}
.rail-home{height:42px;width:42px;display:grid;place-items:center;text-decoration:none;border-radius:10px;margin-bottom:8px}
.rail-home:hover{background:rgba(255,255,255,.08)}
.rail-home .brand-mark{width:34px;height:34px;border-radius:10px;font-size:1rem}
.rail-departments{display:flex;flex:1;min-height:0;flex-direction:column;align-items:center;gap:7px;width:100%;overflow-y:auto;scrollbar-width:none}
.rail-departments::-webkit-scrollbar{display:none}
.rail-department{width:40px;height:40px;flex:0 0 40px;border:0;border-radius:9px;background:transparent;color:#b9d4ed;display:grid;place-items:center;font-size:1.05rem;cursor:pointer;transition:background-color .15s,color .15s,transform .15s}
.rail-department:hover{background:rgba(111,176,233,.16);color:#fff}
.rail-department.active{background:#1b568d;color:#fff;box-shadow:inset 3px 0 #62b8ff}
.rail-department:focus-visible{outline:2px solid #78c5ff;outline-offset:2px}
.rail-department.permission-preview-hidden{display:none}
.rail-tooltip{position:fixed;left:calc(var(--department-rail-width) + 9px);z-index:10000;max-width:min(260px,calc(100vw - var(--department-rail-width) - 24px));padding:7px 10px;border:1px solid rgba(255,255,255,.14);border-radius:6px;background:#102f50;color:#fff;font-size:12px;font-weight:600;line-height:1.25;white-space:nowrap;box-shadow:0 5px 16px rgba(9,28,48,.22);opacity:0;visibility:hidden;transform:translateY(-50%) translateX(-3px);transition:opacity .12s ease,transform .12s ease,visibility .12s;pointer-events:none}
.rail-tooltip.visible{opacity:1;visibility:visible;transform:translateY(-50%) translateX(0)}
.rail-bottom{padding-top:9px;border-top:1px solid rgba(255,255,255,.15)}
.sidebar{left:calc(var(--department-rail-width) - 220px);width:220px;padding:22px 14px 16px;background:#fff;color:#17365d;border-right:1px solid #d9e4ef;box-shadow:4px 0 18px rgba(22,53,87,.035);transform:none;transition:left .2s ease;pointer-events:none}
.app-shell.nav-open .sidebar{left:var(--department-rail-width);transform:none;pointer-events:auto}
.sidebar .brand{color:#17365d;padding:0 4px 15px;font-size:1.08rem}
.sidebar .brand>span:last-child>span{color:#087bdb}
.secondary-menu-title{min-height:38px;display:flex;align-items:center;padding:6px 9px;margin:0 0 10px;border-bottom:1px solid #e4ebf3;color:#17365d;font-size:.79rem;font-weight:700;letter-spacing:.02em}
.sidebar>.department-nav{gap:4px;padding:0 0 10px}
.sidebar .nav-group{border-radius:8px}
.sidebar .nav-parent{min-height:38px;padding:8px 9px;background:transparent;color:#385776;border-radius:7px;font-size:.8rem}
.sidebar .nav-parent:hover{background:#eef5fb;color:#123f6b}
.sidebar .nav-parent b{font-weight:600}
.sidebar .nav-parent i{color:#738ca5}
.sidebar .nav-group.active>.nav-parent{background:#eaf3fc;color:#075ca8}
.sidebar .nav-subnav{margin:0 0 4px 12px;padding:4px 0 5px 9px;border-left:1px solid #d5e3f0}
.sidebar .nav-subnav button{min-height:34px;padding:8px 10px;color:#526b83;font-size:.8rem}
.sidebar .nav-subnav button:hover,.sidebar .nav-subnav button.active{background:#eaf3fc;color:#075ca8}
.sidebar[data-has-active="true"] .nav-group:not(.active){display:none}
.sidebar[data-has-active="true"] .nav-group.active>.nav-parent{display:none}
.sidebar[data-has-active="true"] .nav-group.active .nav-subnav{display:grid;margin:0;padding:0;border:0}
.sidebar[data-has-active="true"] .nav-group.active .nav-subnav button{padding-left:11px}
.sidebar-footer{border-top:1px solid #e4ebf3;padding-top:10px}
.sidebar .compliance{border-color:#e4ebf3;color:#17365d}
.sidebar .compliance span{color:#7b8fa4}
.sidebar .sidebar-footer .nav-item{color:#385776}
.sidebar .sidebar-footer .nav-item:hover,.sidebar .sidebar-footer .nav-item.active{background:#eef5fb;color:#075ca8}
#settingsPanel.settings-panel{position:fixed;left:70px;right:auto;bottom:66px;width:220px;box-sizing:border-box;z-index:260;color:#17365d}
#settingsPanel.settings-panel.open{display:flex;flex-direction:column;gap:0;max-height:min(76dvh,620px);overflow-y:auto;padding:12px;overscroll-behavior:contain}
#settingsPanel.settings-panel.open{pointer-events:auto}
#settingsPanel .settings-title{min-height:28px;margin:0 0 8px;font-size:14px;line-height:1.3}
#settingsPanel .settings-title strong{font-size:14px;font-weight:700}
#settingsPanel .settings-title button{flex:0 0 24px;cursor:pointer}
#settingsPanel .search{box-sizing:border-box;min-width:0;min-height:36px;margin:0 0 5px;padding:7px 9px;display:flex;align-items:center;gap:7px}
#settingsPanel .search input{box-sizing:border-box;min-width:0;width:100%;font-size:12px;line-height:1.35}
#settingsPanel .settings-row{min-height:36px;font-size:12px;line-height:1.35}
#settingsPanel .settings-access-link{box-sizing:border-box;width:100%;min-height:38px;padding:8px 0;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-top:1px solid #e5edf5;background:transparent;color:#315f9c;text-align:left;font-size:12px;font-weight:650;line-height:1.35;white-space:normal;cursor:pointer}
#settingsPanel .settings-access-link span{flex:0 0 auto;font-size:15px;line-height:1}
#settingsPanel .settings-profile{box-sizing:border-box;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;margin-top:3px;padding-top:9px;min-width:0}
#settingsPanel .settings-profile .avatar{width:30px;height:30px;display:grid;place-items:center;font-size:12px}
#settingsPanel .settings-profile div{min-width:0;gap:2px}
#settingsPanel .settings-profile strong{font-size:11px;line-height:1.25;overflow-wrap:anywhere}
#settingsPanel .settings-profile small{font-size:10px;line-height:1.3;overflow-wrap:anywhere}
#settingsPanel .settings-signout{box-sizing:border-box;min-width:38px;padding:6px 7px;writing-mode:horizontal-tb;white-space:nowrap;text-align:center;font-size:11px;line-height:1.2}
#settingsPanel[aria-hidden="true"]{display:none!important;pointer-events:none}
#settingsPanel .settings-profile strong{display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
#cloudSyncBar.settings-cloud-tools{position:static!important;inset:auto!important;z-index:auto!important;box-sizing:border-box;display:grid!important;grid-template-columns:1fr 1fr;gap:6px!important;max-height:none!important;margin:5px 0 8px;padding:9px 0!important;overflow:visible!important;border:0!important;border-top:1px solid #e5edf5!important;border-bottom:1px solid #e5edf5!important;border-radius:0!important;background:transparent!important;font:inherit!important}
#cloudSyncText{grid-column:1/-1;font-size:11px;line-height:1.4}
#cloudSyncBar.settings-cloud-tools button{min-height:30px;padding:5px 6px;border:1px solid #d4e0ed;border-radius:6px;background:#f7faff;color:#31577f;font-size:11px;line-height:1.25;white-space:normal}
#cloudSyncBar.settings-cloud-tools button[hidden]{display:none!important}
#cloudDraftDownload{grid-column:1/-1}
.content{padding-bottom:24px}
.content{max-width:none;padding-inline:24px}
#cloudSyncBar{left:var(--department-rail-width)!important}
@media(max-width:1050px){.content{padding-inline:18px}}
@media(max-width:760px){
 :root{--workspace-sidebar:0px}
 .app-shell{display:block;min-height:100dvh}
 .app-shell>main{display:block;width:100%;grid-column:auto}
 .department-rail{display:none}
 .sidebar{left:0;width:min(290px,86vw);transform:translateX(-105%);transition:transform .22s ease;box-shadow:16px 0 42px rgba(13,37,62,.18)}
 .sidebar.open{width:min(290px,86vw)!important}
 .sidebar.open{transform:translateX(0)}
 #settingsPanel.settings-panel{left:12px;right:auto;bottom:64px;width:min(260px,calc(100vw - 24px))}
 .content{padding:66px 14px calc(var(--cloud-bar-height) + 18px)}
 .mobile-menu{position:fixed;top:11px;left:12px;z-index:260;display:grid;place-items:center;width:38px;height:38px;border:1px solid #ccdae8;border-radius:8px;background:#fff;color:#17365d;box-shadow:0 3px 12px rgba(20,50,80,.08)}
 #cloudSyncBar{left:0!important}
}
@media(prefers-reduced-motion:reduce){.rail-department,.sidebar{transition:none}}

/* /table-format-unified.css?v=20260926-01 */
/* Shared data-table type and density. Keep each module's column model and alignment. */
.view table {
  font-family: "Microsoft YaHei", "微软雅黑", sans-serif !important;
  font-size: 12px !important;
}

.view table :is(th, td, *) {
  font-family: "Microsoft YaHei", "微软雅黑", sans-serif !important;
  font-size: 12px !important;
}

.view table thead th {
  box-sizing: border-box;
  height: 30px !important;
  padding-block: 4px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
}

.view table thead th :where(*) {
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
}

.view table tbody tr {
  height: 22px !important;
}

.view table tbody td {
  box-sizing: border-box;
  height: 22px !important;
  padding-block: 1px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.view table tbody td :where(*) {
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

/* Project master: emphasize the assembly-number values as requested. */
#projectoverview .project-master-table tbody td:first-child,
#projectoverview .project-master-table tbody td:first-child :where(*) {
  font-weight: 700 !important;
}

/* Parts catalog: emphasize the part-number values in the first column. */
#partscatalog .parts-table-wrap table tbody td:first-child,
#partscatalog .parts-table-wrap table tbody td:first-child :where(*) {
  font-weight: 700 !important;
}

.view table :is(th, td) {
  font-variant-numeric: tabular-nums;
}

/* The demand matrix keeps its compact, one-line daily values at the shared row height. */
.view .demand-matrix td.has-demand {
  padding-block: 0;
}

.view .demand-matrix td.has-demand button {
  height: 21px;
  line-height: 20px;
}

/* BOM: align the heading and action group consistently when the pane narrows. */
#bommanagement .parts-page-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 14px 18px;
  width: 100%;
  min-width: 0;
}

#bommanagement .parts-page-head > div:first-child {
  min-width: 0;
  margin: 0;
  text-align: left;
}

#bommanagement .bom-actions {
  box-sizing: border-box;
  display: flex;
  flex: 0 1 auto;
  justify-content: flex-end;
  width: auto;
  min-width: 0;
  max-width: 100%;
  gap: 8px;
}

#bommanagement .bom-actions > * {
  flex: 0 0 auto;
}

#bommanagement .bom-wrap {
  width: 100%;
  min-width: 0;
  height: calc(100dvh - 185px);
  min-height: 300px;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

#bommanagement .bom-table {
  width: max-content;
  min-width: 100%;
  table-layout: fixed;
}

#bommanagement .bom-table thead th {
  height: 30px;
  padding-block: 4px;
  line-height: 20px;
}

#bommanagement .bom-table tbody td {
  height: 22px;
  padding-block: 1px;
  line-height: 20px;
}

@media (max-width: 1180px) {
  #bommanagement .parts-page-head {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  #bommanagement .bom-actions {
    justify-content: flex-start;
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 760px) {
  #bommanagement .parts-page-head {
    gap: 12px;
  }

  #bommanagement .bom-actions {
    gap: 6px;
  }

  #bommanagement .bom-search-box {
    flex: 1 1 260px !important;
    width: min(100%, 360px) !important;
    min-width: 0;
  }

  #bommanagement .bom-wrap {
    height: calc(100dvh - 260px);
    min-height: 260px;
  }
}

/* /responsive-page-heads.css?v=20260926-01 */
/* Align compact page headers with their content edge when the workspace narrows. */
@media (max-width: 1350px) {
  .view.active:not(#inventoryinfo) > .page-head {
    display: flex;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: 100%;
    margin-inline: 0 !important;
    text-align: left !important;
    gap: 10px 14px;
  }

  .view.active:not(#inventoryinfo) > .page-head > div:first-child {
    align-self: flex-start;
    width: 100%;
    max-width: 100%;
    margin-inline: 0 !important;
    text-align: left !important;
  }

  .view.active:not(#inventoryinfo) > .page-head > :is(.parts-head-actions, .transit-page-tools, .access-toolbar) {
    align-self: stretch;
    flex: 0 1 auto;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    justify-content: flex-start !important;
    margin-inline: 0 !important;
  }

  .view.active:not(#inventoryinfo) > .page-head :is(.parts-head-actions > label, .transit-search) {
    min-width: 0;
    max-width: 100%;
  }
}

/* /plm-drawings.css?v=20261003-03 */
/* Reserve the icon's space only in the two requested number columns. */
#projectoverview .project-master-table th:first-child{width:calc(12ch + 21px)!important}
#partscatalog .parts-table-wrap th:first-child{width:126px}
#projectoverview #projectRows td:first-child,
#partscatalog #partsCatalogRows td:first-child{white-space:nowrap}
#projectoverview .plm-number-cell,
#partscatalog .plm-number-cell{display:flex;align-items:center;gap:6px;width:100%;min-width:0}
#projectoverview .plm-number-cell>.assembly-number,
#partscatalog .plm-number-cell>.part-link{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#projectoverview .plm-drawing,
#partscatalog .plm-drawing{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:15px;
  height:15px;
  margin-left:auto;
  flex:0 0 15px;
  padding:0;
  vertical-align:-3px;
  border:0;
  border-radius:2px;
  color:#2163a6;
  text-decoration:none;
  line-height:15px!important;
}
#projectoverview .plm-drawing svg,
#partscatalog .plm-drawing svg{display:block;flex:none;width:15px;height:15px}
#projectoverview .plm-drawing-link:hover,
#partscatalog .plm-drawing-link:hover{color:#0a3b74;background:#e3effc}
#projectoverview .plm-drawing-link:focus-visible,
#partscatalog .plm-drawing-link:focus-visible{outline:2px solid #2163a6;outline-offset:2px}
#projectoverview .plm-drawing-unmapped,
#partscatalog .plm-drawing-unmapped{color:#8e9aa7;cursor:default}
#projectoverview .plm-drawing-legend,
#partscatalog .plm-drawing-legend{margin:4px 0 8px;color:#63758a;font-size:12px;line-height:18px}
#projectoverview .plm-drawing-assisted,
#partscatalog .plm-drawing-assisted{color:#2163a6;cursor:pointer}
#projectoverview .plm-drawing-assisted:focus-visible,
#partscatalog .plm-drawing-assisted:focus-visible{outline:2px solid #2163a6;outline-offset:2px}
.plm-drawing-legend a{color:#2163a6;white-space:nowrap}

/* /liquid-glass.css?v=20261004-01 */
/* Layered important declarations intentionally outrank older per-page themes.
   No table geometry, column widths, data semantics or business behavior changes. */
@layer liquid-glass {
 :root{--lg-ink:#202b3c;--lg-muted:#526179;--lg-rgb:255,255,255;--lg-border:rgba(255,255,255,.8);--lg-line:rgba(75,98,133,.15);--lg-surface:#f8faff;--lg-row:#f0f4fa;--lg-head:#e6edf7;--lg-accent:#0866ce;--lg-shadow:0 12px 40px rgba(46,69,110,.09),inset 0 1px 0 rgba(255,255,255,.85);--lg-alpha:.69;--lg-blur:22px;--lg-tint:.1;--lg-background:radial-gradient(ellipse at 6% 12%,#d3e9f8 0,transparent 46%),radial-gradient(ellipse at 94% 7%,#e6ddf5 0,transparent 43%),radial-gradient(ellipse at 65% 95%,#ddeae6 0,transparent 50%),#f0f3f8}
 :root[data-glass-theme="dark"]{--lg-ink:#e7edf8;--lg-muted:#a9b7cd;--lg-rgb:28,37,54;--lg-border:rgba(202,222,255,.2);--lg-line:rgba(176,197,228,.18);--lg-surface:#1a2333;--lg-row:#202c3f;--lg-head:#2c3e59;--lg-accent:#85baff;--lg-shadow:0 16px 48px rgba(0,0,0,.25),inset 0 1px 0 rgba(220,237,255,.13);--lg-background:radial-gradient(ellipse at 4% 10%,#173552 0,transparent 50%),radial-gradient(ellipse at 95% 5%,#2c274e 0,transparent 48%),#101823}
 :root[data-glass-wallpaper="prism"]{--lg-background:radial-gradient(ellipse at 0 0,rgba(112,210,243,.5),transparent 48%),radial-gradient(ellipse at 100% 20%,rgba(196,150,235,.44),transparent 46%),radial-gradient(ellipse at 75% 100%,rgba(242,188,138,.38),transparent 50%),var(--lg-surface)}
 :root[data-glass-wallpaper="dusk"]{--lg-background:radial-gradient(ellipse at 5% 15%,rgba(131,151,209,.42),transparent 55%),radial-gradient(ellipse at 90% 75%,rgba(196,138,174,.34),transparent 58%),var(--lg-surface)}
 html{background:var(--lg-surface)!important}
 body{background:var(--lg-background)!important;background-attachment:fixed!important;color:var(--lg-ink)!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif!important}
 .app-shell,main.content,.view{background:transparent!important}
 .content{padding-top:22px!important}
 .page-head h1,.parts-page-head h1,.view h1{color:var(--lg-ink)!important;letter-spacing:-.035em!important;font-weight:720!important}
 .view h2,.view h3,.view h4{color:var(--lg-ink)!important}
 .eyebrow{color:var(--lg-muted)!important;font-size:10px!important;letter-spacing:.12em!important}
 .page-head p,.parts-page-head p,.source-note,.view .subtitle{color:var(--lg-muted)!important}
 .department-rail,.sidebar,#settingsPanel,.modal,.toast,.mobile-menu,.rail-tooltip{background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(99,150,240,var(--lg-tint))),rgba(var(--lg-rgb),var(--lg-alpha))!important;border:1px solid var(--lg-border)!important;box-shadow:var(--lg-shadow)!important;backdrop-filter:blur(var(--lg-blur)) saturate(145%)!important;-webkit-backdrop-filter:blur(var(--lg-blur)) saturate(145%)!important;color:var(--lg-ink)!important}
 .department-rail{inset:8px auto 8px 5px!important;width:48px!important;padding:10px 3px!important;border-radius:22px!important;gap:12px!important}
 .rail-home{width:38px!important;height:38px!important;margin-bottom:4px!important}
 .rail-home .brand-mark,.brand-mark{background:linear-gradient(145deg,#7dbaff,#287cec)!important;color:#fff!important;box-shadow:inset 0 1px 0 #b9dcff,0 4px 12px #367ce42b!important;border-radius:12px!important}
 .rail-department{width:38px!important;height:38px!important;flex-basis:38px!important;border-radius:13px!important;color:var(--lg-muted)!important;background:transparent!important}
 .rail-department:hover{background:rgba(92,141,218,.12)!important;color:var(--lg-accent)!important}
 .rail-department.active{background:rgba(73,133,231,.18)!important;color:var(--lg-accent)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 3px 9px #143c6814!important}
 .rail-bottom{border-color:var(--lg-line)!important}
 .sidebar{top:8px!important;bottom:8px!important;border-radius:22px!important}
 .app-shell:not(.nav-open) .sidebar:not(.open){visibility:hidden!important}
 #settingsPanel.settings-panel.open{visibility:visible!important}
 .sidebar :is(.brand,.secondary-menu-title,.nav-parent,.nav-subnav button,.sidebar-footer .nav-item,.compliance),#settingsPanel :is(strong,.settings-row,.settings-access-link){color:var(--lg-ink)!important}
 .sidebar :is(.secondary-menu-title,.compliance,.sidebar-footer),#settingsPanel :is(.settings-profile,.settings-access-link){border-color:var(--lg-line)!important}
 .sidebar .nav-subnav button{border-radius:10px!important;min-height:37px!important}
 .sidebar .nav-subnav button.active{color:var(--lg-accent)!important;background:rgba(90,150,245,.16)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.24)!important}
 #settingsPanel.settings-panel{border-radius:20px!important;width:260px!important}
 .panel,.view :is(.bom-tree-panel,.bom-detail-panel,.hr-data-details,.org-dept,.metric-card,.kpi-card,.stat-card){background:rgba(var(--lg-rgb),var(--lg-alpha))!important;border:1px solid var(--lg-border)!important;border-radius:18px!important;box-shadow:var(--lg-shadow)!important}
 /* Keep expensive blur on navigation/overlays only, not every table cell. */
 .view :is(.head-actions,.parts-toolbar,.project-toolbar,.hr-att-period){border-radius:15px!important}
 .view :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea),#settingsPanel .search{background:rgba(var(--lg-rgb),.78)!important;color:var(--lg-ink)!important;border:1px solid var(--lg-line)!important;border-radius:11px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35)!important}
 input::placeholder,textarea::placeholder{color:var(--lg-muted)!important;opacity:1!important}
 .view :is(.master-search,.project-toolbar label,.product-actions label,.parts-actions label),.view label:has(>#projectSearch),.view label:has(>#partsSearch){background:rgba(var(--lg-rgb),.78)!important;color:var(--lg-muted)!important;border:1px solid var(--lg-line)!important;border-radius:11px!important}
 .view :is(.master-search,.project-toolbar label,.product-actions label,.parts-actions label)>input,.view label>#projectSearch,.view label>#partsSearch{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
 .plm-drawing-legend,.plm-drawing-legend a{color:var(--lg-muted)!important}
 .view :is(.btn,.icon-btn,.tool-btn,.action-btn),.mobile-menu{border-radius:11px!important}
 .btn.primary,.view button.primary{background:linear-gradient(155deg,#398def,#1266d2)!important;border:1px solid #5598ef!important;color:#fff!important;box-shadow:inset 0 1px 0 #91c4ff,0 5px 13px #0765cb26!important}
 .btn.secondary,.view .icon-btn,.view .tool-btn{background:rgba(var(--lg-rgb),.8)!important;color:var(--lg-ink)!important;border:1px solid var(--lg-line)!important;box-shadow:0 2px 6px #16314a0a!important}
 .view table{color:var(--lg-ink)!important;background:var(--lg-surface)!important}
 .view table thead th{background:var(--lg-head)!important;color:var(--lg-ink)!important;border-color:var(--lg-line)!important;text-shadow:none!important}
 .view table thead th :is(small,span){color:inherit!important}
 .view table tbody td{background:var(--lg-surface)!important;border-color:var(--lg-line)!important;color:var(--lg-ink)!important}
 .view table tbody tr:nth-child(even)>td{background:var(--lg-row)!important}
 .view table tbody tr:hover>td{background:color-mix(in srgb,var(--lg-accent) 10%,var(--lg-surface))!important}
 .view table tbody tr:is(.selected,[aria-selected="true"])>td{background:color-mix(in srgb,var(--lg-accent) 18%,var(--lg-surface))!important;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--lg-accent) 20%,transparent)!important}
 .view table td:is(.negative,.shortage){color:var(--lg-danger,#b5223a)!important;background:color-mix(in srgb,#dc6676 12%,var(--lg-surface))!important}
 :root[data-glass-theme="dark"]{--lg-danger:#ffadb8}
 .project-dialog{background:var(--lg-surface)!important;border:1px solid var(--lg-border)!important;border-radius:22px!important;color:var(--lg-ink)!important;box-shadow:var(--lg-shadow)!important}
 :root[data-glass-theme="dark"] .view label{color:var(--lg-ink)!important}
 .view table :is(th,td).weekend{background:color-mix(in srgb,#bd8c69 21%,var(--lg-head))!important}
 .view table :is(th,td).saturday{background:color-mix(in srgb,#bd8c69 21%,var(--lg-head))!important}
 .view table :is(th,td).sunday{background:color-mix(in srgb,#af87ad 23%,var(--lg-head))!important}
 .view table td :is(a,.plm-drawing-link){color:var(--lg-accent)!important}
 .view :is(.hr-att-footer,.table-footer,.inventory-detail-footer,.parts-foot,.hr-data-note,.source-note,.org-dept-head,.org-member,.org-branch-note){color:var(--lg-muted)!important;border-color:var(--lg-line)!important;background:rgba(var(--lg-rgb),.78)!important}
 .view :is(.hr-data-note,.source-note){border-radius:11px!important}
 .view :is(.hr-counts article,.hr-matrix-summary article){background:rgba(var(--lg-rgb),.72)!important;border-color:var(--lg-border)!important;border-radius:16px!important;box-shadow:var(--lg-shadow)!important;color:var(--lg-ink)!important}
 .view :is(.hr-counts strong,.hr-matrix-summary strong){color:var(--lg-accent)!important}
 :root[data-glass-theme="dark"] .view :is(.panel p,.panel small,.org-member strong,.org-member small,.hr-counts small,.hr-counts span,.hr-matrix-summary small){color:var(--lg-muted)!important}
 :root[data-glass-theme="dark"] .view table :is(small,.num,.quantity){color:var(--lg-muted)!important}
 :root[data-glass-theme="dark"] .assembly-number[style*="#0066FF" i]{color:#8cbbff!important}
 :root[data-glass-theme="dark"] .assembly-number[style*="#00B050" i]{color:#73d6a0!important}
 :root[data-glass-theme="dark"] .assembly-number:is([style*="#FF0000" i],[style*="#C00000" i]){color:#ffa0a7!important}
 :root[data-glass-theme="dark"] .assembly-number[style*="#7030A0" i]{color:#d2b1fa!important}
 :root[data-glass-theme="dark"] .hr-att-period button{background:var(--lg-surface)!important;color:var(--lg-ink)!important;border-color:var(--lg-line)!important}
 :root[data-glass-theme="dark"] .view .att-a{color:#a7e8c0!important;background:#173f36!important}
 :root[data-glass-theme="dark"] .view :is(.status.success,.hr-status.active){color:#a7e8c0!important;background:#173f36!important}
 :root[data-glass-theme="dark"] .view :is(.att-f,.status.danger,.hr-status.left){color:#ffc3c3!important;background:#512e39!important}
 :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--lg-accent)!important;outline-offset:3px!important}
 .glass-dialog{position:fixed;inset:18px 20px 18px auto;margin:0;width:390px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 36px);padding:24px;border-radius:28px;border:1px solid var(--lg-border);background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(94,153,238,var(--lg-tint))),rgba(var(--lg-rgb),max(.87,var(--lg-alpha)));color:var(--lg-ink);box-shadow:0 24px 90px #101d3b40,inset 0 1px 0 #ffffff88;backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%);overflow-y:auto;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}
 .glass-dialog::backdrop{background:rgba(20,32,55,.15);backdrop-filter:blur(2px)}
 .glass-dialog *{box-sizing:border-box}
 .glass-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
 .glass-eyebrow{font-size:11px;letter-spacing:.04em;color:var(--lg-muted)}
 .glass-dialog h2{margin:5px 0 0;font-size:26px;font-weight:650;letter-spacing:-.04em;color:var(--lg-ink)}
 .glass-dialog button,.glass-dialog select{font:inherit;color:var(--lg-ink);cursor:pointer}
 .glass-circle{border:1px solid var(--lg-line);border-radius:50%;background:rgba(var(--lg-rgb),.65);width:32px;height:32px;font-size:24px!important}
 .glass-description{font-size:12px;color:var(--lg-muted);margin:12px 0 18px}
 .glass-live-preview{position:relative;isolation:isolate;overflow:hidden;border-radius:20px;padding:22px 23px 34px;background:var(--lg-background);border:1px solid var(--lg-border)}
 .glass-preview-orb{position:absolute;width:150px;height:150px;border-radius:50%;background:linear-gradient(135deg,#8bcbec,#a094eb,#e8bfb7);right:-20px;top:-35px;z-index:-1;opacity:.6}
 .glass-preview-ui{padding:15px;border:1px solid var(--lg-border);background:rgba(var(--lg-rgb),var(--lg-alpha));box-shadow:var(--lg-shadow);border-radius:16px;backdrop-filter:blur(var(--lg-blur));-webkit-backdrop-filter:blur(var(--lg-blur))}
 .glass-preview-label{display:block;font-size:8px;letter-spacing:.14em;color:var(--lg-muted)}
 .glass-preview-ui strong{display:block;font-size:18px;margin:5px 0 12px;font-weight:650}
 .glass-preview-toolbar{display:flex;align-items:center;gap:8px;background:rgba(var(--lg-rgb),.7);border:1px solid var(--lg-line);padding:6px 9px;border-radius:9px;font-size:10px;color:var(--lg-muted)}
 .glass-preview-toolbar i{flex:1}
 .glass-preview-lines{display:grid;gap:6px;margin:12px 0 0}.glass-preview-lines i{height:4px;border-radius:3px;background:var(--lg-line)}.glass-preview-lines i:last-child{width:62%}
 .glass-preview-caption{position:absolute;bottom:9px;left:0;width:100%;text-align:center;color:var(--lg-muted);font-size:9px}
 .glass-control{margin:20px 0 0;padding:0;border:0;min-width:0}.glass-control-title,.glass-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
 .glass-control-title{font-weight:600}.glass-control-title output{font-size:12px;color:var(--lg-accent);font-variant-numeric:tabular-nums}
 #glassStrength{display:block;width:100%;margin:14px 0 3px;accent-color:#287fe2;cursor:pointer;height:22px;padding:0}
 .glass-range-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--lg-muted)}
 .glass-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:12px;padding:4px;border-radius:12px;background:var(--lg-line)}
 .glass-presets button{border:0;border-radius:9px;background:transparent;padding:7px 2px;font-size:12px}.glass-presets button[aria-pressed="true"]{background:rgba(var(--lg-rgb),.95);box-shadow:0 2px 7px #17223818;color:var(--lg-accent)}
 .glass-row select{background:rgba(var(--lg-rgb),.8);border:1px solid var(--lg-line);border-radius:10px;padding:7px 9px;max-width:55%;font-size:12px}
 .glass-wallpapers{display:flex;gap:10px}.glass-wallpapers legend{margin-bottom:9px}.glass-wallpapers button{flex:1;border:1px solid transparent;border-radius:12px;padding:5px;font-size:10px;background:transparent}.glass-wallpapers button[aria-pressed="true"]{border-color:var(--lg-accent);background:rgba(var(--lg-rgb),.35)}
 .glass-wallpapers i{display:block;height:33px;border-radius:7px;margin-bottom:5px;background:linear-gradient(125deg,#cce6f5,#e4dcf2,#e0ebe4)}.glass-wallpapers [data-glass-wall="prism"] i{background:linear-gradient(125deg,#a0ddf2,#c6a3e8,#e9c4a3)}.glass-wallpapers [data-glass-wall="dusk"] i{background:linear-gradient(125deg,#778fbf,#3e486c,#a1779c)}
 .glass-reduce{padding-top:17px;border-top:1px solid var(--lg-line)}.glass-reduce small{display:block;font-size:10px;color:var(--lg-muted);margin-top:3px}.glass-reduce input{width:18px;height:18px;accent-color:#287fe2}
 .glass-dialog-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:22px}.glass-dialog-footer small{font-size:10px;color:var(--lg-muted)}.glass-dialog-footer button{flex-shrink:0;border:1px solid var(--lg-line);padding:6px 9px;background:rgba(var(--lg-rgb),.6);border-radius:10px;font-size:11px}
 :root[data-glass-reduce="true"] :is(.department-rail,.sidebar,#settingsPanel,.modal,.toast,.mobile-menu,.rail-tooltip,.glass-dialog,.glass-preview-ui){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:var(--lg-surface)!important}
 @supports not (backdrop-filter:blur(1px)){.department-rail,.sidebar,#settingsPanel,.modal,.glass-dialog,.glass-preview-ui{background:var(--lg-surface)!important}}
 @media(max-width:760px){.content{padding-top:66px!important}.sidebar{top:0!important;bottom:0!important}.glass-dialog{inset:10px 12px 10px auto;padding:20px;max-height:calc(100dvh - 20px)}#settingsPanel.settings-panel{width:min(260px,calc(100vw - 24px))!important}}
 @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
 @media(forced-colors:active){.department-rail,.sidebar,#settingsPanel,.panel,.glass-dialog,.glass-preview-ui{background:Canvas!important;color:CanvasText!important;border:1px solid CanvasText!important;backdrop-filter:none!important}.view table :is(th,td){background:Canvas!important;color:CanvasText!important}button{border:1px solid ButtonText!important}}
 @media print{.department-rail,.sidebar,.glass-dialog{display:none!important}body,.panel,.view table :is(th,td){background:#fff!important;color:#000!important;box-shadow:none!important}}
}

/* /metal-count.css */
#metalcount{min-width:0}#metalcount .page-head{display:flex;justify-content:space-between;gap:20px;align-items:center}#metalcount .metal-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}#metalcount .metal-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}#metalcount label,.metal-dialog label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:#4e6382}#metalcount input,#metalcount select,.metal-dialog input,.metal-dialog select,.metal-dialog textarea{min-height:36px;border:1px solid #cad7e8;border-radius:10px;padding:7px 10px;background:rgba(255,255,255,.85);color:#213956;max-width:100%;box-sizing:border-box}#metalcount input:focus,#metalcount select:focus,.metal-dialog input:focus{outline:2px solid #87b6f9;outline-offset:1px}#metalcount select{max-width:360px}#metalcount .metal-note{padding:10px 14px;margin:10px 0;font-size:12px;line-height:1.65;background:rgba(255,255,255,.64);border:1px solid #dae5f2;border-radius:10px;color:#536d8d}#metalcount .metal-tabs{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid #ccd9e8;margin:16px 0}#metalcount button{cursor:pointer}#metalcount button:disabled{opacity:.45;cursor:not-allowed}#metalcount .metal-tabs button{border:0;background:transparent;padding:12px 16px;color:#526786;font-weight:600;border-bottom:3px solid transparent}#metalcount .metal-tabs button.active{color:#215cb6;border-color:#2f71cd;background:#ffffff70}#metalcount .panel{padding:16px;border-radius:16px;border:1px solid #dce5ef;background:rgba(255,255,255,.77);margin:12px 0}#metalcount .metal-entry{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;align-items:end}#metalcount .metal-product{grid-column:span 2}#metalcount .metal-product select{max-width:none;width:100%}#metalcount output{min-height:36px;display:flex;align-items:center;font-size:20px;font-weight:700;color:#235ca5}.metal-error{color:#b62e36;font-size:12px;grid-column:1/-1;margin:0}#metalcount .metal-table-wrap{overflow:auto;max-height:65vh;padding:0}#metalcount .metal-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;white-space:nowrap}#metalcount .metal-table th{position:sticky;top:0;z-index:2;background:#46689c;color:#fff;font-weight:650;text-align:left;padding:10px 12px;border-right:1px solid #ffffff30}#metalcount .metal-table td{padding:7px 12px;border-bottom:1px solid #dce5f0;background:#fff}#metalcount .metal-table tr:nth-child(even) td{background:#f5f8fc}#metalcount .metal-table tr:hover td{background:#eaf2fd}#metalcount .metal-table small{display:block;font-size:10px;color:#7b8ba2;margin-top:3px}#metalcount .metal-table .metal-pn{font-weight:650;color:#245ca1}#metalcount .metal-table td button,#metalcount .metal-locations button,#metalcount .panel p button{border:1px solid #cfdaeb;border-radius:6px;background:#fff;color:#3463a2;padding:3px 8px;margin-right:5px}#metalcount .metal-g th:first-child,#metalcount .metal-g td:first-child{position:sticky;left:0;min-width:55px;box-sizing:border-box;width:70px;z-index:1}#metalcount .metal-g th:first-child{z-index:3}#metalcount .metal-g th:nth-child(2),#metalcount .metal-g td:nth-child(2){position:sticky;left:70px;min-width:125px;z-index:1;box-shadow:2px 0 3px #1e3a5f12}#metalcount .metal-g th:nth-child(2){z-index:3}#metalcount .metal-locations{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}#metalcount .metal-locations header{display:flex;gap:8px;align-items:center;border-bottom:1px solid #dce5f0;padding-bottom:12px}#metalcount .metal-locations header b{margin-right:auto}#metalcount .metal-locations p{display:flex;justify-content:space-between;gap:10px}#metalcount .metal-actions label{flex-direction:row;align-items:center}#metalcount input[type=checkbox]{min-height:16px}#metalcount h3{margin:8px 0;font-size:16px;color:#284768}.metal-dialog{width:min(480px,90vw);border:1px solid #d3deed;border-radius:20px;padding:24px;box-shadow:0 20px 80px #142d5130;background:#f8fbff}.metal-dialog::backdrop{background:#1b335a55;backdrop-filter:blur(4px)}.metal-dialog h2{margin:0 0 20px;font-size:20px;color:#223b5c}.metal-dialog label{margin:12px 0}.metal-dialog textarea{min-height:70px}.metal-dialog footer{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.metal-dialog .metal-error{margin-top:8px}@media(max-width:1100px){#metalcount .page-head{align-items:flex-start;flex-direction:column;gap:8px}#metalcount .metal-entry{grid-template-columns:repeat(2,minmax(120px,1fr))}#metalcount .metal-toolbar label{flex:1 1 180px}}@media(max-width:600px){#metalcount .metal-entry{grid-template-columns:1fr}#metalcount .metal-product{grid-column:auto}#metalcount .metal-tabs button{padding:10px 8px;font-size:12px}#metalcount .metal-table-wrap{max-height:65vh}}
