:root{color:#17212b;font-synthesis:none;background:#f4f7f9;font-family:Inter,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}.login-shell{background:#f4f7f9;grid-template-columns:minmax(360px,520px) 1fr;min-height:100vh;display:grid}.login-panel{background:#fff;flex-direction:column;justify-content:center;padding:clamp(32px,7vw,92px);display:flex}.brand-mark{letter-spacing:.04em;color:#167c80;margin-bottom:36px;font-weight:800}.login-panel h1{color:#15232d;margin:0 0 8px;font-size:36px}.muted{color:#71808a;margin:0 0 36px}.login-form{gap:20px;max-width:350px;display:grid}.login-form label{color:#4c5d67;gap:8px;font-size:13px;font-weight:600;display:grid}.login-form input{border:1px solid #d8e0e5;border-radius:6px;outline:none;height:48px;padding:0 14px}.login-form input:focus{border-color:#167c80;box-shadow:0 0 0 3px #167c8019}.primary-button{color:#fff;cursor:pointer;background:#167c80;border:0;border-radius:6px;height:48px;font-weight:700}.primary-button:disabled{opacity:.6}.form-error{color:#bc3d3d;margin:0;font-size:13px}.login-aside{color:#fff;background:#0e3439;flex-direction:column;justify-content:center;padding:clamp(40px,8vw,120px);display:flex}.login-aside h2{margin:18px 0;font-size:clamp(32px,4vw,58px);line-height:1.15}.login-aside p{color:#b8d2d0}.eyebrow{letter-spacing:.14em;color:#7aa9a7;font-size:11px;font-weight:800}.app-shell{min-height:100vh;display:flex}.sidebar{color:#d6e6e5;background:#102f35;flex-direction:column;flex-shrink:0;width:250px;display:flex}.brand{border-bottom:1px solid #ffffff14;align-items:center;gap:11px;height:82px;padding:20px 18px;display:flex}.brand-icon{color:#174e4f;background:#fff;border-radius:8px;place-items:center;width:34px;height:34px;font-weight:900;display:grid;overflow:hidden}.brand-icon img{object-fit:contain;width:100%;height:100%;display:block}.brand strong,.brand small,.user-mini strong,.user-mini small{display:block}.brand strong{font-size:15px}.brand small,.user-mini small{color:#89a9aa;margin-top:3px;font-size:11px}.nav-label{color:#709396;letter-spacing:.12em;padding:24px 20px 10px;font-size:11px}.sidebar nav{padding:0 10px}.nav-item{color:#afc8c8;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:12px;width:100%;height:44px;margin-bottom:4px;padding:0 12px;display:flex}.nav-item:hover,.nav-item.active{color:#fff;background:#1d555a}.sidebar-footer{border-top:1px solid #ffffff14;margin-top:auto;padding:16px}.user-mini{align-items:center;gap:9px;display:flex}.user-mini strong{font-size:12px}.user-mini .icon-button{color:#9db8b8;margin-left:auto}.avatar{color:#17535a;background:#d7e9df;border-radius:50%;place-items:center;width:31px;height:31px;font-weight:800;display:grid}.avatar.small{width:27px;height:27px;font-size:12px}.icon-button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:relative}.close-mobile,.mobile-menu{display:none}.content-shell{flex:1;min-width:0}.topbar{background:#fff;border-bottom:1px solid #e5ebee;justify-content:space-between;align-items:center;height:82px;padding:0 clamp(20px,3vw,42px);display:flex}.topbar h2{margin:5px 0 0;font-size:20px}.breadcrumb{color:#819098;font-size:11px}.top-actions{align-items:center;gap:18px;display:flex}.top-actions .icon-button i{background:#db6f46;border-radius:50%;width:6px;height:6px;position:absolute;top:1px;right:0}.profile-chip{color:#3b4c54;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;display:flex}.page-content{max-width:1500px;margin:0 auto;padding:clamp(22px,3vw,42px)}.welcome{justify-content:space-between;align-items:end;margin-bottom:26px;display:flex}.welcome h1,.module-placeholder h1{margin:8px 0;font-size:30px}.welcome p,.module-placeholder p{color:#788890;margin:0}.date-chip{color:#61727a;background:#fff;border:1px solid #e0e8eb;border-radius:5px;padding:10px 13px;font-size:12px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.metric-grid article,.panel,.placeholder-card{background:#fff;border:1px solid #e5ebee;border-radius:7px}.metric-grid article{padding:20px}.metric-grid span,.metric-grid small{color:#71818a;font-size:12px;display:block}.metric-grid strong{color:#1b3940;margin:16px 0 9px;font-size:30px;display:block}.metric-grid em{color:#799097;font-size:13px;font-style:normal;font-weight:500}.dashboard-grid{grid-template-columns:1.45fr 1fr;gap:14px;margin-top:14px;display:grid}.panel{min-height:280px;padding:22px}.panel-head{justify-content:space-between;align-items:start;display:flex}.panel h3{margin:0;font-size:16px}.panel-head p{color:#849299;margin:7px 0;font-size:12px}.status-dot{color:#278c72;background:#e4f4ed;border-radius:4px;padding:5px 8px;font-size:11px}.empty-state{color:#77878d;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:170px;display:flex}.empty-state strong{color:#42565e}.empty-state span{font-size:12px}.empty-icon{color:#25817b;background:#eef5f2;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.compact{min-height:180px}.module-placeholder{padding:18px 0}.placeholder-card{color:#167c80;align-items:center;gap:14px;max-width:620px;margin-top:30px;padding:22px;display:flex}.placeholder-card strong,.placeholder-card span{display:block}.placeholder-card span{color:#71818a;margin-top:6px;font-size:13px}@media (width<=900px){.sidebar{z-index:10;transition:left .2s;position:fixed;top:0;bottom:0;left:-260px}.sidebar.open{left:0;box-shadow:10px 0 30px #0003}.close-mobile,.mobile-menu{display:grid}.mobile-menu{color:#344a53;margin-right:12px}.topbar{justify-content:flex-start}.top-actions{margin-left:auto}.profile-chip{font-size:0}.profile-chip .avatar{font-size:12px}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media (width<=560px){.login-shell{display:block}.login-aside{display:none}.login-panel{min-height:100vh;padding:34px 24px}.welcome{flex-direction:column;align-items:start;gap:14px}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-grid article{padding:14px}.metric-grid strong{margin:12px 0 6px;font-size:24px}.page-content{padding:22px 15px}.dashboard-grid{margin-top:10px}.topbar{padding:0 15px}.topbar h2{font-size:17px}}.module-heading{justify-content:space-between;align-items:end;margin-bottom:20px;display:flex}.module-heading h1{margin:8px 0;font-size:28px}.module-heading p{color:#788890;margin:0}.count-chip,.tag{color:#23766f;background:#e8f2ef;border-radius:4px;padding:5px 9px;font-size:12px}.form-panel{background:#fff;border:1px solid #e5ebee;border-radius:7px;margin-bottom:14px;padding:18px}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.form-grid input,.form-grid select{border:1px solid #d8e0e5;border-radius:5px;min-width:0;height:42px;padding:0 10px}.form-grid .primary-button{height:42px}.notice{color:#23766f;background:#e7f4ef;border-radius:5px;margin-bottom:12px;padding:10px 13px}.banner{background:#fff0f0;border:1px solid #f1cccc;border-radius:5px;margin:0 0 14px;padding:10px 14px}.danger{color:#bd4d4d}.icon-text{color:#167c80;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font-weight:700;display:inline-flex}.mini-input{border:1px solid #d8e0e5;border-radius:4px;width:100px;height:30px;margin-left:8px;padding:0 6px}.stat-list{gap:14px;margin-top:24px;display:grid}.stat-list div{background:#f5f8f8;border-radius:5px;justify-content:space-between;padding:13px;display:flex}.stat-list span{color:#73848a;font-size:13px}.stat-list b{color:#167c80}.production-form{grid-template-columns:repeat(4,minmax(0,1fr))}.production-form button{grid-column:span 4}@media (width<=900px){.form-grid,.production-form{grid-template-columns:repeat(2,minmax(0,1fr))}.production-form button{grid-column:span 2}}@media (width<=560px){.form-grid,.production-form{grid-template-columns:1fr}.production-form button{grid-column:auto}}.segmented{align-items:center;gap:8px;margin-bottom:14px;display:flex}.segmented button{color:#53666e;cursor:pointer;background:#f7f9fa;border:1px solid #d8e0e5;border-radius:5px;height:36px;padding:0 16px}.segmented button.active{color:#fff;background:#167c80;border-color:#167c80}.segmented select{border:1px solid #d8e0e5;border-radius:5px;height:36px;padding:0 10px}.file-control{color:#387477;cursor:pointer;border:1px dashed #a9c1c2;border-radius:5px;justify-content:center;align-items:center;height:42px;font-size:12px;display:flex}.file-control input{display:none}.role-picker{flex-wrap:wrap;align-items:center;gap:8px;min-height:42px;display:flex}.role-picker label{color:#52656d;background:#f4f8f8;border:1px solid #dbe7e7;border-radius:4px;padding:8px 10px;font-size:12px}.role-picker input{margin-right:5px;width:auto!important;height:auto!important}.payment-upload-panel{align-items:center;gap:14px;display:flex}.payment-upload-panel .file-control{width:280px}.upload-count,.form-caption{color:#64757d;font-size:12px}.form-caption{color:#31545a;grid-column:1/-1;font-weight:700}.alert-panel,.correction-panel{grid-template-columns:repeat(5,minmax(0,1fr))}.alert-panel .primary-button,.correction-panel .primary-button{height:42px}@media (width<=900px){.alert-panel,.correction-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.payment-upload-panel{flex-direction:column;align-items:stretch}.payment-upload-panel .file-control{width:100%}.alert-panel,.correction-panel{grid-template-columns:1fr}}.dashboard-table-wrap{margin-top:18px;overflow:auto}.dashboard-table{border-collapse:collapse;width:100%;min-width:420px}.dashboard-table th,.dashboard-table td{text-align:left;border-bottom:1px solid #edf1f3;padding:10px 8px;font-size:12px}.dashboard-table th{color:#64757d;background:#f8fafb}.dashboard-table td:not(:first-child){color:#167c80;font-weight:700}.role-matrix{margin-top:16px}.role-matrix h3{font-size:16px}.role-card{background:#fff;border:1px solid #e5ebee;border-radius:7px;margin-bottom:10px;padding:16px}.role-card-head{justify-content:space-between;align-items:center;display:flex}.permission-list{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.permission-list label{color:#52656d;background:#f5f8f8;border-radius:4px;padding:7px 9px;font-size:12px}.permission-list input{margin-right:5px}.table-panel table tbody tr:nth-child(2n){background:#f7fafb}.table-panel tbody tr:hover{background:#edf6f4}.table-panel th{border-bottom:2px solid #dfe9ea}.table-panel td{vertical-align:middle;line-height:1.5}.status-badge{white-space:nowrap;color:#596a70;background:#eef2f3;border-radius:999px;align-items:center;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.status-badge.active,.status-badge.approved,.status-badge.paid,.status-badge.stocked{color:#237a63;background:#e5f5ed}.status-badge.pending,.status-badge.pending_approval,.status-badge.partial_payment,.status-badge.submitted{color:#9a6b16;background:#fff4dc}.status-badge.rejected,.status-badge.voided,.status-badge.disabled{color:#a44949;background:#fcebea}.table-panel{background:#fff;border:1px solid #e5ebee;border-radius:7px;margin-top:14px;overflow:auto}.table-panel table{border-collapse:collapse;width:100%;min-width:760px}.table-panel th,.table-panel td{text-align:left;border-bottom:1px solid #e8eef0;padding:12px 14px;font-size:13px}.table-panel th{color:#52666e;background:#f7fafb;font-weight:800}.table-panel td{color:#30474f}.table-panel .empty-row{color:#87959a;text-align:center!important;padding:38px!important}.form-title{color:#1b3940;border-bottom:1px solid #edf1f3;grid-column:1/-1;align-items:baseline;gap:10px;padding-bottom:10px;font-size:15px;font-weight:800;display:flex}.form-title span{color:#7c8b91;font-size:12px;font-weight:400}.form-grid>input,.form-grid>select,.form-grid>.file-control{box-sizing:border-box}.form-grid>input:focus,.form-grid>select:focus{border-color:#167c80;outline:0;box-shadow:0 0 0 3px #167c8018}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:#52666e;font-size:12px;font-weight:700}.required{color:#c14f4f;margin-left:3px}.feedback-overlay{z-index:100;background:#14282b66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.feedback-dialog{background:#fff;border:1px solid #e2ebeb;border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:12px;width:min(440px,100%);padding:22px;display:grid;box-shadow:0 20px 60px #17383a33}.feedback-icon{color:#237a63;background:#e4f5ed;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.feedback-error .feedback-icon{color:#a44949;background:#fcebea}.feedback-warning .feedback-icon{color:#9a6b16;background:#fff4dc}.feedback-copy strong{color:#1b3940;font-size:16px;display:block}.feedback-copy p{color:#64757d;margin:7px 0 0;font-size:13px;line-height:1.6}.feedback-close{color:#fff;cursor:pointer;background:#167c80;border:0;border-radius:5px;grid-column:2;justify-self:end;height:36px;padding:0 18px;font-weight:700}.inline-upload{color:#387477;cursor:pointer;border:1px dashed #a9c1c2;border-radius:4px;align-items:center;height:30px;padding:0 8px;font-size:12px;display:inline-flex}.inline-upload input{display:none}.field-readonly{color:#52666e;background:#f7fafb;border:1px solid #d8e0e5;border-radius:5px;align-items:center;height:42px;padding:0 10px;font-size:12px;display:flex}.production-form>input:nth-child(2){grid-column:1/-1}.production-form>input:nth-child(3),.production-form>input:nth-child(4),.production-form>input:nth-child(5),.production-form>input:nth-child(6),.production-form>input:nth-child(7),.production-form>input:nth-child(8){grid-row:2}.production-form>input:nth-child(9),.production-form>input:nth-child(10),.production-form>input:nth-child(11),.production-form>input:nth-child(12){grid-row:3}.purchase-items-row>td{background:#fbfdfd;padding:10px 14px 16px}.purchase-items-title{color:#31545a;margin-bottom:7px;font-size:12px;font-weight:800}.nested-table{border-collapse:collapse;width:100%;min-width:760px}.nested-table th,.nested-table td{text-align:left;border:1px solid #e5edef;padding:8px 10px;font-size:12px}.nested-table th{color:#52666e;background:#f1f6f6}.attachment-panel{background:#fff;border:1px solid #e5ebee;border-radius:7px;margin-top:14px;padding:14px 16px}.attachment-list{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.attachment-button{color:#167c80;cursor:pointer;background:#f5fbfa;border:1px solid #c9dddd;border-radius:5px;padding:7px 10px;font-size:12px}.status-select{color:#52666e;background:#fff;border:1px solid #c9dddd;border-radius:4px;height:30px;padding:0 6px}.remember-control{color:#52666e;align-items:center;gap:7px;font-size:12px;display:flex}.remember-control input{flex:0 0 14px;width:14px!important;height:14px!important}.profile-trigger{cursor:pointer;border:0}.profile-nav-item{width:calc(100% - 20px);margin:8px 10px}.profile-dialog{background:#fff;border:1px solid #dfe9ea;border-radius:10px;width:min(460px,100%);max-height:90vh;padding:22px;overflow:auto;box-shadow:0 20px 60px #17383a55}.profile-dialog:before{content:"首次登录建议立即修改初始密码。只修改姓名时无需填写密码；修改密码时必须填写原密码和至少8位新密码。";color:#52666e;background:#f1f7f6;border-left:3px solid #167c80;margin:10px 0 14px;padding:10px 12px;font-size:12px;line-height:1.6;display:block}.profile-head{justify-content:space-between;align-items:center;display:flex}.profile-head h3{color:#1b3940;margin:0}.profile-form{gap:12px;margin-top:16px;display:grid}.login-log{color:#64757d;border-top:1px solid #e5edef;gap:7px;margin-top:18px;padding-top:14px;font-size:12px;display:grid}.login-log strong{color:#31545a}.danger-button{color:#a44949;cursor:pointer;background:#fff5f5;border:1px solid #d47a7a;border-radius:5px;height:38px;margin-top:16px;font-weight:700}.product-form>.form-title{order:-2}.product-form>.field:nth-child(7){order:-1}.inline-field{color:#52666e;flex-direction:column;gap:3px;font-size:11px;display:inline-flex}.inline-field .mini-input{margin:0}.search-bar{background:#fff;border:1px solid #e5ebee;border-radius:7px;align-items:end;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.search-bar label{color:#52666e;flex-direction:column;gap:5px;font-size:12px;display:flex}.search-bar input,.search-bar select{border:1px solid #d8e0e5;border-radius:4px;height:34px;padding:0 8px}.profile-page-form{grid-template-columns:repeat(3,1fr);align-items:end;gap:12px;display:grid}.profile-page-form .primary-button,.profile-page-form .danger-button{height:42px;margin:0}.log-table{margin-top:14px}.log-table tbody tr:nth-child(2n){background:#f7fafb}.production-grid{display:block}.production-grid .panel{min-height:0;margin-top:14px;padding:0;overflow:hidden}.production-grid .panel h3{background:#f1f6f6;border-bottom:1px solid #dfe9ea;margin:0;padding:13px 16px}.rate-grid{grid-template-columns:repeat(4,minmax(150px,1fr));display:grid}.rate-grid>div{border-bottom:1px solid #e5edef;border-right:1px solid #e5edef;padding:14px 16px}.rate-grid>div:nth-child(odd){background:#fff}.rate-grid>div:nth-child(2n){background:#f7fafb}.rate-grid span{color:#52666e;font-size:12px;display:block}.rate-grid strong{color:#167c80;margin-top:8px;font-size:15px;display:block}@media (width<=700px){.rate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pagination{color:#64757d;justify-content:center;align-items:center;gap:14px;padding:12px;font-size:12px;display:flex}.pagination button{color:#167c80;background:#fff;border:1px solid #c9dddd;border-radius:4px;padding:6px 10px}.pagination button:disabled{opacity:.45;cursor:not-allowed}.subnav-tabs{border-bottom:1px solid #d7e2e4;gap:0;margin-bottom:14px;display:flex}.subnav-tabs button{color:#60757c;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;height:40px;padding:0 20px;font-weight:700}.subnav-tabs button.active{color:#167c80;background:#edf5f4;border-bottom-color:#167c80}.alert-settings-table{margin-top:14px}.alert-settings-table tbody tr:nth-child(2n){background:#f7fafb}.table-search-bar{background:#f7fafb;border-bottom:1px solid #e1eaec;grid-template-columns:auto minmax(130px,190px) auto minmax(220px,1fr);align-items:center;gap:8px 10px;padding:12px 14px;display:grid}.table-search-bar label{color:#52666e;font-size:12px;font-weight:700}.table-search-bar select,.table-search-bar input{color:#273f45;background:#fff;border:1px solid #cad8dc;border-radius:4px;min-width:0;height:36px;padding:0 10px}.table-search-bar select:focus,.table-search-bar input:focus{border-color:#167c80;outline:0;box-shadow:0 0 0 3px #167c8015}@media (width<=700px){.table-search-bar{grid-template-columns:1fr}.table-search-bar label{margin-top:2px}}.nav-alert-dot{color:#fff;text-align:center;background:#c94c54;border-radius:10px;min-width:22px;height:18px;margin-left:auto;padding:0 5px;font-size:10px;line-height:18px}.notification-trigger{position:relative}.top-alert-dot{background:#d64550;border:1px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:3px;right:3px}.notification-table .unread{color:#b5444b;background:#fff1f1}.notification-table .read{color:#688084;background:#edf4f4}.notification-popups{z-index:80;gap:10px;width:min(360px,100vw - 32px);max-height:calc(100vh - 44px);display:grid;position:fixed;bottom:22px;right:22px;overflow:auto}.notification-popup{background:#fff;border:1px solid #cfe0df;border-left:4px solid #167c80;border-radius:7px;padding:14px 15px;box-shadow:0 12px 35px #17383a35}.notification-popup-head{color:#1b3940;justify-content:space-between;align-items:center;gap:10px;display:flex}.notification-popup p{color:#52666e;margin:9px 0 12px;font-size:12px;line-height:1.6}.notification-view{color:#167c80;cursor:pointer;background:#f2f8f7;border:1px solid #b9d1cf;border-radius:4px;height:32px;padding:0 10px;font-size:12px;font-weight:700}@media (width<=700px){.notification-popups{width:calc(100vw - 24px);bottom:12px;right:12px}}.production-statistics{gap:16px;display:grid}.period-summary-panel,.daily-statistics-panel{background:#fff;border:1px solid #dfe9ea;border-radius:7px;overflow:hidden}.period-toolbar,.section-heading{background:#edf5f4;border-bottom:1px solid #dfe9ea;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.period-toolbar strong,.section-heading strong{color:#1b3940;font-size:16px;display:block}.period-toolbar span,.section-heading span{color:#718087;margin-top:4px;font-size:12px;display:block}.period-fields{gap:10px;display:flex}.period-fields label{color:#52666e;flex-direction:column;gap:5px;font-size:11px;font-weight:700;display:flex}.period-fields input{background:#fff;border:1px solid #cbdadc;border-radius:4px;height:36px;padding:0 9px}.period-warning{color:#a43e3e;background:#fff5f5;border-left:3px solid #cf6868;margin:12px 18px 0;padding:9px 12px;font-size:12px}.summary-metrics{border-bottom:1px solid #dfe9ea;grid-template-columns:repeat(4,1fr);display:grid}.summary-metrics>div{border-right:1px solid #e5edef;padding:16px 18px}.summary-metrics>div:last-child{border-right:0}.summary-metrics span{color:#718087;font-size:12px;display:block}.summary-metrics strong{color:#167c80;margin-top:7px;font-size:20px;display:block}.statistics-table-block{padding:16px 18px 0}.statistics-table-block h3{color:#274d52;margin:0 0 10px;font-size:14px}.statistics-table{border-collapse:collapse;table-layout:fixed;width:100%}.statistics-table th,.statistics-table td{text-align:left;vertical-align:middle;word-break:break-word;border-bottom:1px solid #e4ecee;padding:11px 12px}.statistics-table th{color:#52666e;background:#f3f7f7;font-size:12px}.statistics-table td{color:#1b3940;font-size:13px}.statistics-table tbody tr:nth-child(2n){background:#f8fafb}.statistics-table tbody tr:last-child td{border-bottom:0}.product-statistics-table td strong{color:#167c80}.daily-statistics-panel{padding-bottom:14px}.daily-statistics-panel .table-wrap{padding:0 18px;overflow-x:auto}.daily-production-table{min-width:760px}.daily-production-table small{color:#718087;font-size:11px}.empty-row{text-align:center!important;color:#87959a!important;padding:26px!important}@media (width<=700px){.period-toolbar{flex-direction:column;align-items:stretch}.period-fields{width:100%}.period-fields label{flex:1}.summary-metrics{grid-template-columns:repeat(2,1fr)}.summary-metrics>div:nth-child(2){border-right:0}.summary-metrics>div:nth-child(-n+2){border-bottom:1px solid #e5edef}.statistics-table-block{padding-left:12px;padding-right:12px}.daily-statistics-panel .table-wrap{padding:0 12px}}.production-detail-dialog{background:#fff;border:1px solid #dfe9ea;border-radius:8px;width:min(820px,100% - 28px);max-height:88vh;padding:24px;overflow:auto;box-shadow:0 20px 60px #17383a55}.detail-section{border:1px solid #dfe9ea;margin-top:14px;overflow:hidden}.detail-section h4{color:#274d52;background:#edf5f4;margin:0;padding:11px 14px;font-size:14px}.detail-grid{grid-template-columns:repeat(2,1fr);display:grid}.detail-grid-four{grid-template-columns:repeat(4,1fr)}.detail-grid>div{border-bottom:1px solid #e4ecee;border-right:1px solid #e4ecee;min-height:70px;padding:12px 14px}.detail-grid>div:nth-child(4n){border-right:0}.detail-grid span{color:#718087;margin-bottom:6px;font-size:11px;display:block}.detail-grid strong{color:#1b3940;word-break:break-word;font-size:13px}.detail-metric-table{border-collapse:collapse;width:100%}.detail-metric-table th,.detail-metric-table td{text-align:left;border-bottom:1px solid #e4ecee;padding:11px 14px;font-size:13px}.detail-metric-table thead th{color:#52666e;background:#f3f7f7;font-size:12px}.detail-metric-table tbody tr:nth-child(2n){background:#f8fafb}.detail-metric-table tr:last-child>*{border-bottom:0}@media (width<=700px){.production-detail-dialog{padding:16px}.detail-grid-four{grid-template-columns:repeat(2,1fr)}.detail-grid>div:nth-child(2n){border-right:0}}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.approval-dialog{background:#fff;border:1px solid #dfe9ea;border-radius:8px;width:min(860px,100% - 28px);max-height:88vh;padding:24px;overflow:auto;box-shadow:0 20px 60px #17383a55}.approval-eyebrow{color:#167c80;margin-bottom:4px;font-size:11px;font-weight:800;display:block}.approval-meta{background:#dfe9ea;border:1px solid #dfe9ea;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:1px;margin:18px 0;display:grid}.approval-meta div{background:#f4f8f8;min-height:66px;padding:10px 12px}.approval-meta span{color:#718087;margin-bottom:5px;font-size:11px;display:block}.approval-meta strong{color:#1b3940;word-break:break-word;font-size:13px}.approval-section{border:1px solid #dfe9ea;overflow:hidden}.approval-section>h4,.approval-items h4{color:#274d52;background:#edf5f4;margin:0;padding:12px 14px;font-size:14px}.approval-detail-table-wrap{width:100%;overflow-x:auto}.approval-detail-table{border-collapse:collapse;table-layout:fixed;border:0;width:100%;margin:0}.approval-detail-table th,.approval-detail-table td{text-align:left;vertical-align:middle;white-space:normal;word-break:break-word;border-bottom:1px solid #e4ecee;border-right:1px solid #e4ecee;height:44px;padding:10px 14px}.approval-detail-table thead th{color:#52666e;background:#f4f7f8;font-size:12px}.approval-detail-table tbody th{color:#52666e;background:#f8fafb;width:28%;font-size:12px}.approval-detail-table tbody td{color:#1b3940;font-size:13px}.approval-detail-table tbody tr:nth-child(2n) td,.approval-detail-table tbody tr:nth-child(2n) th{background:#f3f7f7}.approval-detail-table tr>:last-child{border-right:0}.approval-items{border-top:1px solid #dfe9ea}.empty-cell{text-align:center!important;color:#829095!important}.approval-reason{background:#fff5f5;border-left:3px solid #c75b5b;gap:14px;margin-top:16px;padding:12px 14px;display:flex}.approval-reason span{color:#8d5555;font-size:12px}.approval-reason strong{color:#8e3434;font-size:13px}.approval-actions{border-top:1px solid #e5edef;justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;padding-top:18px;display:flex}.approval-actions .primary-button,.approval-actions .danger-button{cursor:pointer;border-radius:5px;justify-content:center;align-items:center;width:128px;height:42px;margin:0;padding:0 18px;font-size:14px;font-weight:700;display:inline-flex}.approval-actions .danger-button{color:#a43e3e;background:#fff;border:1px solid #cf6868}.approval-finished{color:#64757d;text-align:center;background:#f4f7f8;margin-top:18px;padding:11px 14px;font-size:12px}@media (width<=720px){.approval-dialog{padding:16px}.approval-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.approval-detail-table{min-width:560px}.approval-actions .primary-button,.approval-actions .danger-button{width:50%}}.form-panel>.form-grid{align-items:stretch}.form-panel>.form-grid>*{box-sizing:border-box;min-height:42px}.form-panel>.form-grid .field-readonly{height:42px}.form-panel>.form-grid .field{height:66px}.form-panel>.form-grid .field input,.form-panel>.form-grid .field select{height:42px}.form-panel>.form-grid{grid-auto-rows:66px}.form-panel>.form-grid>input,.form-panel>.form-grid>select,.form-panel>.form-grid>.field-readonly,.form-panel>.form-grid>.file-control,.form-panel>.form-grid>button,.form-panel>.form-grid>.field{height:66px;min-height:66px}.form-panel>.form-grid>.field .field-label{height:20px}.form-panel>.form-grid>.field input,.form-panel>.form-grid>.field select{height:42px}.stock-operation-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:66px;align-items:stretch}.stock-operation-grid>*{align-self:stretch;height:66px!important;min-height:66px!important}.stock-operation-grid>.field-readonly{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:8px 10px;display:flex}.stock-operation-grid>.field-readonly span{color:#718087;font-size:11px}.stock-operation-grid>.field,.stock-operation-grid>.file-control{height:66px!important}.stock-operation-grid>.field input,.stock-operation-grid>.field select{height:42px!important}.stock-operation-grid>.primary-button{height:66px!important}@media (width<=700px){.stock-operation-grid{grid-template-columns:1fr}}.profile-page-form{grid-auto-rows:74px;align-items:stretch}.profile-page-form>.field,.profile-page-form>.field-readonly,.profile-page-form>.primary-button,.profile-page-form>.danger-button{box-sizing:border-box;border-radius:6px;align-self:stretch;margin:0;height:74px!important;min-height:74px!important}.profile-page-form>.field,.profile-page-form>.field-readonly{background:#f8fbfb;border:1px solid #cfdcdf;grid-template-rows:25px 1fr;gap:0;padding:0;display:grid;overflow:hidden}.profile-page-form>.field .field-label,.profile-page-form>.field-readonly>span{box-sizing:border-box;color:#52666e;align-items:end;height:auto;padding:0 11px 4px;font-size:11px;font-weight:700;line-height:1;display:flex}.profile-page-form>.field input{color:#1b3940;width:100%;min-height:0;box-shadow:none;background:#fff;border:0;border-top:1px solid #e2eaec;border-radius:0;padding:0 11px;height:48px!important}.profile-page-form>.field input:focus{background:#f3f9f8;outline:0;box-shadow:inset 3px 0 #167c80}.profile-page-form>.field-readonly{color:#1b3940;justify-content:stretch;align-items:stretch}.profile-page-form>.field-readonly:not(:has(>strong)){font-size:0}.profile-page-form>.field-readonly:after{content:attr(data-value)}.profile-page-form>.primary-button,.profile-page-form>.danger-button{border-width:1px;justify-content:center;align-items:center;font-size:15px;display:flex}@media (width<=700px){.profile-page-form{grid-template-columns:1fr}}.profile-page-form>.field-readonly:after{display:none}.profile-page-form>.field-readonly>strong{color:#1b3940;box-sizing:border-box;background:#f2f6f7;border-top:1px solid #e2eaec;align-items:center;height:48px;padding:0 11px;font-size:13px;font-weight:500;display:flex}.production-detail-dialog{width:min(1040px,100% - 32px)}.production-detail-dialog .detail-grid>div{flex-direction:column;justify-content:center;min-width:0;display:flex}.production-detail-dialog .detail-grid span{min-height:16px;margin-bottom:9px;line-height:1.4}.production-detail-dialog .detail-grid strong{white-space:nowrap;line-height:1.5}.production-detail-dialog .detail-cost-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=800px){.production-detail-dialog .detail-cost-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.production-detail-dialog .detail-grid strong{white-space:normal}}@media (width<=520px){.production-detail-dialog .detail-cost-grid{grid-template-columns:1fr}}.table-delete-button{color:#a43e3e;cursor:pointer;background:#fff7f7;border:1px solid #d99191;border-radius:4px;height:30px;margin-left:8px;padding:0 10px;font-size:12px;font-weight:700}.table-delete-button:hover{background:#ffeded;border-color:#bd5555}.delete-confirm-dialog{background:#fff;border:1px solid #e3d5d5;border-radius:8px;width:min(480px,100% - 28px);padding:22px;box-shadow:0 20px 60px #17383a45}.delete-confirm-head{color:#1b3940;justify-content:space-between;align-items:center;font-size:17px;display:flex}.delete-confirm-dialog>p{color:#52666e;margin:18px 0 12px;line-height:1.6}.delete-warning{color:#934646;background:#fff4f4;border-left:3px solid #c75b5b;padding:12px 14px;font-size:12px;line-height:1.7}.delete-confirm-actions{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.delete-confirm-actions .secondary-button,.delete-confirm-actions .danger-button{border-radius:5px;width:100%;height:42px;margin:0}.secondary-button{color:#52666e;cursor:pointer;background:#fff;border:1px solid #cbd8db;font-weight:700}.stock-operation-grid,.alert-panel,.confirm-payment-panel{align-items:stretch}.confirm-payment-panel{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.confirm-payment-panel>.form-title{grid-column:1/-1}.stock-operation-grid>.field,.stock-operation-grid>.field-readonly,.stock-operation-grid>.stock-file-card,.alert-panel>.field,.alert-panel>.field-readonly,.confirm-payment-panel>.field,.confirm-payment-panel>.field-readonly{box-sizing:border-box;background:#f7fafb;border:1px solid #cfdcdf;border-radius:6px;grid-template-rows:25px minmax(0,1fr);gap:0;width:100%;padding:0;display:grid;overflow:hidden;height:74px!important;min-height:74px!important}.stock-operation-grid .field-label,.stock-operation-grid .field-readonly>span,.alert-panel .field-label,.alert-panel .field-readonly>span,.confirm-payment-panel .field-label,.confirm-payment-panel .field-readonly>span{color:#52666e;box-sizing:border-box;align-items:center;height:26px;padding:0 11px;font-size:11px;font-weight:700;line-height:1;display:flex}.stock-operation-grid>.field>input,.stock-operation-grid>.field>select,.alert-panel>.field>input,.alert-panel>.field>select,.confirm-payment-panel>.field>input,.stock-operation-grid>.field-readonly>strong,.alert-panel>.field-readonly>strong,.confirm-payment-panel>.field-readonly>strong,.stock-operation-grid>.stock-file-card>strong{color:#1b3940;box-sizing:border-box;background:#fff;border:0;border-top:1px solid #e1e9eb;border-radius:0;align-items:center;width:100%;margin:0;padding:0 11px;font-size:13px;font-weight:500;line-height:1.2;display:flex;box-shadow:inset 0 -1px #cfdcdf;height:47px!important;min-height:47px!important}.stock-operation-grid>.stock-file-card>strong{color:#167c80;cursor:pointer}.stock-operation-grid>.primary-button,.alert-panel>.primary-button,.confirm-payment-panel>.primary-button{align-self:stretch;margin:0;height:74px!important;min-height:74px!important}.stock-operation-grid>input[type=hidden]{display:none}@media (width<=700px){.stock-operation-grid,.alert-panel,.confirm-payment-panel{grid-template-columns:1fr}}.user-create-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}.user-create-form>.field,.user-create-form>.role-multiselect{box-sizing:border-box;background:#f7fafb;border:1px solid #cfdcdf;border-radius:6px;grid-template-rows:25px minmax(0,1fr);gap:0;width:100%;padding:0;display:grid;position:relative;overflow:visible;height:74px!important;min-height:74px!important}.user-create-form>.field>.field-label,.role-multiselect>.field-label{color:#52666e;box-sizing:border-box;align-items:center;height:25px;padding:0 11px;font-size:11px;font-weight:700;display:flex}.user-create-form>.field>input,.role-select-trigger{color:#1b3940;box-sizing:border-box;background:#fff;border:0;border-top:1px solid #e1e9eb;border-radius:0 0 5px 5px;width:100%;margin:0;padding:0 11px;font-size:13px;box-shadow:inset 0 -1px #cfdcdf;height:47px!important;min-height:47px!important}.role-select-trigger{cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:10px;display:flex}.role-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.role-select-arrow{color:#167c80;font-size:18px}.role-select-menu{z-index:30;background:#fff;border:1px solid #cbdadc;border-radius:6px;gap:2px;max-height:280px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 30px #17383a26}.role-select-menu label{color:#31545a;border-radius:4px;align-items:center;gap:8px;min-height:34px;padding:0 8px;font-size:12px;display:flex}.role-select-menu label:hover{background:#edf5f4}.role-select-menu input{width:14px;height:14px;margin:0}.role-select-done{color:#fff;cursor:pointer;background:#167c80;border:0;border-radius:4px;height:34px;margin-top:5px;font-weight:700}.user-create-form>.primary-button{margin:0;height:74px!important;min-height:74px!important}@media (width<=900px){.user-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.user-create-form{grid-template-columns:1fr}}
