:root{color-scheme:light;--sage: #87986a;--leaf: #4f6f52;--moss: #2f4b3a;--paper: #f7f4e9;--cream: #fffdf5;--wood: #b9895b;--ink: #22302a;--muted: #738071;--line: rgba(49, 70, 53, .14);--coral: #c96f54;--danger: #d63b2e;--danger-dark: #b92c22;--control-font-size: 13px;--compact-control-font-size: 12px}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;min-width:1180px;min-height:100vh;color:var(--ink);font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;background:linear-gradient(90deg,#f7f4e9eb,#f7f4e9d6),url(/assets/background.png) center / cover fixed}button,input,select{font:inherit}select,option,input::placeholder{font-size:var(--control-font-size)}datalist,datalist option{font-size:var(--compact-control-font-size)}button{transition:transform .15s ease,border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease,opacity .15s ease}button:not(:disabled):hover{transform:translateY(-1px)}button:not(:disabled):active{transform:translateY(0) scale(.98)}button:focus-visible{outline:3px solid rgba(135,152,106,.34);outline-offset:2px}button:disabled{transform:none;box-shadow:none}.login-shell{display:grid;grid-template-columns:minmax(0,500px) 380px;align-items:center;justify-content:center;gap:56px;min-height:100vh;max-width:1060px;margin:0 auto;padding:56px}.login-visual{display:grid;align-content:center;justify-items:start;width:100%;color:var(--moss)}.login-visual-frame{position:relative;width:100%;max-width:500px;height:304px;overflow:hidden;border:1px solid rgba(255,253,245,.58);border-radius:8px;background:#22302a;box-shadow:0 24px 70px #2f4b3a33}.login-visual-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#22302a47,#22302a05 28%,#22302a05 72%,#22302a47),linear-gradient(180deg,#fffdf500,#fffdf50d);pointer-events:none}.login-visual-blur,.login-visual-main{position:absolute;display:block}.login-visual-blur{top:-24px;right:-24px;bottom:-24px;left:-24px;width:calc(100% + 48px);height:calc(100% + 48px);object-fit:cover;object-position:center 24%;filter:blur(18px) saturate(.95);opacity:.72;transform:scale(1.04)}.login-visual-main{top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 24%}.login-visual h1{width:100%;max-width:500px;margin:22px 0 10px;font-size:42px;letter-spacing:0;line-height:1.1}.login-visual p{width:100%;max-width:500px;margin:0;color:var(--muted);font-size:18px}.login-form{display:grid;gap:18px;align-self:center;width:100%;min-height:304px;margin-top:0;padding:28px;transform:translateY(-8px)}.login-form h2{margin:0 0 6px;font-size:22px}.login-form label,.modal label{display:grid;gap:8px;color:var(--muted);font-size:13px}.login-form input,.modal input,.modal select{width:100%;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);outline:0;background:#fffdf5e6;font-size:var(--control-font-size)}.login-form .primary,.modal-actions .primary{height:42px;border:0;border-radius:8px;color:var(--cream);background:var(--moss);cursor:pointer}.hint{margin:0;color:var(--muted);font-size:13px}.form-error{margin:0;padding:10px 12px;border-radius:8px;color:var(--coral);background:#c96f541f;font-size:13px}.form-success{margin:0;padding:10px 12px;border-radius:8px;color:var(--leaf);background:#87986a24;font-size:13px}.shell{display:grid;grid-template-columns:248px 1fr;width:max-content;min-width:max(100%,1180px);min-height:100vh;background:linear-gradient(90deg,#f7f4e9eb,#f7f4e9d6),url(/assets/background.png) center / cover fixed;transition:grid-template-columns .18s ease}.shell.sidebar-collapsed{grid-template-columns:76px 1fr}.sidebar{position:relative;z-index:20;padding:24px 18px;border-right:1px solid var(--line);background:#fffdf5db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overflow:visible;transition:padding .18s ease}.sidebar-collapsed .sidebar{padding:20px 12px}.brand-lockup{position:relative;display:flex;align-items:center;gap:12px;margin-bottom:28px;min-height:52px}.brand-logo-mark{position:relative;display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border-radius:8px;overflow:hidden;color:var(--cream);background:var(--moss);box-shadow:0 12px 26px #2f4b3a2e}.brand-logo-mark img,.brand-logo-fallback{grid-area:1 / 1}.brand-logo-mark img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover}.brand-logo-fallback{display:grid;place-items:center;width:100%;height:100%}.brand-logo-fallback svg{width:28px;height:28px;stroke-width:2}.brand-lockup>div strong,.brand-lockup>div span{display:block}.brand-lockup>div strong{font-size:17px}.brand-lockup>div span{margin-top:4px;color:var(--muted);font-size:12px}.sidebar-toggle{position:absolute;right:-6px;top:50%;display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid rgba(47,75,58,.16);border-radius:8px;color:var(--moss);background:#fffdf5eb;box-shadow:0 10px 22px #2f4b3a1f;cursor:pointer;transform:translateY(-50%);z-index:2}.sidebar-toggle svg{width:16px;height:16px}.sidebar-toggle:hover{color:var(--cream);border-color:var(--moss);background:var(--moss);transform:translateY(-50%)}.sidebar-toggle:active{transform:translateY(-50%) scale(.98)}.sidebar-collapsed .brand-lockup{justify-content:center;margin-bottom:20px}.sidebar-collapsed .brand-logo-mark{width:42px;height:42px;flex-basis:42px}.sidebar-collapsed .brand-lockup div{display:none}.sidebar-collapsed .sidebar-toggle{right:0;top:58px;transform:none}.sidebar-collapsed .sidebar-toggle:hover{transform:none}.sidebar-collapsed .sidebar-toggle:active{transform:scale(.98)}.nav{display:grid;gap:14px}.nav-group{display:grid;gap:7px;padding:0 0 13px;border-bottom:1px solid rgba(130,139,116,.22)}.nav-group:last-child{border-bottom-color:#828b742e}.nav-group-title{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 26px;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 5px 0 13px;border:1px solid rgba(130,139,116,.16);border-radius:8px;color:var(--moss);background:#f7f4e9ad;cursor:pointer;font-size:13px;font-weight:950;letter-spacing:0;line-height:22px;text-align:left;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.nav-group-title:before{position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:0 999px 999px 0;background:var(--moss);content:""}.nav-group-title:hover{border-color:#4f6f5247;background:#e8efdfb8;box-shadow:0 6px 14px #2f4b3a0f}.nav-group-name{min-width:0;overflow:hidden;color:var(--moss);text-overflow:ellipsis;white-space:nowrap}.nav-group-line{display:none}.nav-group-toggle{display:grid;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:8px;color:var(--moss);background:#fffdf59e}.nav-group-toggle:hover{color:var(--moss);background:#fffdf59e}.nav-group-toggle svg{display:inline-flex;align-items:center;justify-content:center;color:currentColor;width:14px;height:14px}.nav-group-items{display:grid;gap:4px}.nav-group.collapsed{padding-bottom:8px}.nav-group.collapsed .nav-group-name{color:#2f4b3ab8}.nav-group.collapsed .nav-group-title:before{background:#828b74b3}.nav-group.collapsed .nav-group-title{background:#fffdf585}.nav-group-items[hidden]{display:none}.nav-group-items button{position:relative;display:flex;align-items:center;gap:10px;width:100%;height:42px;padding:0 12px;border:0;border-radius:8px;color:var(--muted);background:transparent;cursor:pointer;text-align:left}.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-group-items button.active{color:var(--cream);background:var(--moss)}.nav-group-items button:hover:not(.active){color:var(--moss);background:#87986a24}.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px}.nav-icon svg{width:18px;height:18px}.sidebar-collapsed .nav{gap:10px;padding-top:26px}.sidebar-collapsed .nav-group{justify-items:center;gap:6px;width:100%;padding-bottom:10px}.sidebar-collapsed .nav-group-title{display:none}.sidebar-collapsed .nav-group-items{display:grid;gap:8px}.sidebar-collapsed .nav-group-items button{justify-content:center;width:52px;height:42px;padding:0;margin:0 auto}.sidebar-collapsed .nav-group-items button:before,.sidebar-collapsed .nav-group-items button:after{position:absolute;top:50%;left:calc(100% + 10px);pointer-events:none;opacity:0;transform:translate(4px,-50%);transition:opacity 80ms ease,transform 80ms ease;z-index:50}.sidebar-collapsed .nav-group-items button:before{content:"";left:calc(100% + 4px);width:8px;height:8px;border-radius:2px;background:#2f4b3af5;transform:translate(4px,-50%) rotate(45deg)}.sidebar-collapsed .nav-group-items button:after{content:attr(data-nav-label);min-width:max-content;max-width:220px;padding:8px 12px;border:1px solid rgba(255,253,245,.32);border-radius:8px;color:var(--cream);background:#2f4b3af5;box-shadow:0 14px 34px #22302a2e;font-size:14px;font-weight:700;line-height:1;white-space:nowrap}.sidebar-collapsed .nav-group-items button:hover:before,.sidebar-collapsed .nav-group-items button:hover:after,.sidebar-collapsed .nav-group-items button:focus-visible:before,.sidebar-collapsed .nav-group-items button:focus-visible:after{opacity:1;transform:translateY(-50%)}.sidebar-collapsed .nav-group-items button:hover:before,.sidebar-collapsed .nav-group-items button:focus-visible:before{transform:translateY(-50%) rotate(45deg)}.sidebar-collapsed .nav-label{display:none}.sidebar-collapsed .nav-icon{width:22px;height:22px;flex-basis:22px}.sidebar-collapsed .nav-icon svg{width:20px;height:20px}.workspace{--workspace-content-width: 0px;--workspace-min-width: calc(var(--workspace-content-width) + 56px);min-width:max(0px,var(--workspace-min-width));padding:26px 28px 36px}.workspace.module-products{--workspace-content-width: 1436px}.workspace.module-orders{--workspace-content-width: 1560px}.workspace.module-carts{--workspace-content-width: 1820px}.workspace.module-purchaseOrders{--workspace-content-width: 1580px}.workspace.module-adminUsers{--workspace-content-width: 1220px}.topbar{display:grid;gap:14px;margin-bottom:22px;min-width:max(0px,var(--workspace-content-width));padding:12px;border:1px solid rgba(130,139,116,.14);border-radius:8px;background:#fffdf5a3;box-shadow:0 12px 28px #2f4b3a0f}.topbar.compact{margin-bottom:10px}.topbar p,.topbar h1{margin:0}.topbar p{color:var(--leaf);font-size:13px}.topbar h1{margin-top:5px;font-size:28px;letter-spacing:0}.topbar-main{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0}.topbar-title{min-width:0}.topbar-search-row{display:flex;align-items:center;min-width:0}.top-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.account-menu{position:relative}.top-actions .account-avatar-button{width:46px;height:46px;padding:0;border-color:#2f4b3a33;border-radius:50%;color:var(--cream);background:var(--moss);box-shadow:0 10px 24px #2f4b3a2e}.account-avatar-button svg{width:25px;height:25px;stroke-width:2.4}.account-popover{position:absolute;top:calc(100% + 12px);right:0;z-index:40;width:286px;padding:14px;border:1px solid rgba(135,152,106,.26);border-radius:8px;background:#fffdf5fa;box-shadow:0 22px 46px #2f4b3a33}.account-popover-head{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(135,152,106,.18)}.account-popover-head>span{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;color:var(--cream);background:var(--moss);font-size:19px;font-weight:900}.account-popover-head>span svg{width:34px;height:34px}.account-popover-head strong,.account-popover-head small{display:block}.account-popover-head strong{color:var(--ink);font-size:16px}.account-popover-head small{margin-top:2px;color:var(--muted)}.account-info-list{display:grid;gap:8px;margin:12px 0}.account-info-list div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px}.account-info-list dt,.account-info-list dd{margin:0}.account-info-list dt{color:var(--muted);font-size:12px;font-weight:700}.account-info-list dd{min-width:0;color:var(--ink);font-weight:800;overflow-wrap:anywhere}.top-actions .account-password-button{width:100%;color:var(--cream);border-color:var(--moss);background:var(--moss)}.account-popover-actions{display:grid;gap:8px;padding-top:12px;border-top:1px solid rgba(135,152,106,.18)}.top-actions .account-logout-button{width:100%;color:#8b3f2f;border-color:#8b3f2f3d;background:#b7642f14}.top-actions .account-logout-button:hover{color:#fffdf5;border-color:#8b3f2f;background:#8b3f2f}.search{display:flex;align-items:center;gap:8px;width:min(560px,100%);height:42px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:#fffdf5e6}.search svg{width:16px;height:16px;flex:0 0 16px;color:var(--leaf)}.search input{width:100%;border:0;outline:0;background:transparent}.search-clear{height:26px;padding:0 2px;border:0;color:var(--muted);background:transparent;cursor:pointer;font-size:12px;white-space:nowrap}.search-clear:hover{color:var(--moss)}button svg,.image-upload-actions label svg{width:15px;height:15px;flex:0 0 15px}button span{min-width:0}:is(.login-form .primary,.top-actions .primary,.panel-title .primary,.panel-tools button.primary,.panel-tools .filter-chip-group button.primary,.panel-tools button.danger-solid,.toolbar-more[open] summary,.toolbar-more-menu button.danger-solid,.image-upload-actions .primary,.image-library-actions .primary,.modal-actions .primary,.modal-actions .danger-solid,.form-actions .primary,.settings-upload-button,.inventory-search .primary,.inventory-bulk-fill .primary,.inventory-form .primary,.inventory-save-row .primary,.table-action.primary-action,.table-action.danger:hover,.cart-editor-actions .primary,.backup-create-button,.backup-record-actions .danger-solid,.print-preview-toolbar button.primary,.searchable-filter-clear:hover,.link-mini-button:hover) span,:is(.login-form .primary,.top-actions .primary,.panel-title .primary,.panel-tools button.primary,.panel-tools .filter-chip-group button.primary,.panel-tools button.danger-solid,.toolbar-more[open] summary,.toolbar-more-menu button.danger-solid,.image-upload-actions .primary,.image-library-actions .primary,.modal-actions .primary,.modal-actions .danger-solid,.form-actions .primary,.settings-upload-button,.inventory-search .primary,.inventory-bulk-fill .primary,.inventory-form .primary,.inventory-save-row .primary,.table-action.primary-action,.table-action.danger:hover,.cart-editor-actions .primary,.backup-create-button,.backup-record-actions .danger-solid,.print-preview-toolbar button.primary,.searchable-filter-clear:hover,.link-mini-button:hover) svg{color:var(--cream)}.login-form button,.top-actions button,.panel-title button,.panel-tools button,.image-upload-actions button,.image-library-tabs button,.image-library-actions button,.image-library-pager button,.table-action,.modal-actions button,.image-clear-button{display:inline-flex;align-items:center;justify-content:center;gap:5px}.product-upload-slot strong svg{width:22px;height:22px}.top-actions button,.panel-title button{height:40px;padding:0 15px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer}.table-action{height:30px;min-width:78px;padding:0 9px;border:1px solid rgba(79,111,82,.18);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer;font-size:12px;font-weight:850;line-height:1;text-align:center;white-space:nowrap;box-shadow:0 4px 10px #2f4b3a0d}.table-action.danger{color:var(--danger);border-color:#d63b2e4d;background:#fff6f2e6}.table-action.primary-action,.top-actions .primary,.panel-title .primary{color:var(--cream);border-color:var(--moss);background:var(--moss)}.top-actions button:hover:not(:disabled),.panel-title button:hover:not(:disabled),.panel-tools button:hover:not(:disabled),.image-upload-actions button:hover:not(:disabled),.image-library-actions button:hover:not(:disabled),.image-library-pager button:hover:not(:disabled),.modal-actions button:hover:not(:disabled),.form-actions .primary:hover:not(:disabled),.table-action:hover:not(:disabled){border-color:#2f4b3a6b;color:var(--moss);background:#87986a29;box-shadow:0 10px 22px #2f4b3a1f}.table-action.primary-action:hover:not(:disabled){color:var(--cream);border-color:#243c2f;background:#243c2f;box-shadow:0 10px 22px #2f4b3a33}.table-action.danger:hover:not(:disabled){color:var(--cream);border-color:var(--danger);background:var(--danger);box-shadow:0 10px 22px #d63b2e33}.top-actions .primary:hover:not(:disabled),.panel-title .primary:hover:not(:disabled),.image-upload-actions .primary:hover:not(:disabled),.image-library-actions .primary:hover:not(:disabled),.login-form .primary:hover:not(:disabled),.modal-actions .primary:hover:not(:disabled),.form-actions .primary:hover:not(:disabled){color:var(--cream);border-color:#243c2f;background:#243c2f;box-shadow:0 12px 26px #2f4b3a33}.top-actions button:disabled,.panel-title button:disabled,.image-upload-actions button:disabled,.image-library-actions button:disabled{cursor:not-allowed;opacity:.5}.image-upload-actions button.is-busy:disabled,.modal-actions button.is-busy:disabled{cursor:progress;opacity:1}.dashboard-note{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;border:1px solid rgba(135,152,106,.24);border-radius:999px;color:var(--moss);background:#fffdf5c7;font-size:13px;font-weight:700}.dashboard-note svg{width:16px;height:16px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.metric,.panel{border:1px solid var(--line);border-radius:8px;background:#fffdf5e6;box-shadow:0 20px 50px #2f4b3a14}.metric{padding:18px}.metric>span,.metric small{display:block;color:var(--muted)}.metric strong{display:block;margin:8px 0 4px;font-family:Impact,Anton,Arial Black,Oswald,DIN Condensed,Bebas Neue,MiSans,HarmonyOS Sans SC,system-ui,sans-serif;font-size:33px;font-weight:900;font-variant-numeric:lining-nums;letter-spacing:0;color:#b7642f;text-shadow:0 8px 18px rgba(183,100,47,.12)}.metric-value-row{display:flex;align-items:flex-start;gap:2px;margin:8px 0 4px;color:#b7642f;text-shadow:0 8px 18px rgba(183,100,47,.12);white-space:nowrap}.metric-currency{display:inline-block;flex:0 0 auto;font-family:MiSans,HarmonyOS Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:15px;font-weight:800;line-height:1;opacity:.68;transform:translateY(.1em)}.metric-rolling-number{display:flex;flex-direction:row;align-items:baseline;flex-wrap:nowrap;width:max-content;max-width:100%;min-height:1.08em;margin:0;line-height:1;white-space:nowrap}.rolling-digit{display:inline-block;flex:0 0 .48em;width:.48em;height:1em;overflow:hidden;line-height:1;vertical-align:-.06em;color:inherit}.rolling-digit-track{display:flex;flex-direction:column;width:100%;transform:translateY(calc(var(--digit-step) * -1em));animation:metric-digit-roll .76s cubic-bezier(.22,.95,.3,1) both;animation-delay:calc(var(--roll-index) * 32ms);color:inherit}.rolling-digit-track span{display:block;height:1em;line-height:1;text-align:center}.rolling-symbol{display:inline-block;flex:0 0 auto;margin:0 -.01em;line-height:1;transform:translateY(-.01em);color:inherit}@keyframes metric-digit-roll{0%{transform:translateY(0);filter:blur(1.4px)}72%{filter:blur(0)}to{transform:translateY(calc(var(--digit-step) * -1em));filter:blur(0)}}@media (prefers-reduced-motion: reduce){.rolling-digit-track{animation:none}}.content-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:16px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px}.dashboard-card{display:grid;align-content:start;min-height:280px}.dashboard-report-panel{display:grid;gap:14px}.dashboard-report-tabs{display:flex;flex-wrap:wrap;gap:8px}.dashboard-report-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 14px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fffdf5c2;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.dashboard-report-tabs button svg{width:15px;height:15px;flex:0 0 auto}.dashboard-report-tabs button:hover:not(.active){transform:translateY(-1px);color:var(--moss);border-color:#2f4b3a47;background:#87986a1f}.dashboard-report-tabs button.active{color:var(--cream);border-color:var(--moss);background:var(--moss)}.dashboard-report-table-wrap{overflow:auto}.dashboard-report-table{min-width:760px}.gross-profit-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.gross-profit-summary div{display:grid;gap:5px;padding:12px 14px;border:1px solid rgba(135,152,106,.22);border-radius:8px;background:#fffdf5d1}.gross-profit-summary span{color:var(--muted);font-size:12px;font-weight:700}.gross-profit-summary strong{color:var(--ink);font-size:20px;line-height:1.2}.gross-profit-summary .warn{border-color:#aa5c2f57;background:#fff4e2db}.gross-profit-summary .warn strong{color:#9a4f25}.gross-profit-note{margin:-2px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.dashboard-section-loading{min-height:260px;border:1px dashed rgba(135,152,106,.28);border-radius:8px;background:#fffdf59e}.dashboard-report-table th:first-child,.dashboard-report-table td:first-child{width:72px;text-align:center;color:var(--moss);font-weight:800}.dashboard-report-table td.col-suggestionText{min-width:220px;max-width:360px;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word;line-height:1.55;text-align:left}.dashboard-chart-card{display:grid;gap:10px;padding:14px;border:1px solid rgba(135,152,106,.24);border-radius:8px;background:linear-gradient(180deg,#fffdf5eb,#f4f7ebc2)}.dashboard-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dashboard-chart-head h3{margin:0;color:var(--moss);font-size:18px;letter-spacing:0}.dashboard-chart-head span,.dashboard-chart-head em{color:var(--muted);font-size:13px;font-style:normal}.dashboard-column-chart{width:100%;height:auto;min-height:300px;overflow:visible}.dashboard-chart-axis{stroke:#2f4b3a57;stroke-width:2}.dashboard-chart-gridline{stroke:#87986a33;stroke-width:1;stroke-dasharray:5 7}.dashboard-chart-column{fill:var(--moss);filter:drop-shadow(0 6px 10px rgba(47,75,58,.12))}.dashboard-chart-column.negative{fill:#e03131}.dashboard-chart-target-column{fill:#87986a33;stroke:#87986a9e;stroke-width:2}.dashboard-chart-number,.dashboard-chart-label,.dashboard-chart-sublabel,.dashboard-chart-legend{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;letter-spacing:0;text-anchor:middle}.dashboard-chart-number{fill:var(--moss);font-size:13px;font-weight:800}.dashboard-chart-number.negative{fill:#e03131}.dashboard-chart-label{fill:var(--ink);font-size:13px;font-weight:800}.dashboard-chart-label.tilted,.dashboard-chart-sublabel.tilted{text-anchor:start}.dashboard-chart-sublabel{fill:var(--muted);font-size:11px}.dashboard-chart-legend{text-anchor:start;fill:var(--muted);font-size:13px;font-weight:800}.dashboard-chart-legend.target{fill:#87986a}.dashboard-chart-legend.actual{fill:var(--moss)}.dashboard-chart-summary{display:flex;flex-wrap:wrap;gap:8px}.dashboard-chart-summary span{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid rgba(135,152,106,.2);border-radius:8px;color:var(--muted);background:#fffdf5b8;font-size:12px}.dashboard-chart-summary strong{color:var(--moss)}.comparison-panel,.comparison-report{display:grid;gap:16px}.comparison-controls{display:grid;grid-template-columns:minmax(240px,1fr) minmax(240px,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fffdf5b8}.comparison-controls label{display:grid;gap:7px;color:var(--muted);font-size:13px}.comparison-controls select{width:100%;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);outline:0;background:#fffdf5f5;font-size:var(--control-font-size)}.comparison-controls select option{font-size:var(--control-font-size)}.comparison-headline{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(47,75,58,.18);border-radius:8px;background:#eef3e4b8;color:var(--muted)}.comparison-headline strong{color:var(--moss);font-size:18px}.comparison-chart,.comparison-table-section{display:grid;gap:10px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fffdf5d1}.comparison-chart h3,.comparison-table-section h3{margin:0;color:var(--moss);font-size:18px;letter-spacing:0}.comparison-chart svg{width:100%;height:auto;min-height:92px;overflow:visible}.comparison-chart.large svg{min-height:110px}.chart-legend,.chart-label,.chart-value,.chart-rate{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;letter-spacing:0}.chart-legend{fill:var(--muted);font-size:13px;font-weight:700}.chart-legend.base{fill:#87986a}.chart-legend.compare{fill:var(--moss)}.chart-label{fill:var(--ink);font-size:13px;font-weight:700}.chart-bar-base{fill:#a8b58a}.chart-bar-compare{fill:var(--moss)}.chart-value{fill:var(--muted);font-size:12px}.chart-rate{fill:var(--muted);font-size:13px;font-weight:800}.chart-rate.up,.trend-up{color:var(--danger);fill:var(--danger)}.chart-rate.down,.trend-down{color:#27824f;fill:#27824f}.comparison-table th,.comparison-table td{text-align:center}.brand-product-rankings{display:grid;gap:14px;margin-top:2px}.brand-product-title,.brand-product-group-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand-product-title strong,.brand-product-group-title strong{color:var(--ink);font-size:16px}.brand-product-title span,.brand-product-group-title span{color:var(--muted);font-size:13px}.brand-product-group{display:grid;gap:10px;padding:14px;border:1px solid rgba(135,152,106,.22);border-radius:8px;background:#f7f4e980}.brand-product-table-wrap{overflow:auto}.brand-product-table{min-width:860px}.brand-product-table th:nth-child(2),.brand-product-table td:nth-child(2){width:74px;text-align:center}.dashboard-product-thumb{position:relative;display:inline-grid;place-items:center;width:46px;height:58px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5db;overflow:hidden;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.dashboard-product-thumb:hover:not(.empty){transform:translateY(-1px) scale(1.04);border-color:#2f4b3a5c;box-shadow:0 10px 22px #2f4b3a29}.dashboard-product-thumb.empty{cursor:default;font-size:22px;font-weight:800}.dashboard-product-thumb img{width:100%;height:100%;object-fit:cover}.dashboard-product-thumb em{position:absolute;right:2px;bottom:2px;min-width:18px;height:18px;border-radius:999px;color:var(--cream);background:#2f4b3abd;font-size:11px;font-style:normal;line-height:18px}.dashboard-product-thumb:not(.is-loading) .image-loading-mark{display:none}.rank-chart{display:grid;gap:13px}.rank-row{display:grid;grid-template-columns:28px minmax(120px,1fr) minmax(120px,1.2fr) 92px 70px;gap:10px;align-items:center}.rank-row>span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:8px;color:var(--cream);background:var(--moss);font-size:12px;font-weight:800}.rank-row strong{display:grid;gap:2px;min-width:0;color:var(--ink);font-size:13px}.rank-row strong small,.rank-row>small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.rank-row div{height:12px;overflow:hidden;border-radius:999px;background:#87986a29}.rank-row i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--leaf),var(--wood))}.rank-row em{color:var(--moss);font-size:13px;font-style:normal;font-weight:800;text-align:right}.data-panel{overflow:visible}.data-panel.module-products{--data-table-min-width: 1400px;min-width:calc(var(--data-table-min-width) + 36px)}.data-panel.module-orders{min-width:1560px}.data-panel.module-carts{min-width:1820px}.data-panel.module-purchaseOrders{min-width:1580px}.data-panel.module-adminUsers{min-width:1220px}.data-panel>.panel-title,.inventory-panel>.panel-title{position:sticky;top:10px;z-index:12;margin:-8px -8px 14px;padding:12px;border:1px solid rgba(130,139,116,.22);border-radius:8px;background:var(--cream);box-shadow:0 12px 28px #2f4b3a14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.panel{padding:18px}.panel.wide{min-width:0}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.data-panel>.panel-title,.inventory-panel>.panel-title{display:grid;grid-template-columns:minmax(180px,max-content) minmax(0,1fr);align-items:start;justify-content:start;column-gap:18px}.data-panel>.panel-title>div:first-child,.inventory-panel>.panel-title>div:first-child{min-width:0;max-width:260px}.data-panel>.panel-title .panel-tools,.inventory-panel>.panel-title .panel-tools,.inventory-panel>.panel-title .inventory-tabs{justify-self:start;justify-content:flex-start;width:fit-content;max-width:100%}.panel-title h2{margin:0;font-size:17px}.meeting-context{display:inline-flex!important;align-items:center;min-height:26px;margin-top:8px;padding:0 10px;border:1px solid rgba(79,111,82,.18);border-radius:999px;color:var(--moss)!important;background:#e8efdfc7;font-size:12px!important;font-weight:850}.attribute-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.attribute-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:var(--moss);background:#fffdf5e6;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.attribute-tabs button svg{width:13px;height:13px;flex:0 0 auto}.attribute-tabs button:hover:not(.active){background:#e8e2cccc;transform:translateY(-1px)}.attribute-tabs button.active{border-color:#4a5f3759;color:var(--cream);background:var(--moss);box-shadow:0 10px 18px #4d5f3a2e}.panel-title span{color:var(--muted);font-size:13px}.panel-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:flex-end;max-width:min(980px,100%);padding:6px;border:1px solid rgba(130,139,116,.16);border-radius:8px;background:#f7f4e99e}.panel-tools>span{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid rgba(130,139,116,.18);border-radius:999px;color:var(--moss);background:#fffdf5d6;font-size:12px;font-weight:850;white-space:nowrap}.panel-tools button{flex:0 0 auto;height:30px;min-width:max-content;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer;white-space:nowrap;word-break:keep-all}.panel-tools button span,.toolbar-more summary span,.toolbar-more-menu button span{min-width:max-content;white-space:nowrap;word-break:keep-all}.panel-tools button.primary,.panel-tools .filter-chip-group button.primary{color:var(--cream);border-color:var(--moss);background:var(--moss);box-shadow:0 8px 18px #2f4b3a24}.panel-tools button.primary:hover:not(:disabled),.panel-tools .filter-chip-group button.primary:hover:not(:disabled){color:var(--cream);border-color:#243c2f;background:#243c2f;box-shadow:0 10px 22px #2f4b3a33}.filter-chip-group{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid rgba(135,152,106,.22);border-radius:8px;background:#fffdf5c2}.panel-tools .filter-chip-group button{border-color:transparent;background:transparent;box-shadow:none}.panel-tools button.danger-solid{color:var(--cream)!important;border-color:var(--danger);background:var(--danger)}.panel-tools button.danger-solid span,.panel-tools button.danger-solid svg{color:var(--cream)}.panel-tools button.danger-solid:hover:not(:disabled){color:var(--cream)!important;border-color:var(--danger-dark);background:var(--danger-dark);box-shadow:0 10px 22px #d63b2e3d}.panel-tools button:disabled{cursor:not-allowed;opacity:.46}.toolbar-more{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}.toolbar-more summary{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;height:30px;min-width:92px;width:max-content;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer;font-size:var(--compact-control-font-size);line-height:1;-webkit-user-select:none;user-select:none;white-space:nowrap;word-break:keep-all;writing-mode:horizontal-tb}.toolbar-more summary .button-content,.toolbar-more summary span,.toolbar-more-menu button .button-content,.toolbar-more-menu button span{display:inline-flex;align-items:center;white-space:nowrap;word-break:keep-all;writing-mode:horizontal-tb}.toolbar-more summary::-webkit-details-marker{display:none}.toolbar-more summary::marker{content:""}.toolbar-more[open] summary{color:var(--cream);border-color:var(--moss);background:var(--moss);box-shadow:0 8px 18px #2f4b3a24}.toolbar-more-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:32;display:grid;gap:6px;min-width:210px;padding:8px;border:1px solid rgba(130,139,116,.24);border-radius:8px;background:#fffdf5fa;box-shadow:0 18px 38px #25362a2e;font-size:var(--compact-control-font-size)}.toolbar-more-section{display:grid;gap:8px;min-width:250px;padding:4px 2px 8px;border-bottom:1px solid rgba(130,139,116,.18)}.toolbar-more-section strong{color:var(--moss);font-size:var(--compact-control-font-size);font-weight:900}.toolbar-more-menu .toolbar-select{width:100%;justify-content:space-between;height:28px;font-size:var(--compact-control-font-size)}.toolbar-more-menu .toolbar-select select,.toolbar-more-menu .toolbar-select input{width:124px;min-width:124px;font-size:var(--compact-control-font-size)}.toolbar-more-menu button{width:100%;min-width:0;justify-content:flex-start}.toolbar-more-menu .filter-chip-group{justify-content:stretch}.toolbar-more-menu .filter-chip-group button{flex:1 1 auto;width:auto;justify-content:center}.toolbar-more-menu .toolbar-more-filter-stack{display:grid;grid-template-columns:1fr;gap:5px;padding:0;border:0;background:transparent}.toolbar-more-menu .toolbar-more-filter-stack button{width:100%;justify-content:flex-start;padding:0 10px;border-color:#828b742e;background:#fffdf5b8}.toolbar-more-menu .toolbar-more-filter-stack button.primary{color:var(--cream);border-color:var(--moss);background:var(--moss)}.toolbar-more-menu button.danger-solid{color:var(--cream);border-color:var(--danger);background:var(--danger)}.toolbar-select{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 8px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;font-size:var(--compact-control-font-size)}.toolbar-select span{color:var(--muted);font-size:var(--compact-control-font-size);white-space:nowrap}.toolbar-select select,.toolbar-select input{min-width:78px;border:0;outline:0;color:var(--ink);background:transparent;font:inherit;font-size:var(--compact-control-font-size)}.toolbar-select select option{font-size:var(--compact-control-font-size)}.toolbar-select input{width:92px}.product-year-season-filter input{width:72px;font-size:var(--compact-control-font-size)}.product-year-season-filter input::placeholder{color:#738071c7;font-size:11px}.product-year-season-filter .toolbar-input-clear{display:inline-grid;place-items:center;width:18px;height:18px;min-width:18px;padding:0;border:0;border-radius:50%;color:var(--muted);background:#828b741f}.product-year-season-filter .toolbar-input-clear[hidden]{display:none}.product-year-season-filter .toolbar-input-clear svg{width:12px;height:12px}.product-year-season-filter .toolbar-input-clear:hover{color:var(--cream);background:var(--moss)}.data-panel.is-loading .panel-tools button:disabled{cursor:progress}.data-table-wrap{width:100%;overflow-x:auto;border:1px solid rgba(130,139,116,.18);border-radius:8px;background:var(--cream)}table{width:100%;border-collapse:collapse}.data-table.module-orders,.data-table.module-carts{table-layout:fixed}.data-table.module-orders{min-width:1520px}.data-table.module-carts{min-width:1780px}.data-table.module-purchaseOrders{table-layout:fixed;min-width:1540px}.data-table.module-orders .col-orderMeetingName,.data-table.module-carts .col-orderMeetingName,.data-table.module-purchaseOrders .col-orderMeetingName{width:140px}.data-table.module-orders .col-orderNo,.data-table.module-carts .col-orderNo{width:180px}.data-table.module-orders .col-dealerName,.data-table.module-carts .col-dealerName{width:150px}.data-table.module-carts .col-employeeDisplayName,.data-table.module-orders .col-storehouseName,.data-table.module-carts .col-storehouseName{width:130px}.data-table.module-orders .col-totalQuantity,.data-table.module-carts .col-totalQuantity{width:64px}.data-table.module-orders .col-orderAmountText,.data-table.module-carts .col-orderAmountText{width:96px}.data-table.module-orders .col-statusText,.data-table.module-carts .col-submittedByText{width:88px}.data-table.module-orders .col-operatorName{width:126px}.data-table.module-orders .col-submittedAtText,.data-table.module-carts .col-updatedAtText{width:150px}.data-table.module-orders .col-actions,.data-table.module-carts .col-actions{width:236px;min-width:236px}.data-table.module-purchaseOrders .col-inboundNo{width:170px}.data-table.module-purchaseOrders .col-supplierNames{width:150px}.data-table.module-purchaseOrders .col-statusText,.data-table.module-purchaseOrders .col-lineCountText,.data-table.module-purchaseOrders .col-totalQuantityText,.data-table.module-purchaseOrders .col-totalAmountText{width:96px}.data-table.module-purchaseOrders .col-operatorName{width:126px}.data-table.module-purchaseOrders .col-createdAtText,.data-table.module-purchaseOrders .col-remark{width:150px}.data-table.module-purchaseOrders .col-actions{width:282px;min-width:282px}.data-table.module-adminUsers .col-actions{width:236px;min-width:236px}.data-table.module-accountManagement .col-actions{width:142px;min-width:142px}.data-table.module-orderTargets .col-actions{width:94px;min-width:94px}.data-table td.col-actions .row-actions,.data-table.module-orderTargets .row-actions{flex-wrap:nowrap;justify-content:center}.data-table.module-orderMeetings .col-orderMeetingName{min-width:280px}.data-table.module-products{width:max-content;min-width:0;table-layout:auto}.data-table.module-products th,.data-table.module-products td{height:52px;padding-left:6px;padding-right:6px}.data-table.module-products .select-cell{width:36px;min-width:36px}.data-table.module-products .col-coverThumb,.data-table.module-products .thumb-cell{width:76px;min-width:76px}.data-table.module-products .col-actions{width:188px;min-width:188px}.data-table td.col-actions .table-action{flex-direction:column;width:42px;min-width:42px;height:38px;padding:0;gap:1px;font-size:10px;line-height:1}.data-table td.col-actions .table-action svg{width:14px;height:14px}.data-table td.col-actions .table-action span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table.module-products td:not(.thumb-cell):not(.col-actions):not(.col-statusText):not(.col-tagPriceText):not(.col-yearName):not(.col-seasonName):not(.col-kindName):not(.col-subcategoryName):not(.col-relatedCount):not(.col-description){height:auto;min-height:52px;max-width:none;white-space:normal;word-break:break-word;overflow:visible;text-overflow:clip;line-height:1.45;padding-top:10px;padding-bottom:10px}.data-table.module-products .col-styleNo,.data-table.module-products .col-originalStyleNo{width:86px;min-width:86px}.data-table.module-products .col-name,.data-table.module-products .col-supplierName,.data-table.module-products .col-brandName{width:96px;min-width:96px}.data-table.module-products .col-statusText,.data-table.module-products .col-tagPriceText,.data-table.module-products .col-yearName,.data-table.module-products .col-seasonName,.data-table.module-products .col-kindName,.data-table.module-products .col-subcategoryName{width:70px;min-width:70px;white-space:nowrap}.data-table.module-products .col-relatedCount{width:58px;min-width:58px;white-space:nowrap}.data-table.module-products .col-description{width:86px;min-width:86px;white-space:nowrap}th,td{height:58px;border-bottom:1px solid var(--line);font-size:14px}.data-table th,.data-table td{text-align:center;background-clip:padding-box}.data-table th{position:sticky;top:0;z-index:2;white-space:nowrap;color:var(--moss);background:#eff3e4f5;font-weight:850;box-shadow:inset 0 -1px #828b743d}td{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fffdf5b8}.data-table tbody tr{transition:background .12s ease}.data-table tbody tr:hover,.data-table tbody tr:hover td{background:#e8efdf57}.data-table td.col-actions{max-width:none;overflow:visible;white-space:normal}.thumb-cell{position:relative;width:76px;overflow:visible}th{color:var(--muted);font-weight:500}.select-cell{width:42px;text-align:center}.select-cell input{width:16px;height:16px}.loading-cell{height:220px;text-align:center}.inline-loading{display:grid;place-items:center;gap:8px;color:var(--muted)}.inline-loading span{width:30px;height:30px;border:3px solid rgba(135,152,106,.22);border-top-color:var(--moss);border-radius:999px;animation:spin .82s linear infinite}.inline-loading strong{color:var(--moss);font-size:14px}.inline-loading small{font-size:12px}.status{display:inline-flex;align-items:center;justify-content:center;height:26px;min-width:58px;padding:0 9px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:850;white-space:nowrap}.status.on{color:var(--leaf);border-color:#87986a42;background:#87986a29}.status.off{color:var(--coral);border-color:#c96f543d;background:#c96f5424}.list{display:grid;gap:10px}.list-row{display:grid;grid-template-columns:58px 1fr 48px;align-items:center;min-height:42px;padding:0 10px;border:1px solid var(--line);border-radius:8px}.list-row span,.list-row em{color:var(--muted);font-size:13px;font-style:normal}.product-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.product-card{display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:center;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f7f4e9a3}.product-card img{width:86px;aspect-ratio:3 / 4;object-fit:cover;border-radius:6px;background:var(--paper)}.product-card span,.product-card p{margin:0;color:var(--muted);font-size:13px}.product-card strong{display:block;margin:6px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-map{display:grid;grid-template-columns:72px 1fr;gap:14px 12px;align-items:center}.permission-map span{color:var(--muted)}.permission-map strong{color:var(--moss)}.settings-panel{width:min(1120px,100%);margin-inline:auto}.settings-form{display:grid;gap:16px}.settings-form label{display:grid;gap:8px;color:var(--muted);font-size:13px}.settings-form label small{color:var(--muted);font-size:12px;line-height:1.5}.settings-image-field{display:grid;gap:8px;color:var(--muted);font-size:13px}.settings-login-image-card{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:18px;align-items:center;padding:16px;border:1px solid rgba(135,152,106,.24);border-radius:8px;background:#fffdf5b8}.settings-login-image-preview{padding:8px;border:1px solid rgba(135,152,106,.2);border-radius:8px;background:#f7f4e9ad}.settings-login-image-frame{position:relative;width:100%;aspect-ratio:3 / 2;overflow:hidden;border-radius:8px;background:#22302a;box-shadow:0 14px 30px #2f4b3a24}.settings-login-image-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#22302a42,#22302a05 28%,#22302a05 72%,#22302a42),linear-gradient(180deg,#fffdf500,#fffdf50d);pointer-events:none}.settings-login-image-blur,.settings-login-image-main{position:absolute;display:block}.settings-login-image-blur{top:-18px;right:-18px;bottom:-18px;left:-18px;width:calc(100% + 36px);height:calc(100% + 36px);object-fit:cover;object-position:center 24%;filter:blur(14px) saturate(.95);opacity:.72;transform:scale(1.04)}.settings-login-image-main{top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 24%}.settings-login-image-control{display:grid;gap:12px}.settings-login-image-control strong,.settings-login-image-control span,.settings-login-image-control small{display:block}.settings-login-image-control strong{color:var(--ink);font-size:18px}.settings-login-image-control span{margin-top:3px;color:var(--leaf);font-size:13px;font-weight:800}.settings-login-image-control small{color:var(--muted);line-height:1.6}.settings-upload-actions{display:flex;align-items:center;gap:10px}.settings-upload-actions input[type=file]{display:none}.settings-upload-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:fit-content;min-width:178px;height:42px;padding:0 18px;border:1px solid var(--moss);border-radius:8px;color:var(--cream);background:var(--moss);cursor:pointer;box-shadow:0 12px 26px #2f4b3a29;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;font:inherit}.settings-upload-button span,.settings-upload-button svg{color:var(--cream)}.settings-image-notice{width:fit-content}.settings-upload-button:hover{transform:translateY(-1px);background:#243c2f;box-shadow:0 16px 32px #2f4b3a38}.inventory-panel{display:grid;gap:16px}.inventory-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inventory-tabs button{height:38px}.inventory-tabs button.active{color:var(--cream);border-color:var(--moss);background:var(--moss)}.inventory-status-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.inventory-status-filter button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:86px;height:32px;padding:0 11px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer;font-size:13px;font-weight:600;line-height:1;box-shadow:none}.inventory-status-filter button svg{width:14px;height:14px;flex-basis:14px}.inventory-status-filter button:hover:not(:disabled){border-color:#2f4b3a6b;color:var(--moss);background:#87986a29;box-shadow:0 8px 18px #2f4b3a1a}.inventory-status-filter button.active{color:var(--cream);border-color:var(--moss);background:var(--moss);box-shadow:none}.inventory-status-filter button.active:hover:not(:disabled){color:var(--cream);border-color:var(--moss);background:var(--moss);box-shadow:0 8px 18px #2f4b3a1f}.inventory-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:16px;align-items:start}.inventory-card{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fffdf5b8}.inventory-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.inventory-card-title strong{color:var(--ink);font-size:16px}.inventory-card-title span{color:var(--muted);font-size:13px}.inventory-search{display:grid;grid-template-columns:20px minmax(0,1fr) auto auto;align-items:center;gap:0;min-height:48px;border:1px solid var(--line);border-radius:8px;background:#fffdf5db;overflow:hidden}.inventory-search>svg{margin-left:14px;width:18px;height:18px;color:var(--moss)}.inventory-search input{width:100%;height:48px;border:0;padding:0 12px;color:var(--ink);background:transparent;outline:0}.inventory-search button{height:48px;padding:0 16px;border:0;border-left:1px solid var(--line);color:var(--moss);background:#fffdf5a6;cursor:pointer}.inventory-search button:hover:not(:disabled){color:var(--cream);background:var(--moss)}.inventory-search .primary{color:var(--cream);background:var(--moss)}.inventory-search .primary:hover:not(:disabled){filter:brightness(1.08)}.inventory-product-list{display:grid;gap:8px;max-height:430px;overflow:auto}.inventory-product-list.matrix-list{max-height:none;overflow:visible}.inventory-entry-card{align-content:start}.inventory-bulk-fill{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.inventory-bulk-fill label{display:grid;gap:6px;color:var(--muted);font-size:13px}.inventory-bulk-fill input{width:150px;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--ink);background:#fffdf5eb;outline:0}.inventory-bulk-fill button{height:42px;border:1px solid var(--line);border-radius:8px;padding:0 14px;color:var(--moss);background:#fffdf5b8;cursor:pointer}.inventory-bulk-fill .primary{border-color:var(--moss);color:var(--cream);background:var(--moss)}.inventory-bulk-fill button:hover:not(:disabled){transform:translateY(-1px);border-color:#2f4b3a57;box-shadow:0 10px 20px #2f4b3a1a}.purchase-matrix{display:grid;gap:10px;padding:12px;border:1px solid rgba(135,152,106,.24);border-radius:8px;background:#f7f4e985}.purchase-matrix-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.purchase-matrix-heading{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;min-width:0}.purchase-matrix-title strong,.purchase-matrix-title span{display:block}.purchase-matrix-title strong{overflow-wrap:anywhere;color:var(--ink)}.purchase-matrix-title span{margin-top:4px;color:var(--muted);font-size:12px}.purchase-matrix-title em{color:var(--moss);font-size:12px;font-style:normal;font-weight:800;white-space:nowrap}.inventory-product-thumb{position:relative;display:inline-grid;place-items:center;width:48px;height:62px;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;color:#2f4b3aad;background:#fffdf5e0;cursor:zoom-in;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.inventory-product-thumb:hover:not(.empty){border-color:#2f4b3a6b;box-shadow:0 10px 22px #2f4b3a29;transform:translateY(-1px) scale(1.04)}.inventory-product-thumb.empty{cursor:default}.inventory-product-thumb img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover}.inventory-product-thumb em{position:absolute;right:2px;bottom:2px;z-index:3;min-width:18px;height:18px;padding:0 5px;border-radius:999px;color:var(--cream);background:#2f4b3ae6;font-size:11px;font-style:normal;font-weight:800;line-height:18px;text-align:center}.purchase-matrix-wrap{overflow:auto}.purchase-matrix-table{min-width:520px;border-collapse:collapse;font-size:14px}.purchase-matrix-table th,.purchase-matrix-table td{min-width:106px;border:1px solid rgba(135,152,106,.34);padding:5px 8px;text-align:left;vertical-align:top}.purchase-matrix-table thead th{color:var(--ink);background:#d6e2fac7;font-size:15px}.purchase-matrix-table tbody th{width:150px;color:var(--ink);background:#d6e2fac7;font-size:15px}.purchase-matrix-table input{width:92px;height:32px;border:0;border-bottom:2px solid rgba(47,75,58,.38);border-radius:0;padding:0 4px;color:var(--ink);background:transparent;outline:0;font-size:18px}.purchase-matrix-table input:focus{border-bottom-color:var(--moss);background:#fffdf5b8}.purchase-matrix-table .matrix-empty{background:#fffdf57a}.inventory-product-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;min-height:66px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#f7f4e999;cursor:pointer;text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.inventory-product-row:hover{transform:translateY(-1px);border-color:#2f4b3a57;box-shadow:0 12px 24px #2f4b3a1f}.inventory-product-row.selected{border-color:var(--moss);background:#87986a2e}.inventory-product-row span{min-width:0}.inventory-product-row strong,.inventory-product-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-product-row small{margin-top:5px;color:var(--muted);font-size:12px}.inventory-product-row em{color:var(--moss);font-style:normal;font-weight:700}.inventory-form label{display:grid;gap:8px;color:var(--muted);font-size:13px}.inventory-form input{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--ink);background:#fffdf5e6;outline:0}.line-quantity-input,.line-money-input{width:86px;height:36px;border:1px solid var(--line);border-radius:8px;padding:0 10px;color:var(--ink);background:#fffdf5eb;outline:0}.line-money-input{width:104px}.inventory-remark{display:grid;gap:8px;color:var(--muted);font-size:13px}.inventory-remark input{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--ink);background:#fffdf5e6;outline:0}.inventory-form .primary{height:44px;border:0;border-radius:8px;color:var(--cream);background:var(--moss);cursor:pointer}.inventory-save-row{display:flex;justify-content:flex-end}.inventory-save-row .primary{height:44px;border:0;border-radius:8px;padding:0 18px;color:var(--cream);background:var(--moss);cursor:pointer}.inventory-save-row .primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.inventory-form .primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.inventory-selected{display:grid;gap:6px;padding:12px;border:1px solid rgba(135,152,106,.28);border-radius:8px;background:#87986a1f}.inventory-selected.empty{border-color:var(--line);background:#f7f4e99e}.inventory-selected span{color:var(--muted);font-size:13px}.inventory-table-wrap{overflow:auto}.inventory-table{min-width:720px}.purchase-order-modal{width:min(1120px,calc(100vw - 48px));max-height:calc(100vh - 40px);padding:24px}.purchase-order-hero{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:14px;padding:14px;border:1px solid rgba(47,75,58,.14);border-radius:8px;background:linear-gradient(135deg,#e5ebd1b8,#fffdf5e0)}.purchase-order-hero>span{display:grid;place-items:center;width:54px;height:54px;border-radius:8px;color:var(--cream);background:var(--moss)}.purchase-order-hero svg{width:25px;height:25px}.purchase-order-hero strong,.purchase-order-hero em{display:block}.purchase-order-hero strong{color:var(--ink);font-size:22px;line-height:1.25}.purchase-order-hero em{margin-top:4px;color:var(--muted);font-style:normal}.purchase-order-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.purchase-order-summary span{display:grid;gap:5px;padding:12px;border:1px solid rgba(47,75,58,.12);border-radius:8px;background:#f7f4e98f}.purchase-order-summary small{color:var(--muted);font-size:12px}.purchase-order-summary strong{color:var(--ink);font-size:18px}.purchase-order-note{display:grid;gap:6px;padding:12px;border-left:4px solid rgba(47,75,58,.5);border-radius:8px;background:#fffdf5c7}.purchase-order-note span{color:var(--muted);font-size:12px}.purchase-order-note strong{color:var(--ink);line-height:1.6}.purchase-order-table-wrap{overflow:auto;border:1px solid rgba(47,75,58,.12);border-radius:8px;background:#fffdf5b8}.purchase-order-line-table{min-width:980px}.purchase-order-line-table th,.purchase-order-line-table td{vertical-align:middle}.purchase-order-editor{display:grid;gap:14px}.purchase-order-editor [data-purchase-editor-lines]{margin-bottom:88px}.purchase-editor-remark{padding:12px;border:1px solid rgba(47,75,58,.12);border-radius:8px;background:#fffdf5b8}.purchase-editor-add{display:grid;gap:10px;padding:14px;border:1px solid rgba(135,152,106,.24);border-radius:8px;background:#f7f4e980}.purchase-editor-results{min-height:54px}.purchase-editor-bulk-fill{margin-bottom:10px}.purchase-editor-matrix-list{display:grid;gap:12px;max-height:360px;overflow:auto;padding-right:2px}.purchase-editor-matrix-list .purchase-matrix{margin:0}.print-preview-root .purchase-print-lines{font-size:13px}.print-preview-root .purchase-print-lines th,.print-preview-root .purchase-print-lines td{padding:8px}.print-preview-root .purchase-landscape-table .purchase-supplier-col{width:112px;text-align:left}.print-preview-root .purchase-landscape-table .purchase-original-col{width:100px;text-align:left}.stock-positive{color:var(--moss)}.stock-negative{color:#d9362c}.inline-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:4px;border:0;padding:0;background:transparent;color:var(--moss);font:inherit;font-weight:800;text-align:left;cursor:pointer}.inline-link svg{width:14px;height:14px;flex:0 0 auto}.inline-link:hover{color:var(--leaf);text-decoration:underline}.purchase-inbound-link{white-space:nowrap}.inventory-entry-list{display:grid;gap:8px;max-height:520px;overflow:auto}.inventory-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;min-height:58px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f7f4e98f}.inventory-entry strong,.inventory-entry small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-entry small{margin-top:4px;color:var(--muted);font-size:12px}.inventory-entry em{font-style:normal;font-weight:800}.inventory-entry time{grid-column:1 / -1;color:var(--muted);font-size:12px}.inventory-loading{min-height:180px}@media (max-width: 1180px){.inventory-layout{grid-template-columns:1fr}}.settings-form input,.settings-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;color:var(--ink);outline:0;background:#fffdf5eb}.settings-form input{height:42px;padding:0 12px}.settings-form textarea{min-height:112px;padding:12px;resize:vertical;line-height:1.7;font-family:inherit}.settings-form textarea[name=orderPrintNote]{min-height:150px;font-size:16px;line-height:1.8}.settings-preview{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:8px;background:#f7f4e9a3}.settings-preview span{color:var(--muted)}.settings-preview strong{color:var(--moss);font-size:18px}.image-upload-panel{display:grid;gap:14px}.image-upload-form{display:grid;gap:12px}.image-upload-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.image-upload-actions input{display:none}.image-upload-actions label,.image-upload-actions button{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 15px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer}.image-upload-actions .primary{color:var(--cream);border-color:var(--moss);background:var(--moss)}.image-upload-panel.is-uploading .image-upload-actions label{cursor:progress;opacity:.72}.upload-progress{display:grid;gap:7px;max-width:520px}.upload-progress div{height:9px;overflow:hidden;border-radius:999px;background:#87986a29}.upload-progress span{display:block;height:100%;border-radius:inherit;background:var(--moss);transition:width .18s ease}.upload-progress strong{color:var(--moss);font-size:12px}.image-upload-file-list,.image-upload-result div{display:flex;flex-wrap:wrap;gap:8px}.image-upload-file-list span,.image-upload-file-list em,.image-upload-result span{display:inline-grid;gap:2px;min-height:30px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#f7f4e9b8;font-size:12px;font-style:normal}.image-upload-result{display:grid;gap:10px;padding-top:4px}.image-upload-result strong{color:var(--moss)}.image-upload-result span.matched{color:var(--moss);border-color:#2f4b3a42;background:#87986a24}.image-upload-result small{color:var(--muted)}.image-library-panel{display:grid;gap:10px;padding:12px}.image-library-toolbar{position:sticky;top:10px;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px;border:1px solid rgba(130,139,116,.2);border-radius:8px;background:#fffdf5f0;box-shadow:0 12px 28px #2f4b3a14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.image-storage-status{position:sticky;top:74px;z-index:11;display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(135,152,106,.22);border-radius:8px;color:var(--moss);background:#fffdf5c7}.image-storage-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;color:var(--cream);background:var(--moss)}.image-storage-icon svg{width:18px;height:18px}.image-storage-main{display:grid;gap:7px;min-width:0}.image-storage-head{display:flex;align-items:center;gap:10px;min-width:0}.image-storage-head strong{flex:0 0 auto;font-size:13px;color:var(--ink)}.image-storage-head span{min-width:0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.image-storage-bar{height:10px;overflow:hidden;border-radius:999px;background:#828b742e}.image-storage-bar i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5e7b64,#9db37b)}.image-storage-status.warning .image-storage-bar i{background:linear-gradient(90deg,#b8873a,#d7b35f)}.image-storage-status.danger .image-storage-bar i{background:linear-gradient(90deg,#bd4b40,#d96a5e)}.image-storage-status.muted,.image-storage-status.warning{color:var(--muted)}.image-storage-numbers{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 10px;color:var(--muted);font-size:12px;text-align:right}.image-storage-numbers strong{color:var(--ink)}.image-library-tabs{display:inline-flex;gap:8px}.image-library-tabs button{height:34px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5e6;cursor:pointer}.image-library-tabs button.active{color:var(--cream);border-color:var(--moss);background:var(--moss)}.image-library-tabs button:hover:not(:disabled):not(.active){border-color:#2f4b3a5c;background:#87986a29;box-shadow:0 8px 18px #2f4b3a1f}.image-library-tabs button.active:hover:not(:disabled){color:var(--cream);border-color:#243c2f;background:#243c2f;box-shadow:0 10px 22px #2f4b3a2e}.image-library-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;color:var(--muted);font-size:12px}.image-library-actions button{height:34px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5e6;cursor:pointer}.image-library-actions button.danger-text{color:var(--cream);border-color:var(--danger);background:var(--danger)}.image-library-actions button.danger-text:hover:not(:disabled){border-color:var(--danger-dark);background:var(--danger-dark);box-shadow:0 12px 24px #d63b2e3d}.image-library-actions button:disabled,.image-library-tabs button:disabled,.image-library-search input:disabled{cursor:progress}.image-library-actions .primary{color:var(--cream);border-color:var(--moss);background:var(--moss)}.image-library-search{display:inline-flex;align-items:center;gap:7px;width:230px;height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fffdf5e6}.image-library-search svg{width:15px;height:15px}.image-library-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink)}.image-library-search button{height:auto;padding:0;border:0;color:var(--muted);background:transparent;white-space:nowrap}.image-library-search button:hover:not(:disabled){color:var(--moss);transform:none;text-decoration:underline}.image-library-loading{display:grid;place-items:center;gap:8px;min-height:260px;color:var(--muted);text-align:center}.image-library-loading span{width:34px;height:34px;border:3px solid rgba(135,152,106,.22);border-top-color:var(--moss);border-radius:999px;animation:spin .82s linear infinite}.image-library-loading strong{color:var(--moss);font-size:15px}.image-library-loading small{font-size:12px}.image-library-grid{display:grid;grid-template-columns:repeat(auto-fill,112px);align-items:start;justify-content:start;gap:9px}.image-library-card{position:relative;margin:0;width:112px;min-width:112px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#f7f4e9b8;cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.image-library-card.selected{border-color:var(--moss);box-shadow:0 0 0 2px #2f4b3a1f}.image-library-card:hover{z-index:8;transform:translateY(-1px);border-color:#2f4b3a57}.image-library-card img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:1 / 1;object-fit:contain;border-radius:5px;background:var(--paper)}.image-library-preview-button{position:absolute;z-index:4;top:50%;left:50%;display:grid;place-items:center;min-width:0;width:30px;height:30px;padding:0;border:1px solid rgba(255,253,245,.76);border-radius:999px;color:var(--cream);background:#2f4b3ae0;box-shadow:0 14px 28px #2f4b3a38;cursor:pointer;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.9);transition:opacity .16s ease,transform .16s ease,background .16s ease}.image-library-preview-button svg{width:15px;height:15px}.image-library-preview-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.image-library-card:hover .image-library-preview-button{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.image-library-preview-button:hover{background:#243c2f}.image-library-card figcaption{display:grid;gap:1px;margin-top:4px;min-width:0}.image-library-card strong,.image-library-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-library-card strong{color:var(--ink);font-size:9px}.image-library-card span{color:var(--muted);font-size:8px}.image-card-tool{justify-self:start;min-height:22px;margin-top:2px;padding:0 6px;border:1px solid rgba(130,139,116,.22);border-radius:7px;color:var(--moss);background:#fffdf5db;cursor:pointer;font-size:9px}.image-card-tool:hover{border-color:#2f4b3a52;background:#87986a24}.image-card-tool svg{width:11px;height:11px}.image-library-check{position:absolute;z-index:2;top:7px;left:7px;width:18px;height:18px;pointer-events:none}.image-library-check input{position:absolute;opacity:0;pointer-events:none}.image-library-check span{display:block;width:16px;height:16px;border:1px solid rgba(47,75,58,.35);border-radius:5px;background:#fffdf5eb;box-shadow:0 3px 10px #2f4b3a1f}.image-library-check input:checked+span{border-color:var(--moss);background:var(--moss)}.image-library-check input:checked+span:after{content:"";display:block;width:7px;height:4px;margin:4px 0 0 4px;border-left:2px solid var(--cream);border-bottom:2px solid var(--cream);transform:rotate(-45deg)}.used-badge{position:absolute;z-index:2;top:7px;right:7px;padding:1px 4px;border-radius:5px;color:var(--cream);background:#2f4b3adb;font-size:8px;font-style:normal;line-height:1.4}.rename-image-field{display:grid;gap:8px;margin:14px 0 4px;color:var(--moss);font-weight:800}.rename-image-field input,.rename-image-field select{width:100%;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fffdf5eb;outline:0;font-size:var(--control-font-size)}.rename-image-field select option{font-size:var(--control-font-size)}.image-library-lightbox-panel{gap:10px}.image-library-lightbox-name{max-width:min(92vw,640px);overflow:hidden;color:var(--cream);font-size:13px;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 8px rgba(18,28,22,.34)}.active-radio-cell{display:inline-flex;align-items:center;gap:8px;min-height:32px;cursor:pointer;color:var(--sage);font-weight:800}.active-radio-cell input{width:18px;height:18px;margin:0;accent-color:var(--forest);cursor:pointer}.active-radio-cell:hover{color:var(--forest)}.order-meeting-name-cell{display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;min-height:34px}.order-meeting-title{min-width:0;overflow:hidden;color:var(--forest);font-weight:850;text-overflow:ellipsis;white-space:nowrap}.order-meeting-status{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;height:26px;padding:0 9px;border:1px solid rgba(49,70,53,.16);border-radius:999px;background:#87986a1f;color:var(--sage);font-size:12px;font-weight:850}.order-meeting-status.is-running{border-color:#2f4b3a3d;background:#2f4b3a1f;color:var(--forest)}.order-meeting-status.is-paused{border-color:#a45c3647;background:#a45c361f;color:#8f4d2f}.order-meeting-inline-action{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;padding:0 10px;border:1px solid rgba(47,75,58,.22);border-radius:8px;color:var(--moss);background:#fffdf5f0;font-size:12px;font-weight:850;cursor:pointer}.order-meeting-inline-action svg{width:14px;height:14px}.order-meeting-inline-action:hover{border-color:#2f4b3a6b;background:#87986a29;box-shadow:0 8px 16px #2f4b3a1f}.image-library-pager{display:flex;justify-content:flex-end;align-items:center;gap:10px;color:var(--muted);font-size:13px}.image-library-pager button{height:32px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5e6;cursor:pointer}.image-library-pager button:disabled{cursor:not-allowed;opacity:.48}.image-delete-list{display:flex;flex-wrap:wrap;gap:8px;max-height:170px;overflow:auto}.image-delete-list span,.image-delete-list em{padding:6px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#f7f4e9b8;font-size:12px;font-style:normal}.modal label.confirm-check{display:inline-flex;align-items:center;gap:8px;width:fit-content;color:var(--moss);font-size:14px}.modal label.confirm-check input{flex:0 0 auto;width:16px;height:16px;padding:0}.form-actions{display:flex;justify-content:flex-end}.form-actions .primary{height:40px;padding:0 16px;border:1px solid var(--moss);border-radius:8px;color:var(--cream);background:var(--moss);cursor:pointer}.text-danger{color:var(--danger);font-weight:700}.detail-thumb-cell{width:58px}.detail-thumb-button{position:relative;display:inline-grid;place-items:center;width:42px;height:56px;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#fffdf5e6;cursor:zoom-in;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.detail-thumb-button:hover{border-color:#2f4b3a6b;box-shadow:0 10px 22px #2f4b3a29;transform:scale(1.08)}.detail-thumb-button img{width:100%;height:100%;object-fit:cover}.detail-thumb-button em{position:absolute;right:2px;bottom:2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;color:var(--cream);background:#22302ab8;font-size:10px;font-style:normal;line-height:16px}.link-cell-button{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:0;overflow:hidden;border:0;color:var(--moss);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:transparent;cursor:pointer}.link-cell-button svg{width:14px;height:14px;flex:0 0 auto}.link-cell-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-cell-button:hover{color:var(--leaf);text-decoration:underline}.modal-actions .danger-solid{color:var(--cream);background:var(--danger)}.modal-actions .danger-solid:hover{background:var(--danger-dark);box-shadow:0 12px 24px #d63b2e3d}.row-actions{display:flex;flex-wrap:wrap;gap:5px;align-items:center;justify-content:center}.dashboard-top-limit-form{display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 12px;border:1px solid rgba(135,152,106,.32);border-radius:8px;background:linear-gradient(180deg,#fffdf5f5,#f7f4e9e6);box-shadow:inset 0 1px #ffffffb3}.dashboard-top-limit-form label{display:inline-flex;align-items:center;gap:8px;color:var(--moss);font-size:13px;font-weight:800}.dashboard-top-limit-form input{width:58px;height:28px;padding:0 6px;text-align:center;font-size:15px;font-weight:800;color:var(--ink);border:1px solid rgba(47,75,58,.22);border-radius:7px;background:#ffffffe0;box-shadow:inset 0 1px 3px #2f4b3a14}.dashboard-top-limit-form input:focus{outline:2px solid rgba(47,75,58,.16);border-color:#2f4b3a75;background:#fff}.dashboard-top-limit-form input::-webkit-outer-spin-button,.dashboard-top-limit-form input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dashboard-top-limit-form input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.dashboard-top-limit-hint{max-width:126px;overflow:hidden;color:var(--muted);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.action-cell-wide{min-width:520px}.thumb-button{position:relative;display:grid;place-items:center;width:44px;height:58px;padding:0;border:1px solid var(--line);border-radius:6px;background:#f7f4e9b8;cursor:pointer;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;will-change:transform}.thumb-button.is-loading,.thumb-preview-card.is-loading,.detail-thumb-button.is-loading,.featured-thumb.is-loading{color:var(--muted);background:linear-gradient(110deg,#fffdf5b8,#8b9b7633 42%,#fffdf5b8 74%),#f7f4e9db;background-size:220% 100%;animation:image-loading-sweep 1.2s ease-in-out infinite}.image-loading-mark{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;padding:4px;color:#2f4b3ab8;font-size:10px;font-weight:700;pointer-events:none}.thumb-button:not(.is-loading) .image-loading-mark,.thumb-preview-card:not(.is-loading) .image-loading-mark,.detail-thumb-button:not(.is-loading) .image-loading-mark,.featured-thumb:not(.is-loading) .image-loading-mark{display:none}.thumb-hover-wrap{position:relative;display:inline-grid;place-items:center;isolation:isolate}.thumb-hover-wrap.is-previewing{z-index:20}.thumb-button:hover,.thumb-hover-wrap.is-previewing .thumb-button{border-color:#2f4b3a7a;box-shadow:0 18px 38px #2f4b3a3d;transform:scale(1.14)}.thumb-hover-wrap.is-previewing .thumb-button{transform:scale(1.24)}.thumb-button img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover}.thumb-fallback{display:none}.thumb-button.empty .thumb-fallback{display:block;color:var(--muted);font-size:24px;line-height:1}.thumb-button em{position:absolute;right:3px;bottom:3px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;color:var(--cream);background:#22302ab8;font-size:11px;font-style:normal;line-height:18px;text-align:center}.thumb-preview{position:absolute;top:50%;left:calc(100% + 14px);display:flex;align-items:end;gap:8px;width:max-content;max-width:min(72vw,920px);overflow-x:auto;overflow-y:visible;padding:10px 12px;border:1px solid rgba(47,75,58,.16);border-radius:8px;background:#fffdf5f5;box-shadow:0 28px 70px #2f4b3a38;opacity:0;pointer-events:none;transform:translateY(-50%) translate(-10px) scale(.94);transform-origin:left center;transition:opacity .16s ease,transform .24s cubic-bezier(.16,1,.3,1)}.thumb-hover-wrap.is-previewing .thumb-preview{opacity:1;pointer-events:auto;transform:translateY(-50%) translate(0) scale(1)}.thumb-preview-card{display:grid;place-items:center;width:108px;height:144px;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#f7f4e9d6;cursor:zoom-in;opacity:0;transform:translate(-12px) scale(.82);transform-origin:bottom center;will-change:transform;transition:border-color .16s ease,box-shadow .16s ease,opacity .18s ease calc(var(--slot-index) * 58ms + 50ms),transform .26s cubic-bezier(.2,1.6,.34,1) calc(var(--slot-index) * 58ms + 50ms)}.thumb-preview-card img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover}.thumb-hover-wrap.is-previewing .thumb-preview-card{opacity:1;transform:translate(0) scale(1)}.thumb-hover-wrap.is-previewing .thumb-preview:has(.thumb-preview-card:hover) .thumb-preview-card{opacity:.86;transform:translate(0) scale(.9)}.thumb-hover-wrap.is-previewing .thumb-preview-card:hover{border-color:#2f4b3a5c;box-shadow:0 18px 38px #2f4b3a3d;opacity:1;transform:translate(0) scale(1.55);z-index:3}.thumb-hover-wrap.is-previewing .thumb-preview-card:hover+.thumb-preview-card,.thumb-hover-wrap.is-previewing .thumb-preview-card:has(+.thumb-preview-card:hover){opacity:.96;transform:translate(0) scale(1.24);z-index:2}.empty-cell{color:var(--muted);text-align:center}.placeholder,.task-list{color:var(--muted);line-height:1.8}.task-list{display:grid;gap:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:32px;background:#22302a47;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.image-lightbox{z-index:40;padding:24px}.lightbox-panel{position:relative;display:grid;justify-items:center;gap:14px;width:min(640px,92vw)}.lightbox-image-frame{position:relative;display:grid;place-items:center;width:min(520px,82vw);height:min(690px,76vh);padding:10px;border:1px solid rgba(255,253,245,.34);border-radius:8px;background:#fffdf5eb;box-shadow:0 28px 80px #121c1647}.image-loading-overlay{position:absolute;top:10px;right:10px;bottom:10px;left:10px;z-index:2;display:grid;place-items:center;border-radius:6px;color:#2f4b3ad1;background:linear-gradient(110deg,#fffdf5d6,#8b9b7647 42%,#fffdf5d6 74%),#fffdf5eb;background-size:220% 100%;box-shadow:inset 0 0 0 1px #2f4b3a14;opacity:0;pointer-events:none;transition:opacity .14s ease;animation:image-loading-sweep 1.2s ease-in-out infinite}.image-loading-overlay.is-visible{opacity:1}.image-loading-overlay span{font-size:14px;font-weight:700}.lightbox-image-frame img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain}.lightbox-strip{display:flex;justify-content:center;gap:10px;max-width:min(92vw,780px);overflow-x:auto;padding:6px 8px 12px}.lightbox-strip button{position:relative;width:56px;height:74px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:6px;background:#fffdf5d1;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.lightbox-strip button.active{border-color:var(--moss);box-shadow:0 0 0 3px #fffdf5db,0 12px 28px #2f4b3a47;transform:translateY(-6px) scale(1.1)}.lightbox-strip button.active:after{position:absolute;right:14px;bottom:5px;left:14px;height:3px;border-radius:999px;background:var(--moss);content:""}.lightbox-strip img{width:100%;height:100%;object-fit:cover}@keyframes image-loading-sweep{0%{background-position:180% 0}to{background-position:-80% 0}}.modal{--modal-pad: 20px;width:min(720px,100%);max-height:calc(100vh - 64px);overflow:auto;padding:var(--modal-pad);scroll-padding-bottom:112px}.modal.purchase-order-modal{--modal-pad: 24px;width:min(1120px,calc(100vw - 48px));max-height:calc(100vh - 40px);padding:var(--modal-pad)}.product-editor-modal{--modal-pad: 24px;width:min(1180px,calc(100vw - 48px));max-height:calc(100vh - 40px)}.product-editor-modal .form-grid{gap:14px 18px;align-items:start}.product-editor-modal .searchable-checkbox-grid{max-height:132px}.product-editor-modal .product-upload-grid{grid-template-columns:repeat(4,minmax(118px,1fr))}.wide-editor-modal{--modal-pad: 24px;width:min(1040px,calc(100vw - 40px));max-height:calc(100vh - 36px)}.wide-editor-modal .form-grid{gap:14px 18px;align-items:start}.wide-editor-modal .searchable-checkbox-grid{max-height:260px}.wide-editor-modal .checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(156px,1fr))}.wide-editor-modal .checkbox-grid span{min-width:0;border-radius:8px;word-break:keep-all}.role-editor-modal{--modal-pad: 24px;width:min(1380px,calc(100vw - 40px));max-height:calc(100vh - 32px)}.role-editor-modal .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px}.role-editor-modal .permission-editor{margin-top:4px}.role-editor-modal .permission-bucket-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.role-editor-modal .permission-checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr))}@media (max-width: 980px){.wide-editor-modal .form-grid,.role-editor-modal .form-grid,.role-editor-modal .permission-bucket-grid{grid-template-columns:1fr}}.order-modal{width:min(1180px,calc(100vw - 64px));max-height:calc(100vh - 48px);padding:28px}.order-modal-backdrop{width:100vw;height:100vh;overflow:auto;padding:24px;place-items:center}.order-modal .panel-title{gap:24px;align-items:flex-start}.order-modal .panel-title h2{max-width:540px;font-size:24px;line-height:1.35}.order-modal .row-actions{flex:0 0 auto;gap:12px}.order-modal .panel-title button{min-width:118px;height:52px;padding:0 18px;white-space:nowrap;font-size:15px}.order-modal table{min-width:920px}.cart-editor-backdrop{padding:14px}.cart-editor-modal{width:calc(100vw - 28px);height:calc(100vh - 28px);max-height:none;overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px}.cart-editor-title{margin-bottom:0}.cart-editor-title span{display:block;margin-top:6px;color:var(--muted);font-size:13px}.cart-editor-actions{position:sticky;bottom:0;z-index:3;display:flex;gap:18px;align-items:center;justify-content:flex-end;margin:0 -12px -12px;padding:12px;border-top:1px solid rgba(130,139,116,.22);background:linear-gradient(180deg,#fffdf5bd,#fffdf5fa 34%,#fffdf5);box-shadow:0 -12px 24px #2f4b3a14}.cart-editor-actions button{height:48px;min-width:118px;padding:0 24px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5f0;box-shadow:0 8px 20px #2f4b3a14;font-size:18px;font-weight:700;cursor:pointer}.cart-editor-actions .primary{min-width:132px;color:var(--cream);border-color:var(--moss);background:var(--moss);box-shadow:0 12px 24px #2f4b3a2e}.cart-editor-actions button:hover:not(:disabled){border-color:#2f4b3a61;color:var(--moss);background:#fffdf5fa;box-shadow:0 14px 28px #2f4b3a26;transform:translateY(-1px)}.cart-editor-actions .primary:hover:not(:disabled){color:var(--cream);border-color:#243c2f;background:#243c2f;box-shadow:0 16px 30px #2f4b3a3d}.cart-editor-actions button:active:not(:disabled){transform:translateY(0)}.cart-editor-summary{margin-bottom:0}.cart-editor-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);gap:14px;min-height:0}.cart-editor-section{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf59e}.cart-editor-section:has(.cart-product-search){grid-template-rows:auto auto minmax(0,1fr)}.cart-editor-section:has(.cart-editor-actions){grid-template-rows:auto minmax(0,1fr) auto}.section-title{display:flex;align-items:end;justify-content:space-between;gap:12px}.section-title h3{margin:0;font-size:16px}.section-title span{color:var(--muted);font-size:12px}.cart-editor-table,.cart-product-results{min-height:0;overflow:auto}.cart-editor-table th,.cart-editor-table td,.cart-product-results th,.cart-product-results td{height:48px;font-size:13px}.compact-input{width:76px;height:34px;padding:0 8px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fffdf5f2}.cart-product-search{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;height:42px;padding-left:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf5e6}.cart-product-search input{height:40px;padding:0;border:0;background:transparent}.cart-product-search button{height:40px;padding:0 12px;border:0;border-left:1px solid var(--line);color:var(--moss);background:#fffdf5b3;cursor:pointer}.cart-product-search>svg{opacity:.38;filter:blur(.15px)}.cart-product-search button:disabled{cursor:not-allowed;opacity:.45}.sku-picker-backdrop{z-index:32;background:#22302a5c}.sku-picker-modal{width:min(760px,calc(100vw - 40px))}.product-picker-modal{width:min(920px,calc(100vw - 40px))}.order-target-editor-modal{--modal-pad: 24px;width:min(980px,calc(100vw - 36px));max-height:calc(100vh - 36px);overflow:auto;padding-bottom:0}@media (max-width: 980px){.cart-editor-layout{grid-template-columns:1fr}.image-storage-status{grid-template-columns:auto minmax(0,1fr)}.image-storage-numbers{grid-column:1 / -1;justify-content:flex-start;text-align:left}}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.order-target-storehouse-grid{align-items:end}.order-target-kind-panel{display:grid;gap:12px;margin-top:16px}.order-target-kind-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid rgba(135,152,106,.28);border-radius:8px;background:#f7f4e9bd}.order-target-kind-head strong,.order-target-kind-head span{display:block}.order-target-kind-head strong{color:var(--moss);font-size:15px}.order-target-kind-head span{margin-top:4px;color:var(--muted);font-size:13px}.order-target-kind-head em{flex:0 0 auto;min-width:210px;padding:8px 10px;border-radius:8px;color:var(--moss);background:#fffdf5db;font-size:13px;font-style:normal;font-weight:800;text-align:center}.order-target-kind-head em.full{color:#6e592c;background:#b5944d29}.order-target-kind-head em.over{color:var(--coral);background:#c96f5424}.order-target-kind-head em .order-target-remaining-text,.order-target-kind-head em.full .order-target-remaining-text,.order-target-kind-head em.over .order-target-remaining-text{color:var(--danger);font-size:17px;font-weight:950}.order-target-kind-search{position:relative;display:block}.order-target-kind-search>svg{position:absolute;left:12px;top:50%;width:16px;height:16px;color:var(--muted);transform:translateY(-50%);pointer-events:none}.order-target-kind-search input{width:100%;padding-left:36px;padding-right:88px;font-size:var(--control-font-size)}.order-target-kind-search .search-clear{position:absolute;right:10px;top:50%;height:28px;padding:0 8px;font-size:var(--compact-control-font-size);transform:translateY(-50%)}.order-target-kind-search .search-clear[hidden]{display:none}.order-target-kind-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;max-height:min(54vh,520px);overflow:auto;padding-right:4px}.order-target-kind-card{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fffdf5c7;font-size:var(--control-font-size);transition:border-color .16s ease,background .16s ease,opacity .16s ease}.order-target-kind-card[hidden]{display:none}.order-target-kind-card.selected{border-color:#2f4b3a7a;background:#eef3e4db}.order-target-kind-card.disabled:not(.selected){opacity:.48}.order-target-kind-card-title{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:8px;align-items:center}.order-target-kind-card-title input{width:16px;height:16px;padding:0}.order-target-kind-card-title strong{min-width:0;overflow-wrap:anywhere;color:var(--moss);font-size:14px}.order-target-kind-card-title span{color:var(--muted);font-size:12px;font-weight:800}.order-target-kind-inputs{display:grid;grid-template-columns:68px minmax(0,1fr);gap:8px;align-items:center}.order-target-kind-inputs span{color:var(--muted);font-size:12px}.order-target-kind-card input[type=text]{height:34px}.order-target-kind-empty{margin:0}.order-target-editor-modal .modal-actions{position:sticky;right:0;bottom:0;z-index:3;margin:18px -24px 0;padding:14px 24px 18px;border-top:1px solid rgba(130,139,116,.22);background:linear-gradient(180deg,#fffdf5c7,#fffdf5fa 34%,#fffdf5);box-shadow:0 -14px 28px #2f4b3a14}.wide-field{grid-column:1 / -1}.form-section-divider{display:flex;align-items:center;gap:12px;margin:4px 0 -2px;color:#8a7244;font-size:15px;font-weight:900;letter-spacing:0}.form-section-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,#b5944d80,#b5944d0f)}.form-section-divider span{display:inline-flex;align-items:center;min-height:28px}.upload-block{display:grid;gap:8px;color:var(--muted);font-size:13px}.upload-block>small{color:var(--muted)}.checkbox-grid{display:flex;flex-wrap:wrap;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf5b8;font-size:var(--control-font-size)}.checkbox-grid span{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--moss);background:#f7f4e9c7;font-size:var(--control-font-size);line-height:1.25}.checkbox-grid input{width:14px;height:14px;padding:0}.checkbox-grid.product-column-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.product-column-grid label{display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:7px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#f7f4e9c7;cursor:pointer}.product-column-grid label:has(input:checked){border-color:#2f4b3a70;background:#e8efdfdb}.product-column-grid span{display:block;min-height:0;padding:0;overflow:hidden;border:0;border-radius:0;color:inherit;background:transparent;font-size:var(--control-font-size);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.product-column-grid input{flex:0 0 auto;margin:0;justify-self:center}.searchable-multi-field{gap:8px}.searchable-multi{display:grid;gap:10px;font-size:var(--control-font-size)}.searchable-multi-filter{position:relative}.searchable-multi-filter svg{position:absolute;left:12px;top:50%;width:16px;height:16px;color:var(--muted);transform:translateY(-50%);pointer-events:none}.searchable-multi-filter input{padding-left:36px;font-size:var(--control-font-size)}.searchable-multi-filter input[data-multi-filter],.searchable-select .searchable-multi-filter input{padding-right:92px}.searchable-filter-clear{position:absolute;right:10px;top:50%;display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;border-radius:8px;color:var(--moss);background:#fffdf5d6;font-size:var(--compact-control-font-size);transform:translateY(-50%);transition:color .16s ease,background .16s ease,box-shadow .16s ease}.searchable-filter-clear[hidden]{display:none}.searchable-filter-clear:hover{color:var(--cream);background:var(--moss);box-shadow:0 8px 18px #2f4b3a29}.searchable-multi-summary,.selection-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:var(--compact-control-font-size)}.selection-summary{min-height:30px;padding:7px 10px;border:1px solid rgba(130,139,116,.18);border-radius:8px;background:#fffdf59e}.searchable-multi-summary strong,.selection-summary strong{margin-left:auto;color:var(--moss)}.link-mini-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:26px;padding:0 8px;border:1px solid rgba(47,75,58,.18);border-radius:8px;color:var(--moss);background:#fffdf5d1;cursor:pointer;font-size:var(--compact-control-font-size)}.link-mini-button svg{width:13px;height:13px;flex:0 0 auto}.link-mini-button[hidden]{display:none}.link-mini-button:hover{color:var(--cream);background:var(--moss)}.searchable-checkbox-grid{max-height:180px;overflow:auto}.searchable-checkbox-grid span[hidden]{display:none}.searchable-radio-grid span:has(input:checked){border-color:#2f4b3a8c;color:var(--cream);background:var(--moss);box-shadow:0 10px 22px #2f4b3a24}.searchable-radio-grid span{cursor:pointer}.searchable-multi-empty{color:var(--muted);font-size:var(--compact-control-font-size);font-style:normal;line-height:30px}.featured-panel{display:grid;gap:14px}.featured-filter{display:inline-flex;align-items:center;gap:6px;padding:4px;border:1px solid rgba(135,152,106,.22);border-radius:8px;background:#f7f4e9ad}.panel-tools .featured-filter button{height:32px;min-width:76px;padding:0 12px;justify-content:center;border-color:transparent;background:transparent}.panel-tools .featured-filter button.active{color:var(--cream);border-color:var(--moss);background:var(--moss);box-shadow:0 10px 18px #2f4b3a24}.featured-search{display:grid;grid-template-columns:1fr auto;gap:0;width:min(430px,100%);height:44px;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fffdf5eb}.featured-search input{width:100%;height:100%;padding:0 14px;border:0;outline:0;color:var(--ink);background:transparent;font-size:18px;font-weight:800}.featured-search input::placeholder{color:#545e4f6b}.featured-search .search-clear{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:106px;height:100%;padding:0 12px;border-left:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5f5;font-size:15px;font-weight:800}.featured-search .search-clear svg{width:17px;height:17px}.featured-search .search-clear:hover:not(:disabled){background:#f2eedef2;box-shadow:inset 0 0 0 1px #4a5f371a}.featured-search .search-clear:disabled{cursor:not-allowed;opacity:.45}.featured-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;overflow:visible}.featured-item{display:grid;grid-template-columns:18px 46px 1fr;gap:10px;align-items:center;min-height:66px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf5c7;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.featured-item:hover{border-color:#4a5f3747;background:#fffdf5f5;box-shadow:0 12px 26px #2f4b3a1a;transform:translateY(-1px)}.featured-item.selected{border-color:#4a5f376b;background:#e5ebd1c7}.featured-item input{width:16px;height:16px}.featured-thumb{position:relative;display:inline-grid;place-items:center;width:42px;height:56px;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#fffdf5e6;cursor:zoom-in;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.featured-thumb:hover:not(.empty){border-color:#2f4b3a6b;box-shadow:0 10px 22px #2f4b3a29;transform:scale(1.08)}.featured-thumb.empty{visibility:hidden;pointer-events:none}.featured-thumb img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover}.featured-thumb em{position:absolute;right:2px;bottom:2px;z-index:3;min-width:16px;height:16px;padding:0 4px;border-radius:999px;color:var(--cream);background:#22302ab8;font-size:10px;font-style:normal;line-height:16px}.featured-item span{display:grid;gap:4px;min-width:0}.featured-item strong,.featured-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.featured-item strong{color:var(--ink);font-size:13px}.featured-item small{color:var(--muted);font-size:12px}.featured-loading{min-height:260px}.brand-discount-grid{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf5b8}.brand-discount-row{display:grid;grid-template-columns:1fr 96px 24px;gap:10px;align-items:center;min-height:38px}.brand-discount-row label{display:flex;align-items:center;gap:8px;min-width:0;color:var(--moss)}.brand-discount-row label input{width:14px;height:14px;padding:0}.brand-discount-row>input{height:34px}.brand-discount-row em{color:var(--muted);font-style:normal}.permission-editor{display:grid;gap:12px;color:var(--muted);font-size:13px}.permission-group{display:grid;gap:8px}.permission-group[hidden]{display:none}.permission-group>strong{color:var(--moss);font-size:14px}.permission-bucket-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.permission-bucket{display:grid;gap:8px;padding:12px;border:1px solid rgba(135,152,106,.22);border-radius:8px;background:#fffdf5b8}.permission-bucket-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.permission-bucket b{color:var(--ink);font-size:13px}.permission-bucket-head button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:104px;height:30px;padding:0 10px;border:1px solid rgba(79,111,82,.18);border-radius:8px;color:var(--moss);background:#fffdf5eb;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}.permission-bucket-head button:hover{border-color:#4f6f5257;background:#e8efdfc7}.permission-bucket-head button svg{width:14px;height:14px}.permission-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));align-items:stretch;gap:8px;padding:10px}.permission-checkbox-grid span{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;min-height:36px;padding:7px 10px;border-radius:8px;font-size:var(--control-font-size);line-height:1.25;word-break:keep-all}.permission-checkbox-grid input{justify-self:center;flex:none}.modal-actions{position:sticky;bottom:0;z-index:3;display:flex;justify-content:flex-end;gap:10px;margin:20px calc(var(--modal-pad, 20px) * -1) 0;padding:14px var(--modal-pad, 20px) calc(var(--modal-pad, 20px) + 2px);border-top:1px solid rgba(130,139,116,.22);background:linear-gradient(180deg,#fffdf5b8,#fffdf5f7 34%,#fffdf5);box-shadow:0 -14px 28px #2f4b3a14}.modal-actions button{height:40px;padding:0 15px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer}.image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.image-grid figure{margin:0}.image-grid img{display:block;width:100%;aspect-ratio:3 / 4;object-fit:cover;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.image-grid figcaption{margin-top:6px;color:var(--muted);font-size:12px;text-align:center}.product-upload-grid{display:grid;grid-template-columns:repeat(4,112px);gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf5b8}.product-upload-slot{display:grid;place-items:center;align-content:center;gap:8px;width:112px;aspect-ratio:3 / 4;padding:8px;border:1px dashed rgba(49,70,53,.28);border-radius:8px;color:var(--muted);background:#f7f4e9b8;cursor:pointer;overflow:hidden}.product-upload-slot:hover:not(:disabled){border-color:#2f4b3a75;color:var(--moss);background:#87986a29;box-shadow:0 14px 28px #2f4b3a24;transform:translateY(-2px)}.product-upload-slot.has-image:hover:not(:disabled){box-shadow:0 16px 34px #2f4b3a33}.product-upload-slot.has-image:hover:not(:disabled) span{background:#22302ad1}.product-upload-slot-wrap{position:relative;width:112px}.product-upload-slot strong{font-size:28px;font-weight:400;line-height:1}.product-upload-slot span{max-width:100%;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.product-upload-slot.has-image{position:relative;padding:0;border-style:solid}.product-upload-slot.has-image img{width:100%;height:100%;object-fit:contain;background:var(--paper)}.product-upload-slot.has-image span{position:absolute;right:0;bottom:0;left:0;padding:6px;color:var(--cream);background:#22302aad;text-align:center}.image-clear-button{position:absolute;top:6px;right:6px;z-index:2;height:24px;padding:0 8px;border:0;border-radius:999px;color:var(--cream);background:#22302ab8;cursor:pointer;font-size:12px;line-height:24px}.image-clear-button:hover{background:#c96f54e6;box-shadow:0 8px 18px #c96f543d}.image-manager .product-upload-grid{grid-template-columns:repeat(4,104px);justify-content:center}.image-manager{--modal-pad: 24px;width:min(720px,calc(100vw - 40px));max-height:calc(100vh - 36px)}.image-manager .product-upload-slot,.image-manager .product-upload-slot-wrap{width:104px}.hidden-file-input{display:none}.relation-search{display:grid;gap:8px;margin-bottom:12px;color:var(--muted);font-size:13px}.relation-manager-modal{--modal-pad: 24px;width:min(1120px,calc(100vw - 40px));max-height:calc(100vh - 36px)}.relation-manager-modal .relation-list{max-height:min(58vh,640px)}.relation-search input{height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fffdf5e6;outline:0}.relation-current-group{display:grid;gap:10px;margin-bottom:12px;padding:12px;border:1px solid rgba(47,75,58,.18);border-radius:8px;background:#eef3e4a3}.relation-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.relation-group-head>div{display:grid;gap:2px;min-width:0}.relation-group-head strong{color:var(--moss);font-size:14px;font-weight:900}.relation-group-head span{color:var(--muted);font-size:12px}.relation-group-head em{flex:0 0 auto;padding:6px 10px;border-radius:8px;color:var(--moss);background:#fffdf5d1;font-size:12px;font-style:normal;font-weight:850}.relation-group-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px}.relation-group-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:8px;border:1px solid rgba(79,111,82,.16);border-radius:8px;background:#fffdf5d1}.relation-group-card.is-current{border-color:#2f4b3a47;background:#fffdf5f5}.relation-group-card .relation-thumb{width:48px;height:58px;border-radius:7px}.relation-group-card strong,.relation-group-card small{display:block}.relation-group-card strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.relation-group-card small{margin-top:4px;color:var(--muted);font-size:12px}.relation-group-card>em{padding:5px 8px;border-radius:8px;color:var(--leaf);background:#87986a24;font-size:12px;font-style:normal;font-weight:850;white-space:nowrap}.relation-group-card .table-action{width:auto;min-width:74px;height:30px;padding:0 8px}.relation-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;max-height:520px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf5b8}.relation-list-toolbar,.relation-pager{display:flex;align-items:center;justify-content:space-between;gap:10px}.relation-list-toolbar{position:sticky;top:-12px;z-index:2;grid-column:1 / -1;margin:-12px -12px 2px;padding:10px 12px;border-bottom:1px solid rgba(49,70,53,.12);background:#fffdf5f5}.relation-list-toolbar>div:first-child{display:grid;gap:2px;min-width:0}.relation-list-toolbar strong{color:var(--ink);font-size:13px}.relation-list-toolbar span{color:var(--muted);font-size:12px}.relation-list-toolbar em{flex:0 0 auto;padding:6px 10px;border-radius:8px;color:var(--moss);background:#2f4b3a14;font-size:12px;font-style:normal;font-weight:800}.relation-list-toolbar>div:last-child,.relation-pager{display:flex;flex-wrap:wrap}.relation-list-toolbar button,.relation-pager button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5eb;cursor:pointer}.relation-list-toolbar button:disabled,.relation-pager button:disabled{cursor:not-allowed;opacity:.46}.relation-pager{grid-column:1 / -1;justify-content:center;padding-top:2px}.relation-add-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:76px;padding:9px 10px;border:1px solid rgba(79,111,82,.16);border-radius:8px;background:#f7f4e99e}.relation-add-card>div{min-width:0}.relation-add-card strong,.relation-add-card small{display:block}.relation-add-card strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.relation-add-card small{margin-top:4px;color:var(--muted);font-size:12px}.relation-add-card .table-action{width:auto;min-width:74px;height:30px;padding:0 8px}.relation-item{display:grid;grid-template-columns:58px 18px minmax(0,1fr);align-items:center;gap:12px;min-height:70px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#f7f4e99e}.relation-thumb{position:relative;display:grid;place-items:center;width:58px;height:70px;padding:0;border:1px solid rgba(49,70,53,.12);border-radius:8px;color:#2f4b3a73;background:#fffdf5db;overflow:hidden;cursor:pointer}.relation-thumb:after{border:0}.relation-thumb img{width:100%;height:100%;object-fit:cover}.relation-thumb.empty{cursor:default}.relation-thumb.empty svg{width:20px;height:20px}.relation-thumb em{position:absolute;right:4px;bottom:4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;color:var(--cream);background:#2f4b3adb;font-size:11px;font-style:normal;font-weight:800;line-height:18px;text-align:center}.relation-item input{width:16px;height:16px;padding:0}.relation-item strong,.relation-item small{display:block}.relation-item strong{color:var(--ink);font-size:14px}.relation-item small{margin-top:4px;color:var(--muted);font-size:12px}.empty-note{grid-column:1 / -1;margin:0;padding:30px 24px;border:1px dashed rgba(130,139,116,.34);border-radius:8px;color:#2f4b3ab8;background:linear-gradient(180deg,#fffdf5b8,#f7f4e9a8),#fffdf5b8;font-size:14px;font-weight:750;line-height:1.7;text-align:center}.backup-panel{display:grid;gap:18px;overflow:visible;padding-top:14px}.backup-sticky-bar{position:sticky;top:14px;z-index:20;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin:-2px 0 2px;padding:14px 16px;border:1px solid rgba(79,111,82,.18);border-radius:8px;background:#fffdf5f0;box-shadow:0 12px 28px #2f4b3a1f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.backup-sticky-bar>div{display:grid;gap:4px;min-width:0}.backup-sticky-bar strong{color:var(--ink);font-size:18px;font-weight:900}.backup-sticky-bar span{overflow:hidden;color:var(--muted);font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.backup-hero{display:grid;align-items:center;gap:20px;padding:24px;border:1px solid rgba(79,111,82,.16);border-radius:8px;background:linear-gradient(135deg,#e8efdfe0,#fffdf5f5),var(--cream);box-shadow:0 18px 42px #2f4b3a14}.backup-kicker{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid rgba(79,111,82,.2);border-radius:999px;margin-bottom:8px;color:var(--moss);background:#e8efdfb8;font-size:12px;font-weight:900;letter-spacing:0}.backup-hero h2{margin:0 0 8px;color:var(--ink);font-size:28px;letter-spacing:0}.backup-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.8}.backup-create-button{min-width:160px;height:48px;border:0;border-radius:8px;color:var(--cream);background:var(--moss);cursor:pointer;box-shadow:0 16px 30px #2f4b3a33}.backup-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.backup-summary-card,.backup-card{border:1px solid var(--line);border-radius:8px;background:#fffdf5e6;box-shadow:0 14px 34px #2f4b3a0f}.backup-summary-card{display:grid;gap:7px;padding:16px}.backup-summary-card span,.backup-summary-card em,.backup-card-title span,.backup-record-main small,.backup-record-stats span{color:var(--muted);font-size:12px;font-style:normal}.backup-summary-card strong{color:var(--moss);font-size:18px}.backup-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:14px}.backup-card{padding:18px}.backup-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.backup-card-title strong{color:var(--ink);font-size:17px}.backup-scope-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.backup-scope-list li{display:grid;grid-template-columns:38px auto;gap:6px 12px;align-items:center;padding:12px;border-radius:8px;background:#e8efdf7a}.backup-scope-list span{display:grid;place-items:center;grid-row:span 2;width:38px;height:38px;border-radius:8px;color:var(--moss);background:#87986a2e}.backup-scope-list svg{width:20px;height:20px}.backup-scope-list strong{color:var(--ink)}.backup-scope-list em,.backup-risk-card p{margin:0;color:var(--muted);font-size:13px;font-style:normal;line-height:1.65}.backup-risk-card{border-color:#c96f5442;background:#fff9f1eb}.backup-risk-card .backup-card-title strong{color:var(--coral)}.backup-risk-card p+p{margin-top:10px}.backup-record-list{display:grid;gap:10px}.backup-record{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.9fr) auto;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#faf8efc7;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.backup-record:hover{border-color:#4f6f523d;background:#fffdf5eb;box-shadow:0 10px 24px #2f4b3a14}.backup-record-main{display:grid;gap:5px;min-width:0}.backup-record-main strong{color:var(--ink);font-size:15px}.backup-record-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-record-badge{width:max-content;padding:4px 8px;border-radius:999px;color:var(--leaf);background:#87986a29;font-size:12px;font-weight:800}.backup-record-badge.warning{color:var(--coral);background:#c96f5424}.backup-record-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.backup-record-stats span{min-height:34px;display:grid;place-items:center;padding:0 8px;border-radius:8px;background:#fffdf5e6;text-align:center}.backup-record-actions{display:flex;gap:8px;justify-content:flex-end}.backup-record-actions button{height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:var(--cream);cursor:pointer}.backup-record-actions .danger-solid{color:#fff;border-color:var(--danger);background:var(--danger)}.backup-record-actions .backup-download-action{color:var(--moss);border-color:#4f6f522e;background:#fffdf5eb}.backup-record-actions .backup-restore-action{color:#8f4d2f;border-color:#a45c364d;background:#fff7eef0}.backup-record-actions .backup-restore-action:hover:not(:disabled){color:#fff;border-color:#8f4d2f;background:#8f4d2f;box-shadow:0 10px 22px #8f4d2f33}.backup-loading{min-height:120px}.backup-restore-warning{display:grid;gap:8px;margin-bottom:16px;padding:14px;border:1px solid rgba(214,59,46,.24);border-radius:8px;color:var(--danger);background:#d63b2e14}.backup-restore-warning p{margin:0;color:var(--muted);line-height:1.65}.backup-file-code{margin:10px 0 0;padding:10px 12px;border-radius:8px;color:var(--muted);background:#87986a1a;font-size:12px;word-break:break-all}@media (max-width: 760px){.login-shell{grid-template-columns:1fr;padding:28px}.settings-login-image-card{grid-template-columns:1fr}.backup-sticky-bar{grid-template-columns:1fr;top:8px}.backup-sticky-bar .backup-create-button{width:100%}}.print-root{display:none}.print-preview-backdrop{z-index:60;place-items:stretch;padding:0;background:#19231e57}.print-preview-shell{display:grid;grid-template-rows:auto minmax(0,1fr);width:100vw;height:100vh;background:#f7f4e9f0}.print-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 22px;border-bottom:1px solid rgba(135,152,106,.28);background:#fffdf5f5;box-shadow:0 10px 28px #20352914}.print-preview-toolbar h2{margin:0 0 4px;color:var(--ink);font-size:22px;letter-spacing:0}.print-preview-toolbar span{color:var(--muted);font-size:13px}.print-preview-toolbar button{height:44px;padding:0 16px;border:1px solid var(--line);border-radius:8px;color:var(--moss);background:#fffdf5f5;cursor:pointer;transition:color .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.print-preview-toolbar button.primary{color:var(--cream);border-color:var(--moss);background:var(--moss)}.print-preview-toolbar button:hover:not(:disabled){border-color:#2f4b3a6b;color:var(--moss);background:#87986a29;box-shadow:0 10px 22px #2f4b3a1f;transform:translateY(-1px)}.print-preview-toolbar button.primary:hover:not(:disabled){color:var(--cream);border-color:#243c2f;background:#243c2f;box-shadow:0 12px 26px #2f4b3a33}.print-preview-scroll{overflow:auto;padding:24px}.print-preview-root{display:grid;justify-items:center;gap:22px}.print-preview-root .print-order{width:min(1120px,calc(100vw - 72px));min-height:min(1584px,calc((100vw - 72px)*1.414));padding:54px 48px;color:#203529;font-family:Microsoft YaHei,Arial,sans-serif;background:#fffefa;border:1px solid rgba(130,139,116,.28);box-shadow:0 30px 80px #19231e33}.print-preview-root .print-landscape-order{width:min(1584px,calc(100vw - 72px));min-height:min(1120px,calc((100vw - 72px)*.707));padding:42px 44px}.print-preview-root .print-order-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:18px;padding-bottom:18px;border-bottom:3px solid #2f4b3a}.print-preview-root .print-company{display:grid;gap:4px}.print-preview-root .print-company strong{color:#2f4b3a;font-size:20px}.print-preview-root .print-company span{color:#7d897b;font-size:12px}.print-preview-root .print-order h1{margin:0;color:#17261d;font-size:38px;line-height:1;letter-spacing:0}.print-preview-root .print-status{justify-self:end;padding:8px 16px;border-radius:999px;background:#e8efdf;color:#2f4b3a;font-size:15px;font-weight:700}.print-preview-root .print-meta{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px;margin:22px 0}.print-preview-root .print-meta div{min-height:64px;padding:12px 14px;border:1px solid #d9d6c8;border-radius:8px;background:#faf8ef}.print-preview-root .print-meta span{display:block;margin-bottom:6px;color:#7d897b;font-size:13px}.print-preview-root .print-meta strong{color:#203529;font-size:16px}.print-preview-root .print-meta .print-total{background:#2f4b3a;border-color:#2f4b3a}.print-preview-root .print-meta .print-total span,.print-preview-root .print-meta .print-total strong{color:#fff}.print-preview-root .print-lines{width:100%;border-collapse:collapse;font-size:15px}.print-preview-root .print-lines th,.print-preview-root .print-lines td{border:1px solid #d6d2c4;padding:10px;text-align:center;vertical-align:middle}.print-preview-root .print-lines th{background:#eef3e4;color:#2f4b3a;font-weight:700}.print-preview-root .print-repeat-marker th{padding:5px 8px;background:#fffefa;color:#657365;font-size:12px;font-weight:700;text-align:right}.print-preview-root .print-lines tbody tr:nth-child(2n) td{background:#fbfaf5}.print-preview-root .print-lines td.numeric{text-align:center}.print-preview-root .print-lines td.col-suggestionText{max-width:260px;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.45;text-align:left}.print-preview-root .list-print-order{width:min(1180px,calc(100vw - 72px))}.print-preview-root .list-print-meta{grid-template-columns:1fr 1fr 1fr}.print-preview-root .list-print-table{table-layout:fixed;font-size:13px}.print-preview-root .list-print-table th{white-space:nowrap}.print-preview-root .list-print-table td{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.print-preview-root .list-print-table .list-index-col,.print-preview-root .list-print-table td:first-child{width:44px}.print-preview-root .landscape-order-body{display:grid;gap:16px}.print-preview-root .landscape-product-block{display:grid;gap:10px;page-break-inside:avoid;break-inside:avoid}.print-preview-root .landscape-product-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid #d9d6c8;border-radius:8px;background:#faf8ef}.print-preview-root .landscape-product-thumb{display:grid;place-items:center;width:54px;height:64px;overflow:hidden;border:1px solid #d7d4c6;border-radius:6px;background:#fffefa;color:#91a08d;font-size:11px;text-align:center}.print-preview-root .landscape-product-thumb img{width:100%;height:100%;object-fit:cover}.print-preview-root .landscape-product-title{display:grid;gap:5px}.print-preview-root .landscape-product-title span,.print-preview-root .landscape-product-total span{color:#7d897b;font-size:12px}.print-preview-root .landscape-product-title strong,.print-preview-root .landscape-product-total strong{color:#203529;font-size:16px}.print-preview-root .landscape-product-total{display:grid;justify-items:end;gap:5px}.print-preview-root .landscape-matrix{table-layout:fixed;font-size:12px}.print-preview-root .landscape-matrix th,.print-preview-root .landscape-matrix td{padding:7px}.print-preview-root .landscape-summary-table thead th{background:#dfe8d2}.print-preview-root .landscape-summary-table .landscape-index-col{width:46px}.print-preview-root .landscape-summary-table .landscape-image-col,.print-preview-root .landscape-summary-table .landscape-thumb-cell{width:60px}.print-preview-root .landscape-summary-table .landscape-style-col{width:110px}.print-preview-root .landscape-summary-table .landscape-name-col{width:150px}.print-preview-root .landscape-summary-table .landscape-color-col{width:86px}.print-preview-root .landscape-summary-table .landscape-price-col,.print-preview-root .landscape-summary-table .landscape-total-col,.print-preview-root .landscape-summary-table .landscape-amount-col{width:82px}.print-preview-root .landscape-summary-table .landscape-size-col{min-width:56px}.print-preview-root .landscape-matrix .landscape-color-col{background:#f4f0df;color:#2f4b3a;font-weight:700}.print-preview-root .landscape-summary-table .landscape-color-col{background:transparent;color:#203529;font-weight:600}.print-preview-root .landscape-summary-table thead .landscape-color-col{background:#dfe8d2;color:#2f4b3a;font-weight:700}.print-preview-root .landscape-summary-table .landscape-style-col,.print-preview-root .landscape-summary-table .landscape-name-col{text-align:left}.print-preview-root .landscape-quantity,.print-preview-root .landscape-row-total,.print-preview-root .landscape-column-total,.print-preview-root .landscape-grand-total{font-weight:700}.print-preview-root .landscape-empty{color:transparent}.print-preview-root .landscape-row-total,.print-preview-root .landscape-column-total{background:#fbfaf5}.print-preview-root .landscape-grand-total{background:#2f4b3a;color:#fff}.print-preview-root .landscape-row-amount,.print-preview-root .landscape-grand-amount{font-weight:700}.print-preview-root .landscape-grand-amount{background:#2f4b3a;color:#fff}.print-preview-root .print-image-cell{width:78px;height:92px;text-align:center!important;padding:6px!important}.print-preview-root .print-image-cell img{display:block;width:66px;height:80px;object-fit:cover;margin:0 auto;border:1px solid #d7d4c6;border-radius:5px}.print-preview-root .print-footer{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;margin-top:22px}.print-preview-root .purchase-print-footer{grid-template-columns:minmax(0,1fr)}.print-preview-root .print-note,.print-preview-root .print-sign{min-height:112px;padding:16px;border:1px solid #d9d6c8;border-radius:8px;background:#faf8ef}.print-preview-root .print-note strong,.print-preview-root .print-sign span{display:block;margin-bottom:10px;color:#2f4b3a;font-size:15px}.print-preview-root .print-note p{margin:0;color:#405245;font-size:14px;line-height:1.75}.print-preview-root .print-sign strong{display:block;height:48px;margin-top:60px;border-bottom:1px solid #9ea896}.print-preview-root .dashboard-print-order{display:grid;gap:22px}.print-preview-root .dashboard-print-section{display:grid;gap:12px}.print-preview-root .dashboard-chart-card{break-inside:avoid;page-break-inside:avoid;padding:12px;border-color:#d6d2c4;background:#fffefa}.print-preview-root .dashboard-column-chart{min-height:280px}.print-preview-root .dashboard-chart-head h3{font-size:16px}.print-preview-root .dashboard-chart-summary span{background:#f7f4e9}.print-preview-root .dashboard-print-section h2,.print-preview-root .dashboard-print-subsection h3{margin:0;color:#2f4b3a;font-size:20px;letter-spacing:0}.print-preview-root .dashboard-print-subsection{display:grid;gap:10px;padding-top:8px}.print-preview-root .dashboard-print-subsection h3{display:flex;align-items:center;justify-content:space-between;font-size:17px}.print-preview-root .dashboard-print-subsection h3 span{color:#7d897b;font-size:13px;font-weight:500}.print-preview-root .comparison-print-order{display:grid;gap:18px}.print-preview-root .comparison-print-order .comparison-chart,.print-preview-root .comparison-print-order .comparison-table-section{break-inside:avoid}.upload-field{display:grid;gap:8px;margin-top:8px;color:var(--muted);font-size:13px}.upload-field input{height:auto;padding:12px}.order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f7f4e9a3}.order-summary span,.order-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-summary span{color:var(--muted)}.order-summary strong{color:var(--moss)}@keyframes spin{to{transform:rotate(360deg)}}@media print{@page{size:A4;margin:13mm 12mm;@bottom-center{content:"第" counter(page) "页";color:#7d897b;font-size:9px}}@page print-landscape{size:A4 landscape;margin:10mm;@bottom-center{content:"第" counter(page) "页";color:#7d897b;font-size:9px}}body{min-width:0;background:#fff!important}#app,.modal-backdrop{display:none!important}body.is-printing-preview .print-preview-backdrop{position:static!important;display:block!important;padding:0!important;background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}body.is-printing-preview .print-preview-shell{display:block!important;width:auto!important;height:auto!important;background:#fff!important}body.is-printing-preview .print-preview-toolbar{display:none!important}body.is-printing-preview .print-preview-scroll{display:block!important;overflow:visible!important;padding:0!important}.print-root{display:block!important;color:#203529;font-family:Microsoft YaHei,Arial,sans-serif}.print-order{width:auto!important;min-height:0!important;page-break-after:always;padding:0!important;border:0!important;background:#fff!important;box-shadow:none!important}.print-landscape-order{page:print-landscape}.print-order:last-child{page-break-after:auto}.print-order-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:14px;padding-bottom:12px;border-bottom:2px solid #2f4b3a}.print-company{display:grid;gap:3px}.print-company strong{font-size:15px;color:#2f4b3a}.print-company span{font-size:9px;color:#7d897b;text-transform:uppercase}.print-order h1{margin:0;font-size:26px;line-height:1;letter-spacing:0;color:#17261d}.dashboard-print-order,.dashboard-print-section,.dashboard-print-subsection{display:grid;gap:10px}.dashboard-print-section h2,.dashboard-print-subsection h3{margin:0;color:#2f4b3a;font-size:15px;letter-spacing:0}.dashboard-print-subsection h3{display:flex;justify-content:space-between}.dashboard-print-subsection h3 span{color:#7d897b;font-size:10px;font-weight:500}.print-status{justify-self:end;padding:5px 12px;border-radius:999px;background:#e8efdf;color:#2f4b3a;font-size:12px;font-weight:700}.print-meta{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px;margin:14px 0}.print-meta div{min-height:46px;padding:8px 10px;border:1px solid #d9d6c8;border-radius:6px;background:#faf8ef}.print-meta span{display:block;margin-bottom:4px;color:#7d897b;font-size:10px}.print-meta strong{font-size:12px;color:#203529}.print-meta .print-total{background:#2f4b3a;border-color:#2f4b3a}.print-meta .print-total span,.print-meta .print-total strong{color:#fff}.print-lines{width:100%;border-collapse:collapse;font-size:12px;page-break-inside:auto}.print-lines th,.print-lines td{border:1px solid #d6d2c4;padding:7px;text-align:center;vertical-align:middle}.print-lines th{background:#eef3e4;color:#2f4b3a;font-weight:700}.print-repeat-marker th{padding:3px 6px!important;background:#fff!important;color:#657365!important;font-size:9px!important;font-weight:700!important;text-align:right!important}.print-lines tbody tr:nth-child(2n) td{background:#fbfaf5}.print-lines td.numeric{text-align:center}.print-lines td.col-suggestionText{max-width:220px;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.4;text-align:left}.landscape-order-body{display:grid;gap:9px}.landscape-product-block{display:grid;gap:6px;page-break-inside:avoid;break-inside:avoid}.landscape-product-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;border:1px solid #d9d6c8;border-radius:6px;background:#faf8ef}.landscape-product-thumb{display:grid;place-items:center;width:38px;height:46px;overflow:hidden;border:1px solid #d7d4c6;border-radius:4px;background:#fffefa;color:#91a08d;font-size:8px;text-align:center}.landscape-product-thumb img{width:100%;height:100%;object-fit:cover}.landscape-product-title,.landscape-product-total{display:grid;gap:3px}.landscape-product-title span,.landscape-product-total span{color:#7d897b;font-size:9px}.landscape-product-title strong,.landscape-product-total strong{color:#203529;font-size:11px}.landscape-product-total{justify-items:end}.landscape-matrix{table-layout:fixed;font-size:8.5px}.landscape-matrix th,.landscape-matrix td{padding:3px}.landscape-summary-table thead th{background:#dfe8d2}.landscape-summary-table .landscape-index-col{width:28px}.landscape-summary-table .landscape-image-col,.landscape-summary-table .landscape-thumb-cell{width:38px}.landscape-summary-table .landscape-style-col{width:62px}.landscape-summary-table .landscape-name-col{width:86px}.landscape-summary-table .landscape-color-col,.landscape-summary-table .landscape-price-col,.landscape-summary-table .landscape-total-col,.landscape-summary-table .landscape-amount-col{width:48px}.landscape-summary-table .landscape-size-col{min-width:34px}.landscape-matrix .landscape-color-col{background:#f4f0df;color:#2f4b3a;font-weight:700}.landscape-summary-table .landscape-color-col{background:transparent;color:#203529;font-weight:600}.landscape-summary-table thead .landscape-color-col{background:#dfe8d2;color:#2f4b3a;font-weight:700}.landscape-summary-table .landscape-style-col,.landscape-summary-table .landscape-name-col{text-align:left}.landscape-quantity,.landscape-row-total,.landscape-column-total,.landscape-grand-total{font-weight:700}.landscape-empty{color:transparent}.landscape-row-total,.landscape-column-total{background:#fbfaf5}.landscape-grand-total{background:#2f4b3a;color:#fff}.landscape-row-amount,.landscape-grand-amount{font-weight:700}.landscape-grand-amount{background:#2f4b3a;color:#fff}.print-lines thead{display:table-header-group}.print-lines tfoot{display:table-footer-group}.print-lines tr{page-break-inside:avoid;break-inside:avoid}.print-image-cell{width:58px;height:66px;text-align:center!important;padding:4px!important}.print-image-cell img{display:block;width:48px;height:58px;object-fit:cover;margin:0 auto;border-radius:4px;border:1px solid #d7d4c6}.print-footer{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:14px;margin-top:14px;align-items:stretch}.purchase-print-footer{grid-template-columns:minmax(0,1fr)}.print-note,.print-sign{min-height:78px;padding:12px;border:1px solid #d9d6c8;border-radius:8px;background:#faf8ef}.print-note strong,.print-sign span{display:block;margin-bottom:8px;color:#2f4b3a;font-size:12px}.print-note p{margin:0;color:#405245;font-size:11px;line-height:1.75}.print-sign strong{display:block;height:34px;margin-top:40px;border-bottom:1px solid #9ea896}.comparison-print-order,.comparison-report{display:grid;gap:10px}.comparison-headline{padding:8px 10px;border:1px solid #d9d6c8;border-radius:6px;background:#eef3e4;color:#657365}.comparison-headline strong{color:#2f4b3a;font-size:12px}.comparison-chart,.comparison-table-section{display:grid;gap:6px;padding:10px;border:1px solid #d6d2c4;border-radius:6px;background:#fffefa;page-break-inside:avoid;break-inside:avoid}.comparison-chart h3,.comparison-table-section h3{margin:0;color:#2f4b3a;font-size:13px}.comparison-chart svg{width:100%;min-height:80px}.chart-legend,.chart-label,.chart-value,.chart-rate{font-family:Microsoft YaHei,Arial,sans-serif}.chart-label,.chart-rate{font-size:10px}.chart-value{font-size:9px}}.import-modal{--modal-pad: 24px;width:min(920px,calc(100vw - 40px));max-height:calc(100vh - 36px)}.import-duplicate-modal,.upload-confirm-modal,.backup-restore-modal{--modal-pad: 24px;width:min(860px,calc(100vw - 40px));max-height:calc(100vh - 36px)}.import-format-box{display:grid;gap:10px;margin:12px 0 18px;padding:16px 18px;border:1px solid rgba(83,103,82,.22);border-radius:8px;background:#fffcf4c2;color:#263b30}.import-format-box strong{font-size:16px}.import-format-box p{margin:0;line-height:1.8}.import-format-box em{color:#d7261e;font-style:normal;font-weight:700}.import-radio{display:inline-flex;align-items:center;gap:8px;width:fit-content;font-size:18px;font-weight:700}.inline-link{display:inline-flex;margin-left:6px;padding:3px 6px;border:0;color:#1f6feb;background:transparent;box-shadow:none}.inline-link:hover{color:#174ea6;background:#1f6feb14}.import-upload-form{display:grid;gap:14px}.import-file-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.import-file-row span{color:#6f7e70;font-weight:700}.import-progress,.import-result .form-success{margin:0}.import-conflict-list{display:grid;gap:8px;max-height:220px;overflow:auto;margin:12px 0}.import-conflict-list span,.import-conflict-list em{display:block;padding:8px 10px;border-radius:7px;background:#f4eadcc7;color:#6b5141;font-style:normal}.import-error-list{line-height:1.75}.inventory-status-filter button,.image-library-tabs button,.image-library-actions button,.image-library-pager button,.relation-list-toolbar button,.relation-pager button,.backup-record-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;min-width:0;padding:0 10px;border-radius:8px;font-size:12px;font-weight:850;line-height:1;white-space:nowrap}.inventory-status-filter button:not(.active),.image-library-tabs button:not(.active),.image-library-actions button:not(.primary):not(.danger-text),.image-library-pager button,.relation-list-toolbar button,.relation-pager button,.backup-record-actions button:not(.danger-solid){border:1px solid rgba(79,111,82,.18);color:var(--moss);background:#fffdf5eb;box-shadow:0 4px 10px #2f4b3a0d}.inventory-status-filter button svg,.image-library-tabs button svg,.image-library-actions button svg,.image-library-pager button svg,.relation-list-toolbar button svg,.relation-pager button svg,.backup-record-actions button svg{width:14px;height:14px;flex:0 0 14px}
