.label-preview-viewport{width:100%;max-width:90mm;margin:auto;position:relative;min-width:0}.label-preview-scaled{transform-origin:top left;position:absolute;top:0;left:0}.label-loading{background:var(--color-print-paper);display:grid;place-items:center;height:100%}.package-label{position:relative;width:90mm;height:55mm;background:var(--color-print-paper);color:var(--color-print-ink);font-family:var(--font-label);overflow:hidden;font-variant-numeric:tabular-nums}.label-company{position:absolute;top:2.5mm;left:3mm;right:3mm;height:3mm;text-align:right;font-size:7.1pt;font-weight:700;line-height:1;white-space:nowrap}.label-names{position:absolute;top:6.667mm;left:3mm;right:3mm;height:12.25mm}.label-names strong{position:absolute;left:0;width:100%;font-weight:700;line-height:1;white-space:nowrap}.label-names strong[lang=zh-Hans]{top:0;font-size:16.5pt}.label-names strong[lang=en]{top:7.083mm;font-size:14.2pt}.label-dates{position:absolute;top:21.25mm;left:3mm;right:3mm;font-size:7pt;line-height:1}.label-dates>div{height:4mm;display:flex;align-items:baseline;justify-content:space-between}.label-dates span{font-size:7pt;white-space:nowrap}.label-dates b{font-size:9.9pt;white-space:nowrap}.label-packsize{position:absolute;top:29.25mm;left:3mm;right:3mm;height:3mm;font-size:7.8pt;line-height:1;white-space:nowrap}.label-codes{position:absolute;top:0;right:0;bottom:0;left:0}.label-barcode-block{position:absolute;top:33.167mm;left:3mm;width:60mm;height:11.5mm}.label-barcode-block svg{display:block;max-width:100%;height:7.833mm;margin:auto}.label-barcode-value{position:absolute;top:8.5mm;width:100%;font-size:6.85pt;text-align:center;line-height:1}.label-storage{position:absolute;top:46mm;left:3mm;width:60mm;font-size:7.6pt;font-weight:700;line-height:1;white-space:nowrap}.label-storage>div{height:3.667mm}.label-qr,.label-qr-placeholder{position:absolute;top:31mm;left:66mm;width:20mm;height:20mm}.label-sequence{position:absolute;top:51.5mm;left:66mm;width:20mm;font-size:9pt;font-weight:700;line-height:1;text-align:center}.label-qr{object-fit:contain;image-rendering:pixelated}.label-qr-placeholder{border:.2mm dashed var(--color-rule);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-muted)}.label-qr-placeholder b{font-size:16pt;line-height:1.2}.label-qr-placeholder span{font-size:6pt}.print-history{--color-surface: #fff;--color-paper: #f4f5f7;--color-ink: #22252a;--color-muted: #5e6570;--color-rule: #dde1e6;--color-focus: #946305;--color-success: #145c44;--color-warning: #865716;--color-error: #a52828;--color-print-ink: #000;--color-print-paper: #fff;--font-label: Arial, "Microsoft YaHei", sans-serif;display:flex;flex-direction:column;gap:12px;width:100%;min-width:0;min-height:0;color:var(--color-ink);container-type:inline-size}.print-history .ph-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:0}.print-history label{display:grid;gap:6px;margin:0;font-size:13px;font-weight:600;min-width:0}.print-history input,.print-history select,.print-history button{min-height:44px;padding:9px 12px;border:1px solid var(--color-rule);border-radius:6px;background:var(--color-surface);color:var(--color-ink);font:inherit}.print-history button{cursor:pointer;white-space:nowrap}.print-history button:hover:not(:disabled){background:var(--color-paper)}.print-history button:active:not(:disabled){transform:translateY(1px)}.print-history button:disabled{opacity:.5;cursor:not-allowed}.print-history :is(button,input,select,summary):focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.print-history .ph-search{flex:1;min-width:190px}.print-history input,.print-history select{width:100%;min-width:0}.print-history .ph-more{flex-basis:100%;font-size:13px}.print-history summary{cursor:pointer;padding:4px 0}.print-history .ph-extra-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:8px}.print-history .ph-totals{display:flex;flex-wrap:wrap;gap:8px 20px;padding:10px 0;border-block:1px solid var(--color-rule);font-size:13px}.print-history .ph-totals b{font-size:18px}.print-history .ph-note{margin:0;font-size:12px;color:var(--color-muted)}.print-history .ph-error{margin:0;color:var(--color-error)}.print-history .ph-list{flex:1;min-height:0;overflow:auto;border:1px solid var(--color-rule);border-radius:8px;background:var(--color-surface)}.print-history table{width:100%;border-collapse:collapse;font-size:14px}.print-history th{position:sticky;top:0;background:var(--color-surface);color:var(--color-muted);text-align:left;font-size:12px;z-index:1}.print-history :is(th,td){padding:12px 14px;border-bottom:1px solid var(--color-rule);vertical-align:middle}.print-history td span,.print-history td small,.print-history td strong{display:block;min-width:0;overflow-wrap:anywhere}.print-history small{color:var(--color-muted);font-size:12px}.print-history .ph-count b{font-size:20px}.print-history .ph-product strong{font-size:16px}.print-history .ph-time{white-space:nowrap;font-variant-numeric:tabular-nums}.print-history .ph-status{font-size:12px}.print-history .ph-status-accepted{color:var(--color-success)}.print-history .ph-status-needsCheck{color:var(--color-warning)}.print-history .ph-status-failed,.print-history .ph-status-expired{color:var(--color-error)}.print-history .ph-empty{padding:36px 16px;color:var(--color-muted)}.print-history .ph-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--color-muted)}.print-history .ph-pagination>div{display:flex;gap:8px}.print-history .ph-dialog{border:1px solid var(--color-rule);border-radius:12px;padding:20px;background:var(--color-surface);color:var(--color-ink);width:min(680px,calc(100vw - 24px));max-height:90dvh;overflow:auto}.print-history .ph-dialog::backdrop{background:var(--color-ink);opacity:.45}.print-history .ph-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.print-history .ph-dialog h2{margin:0;font-size:20px;font-style:normal}.print-history .ph-label{background:var(--color-paper);padding:12px;margin-bottom:16px}.print-history dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:10px 16px;margin:0;font-size:13px}.print-history dt{color:var(--color-muted)}.print-history dd{margin:0;overflow-wrap:anywhere}@container (max-width: 700px){.print-history .ph-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.print-history .ph-search{grid-column:1 / -1;order:-1;min-width:0}.print-history .ph-filters>button,.print-history .ph-more{grid-column:1 / -1}.print-history .ph-filters input[type=date]{padding-inline:8px}.print-history .ph-extra-filters{grid-template-columns:minmax(0,1fr)}.print-history .ph-list{overflow:visible}.print-history table,.print-history tbody{display:block}.print-history thead{display:none}.print-history tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:14px;border-bottom:1px solid var(--color-rule)}.print-history td{display:block;padding:0;border:0;min-width:0}.print-history .ph-product{grid-column:1;grid-row:1}.print-history .ph-count{grid-column:2;grid-row:1;text-align:right}.print-history .ph-station{grid-column:1}.print-history .ph-time{font-size:12px}.print-history .ph-dialog{padding:14px}.print-history dl{grid-template-columns:100px minmax(0,1fr);gap:8px}}:root{--color-paper: #f4f5f7;--color-surface: #ffffff;--color-surface-soft: #f7f8fa;--color-ink: #22252a;--color-ink-soft: #838a94;--color-muted: #5e6570;--color-rule: #dde1e6;--color-rule-soft: #edf0f3;--color-accent: #ffc13b;--color-accent-ink: #2d230c;--color-accent-hover: #e7a825;--color-accent-soft: #fff2d4;--color-focus: #946305;--color-sidebar: #ffffff;--color-sidebar-muted: #5e6570;--color-sidebar-active: #f2f3f5;--color-error: #a52828;--color-error-paper: #fff2f1;--color-success: #145c44;--color-success-paper: #edf8f0;--color-warning: #865716;--color-warning-paper: #fff8e9;--color-print-ink: #000000;--color-print-paper: #ffffff;--color-preview-paper: #edf0f3;--color-backdrop: #22252a;--font-display: "Segoe UI", "Microsoft YaHei", Arial, sans-serif;--font-body: "Segoe UI", "Microsoft YaHei", Arial, sans-serif;--font-code: "Cascadia Mono", Consolas, monospace;--font-label: Arial, "Microsoft YaHei", sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--radius: 10px;--control-height: 44px;--shadow: 0 8px 28px #22252a12}*{box-sizing:border-box}html,body{margin:0;min-width:0;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:14px;line-height:1.45}button,input,select{font:inherit}button{min-height:44px;padding:9px 14px;border:1px solid var(--color-rule);border-radius:6px;background:var(--color-surface);color:var(--color-ink);cursor:pointer;white-space:nowrap}button:disabled,input:disabled,select:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}button:active:not(:disabled){transform:translateY(1px)}button.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink);font-weight:700}button.quiet{border-color:transparent;background:transparent}button.compact{padding:6px 9px;font-size:13px}button.full{width:100%}input,select{width:100%;min-width:0;min-height:44px;padding:9px 11px;border:1px solid var(--color-rule);border-radius:6px;color:var(--color-ink);background:var(--color-surface);font-size:16px}label{display:grid;gap:6px;margin:14px 0;font-size:12px;font-weight:600}h1,h2,p{margin:0;min-width:0}h1,h2{font-family:var(--font-display);font-style:normal;overflow-wrap:anywhere}h1{font-size:21px;line-height:1.25}h2{font-size:16px}p{overflow-wrap:anywhere}.muted{color:var(--color-muted)}.small{font-size:12px}.badge{display:inline-block;font-size:9px;font-weight:700;padding:3px 5px;border:1px solid var(--color-rule);border-radius:3px;color:var(--color-muted);line-height:1}.language-control{display:flex;gap:0}.language-control button{min-height:44px;padding:5px 8px;border:0;border-radius:4px;background:transparent;color:var(--color-muted);font-size:12px}.language-control .selected{color:var(--color-ink);font-weight:700}.mobile-shell{--mobile-header-height: calc(51px + max(7px, env(safe-area-inset-top))) ;max-width:620px;margin:auto;min-height:100dvh;background:var(--color-surface)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:58px;padding:max(7px,env(safe-area-inset-top)) 14px 7px;position:sticky;top:0;z-index:10;background:var(--color-surface);border-bottom:1px solid var(--color-rule)}.brand-lockup{display:flex;align-items:center;gap:7px;min-width:0}.brand-lockup strong{font-family:var(--font-display);font-size:25px;letter-spacing:-.045em;line-height:1}.app-name{display:none;font-size:11px;color:var(--color-muted)}.header-tools{display:flex;align-items:center;gap:2px}.account-menu{position:relative}.account-menu>summary{display:grid;place-items:center;width:44px;height:44px;cursor:pointer;list-style:none;border-radius:4px}.account-menu>summary::-webkit-details-marker{display:none}.account-menu-panel{position:absolute;right:0;top:calc(100% + 8px);width:min(360px,calc(100dvw - 28px));max-height:calc(100dvh - 86px);overflow-y:auto;padding:16px;background:var(--color-surface);border:1px solid var(--color-rule);border-radius:10px;box-shadow:var(--shadow)}.account-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.account-summary>span{min-width:0;overflow-wrap:anywhere;color:var(--color-muted);font-size:12px}.mobile-tabs{display:flex;position:sticky;top:var(--mobile-header-height);z-index:7;min-height:44px;padding:0 10px;background:var(--color-surface);border-bottom:1px solid var(--color-rule)}.mobile-tabs button{flex:1;min-width:0;padding:7px 8px;border:0;border-radius:0;background:transparent;font-size:12px;color:var(--color-muted)}.mobile-tabs button.selected{color:var(--color-accent);box-shadow:inset 0 -2px var(--color-accent);font-weight:700}main{padding:0 14px calc(88px + env(safe-area-inset-bottom))}.catalog-controls{position:sticky;top:calc(var(--mobile-header-height) + 44px);z-index:6;padding:14px 0 12px;background:var(--color-surface);border-bottom:1px solid var(--color-rule)}.search-field{margin:0 0 12px}.search-field input{min-height:46px;background:var(--color-surface-soft)}.compact-selects{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.compact-selects label{margin:0}.compact-selects select{min-height:42px;padding:8px 26px 8px 9px;font-size:13px;text-overflow:ellipsis}.mobile-current-brand{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;min-width:0}.mobile-current-brand strong{min-width:0;overflow:clip;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.mobile-current-brand button{flex-shrink:0}.mobile-brand-list{display:flex;flex-direction:column}.mobile-brand-option{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;min-height:52px;border:0;border-bottom:1px solid var(--color-rule);border-radius:0;padding:10px 6px;font-size:15px;line-height:1.3;text-align:left}.mobile-brand-option>span:first-child{display:-webkit-box;min-width:0;overflow:clip;white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mobile-brand-option>span:last-child{color:var(--color-muted)}.access-state{margin-top:16px}.access-state button{margin-top:14px}.package-lookup{padding-top:16px}.package-lookup-result{display:grid;gap:5px;margin-top:18px}.package-lookup-result code{overflow-wrap:anywhere;font-size:11px}.package-lookup-result dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-bottom:0;font-size:12px}.package-lookup-result dt{color:var(--color-muted)}.package-lookup-result dd{margin:0;overflow-wrap:anywhere}.mobile-shell main>.settings{margin-top:16px}.station-status{display:flex;align-items:flex-start;gap:6px;font-size:11px;color:var(--color-muted);margin-top:10px}.status-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--color-muted);margin-top:4px}.status-dot.ready{background:var(--color-success)}.catalog-heading{display:flex;align-items:center;justify-content:space-between;padding:16px 0 10px;color:var(--color-muted)}.catalog-heading h1,.catalog-heading>span{font-family:var(--font-body);font-size:12px;font-weight:600}.product-list{display:flex;flex-direction:column}.product-option{display:grid;grid-template-columns:minmax(0,1fr) minmax(58px,auto);align-items:center;gap:4px 12px;text-align:left;padding:12px 9px;border:0;border-bottom:1px solid var(--color-rule);border-radius:0;min-width:0;line-height:1.35;white-space:normal}.product-row-names{display:grid;gap:3px;min-width:0;overflow-wrap:anywhere}.product-row-names strong{font-size:15px;font-weight:650}.product-row-names>span{color:var(--color-muted);font-size:12px}.product-row-names small{font-family:var(--font-code);font-size:10px;color:var(--color-muted)}.product-row-pack{max-width:94px;font-size:12px;color:var(--color-ink);text-align:right;overflow-wrap:anywhere}.product-option>.error{grid-column:1 / -1;font-size:11px}.product-option.selected{background:var(--color-accent-soft);box-shadow:inset 0 0 0 1px var(--color-accent)}.loading{padding:28px 0;text-align:center}.card{padding:16px;background:var(--color-surface);border:1px solid var(--color-rule);border-radius:8px;margin-bottom:14px;min-width:0}.message{border-radius:6px;padding:12px;margin:14px 0;font-size:13px}.message.error{color:var(--color-error);border:1px solid var(--color-error);background:var(--color-error-paper)}.message.warning{color:var(--color-warning);border:1px solid var(--color-rule);background:var(--color-warning-paper)}.error{color:var(--color-error)!important}.job-card{margin-top:16px}.job-card h2{margin-bottom:8px}.job-card p+p{margin-top:8px}.job-card button{margin-top:14px;font-size:13px}.job-card.success{background:var(--color-success-paper)}.job-card.warning{background:var(--color-warning-paper)}.settings{font-size:13px}.account-menu-panel .settings{border:0;border-top:1px solid var(--color-rule);border-radius:0;padding:14px 0 0;margin:8px 0 0}.settings summary{cursor:pointer;font-weight:600;min-height:30px}.pair-explanation{margin-top:12px}.pair-manual{margin-top:14px}.pair-manual summary{color:var(--color-muted);font-size:12px}.pair-code{margin-top:14px;padding:12px;background:var(--color-surface-soft);border-radius:6px}.pair-code code{display:block;font-family:var(--font-code);font-size:18px;font-weight:700;letter-spacing:.04em;margin-bottom:10px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.pair-copy-button{margin-bottom:10px;font-size:13px}.pair-steps{margin:14px 0;padding-left:20px}.pair-steps li+li{margin-top:10px}.pair-code p+p{margin-top:8px}.connected-list{display:grid;gap:10px;border-top:1px solid var(--color-rule);margin-top:16px;padding-top:12px}.connected-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.connected-list strong,.connected-list small{display:block}.connected-list small{color:var(--color-muted);font-size:11px}.print-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(620px,100%);display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:12px;align-items:center;padding:12px 16px max(12px,env(safe-area-inset-bottom));background:var(--color-surface);border-top:1px solid var(--color-rule);z-index:8}.selected-summary{display:grid;gap:4px;min-width:0}.selected-summary strong{font-size:13px;font-weight:650;white-space:nowrap;text-overflow:ellipsis;overflow:clip}.selected-summary span{color:var(--color-muted);font-size:11px}.print-bar .primary{min-height:44px;font-size:14px}.print-dialog{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:18px;border:1px solid var(--color-rule);border-radius:12px;background:var(--color-surface);color:var(--color-ink);overflow-y:auto}.print-dialog::backdrop{background:var(--color-ink);opacity:.38}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.dialog-heading h2{font-size:18px}.dialog-heading p{color:var(--color-muted);font-size:11px;margin-top:6px}.close-dialog{min-width:44px;font-size:25px;padding:0 8px;line-height:1}.print-preview-paper{margin:16px 0 18px;padding:12px 4px;background:var(--color-preview-paper);border-radius:6px}.dialog-quantity{margin:0 0 16px}.dialog-quantity input{font-size:22px;font-variant-numeric:tabular-nums}.dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:16px}.dialog-actions .primary{flex:1}.login-screen{padding:24px 18px;min-height:100dvh;display:grid;place-items:center}.login-card{width:min(100%,390px);padding:24px}.topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.login-card h1{margin-bottom:8px}.login-card form{margin-top:22px}@media(min-width:375px){.app-name{display:inline}}@media(min-width:620px){.mobile-shell{border-right:1px solid var(--color-rule);border-left:1px solid var(--color-rule)}}@media(hover:hover){button:hover:not(:disabled){background:var(--color-surface-soft)}button.primary:hover:not(:disabled){background:var(--color-accent-hover)}.product-option.selected:hover:not(:disabled){background:var(--color-accent-soft)}}@media(prefers-reduced-motion:reduce){button:active:not(:disabled){transform:none}}
