:root{font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:#182231;background:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility;--navy: #132b49;--blue: #2767a9;--blue-soft: #eaf2fb;--ink-muted: #718096;--line: #e1e7ef;--panel: #ffffff;--bg: #f5f7fb;--green: #258361;--amber: #a76a12;--red: #b8494c}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}.app-loading{min-height:100vh;display:grid;place-items:center;gap:10px;color:var(--blue);background:var(--bg)}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(440px,44%) 1fr;background:#f7f9fc}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:42px 8%;color:#f5f8fc;overflow:hidden;background:linear-gradient(145deg,#122c4a,#173c63 62%,#245a83)}.login-visual:after{content:"";position:absolute;width:620px;height:620px;right:-290px;bottom:-230px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff05}.visual-topline,.sidebar-brand,.mobile-brand{display:flex;align-items:center;gap:10px;font-size:14px;letter-spacing:.03em}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(255,255,255,.5);color:#fff;font-weight:800;font-size:16px}.visual-copy{position:relative;z-index:1;max-width:520px;margin:auto 0}.visual-copy h1{margin:18px 0 16px;color:#fff;font-size:clamp(32px,3.2vw,53px);line-height:1.18;letter-spacing:0;font-weight:700}.visual-copy p{max-width:430px;margin:0;color:#eff6ffba;font-size:15px;line-height:1.9}.eyebrow{display:block;color:var(--blue);font-size:11px;font-weight:800;line-height:1.4;letter-spacing:.12em;text-transform:uppercase}.login-visual .eyebrow{color:#8fc6ef}.visual-foot{position:relative;z-index:1;display:flex;align-items:center;gap:12px;color:#eff6ffad;font-size:12px}.dot{width:3px;height:3px;border-radius:50%;background:#8fc6ef}.login-panel{display:grid;place-items:center;padding:48px}.login-card{width:min(100%,410px)}.mobile-brand{display:none;color:var(--navy);margin-bottom:80px}.login-card h2{margin:10px 0 9px;color:var(--navy);font-size:31px;line-height:1.2;letter-spacing:0}.login-hint{margin:0 0 32px;color:var(--ink-muted);font-size:14px;line-height:1.7}.login-form,.stack-form,.modal-form{display:grid;gap:18px}label,.field-label{display:grid;gap:8px;color:#445266;font-size:13px;font-weight:700}input,select,textarea{width:100%;border:1px solid #d7e0ea;border-radius:4px;outline:none;background:#fff;color:#182231;padding:11px 12px;transition:border-color .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{border-color:#5595ce;box-shadow:0 0 0 3px #2767a91c}textarea{resize:vertical}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:39px;border-radius:4px;padding:0 14px;border:1px solid transparent;font-size:13px;font-weight:800;transition:transform .18s,background .18s,border-color .18s}.primary-button{background:var(--blue);color:#fff;box-shadow:0 4px 10px #2767a926}.primary-button:hover{background:#205a98;transform:translateY(-1px)}.secondary-button{border-color:#d3deea;background:#fff;color:#496077}.secondary-button:hover{border-color:#8fb0d0;background:#f7fafc}.login-button{width:100%;min-height:46px;margin-top:6px}.login-note{display:flex;align-items:center;gap:8px;margin-top:25px;color:#8a96a5;font-size:12px}.form-error{padding:10px 12px;border-left:3px solid #c65357;background:#fff1f1;color:#a33f43;font-size:13px;line-height:1.5}.page-error{margin-bottom:16px}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;flex-direction:column;width:248px;padding:26px 16px 20px;color:#d9e7f4;background:#132b49}.sidebar .brand-mark{flex:0 0 auto}.sidebar-context{margin:58px 11px 30px}.sidebar-context .eyebrow{margin-bottom:9px;color:#7ea9d1}.sidebar-context strong{color:#fff;font-size:19px;letter-spacing:0}.main-nav{display:grid;gap:28px;overflow:auto}.nav-group{display:grid;gap:5px}.nav-group-label{margin:0 11px 5px;color:#7695b1;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.nav-item{display:flex;align-items:center;gap:12px;width:100%;min-height:40px;border:0;border-left:2px solid transparent;border-radius:0 4px 4px 0;padding:0 11px;color:#abc1d6;background:transparent;text-align:left;font-size:13px}.nav-item:hover{color:#fff;background:#ffffff0f}.nav-item.active{border-left-color:#74baf1;color:#fff;background:#5b9bcf30}.sidebar-bottom{margin-top:auto;padding:19px 11px 0;border-top:1px solid rgba(255,255,255,.11)}.system-status{display:flex;align-items:center;gap:8px;color:#a6c7b8;font-size:12px}.status-dot{width:7px;height:7px;border-radius:50%;background:#54b884;box-shadow:0 0 0 4px #54b8841f}.sidebar-version{margin-top:11px;color:#738da8;font-size:11px}.main-area{min-width:0;width:calc(100% - 248px);margin-left:248px}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 38px;border-bottom:1px solid var(--line);background:#f7f9fced;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-left,.topbar-actions,.user-menu{display:flex;align-items:center}.topbar-left{gap:13px;color:#29394c;font-size:14px}.breadcrumb-muted{color:#95a2b1}.breadcrumb-separator{margin:0 10px;color:#c5ced8}.topbar-actions{gap:17px}.user-menu{gap:9px}.user-menu-text{display:grid;gap:2px}.user-menu-text strong{color:#2e3b4c;font-size:12px}.user-menu-text small{color:#8b98a8;font-size:10px}.avatar{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;color:#fff;background:#4d83b3;font-weight:800;font-size:13px}.avatar.small{width:32px;height:32px;font-size:12px}.icon-button{display:inline-grid;place-items:center;width:36px;height:36px;border:0;border-radius:4px;color:#7d8c9d;background:transparent}.icon-button:hover{color:var(--blue);background:#eaf2fb}.menu-button{display:none}.content{width:100%;margin:0;padding:40px 38px 56px}.page-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.header-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.page-header h1{margin:8px 0 7px;color:var(--navy);font-size:29px;line-height:1.25;letter-spacing:0}.page-header p{margin:0;color:var(--ink-muted);font-size:13px;line-height:1.7}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.metric-card{display:flex;align-items:center;gap:15px;min-height:112px;border:1px solid var(--line);border-radius:6px;padding:20px;background:var(--panel)}.metric-card.skeleton{min-height:112px;background:linear-gradient(90deg,#fff 25%,#f0f4f8,#fff 75%);background-size:200% 100%;animation:shimmer 1.3s infinite}@keyframes shimmer{to{background-position:-200% 0}}.metric-icon,.quick-icon{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:5px}.metric-icon.blue,.quick-icon.blue{color:#3176b6;background:#e9f2fc}.metric-icon.green,.quick-icon.green{color:#2a8b69;background:#e9f6f0}.metric-icon.amber,.quick-icon.amber{color:#a97519;background:#fff5df}.metric-icon.red{color:#b64b52;background:#fff0f0}.metric-card span{display:block;color:#8090a0;font-size:12px}.metric-card strong{display:block;margin-top:5px;color:var(--navy);font-size:28px;line-height:1}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(310px,.82fr);gap:24px}.panel{border:1px solid var(--line);border-radius:6px;background:var(--panel)}.panel-heading{display:flex;align-items:start;justify-content:space-between;gap:15px;padding:23px 25px 19px;border-bottom:1px solid #edf1f5}.panel-heading h2{margin:7px 0 0;color:var(--navy);font-size:18px;letter-spacing:0}.panel-heading p{margin:6px 0 0;color:var(--ink-muted);font-size:12px;line-height:1.6}.muted-icon{color:#9aabba}.phase-badge,.count-label{color:#3674a9;background:#edf5fd;padding:6px 9px;border-radius:3px;font-size:11px;font-weight:800}.progress-wrap{padding:24px 25px 15px}.progress-label{display:flex;justify-content:space-between;color:#6e7f91;font-size:12px}.progress-label strong{color:#2869a8}.progress-track{height:8px;margin-top:11px;border-radius:4px;background:#e7edf3;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:inherit;background:#468ac0}.roadmap-list{padding:4px 25px 22px}.roadmap-item{display:flex;align-items:flex-start;gap:12px;padding:16px 0;border-top:1px solid #edf1f5}.roadmap-index{display:grid;place-items:center;flex:0 0 auto;width:23px;height:23px;border:1px solid #d9e2ec;border-radius:50%;color:#8b9cad;font-size:11px}.roadmap-index.current{border-color:#78acd4;color:#2872b4;background:#eaf3fc}.roadmap-item>div{min-width:0;flex:1}.roadmap-item strong{color:#344457;font-size:13px}.roadmap-item p{margin:5px 0 0;color:#8a98a7;font-size:12px;line-height:1.5}.roadmap-status{color:#8a99a8;font-size:11px;white-space:nowrap}.quick-panel{padding-bottom:10px}.quick-item{display:flex;align-items:center;gap:12px;padding:17px 25px;border-bottom:1px solid #edf1f5;color:#94a2b0}.quick-item:last-child{border-bottom:0}.quick-item>div:nth-child(2){min-width:0;flex:1}.quick-item strong{color:#3b4c5f;font-size:13px}.quick-item p{margin:4px 0 0;color:#8b99a8;font-size:11px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #edf1f5}.search-box{display:flex;align-items:center;gap:9px;width:min(350px,100%);color:#9aa8b7}.search-box input{height:36px;padding:8px 11px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:840px}th,td{padding:14px 18px;border-bottom:1px solid #edf1f5;color:#3e4d5e;font-size:12px;text-align:left;vertical-align:middle}th{color:#728195;background:#fbfcfd;font-size:11px;font-weight:800;letter-spacing:.04em;white-space:nowrap}tbody tr:hover{background:#fbfdff}td strong,td small{display:block}td small{margin-top:4px;color:#91a0af;font-size:11px}.person-cell{display:flex;align-items:center;gap:10px;min-width:150px}.person-cell strong{color:#2d3e50;font-size:13px}.muted-cell{color:#82909f}.tag-list{display:flex;flex-wrap:wrap;gap:5px}.tag{display:inline-flex;border-radius:3px;padding:4px 6px;color:#52718c;background:#edf4f9;font-size:10px;white-space:nowrap}.status-badge{display:inline-flex;border-radius:3px;padding:5px 7px;font-size:10px;font-weight:800}.status-badge.active{color:#24765b;background:#e8f5ee}.status-badge.inactive{color:#9b6263;background:#f9ecec}.action-cell{text-align:right}.table-action{border:0;color:#3578b4;background:transparent;font-size:12px;font-weight:800}.table-action:hover{color:#1c558a;text-decoration:underline}.table-icon-action{display:inline-grid;place-items:center;width:29px;height:29px;border:1px solid #d8e3ed;border-radius:3px;color:#4d7da5;background:#fff}.table-icon-action:hover{border-color:#87afd0;color:#21679f;background:#edf5fc}.documents-table{min-width:1120px}.document-output-cell,.document-workflow-cell{white-space:nowrap}.document-output-cell{min-width:126px}.document-workflow-cell{min-width:104px}.document-output-actions,.document-workflow-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}.document-workflow-actions{gap:12px}.roles-layout,.split-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start}.roles-list{overflow:hidden}.role-list-item{display:flex;align-items:center;gap:11px;width:100%;border:0;border-bottom:1px solid #edf1f5;padding:16px 18px;color:#8392a2;background:#fff;text-align:left}.role-list-item:hover,.role-list-item.selected{background:#f5f9fd}.role-list-item.selected{box-shadow:inset 3px 0 #4a8bc0}.role-list-item>span:nth-child(2){min-width:0;flex:1}.role-list-item strong,.role-list-item small{display:block}.role-list-item strong{color:#334356;font-size:13px}.role-list-item small{margin-top:4px;color:#94a0ae;font-size:10px}.role-symbol{display:grid;place-items:center;width:30px;height:30px;border-radius:4px;color:#3d7db5;background:#eaf3fc}.permission-panel{min-width:0}.permission-group{padding:19px 25px 6px}.permission-group+.permission-group{border-top:1px solid #edf1f5}.permission-group-title{display:flex;justify-content:space-between;margin-bottom:8px;color:#2f608c;font-size:12px;font-weight:800}.permission-group-title small{color:#9ba8b5;font-size:10px;font-weight:600}.permission-row{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #f1f4f7;cursor:pointer}.permission-row input{position:absolute;opacity:0;pointer-events:none}.fake-checkbox,.empty-check{display:grid;place-items:center;width:17px;height:17px;border:1px solid #cdd8e3;border-radius:3px;color:#fff;background:#fff}.permission-row input:checked+.fake-checkbox{border-color:#347ab7;background:#347ab7}.permission-row>span:nth-child(3){display:grid;gap:3px}.permission-row strong{color:#405163;font-size:12px}.permission-row small{color:#9aa8b5;font-size:10px}.department-list{padding:0 25px}.department-item{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #edf1f5}.department-item:last-child{border-bottom:0}.department-icon{display:grid;place-items:center;width:34px;height:34px;color:#3178b5;background:#eaf3fc;border-radius:4px}.department-item>div:nth-child(2){min-width:0;flex:1}.department-item strong,.department-item small{display:block}.department-item strong{color:#344558;font-size:13px}.department-item small{margin-top:4px;color:#94a1af;font-size:11px;line-height:1.4}.department-item>span{color:#8695a4;font-size:11px;white-space:nowrap}.category-tree-row{display:flex;align-items:center;gap:6px;min-width:210px}.category-tree-row>div{min-width:0}.category-tree-toggle,.category-tree-toggle-spacer{display:inline-grid;place-items:center;flex:0 0 auto;width:24px;height:24px}.category-tree-toggle{border:0;border-radius:3px;color:#7890a5;background:transparent}.category-tree-toggle:hover{color:var(--blue);background:#eaf2fb}.category-tree-toggle svg{transition:transform .18s ease}.category-tree-toggle.expanded svg{transform:rotate(0)}.split-layout{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}.stack-form{padding:25px}.toolbar-note{display:flex;align-items:center;gap:8px;color:#778797;font-size:12px}.audit-action{display:inline-flex;padding:4px 7px;border-radius:3px;color:#3f759f;background:#eef5fa;font-family:Consolas,monospace;font-size:10px}.reserved-panel{display:grid;justify-items:start;min-height:350px;padding:58px 60px;border:1px solid var(--line);border-radius:6px;background:#fff}.reserved-panel.blue{background:linear-gradient(135deg,#fff,#f4f9ff)}.reserved-panel.green{background:linear-gradient(135deg,#fff,#f3fbf7)}.reserved-panel.amber{background:linear-gradient(135deg,#fff,#fffaf0)}.reserved-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:28px;border-radius:6px;color:var(--blue);background:var(--blue-soft)}.reserved-panel.green .reserved-icon{color:var(--green);background:#e8f5ef}.reserved-panel.amber .reserved-icon{color:var(--amber);background:#fff3d8}.reserved-panel h2{margin:10px 0 12px;color:var(--navy);font-size:25px;letter-spacing:0}.reserved-panel p{max-width:590px;margin:0;color:#718092;font-size:13px;line-height:1.8}.reserved-line{display:flex;gap:8px;margin-top:40px}.reserved-line span{display:block;width:48px;height:4px;border-radius:3px;background:#dce8f3}.reserved-line span:first-child{background:#71a9d3}.nav-submenu{display:grid;gap:4px}.nav-parent{display:flex;align-items:center;gap:12px;width:100%;min-height:40px;border:0;border-left:2px solid transparent;border-radius:0 4px 4px 0;padding:0 11px;color:#abc1d6;background:transparent;text-align:left;font-size:13px;font-weight:700}.nav-parent:hover,.nav-parent.active{color:#fff;background:#ffffff0f}.nav-parent.active{border-left-color:#74baf1}.nav-parent span{min-width:0;flex:1}.nav-parent svg:last-child{color:#7896b1;transition:transform .18s ease}.nav-parent svg.expanded{transform:rotate(180deg)}.nav-submenu-items{display:grid;gap:3px;margin-left:14px;padding-left:10px;border-left:1px solid rgba(157,190,220,.25)}.nav-item.nav-subitem{min-height:35px;padding-left:10px;color:#92aec7;font-size:12px}.nav-item.nav-subitem.active{border-left-color:#8fc6ef;color:#fff;background:#5b9bcf30}.inventory-guide{overflow:hidden}.inventory-guide-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.guide-step{display:flex;gap:13px;min-height:128px;padding:24px 22px;border-right:1px solid #edf1f5}.guide-step:last-child{border-right:0}.guide-step>span{color:#6da0c7;font-family:Consolas,monospace;font-size:12px;font-weight:800}.guide-step>div{min-width:0}.guide-step strong{color:#34475a;font-size:13px}.guide-step p{margin:8px 0 0;color:#8493a2;font-size:11px;line-height:1.7}.inventory-filters{display:flex;align-items:end;gap:15px;padding:17px 22px;border-bottom:1px solid #edf1f5}.inventory-filters label{width:190px}.inventory-filters select{height:36px;padding:8px 10px}.product-filters{flex-wrap:wrap}.product-filters label{width:170px}.items-table{min-width:1100px}.repairs-table{min-width:1580px}.price-cell{color:#405f78;font-family:Consolas,monospace;font-weight:700;white-space:nowrap}.production-inline-filter{padding:0;border:0}.production-table{min-width:1160px}.production-status{display:inline-flex;border-radius:3px;padding:5px 7px;font-size:10px;font-weight:800;white-space:nowrap}.production-status.draft,.production-status.pending{color:#718092;background:#eef2f5}.production-status.released,.production-status.ready,.production-status.returned{color:#2f6e99;background:#eaf4fb}.production-status.in_progress,.production-status.repairing{color:#956c24;background:#fff5df}.production-status.completed,.production-status.retested{color:#237658;background:#e8f5ee}.production-status.closed{color:#4f6d8c;background:#edf4fb}.production-status.cancelled,.production-status.abnormal,.production-status.scrapped{color:#a04f54;background:#faeded}.production-status.execution-normal{color:#237658;background:#e8f5ee}.production-status.execution-paused{color:#956c24;background:#fff5df}.production-status.execution-terminated{color:#a04f54;background:#faeded}.work-order-status-stack{display:grid;justify-items:start;gap:5px}.work-order-actions{display:grid;justify-items:end;gap:6px;min-width:240px}.work-order-action-group{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px}.work-order-action-group .table-action{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.production-steps{display:grid;gap:12px;padding-top:4px}.production-step-row{display:grid;grid-template-columns:28px minmax(160px,1.2fr) minmax(160px,1fr) 112px minmax(160px,1fr) 36px;gap:10px;align-items:end;padding:12px;border:1px solid #e6edf3;background:#fbfcfd}.production-step-row.route-step-row{grid-template-columns:28px repeat(auto-fit,minmax(150px,1fr)) 36px}.production-step-row label,.production-step-row select,.production-step-row input{min-width:0}.production-step-row input,.production-step-row select{height:35px;padding:8px 9px}.production-check{display:flex;align-items:center;gap:8px;padding-bottom:8px;color:#5d7186;font-size:12px;white-space:nowrap}.production-check input{width:15px;height:15px}.production-step-row .icon-button{justify-self:end}.production-step-row .roadmap-index{align-self:center;width:28px;height:28px;margin-top:6px;border-color:#78acd4;color:#2872b4;background:#eaf3fc}.code-cell{color:#66809a!important;font-family:Consolas,monospace}.quantity-cell,.quantity-positive,.quantity-negative{font-family:Consolas,monospace;font-weight:800}.quantity-positive{color:#25825e}.quantity-negative,.danger-action{color:#b24d54!important}.document-status{display:inline-flex;border-radius:3px;padding:5px 7px;font-size:10px;font-weight:800}.document-status.draft{color:#718092;background:#eef2f5}.document-status.submitted{color:#956c24;background:#fff5df}.document-status.approved{color:#2f6e99;background:#eaf4fb}.document-status.posted{color:#237658;background:#e8f5ee}.document-status.cancelled{color:#a04f54;background:#faeded}.table-actions{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:7px}.link-button{border:0;color:#2d72aa;background:transparent;font-family:Consolas,monospace;font-size:12px;font-weight:800}.link-button:hover{color:#174f7b;text-decoration:underline}.quantity-link{min-width:38px;padding:0;text-align:left}.document-lines{display:grid;gap:12px;padding-top:3px}.document-lines-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:4px}.document-lines-heading strong{display:block;margin-top:6px;color:#405264;font-size:13px}.document-item-picker{display:grid;gap:12px;border:1px solid #dfe8f0;padding:14px;background:#f8fbfe}.document-item-picker .document-lines-heading{padding:0}.document-item-filters{display:flex;align-items:end;gap:9px}.document-item-filters label{width:170px}.document-item-filters input,.document-item-filters select{height:35px;padding:8px 9px}.document-item-count{align-self:end;color:#8594a3;font-size:11px;white-space:nowrap}.document-item-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:192px;overflow:auto}.document-item-option{display:flex;align-items:center;justify-content:space-between;min-width:0;border:1px solid #dce6ef;padding:10px 11px;color:#34495e;background:#fff;text-align:left}.document-item-option:hover:not(:disabled){border-color:#7eaed4;background:#f2f8fd}.document-item-option>span{min-width:0}.document-item-option strong,.document-item-option small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-item-option strong{font-size:12px}.document-item-option small{margin-top:4px;color:#7f90a0;font-size:10px}.document-item-option b{flex:0 0 auto;margin-left:9px;color:#2d72aa;font-size:11px}.document-item-option:disabled{cursor:default;border-color:#e2e9ef;color:#8090a0;background:#f4f7f9;opacity:1}.document-item-option:disabled b{color:#778997}.document-item-empty{display:grid;grid-column:1 / -1;justify-items:center;gap:5px;padding:21px;border:1px dashed #d6e1ea;color:#8898a7;background:#fff;text-align:center}.document-item-empty strong{color:#536477;font-size:12px}.document-item-empty span{font-size:11px}.document-lines-empty{border:1px dashed #d9e3ec;padding:17px;color:#8090a0;background:#fbfcfd;font-size:12px;text-align:center}.document-line{display:grid;grid-template-columns:minmax(190px,1.7fr) minmax(90px,.8fr) minmax(120px,1fr) minmax(130px,1fr) minmax(120px,1fr) 36px;align-items:end;gap:9px;padding:13px;border:1px solid #e6edf3;background:#fbfcfd}.document-lines,.document-line,.document-line label{min-width:0}.document-line input,.document-line select{height:35px;padding:8px 9px}.document-line-product{display:flex;align-items:center;min-width:0;gap:10px;padding-bottom:8px}.document-line-product>span{display:grid;place-items:center;flex:0 0 auto;width:24px;height:24px;border:1px solid #b8d3e9;border-radius:50%;color:#2d72aa;background:#eef6fd;font-size:11px;font-weight:800}.document-line-product>div{min-width:0}.document-line-product strong,.document-line-product small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-line-product strong{color:#33495f;font-size:12px}.document-line-product small{margin-top:4px;color:#8091a1;font-size:10px}.operation-fields{display:grid;gap:14px;padding-top:4px}.operation-multi{display:grid;gap:8px}.operation-options{display:flex;flex-wrap:wrap;gap:8px}.operation-options label{width:auto;min-height:34px;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dde6ee;border-radius:8px;background:#f9fbfd;color:#52677b;font-size:12px;font-weight:700}.operation-options label.selected{border-color:#9ec5dd;background:#eef7fc;color:#27658c}.operation-options input{width:auto}.operation-table-fields{gap:10px}.operation-table-wrap,.repair-settlement-wrap{overflow-x:auto;border:1px solid #dfe8f0;background:#fff}.operation-entry-table{min-width:1280px}.operation-entry-table th,.operation-entry-table td{padding:8px 9px;vertical-align:middle}.operation-entry-table th{background:#f6f9fc}.operation-entry-table input,.operation-entry-table select{min-width:108px;height:34px;padding:7px 8px;font-size:12px}.operation-entry-table td:nth-child(2) input{min-width:150px}.operation-entry-table td:nth-child(3) input,.operation-entry-table td:nth-child(4) input{min-width:130px}.operation-entry-table td:nth-child(10) input{min-width:220px}.operation-table-empty{padding:18px;color:#8493a1;text-align:center}.operation-table-summary{padding:10px 12px;color:#506779;background:#f7fafc;font-size:12px;font-weight:700}.entry-table-section{display:grid;gap:10px;min-width:0}.entry-table-hint{color:#8b99a7;font-size:11px;white-space:nowrap}.entry-table-wrap{overflow-x:auto;border:1px solid #dfe8f0;background:#fff}.entry-table{width:max-content;min-width:100%;table-layout:fixed}.entry-table th,.entry-table td{padding:8px 9px;vertical-align:middle}.entry-table th{background:#f6f9fc}.entry-table input,.entry-table select,.entry-table textarea{min-width:96px;height:34px;padding:7px 8px;font-size:12px}.entry-table textarea{height:42px;min-height:42px;resize:vertical}.entry-table select[multiple]{height:62px;min-width:140px}.entry-index-cell{width:44px;color:#6d8ba5;font-family:Consolas,monospace;font-weight:800;text-align:center}.entry-number-cell{width:98px;text-align:right}.entry-number-cell input{min-width:78px;width:82px;text-align:right}.entry-number-cell>span{display:block;min-width:78px;padding:8px 4px;text-align:right}.report-entry-table{min-width:1450px}.report-entry-table th:nth-child(1),.report-entry-table td:nth-child(1){width:44px}.report-entry-table th:nth-child(2),.report-entry-table td:nth-child(2){width:142px}.report-entry-table th:nth-child(3),.report-entry-table td:nth-child(3),.report-entry-table th:nth-child(4),.report-entry-table td:nth-child(4),.report-entry-table th:nth-child(5),.report-entry-table td:nth-child(5),.report-entry-table th:nth-child(6),.report-entry-table td:nth-child(6),.report-entry-table th:nth-child(7),.report-entry-table td:nth-child(7){width:98px}.report-entry-table th:nth-child(8),.report-entry-table td:nth-child(8),.report-entry-table th:nth-child(9),.report-entry-table td:nth-child(9){width:136px}.report-entry-table th:nth-child(10),.report-entry-table td:nth-child(10){width:128px}.report-entry-table th:nth-child(11),.report-entry-table td:nth-child(11){width:190px}.work-order-entry-table{min-width:960px}.work-order-entry-table th:nth-child(1),.work-order-entry-table td:nth-child(1){width:44px}.work-order-entry-table th:nth-child(2),.work-order-entry-table td:nth-child(2){width:220px}.work-order-entry-table th:nth-child(3),.work-order-entry-table td:nth-child(3){width:220px}.work-order-entry-table th:nth-child(4),.work-order-entry-table td:nth-child(4){width:112px}.work-order-entry-table th:nth-child(5),.work-order-entry-table td:nth-child(5){width:220px}.work-order-entry-table th:nth-child(6),.work-order-entry-table td:nth-child(6){width:76px}.work-order-common-fields{margin-top:2px}.operation-field-table{min-width:100%}.operation-field-table th,.operation-field-table td{min-width:150px}.operation-field-table th:first-child,.operation-field-table td:first-child{min-width:44px;width:44px}.operation-field-table input,.operation-field-table select,.operation-field-table textarea{width:100%;min-width:132px}.operation-field-table textarea{min-width:180px}.operation-field-table select[multiple]{min-width:160px}.chip-test-result-table{min-width:1280px}.chip-test-result-table th,.chip-test-result-table td{padding:10px 12px;vertical-align:top}.repairs-detail-table{min-width:1420px}.repairs-detail-table th,.repairs-detail-table td{padding:10px 12px;vertical-align:top}.repair-settlement-table{min-width:1420px;table-layout:fixed}.repair-settlement-table th,.repair-settlement-table td{padding:9px 10px;vertical-align:top}.repair-settlement-table th:nth-child(1){width:170px}.repair-settlement-table th:nth-child(2),.repair-settlement-table th:nth-child(5),.repair-settlement-table th:nth-child(6){width:150px}.repair-settlement-table th:nth-child(3),.repair-settlement-table th:nth-child(4),.repair-settlement-table th:nth-child(12),.repair-settlement-table th:nth-child(13){width:130px}.compact-number-col,.compact-number-cell{width:82px;min-width:82px;max-width:82px;text-align:right}.repair-settlement-table input{height:34px;padding:7px 8px;font-size:12px}.repair-settlement-table select{min-width:0;width:100%;height:34px;padding:7px 8px;font-size:12px}.repair-settlement-table .compact-number-cell input{min-width:0;width:72px;text-align:right}.repair-settlement-table td:not(.compact-number-cell) input{min-width:0;width:100%}.repair-source-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 16px;padding:14px;border:1px solid #dfe8f0;background:#f8fbfe;color:#728395;font-size:12px}.repair-source-meta strong{color:#344c63}.input-error{color:#b24d54!important}.document-detail{display:grid;gap:14px;padding:23px 25px 25px}.document-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:14px;border-bottom:1px solid #edf1f5}.document-detail-toolbar>div:first-child{display:grid;gap:5px}.document-detail-toolbar strong{color:#354d64;font-size:14px}.document-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-bottom:8px;border-bottom:1px solid #edf1f5;color:#7a8998;font-size:12px}.document-detail-meta strong{color:#34475a}.document-detail>p{margin:0;color:#748394;font-size:12px}.document-print-frame{position:fixed;right:0;bottom:0;width:0;height:0;border:0;visibility:hidden}.stock-detail{display:grid;gap:14px;padding:23px 25px 25px}.stock-detail-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-bottom:8px;border-bottom:1px solid #edf1f5}.stock-detail-summary.with-scope{grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr))}.stock-detail-summary div{display:grid;gap:5px;color:#7a8998;font-size:12px}.stock-detail-summary strong{color:#34475a;font-size:14px}.stock-detail-loading{padding:30px 0;color:#7a8998;font-size:12px;text-align:center}.selected-stock-row{background:#f5f9fd}.attribute-form{display:grid;gap:11px;padding-top:5px}.parameter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#101f326b}.modal{width:min(calc(100vw - 48px),1440px);max-height:calc(100vh - 40px);overflow-x:hidden;overflow-y:auto;border-radius:6px;background:#fff;box-shadow:0 22px 55px #122b493b}.modal-header{display:flex;align-items:start;justify-content:space-between;padding:23px 25px 19px;border-bottom:1px solid #edf1f5}.modal-header h2{margin:7px 0 0;color:var(--navy);font-size:19px}.modal-form{padding:24px 25px 25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full-span{grid-column:1 / -1}.role-picker{display:grid;gap:10px;padding-top:4px}.role-options{display:flex;flex-wrap:wrap;gap:8px}.role-option{display:inline-flex;align-items:center;gap:6px;border:1px solid #d9e2eb;border-radius:3px;padding:8px 9px;color:#697b8c;background:#fff;font-size:11px}.role-option.selected{border-color:#71a5ce;color:#2f6d9e;background:#edf5fc}.form-note{padding:10px 12px;border-left:3px solid #d49b42;color:#806329;background:#fff8e8;font-size:12px;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px;padding-top:6px}.empty-state{display:grid;justify-items:center;gap:8px;padding:44px 20px;color:#8998a8}.empty-state strong{color:#536477;font-size:13px}.empty-state span{font-size:11px}.empty-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#8da1b3;background:#eff4f8}.mobile-backdrop{display:none}@media(max-width:1080px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.login-page{grid-template-columns:minmax(380px,42%) 1fr}.sidebar{width:224px}.main-area{width:calc(100% - 224px);margin-left:224px}}@media(max-width:820px){.login-page{display:block}.login-visual{min-height:300px;padding:25px}.visual-copy{margin:45px 0 35px}.visual-copy h1{font-size:33px}.visual-foot{display:none}.login-panel{min-height:calc(100vh - 300px);padding:36px 25px}.mobile-brand{display:flex;margin-bottom:55px}.login-visual .brand-mark{border-color:#ffffff80}.sidebar{transform:translate(-100%);transition:transform .22s ease}.sidebar.is-open{transform:translate(0)}.main-area{width:100%;margin-left:0}.topbar{padding:0 20px}.menu-button{display:inline-grid}.mobile-backdrop{position:fixed;inset:0;z-index:15;display:block;border:0;background:#0a192a59}.content{padding:30px 20px 45px}.roles-layout,.split-layout{grid-template-columns:1fr}.modal-backdrop{padding:14px}.document-line{grid-template-columns:repeat(2,minmax(0,1fr))}.document-line-product{grid-column:1 / -1}.document-line .icon-button{justify-self:end}.repair-source-meta{grid-template-columns:1fr}.document-item-filters{flex-basis:100%;order:3;justify-content:flex-start}}@media(max-width:560px){.topbar{height:64px}.user-menu-text,.topbar-left .breadcrumb-muted,.topbar-left .breadcrumb-separator{display:none}.page-header{display:block}.page-header h1{font-size:25px}.header-actions{justify-content:flex-start}.page-header .primary-button,.page-header .secondary-button{margin-top:18px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.metric-card{min-height:92px;padding:14px;gap:10px}.metric-icon{width:33px;height:33px}.metric-card strong{font-size:23px}.form-grid{grid-template-columns:1fr}.full-span{grid-column:auto}.reserved-panel{min-height:300px;padding:40px 28px}th,td{padding:12px 13px}.inventory-guide-list{grid-template-columns:1fr 1fr}.guide-step:nth-child(2){border-right:0}.guide-step:nth-child(n+3){border-top:1px solid #edf1f5}.inventory-filters{align-items:stretch;flex-direction:column}.inventory-filters label{width:100%}.document-item-filters{align-items:stretch;flex-direction:column;width:100%}.document-item-filters label{width:100%}.document-item-count{align-self:start;padding-bottom:0}.document-item-results,.production-step-row{grid-template-columns:1fr}.production-step-row .icon-button{justify-self:start}.production-check{padding-bottom:0}.document-detail-toolbar{align-items:flex-start;flex-direction:column}.document-detail-meta{grid-template-columns:1fr 1fr}.stock-detail-summary,.stock-detail-summary.with-scope,.parameter-grid{grid-template-columns:1fr}}
