:root{font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;color:#17212b;background:#f4f7f9;--ink:#17212b;--muted:#70808d;--line:#dce5ea;--teal:#087f78;--teal-soft:#eaf8f6;--shadow:0 12px 28px rgba(21,48,63,.07)}
*{box-sizing:border-box}
body{margin:0}
.hidden,[hidden]{display:none!important}
.topbar{height:68px;background:#132936;color:#fff;box-shadow:0 3px 12px rgba(15,38,50,.18)}
.topbar-inner{height:100%;width:min(1220px,calc(100% - 36px));margin:auto;display:flex;align-items:center;justify-content:space-between}
.brand,.top-actions{display:flex;align-items:center;gap:10px}
.brand-mark,.logo-mark{display:grid;place-items:center;background:#1fa195;color:#e8fffb;font-weight:800}
.brand-mark{width:34px;height:34px;border-radius:10px;font-size:13px}
.brand b,.brand small{display:block}
.brand b{font-size:16px}
.brand small{margin-top:2px;color:#a9c3ca;font-size:11px}
.top-actions{color:#b9cbd0;font-size:12px}
.status-dot{width:8px;height:8px;border-radius:50%;background:#6fe0aa}
.shell{width:min(1220px,calc(100% - 36px));margin:28px auto 60px}
.hero{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:22px}
.eyebrow,.panel-kicker{display:block;margin:0 0 7px;color:var(--teal);font-size:11px;font-weight:800;letter-spacing:1.5px}
.hero h1{margin:0 0 9px;font-size:30px;line-height:1.2}
.hero p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.hero-note{min-width:225px;padding:13px 17px;border:1px solid #c5dfda;border-radius:10px;background:#f0fbf9}
.hero-note span,.hero-note b{display:block}
.hero-note span{margin-bottom:4px;color:var(--muted);font-size:11px}
.hero-note b{color:#17655f;font-size:13px}
.notice{margin-bottom:14px;padding:11px 14px;border:1px solid #bfe2d2;border-radius:8px;background:#eaf7f1;color:#236349;font-size:13px}
.notice.error{border-color:#efc0b4;background:#fff1ee;color:#9a3e2c}
.panel{margin-bottom:18px;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}
.catalog-layout{display:grid;grid-template-columns:286px minmax(0,1fr);gap:18px}
.catalog-sidebar{align-self:start;margin:0;padding:18px}
.catalog-sidebar-head,.brand-mini-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.catalog-sidebar-head h2{margin:0;font-size:18px}
.catalog-search{position:relative;display:block;margin-bottom:10px}
.catalog-search span{position:absolute;top:7px;left:10px;color:#688990;font-size:20px}
.catalog-search input{padding-left:34px}
.catalog-product-list{display:grid;max-height:520px;gap:7px;overflow:auto;padding-right:2px}
.catalog-product-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;min-height:76px;padding:10px 11px;border:1px solid transparent;border-radius:7px;background:#f7fafb;color:var(--ink);cursor:pointer;text-align:left}
.catalog-product-row:hover{border-color:#acd0cd}
.catalog-product-row.selected{border-color:#56a9a1;background:var(--teal-soft)}
.catalog-product-row section{min-width:0}
.catalog-product-row b,.catalog-product-row span,.catalog-product-row small{display:block;overflow:hidden;text-overflow:ellipsis}
.catalog-product-row b{font-size:13px}
.catalog-product-row span{margin-top:4px;color:#3e7774;font-size:10px}
.catalog-product-row small{display:-webkit-box;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-product-row i{align-self:center;color:#7d9598;font-size:10px;font-style:normal;white-space:nowrap}
.brand-mini-library{margin-top:15px;padding-top:14px;border-top:1px solid #e2ebed}
.brand-mini-head .panel-kicker{margin-bottom:3px;font-size:9px}
.brand-mini-head h3{margin:0;color:#284b53;font-size:13px}
.brand-mini-head>span{color:#7a8f95;font-size:10px}
.brand-add-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:9px}
.brand-add-row input{min-width:0;padding:7px 8px;font-size:11px}
.brand-chip-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.brand-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:4px 5px 4px 8px;border:1px solid #d5e4e4;border-radius:14px;background:#f6faf9;color:#426267;font-size:10px}
.brand-chip b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand-chip button{width:16px;height:16px;border:0;border-radius:50%;background:#e2efee;color:#517378;font-size:13px;line-height:14px;cursor:pointer}
.brand-empty{color:#8a9ba0;font-size:10px}
.catalog-main{min-width:0}
.panel-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:17px;padding-bottom:17px;border-bottom:1px solid #e7eef1}
.panel-head h2{margin:0 0 6px;font-size:20px}
.panel-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.form-grid label{display:grid;gap:7px;color:#475b66;font-size:12px;font-weight:600}
.field-required{font-weight:800!important}
.wide{grid-column:1/-1}
input,select,textarea{width:100%;padding:10px 11px;border:1px solid #cbd8de;border-radius:7px;background:#fff;color:var(--ink);font:inherit;font-size:13px;outline:none}
input:focus,select:focus,textarea:focus{border-color:#53afa5;box-shadow:0 0 0 3px rgba(22,145,136,.11)}
textarea{resize:vertical}
.form-actions{display:flex;gap:9px;align-items:center;margin-top:19px}
.primary,.secondary,.ghost{border:1px solid transparent;border-radius:7px;padding:10px 15px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.primary{background:var(--teal);color:#fff}
.primary:hover{background:#066c66}
.secondary{border-color:#b7d9d4;background:#eef7f6;color:#176e68}
.secondary:disabled{opacity:.45;cursor:not-allowed}
.ghost{border-color:#375464;background:transparent;color:#d8e8eb;padding:7px 10px;font-size:11px}
.preview-toggle{border-color:#5fb5ad;background:#17424a;color:#e4fffb}
.preview-toggle:hover{background:#1d5660}
.small-action{padding:7px 10px;font-size:11px}
.danger{padding:10px 13px;border:1px solid #e2b7b1;border-radius:7px;background:#fff4f2;color:#a14032;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.product-read-only{min-height:176px}
.product-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.product-facts div{min-height:67px;padding:11px;border:1px solid #dce8e8;border-radius:8px;background:#f8fbfb}
.product-facts span,.product-facts b{display:block}
.product-facts span{color:#71868d;font-size:10px}
.product-facts b{margin-top:6px;color:#274d50;font-size:13px;line-height:1.5}
.catalog-bottle-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.catalog-bottle-row{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);min-height:128px;gap:13px;align-items:center;padding:10px 52px 10px 10px;border:1px solid #d6e1e4;border-radius:8px;background:#fbfdfd;color:var(--ink);text-align:left}
.catalog-bottle-row:has(i){cursor:pointer}
.catalog-bottle-row:has(i):hover{border-color:#68aca5;background:#f4fbfa}
.catalog-bottle-thumb{width:96px;height:104px;display:grid;place-items:center;overflow:hidden;border:1px solid #e2e9eb;border-radius:6px;background:#fff;color:#84989d;font-size:11px;text-align:center}
.catalog-bottle-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.catalog-bottle-row section{min-width:0}
.catalog-bottle-row b,.catalog-bottle-row span,.catalog-bottle-row small{display:block}
.catalog-bottle-row b{font-size:17px;line-height:1.5}
.catalog-bottle-row span{margin-top:6px;color:#327773;font-size:14px;line-height:1.5}
.catalog-bottle-row small{margin-top:6px;color:#71828c;font-size:14px;line-height:1.5}
.catalog-bottle-row i{position:absolute;top:12px;right:13px;color:#197a72;font-size:14px;font-style:normal}
.catalog-bottle-row .bottle-compare-title{display:flex;flex-wrap:wrap;gap:0;align-items:baseline}
.catalog-bottle-row .bottle-title-segment{display:inline;margin:0;color:#244a50}
.bottle-separator{color:#8a9a9f;font-style:normal;font-weight:400}
.catalog-bottle-row .bottle-detail-line{display:flex;flex-wrap:wrap;gap:0}
.catalog-bottle-row .bottle-detail-segment{display:inline;margin:0;color:#71828c}
.bottle-difference{color:#c9342b!important;font-weight:800!important}
.catalog-bottle-row.sortable-bottle{padding-left:36px;cursor:grab}
.catalog-bottle-row.sortable-bottle:active{cursor:grabbing}
.bottle-drag-handle{position:absolute;top:50%;left:10px;transform:translateY(-50%);margin:0!important;color:#76a39e!important;font-size:19px!important;font-weight:800;letter-spacing:-4px;line-height:1!important;user-select:none}
.catalog-bottle-row.is-dragging{opacity:.46}
.catalog-bottle-row.drop-target{border-color:#129288;background:#e8f8f5;box-shadow:inset 0 0 0 1px #129288}
.empty-library{display:grid;min-height:100px;place-items:center;padding:15px;border:1px dashed #cbdadd;border-radius:8px;color:var(--muted);font-size:12px;text-align:center}
.login-shell{display:grid;min-height:100vh;place-items:center;padding:24px;background:radial-gradient(circle at 88% 8%,#cdece8 0,transparent 30%),radial-gradient(circle at 12% 90%,#e2eef8 0,transparent 32%),linear-gradient(135deg,#edf5f4,#f7faf9)}
.login-panel{width:min(440px,100%);padding:44px;border:1px solid #d8e7e5;border-radius:12px;background:#fff;box-shadow:0 18px 46px rgba(26,59,61,.14)}
.logo-mark{width:58px;height:58px;border-radius:14px;font-size:25px}
.login-panel .eyebrow{margin-top:23px}
.login-panel h1{margin:0;color:#153640;font-size:31px}
.login-panel p{margin:10px 0 27px;color:var(--muted);font-size:14px;line-height:1.65}
.login-panel form{display:grid;gap:13px}
.login-panel label,.user-form label{display:grid;gap:6px;color:#456068;font-size:12px;font-weight:700}
.login-panel .primary{width:100%;margin-top:6px}
.login-app-label{display:flex;align-items:center;gap:7px;margin-top:19px;color:#6d858d;font-size:12px}
.login-app-label span{width:7px;height:7px;border-radius:50%;background:#6fe0aa;box-shadow:0 0 0 3px #e7f8ef}
.form-error{margin-top:14px;padding:10px;border:1px solid #edc2bc;border-radius:7px;background:#fff2ef;color:#9d3b33;font-size:12px}
.bottle-dialog,.users-dialog,.label-info-dialog,.request-dialog,.requests-dialog,.request-history-dialog,.request-image-dialog{width:min(660px,calc(100% - 28px));max-height:calc(100vh - 28px);overflow:auto;border:0;border-radius:12px;padding:22px;color:var(--ink);box-shadow:0 22px 70px rgba(20,46,57,.25)}
.requests-dialog{width:min(1120px,calc(100% - 28px))}
.bottle-dialog::backdrop,.users-dialog::backdrop,.label-info-dialog::backdrop,.request-dialog::backdrop,.requests-dialog::backdrop,.request-history-dialog::backdrop,.request-image-dialog::backdrop{background:rgba(16,35,43,.42)}
.dialog-head{display:flex;align-items:start;justify-content:space-between;margin-bottom:15px}
.dialog-head h2{margin:0;font-size:19px}
.icon-button{width:32px;height:32px;border:0;border-radius:7px;background:#eef5f5;color:#587177;font-size:24px;line-height:1;cursor:pointer}
.catalog-image-field{display:grid;grid-template-columns:150px minmax(0,1fr);gap:11px;align-items:center;margin-bottom:16px}
.catalog-image-preview{display:grid;width:150px;height:150px;place-items:center;overflow:hidden;border:1px dashed #bfd0d4;border-radius:8px;background:#fff;color:#789194;font-size:12px}
.catalog-image-preview img{width:100%;height:100%;object-fit:contain}
.upload{justify-self:start;padding:9px 13px;border:1px solid #a9d1cc;border-radius:7px;background:#effaf8;color:#167b72;font-size:12px;cursor:pointer}
.upload input{display:none}
.catalog-image-field small{align-self:start;color:var(--muted);font-size:10px;line-height:1.45}
.sds-upload-field{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding:13px 14px;border:1px solid #d7e7e5;border-radius:8px;background:#f6fbfa}
.sds-upload-field b,.sds-upload-field small{display:block}
.sds-upload-field b{color:#244a50;font-size:13px}
.sds-upload-field small{margin-top:4px;color:var(--muted);font-size:11px}
.sds-upload-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.sds-file-status{max-width:220px;overflow:hidden;color:#547278;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.product-download{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:11px 13px;border:1px solid #d7e7e5;border-radius:7px;background:#f6fbfa;color:#537177;font-size:12px}
.product-download a{color:#087f78;font-weight:800;text-decoration:none}
.product-download a:hover{text-decoration:underline}
.custom-field-editor{margin-top:16px;padding:13px;border:1px solid #d7e7e5;border-radius:8px;background:#f8fbfb}
.custom-field-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.custom-field-head b,.custom-field-head small{display:block}
.custom-field-head b{color:#244a50;font-size:13px}
.custom-field-head small{margin-top:4px;color:var(--muted);font-size:11px}
.custom-bottle-fields{display:grid;gap:8px;margin-top:10px}
.custom-bottle-field{display:grid;grid-template-columns:minmax(130px,.65fr) minmax(0,1.35fr) 32px;gap:8px;align-items:end}
.custom-bottle-field label{display:grid;gap:5px;color:#456068;font-size:11px;font-weight:700}
.custom-remove{width:32px;height:38px}
.label-info-content{max-height:calc(100vh - 230px);margin:0;padding:14px;overflow:auto;white-space:pre-wrap;word-break:break-word;border:1px solid #d9e7e8;border-radius:8px;background:#f8fbfb;color:#254a52;font:600 14px/1.6 Arial,"Microsoft YaHei",sans-serif}
.user-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end;padding:13px;border:1px solid #d8e7e5;border-radius:8px;background:#f7fbfa}
.user-list{display:grid;gap:7px;margin-top:15px}
.user-row{display:grid;grid-template-columns:1.2fr 1fr 130px auto;gap:10px;align-items:center;padding:10px;border:1px solid #e0e9e8;border-radius:7px;font-size:12px}
.user-row b,.user-row span{display:block}
.user-row span{color:var(--muted);font-size:11px}
.user-row button{padding:7px 10px}
#toast{position:fixed;right:24px;bottom:24px;z-index:20;max-width:400px;padding:12px 14px;border-radius:8px;background:#183a36;color:#fff;font-size:12px;opacity:0;transform:translateY(8px);transition:.2s;pointer-events:none}
#toast.show{opacity:1;transform:none}
#toast.error{background:#943b35}
@media(max-width:900px){.catalog-layout{grid-template-columns:250px minmax(0,1fr)}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.catalog-bottle-list{grid-template-columns:1fr}
.user-form{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){.topbar-inner,.shell{width:calc(100% - 24px)}
.top-actions #currentUser{display:none}
.hero{display:block}
.hero-note{margin-top:15px}
.catalog-layout{grid-template-columns:1fr}
.catalog-product-list{max-height:300px}
.catalog-sidebar{margin-bottom:18px}
.form-grid,.product-facts,.user-form,.user-row{grid-template-columns:1fr}
.catalog-image-field{grid-template-columns:110px minmax(0,1fr)}
.catalog-image-preview{width:110px;height:110px}
.custom-bottle-field{grid-template-columns:1fr}.custom-remove{justify-self:end}
.panel{padding:16px}
.hero h1{font-size:25px}
.topbar{height:62px}
}

.employee-toolbar{margin:-5px 0 18px}
.employee-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.employee-search{position:relative;display:block;width:min(620px,100%)}
.employee-search span{position:absolute;z-index:1;left:12px;top:7px;color:#62838a;font-size:20px}
.employee-search input{padding-left:36px;background:#fff;box-shadow:var(--shadow)}
.employee-request-actions{display:flex;flex:0 0 auto;gap:9px}
.employee-request-actions button{white-space:nowrap}
.request-upload-row{display:flex;align-items:center;gap:10px;min-height:38px;pointer-events:none}
.request-upload-row .upload{pointer-events:auto}
.request-field-label{display:grid;gap:7px;color:#475b66;font-size:12px;font-weight:600}
.request-upload-row small{color:var(--muted);font-size:11px;font-weight:400}
.request-image-preview{display:flex;flex-wrap:wrap;gap:8px;min-height:0}
.request-image-thumb{position:relative;width:74px;height:74px;overflow:hidden;border:1px solid #d5e3e5;border-radius:6px;background:#fff}
.request-image-thumb img,.request-image-list img{display:block;width:100%;height:100%;object-fit:contain}
.request-image-thumb button{position:absolute;top:2px;right:2px;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:rgba(24,58,54,.82);color:#fff;font-size:15px;line-height:18px;cursor:pointer}
.employee-workspace{display:grid;grid-template-columns:minmax(285px,.78fr) minmax(0,1.72fr);gap:16px;min-height:680px;height:min(900px,calc(100vh - 120px))}
.employee-pane{min-height:0;border:1px solid #d5e3e4;border-radius:10px;background:#fff;box-shadow:var(--shadow)}
.employee-pane-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px 13px;border-bottom:1px solid #e4eded}
.employee-pane-head .panel-kicker{margin-bottom:4px}
.employee-pane-head h2{margin:0;color:#244a50;font-size:20px}
.employee-pane-head>span{padding:4px 7px;border-radius:4px;background:#eaf7f5;color:#24736d;font-size:11px;font-weight:700;white-space:nowrap}
.employee-product-pane{display:grid;grid-template-rows:auto minmax(0,1fr)}
.employee-product-list{display:grid;align-content:start;gap:8px;overflow:auto;padding:12px}
.employee-product-row{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;width:100%;min-height:96px;padding:9px;border:1px solid #dce8e9;border-radius:7px;background:#fbfdfd;color:var(--ink);cursor:pointer;text-align:left}
.employee-product-row:hover{border-color:#80bab4;background:#f7fcfb}
.employee-product-row.selected{border-color:#38a097;background:#eaf8f6;box-shadow:inset 3px 0 0 #159188}
.employee-product-thumb{display:grid;place-items:center;overflow:hidden;border:1px solid #e0e9ea;border-radius:5px;background:#fff;color:#87999d;font-size:9px;text-align:center}
.employee-product-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.employee-product-row section{min-width:0}
.employee-product-row h3{margin:0;color:#1d3d43;font-size:19px;line-height:1.35}
.employee-product-row section span{display:block;margin-top:4px;color:#28766f;font-size:11px}
.employee-product-row p{display:-webkit-box;overflow:hidden;margin:5px 0 0;color:#687e85;font-size:11px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.employee-product-row>b{grid-column:2;color:#27726c;font-size:11px;text-align:right}
.employee-bottle-pane{overflow:auto}
.employee-bottle-panel{padding:18px}
.employee-selected-product{display:flex;align-items:end;justify-content:space-between;gap:18px;padding-bottom:17px;border-bottom:1px solid #e1ebec}
.employee-selected-product .panel-kicker{margin-bottom:5px}
.employee-selected-product h2{margin:0;color:#1d3d43;font-size:22px;line-height:1.3}
.employee-selected-product p{margin:7px 0 0;color:#657c83;font-size:13px;line-height:1.55}
.employee-selected-product>span{flex:0 0 auto;color:#7a9195;font-size:11px;white-space:nowrap}
.employee-empty{display:grid;min-height:160px;place-items:center;padding:20px;border:1px dashed #cbdadd;border-radius:8px;background:#fff;color:var(--muted);font-size:13px;text-align:center}
.employee-detail-section+.employee-detail-section{margin-top:20px;padding-top:20px;border-top:1px solid #e1ebec}
.employee-detail-section h3{margin:0 0 12px;color:#244a50;font-size:16px}
.employee-detail-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.employee-detail-section-head h3{margin:0}
.employee-detail-section-head span{padding:4px 7px;border-radius:4px;background:#eaf7f5;color:#24736d;font-size:11px}
.employee-detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.employee-detail-facts div{min-height:69px;padding:11px;border:1px solid #dce8e8;border-radius:7px;background:#f8fbfb}
.employee-detail-facts span,.employee-detail-facts b{display:block}
.employee-detail-facts span{color:#71868d;font-size:10px}
.employee-detail-facts b{margin-top:6px;color:#274d50;font-size:13px;line-height:1.45}
.label-info-entry{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:11px 13px;border:1px solid #d7e7e5;border-radius:7px;background:#f6fbfa;color:#537177;font-size:12px}
.label-info-entry button{border:0;background:transparent;color:#087f78;font:inherit;font-weight:800;cursor:pointer}
.label-info-entry button:hover{text-decoration:underline}
.employee-bottle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.employee-bottle-card{display:grid;grid-template-columns:135px minmax(0,1fr);gap:15px;padding:12px;border:1px solid #d9e4e6;border-radius:8px;background:#fbfdfd}
.employee-bottle-image{display:grid;min-height:168px;place-items:center;overflow:hidden;border:1px solid #e0e9ea;border-radius:6px;background:#fff;color:#87999d;font-size:12px;text-align:center}
.employee-bottle-image img{display:block;width:100%;height:100%;object-fit:contain}
.employee-bottle-card h4{margin:1px 0 11px;color:#244a50;font-size:15px;line-height:1.45}
.employee-bottle-card .bottle-compare-title{display:flex;flex-wrap:wrap;gap:0;align-items:baseline}
.employee-bottle-card .bottle-title-segment{color:#244a50}
.employee-bottle-card dl{display:grid;gap:5px;margin:0}
.employee-bottle-card dl div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:7px}
.employee-bottle-card dt,.employee-bottle-card dd{margin:0;color:#768990;font-size:12px;line-height:1.45}
.employee-bottle-card dd{color:#445f65;font-weight:600}
.employee-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.employee-doc-grid .label-info-entry,.employee-doc-grid .product-download{min-width:0;margin-top:0}
@media(max-width:1000px){.employee-workspace{grid-template-columns:260px minmax(0,1fr)}.employee-bottle-grid{grid-template-columns:1fr}}
@media(max-width:720px){.employee-workspace{height:auto;grid-template-columns:1fr}.employee-product-list{max-height:330px}.employee-bottle-pane{max-height:none}.employee-detail-facts{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.employee-detail-facts,.employee-bottle-grid{grid-template-columns:1fr}.employee-bottle-card{grid-template-columns:105px minmax(0,1fr)}}

.category-picker{position:relative}
.category-picker input{padding-right:39px}
.category-picker-button{position:absolute;top:1px;right:1px;width:37px;height:calc(100% - 2px);border:0;border-left:1px solid #dce5e8;border-radius:0 6px 6px 0;background:#f7fbfb;color:#2d7771;font:inherit;font-size:18px;line-height:1;cursor:pointer}
.category-picker-button:hover{background:#ebf8f6}
.category-picker-menu{position:absolute;z-index:30;top:calc(100% + 5px);right:0;left:0;max-height:236px;overflow:auto;padding:5px;border:1px solid #9cc9c5;border-radius:7px;background:#fff;box-shadow:0 12px 24px rgba(21,54,61,.18)}
.category-option,.category-new{display:block;width:100%;min-height:34px;padding:8px 10px;border:0;border-radius:5px;background:transparent;color:#314e55;font:inherit;font-size:12px;text-align:left;cursor:pointer}
.category-option-row{display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:3px}
.category-option-row .category-option{min-width:0}
.category-delete{width:26px;height:26px;padding:0;border:0;border-radius:5px;background:transparent;color:#b35a52;font:inherit;font-size:18px;line-height:1;cursor:pointer}
.category-delete:hover{background:#fff0ed;color:#9e342a}
.category-option:hover{background:#eff9f7;color:#176e68}
.category-new{margin-top:4px;border-top:1px solid #dcebea;border-radius:0;padding-top:10px;color:#087f78;font-weight:800}
.category-new:hover{background:#eaf8f6}
.category-empty{margin:5px 8px 9px;color:#829398;font-size:11px}
.category-new-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:3px}
.category-new-row input{min-width:0;padding:8px 9px;font-size:12px}
.request-badge{display:inline-grid;min-width:17px;height:17px;margin-left:5px;padding:0 4px;place-items:center;border-radius:10px;background:#e78b67;color:#fff;font-size:10px;font-weight:800;vertical-align:middle}
.dialog-hint{margin:-4px 0 17px;color:var(--muted);font-size:13px;line-height:1.6}
.request-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.requester-ticket-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:9px;border-top:1px solid #e1ebec}.requester-ticket-actions .small-action{min-height:34px}.request-review-panel .requester-ticket-actions{flex:1;flex-wrap:nowrap;margin:0;padding:0;border:0}.request-review-panel .requester-ticket-actions button{flex:1;min-height:32px;padding:6px 9px;white-space:nowrap}.request-review-panel.waiting{grid-template-rows:auto minmax(0,1fr)}.request-review-panel.waiting footer{justify-content:flex-start;align-self:end}
.request-fields label,.request-dialog>form>label{display:grid;gap:7px;color:#475b66;font-size:12px;font-weight:600}
.request-dialog>form>label{margin-top:14px}
.request-list{display:grid;gap:12px}
.request-table-head{display:grid;grid-template-columns:170px minmax(230px,1.05fr) minmax(200px,.95fr) 90px;gap:12px;padding:0 15px 7px;color:#6b8389;font-size:11px;font-weight:800}
.request-table-head span:first-child{order:-1}
.request-tabs{display:flex;gap:8px;margin:-3px 0 16px;padding-bottom:10px;border-bottom:1px solid #e1ebec}
.request-tab{padding:8px 14px;border:1px solid #c9dddc;border-radius:6px;background:#f6fbfa;color:#487078;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.request-tab.active{border-color:#159188;background:#e7f7f4;color:#087f78}
.request-card{display:grid;grid-template-columns:170px minmax(230px,1.05fr) minmax(200px,.95fr) 90px;gap:8px 12px;align-items:start;padding:10px 15px;border:1px solid #dce7e8;border-radius:6px;background:#fbfdfd}
.request-card header{display:contents}
.request-card header>div{grid-column:2}
.request-card header>.request-status{grid-column:4;grid-row:1}
.request-card .request-meta{grid-column:1;grid-row:1;margin-top:4px;display:flex;flex-direction:column;gap:2px;font-size:11px!important;line-height:1.45}
.request-card .request-meta span,.request-card .request-meta span:first-child{font-size:11px;font-weight:600;color:#6b8389}
.request-card .request-image-list,.request-card .request-source,.request-card .request-detail{grid-column:3}
.request-card .request-handle,.request-card .request-progress{grid-column:2 / -1;grid-row:auto}
.request-card header{display:contents;align-items:start;justify-content:space-between;gap:16px}
.request-card h3{margin:0 0 3px;color:#21474d;font-size:16px}
.request-card p{margin:0;color:#5e767d;font-size:12px;line-height:1.55}
.request-type{display:inline-block;color:#14786f;font-size:10px;font-weight:800;letter-spacing:.6px}
.request-status{flex:0 0 auto;padding:5px 8px;border-radius:5px;font-size:11px;font-weight:800;white-space:nowrap}
.request-status-pending{background:#fff3d9;color:#9b6416}
.request-status-processing{background:#eaf4ff;color:#286797}
.request-status-completed{background:#e9f8ef;color:#23794f}
.request-status-rejected{background:#fff0ee;color:#ad493e}
.request-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;color:#789096;font-size:11px}
.request-source{display:inline-block;margin-top:0;color:#087f78;font-size:12px;font-weight:800;text-decoration:none}
.request-source:hover{text-decoration:underline}
.request-detail{margin-top:5px!important;padding:7px 9px;border-radius:6px;background:#f2f7f7;color:#506a70!important;white-space:pre-wrap}
.request-progress{margin-top:11px!important;padding:9px 10px;border-radius:6px;background:#edf8f5;color:#27766d!important;font-weight:700}
.request-image-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.request-image-list img{width:72px;height:72px;border:1px solid #d5e3e5;border-radius:6px;background:#fff}
.request-handle{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:4px;padding-top:8px;border-top:1px solid #e1ebec}
.request-handle label{display:grid;gap:5px;color:#597078;font-size:11px;font-weight:700}
.request-handle select,.request-handle textarea{padding:8px 9px;font-size:12px}
@media(max-width:900px){.request-card{grid-template-columns:150px minmax(160px,1fr) 90px}.request-table-head{grid-template-columns:150px minmax(160px,1fr) 90px}.request-card .request-image-list,.request-card .request-source,.request-card .request-detail{grid-column:2}.request-card .request-handle,.request-card .request-progress{grid-column:2 / -1}}
@media(max-width:720px){.employee-toolbar{align-items:stretch;flex-direction:column}.employee-request-actions{width:100%}.employee-request-actions button{flex:1}.request-fields,.request-handle{grid-template-columns:1fr}.request-handle button{justify-self:start}.request-table-head{display:none}.request-card{display:block}.request-card .request-meta{margin-top:10px;display:flex;flex-direction:row}.request-card .request-handle,.request-card .request-progress{margin-top:11px}.request-card header{display:flex}}

.requests-dialog{width:min(1320px,calc(100% - 28px))}
.request-filterbar{display:grid;grid-template-columns:auto 138px 150px minmax(230px,1fr) auto;gap:10px;align-items:center;margin:0 0 14px;padding:10px 12px;border-radius:8px;background:#f2f4f7;color:#415b61;font-size:12px}
.request-filterbar select,.request-filterbar input{height:36px;padding:7px 9px;background:#fff;font-size:12px}
.request-list{gap:0;border-top:1px solid #e2eaec}
.request-table-head{grid-template-columns:160px minmax(250px,1.15fr) minmax(170px,.8fr) 150px minmax(260px,1fr);gap:14px;padding:10px 12px;color:#71878c;font-size:11px}
.request-card{grid-template-columns:160px minmax(250px,1.15fr) minmax(170px,.8fr) 150px minmax(260px,1fr);gap:14px;min-height:96px;padding:12px;border-width:0 0 1px;border-radius:0;background:#fff}
.request-origin{display:grid;align-content:start;gap:6px;color:#6d858a;font-size:12px}
.request-origin b{color:#274b51;font-size:13px}
.request-origin span{font-size:11px}
.request-main h3{margin:0 0 5px;color:#1d3f46;font-size:15px}
.request-main p{margin:0;color:#607980;font-size:12px;line-height:1.45}
.request-main .request-detail{margin-top:6px!important;padding:6px 8px;font-size:11px;line-height:1.4}
.request-inline-meta{display:flex;flex-wrap:wrap;gap:4px 8px;margin-top:7px;color:#6c8389;font-size:11px}
.request-inline-meta .stock-eta{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid #9bd8c6;border-radius:5px;background:#edf9f3;color:#16745b;font-weight:800}
.request-inline-meta .stock-eta b{color:#0f6c54;font-size:10px}
.request-material{display:grid;align-content:start;gap:7px;min-width:0}
.request-material .request-source{margin:0;font-size:11px}
.request-material .request-detail{margin:0!important;padding:6px 8px;font-size:11px;line-height:1.4}
.request-material .request-image-list{margin:0}
.request-material .request-image-list img{width:52px;height:52px}
.request-state{padding-top:1px}
.request-history-cell{display:grid;grid-template-columns:1fr auto;gap:5px 8px;align-content:start;color:#687f85;font-size:11px}
.request-history-cell>b{color:#237a50;font-size:11px;text-align:right}
.request-history{grid-column:1/-1;min-height:30px;margin:0!important;padding:6px 8px;background:#f4f7f8;color:#526b71!important;font-size:11px;line-height:1.4}
.request-history.empty{color:#93a2a6!important}
.request-history-button{justify-self:start;padding:0;border:0;background:transparent;color:#087f78;font:700 11px Inter,"Microsoft YaHei",sans-serif;cursor:pointer}
.request-history-button:hover{text-decoration:underline}
.request-history-list{display:grid;gap:9px}
.request-history-list article{padding:11px;border:1px solid #dbe7e8;border-radius:7px;background:#fbfdfd}
.request-history-list article header{display:flex;align-items:center;justify-content:space-between;color:#6b8389;font-size:11px}
.request-history-list article header b{color:#244a50;font-size:13px}
.request-history-list article>div{display:flex;gap:9px;align-items:start;margin-top:8px}
.request-history-list article p{margin:0;color:#536d73;font-size:12px;line-height:1.55}
.request-actions{display:grid;grid-column:1/-1;grid-template-columns:104px minmax(0,1fr) auto;gap:6px;align-items:center}
.request-actions select,.request-actions textarea{padding:6px 8px;font-size:11px}
.request-actions textarea{min-height:34px;resize:vertical}
.request-actions button{padding:7px 10px}
.request-actions .request-delete{padding:7px 10px;font-size:11px}
@media(max-width:1000px){.request-filterbar{grid-template-columns:auto 130px minmax(180px,1fr) auto}.request-filterbar input[type="date"]{display:none}.request-table-head{grid-template-columns:145px minmax(210px,1fr) 120px minmax(230px,.9fr)}.request-table-head span:nth-child(3){display:none}.request-card{grid-template-columns:145px minmax(210px,1fr) 120px minmax(230px,.9fr)}.request-material{display:none}.request-history-cell{grid-column:4}.request-state{grid-column:3}}
@media(max-width:720px){.request-filterbar{grid-template-columns:1fr 1fr}.request-filterbar>b{display:none}.request-filterbar input{grid-column:1/-1}.request-filterbar button{justify-self:start}.request-card{display:block;padding:12px}.request-origin{display:flex;flex-wrap:wrap;gap:8px}.request-main{margin-top:8px}.request-state{margin-top:8px}.request-history-cell{margin-top:8px}.request-actions{margin-top:8px}.request-table-head{display:none}}

.platform-app{display:grid;min-height:100vh;grid-template-columns:246px minmax(0,1fr);background:#f3f6f7;color:#17212b}
.platform-sidebar{display:flex;position:sticky;top:0;height:100vh;flex-direction:column;padding:20px 13px 14px;background:#153337;color:#d5e5e4}
.platform-brand{display:flex;align-items:center;gap:10px;padding:3px 9px 23px;border-bottom:1px solid #315257}
.platform-mark{display:grid;width:42px;height:42px;place-items:center;border:1px solid #53b9ae;border-radius:11px;background:#1c968a;color:#fff;font-size:20px;font-weight:800}
.platform-brand b,.platform-brand small{display:block}.platform-brand b{color:#fff;font-size:17px}.platform-brand small{margin-top:3px;color:#a8c4c1;font-size:11px}
.platform-nav{display:grid;align-content:start;gap:5px;margin-top:20px}.platform-nav-item{display:flex;align-items:center;min-height:42px;gap:10px;width:100%;padding:9px 11px;border:1px solid transparent;border-radius:6px;background:transparent;color:#c5d8d6;font:600 13px Inter,"Microsoft YaHei",sans-serif;text-align:left;cursor:pointer}
.platform-nav-item:hover{background:#21484b;color:#fff}.platform-nav-item.active{border-color:#39666a;background:#28575a;color:#fff;box-shadow:inset 3px 0 0 #5bd2c4}.platform-nav-item.disabled{color:#849f9d;cursor:default}.platform-nav-item.disabled:hover{background:transparent;color:#849f9d}.platform-nav-item small{margin-left:auto;color:#83aaa5;font-size:10px;font-weight:700}.nav-icon{display:inline-grid;width:20px;place-items:center;color:#88d8ce;font-size:13px;font-weight:800}.platform-nav-badge{display:grid;min-width:19px;height:19px;margin-left:auto;padding:0 5px;place-items:center;border-radius:10px;background:#d48762;color:#fff;font-size:10px;font-weight:800}.platform-nav-badge.alert{background:#bd4f45;box-shadow:0 0 0 2px rgba(255,255,255,.12)}.platform-nav-divider{height:1px;margin:11px 8px;background:#315257}.platform-nav-section{margin:1px 11px 5px;color:#80a5a1;font-size:10px;font-weight:800;letter-spacing:1px}.platform-sidebar-bottom{display:flex;align-items:center;gap:8px;margin-top:auto;padding:12px 9px;color:#99b8b5;font-size:11px}.platform-sidebar-bottom .status-dot{width:7px;height:7px}
.platform-main{min-width:0}.platform-topbar{display:flex;position:sticky;z-index:10;top:0;align-items:center;justify-content:space-between;min-height:70px;gap:18px;padding:12px max(26px,calc((100% - 1320px)/2));border-bottom:1px solid #dae4e5;background:rgba(255,255,255,.96)}
.temu-mode .platform-topbar{display:none}.temu-mode .temu-workspace-view{min-height:100vh}.temu-mode .temu-workspace-view iframe{min-height:100vh}
.platform-search{display:flex;align-items:center;gap:9px;width:min(460px,100%);padding:0 12px;border:1px solid #d6e1e3;border-radius:7px;background:#fff;color:#6b8589}.platform-search span{font-size:21px}.platform-search input{height:38px;padding:0;border:0;box-shadow:none;font-size:13px}.platform-top-actions{display:flex;align-items:center;gap:9px;color:#36555a;font-size:12px}.topbar-action{padding:8px 11px;border:1px solid #c7d7d9;border-radius:6px;background:#fff;color:#3c5d62;font:700 12px Inter,"Microsoft YaHei",sans-serif;cursor:pointer}.topbar-action:hover{border-color:#6ba8a2;background:#f3fbfa;color:#087f78}
.workspace-view{width:min(1320px,calc(100% - 46px));margin:0 auto;padding:31px 0 52px}.workspace-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.workspace-heading h1{margin:0;color:#17393d;font-size:32px;line-height:1.2}.workspace-heading p{margin:8px 0 0;color:#70848a;font-size:14px}.workspace-user-state{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #c8e1dc;border-radius:7px;background:#f2fbf9;color:#23766e;font-size:12px;font-weight:700}.workspace-user-state .status-dot{width:7px;height:7px}
.workspace-spotlight{display:grid;position:relative;grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);min-height:250px;overflow:hidden;padding:28px 30px;border:1px solid #27595a;border-radius:8px;background:#183d40;color:#fff}.workspace-spotlight>div:first-child{position:relative;z-index:1}.workspace-kicker{display:block;color:#a4dfd7;font-size:11px;font-weight:800;letter-spacing:1.1px}.workspace-spotlight h2{max-width:790px;margin:16px 0 10px;font-size:30px;line-height:1.32}.workspace-spotlight p{max-width:710px;margin:0;color:#c1d5d3;font-size:14px;line-height:1.65}.workspace-primary-action{display:inline-flex;align-items:center;gap:16px;margin-top:22px;padding:10px 14px;border:1px solid #8bd9cf;border-radius:6px;background:#eafbf8;color:#12665f;font:800 13px Inter,"Microsoft YaHei",sans-serif;cursor:pointer}.workspace-primary-action span{font-size:18px;line-height:1}.workspace-spotlight-grid{display:grid;grid-template-columns:repeat(2,92px);grid-template-rows:repeat(2,92px);align-self:center;justify-self:end;gap:14px;padding-right:12px;transform:rotate(12deg)}.workspace-spotlight-grid i{display:block;border:1px solid #4d7777;border-radius:6px;background:#204b4d}.workspace-spotlight-grid i:nth-child(2),.workspace-spotlight-grid i:nth-child(3){background:#286467}.workspace-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.workspace-metrics article{min-height:126px;padding:17px;border:1px solid #d9e5e5;border-radius:7px;background:#fff;box-shadow:var(--shadow)}.workspace-metrics span,.workspace-metrics b,.workspace-metrics small{display:block}.workspace-metrics span{color:#6d858b;font-size:12px;font-weight:700}.workspace-metrics b{margin:12px 0 4px;color:#193e42;font-size:28px;line-height:1}.workspace-metrics small{color:#6a8580;font-size:11px}
.workspace-section{margin-top:28px}.workspace-section>header,.workspace-panel>header{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:13px}.workspace-section h2,.workspace-panel h2{margin:0;color:#193b40;font-size:20px}.workspace-section>header>span{color:#6d858b;font-size:12px}.workspace-app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.workspace-app-card{display:grid;grid-template-columns:45px minmax(0,1fr);gap:14px;min-height:204px;padding:18px;border:1px solid #d7e4e4;border-radius:7px;background:#fff;box-shadow:var(--shadow)}.workspace-app-card.active-app{border-top:3px solid #159188}.workspace-app-card.coming-app{opacity:.8}.workspace-app-icon{display:grid;width:45px;height:45px;place-items:center;border-radius:7px;background:#e4f5f2;color:#126e66;font-size:16px;font-weight:800}.coming-app .workspace-app-icon{background:#edf1f5;color:#526b79}.workspace-app-card>div:nth-child(2) span{display:block;color:#248278;font-size:11px;font-weight:800}.coming-app>div:nth-child(2) span{color:#718991}.workspace-app-card h3{margin:7px 0;color:#193e42;font-size:18px}.workspace-app-card p{margin:0;color:#617a80;font-size:12px;line-height:1.6}.workspace-app-card button,.workspace-app-card>small{grid-column:1/-1;align-self:end;justify-self:start;padding:0;border:0;background:transparent;color:#087f78;font:800 12px Inter,"Microsoft YaHei",sans-serif;cursor:pointer}.workspace-app-card button span{margin-left:6px;font-size:16px}.workspace-app-card>small{color:#819196;cursor:default}
.workspace-lower{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}.workspace-panel{padding:19px;border:1px solid #d8e4e5;border-radius:7px;background:#fff;box-shadow:var(--shadow)}.text-action{padding:0;border:0;background:transparent;color:#087f78;font:800 12px Inter,"Microsoft YaHei",sans-serif;cursor:pointer}.text-action:hover{text-decoration:underline}.workspace-focus-list{display:grid;gap:0}.workspace-focus-list>div{display:flex;align-items:start;gap:12px;padding:11px 0;border-top:1px solid #e4ecec}.workspace-list-index{display:grid;flex:0 0 26px;height:26px;place-items:center;border-radius:50%;background:#e9f7f5;color:#147c73;font-size:11px;font-weight:800}.workspace-focus-list p{margin:1px 0}.workspace-focus-list b,.workspace-focus-list small{display:block}.workspace-focus-list b{color:#25474d;font-size:13px}.workspace-focus-list small{margin-top:4px;color:#71878c;font-size:11px}.workspace-request-summary{display:grid;gap:8px}.workspace-request-summary div{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border:1px solid #e0e9e9;border-radius:6px;background:#f8fbfb}.workspace-request-summary span{color:#637b80;font-size:12px}.workspace-request-summary b{color:#1e504f;font-size:16px}
.platform-main .shell{width:min(1320px,calc(100% - 46px));margin:28px auto 60px}.platform-main .topbar{display:none}
.request-type-page{display:grid;gap:18px}.request-page-hero{margin:0}.request-page-hero .primary{align-self:center;white-space:nowrap}.request-rejected-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #efc9c3;border-radius:7px;background:#fff8f6;color:#8f4038}.request-rejected-alert>div{display:grid;gap:3px;min-width:0}.request-rejected-alert b{font-size:13px}.request-rejected-alert span{color:#9a625c;font-size:12px;line-height:1.45}.request-rejected-alert-action{flex:0 0 auto;min-height:34px;padding:7px 11px;border:1px solid #d97267;border-radius:5px;background:#fff;color:#a14339;font:700 12px Inter,"Microsoft YaHei",sans-serif;cursor:pointer}.request-rejected-alert-action:hover{background:#fff0ed}.request-rejected-alert-action:focus-visible{outline:3px solid rgba(189,79,69,.3);outline-offset:2px}.request-type-panel{overflow:hidden;border:1px solid #d8e4e5;border-radius:7px;background:#fff;box-shadow:var(--shadow)}.request-type-panel>header{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid #e1ebec}.request-type-panel h2{margin:0;color:#193b40;font-size:20px}.request-page-count{color:#5e767d;font-size:12px;font-weight:800}.request-type-list{min-height:120px}.request-type-card{grid-template-columns:145px minmax(250px,1.2fr) minmax(150px,.8fr) 110px minmax(230px,.95fr)}.request-type-card .request-history-cell{grid-column:5;grid-row:1}.request-type-card .request-progress{margin-top:2px!important}.muted-progress{background:#f4f7f8!important;color:#829398!important}
.temu-workspace-view{display:flex;flex:1;min-height:calc(100vh - 70px);width:100%;background:#eef2f3}.temu-workspace-view iframe{display:block;width:100%;min-height:calc(100vh - 70px);border:0;background:#fff}
@media(max-width:1000px){.request-type-card{grid-template-columns:140px minmax(220px,1fr) 110px minmax(210px,.8fr)}.request-type-card .request-material{display:none}.request-type-card .request-state{grid-column:3}.request-type-card .request-history-cell{grid-column:4}}
@media(max-width:720px){.request-page-hero{align-items:start;flex-direction:column}.request-rejected-alert{align-items:start;flex-direction:column;gap:10px}.request-rejected-alert-action{width:100%}.request-type-panel>header{padding:15px}.request-type-card{display:block}.request-type-card .request-origin,.request-type-card .request-main,.request-type-card .request-state,.request-type-card .request-history-cell{margin-top:8px}.request-type-card .request-origin{margin-top:0}.request-type-card .request-progress{margin-top:8px!important}}
@media(max-width:1050px){.platform-app{grid-template-columns:210px minmax(0,1fr)}.workspace-app-grid{grid-template-columns:1fr 1fr}.workspace-app-card:last-child{grid-column:1/-1}.workspace-spotlight h2{font-size:26px}.workspace-lower{grid-template-columns:1fr}.platform-topbar{padding-inline:23px}}
@media(max-width:760px){.platform-app{display:block}.platform-sidebar{position:static;height:auto;padding:13px}.platform-brand{padding:2px 6px 13px}.platform-nav{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.platform-nav-item{width:auto;min-height:36px;padding:7px 9px;font-size:12px}.platform-nav-divider,.platform-nav-section,.platform-nav-item.disabled{display:none}.platform-sidebar-bottom{display:none}.platform-topbar{position:static;min-height:58px;padding:9px 12px}.platform-top-actions>#currentUser{display:none}.platform-search{width:100%}.workspace-view,.platform-main .shell{width:calc(100% - 24px)}.workspace-view{padding-top:22px}.workspace-heading{align-items:start;flex-direction:column}.workspace-heading h1{font-size:28px}.workspace-spotlight{grid-template-columns:1fr;min-height:0;padding:23px}.workspace-spotlight h2{font-size:23px}.workspace-spotlight-grid{display:none}.workspace-metrics,.workspace-app-grid{grid-template-columns:1fr 1fr}.workspace-app-card:last-child{grid-column:auto}.workspace-lower{grid-template-columns:1fr}.workspace-app-card{min-height:190px}.workspace-user-state{display:none}}
@media(max-width:480px){.workspace-metrics,.workspace-app-grid{grid-template-columns:1fr}.workspace-metrics article{min-height:92px}.workspace-app-card{min-height:0}.platform-top-actions{gap:5px}.topbar-action{padding:7px 8px;font-size:11px}}

/* Request tracking and expansion workbench */
.request-panel-actions{display:flex;align-items:center;gap:11px}.request-page-filterbar{grid-template-columns:150px 140px 150px minmax(230px,1fr) auto;margin:0;padding:12px 20px;border-radius:0;border-bottom:1px solid #e1ebec;background:#f6f9f9}.request-page-filterbar select[hidden]{display:none}.request-type-card{grid-template-columns:145px minmax(230px,1.1fr) minmax(220px,.95fr) 110px minmax(250px,1fr);align-items:stretch}.request-type-card .request-material{min-height:118px;padding:10px;border:1px solid #dce8e8;border-radius:6px;background:#f8fbfb}.request-material{align-content:start}.request-image-list{align-items:start}.request-image-button{display:block;width:86px;height:86px;padding:0;overflow:hidden;border:1px solid #cbdcdc;border-radius:6px;background:#fff;cursor:zoom-in}.request-image-button img{display:block;width:100%!important;height:100%!important;object-fit:cover}.request-image-button:hover{border-color:#159188;box-shadow:0 0 0 2px #d8f1ed}.request-material .request-image-list{margin:0}.request-material-empty,.request-source-empty{color:#8c9da1;font-size:11px}.request-source-empty{margin-top:4px}.request-expansion-progress{display:grid;gap:6px;margin-top:9px;padding:8px 9px;border:1px solid #d7e8e4;border-radius:6px;background:#f3faf8;color:#50736f;font-size:11px}.request-expansion-progress b{color:#22766d}.request-expansion-progress div{display:flex;flex-wrap:wrap;gap:4px 8px}.request-expansion-progress span{color:#829498}.request-expansion-progress span.done{color:#167c70;font-weight:800}.request-image-dialog{width:min(980px,calc(100% - 28px));background:#fff}.request-image-dialog img{display:block;max-width:100%;max-height:calc(100vh - 145px);margin:0 auto;object-fit:contain}.expansion-page{display:grid;gap:18px}.expansion-panel{overflow:hidden;border:1px solid #d8e4e5;border-radius:7px;background:#fff;box-shadow:var(--shadow)}.expansion-panel>header{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid #e1ebec}.expansion-panel h2{margin:0;color:#193b40;font-size:20px}.expansion-list{display:grid;gap:0}.expansion-card{padding:17px 20px;border-bottom:1px solid #e1ebec}.expansion-card:last-child{border-bottom:0}.expansion-card-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.expansion-card-head h3{margin:4px 0;color:#1f4449;font-size:18px}.expansion-card-head p{max-width:780px;margin:0;color:#607980;font-size:12px;line-height:1.55}.expansion-card-head>div:last-child{display:grid;justify-items:end;gap:7px;color:#25766e;font-size:12px}.expansion-body{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(440px,1.15fr);gap:18px;margin-top:15px}.expansion-material{display:grid;align-content:start;gap:9px;min-height:118px;padding:10px;border:1px solid #dce8e8;border-radius:6px;background:#f8fbfb}.expansion-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px;border:1px solid #d9e7e7;border-radius:6px;background:#fbfdfd}.expansion-checklist label{display:flex;align-items:center;gap:9px;min-height:34px;padding:6px 8px;border:1px solid #e1ebeb;border-radius:5px;color:#36595d;font-size:13px;font-weight:700;cursor:pointer}.expansion-checklist input{width:16px;height:16px;accent-color:#129286}.expansion-card footer{margin-top:12px;color:#71878c;font-size:11px}
@media(max-width:1000px){.request-page-filterbar{grid-template-columns:1fr 1fr minmax(180px,1fr) auto}.request-page-filterbar input[type="date"]{display:none}.request-type-card{grid-template-columns:145px minmax(220px,1fr) 110px minmax(230px,.95fr)}.request-type-card .request-material{display:none}.expansion-body{grid-template-columns:1fr}.expansion-material{min-height:0}}
@media(max-width:720px){.request-page-filterbar{grid-template-columns:1fr 1fr;padding:12px}.request-page-filterbar input{grid-column:1/-1}.request-type-card .request-material{display:grid}.request-image-button{width:74px;height:74px}.expansion-card{padding:15px}.expansion-card-head{display:block}.expansion-card-head>div:last-child{justify-items:start;margin-top:10px}.expansion-checklist{grid-template-columns:1fr}.request-panel-actions{gap:7px}}

/* Administrator-only logistics channel directory */
.logistics-page{display:grid;gap:18px}.logistics-hero{margin-bottom:0}.logistics-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.logistics-list-panel,.logistics-editor-panel{border:1px solid #d8e4e5;border-radius:7px;background:#fff;box-shadow:var(--shadow)}.logistics-list-panel{position:sticky;top:90px;overflow:hidden}.logistics-list-panel>header{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:18px 18px 12px}.logistics-list-panel h2{margin:0;color:#193b40;font-size:19px}.logistics-list-panel>header>span{color:#6f858a;font-size:12px;font-weight:800}.logistics-list-panel .catalog-search{margin:0 14px 12px}.logistics-provider-list{display:grid;max-height:calc(100vh - 250px);overflow:auto;border-top:1px solid #e2ebeb}.logistics-provider-row{display:grid;gap:5px;width:100%;padding:13px 17px;border:0;border-bottom:1px solid #e5eeee;background:#fff;color:#617a80;text-align:left;cursor:pointer}.logistics-provider-row:hover{background:#f7fbfb}.logistics-provider-row.selected{padding-left:14px;border-left:3px solid #159188;background:#eaf7f5}.logistics-provider-row b{color:#25484e;font-size:14px}.logistics-provider-row span{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.logistics-provider-row small{color:#86999d;font-size:10px}.logistics-editor-panel{padding:20px}.logistics-editor-panel .panel-head{margin-bottom:18px}.logistics-editor-panel .panel-head h2{margin:4px 0;color:#193b40;font-size:21px}.logistics-editor-panel .panel-head p{margin:7px 0 0;color:#668087;font-size:12px}.logistics-form textarea{min-height:78px;resize:vertical}.logistics-form .form-actions{margin-top:18px;padding-top:16px;border-top:1px solid #e4ecec}
@media(max-width:1000px){.logistics-layout{grid-template-columns:250px minmax(0,1fr)}.logistics-list-panel{top:78px}}
@media(max-width:760px){.logistics-layout{grid-template-columns:1fr}.logistics-list-panel{position:static}.logistics-provider-list{max-height:260px}.logistics-editor-panel{padding:15px}.logistics-hero{align-items:start;flex-direction:column}}

/* New-product preparation now lives directly on the request ticket. */
.progress-request-card{grid-template-columns:145px minmax(230px,1.05fr) minmax(190px,.78fr) minmax(400px,1.32fr)}.progress-request-card .request-progress-cell{grid-column:4;grid-row:1}.request-progress-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;min-height:154px;padding:10px;border:1px solid #d8e6e6;border-radius:7px;background:#f9fcfc}.request-progress-panel>header,.request-progress-panel>footer{grid-column:1/-1}.request-progress-panel>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.request-progress-panel>header>div{display:grid;gap:2px}.request-progress-panel>header b{color:#24494e;font-size:13px}.request-progress-panel>header div span,.request-progress-panel footer{color:#769095;font-size:10px}.request-progress-row{display:grid;align-content:start;gap:5px;padding:7px 0;border-top:1px solid #e2ecec}.request-progress-row.complete{border-left:2px solid #35a493;padding-left:7px}.request-progress-row-head{display:flex;align-items:center;gap:6px;min-width:0}.request-progress-row-head input{width:15px;height:15px;margin:0;accent-color:#159188;cursor:pointer}.request-progress-row-head b{color:#385a5f;font-size:12px}.request-progress-row-head span{margin-left:auto;color:#82969a;font-size:10px}.request-progress-row.complete .request-progress-row-head span{color:#168073;font-weight:800}.request-progress-row textarea{width:100%;min-height:35px;padding:5px 7px;font-size:11px;line-height:1.35;resize:vertical}.request-progress-row p{min-height:35px;margin:0;padding:5px 7px;border:1px solid #dbe7e8;border-radius:5px;background:#fff;color:#687f84;font-size:11px;line-height:1.4;white-space:pre-wrap}.progress-row-actions{display:flex;align-items:center;gap:8px;min-height:17px}.qualification-row{grid-column:1/-1;grid-template-columns:minmax(120px,.7fr) minmax(0,1fr);align-items:center}.qualification-row .progress-row-actions{justify-content:flex-start}.progress-report-link{overflow:hidden;color:#087f78;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.progress-report-empty{color:#8a9ba0;font-size:10px}.progress-upload{padding:3px 7px;border:1px solid #b9d8d4;border-radius:4px;background:#effaf8;color:#14786f;font-size:10px;font-weight:800;cursor:pointer}.progress-upload input{display:none}.progress-marker{color:#93a6a9;font-size:15px;line-height:1}.progress-marker.done{color:#159188}.progress-delete{justify-self:start;margin-top:7px;font-size:10px}.progress-request-card .request-material{min-height:154px}
@media(max-width:1100px){.progress-request-card{grid-template-columns:145px minmax(210px,1fr) minmax(330px,1.1fr)}.progress-request-card .request-material{display:none}.progress-request-card .request-progress-cell{grid-column:3}}
@media(max-width:720px){.progress-request-card .request-material{display:grid}.progress-request-card .request-progress-cell{margin-top:9px}.request-progress-panel{grid-template-columns:1fr}.qualification-row{grid-column:auto;grid-template-columns:1fr}.progress-row-actions{grid-column:auto}}

/* Four-column presentation for new-product request tickets. */
.progress-request-card{gap:16px;padding:16px 20px}.progress-request-card .request-origin-compact{display:grid;align-content:center;gap:8px;min-height:154px;padding:12px 10px;border:1px solid #d9e6e7;border-radius:6px;background:#fbfdfd}.progress-request-card .request-origin-line{display:flex;align-items:center;justify-content:space-between;gap:7px}.progress-request-card .request-origin-line b{color:#21474d;font-size:17px;line-height:1.2}.progress-request-card .request-origin-compact>span{padding-top:7px;border-top:1px dashed #d6e3e4;color:#6d858a;font-size:12px;font-variant-numeric:tabular-nums}.progress-request-card .request-origin-compact .request-status{min-height:29px;padding:4px 8px;font-size:12px}.progress-request-card .request-main{padding-top:4px}.progress-request-card .request-main h3{font-size:16px}.progress-request-card .request-material{padding:10px;border:1px solid #dce8e8;border-radius:6px;background:#f8fbfb}.progress-request-card .request-material .request-image-list{min-height:86px}.progress-request-card .request-progress-cell{min-width:0}
.progress-request-card{grid-template-columns:142px minmax(210px,1.05fr) 142px minmax(350px,1.2fr);align-items:start;transition:background .16s ease}.progress-request-card:hover{background:#fcfefe}.progress-request-card:focus-within{background:#f8fcfc;box-shadow:inset 3px 0 0 #159188}.progress-request-card .request-origin-compact{min-height:132px}.progress-request-card .request-main{min-height:132px}.progress-request-card .request-product-summary{margin:8px 0 0!important;padding:8px 9px;border-left:3px solid #b6ded9;background:#f4fbfa;color:#4f7376!important;font-size:12px;line-height:1.45}.progress-request-card .request-material{min-height:132px}.progress-request-card .request-material .request-image-list{min-height:0}.request-progress-panel{display:block;min-height:0;padding:10px}.request-progress-panel>header{display:flex;align-items:center;justify-content:space-between;gap:9px}.request-progress-toggle{min-height:29px;padding:4px 8px;border:1px solid #9ccdc7;border-radius:5px;background:#fff;color:#087f78;font:800 11px/1.2 Inter,"Microsoft YaHei",sans-serif;cursor:pointer;white-space:nowrap}.request-progress-toggle:hover{border-color:#159188;background:#eaf8f5}.request-progress-toggle:focus-visible{outline:3px solid rgba(8,125,116,.25);outline-offset:2px}.request-progress-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.request-progress-chip{display:flex;align-items:center;gap:5px;min-height:29px;padding:5px 7px;border:1px solid #d9e5e6;border-radius:5px;color:#6d8589;font-size:11px}.request-progress-chip i{font-style:normal;font-size:13px;line-height:1}.request-progress-chip.complete{border-color:#a7d8c9;background:#e8f6ef;color:#157453;font-weight:800}.request-progress-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;margin-top:10px;padding-top:10px;border-top:1px solid #dce8e8}.request-progress-editor[hidden]{display:none}.request-progress-editor .qualification-row{grid-column:1/-1}.request-progress-panel>footer{display:block;margin-top:8px;color:#769095;font-size:10px}
@media(max-width:1100px){.progress-request-card{grid-template-columns:142px minmax(210px,1fr) minmax(330px,1.1fr)}.progress-request-card .request-material{display:none}.progress-request-card .request-progress-cell{grid-column:3}}
@media(max-width:720px){.progress-request-card{display:block;padding:14px 12px}.progress-request-card .request-origin-compact,.progress-request-card .request-main,.progress-request-card .request-material{min-height:0}.progress-request-card .request-main,.progress-request-card .request-material,.progress-request-card .request-progress-cell{margin-top:9px}.progress-request-card .request-material{display:grid}.request-progress-editor{grid-template-columns:1fr}.request-progress-editor .qualification-row{grid-column:auto}}

/* Keep every new-product ticket as a consistent four-column work row. */
.progress-request-card{grid-template-columns:142px minmax(220px,1.08fr) 142px minmax(390px,1.22fr);height:162px;min-height:162px;max-height:162px;padding:14px 20px;overflow:hidden}.progress-request-card>.request-origin-compact,.progress-request-card>.request-main,.progress-request-card>.request-material,.progress-request-card>.request-progress-cell{height:132px;min-height:0;min-width:0}.progress-request-card .request-origin-compact,.progress-request-card .request-material{overflow:hidden}.progress-request-card .request-main{overflow:hidden;padding:2px 8px 2px 0}.progress-request-card .request-main.request-main-scrollable{overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b7d2cf transparent}.progress-request-card .request-origin-line{align-items:flex-start}.progress-request-card .request-origin-line b{min-width:0;overflow-wrap:anywhere}.progress-request-card .request-origin-line .request-status{flex:0 0 auto}.progress-request-card .request-main h3{overflow-wrap:anywhere}.progress-request-card .request-material{display:grid;grid-template-rows:minmax(0,1fr) auto;align-content:stretch}.progress-request-card .request-material .request-image-list{align-content:start;overflow:hidden}.progress-request-card .request-source,.progress-request-card .request-source-empty{overflow-wrap:anywhere}.progress-request-card .request-progress-cell{overflow:hidden}.request-progress-panel{display:flex;height:132px;min-height:132px;flex-direction:column;overflow:hidden}.request-progress-panel>header{flex:0 0 auto}.request-progress-panel .request-progress-summary{flex:1 1 auto}.request-progress-panel.is-expanded .request-progress-summary{display:none}.request-progress-editor{min-height:0;flex:1 1 auto;overflow:hidden}.request-progress-panel>footer{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:17px;margin-top:6px}.request-progress-panel>footer>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-progress-panel .progress-delete{flex:0 0 auto;margin:0;padding:3px 6px;border-radius:4px;font-size:10px}.request-progress-panel.is-expanded>footer{margin-top:5px}
@media(max-width:1100px){.progress-request-card{grid-template-columns:142px minmax(220px,1fr) minmax(340px,1.12fr)}}
@media(max-width:720px){.progress-request-card{height:auto;min-height:0;max-height:none}.progress-request-card>.request-origin-compact,.progress-request-card>.request-main,.progress-request-card>.request-material,.progress-request-card>.request-progress-cell{height:auto;max-height:180px}.progress-request-card .request-progress-cell{overflow:visible}.request-progress-panel{height:132px}.progress-request-card .request-material{grid-template-rows:auto}.progress-request-card .request-material .request-image-list{max-height:104px}}

/* Expanding details restores the full original progress panel without a nested scrollbar. */
.progress-request-card.has-progress-details{height:auto;max-height:none;overflow:visible}.progress-request-card.has-progress-details>.request-progress-cell{height:auto;max-height:none;overflow:visible}.progress-request-card.has-progress-details .request-progress-panel{height:auto;min-height:132px;overflow:visible}.progress-request-card.has-progress-details .request-progress-summary{display:grid}.progress-request-card.has-progress-details .request-progress-editor{flex:none;overflow:visible;scrollbar-gutter:auto}.progress-request-card.has-progress-details .request-progress-panel>footer{margin-top:8px}
.request-type-panel:has(.progress-request-card.has-progress-details){overflow:visible}

/* Audit gate for original-product requests. */
.request-page-filterbar{grid-template-columns:150px 140px 175px 150px minmax(200px,1fr) auto}.request-review-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:7px;min-height:132px;padding:10px;border:1px solid #d8e6e6;border-radius:7px;background:#f9fcfc}.request-review-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.request-review-panel>header>div{display:grid;gap:2px}.request-review-panel>header b{color:#24494e;font-size:13px}.request-review-panel>header span:not(.request-status){color:#769095;font-size:10px}.request-review-body{display:grid;grid-template-columns:minmax(0,1fr) 184px;gap:8px;min-height:46px}.request-review-panel textarea{width:100%;height:46px;min-height:46px;padding:6px 8px;border:1px solid #cddfe0;border-radius:5px;background:#fff;color:#35575c;font:12px/1.4 Inter,"Microsoft YaHei",sans-serif;resize:none}.request-review-panel textarea:focus-visible{outline:3px solid rgba(8,125,116,.22);outline-offset:1px}.request-review-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.request-review-actions button{min-width:0;min-height:46px;padding:8px 5px;font-size:13px;white-space:nowrap}.request-review-panel>footer{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:14px;color:#769095;font-size:10px}.request-review-panel>footer>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-review-panel.waiting{background:#f7fafb}.request-review-panel.rejected{border-color:#efc9c3;background:#fff8f6}.request-review-panel.rejected header b,.request-review-panel.rejected .request-review-reason{color:#a24b41}.request-review-copy,.request-review-reason{margin:0;color:#617a80;font-size:11px;line-height:1.5;white-space:pre-wrap}.request-review-reason{padding:6px 8px;border:1px solid #f0d5d0;border-radius:5px;background:#fff}.request-review-panel .progress-delete{margin:0;padding:3px 6px;border-radius:4px;font-size:10px}
@media(max-width:1100px){.request-page-filterbar{grid-template-columns:1fr 1fr minmax(180px,1fr) auto}.request-page-filterbar #requestPageProgressFilter{grid-column:auto}.request-page-filterbar #requestPageKeywordFilter{grid-column:1/-1}}
@media(max-width:720px){.request-page-filterbar #requestPageProgressFilter{grid-column:auto}.request-review-panel{min-height:0}.request-review-body{grid-template-columns:1fr}.request-review-panel textarea{font-size:12px}.request-review-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Four equal preparation cards prevent any one stage from stretching the detail view. */
.progress-request-card.has-progress-details .request-progress-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid #dce8e8}.progress-request-card.has-progress-details .request-progress-row{display:grid;grid-template-rows:auto minmax(42px,1fr);gap:6px;min-height:92px;margin:0;padding:8px;border:1px solid #dce8e8;border-radius:6px;background:#fff}.progress-request-card.has-progress-details .request-progress-row.complete{border-left:2px solid #35a493;padding-left:7px;background:#f7fcfa}.progress-request-card.has-progress-details .request-progress-row-head{display:grid;grid-template-columns:15px minmax(0,1fr) auto;align-items:center;gap:6px}.progress-request-card.has-progress-details .request-progress-row-head b{font-size:12px}.progress-request-card.has-progress-details .request-progress-row-head span{margin-left:0;white-space:nowrap}.progress-request-card.has-progress-details .progress-row-content{display:flex;min-height:42px;align-items:stretch}.progress-request-card.has-progress-details .request-progress-row textarea,.progress-request-card.has-progress-details .request-progress-row p{height:42px;min-height:42px;margin:0;resize:none}.progress-request-card.has-progress-details .progress-row-actions{display:flex;align-items:center;gap:6px;min-height:42px}.progress-request-card.has-progress-details .progress-upload{display:inline-flex;align-items:center;min-height:27px;padding:4px 8px}.progress-request-card.has-progress-details .progress-report-link{display:block;width:100%;max-width:none;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.45}.progress-request-card.has-progress-details .request-progress-panel>footer{margin-top:7px}
@media(max-width:720px){.progress-request-card.has-progress-details .request-progress-editor{grid-template-columns:1fr}.progress-request-card.has-progress-details .request-progress-row{min-height:0}}
.progress-request-card.has-progress-details .stock-logistics-panel .request-progress-editor{grid-template-columns:1fr}
.progress-request-card.has-progress-details .stock-logistics-panel .request-progress-row{grid-column:1/-1}

/* Stock requests use the same four-column ticket layout, with a sequential logistics workflow. */
.stock-request-card .stock-logistics-panel .request-progress-chip.locked{border-style:dashed;background:#f5f7f7;color:#8a9b9d}.stock-request-card .request-progress-row.locked{opacity:.66}.stock-request-card .request-progress-row.locked textarea{background:#f3f6f6;color:#8b9a9d;cursor:not-allowed}.stock-logistics-fields{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:2px}.stock-logistics-fields label{display:grid;gap:4px;color:#58747a;font-size:11px;font-weight:800}.stock-logistics-fields input{width:100%;height:32px;padding:5px 7px;border:1px solid #cddfe0;border-radius:5px;background:#fff;color:#35575c;font:12px/1.4 Inter,"Microsoft YaHei",sans-serif}.stock-logistics-summary{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:2px}.stock-logistics-summary span{min-width:0;padding:6px 7px;border:1px solid #dce8e8;border-radius:5px;background:#f8fbfb;color:#607b80;font-size:11px;overflow-wrap:anywhere}.stock-logistics-summary span:last-child:nth-child(odd){grid-column:1/-1}@media(max-width:720px){.stock-logistics-fields,.stock-logistics-summary{grid-template-columns:1fr}.stock-logistics-summary span:last-child:nth-child(odd){grid-column:auto}}
.stock-logistics-panel{align-content:start;grid-auto-rows:max-content}.stock-logistics-panel .request-progress-editor{align-content:start}.progress-request-card.has-progress-details .stock-logistics-panel .request-progress-row{min-height:0;align-content:start}.stock-logistics-panel .stock-logistics-summary span{display:flex;align-items:center;min-height:30px}
.stock-logistics-panel .stock-logistics-completion{color:#52757b;font-size:12px;font-weight:800;line-height:1.4}
.progress-request-card.has-progress-details .stock-logistics-panel .fnsku-stage-row{grid-template-rows:auto auto;gap:5px;padding:9px 10px;background:#f5fbf9}
.progress-request-card.has-progress-details .stock-logistics-panel .fnsku-stage-row .progress-row-content{min-height:0;align-items:flex-start}
.stock-logistics-panel .fnsku-stage-row .fnsku-field{max-width:320px;margin-top:0}
.stock-logistics-panel .fnsku-stage-row .fnsku-field input{height:32px}
.stock-request-card .request-progress-row.automatic{background:#f4faf9}.stock-request-card .request-progress-row.automatic .request-progress-row-head b{color:#217d73}.stock-logistics-fields .wide{grid-column:1/-1}.ck1-sync-button{grid-column:1/-1;justify-self:start}.ck1-sync-info{grid-column:1/-1;margin:0;padding:7px 8px;border:1px solid #d7e6e3;border-radius:5px;background:#f3f9f7;color:#476f69;font-size:11px;line-height:1.45}.ck1-latest-status{display:flex;align-items:baseline;gap:7px;margin:8px 0 0;padding:7px 8px;border-left:3px solid #217d73;background:#f3f9f7;color:#476f69;font-size:11px;line-height:1.45}.ck1-latest-status b{flex:0 0 auto;color:#217d73}.ck1-tracking-section{display:grid;grid-column:1/-1;gap:6px;margin-top:2px;padding:8px;border:1px solid #dce8e8;border-radius:6px;background:#fbfdfd}.ck1-tracking-section>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.ck1-tracking-section>header b{color:#31565b;font-size:12px}.ck1-tracking-section>header span{color:#789095;font-size:10px}.ck1-tracking-list{display:grid;gap:0;max-height:240px;overflow-y:auto;border:1px solid #e1ecec;border-radius:5px;background:#fff}.ck1-tracking-list>div{display:grid;grid-template-columns:118px minmax(0,1fr);gap:8px;padding:7px 8px;border-bottom:1px solid #e8eeee}.ck1-tracking-list>div:last-child{border-bottom:0}.ck1-tracking-list time{color:#617f84;font-size:10px}.ck1-tracking-list p{margin:0;color:#35575c;font-size:11px;line-height:1.45;overflow-wrap:anywhere}.ck1-tracking-empty{margin:0;padding:7px 8px;border:1px dashed #cbdede;border-radius:5px;color:#617f84;font-size:11px;line-height:1.45}
.stock-logistics-panel .request-progress-summary{display:flex;align-items:stretch;gap:0;width:100%;overflow:visible}.stock-logistics-panel .request-progress-chip{position:relative;display:flex;flex:1 1 0;align-items:center;justify-content:center;min-width:0;min-height:32px;padding:5px 17px 5px 7px;border:1px solid #d9e5e6;border-radius:5px;background:#fff;color:#6d8589;font-size:10px;white-space:nowrap}.stock-logistics-panel .request-progress-chip:not(:last-child){margin-right:13px}.stock-logistics-panel .request-progress-chip:not(:last-child)::after{display:none}.stock-logistics-panel .request-progress-chip i{display:inline-grid;flex:0 0 16px;width:16px;height:16px;margin-right:4px;place-items:center;border:2px solid #9eb2b4;border-radius:50%;font-size:10px;font-weight:800;line-height:1;color:transparent}.stock-logistics-panel .request-progress-chip.complete{border-color:#9bd8c6;background:#e9f7ef;color:#147453;font-weight:800}.stock-logistics-panel .request-progress-chip.complete i{border-color:#24a57f;background:#24a57f;color:#fff}.stock-logistics-panel .request-progress-chip.locked{background:#f5f7f7;color:#8a9b9d}.fnsku-field{display:grid;gap:4px;margin-top:6px;color:#58747a;font-size:10px;font-weight:800}.fnsku-field input{width:100%;height:30px;padding:5px 7px;border:1px solid #cddfe0;border-radius:5px;background:#fff;color:#35575c;font:12px/1.4 Inter,"Microsoft YaHei",sans-serif}.fnsku-field input:disabled{background:#f3f6f6;color:#8b9a9d;cursor:not-allowed}
@media(max-width:720px){.stock-logistics-panel .request-progress-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.stock-logistics-panel .request-progress-chip:not(:last-child){margin-right:0}.stock-logistics-panel .request-progress-chip:not(:last-child)::after{display:none}}

/* Stock logistics detail: four equal stage boxes and a prominent Fnsku field. */
.stock-logistics-panel .request-progress-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-items:stretch;width:100%;}
.stock-logistics-panel .request-progress-chip{width:100%;height:34px;min-height:34px;margin:0!important;padding:5px 8px;justify-content:center;border-radius:5px;}
.stock-logistics-panel .request-progress-chip i{flex:0 0 16px;}
.stock-logistics-panel .request-progress-editor .fnsku-stage-row{min-height:108px;padding:12px 13px;}
.stock-logistics-panel .request-progress-editor .fnsku-stage-row .progress-row-content{width:100%;min-height:0;align-items:stretch;}
.stock-logistics-panel .request-progress-editor .fnsku-stage-row .fnsku-field{grid-template-columns:minmax(150px, .42fr) minmax(220px, 1fr);align-items:center;width:100%;max-width:none;margin:0;gap:12px;font-size:12px;}
.stock-logistics-panel .request-progress-editor .fnsku-stage-row .fnsku-field input{width:100%;height:40px;padding:7px 10px;font-size:14px;font-weight:700;}
.stock-fnsku-display{display:grid;grid-template-columns:minmax(150px,.42fr) minmax(180px,1fr);align-items:center;gap:10px;width:100%;min-height:52px;padding:8px 10px;border:1px solid #d6e6e3;border-radius:5px;background:#f8fcfb;}
.stock-fnsku-display .label{margin:0;color:#52757b;font-size:11px;font-weight:800;}
.stock-fnsku-display strong{display:block;min-width:0;padding:0;border:0;background:transparent;color:#1d5555;font-size:14px;line-height:1.25;overflow-wrap:anywhere;}
@media(max-width:720px){.stock-logistics-panel .request-progress-editor .fnsku-stage-row .fnsku-field,.stock-fnsku-display{grid-template-columns:1fr;gap:6px}.stock-logistics-panel .request-progress-editor .fnsku-stage-row{min-height:0}.stock-fnsku-display strong{font-size:13px}}

/* Keep original-product tickets on the same compact workbench rhythm. */
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-items:stretch;width:100%;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-chip{width:100%;height:34px;min-height:34px;margin:0;padding:5px 8px;justify-content:center;border-radius:5px;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-chip i{display:inline-grid;flex:0 0 16px;width:16px;height:16px;margin-right:4px;place-items:center;border:2px solid #9eb2b4;border-radius:50%;font-size:10px;font-weight:800;line-height:1;color:transparent;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-chip.complete{border-color:#9bd8c6;background:#e9f7ef;color:#147453;font-weight:800;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-chip.complete i{border-color:#24a57f;background:#24a57f;color:#fff;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-editor{gap:8px 10px;margin-top:9px;padding-top:9px;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-row{min-height:92px;margin:0;padding:8px;border:1px solid #dce8e8;border-radius:6px;background:#fff;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-row.complete{border-left:2px solid #35a493;padding-left:7px;background:#f7fcfa;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-row-head{display:grid;grid-template-columns:15px minmax(0,1fr) auto;align-items:center;gap:6px;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-row-head b{font-size:12px;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .progress-row-content{min-height:42px;display:flex;align-items:stretch;}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-row textarea,.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-row p{height:42px;min-height:42px;margin:0;resize:none;}
@media(max-width:720px){.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-editor{grid-template-columns:1fr;}.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-row{min-height:0;}}

/* Keep both request systems' four progress states fully visible and aligned. */
.progress-request-card .request-progress-panel .request-progress-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;align-items:stretch;width:100%;}
.progress-request-card .request-progress-panel .request-progress-chip{display:flex;width:100%;height:32px;min-height:32px;margin:0!important;padding:5px 4px;align-items:center;justify-content:center;gap:4px;border-radius:5px;font-size:10px;line-height:1.15;white-space:nowrap;}
.progress-request-card .request-progress-panel .request-progress-chip i{display:inline-grid;flex:0 0 16px;width:16px;height:16px;margin:0;place-items:center;}
@media(max-width:720px){.progress-request-card .request-progress-panel .request-progress-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.progress-request-card .request-progress-panel .request-progress-chip{height:32px;min-height:32px;padding-inline:6px;font-size:11px;}}

/* Override the older, more-specific original-product rule so it matches stock requests. */
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-summary{grid-template-columns:repeat(4,minmax(0,1fr));}
.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-chip{height:32px;min-height:32px;margin:0!important;padding:5px 4px;justify-content:center;gap:4px;font-size:10px;line-height:1.15;white-space:nowrap;}
@media(max-width:720px){.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.progress-request-card:not(.stock-request-card) .request-progress-panel .request-progress-chip{height:32px;min-height:32px;padding-inline:6px;font-size:11px;}}

/* Stock tickets keep reference material and the progress panel aligned as fixed work columns. */
.stock-request-card{grid-template-columns:142px minmax(300px,1.12fr) 164px minmax(390px,1.2fr);gap:14px;}
.stock-request-card .request-main{padding-right:2px;}
.stock-request-card .request-material{display:grid;grid-template-rows:minmax(0,1fr) auto;align-content:stretch;gap:7px;padding:9px;overflow:hidden;}
.stock-request-card .request-material .request-image-list{display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;}
.stock-request-card .request-material .request-image-button{width:84px;height:84px;flex:0 0 auto;}
.stock-request-card .request-material-empty{display:flex;align-items:center;justify-content:center;min-height:84px;padding:8px;color:#82969a;text-align:center;line-height:1.45;}
.stock-request-card .request-source,.stock-request-card .request-source-empty{display:block;max-height:32px;overflow:hidden;color:#607a80;font-size:10px;line-height:1.45;overflow-wrap:anywhere;}
.stock-request-card .request-source-empty{margin:0;padding-top:6px;border-top:1px solid #e0eaea;}
.stock-request-card .stock-logistics-panel{height:132px;min-height:132px;}
.stock-request-card .request-progress-cell{min-width:0;}
@media(max-width:1100px){.stock-request-card{grid-template-columns:142px minmax(250px,1fr) minmax(360px,1.15fr);}.stock-request-card .request-material{display:none;}.stock-request-card .request-progress-cell{grid-column:3;}}
@media(max-width:720px){.stock-request-card .request-material{display:grid;}.stock-request-card .request-source,.stock-request-card .request-source-empty{max-height:none;}.stock-request-card .request-material .request-image-list{justify-content:flex-start;}}

/* Costing is an administrator work surface: dense, stable columns with no package details in the employee library. */
.cost-page{width:min(1380px,calc(100% - 36px))}
.cost-hero{margin-bottom:18px}
.cost-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.cost-summary-grid article{min-height:112px;padding:17px 18px;border:1px solid #d7e5e6;border-radius:7px;background:#fff;box-shadow:0 7px 18px rgba(20,54,66,.045)}
.cost-summary-grid span,.cost-summary-grid b,.cost-summary-grid small{display:block}
.cost-summary-grid span{color:#61777e;font-size:12px;font-weight:700}
.cost-summary-grid b{margin:10px 0 5px;color:#1e3f46;font-size:25px;line-height:1;font-variant-numeric:tabular-nums}
.cost-summary-grid small{color:#82959a;font-size:11px;line-height:1.35}
.cost-summary-grid .cost-summary-primary{border-color:#9fd5ce;background:#f2fbf9}
.cost-summary-grid .cost-summary-primary b{color:#087f78}
.cost-layout{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);gap:16px;align-items:start}
.cost-side-stack{display:grid;gap:16px}
.cost-panel,.cost-config-panel{margin:0;padding:18px;border-radius:7px;box-shadow:0 7px 18px rgba(20,54,66,.045)}
.cost-panel-head{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:15px;padding-bottom:13px;border-bottom:1px solid #e4edef}
.cost-panel-head h2{margin:0 0 5px;color:#244950;font-size:18px}
.cost-panel-head p{max-width:570px;margin:0;color:#71878d;font-size:12px;line-height:1.5}
.cost-panel-head .panel-kicker{margin-bottom:5px;font-size:9px}
.cost-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cost-form label{display:grid;min-width:0;gap:5px;color:#506970;font-size:11px;font-weight:800}
.cost-form input,.cost-form select{min-width:0;height:35px;padding:7px 9px;border-radius:5px;font-size:12px}
.cost-form .wide{grid-column:1/-1}
.cost-form.compact{margin-bottom:14px}
.cost-form .primary{justify-self:start;min-height:35px;padding:7px 12px}
.cost-empty,.cost-empty-inline{padding:13px;border:1px dashed #c9dcde;border-radius:6px;background:#f8fbfb;color:#71878d;font-size:12px;line-height:1.5}
.cost-empty-inline{margin-top:10px}
.cost-material-list,.cost-purchase-list{display:grid;gap:7px;max-height:286px;overflow:auto;padding-right:2px}
.cost-material-row,.cost-purchase-row{display:grid;grid-template-columns:minmax(0,1fr) auto 27px;align-items:center;gap:9px;min-width:0;padding:9px 8px 9px 10px;border:1px solid #e0ebec;border-radius:6px;background:#fbfdfd}
.cost-material-row>div,.cost-purchase-row>div{min-width:0}
.cost-material-row b,.cost-material-row span,.cost-purchase-row b,.cost-purchase-row span{display:block;overflow-wrap:anywhere}
.cost-material-row b,.cost-purchase-row b{color:#294a51;font-size:12px;line-height:1.35}
.cost-material-row span,.cost-purchase-row span{margin-top:3px;color:#778c92;font-size:10px;line-height:1.35}
.cost-material-row strong{color:#107a73;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.cost-material-row strong small{color:#778c92;font-size:10px;font-weight:500}
.cost-icon-delete{display:grid;width:27px;height:27px;padding:0;place-items:center;border-radius:5px;font-size:17px;line-height:1}
.cost-purchase-row{grid-template-columns:78px minmax(0,1fr) minmax(108px,.72fr) 27px}
.cost-purchase-row time{color:#567077;font-size:10px;font-variant-numeric:tabular-nums}
.cost-config-head{align-items:center}
.cost-config-actions{display:flex;align-items:center;gap:7px;min-width:0}
.cost-config-actions select{width:min(270px,30vw);min-width:160px;height:34px;padding:6px 8px;border-radius:5px;font-size:11px}
.cost-config-form{display:grid;gap:14px}
.cost-field-group{padding:13px;border:1px solid #e0ebec;border-radius:6px;background:#fbfdfd}
.cost-field-group h3{margin:0 0 11px;color:#31535a;font-size:13px}
.cost-config-basic{grid-template-columns:repeat(3,minmax(0,1fr))}
.cost-active-field{display:flex!important;align-items:center;gap:7px;padding:0 2px;color:#35666b!important;line-height:1.4}
.cost-active-field input{width:16px;height:16px;accent-color:#0a8a80}
.cost-lines{display:grid;gap:7px;margin-top:11px}
.cost-line{display:grid;grid-template-columns:minmax(0,1fr) 118px 27px;align-items:end;gap:8px;padding:8px;border:1px solid #dce9e9;border-radius:5px;background:#fff}
.cost-line label{display:grid;gap:5px;color:#506970;font-size:11px;font-weight:800}
.cost-line select,.cost-line input{height:34px;padding:6px 8px;border:1px solid #cbdadd;border-radius:5px;background:#fff;color:var(--ink);font:12px Inter,"Microsoft YaHei",sans-serif}
.cost-remove-line{width:27px;height:27px;margin:0;padding:0;border:1px solid #e5c4bf;border-radius:5px;background:#fff7f5;color:#a64737;font-size:17px;line-height:1;cursor:pointer}
.cost-logistics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.cost-price-grid{grid-template-columns:repeat(2,minmax(0,220px))}
.cost-result-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.cost-result-strip span{padding:9px 10px;border:1px solid #cfe5e1;border-radius:5px;background:#f1faf8;color:#52747a;font-size:11px}
.cost-result-strip b{display:block;margin-top:4px;color:#087f78;font-size:16px;font-variant-numeric:tabular-nums}
.employee-cost-summary{margin-top:13px;padding:12px;border:1px solid #cfe5e1;border-radius:7px;background:#f4fbfa}
.employee-cost-summary-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.employee-cost-summary-head h3{margin:0;color:#235058;font-size:14px}
.employee-cost-summary-head span{color:#71878d;font-size:10px}
.employee-cost-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.employee-cost-facts div{min-width:0;padding:9px;border:1px solid #d7eae7;border-radius:5px;background:#fff}
.employee-cost-facts span,.employee-cost-facts b{display:block}
.employee-cost-facts span{color:#71878d;font-size:10px;line-height:1.35}
.employee-cost-facts b{margin-top:4px;color:#176d67;font-size:13px;line-height:1.35;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
@media(max-width:1100px){.cost-layout{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr)}.cost-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-config-basic{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-logistics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.employee-cost-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.cost-layout{grid-template-columns:1fr}.cost-panel,.cost-config-panel{padding:15px}.cost-purchase-list{max-height:250px}.cost-logistics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.cost-page{width:calc(100% - 24px)}.cost-summary-grid{grid-template-columns:1fr 1fr;gap:8px}.cost-summary-grid article{min-height:100px;padding:13px}.cost-summary-grid b{font-size:21px}.cost-panel-head,.cost-config-head{align-items:stretch;flex-direction:column}.cost-config-actions{width:100%}.cost-config-actions select{width:100%;min-width:0}.cost-form,.cost-config-basic,.cost-logistics-grid,.cost-price-grid{grid-template-columns:1fr}.cost-form .primary{width:100%}.cost-line{grid-template-columns:1fr 100px 27px}.cost-result-strip{grid-template-columns:1fr}.cost-purchase-row{grid-template-columns:66px minmax(0,1fr) 27px}.cost-purchase-row>div:last-of-type{grid-column:2}.employee-cost-summary-head{align-items:start;flex-direction:column;gap:3px}.employee-cost-facts{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.cost-summary-grid,.employee-cost-facts{grid-template-columns:1fr}.cost-line{grid-template-columns:1fr 27px}.cost-line label{grid-column:1}.cost-remove-line{grid-column:2;grid-row:1}.cost-material-list,.cost-purchase-list{max-height:none;overflow:visible}}

/* Purchase batch ledger: one batch per row with its cost split always visible. */
.purchase-batch-page{width:min(1380px,calc(100% - 36px))}
.purchase-batch-hero{margin-bottom:17px}
.purchase-batch-metrics{display:grid;grid-template-columns:1.35fr repeat(3,minmax(0,.8fr));gap:11px;margin-bottom:15px}
.purchase-batch-metric{min-height:102px;padding:15px 17px;border:1px solid #d7e5e6;border-radius:7px;background:#fff;box-shadow:0 7px 18px rgba(20,54,66,.045)}
.purchase-batch-metric span,.purchase-batch-metric b,.purchase-batch-metric small{display:block}
.purchase-batch-metric span{color:#61777e;font-size:11px;font-weight:800}
.purchase-batch-metric b{margin:8px 0 4px;color:#24464d;font-size:22px;line-height:1;font-variant-numeric:tabular-nums}
.purchase-batch-metric small{color:#82959a;font-size:10px}
.purchase-batch-metric.primary{border-color:#9fd5ce;background:#f2fbf9}
.purchase-batch-metric.primary b{color:#087f78}
.purchase-batch-entry,.purchase-batch-ledger{margin:0 0 15px;padding:17px;border-radius:7px;box-shadow:0 7px 18px rgba(20,54,66,.045)}
.purchase-batch-entry>header,.purchase-batch-ledger>header{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:13px;padding-bottom:12px;border-bottom:1px solid #e3eded}
.purchase-batch-entry h2,.purchase-batch-ledger h2{margin:0 0 5px;color:#244950;font-size:18px}
.purchase-batch-entry p,.purchase-batch-ledger p{margin:0;color:#71878d;font-size:12px;line-height:1.5}
.purchase-batch-entry .panel-kicker,.purchase-batch-ledger .panel-kicker{margin-bottom:4px;font-size:9px}
.purchase-batch-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.purchase-batch-form label{display:grid;min-width:0;gap:5px;color:#506970;font-size:11px;font-weight:800}
.purchase-batch-form input,.purchase-batch-form select{min-width:0;height:35px;padding:7px 9px;border-radius:5px;font-size:12px}
.purchase-batch-form .wide{grid-column:1/-1}
.purchase-batch-form-result{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,220px));gap:8px;margin-top:1px}
.purchase-batch-form-result span{padding:8px 10px;border:1px solid #cfe5e1;border-radius:5px;background:#f1faf8;color:#59767c;font-size:11px}
.purchase-batch-form-result b{display:block;margin-top:4px;color:#087f78;font-size:16px;font-variant-numeric:tabular-nums}
.purchase-batch-form .form-actions{grid-column:1/-1;margin-top:0}
.purchase-batch-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) 210px 140px auto;gap:8px;margin-bottom:11px}
.purchase-batch-toolbar input,.purchase-batch-toolbar select{min-width:0;height:34px;padding:7px 9px;border:1px solid #cbdadd;border-radius:5px;background:#fff;color:var(--ink);font:12px Inter,"Microsoft YaHei",sans-serif}
.purchase-batch-table{overflow:auto;border:1px solid #dbe8e8;border-radius:6px;background:#fff}
.purchase-batch-table-head,.purchase-batch-row{display:grid;grid-template-columns:1.32fr .72fr .68fr 1.25fr .78fr .76fr 42px;gap:9px;align-items:center;min-width:940px;padding:10px 12px}
.purchase-batch-table-head{border-bottom:1px solid #dce8e8;background:#f1f8f8;color:#71868b;font-size:10px;font-weight:800}
.purchase-batch-row{border-bottom:1px solid #e9f0f0;background:#fff}
.purchase-batch-row:last-child{border-bottom:0}
.purchase-batch-row:hover{background:#fbfefe}
.purchase-batch-item b,.purchase-batch-item span{display:block;overflow-wrap:anywhere}
.purchase-batch-item b{color:#294b52;font-size:12px;line-height:1.35}
.purchase-batch-item span{margin-top:3px;color:#788e93;font-size:10px;line-height:1.35}
.purchase-batch-row time,.purchase-batch-quantity{color:#587178;font-size:11px;font-variant-numeric:tabular-nums}
.purchase-batch-split{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:6px;border:1px solid #d6e7e5;border-radius:5px;background:#f7fbfa}
.purchase-batch-split span,.purchase-batch-split b{display:block}
.purchase-batch-split span{color:#748b90;font-size:9px;white-space:nowrap}
.purchase-batch-split b{margin-top:3px;color:#385b61;font-size:11px;font-variant-numeric:tabular-nums}
.purchase-batch-split span:nth-child(2) b{color:#147d74}
.purchase-batch-split span:nth-child(3) b{color:#876a38}
.purchase-batch-row>strong{color:#17796f;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.purchase-batch-unit{color:#0d8178;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.purchase-batch-unit small{color:#778c92;font-size:10px;font-weight:500}
.purchase-batch-delete{display:grid;width:42px;height:29px;padding:0;place-items:center;border-radius:5px;font-size:10px}
.purchase-batch-empty{margin:12px;padding:14px;border:1px dashed #c9dcde;border-radius:6px;background:#f8fbfb;color:#71878d;font-size:12px;line-height:1.5}
.purchase-batch-ledger>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;color:#73898e;font-size:10px;line-height:1.45}
@media(max-width:1000px){.purchase-batch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-batch-toolbar{grid-template-columns:minmax(190px,1fr) 180px 130px auto}.purchase-batch-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.purchase-batch-page{width:calc(100% - 24px)}.purchase-batch-hero{align-items:start;flex-direction:column}.purchase-batch-hero .primary{width:100%}.purchase-batch-metrics{grid-template-columns:1fr 1fr;gap:8px}.purchase-batch-metric{min-height:92px;padding:13px}.purchase-batch-metric b{font-size:19px}.purchase-batch-entry,.purchase-batch-ledger{padding:14px}.purchase-batch-entry>header,.purchase-batch-ledger>header{align-items:stretch;flex-direction:column}.purchase-batch-entry>header .secondary{width:100%}.purchase-batch-form,.purchase-batch-toolbar{grid-template-columns:1fr}.purchase-batch-form-result{grid-template-columns:1fr}.purchase-batch-ledger>footer{align-items:start;flex-direction:column;gap:3px}}
@media(max-width:420px){.purchase-batch-metrics{grid-template-columns:1fr}.purchase-batch-metric{min-height:0}}

/* Central settings workspace: one predictable place for access, integrations and storage. */
.settings-page{max-width:1320px}.settings-hero{margin-bottom:18px}.settings-layout{display:grid;grid-template-columns:214px minmax(0,1fr);gap:16px;align-items:start}.settings-index{position:sticky;top:88px;margin:0;padding:12px;background:#f9fcfc}.settings-index-label{padding:4px 9px 10px;color:#789095;font-size:10px;font-weight:800;letter-spacing:1px}.settings-index-item{display:flex;align-items:center;gap:9px;width:100%;min-height:42px;padding:9px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:#4e6c72;font:700 12px Inter,"Microsoft YaHei",sans-serif;text-align:left;cursor:pointer}.settings-index-item span{display:inline-grid;width:23px;height:23px;place-items:center;border-radius:4px;background:#e8f2f1;color:#267a73;font-size:10px}.settings-index-item:hover{background:#eef8f6;color:#176e68}.settings-index-item.active{border-color:#a8d5ce;background:#e5f6f2;color:#08766e;box-shadow:inset 3px 0 0 #159188}.settings-index-item.active span{background:#169287;color:#fff}.settings-content{display:grid;gap:16px;min-width:0}.settings-section-card{margin:0;padding:20px}.settings-section-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #e4edef}.settings-section-card-head h2{margin:0 0 5px;color:#21484e;font-size:20px}.settings-section-card-head p{max-width:760px;margin:0;color:#71868b;font-size:12px;line-height:1.55}.settings-section-status{flex:0 0 auto;padding:5px 8px;border:1px solid #c9dfdc;border-radius:5px;background:#f2faf8;color:#2c7771;font-size:10px;font-weight:800;white-space:nowrap}.settings-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-form-card{display:grid;gap:10px;padding:14px;border:1px solid #dce8e8;border-radius:8px;background:#f9fcfc}.settings-form-card label,.settings-form-grid label{display:grid;gap:6px;color:#4a656c;font-size:11px;font-weight:700}.settings-form-card input,.settings-form-card select,.settings-form-grid input{min-height:36px;padding:8px 10px;font-size:12px}.settings-form-card button.primary{justify-self:start;margin-top:2px}.settings-card-title,.settings-user-list-head,.settings-subsection-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-card-title{margin-bottom:2px}.settings-card-title h3,.settings-user-list-head h3,.settings-subsection-head h3{margin:0;color:#2b5157;font-size:14px}.settings-card-title span{color:#809397;font-size:10px}.settings-card-title .text-action{padding:0;border:0;background:transparent;color:#147c73;font:700 11px Inter,"Microsoft YaHei",sans-serif;cursor:pointer}.settings-checkbox{display:flex!important;align-items:center;grid-template-columns:auto 1fr;gap:7px!important;min-height:36px}.settings-checkbox input{width:16px;min-height:16px}.settings-user-list-head{margin:20px 0 9px}.settings-user-list{display:grid;gap:7px}.settings-user-row{display:grid;grid-template-columns:minmax(150px,1.25fr) minmax(120px,1fr) 180px auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid #e0e9e8;border-radius:7px;background:#fff;font-size:12px}.settings-user-row b,.settings-user-row span{display:block}.settings-user-row span,.settings-user-row time{color:#72888d;font-size:11px}.settings-user-row .user-active{color:#257b55}.settings-user-row .user-disabled{color:#a04b42}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 14px}.settings-form-grid .wide{grid-column:1/-1}.settings-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.settings-form-actions button{min-height:37px}.settings-result{margin-top:13px;padding:10px 12px;border:1px solid #d9e7e7;border-radius:6px;background:#f6fbfa;color:#587278;font-size:11px;line-height:1.5}.settings-divider{height:1px;margin:20px 0;border-top:1px solid #e4edef}.settings-subsection-head{margin-bottom:13px}.settings-subsection-head p{margin:4px 0 0;color:#71868b;font-size:11px}.settings-security-note{display:grid;gap:3px;margin-bottom:14px;padding:11px 12px;border:1px solid #ecd9b8;border-radius:7px;background:#fff9ec;color:#866634;font-size:11px;line-height:1.5}.settings-security-note strong{color:#79561d}.settings-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.settings-status-item{display:flex;align-items:flex-start;gap:9px;min-height:78px;padding:13px;border:1px solid #dce8e8;border-radius:7px;background:#fbfdfd}.settings-status-item .status-dot{flex:0 0 auto;margin-top:4px;width:8px;height:8px}.settings-status-item .status-dot-muted{background:#b5c2c4}.settings-status-item b,.settings-status-item small{display:block}.settings-status-item b{color:#2b5157;font-size:12px}.settings-status-item small{margin-top:6px;color:#70868b;font-size:11px;line-height:1.4}
@media(max-width:900px){.settings-layout{grid-template-columns:1fr}.settings-index{position:static;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.settings-index-label{grid-column:1/-1;padding-bottom:4px}.settings-index-item{justify-content:center;min-height:38px;padding:7px 5px;font-size:11px}.settings-index-item span{display:none}.settings-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.settings-section-card{padding:15px}.settings-section-card-head{display:block}.settings-section-status{display:inline-block;margin-top:10px}.settings-account-grid,.settings-form-grid{grid-template-columns:1fr}.settings-form-grid .wide{grid-column:auto}.settings-user-row{grid-template-columns:1fr 1fr}.settings-user-row time{grid-column:1}.settings-user-row button{grid-column:2;grid-row:2;justify-self:end}.settings-index{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-index-label{grid-column:1/-1}.settings-status-grid{grid-template-columns:1fr}}
