:root{--page: #f2f5f7;--surface: #ffffff;--surface-sunken: #f7f9fa;--surface-hover: #f1f7f8;--border: #dbe3e8;--border-strong: #c2cdd4;--border-control: #8294a1;--text-primary: #16222b;--text-secondary: #445864;--text-muted: #5e7080;--text-disabled: #93a3af;--accent: #0e5a66;--accent-hover: #0a4852;--accent-active: #083a42;--accent-soft: #e4f0f1;--accent-border: #9cc4c8;--on-accent: #ffffff;--success: #1b7a46;--success-soft: #e7f4ec;--warning: #8a5a00;--warning-soft: #fdf3e0;--warning-border: #e3c48c;--danger: #b42318;--danger-soft: #fcecea;--danger-border: #efb3ac;--invoice-bg: #fff4de;--invoice-border: #e8c173;--invoice-text: #7a4b00;--overlay: rgba(22, 34, 43, .44);--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-pill: 9999px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 24px;--s8: 32px;--s10: 40px;--s12: 48px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--shadow-1: 0 1px 2px rgba(22, 34, 43, .05);--shadow-2: 0 2px 6px rgba(22, 34, 43, .07);--shadow-3: 0 8px 24px rgba(22, 34, 43, .12);--shadow-4: -20px 0 48px rgba(22, 34, 43, .16);--header-h: 56px;--control-h: 36px;--row-h: 46px;--summary-h: 72px;--container: 1240px;--font: "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", "Noto Sans SC", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--page);color:var(--text-primary);font-family:var(--font);font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,p,dl,dd,figure{margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit}table{border-collapse:collapse}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.app-main{flex:1 0 auto}.app-header{position:sticky;top:0;z-index:30;padding-top:var(--safe-top);padding-left:var(--safe-left);padding-right:var(--safe-right);background:var(--surface);border-bottom:1px solid var(--border)}.app-header-inner{max-width:var(--container);margin:0 auto;height:var(--header-h);padding:0 24px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{width:28px;height:28px;border-radius:var(--r-sm);background:var(--accent);color:var(--on-accent);font-size:14px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.brand-text{display:flex;align-items:center;gap:8px}.brand-name{font-size:15px;font-weight:600;color:var(--text-primary)}.brand-rule{width:1px;height:14px;background:var(--border-strong)}.brand-sub{font-size:13px;font-weight:500;color:var(--text-muted)}.nav{display:flex;align-items:center;gap:4px}.nav-item{height:34px;padding:0 12px;display:inline-flex;align-items:center;border-radius:var(--r-sm);font-size:13px;font-weight:500;color:var(--text-secondary)}.nav-item:hover{background:var(--surface-hover)}.nav-item.is-active{background:var(--accent-soft);color:var(--accent);font-weight:600}.header-right{margin-left:auto;display:flex;align-items:center;gap:8px}.env-pill{height:22px;padding:0 8px;display:inline-flex;align-items:center;border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--text-muted);font-size:12px}.unsaved-chip{height:22px;padding:0 8px;display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);background:var(--warning-soft);border:1px solid var(--warning-border);color:var(--warning);font-size:12px}.unsaved-dot{width:6px;height:6px;border-radius:50%;background:var(--warning)}.page{max-width:var(--container);margin:0 auto;padding:40px 24px 32px}.page-order{padding-bottom:128px}.page-head{margin-bottom:24px}.page-title{font-size:20px;font-weight:600;line-height:1.35;letter-spacing:-.01em}.page-sub{margin-top:6px;font-size:13px;color:var(--text-muted)}.work-stack{display:flex;flex-direction:column;gap:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-1);padding:20px}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}.card-title{font-size:15px;font-weight:600;line-height:1.5}.card-note{font-size:12px;color:var(--text-muted)}.form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-9{grid-column:span 9}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field-label{font-size:13px;font-weight:500;color:var(--text-secondary);line-height:1.4}.field-req{color:var(--danger);margin-left:2px}.input,.select,textarea.input{width:100%;height:var(--control-h);padding:0 12px;border:1px solid var(--border-control);border-radius:var(--r-sm);background:var(--surface);color:var(--text-primary);font-family:var(--font);font-size:14px;line-height:normal}textarea.input{height:auto;min-height:84px;padding:9px 12px;line-height:1.6;resize:vertical}.input::placeholder{color:var(--text-muted)}.input:hover,.select:hover{border-color:var(--text-muted)}.input:focus,.select:focus,textarea.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 0 4px #0e5a6624}.input:disabled,.select:disabled{background:var(--surface-sunken);color:var(--text-disabled);cursor:not-allowed}.input.is-invalid,.select.is-invalid{border-color:var(--danger);background:#fcecea66}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235E7080' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}.field-error{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--danger);line-height:1.4}.field-hint{font-size:12px;color:var(--text-muted);line-height:1.4}.form-error{margin-top:12px;font-size:13px;color:var(--danger)}.invoice-block{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-sunken)}.invoice-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;flex-wrap:wrap}.invoice-options-group{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.invoice-opt-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 12px;font-size:13px;font-weight:500;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.invoice-opt-btn:hover{border-color:var(--accent);color:var(--accent)}.invoice-opt-btn.is-active{background:var(--invoice-bg, #fff4de);border-color:var(--invoice-border, #e8c173);color:var(--invoice-text, #7a4b00);font-weight:600;box-shadow:0 1px 3px #7a4b001f}.invoice-opt-btn .opt-sub{font-size:10px;font-weight:400;opacity:.85}.th-title-wrap{display:inline-flex;align-items:center;gap:4px;white-space:normal;word-break:break-word}.th-fill-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:transparent;color:var(--text-muted);border-radius:3px;cursor:pointer;opacity:.6;transition:opacity .12s ease,background .12s ease,color .12s ease}.th-fill-btn:hover{opacity:1;background:var(--surface-hover);color:var(--accent)}.workflow-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.workflow-table .workflow-actions{min-width:180px}.workflow-actions{display:grid;gap:8px}.workflow-note{min-width:180px}.link-button{border:0;padding:0;background:transparent;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.workflow-drawer-actions{border-color:var(--accent-border);background:var(--accent-soft)}.inventory-tabs{margin-bottom:16px;max-width:720px}.inventory-onhand{font-size:17px;font-weight:800;color:var(--accent)}.access-list{display:grid;gap:12px}.access-row{display:grid;grid-template-columns:180px 1fr 1.4fr auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px}.access-user{display:grid;gap:3px}.access-user span{color:var(--text-muted);font-size:12px}.access-options{display:flex;flex-wrap:wrap;gap:8px 14px}.permission-check{display:inline-flex;align-items:center;gap:5px;font-size:13px}.store-access{display:grid;gap:6px}@media (max-width: 980px){.access-row{grid-template-columns:1fr}.workflow-page-head{flex-direction:column}.workflow-table{min-width:920px}}.backup-alert-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:10px 16px;background:#fff8e6;border:1px solid #ffd591;border-radius:var(--r-sm);color:#873800;flex-wrap:wrap}.backup-alert-left{display:inline-flex;align-items:center;gap:10px}.backup-alert-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--r-xs);background:#fa8c16;color:#fff;font-size:11px;font-weight:600}.backup-alert-text{font-size:13px;font-weight:500}.backup-alert-actions{display:inline-flex;align-items:center;gap:8px}.bom-footer-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:8px 12px;background:var(--surface-sunken);border-radius:var(--r-sm);flex-wrap:wrap}.bom-freight-bar{display:inline-flex;align-items:center;gap:8px}.freight-label{font-size:13px;font-weight:600;color:var(--text-primary)}.freight-input{width:110px;height:32px;font-size:14px;font-weight:600;text-align:right;border:1px solid var(--border-strong);border-radius:var(--r-xs);padding:0 8px;background:var(--surface);color:var(--accent)}.freight-hint{font-size:12px;color:var(--text-muted)}.invoice-copy{display:flex;flex-direction:column;gap:2px}.invoice-title{font-size:13px;font-weight:600;color:var(--text-primary)}.invoice-hint{font-size:12px;color:var(--text-muted);line-height:1.4}.switch{position:relative;flex-shrink:0;width:40px;height:22px;padding:0;border:none;border-radius:var(--r-pill);background:var(--border-strong);cursor:pointer;transition:background .15s ease}.switch.is-on{background:var(--accent)}.switch-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:var(--r-pill);background:var(--surface);transition:transform .15s ease}.switch.is-on .switch-thumb{transform:translate(18px)}.badge-tier{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--text-muted);font-size:12px;font-weight:500;white-space:nowrap}.badge-tier.is-active{background:var(--accent);color:var(--on-accent)}.badge-invoice{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--text-muted);font-size:12px;white-space:nowrap}.badge-invoice.is-on{background:var(--invoice-bg);border:1px solid var(--invoice-border);color:var(--invoice-text)}.tier-banner{background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:var(--r-md);padding:16px;margin-bottom:16px;transition:background .18s ease}.tier-main{display:flex;align-items:center;justify-content:space-between;gap:16px}.tier-copy{display:flex;flex-direction:column;gap:2px}.tier-label{font-size:12px;color:var(--text-muted)}.tier-value{font-size:15px;font-weight:600;color:var(--accent)}.tier-measure{display:flex;align-items:center;gap:4px}.tick{width:12px;height:4px;border-radius:2px;background:#0e5a662e}.tick.is-on{background:var(--accent)}.tick-more{margin-left:6px;padding:0 6px;height:18px;display:inline-flex;align-items:center;border-radius:var(--r-xs);background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:600}.tier-hint{margin-top:8px;font-size:12px;color:var(--text-secondary);line-height:1.6}.tier-rule{display:block;margin-top:4px;color:var(--text-muted)}.table-wrap{position:relative;width:100%;overflow-x:auto;contain:paint}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table thead th{height:40px;padding:0 12px;background:var(--surface-sunken);border-bottom:1px solid var(--border-strong);color:var(--text-muted);font-size:12px;font-weight:500;letter-spacing:.02em;text-align:left;vertical-align:middle;white-space:nowrap}.data-table thead th.num{text-align:right}.th-sub{display:block;font-size:11px;font-weight:400;letter-spacing:0;color:var(--text-muted)}.bom-table.is-invoice .col-unit .th-sub{color:var(--invoice-text)}.data-table tbody td{height:var(--row-h);padding:6px 12px;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--surface-hover)}.data-table .num{text-align:right;font-feature-settings:"tnum" 1,"lnum" 1;font-variant-numeric:tabular-nums;white-space:nowrap}.data-table td.cell-subtotal{font-size:15px;font-weight:600;font-feature-settings:"tnum" 1,"lnum" 1}.cell-muted{color:var(--text-muted)}.cell-docno{font-weight:500;font-feature-settings:"tnum" 1,"lnum" 1;letter-spacing:.01em;white-space:nowrap}.data-table tr.is-clickable{cursor:pointer}.bom-table-wrap{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;width:100%}.bom-table-wrap::-webkit-scrollbar{height:6px}.bom-table-wrap::-webkit-scrollbar-track{background:var(--surface-sunken)}.bom-table-wrap::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.bom-table{width:100%;min-width:0;table-layout:auto}.bom-table th,.bom-table td{padding-left:4px;padding-right:4px;white-space:normal;word-break:break-word}.bom-table tbody td{height:auto;min-height:38px;padding-top:4px;padding-bottom:4px}.bom-table .col-index{width:36px;color:var(--text-muted);position:sticky;left:0;z-index:2;background:var(--surface);text-align:center}.bom-table thead .col-index{background:var(--surface-sunken);z-index:3}.bom-table .col-category{min-width:104px;width:11%}.bom-table .col-product{min-width:140px;width:16%}.bom-table .col-color{min-width:92px;width:10%}.bom-table .col-spool{min-width:82px;width:8%}.bom-table .col-pack{min-width:76px;width:8%}.bom-table .col-packaging{min-width:154px;width:17%}.bom-table .col-qty{min-width:70px;width:7%}.bom-table .col-unit{min-width:96px;width:10%}.bom-table .col-subtotal{min-width:100px;width:10%}.bom-table .col-action{width:38px;min-width:38px;text-align:center}.bom-table .col-image{width:52px;min-width:52px}.bom-table th.center,.bom-table td.center{text-align:center}.cell-input,.cell-select{width:100%;height:30px;padding:0 4px;border:1px solid transparent;border-radius:var(--r-xs);background:transparent;color:var(--text-primary);font-family:var(--font);font-size:13px;line-height:1.2}.cell-input::placeholder{color:var(--text-muted)}.cell-input:hover,.cell-select:hover{border-color:var(--border-strong);background:var(--surface)}.cell-input:focus,.cell-select:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px #0e5a6629}.cell-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235E7080' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;white-space:nowrap;cursor:pointer}.cell-select:disabled{color:var(--text-disabled);cursor:not-allowed}.cell-input.num{text-align:right;font-feature-settings:"tnum" 1,"lnum" 1}.cell-input.is-invalid,.cell-select.is-invalid{border-color:var(--danger);background:#fcecea66}.num-input{height:34px;text-align:right;font-size:13px;font-feature-settings:"tnum" 1,"lnum" 1}.bom-table.is-invoice .cell-unit{background:var(--invoice-bg);color:var(--invoice-text);font-weight:500}.bom-table.is-invoice .cell-unit .cell-input{color:var(--invoice-text)}.manual-chip{display:inline-flex;align-items:center;height:18px;margin-left:4px;padding:0 5px;border:1px solid var(--border-strong);border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--text-secondary);font-size:11px;white-space:nowrap}.cell-error{margin-top:2px;font-size:12px;color:var(--danger);line-height:1.4}.image-cell{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:34px}.image-empty{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--surface-sunken);color:var(--text-muted);cursor:pointer}.image-empty:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.image-empty:disabled{color:var(--text-disabled);cursor:not-allowed;border-style:solid}.image-thumb{position:relative;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;background:var(--surface-sunken);cursor:zoom-in}.image-thumb img{width:100%;height:100%;object-fit:cover;display:block}.image-thumb-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#16222b70;color:#fff;opacity:0;transition:opacity .12s ease}.image-thumb:hover .image-thumb-overlay,.image-thumb:focus-visible .image-thumb-overlay{opacity:1}.image-clear{position:absolute;top:-5px;right:-5px;width:18px;height:18px;display:none;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--danger);cursor:pointer;padding:0}.image-cell:hover .image-clear,.image-cell:focus-within .image-clear{display:inline-flex}.image-spinner{width:18px;height:18px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-hint{font-size:12px;color:var(--text-muted)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center}.lightbox-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;padding:0;cursor:zoom-out;background:#16222bd6}.lightbox-panel{position:relative;z-index:1;width:min(720px,calc(100vw - 48px));max-height:90vh;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-3);display:flex;flex-direction:column;gap:8px}.lightbox-panel img{max-width:100%;max-height:80vh;object-fit:contain;background:var(--surface-sunken);border-radius:var(--r-sm)}.lightbox-close{position:absolute;top:8px;right:8px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-1)}.lightbox-close:hover{background:var(--surface-hover);color:var(--text-primary)}.lightbox-caption{font-size:12px;color:var(--text-muted)}.quota-banner{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--warning-border);border-radius:var(--r-sm);background:var(--warning-soft);color:var(--warning);font-size:12px;line-height:1.5}.quota-banner span{flex:1}.quota-close{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-xs);background:transparent;color:var(--warning);cursor:pointer}.quota-close:hover{background:#8a5a001a}.metric-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.metric{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-right:1px solid var(--border);min-width:0}.metric:last-child{border-right:none}.metric-label{font-size:12px;color:var(--text-muted)}.metric-value{font-size:17px;font-weight:600;line-height:1.25;font-feature-settings:"tnum" 1,"lnum" 1;white-space:nowrap}.metric-unit{margin-left:4px;font-size:12px;font-weight:400;color:var(--text-muted)}.metric-sub{margin-left:6px;font-size:12px;font-weight:400;color:var(--text-muted)}.scheme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:16px 0 4px}.scheme-tile{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.scheme-tile.is-recommended{background:var(--accent-soft);border-color:var(--accent-border)}.scheme-tile.is-overweight{background:var(--danger-soft);border-color:var(--danger-border)}.scheme-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.scheme-name{font-size:13px;font-weight:600}.scheme-badge{height:20px;padding:0 6px;display:inline-flex;align-items:center;border:1px solid var(--accent-border);border-radius:var(--r-pill);background:var(--surface);color:var(--accent);font-size:11px;font-weight:500}.scheme-count{font-size:26px;font-weight:600;line-height:1.1;font-feature-settings:"tnum" 1,"lnum" 1}.scheme-unit{margin-left:4px;font-size:12px;font-weight:400;color:var(--text-muted)}.scheme-rows{display:flex;flex-direction:column;gap:4px;margin:0}.scheme-rows>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.scheme-rows dt{font-size:12px;color:var(--text-muted)}.scheme-rows dd{margin:0;font-size:13px;font-feature-settings:"tnum" 1,"lnum" 1}.scheme-weight{display:flex;align-items:center;gap:5px;margin-top:2px;padding-top:8px;border-top:1px solid var(--border);font-size:12px;color:var(--text-secondary);font-feature-settings:"tnum" 1,"lnum" 1}.scheme-weight svg{flex-shrink:0;color:var(--success)}.scheme-weight.is-over{color:var(--danger);font-weight:600}.scheme-weight.is-over svg{color:var(--danger)}.plan-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-sunken);font-size:13px;color:var(--text-secondary)}.link-btn{border:none;background:transparent;color:var(--accent);font-family:var(--font);font-size:13px;cursor:pointer;padding:4px 2px;white-space:nowrap}.link-btn:hover{text-decoration:underline}.metrics-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border);font-size:12px;color:var(--text-muted);line-height:1.6}.page-settings{max-width:880px}.setting-list{display:flex;flex-direction:column}.setting-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:14px 0;border-bottom:1px solid var(--border)}.setting-row:last-child{border-bottom:none;padding-bottom:4px}.setting-label{display:flex;flex-direction:column;gap:2px;font-size:13px;font-weight:500;color:var(--text-secondary);padding-top:8px;min-width:140px}.setting-control{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.setting-control-row{flex-direction:row;align-items:center;gap:16px}.setting-control-row .setting-hint{max-width:380px;margin:0}.setting-text{width:240px}.setting-hint{font-size:12px;color:var(--text-muted);line-height:1.5;text-align:right}.setting-error{font-size:12px;font-weight:400;color:var(--danger)}.setting-table{border-top:1px solid var(--border)}.setting-table-head,.setting-table-row{display:grid;grid-template-columns:56px 96px 96px 96px 120px 104px 1fr 72px;align-items:center;gap:10px;padding:8px 0}.setting-table-head{font-size:12px;color:var(--text-muted);border-bottom:1px solid var(--border)}.setting-table-row{border-bottom:1px solid var(--border)}.setting-table-row:last-child{border-bottom:none}.setting-pack{font-size:13px;font-weight:600;font-feature-settings:"tnum" 1,"lnum" 1}.unit-wrap{display:flex;flex-direction:column;gap:4px;min-width:0}.unit-label{display:none;font-size:11px;color:var(--text-muted)}.unit-label:empty{display:none!important}.unit-field{display:flex;align-items:center;border:1px solid var(--border-control);border-radius:var(--r-sm);background:var(--surface);padding-right:6px;min-width:0}.unit-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 0 4px #0e5a6624}.unit-field.is-invalid{border-color:var(--danger);background:#fcecea66}.unit-input{width:100%;min-width:0;height:34px;padding:0 4px 0 8px;border:none;background:transparent;color:var(--text-primary);font-family:var(--font);font-size:13px;text-align:right;font-feature-settings:"tnum" 1,"lnum" 1;outline:none}.unit-input::placeholder{color:var(--text-muted)}.unit-affix{font-size:12px;color:var(--text-muted);-webkit-user-select:none;user-select:none;flex-shrink:0}.setting-select,.setting-note{height:36px;font-size:13px}.setting-note::placeholder{color:var(--text-muted)}.spec-pill{height:20px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--text-muted);font-size:11px;white-space:nowrap}.spec-pill.is-ready{background:var(--accent-soft);color:var(--accent)}.settings-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.unsaved-note{display:inline-flex;align-items:center;gap:6px;margin-right:auto;font-size:12px;color:var(--warning)}.icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);cursor:pointer}.icon-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.icon-btn.is-danger:hover{background:var(--danger-soft);color:var(--danger)}.bom-actions{margin-top:16px}.bom-cards{display:none}.bom-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);padding:14px;display:flex;flex-direction:column;gap:10px}.bom-card-head{display:flex;align-items:center;justify-content:space-between}.bom-card-index{font-size:12px;font-weight:600;color:var(--text-muted);font-feature-settings:"tnum" 1}.bom-card-field{display:flex;flex-direction:column;gap:4px}.bom-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bom-card-value{height:34px;display:flex;align-items:center;justify-content:flex-end;font-size:13px;font-weight:500;font-feature-settings:"tnum" 1,"lnum" 1;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-sunken);padding:0 10px}.bom-card-total{display:flex;align-items:baseline;justify-content:space-between;padding-top:8px;border-top:1px solid var(--border);font-size:12px;color:var(--text-muted)}.bom-card-total strong{font-size:16px;font-weight:600;color:var(--text-primary);font-feature-settings:"tnum" 1,"lnum" 1}.bom-card-metrics{font-size:12px;color:var(--text-muted);font-feature-settings:"tnum" 1,"lnum" 1}.bom-card-image{display:flex;align-items:center;gap:10px;padding-top:8px;border-top:1px solid var(--border)}.bom-card-image .image-cell{width:auto}.bom-card-image .image-empty,.bom-card-image .image-thumb{width:44px;height:44px}.empty-state{padding:32px 16px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.empty-icon{color:var(--border-strong);margin-bottom:4px}.empty-title{font-size:14px;font-weight:600;color:var(--text-primary)}.empty-text{font-size:13px;color:var(--text-muted);margin-bottom:8px}.btn{height:40px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--text-primary);font-family:var(--font);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s ease,border-color .12s ease,color .12s ease}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{background:var(--accent-active)}.btn-secondary{background:var(--surface);border-color:var(--border-control);color:var(--text-primary)}.btn-secondary:hover{background:var(--surface-hover);border-color:var(--border-strong)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover{background:var(--surface-hover)}.btn-ghost.is-danger:hover{background:var(--danger-soft);color:var(--danger)}.btn-danger{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger)}.btn-danger:hover{background:#f9dfdc}.confirm-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:12px 14px;border:1px solid var(--danger-border);border-radius:10px;background:var(--danger-soft);color:var(--text-primary)}.confirm-strip>div:first-child{display:grid;gap:3px;min-width:0}.confirm-strip span,.confirm-strip small{color:var(--text-secondary)}.confirm-strip small{line-height:1.5}.btn:disabled{background:var(--surface-sunken);border-color:var(--border);color:var(--text-disabled);cursor:not-allowed}.summary-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -10px 24px #16222b0f}.summary-inner{max-width:var(--container);margin:0 auto;height:var(--summary-h);padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.summary-left,.summary-metrics{display:flex;align-items:center;gap:24px;min-width:0}.summary-metric{display:flex;flex-direction:column;gap:1px;min-width:88px}.summary-metric:nth-child(2){min-width:104px}.summary-metric:nth-child(3){min-width:120px}.summary-label{font-size:12px;color:var(--text-muted)}.summary-value{font-size:14px;font-weight:600;font-feature-settings:"tnum" 1,"lnum" 1;white-space:nowrap}.summary-badges{display:flex;align-items:center;gap:8px}.summary-right{display:flex;align-items:center;gap:24px}.summary-amount{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:180px}.amount-label{font-size:12px;color:var(--text-muted)}.amount-total{font-size:26px;font-weight:600;line-height:1.1;letter-spacing:-.01em;font-feature-settings:"tnum" 1,"lnum" 1}.summary-actions{display:flex;align-items:center;gap:8px}.summary-more{display:none}.confirm-text{font-size:12px;color:var(--text-secondary)}.toast{position:fixed;right:16px;bottom:calc(var(--summary-h) + 16px);z-index:80;max-width:360px;display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-3);font-size:14px}.toast-icon{flex-shrink:0}.toast-success .toast-icon{color:var(--success)}.toast-danger .toast-icon{color:var(--danger)}.toast-info .toast-icon{color:var(--accent)}.toast-message{color:var(--text-primary);line-height:1.5}.toast-action{border:none;background:transparent;color:var(--accent);font-size:13px;font-weight:500;cursor:pointer;padding:0 2px;white-space:nowrap}.toast-action:hover{text-decoration:underline}.toast-close{border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--r-sm)}.toast-close:hover{background:var(--surface-hover);color:var(--text-primary)}.toolbar{display:flex;align-items:center;gap:8px;margin-bottom:16px}.search-box{position:relative;display:flex;align-items:center;gap:8px;flex:1;max-width:380px;height:var(--control-h);padding:0 12px;border:1px solid var(--border-control);border-radius:var(--r-sm);background:var(--surface);color:var(--text-muted)}.search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 0 4px #0e5a6624}.search-input{flex:1;border:none;outline:none;background:transparent;font-family:var(--font);font-size:14px;color:var(--text-primary);min-width:0}.search-input::placeholder{color:var(--text-muted)}.orders-table .cell-customer{max-width:240px}.order-cards{display:none}.order-card{display:flex;flex-direction:column;gap:8px;width:100%;padding:14px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);text-align:left;cursor:pointer;font-family:var(--font)}.order-card:active{background:var(--surface-hover)}.order-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.order-card-amount{font-size:15px;font-weight:600;font-feature-settings:"tnum" 1,"lnum" 1}.order-card-mid{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:13px;color:var(--text-secondary)}.order-card-date{font-size:12px;color:var(--text-muted)}.order-card-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60}.drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;padding:0;background:var(--overlay);cursor:pointer}.drawer{position:absolute;top:var(--safe-top);right:var(--safe-right);bottom:var(--safe-bottom);width:640px;max-width:calc(100% - var(--safe-left) - var(--safe-right));display:flex;flex-direction:column;background:var(--surface);box-shadow:var(--shadow-4)}.drawer-head{min-height:64px;flex-shrink:0;padding:8px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border)}.drawer-no{display:block;font-size:15px;font-weight:600;font-feature-settings:"tnum" 1,"lnum" 1}.drawer-meta{display:block;margin-top:2px;font-size:12px;color:var(--text-muted)}.drawer-close{flex:0 0 auto;width:44px;height:44px;border:1px solid var(--border-strong);background:var(--surface)}.drawer-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px}.doc-info{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:20px}.doc-info dt{font-size:12px;color:var(--text-muted)}.doc-info dd{margin:2px 0 0;font-size:14px;color:var(--text-primary);word-break:break-word}.doc-info-full{grid-column:1 / -1}.doc-table-wrap{border:1px solid var(--border);border-radius:var(--r-sm);overflow-x:auto}.doc-table{min-width:540px;font-size:12px}.doc-table th,.doc-table td{padding-left:8px;padding-right:8px}.doc-table thead th{background:var(--surface-sunken)}.doc-table tbody td{height:44px;font-size:13px}.doc-empty{text-align:center;color:var(--text-muted)}.doc-images{margin-top:16px}.doc-images-label{display:block;margin-bottom:8px;font-size:12px;color:var(--text-muted)}.doc-images-row{display:flex;flex-wrap:wrap;gap:8px}.doc-image-thumb{width:48px;height:48px;padding:0;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;background:var(--surface-sunken);cursor:zoom-in}.doc-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}.doc-totals{margin-top:16px;display:flex;flex-direction:column;gap:6px}.doc-totals>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-size:13px;color:var(--text-secondary)}.doc-totals strong{font-feature-settings:"tnum" 1,"lnum" 1;color:var(--text-primary)}.doc-grand{padding-top:10px;border-top:3px double var(--border-strong)}.doc-grand strong{font-size:26px;font-weight:600}.drawer-foot{flex-shrink:0;min-height:64px;padding:12px 20px;display:flex;align-items:center;gap:8px;border-top:1px solid var(--border)}.drawer-foot-right{margin-left:auto;display:flex;align-items:center;gap:8px}.drawer-foot-close{flex:0 0 auto}.chip-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:8px}.chip{height:32px;padding:0 12px;flex-shrink:0;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--text-secondary);font-family:var(--font);font-size:13px;font-weight:500;cursor:pointer}.chip:hover{background:var(--surface-hover)}.chip.is-active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent);font-weight:600}.price-table{min-width:720px}.price-table tbody td{height:44px}.price-table-wrap{max-height:70vh;overflow:auto}.price-table thead th{position:sticky;top:0;z-index:1}.table-note{margin-top:16px;font-size:12px;color:var(--text-muted);line-height:1.6}.notfound-page{display:flex;justify-content:center;padding-top:96px}.notfound-card{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.notfound-code{font-size:26px;font-weight:600;color:var(--accent)}.print-sheet{display:none}@media print{@page{size:A4 portrait;margin:12mm}body{background:#fff}.app-shell,.summary-bar,.toast,.drawer-layer{display:none!important}.print-sheet{display:block;width:auto;max-width:none;padding:0;background:#fff;color:#000;font-family:var(--font);font-size:12px}.ps-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:10px;border-bottom:2px solid #000}.ps-brand-name{display:block;font-size:18px;font-weight:600}.ps-brand-sub{display:block;margin-top:2px;font-size:11px}.ps-meta{text-align:right}.ps-no{display:block;font-size:13px;font-weight:600;letter-spacing:.02em}.ps-date{display:block;font-size:11px}.ps-info{width:100%;border:1px solid #000;margin:12px 0;border-collapse:collapse}.ps-info th,.ps-info td{border:1px solid #000;padding:6px 8px;font-size:11px;text-align:left;vertical-align:top}.ps-info th{width:90px;font-weight:600;background:#fff}.ps-th-sub{width:80px}.ps-table{width:100%;border:1px solid #000;border-collapse:collapse;page-break-inside:avoid}.ps-table th,.ps-table td{border:1px solid #000;padding:3px 4px;font-size:10px;line-height:1.35;text-align:left;vertical-align:middle}.ps-table th{font-weight:600;font-size:9px}.ps-table tr{page-break-inside:avoid}.ps-col-index{width:26px}.ps-col-spool{width:40px;white-space:nowrap}.ps-col-pack{width:38px;white-space:nowrap}.ps-col-image{width:36px;text-align:center}.ps-num{text-align:right;font-feature-settings:"tnum" 1,"lnum" 1;white-space:nowrap}.ps-bold{font-weight:600}.ps-empty{text-align:center}.ps-thumb{width:28px;height:28px;object-fit:cover;border:1px solid #000;border-radius:3px;display:block;margin:0 auto}.ps-thumb-empty{display:block;text-align:center;font-size:8px}.ps-totals{margin-top:10px;display:flex;flex-direction:column;align-items:flex-end;gap:4px;page-break-inside:avoid}.ps-total-row{display:flex;gap:24px;justify-content:flex-end;min-width:260px;font-size:12px}.ps-total-row strong{min-width:120px;text-align:right;font-feature-settings:"tnum" 1}.ps-grand{padding-top:6px;border-top:3px double #000;font-size:13px}.ps-foot{margin-top:24px;padding-top:8px;border-top:1px solid #000;display:flex;justify-content:space-between;gap:16px;font-size:10px}}@media (max-width: 1199px){.app-header-inner{padding:8px 20px 0;height:auto;min-height:var(--header-h);flex-wrap:wrap;gap:8px}.nav{order:3;width:100%;max-width:100%;overflow-x:auto;padding-bottom:8px;scroll-padding-inline:12px;scrollbar-width:thin;overscroll-behavior-inline:contain}.nav:after{content:"";flex:0 0 12px}.nav-item{flex:0 0 auto;white-space:nowrap}.header-right{margin-left:auto}.app-header{--header-h: 104px}.inventory-action-bar{top:calc(var(--header-h) + 6px)}.page{padding:32px 20px}.summary-inner{padding:0 20px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.col-2,.col-3,.col-4,.col-6,.col-9{grid-column:span 1}.col-6:last-of-type{grid-column:span 1}.field.col-6 textarea{min-height:84px}}@media (max-width: 767px){.app-header-inner{height:auto;padding:10px 16px 0;flex-wrap:wrap;gap:10px}.brand-mark{width:26px;height:26px;font-size:13px}.nav{order:3;width:100%;gap:4px;padding-bottom:8px;overflow-x:auto}.nav-item{height:32px;padding:0 10px}.header-right{gap:6px}.env-pill{display:none}.page{padding:20px 16px}.page-order{padding-bottom:252px}.page-head{margin-bottom:16px}.page-title{font-size:18px}.card{padding:16px;border-radius:var(--r-md)}.card-head{flex-direction:column;align-items:flex-start;gap:2px;margin-bottom:14px}.form-grid{grid-template-columns:minmax(0,1fr);gap:14px}.col-2,.col-3,.col-4,.col-6,.col-9{grid-column:span 1}.input,.select,textarea.input{height:44px;font-size:16px}textarea.input{height:auto}.tier-banner{padding:14px}.tier-main{flex-direction:column;align-items:flex-start;gap:10px}.tier-measure{width:100%}.bom-table-wrap{display:none}.bom-cards{display:grid;gap:12px}.orders-table-wrap{display:none}.order-cards{display:grid;gap:12px}.toolbar{flex-wrap:wrap}.search-box{max-width:none;height:44px}.summary-inner{height:auto;min-height:88px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:10px}.summary-left{flex-direction:column;align-items:stretch;gap:8px}.summary-metrics{gap:12px;justify-content:space-between;overflow-x:auto;scrollbar-width:none}.summary-metrics::-webkit-scrollbar{display:none}.summary-metric{min-width:0}.summary-metric:nth-child(2),.summary-metric:nth-child(3){min-width:0}.summary-value{font-size:13px}.summary-badges{gap:6px}.metric-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{padding:10px 8px}.metric-value{font-size:13px}.metric-unit,.metric-sub{font-size:11px;margin-left:2px}.metric:nth-child(3) .metric-sub{display:none}.scheme-grid{grid-template-columns:minmax(0,1fr);gap:10px}.plan-notice{flex-direction:column;align-items:flex-start;gap:8px}.metrics-foot{flex-direction:column;align-items:flex-start;gap:6px}.setting-row{flex-direction:column;align-items:stretch;gap:8px;padding:12px 0}.setting-label{min-width:0;padding-top:0}.setting-control{align-items:stretch}.setting-control-row{flex-direction:row;align-items:center;justify-content:space-between}.setting-control-row .setting-hint{max-width:none;text-align:left}.setting-text{width:100%}.setting-hint{text-align:left}.setting-table-head{display:none}.setting-table-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 0;align-items:start}.setting-pack,.setting-cell-note{grid-column:1 / -1}.setting-cell-select{grid-column:span 1}.spec-pill{grid-column:1 / -1;justify-self:start}.unit-label{display:block}.settings-actions{flex-wrap:wrap;justify-content:flex-end}.unsaved-note{width:100%;margin-right:0}.bom-card-image .image-hint{font-size:13px}.summary-right{flex-direction:column;align-items:stretch;gap:10px}.summary-amount{flex-direction:row;align-items:baseline;justify-content:space-between;min-width:0}.amount-total{font-size:22px}.summary-actions{display:flex;flex-wrap:wrap;gap:8px}.summary-actions .summary-secondary{display:none}.summary-actions.is-open .summary-secondary{display:inline-flex;flex:1 1 30%}.summary-actions .summary-more{display:inline-flex}.summary-actions .summary-save{flex:1}.summary-actions .confirm-text{width:100%}.summary-actions .btn{height:44px}.toast{left:12px;right:12px;bottom:12px;max-width:none}.drawer{left:var(--safe-left);width:auto;max-width:none;border-radius:16px 16px 0 0}.drawer-head{min-height:72px;padding:10px 16px}.drawer-head>div{min-width:0}.drawer-no,.drawer-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-body{padding:16px}.drawer-foot{flex-wrap:wrap;padding:10px 16px calc(10px + var(--safe-bottom))}.drawer-foot-close{order:-1}.drawer-foot-right{margin-left:0;width:100%;justify-content:flex-end}.doc-info{grid-template-columns:1fr}.notfound-page{padding-top:48px}}.cell-boxes-exact{display:block;font-feature-settings:"tnum" 1,"lnum" 1;color:var(--text-primary)}.cell-boxes-actual{display:block;margin-top:1px;font-size:11px;font-weight:400;color:var(--text-muted);font-feature-settings:"tnum" 1,"lnum" 1}.bom-card-boxes{display:flex;align-items:center;justify-content:space-between;gap:10px}.bom-card-value.is-inline{width:auto;min-width:0;height:30px;justify-content:flex-end;font-size:12px;border:none;background:transparent;padding:0}.price-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:12px 0 14px;border-bottom:1px solid var(--border);margin-bottom:12px}.price-toolbar-main{display:flex;align-items:center;gap:8px}.price-toolbar-side{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.price-dirty-note{display:inline-flex;align-items:center;gap:6px;margin-bottom:10px;font-size:12px;color:var(--warning)}.price-import-note{margin-bottom:10px;font-size:12px;color:var(--success)}.price-edit-cell{padding:4px 8px}.price-edit-input{width:88px;height:32px;padding:0 8px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--text-primary);font-family:var(--font);font-size:13px;text-align:right;font-feature-settings:"tnum" 1,"lnum" 1}.price-edit-input:hover{border-color:var(--border-control);background:var(--surface)}.price-edit-input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px #0e5a6624}.price-edit-input.is-invalid{border-color:var(--danger);background:#fcecea73}.doc-model{display:inline-flex;align-items:center;height:18px;margin-left:8px;padding:0 6px;border-radius:var(--r-xs);font-size:11px;font-weight:500;vertical-align:middle;background:var(--surface-sunken);color:var(--text-muted)}.doc-model.is-v1{background:var(--warning-soft);color:var(--warning)}.doc-model.is-v2{background:var(--accent-soft);color:var(--accent)}.doc-table{min-width:700px}.ps-col-package{width:62px}.summary-metric:nth-child(4){min-width:96px}@media (max-width: 767px){.price-toolbar{flex-direction:column;align-items:stretch}.price-toolbar-main .btn-primary{width:100%}.price-toolbar-side{justify-content:flex-start}.price-edit-input{width:72px;height:36px}.summary-metric:nth-child(4){min-width:0}}@media (max-width: 767px){.page-order{padding-bottom:calc(200px + env(safe-area-inset-bottom))}.summary-metrics .summary-metric:nth-child(3),.summary-metrics .summary-metric:nth-child(4){display:none}.summary-inner{gap:8px}.summary-badges{gap:6px}}@media (max-width: 767px){.page-order{padding-bottom:calc(148px + env(safe-area-inset-bottom))}.summary-inner{min-height:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:8px}.summary-badges{display:none}.summary-left{gap:12px}.summary-metrics{gap:16px}.summary-right{flex-direction:row;align-items:center;gap:12px}.summary-amount{flex:1;flex-direction:column;align-items:flex-end;gap:0;min-width:0}.summary-actions{display:flex;align-items:center;gap:8px}.summary-actions .btn-primary{grid-column:auto;order:0}.amount-total{font-size:20px}}.bom-table{table-layout:fixed;min-width:0}.bom-table .col-packaging .cell-input{width:100%}.bom-table thead th{height:46px;vertical-align:middle;line-height:1.25}.bom-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--surface-sunken) 45%,transparent)}.bom-table tbody tr:focus-within td{background:color-mix(in srgb,var(--accent-soft) 46%,var(--surface))}.bom-table .cell-input{min-height:34px;padding-inline:7px}.bom-table td.cell-unit,.bom-table td.cell-subtotal{background-clip:padding-box}.bom-table td.cell-subtotal{color:var(--accent-strong, var(--accent))}@media (max-width: 767px){.page-order{padding-bottom:calc(204px + env(safe-area-inset-bottom))}.summary-metrics{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 14px;width:100%}.summary-metrics .summary-metric:nth-child(3),.summary-metrics .summary-metric:nth-child(4){display:flex}.summary-metric{min-width:0}.summary-label{font-size:11px;line-height:1.35}.summary-value{font-size:13px;line-height:1.35}.summary-value .summary-unit-inline{font-size:11px}}.filter-bar{display:grid;grid-template-columns:minmax(200px,1.4fr) repeat(5,minmax(120px,.9fr)) auto;gap:12px;align-items:end;padding:16px 16px 18px;border-bottom:1px solid var(--border)}.filter-field{display:flex;flex-direction:column;gap:6px;min-width:0}.filter-search{min-width:0}.filter-label{font-size:12px;line-height:1;color:var(--text-muted)}.filter-field .select,.filter-field .input{height:36px}.filter-clear{height:36px;white-space:nowrap}.badge-group{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--r-xs);background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-border);font-size:12px;white-space:nowrap}.chip-overdue{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--r-pill);font-size:12px;line-height:1;white-space:nowrap}.chip-overdue.tone-success{background:var(--success-soft);color:var(--success)}.chip-overdue.tone-warning{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning-border)}.chip-overdue.tone-danger{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger-border)}.chip-overdue.tone-muted{background:var(--surface-sunken);color:var(--text-muted);border:1px solid var(--border)}.chip-overdue.tone-done{background:var(--surface-hover);color:var(--text-secondary);border:1px solid var(--border-strong)}.confirm-tag{font-size:13px;white-space:nowrap}.confirm-tag.is-yes{color:var(--text-primary);font-weight:700}.confirm-tag.is-no{color:var(--text-muted);font-weight:400}.status-tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--text-muted);border:1px solid var(--border);font-size:12px;white-space:nowrap}.status-tag.is-done{background:var(--success-soft);color:var(--success);border-color:transparent}.tracking-panel{margin:4px 0 20px;padding:16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-sunken)}.tracking-panel-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.tracking-title{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.tracking-dirty{font-size:12px;color:var(--warning);background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:var(--r-pill);padding:2px 8px}.tracking-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px}.tracking-field{display:flex;flex-direction:column;gap:6px;min-width:0}.tracking-field-wide{grid-column:span 2}.tracking-label{font-size:12px;color:var(--text-muted)}.tracking-hint{font-size:11px;color:var(--text-muted)}.tracking-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.segmented{display:inline-flex;padding:2px;gap:2px;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);width:fit-content}.segment{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:6px 12px;border-radius:4px;font-size:13px;color:var(--text-muted);cursor:pointer;white-space:nowrap}.segment.is-active{background:var(--surface-sunken);color:var(--text-primary);font-weight:700;box-shadow:inset 0 0 0 1px var(--border-strong)}.orders-table{min-width:1180px}.orders-table .col-action{width:72px}.order-card-sub{display:flex;justify-content:space-between;gap:8px;margin-top:6px;font-size:12px;color:var(--text-muted)}@media (max-width: 1199px){.filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-search{grid-column:span 3}.filter-clear{justify-self:start}}@media (max-width: 767px){.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}.filter-search,.filter-clear{grid-column:span 2}.tracking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tracking-field-wide{grid-column:span 2}.tracking-actions{flex-wrap:wrap}}.sales-add{display:flex;align-items:center;gap:8px;margin-top:4px}.sales-add .input{max-width:320px}.sales-list{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.sales-item{display:flex;align-items:center;gap:8px}.sales-index{width:24px;text-align:right;font-size:12px;color:var(--text-muted);font-feature-settings:"tnum" 1,"lnum" 1}.sales-input{max-width:320px}.sales-item .icon-btn:disabled{opacity:.35;cursor:not-allowed}.file-btn{cursor:pointer}.overdue-note{margin:12px 0 16px}@media (max-width: 767px){.sales-add{flex-wrap:wrap}.sales-add .input{max-width:none;flex:1 1 160px}.sales-item{flex-wrap:wrap}.sales-input{max-width:none;flex:1 1 140px}}.auth-shell{min-height:100vh;display:flex;flex-direction:column}.auth-shell .auth-page{flex:1 1 auto;min-height:0}.auth-shell .app-footer{flex:0 0 auto}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--page)}.auth-card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-2);padding:28px}.auth-card-plain{display:flex;flex-direction:column;align-items:center;gap:12px}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.auth-brand-name{font-size:15px;font-weight:600}.auth-brand-sub{font-size:11px;color:var(--text-muted);letter-spacing:.04em;margin-top:2px}.auth-title{font-size:22px;margin:0 0 4px}.auth-sub{font-size:13px;color:var(--text-secondary);margin:0 0 16px;line-height:1.6}.auth-card form{display:flex;flex-direction:column;gap:14px}.auth-submit{width:100%;height:42px;margin-top:4px}.auth-alert{display:flex;gap:8px;align-items:flex-start;background:var(--warning-soft);border:1px solid var(--warning-border);color:var(--warning);border-radius:var(--r-sm);padding:10px 12px;font-size:12px;margin-bottom:14px}.auth-mode-toggle{width:100%;margin-top:10px;justify-content:center;color:var(--accent)}.auth-foot{display:flex;gap:6px;align-items:center;margin:18px 0 0;font-size:11px;color:var(--text-muted)}.auth-link{margin-top:14px;background:none;border:none;color:var(--accent);font-size:12px;cursor:pointer;text-decoration:underline}.user-chip{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25;padding-right:4px;white-space:nowrap;flex-shrink:0}.user-name{font-size:12px;font-weight:600;white-space:nowrap}.user-role{font-size:10px;color:var(--text-muted);white-space:nowrap}.accounts-table .cell-input{width:100%}.inline-row{display:flex;gap:8px;align-items:center}.inline-row .input{flex:1}.btn-xs{height:28px;padding:0 10px;font-size:12px}.row-actions{display:flex;gap:6px;justify-content:flex-end}.self-tag{margin-left:6px;font-size:10px;color:var(--accent);border:1px solid var(--accent-border);border-radius:var(--r-pill);padding:1px 6px}.matrix-table td.center,.matrix-table th.center{text-align:center}.reveal-card{border-color:var(--accent-border);background:var(--accent-soft)}.reveal-head{display:flex;gap:8px;align-items:center;font-size:13px}.reveal-tip{font-size:12px;color:var(--text-secondary);margin:8px 0}.reveal-code{display:inline-block;font-family:ui-monospace,Consolas,monospace;font-size:15px;letter-spacing:.04em;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:6px 10px;margin-bottom:10px}.readonly-note{margin:8px 0 0;font-size:12px;color:var(--warning)}.page-settings.is-readonly .setting-list,.page-settings.is-readonly .setting-table,.page-settings.is-readonly .sales-add,.page-settings.is-readonly .sales-list{opacity:.7;pointer-events:none}.page-settings.is-readonly .settings-actions .btn-primary,.page-settings.is-readonly .settings-actions .btn-danger{pointer-events:none;opacity:.5}.tracking-grid.is-readonly{opacity:.7;pointer-events:none}@media (max-width: 767px){.confirm-strip{align-items:stretch;flex-direction:column}.confirm-strip .row-actions{justify-content:flex-end}.auth-card{padding:20px}.accounts-table{min-width:720px}.user-name{max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:calc(20px + var(--safe-top)) calc(20px + var(--safe-right)) calc(20px + var(--safe-bottom)) calc(20px + var(--safe-left))}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay);border:none;cursor:default}.modal-card{position:relative;width:100%;max-width:420px;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-2);padding:22px}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-form{display:flex;flex-direction:column;gap:12px}.reveal-list{margin:0 0 12px;padding-left:18px;font-size:12px;color:var(--text-secondary);line-height:1.9}fieldset.tracking-grid{border:0;margin:0;padding:0;min-width:0}fieldset.tracking-grid[disabled] input,fieldset.tracking-grid[disabled] select{background:var(--surface-sunken);color:var(--text-muted)}.doc-audit{margin:12px 0 0;font-size:11px;color:var(--text-muted)}.app-header-inner{gap:16px}.nav{flex:1 1 auto;min-width:0;gap:0;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav-item{height:38px;padding:0 10px;border-radius:0;border:none;border-bottom:2px solid transparent;background:transparent;font-weight:500;white-space:nowrap}.nav-item:hover{background:transparent;color:var(--accent);border-bottom-color:var(--accent-border)}.nav-item.is-active{background:transparent;color:var(--accent);font-weight:700;border-bottom-color:var(--accent)}.msg-bell{position:relative}.msg-badge{position:absolute;top:1px;right:0;min-width:16px;height:16px;padding:0 4px;border-radius:var(--r-pill);background:var(--danger);color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center}.page-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.volume-calc-btn{flex-shrink:0}.message-panel{margin-bottom:16px}.message-center-title{display:flex;align-items:center;gap:8px;min-width:0}.message-panel-tools{display:flex;align-items:center;gap:8px}.msg-count{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:600}.msg-count.is-clear{background:var(--surface-sunken);color:var(--text-muted);font-weight:500}.message-panel-empty{margin:0;font-size:12px;color:var(--text-muted)}.msg-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.msg-item{border:1px solid var(--border);border-left:3px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface-sunken)}.msg-item.is-unread{background:var(--surface);border-color:var(--accent-border);border-left-color:var(--accent)}.msg-item.level-success{border-left-color:var(--success)}.msg-item.level-warning{border-left-color:var(--warning)}.msg-item.level-danger{border-left-color:var(--danger)}.msg-item-main{display:flex;flex-direction:column;gap:3px;width:100%;padding:9px 12px;border:none;background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}.msg-item-main:hover{background:var(--surface-hover)}.msg-item-main.is-static{cursor:default}.msg-item-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.msg-tag{padding:1px 6px;border-radius:var(--r-xs);background:var(--surface-hover);color:var(--text-secondary);font-size:11px;white-space:nowrap}.msg-tag.cat-order_new,.msg-tag.cat-custom{background:var(--accent-soft);color:var(--accent)}.msg-tag.cat-order_completed,.msg-tag.cat-inbound{background:var(--success-soft);color:var(--success)}.msg-tag.cat-order_recalled{background:var(--warning-soft);color:var(--warning)}.msg-tag.cat-order_voided{background:var(--danger-soft);color:var(--danger)}.msg-item-title{font-size:13px;font-weight:600;color:var(--text-primary)}.msg-item-body{font-size:12px;color:var(--text-secondary)}.msg-item-meta{font-size:11px;color:var(--text-muted)}.msg-unread-dot{width:6px;height:6px;border-radius:50%;background:var(--danger);flex-shrink:0}.modal-wide{max-width:760px}.message-center{max-height:86vh;display:flex;flex-direction:column}.message-center .msg-list{margin-top:12px;overflow-y:auto;padding-right:2px}.message-center-tools{display:flex;align-items:center;gap:8px}.msg-compose{margin-top:4px;padding:12px;border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--surface-sunken);display:flex;flex-direction:column;gap:10px}.msg-compose-row{display:flex;gap:10px}.msg-compose-row .field:first-child{flex:1 1 auto}.msg-level-field{width:120px;flex-shrink:0}.msg-done{margin:8px 0 0;font-size:12px;color:var(--success)}.message-empty{padding:24px 0}.msg-popup{max-width:560px}.msg-popup-list{margin:4px 0 12px;max-height:46vh;overflow-y:auto}.msg-list-compact .msg-item-main{padding:8px 10px}.void-dialog{max-width:540px}.void-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0 0 14px;padding:10px 12px;border-radius:var(--r-sm);background:var(--surface-sunken);font-size:12px}.void-summary dt{color:var(--text-muted)}.void-summary dd{margin:0;font-weight:600;color:var(--text-primary)}.field-required{color:var(--danger);font-weight:600}.reason-presets{display:flex;flex-wrap:wrap;gap:6px}.reason-chip{padding:3px 10px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--text-secondary);font-size:12px;cursor:pointer}.reason-chip:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}.void-warning{margin:0;font-size:12px;color:var(--text-muted);line-height:1.7}.btn-void{color:var(--danger)}.btn-void:hover{background:var(--danger-soft)}.cell-void-reason{max-width:240px;font-size:12px;color:var(--text-secondary)}.chip-overdue.tone-void{background:#f6f1f1;color:var(--danger);border:1px dashed var(--danger-border)}.void-banner{margin:12px 0;padding:10px 12px;border:1px solid var(--danger-border);border-left:3px solid var(--danger);border-radius:var(--r-sm);background:var(--danger-soft)}.void-banner-title{font-size:13px;font-weight:700;color:var(--danger)}.void-banner-reason{margin:4px 0 0;font-size:12px;color:var(--text-primary)}.void-banner-meta{margin:2px 0 0;font-size:11px;color:var(--text-muted)}.volume-dialog{max-width:880px;max-height:88vh;overflow-y:auto}.volume-dialog .metrics-card{padding:0;border:none;box-shadow:none;background:transparent}.app-footer{border-top:1px solid var(--border);background:var(--surface)}.app-footer-inner{max-width:var(--container);margin:0 auto;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--text-muted)}.footer-version{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.footer-version-badge{color:var(--accent);font-weight:600}.footer-version-build{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-disabled)}.app-shell:has(.page-order) .app-footer-inner{padding-bottom:84px}@media (max-width: 767px){.app-header-inner{gap:8px}.nav{overflow-x:auto}.nav-item{padding:0 8px}.page-head-row{flex-direction:column;align-items:stretch}.volume-calc-btn{width:100%;justify-content:center}.modal-card{padding:16px}.msg-compose-row{flex-direction:column}.msg-level-field{width:100%}.void-summary{grid-template-columns:minmax(0,1fr)}.app-footer-inner{padding:10px 16px;flex-direction:column;align-items:flex-start;gap:4px}.app-shell:has(.page-order) .app-footer-inner{padding-bottom:256px}}.inventory-action-bar{position:sticky;top:calc(var(--header-h) + 6px);z-index:20;display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s4);padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-1)}.inventory-action-bar .btn{flex:0 0 auto}.inventory-action-note{font-size:12px;color:var(--text-muted);margin-left:auto}.inventory-stock-table th.num,.inventory-stock-table td.num{white-space:nowrap}.stock-available{min-width:56px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;padding:2px 6px;font:inherit;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary);cursor:pointer}.stock-available:hover{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.stock-available.is-negative{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.stock-available.is-negative:hover{background:var(--danger-soft)}.is-negative{color:var(--danger)}.tone-warning-text{color:var(--warning);font-weight:600}.stock-alert{display:flex;align-items:flex-start;gap:8px;margin-bottom:var(--s4);padding:10px 12px;border:1px solid var(--warning-border);border-left:3px solid var(--warning);border-radius:var(--r-sm);background:var(--warning-soft);color:var(--text-primary);font-size:12px;line-height:1.7}.stock-alert svg{margin-top:2px;color:var(--warning);flex:0 0 auto}.doc-reject-note{margin:4px 0 0;font-size:11px;color:var(--danger);max-width:220px;line-height:1.5}.stock-dialog{max-width:780px;max-height:88vh;display:flex;flex-direction:column;gap:var(--s3)}.stock-dialog-product{display:flex;align-items:baseline;gap:8px;font-size:14px}.stock-dialog-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2);margin:0}.stock-dialog-metrics>div{padding:8px 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-sunken)}.stock-dialog-metrics dt{font-size:11px;color:var(--text-muted)}.stock-dialog-metrics dd{margin:2px 0 0;font-size:17px;font-weight:700;font-variant-numeric:tabular-nums}.stock-dialog-warning{display:flex;gap:6px;margin:0;padding:8px 10px;border:1px solid var(--warning-border);border-radius:var(--r-sm);background:var(--warning-soft);font-size:12px;line-height:1.7}.stock-dialog-warning svg{flex:0 0 auto;margin-top:3px;color:var(--warning)}.stock-dialog-table{max-height:46vh;overflow:auto}.stock-dialog-table tfoot td{font-weight:700;background:var(--surface-sunken)}.stock-dialog-loading{display:flex;align-items:center;gap:6px}.spin{animation:ak-spin .9s linear infinite}@keyframes ak-spin{to{transform:rotate(360deg)}}.col-stock{min-width:128px;white-space:nowrap}.stock-chip{display:inline-block;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--text-secondary);padding:2px 8px;font-size:12px;font-variant-numeric:tabular-nums;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis}.stock-chip:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}.stock-chip.is-negative{border-color:var(--danger-border);background:var(--danger-soft);color:var(--danger);font-weight:700}.stock-chip.is-unmatched{border-style:dashed;border-color:var(--warning-border);background:var(--warning-soft);color:var(--warning);cursor:default}.stock-inline-hint{margin:0;font-size:12px;color:var(--text-muted);line-height:1.7}.import-dialog{max-height:90vh;overflow-y:auto}.import-steps{margin:0 0 var(--s3);padding-left:18px;font-size:12px;color:var(--text-muted);line-height:1.9}.import-toolbar{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s3)}.import-header-hint{margin:0 0 var(--s3);font-size:12px;color:var(--text-muted);line-height:1.7;word-break:break-all}.import-header-hint code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface-sunken);padding:2px 4px;border-radius:var(--r-xs)}.import-errors{margin-bottom:var(--s3);padding:10px 12px;border:1px solid var(--danger-border);border-left:3px solid var(--danger);border-radius:var(--r-sm);background:var(--danger-soft)}.import-errors-title{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:13px;font-weight:700;color:var(--danger)}.import-errors ul{margin:0;padding-left:18px;font-size:12px;line-height:1.8}.import-errors-tip{margin:8px 0 0;font-size:11px;color:var(--text-secondary);line-height:1.7}.import-preview{max-height:42vh;overflow:auto;margin-bottom:var(--s3)}.import-preview tfoot td{font-weight:700;background:var(--surface-sunken)}.import-meta{margin-bottom:var(--s3)}.import-result{margin-top:var(--s3);padding:10px 12px;border:1px solid var(--success-soft);border-left:3px solid var(--success);border-radius:var(--r-sm);background:var(--success-soft)}.import-result-title{display:flex;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:700;color:var(--success)}.import-result-note{margin:6px 0 0;font-size:12px;color:var(--text-secondary);line-height:1.7}.product-dialog{max-height:90vh;overflow-y:auto}.product-dialog-table{max-height:40vh;overflow:auto;margin-top:var(--s3)}.role-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-sunken);font-size:12px;color:var(--text-secondary)}.role-chip.is-super{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);font-weight:600}.is-locked-row{background:var(--surface-sunken)}.row-lock-note{max-width:160px;line-height:1.5}@media (max-width: 767px){.inventory-action-bar{position:static}.inventory-action-bar .btn{flex:1 1 100%;justify-content:center}.inventory-action-note{margin-left:0}.stock-dialog-metrics{grid-template-columns:minmax(0,1fr)}.stock-dialog{max-height:92vh;padding:14px}.import-toolbar .btn{flex:1 1 100%;justify-content:center}.import-dialog,.product-dialog{padding:14px}.inventory-doc-table,.inventory-stock-table{min-width:720px}}@media (max-width: 420px){.page{padding:16px 12px 24px}.modal-layer{padding:calc(10px + var(--safe-top)) calc(10px + var(--safe-right)) calc(10px + var(--safe-bottom)) calc(10px + var(--safe-left))}.modal-card{padding:14px}.inventory-doc-table,.inventory-stock-table{min-width:660px}}.inventory-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.inventory-search{flex:1 1 520px;max-width:680px}.table-pager{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding:12px;border-top:1px solid var(--border);background:var(--surface-sunken)}.table-pager-summary{margin-right:auto;color:var(--text-muted);font-size:12px}.table-pager-size,.table-pager-pages{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:12px}.select-compact{min-height:30px;padding:4px 28px 4px 8px}.pager-number{min-width:30px;height:30px;padding:0 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer}.pager-number.is-active{border-color:var(--accent);background:var(--accent);color:#fff}.order-type-chip{display:inline-flex;align-items:center;height:22px;padding:0 8px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--text-secondary);font-size:11px;white-space:nowrap}.order-type-chip.is-formal{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.order-type-chip.is-sample{border-color:var(--warning-border);background:var(--warning-soft);color:var(--warning)}.is-hidden-price{color:var(--text-muted);font-size:11px;font-weight:500}.message-hide-read{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:12px;white-space:nowrap;cursor:pointer}.message-hide-read input{accent-color:var(--accent)}.message-fixed-list{min-height:180px;max-height:52vh;overflow-y:auto;overscroll-behavior:contain}.message-panel .msg-list{max-height:252px;overflow-y:auto;overscroll-behavior:contain}@media (max-width: 767px){.inventory-list-toolbar{align-items:stretch;flex-direction:column}.inventory-search{flex-basis:auto;max-width:none}.table-pager{justify-content:center}.table-pager-summary{width:100%;margin:0;text-align:center}.message-center-tools,.message-panel-tools{flex-wrap:wrap;justify-content:flex-end}}
