.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{font-family:Inter,Microsoft YaHei,PingFang SC,Segoe UI,Arial,sans-serif;color:#172033;background:#f3f6fa;--color-primary-50: #eff6ff;--color-primary-100: #dbeafe;--color-primary-500: #2563eb;--color-primary-600: #2057d6;--color-primary-700: #1749bb;--color-recommend-50: #fff7ed;--color-recommend-100: #ffedd5;--color-recommend-500: #f97316;--color-recommend-700: #c2410c;--color-warning-50: #fefce8;--color-warning-100: #fef3c7;--color-warning-500: #eab308;--color-warning-700: #a16207;--color-danger-50: #fef2f2;--color-danger-100: #fee2e2;--color-danger-500: #dc2626;--color-danger-700: #b42318;--color-success-50: #ecfdf5;--color-success-100: #d1fae5;--color-success-600: #0f7a4f;--color-success-700: #047857;--color-neutral-50: #f8fafc;--color-neutral-100: #f1f5f9;--color-neutral-200: #e2e8f0;--color-neutral-300: #cbd5e1;--color-neutral-500: #64748b;--color-neutral-700: #334155;--color-neutral-900: #172033;--accent: var(--color-primary-600);--accent-strong: var(--color-primary-700);--border: #dfe6f0;--border-soft: #edf2f7;--surface: #fff;--surface-muted: var(--color-neutral-50);--text: var(--color-neutral-900);--muted: #65738b;--success: var(--color-success-600);--warning: var(--color-warning-700);--danger: var(--color-danger-700);--processing: var(--color-primary-600);--recommend: var(--color-recommend-500);--state-unselected-bg: var(--color-neutral-50);--state-unselected-border: var(--color-neutral-200);--state-unselected-text: var(--color-neutral-700);--state-selected-bg: var(--color-primary-600);--state-selected-border: var(--color-primary-600);--state-selected-text: #fff;--status-normal-bg: var(--color-primary-50);--status-normal-text: var(--color-primary-700);--status-recommend-bg: var(--color-recommend-50);--status-recommend-text: var(--color-recommend-700);--status-warning-bg: var(--color-warning-50);--status-warning-text: var(--color-warning-700);--status-danger-bg: var(--color-danger-50);--status-danger-text: var(--color-danger-700);--status-success-bg: var(--color-success-50);--status-success-text: var(--color-success-600);--control-height: 40px;--control-height-large: 42px;--control-height-compact: 36px;--control-radius: 8px;--control-radius-compact: 6px;--control-border: #d9e2ef;--control-bg: #fff;--control-text: #24324d;--control-placeholder: #94a3b8;--control-disabled-text: #94a3b8;--control-disabled-bg: #f8fafc;--control-focus-border: #89aef7;--control-focus-shadow: 0 0 0 3px rgba(32, 87, 214, .1);--button-height: 40px;--button-radius: 8px;--form-label: #475569;font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;touch-action:manipulation}body:has(.tablet-page){overflow:hidden;background:#eef4fb}body:has(.workstation-page){overflow:auto}button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}.tablet-auth-shell{min-height:100vh}.tablet-page{--tablet-blue: #0868d8;--tablet-blue-dark: #034ba8;--tablet-line: #dce8f6;--tablet-soft: #f5f9fe;--tablet-danger: #f44336;--tablet-success: #00a85a;display:grid;grid-template-rows:72px minmax(0,1fr) 78px;width:100vw;width:100%;max-width:100vw;height:100dvh;min-width:0;background:linear-gradient(90deg,rgba(8,104,216,.08),transparent 18%,transparent 82%,rgba(8,104,216,.08)),#edf5ff;font-family:Microsoft YaHei UI,Microsoft YaHei,PingFang SC,Segoe UI,Arial,sans-serif}.receive-station{grid-template-rows:72px minmax(0,1fr)}.batch-garment-row{cursor:pointer}.batch-garment-row.selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.batch-garment-row:focus-visible{outline:2px solid #2563eb;outline-offset:-2px}.batch-garment-row>.batch-garment-actions{display:flex;align-items:center;justify-content:center;min-width:0;height:100%;padding:0 4px}.wash-station-page.garment-batch-station-page .wash-batch-hero{min-height:76px;border-color:#bdd7fb;padding:11px 14px;background:linear-gradient(135deg,#eff6ff,#fff 72%);box-shadow:inset 4px 0 #1d6ed8,0 6px 14px #0f5cc814}.wash-station-page.garment-batch-station-page .wash-batch-hero strong{font-size:24px;line-height:1.05}.wash-station-page.garment-batch-station-page .wash-batch-hero span{font-size:13px}.wash-station-page.garment-batch-station-page .wash-batch-hero em{font-size:14px}.wash-station-page.garment-batch-station-page .wash-batch-hero b{padding:7px 12px;font-size:14px}.wash-station-page.garment-batch-station-page .wash-item-list-head{min-height:42px;padding:0 12px;background:linear-gradient(180deg,#f8fbff,#eef6ff)}.wash-station-page.garment-batch-station-page .wash-item-list-head strong{font-size:15px}.wash-station-page.garment-batch-station-page .batch-garment-table-head,.wash-station-page.garment-batch-station-page .batch-garment-row{grid-template-columns:minmax(112px,1.25fr) minmax(156px,1.15fr) minmax(68px,.45fr) 48px}.wash-station-page.garment-batch-station-page .batch-garment-table-head{top:42px;border-bottom-color:#bdd7fb}.wash-station-page.garment-batch-station-page .batch-garment-table-head>span{min-height:34px}.wash-station-page.garment-batch-station-page .batch-garment-row{min-height:48px;border-bottom-color:#dbe8f7}.wash-station-page.garment-batch-station-page .batch-garment-row.selected{background:linear-gradient(90deg,#eaf3ff,#f8fbff);box-shadow:inset 4px 0 #1d6ed8}.wash-station-page.garment-batch-station-page .batch-garment-row>.batch-order-link{min-height:48px}.wash-station-page.garment-batch-station-page .batch-garment-row .wash-item-remove{width:44px;min-width:44px;height:32px;min-height:32px;font-size:12px}.tablet-topbar{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1fr) max-content;align-items:center;gap:10px;padding:0 20px;color:#fff;background:linear-gradient(135deg,var(--tablet-blue-dark),#1478ef);box-shadow:0 6px 18px #0853b42e}.tablet-station-brand,.tablet-status{display:flex;align-items:center;gap:10px;min-width:0;font-size:18px;font-weight:800}.tablet-station-brand{min-width:0;min-height:44px;border:0;border-radius:8px;padding:0 10px 0 0;color:inherit;background:transparent;text-align:left;cursor:pointer}.tablet-station-brand:hover,.tablet-station-brand:focus-visible{background:#ffffff1f}.tablet-title{display:grid;place-items:center;gap:4px}.tablet-title strong{font-size:26px;line-height:1}.tablet-title span{font-size:14px;font-weight:800}.tablet-status{justify-content:flex-end;flex-wrap:nowrap;font-size:14px;white-space:nowrap}.tablet-status span,.tablet-status strong,.tablet-home-link{flex:0 0 auto;white-space:nowrap}.tablet-status span:first-child{max-width:136px;overflow:hidden;text-overflow:ellipsis}.tablet-home-link{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid rgba(255,255,255,.42);border-radius:8px;padding:0 10px;color:#fff;background:#ffffff24;font-size:14px;font-weight:900}.tablet-receive-grid{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(360px,1fr) minmax(320px,.98fr);gap:20px;min-height:0;padding:22px 24px 18px}.compact-receive-grid{grid-template-columns:minmax(270px,.78fr) minmax(340px,.88fr) minmax(320px,.93fr);align-items:stretch;min-height:0;padding-bottom:18px}.compact-receive-station .tablet-card{min-height:0;overflow:hidden;padding:22px}.compact-receive-station .tablet-card-title{padding-bottom:16px}.compact-receive-station .tablet-card-title h2{font-size:28px}.receive-info-panel,.receive-bind-panel,.receive-item-switcher{display:grid;align-content:start;gap:12px;min-height:0}.compact-receive-station .receive-info-panel,.compact-receive-station .receive-item-switcher{gap:14px}.compact-receive-station .receive-item-switcher{grid-template-rows:max-content max-content max-content max-content minmax(0,1fr);align-content:stretch;overflow:hidden}.compact-receive-station .receive-info-panel{grid-template-rows:max-content minmax(0,1fr);align-content:stretch;overflow:hidden}.compact-receive-station .receive-info-panel select{min-height:48px;font-size:15px}.receive-info-panel label{color:#4a5d77;font-size:16px;font-weight:900}.receive-info-panel select{width:100%;min-height:54px;border:1px solid #cfdceb;border-radius:8px;padding:0 14px;color:#071426;background:#fff;font-size:16px;font-weight:800;text-overflow:ellipsis}.receive-pending-orders{display:grid;grid-template-rows:max-content minmax(0,1fr);gap:10px;min-height:0;border:1px solid #dbe8f7;border-radius:8px;padding:12px;background:#fff}.receive-pending-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.receive-pending-head strong{overflow:hidden;color:#071426;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:900}.receive-pending-head span{flex:0 0 auto;border-radius:999px;padding:4px 9px;color:#0f766e;background:#dff7ef;font-size:13px;font-weight:900}.receive-pending-list{display:grid;align-content:start;gap:8px;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:2px}.receive-pending-order{display:grid;align-content:center;gap:9px;width:100%;min-width:0;min-height:82px;border:1px solid #e0e8f2;border-radius:8px;padding:11px 14px 11px 18px;color:#26354d;background:#f8fbff;text-align:left;cursor:pointer}.tablet-card .receive-pending-order{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:max-content max-content;align-content:center;align-items:stretch;justify-content:stretch;gap:9px;min-height:82px;padding:11px 14px 11px 18px;text-align:left}.receive-pending-order:hover{border-color:#b4c6dc}.receive-pending-order.active{border-color:#0f766e;background:#ecfdf5;box-shadow:inset 3px 0 #0f766e}.receive-pending-order span{display:grid;align-items:center;gap:8px;width:100%;min-width:0}.receive-pending-order .receive-pending-main,.receive-pending-order .receive-pending-sub{grid-template-columns:136px minmax(0,1fr) max-content}.receive-pending-order strong{overflow:hidden;color:#0f4fb3;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:900}.receive-pending-order em{color:#47617f;font-style:normal;font-size:14px;font-weight:800}.receive-pending-order small{overflow:hidden;color:#071527;text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.2;font-weight:900}.receive-pending-order .receive-pending-sub small:last-child{color:#0f4fb3;text-align:left}.receive-pending-order b{justify-self:end;border-radius:999px;padding:4px 11px;color:#c2410c;background:#fff3e6;font-size:14px;line-height:1;font-weight:900;white-space:nowrap}.receive-pending-empty{display:grid;place-items:center;min-height:96px;border:1px dashed #cfdceb;border-radius:8px;color:#64748b;font-size:14px;font-weight:900}.receive-pending-empty.compact{min-height:44px;padding:10px}.receive-order-summary{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;min-width:0;border:1px solid #dbe8f7;border-radius:8px;padding:12px;background:#f8fbff}.receive-order-summary-main,.receive-order-summary-grid div{display:grid;gap:5px;min-width:0}.receive-order-summary-main span,.receive-order-summary-grid span{color:#62728a;font-size:13px;font-weight:900}.receive-order-summary-main strong,.receive-order-summary-grid strong{overflow:hidden;color:#071426;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:900}.receive-order-no-row{display:flex;align-items:center;gap:10px;min-width:0}.receive-order-no-link,.tablet-card .receive-order-no-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;flex:1 1 auto;min-width:0;width:auto;min-height:0;height:auto;justify-self:start;overflow:hidden;border:0;border-radius:0;padding:0!important;color:#075bbb;background:transparent;box-shadow:none;justify-content:flex-start;text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.2;font-weight:900;cursor:pointer}.receive-order-no-link:disabled,.tablet-card .receive-order-no-link:disabled{color:#071426;cursor:not-allowed}.receive-order-no-link:not(:disabled):hover,.tablet-card .receive-order-no-link:not(:disabled):hover{text-decoration:underline}.receive-order-no-row em{flex:0 0 auto;border-radius:999px;padding:4px 9px;color:#0f5d9c;background:#eaf3ff;font-style:normal;font-size:13px;font-weight:900;line-height:1}.receive-order-summary-main p{overflow:hidden;margin:0;color:#42526b;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800}.receive-order-summary-grid{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(110px,1fr));gap:8px;min-width:0}.receive-order-summary-grid div{border-radius:8px;padding:8px;background:#fff}.receive-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.receive-section-title strong{overflow:hidden;color:#071426;text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:900}.receive-section-title span{flex:0 0 auto;border-radius:999px;padding:4px 9px;color:#1f4f83;background:#eaf3ff;font-size:13px;font-weight:900}.receive-info-card,.receive-current-item{display:grid;gap:8px;min-width:0;border:1px solid #dbe8f7;border-radius:8px;padding:16px;background:#f8fbff}.compact-receive-station .receive-info-card{gap:6px;padding:13px}.compact-receive-station .receive-info-card strong{font-size:21px}.compact-receive-station .receive-info-card p{font-size:14px}.receive-info-card span,.receive-current-item span{color:#62728a;font-size:14px;font-weight:900}.receive-info-card strong,.receive-current-item strong{overflow:hidden;color:#071426;text-overflow:ellipsis;white-space:nowrap;font-size:20px;font-weight:900}.receive-info-card p,.receive-current-item p{margin:0;color:#42526b;font-size:16px;font-weight:800;line-height:1.45}.receive-current-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-width:0}.receive-current-details p{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:start;gap:8px;min-width:0}.receive-current-details p span{color:#7a889b;font-size:13px}.receive-current-details p em{min-width:0;overflow:hidden;overflow-wrap:anywhere;color:#24344d;font-style:normal;text-overflow:ellipsis}.receive-current-item b{justify-self:start;border-radius:999px;padding:6px 12px;color:#fff;font-size:14px;font-weight:900}.receive-current-item b.done{background:#0f7a4f}.receive-current-item b.todo{background:#ff9500}.compact-receive-station .receive-bind-panel{overflow:auto}.compact-receive-station .receive-current-item{padding:14px}.compact-receive-station .receive-current-item strong{font-size:21px}.compact-receive-station .receive-current-item p{font-size:14px}.compact-receive-station .rfid-inputs{gap:10px;padding:12px 0}.compact-receive-station .workstation-read-row{display:grid;grid-template-columns:minmax(0,1fr) 136px;gap:10px;align-items:stretch;padding:0}.compact-receive-station .workstation-read-row input{min-width:0;min-height:48px;border-color:#b9cbe2;font-size:17px}.compact-receive-station .workstation-read-row button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:48px;height:48px;padding-inline:8px;font-size:15px;font-weight:900;white-space:nowrap}.compact-receive-station .workstation-read-row button svg{width:17px;height:17px;flex:0 0 auto}.compact-receive-station .rfid-hint{margin-top:0;color:#42526b;font-size:15px;line-height:1.45}.compact-receive-station .receive-rfid-status-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:10px;min-width:0}.compact-receive-station .rfid-readout{gap:12px;padding:16px}.compact-receive-station .rfid-readout p{font-size:16px}.compact-receive-station .rfid-state{min-width:78px;font-size:14px}.compact-receive-station .rfid-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.compact-receive-station .rfid-port-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.compact-receive-station .rfid-port-refresh{min-width:72px;padding:0 14px}.compact-receive-station .receive-bind-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-width:0;min-height:48px;height:48px;border-color:transparent;border-radius:8px;padding:0 14px;color:#fff;background:#16a34a;box-shadow:0 8px 16px #16a34a2e;font-size:16px;font-weight:900;white-space:nowrap}.compact-receive-station .receive-bind-actions button svg{width:18px;height:18px;flex:0 0 auto}.compact-receive-station .workstation-read-card>.rfid-read-echo{display:none}.compact-receive-station .workstation-read-card>.workstation-info-card{display:none}.compact-receive-station .receive-workbench-column>.workstation-read-card{align-self:start;gap:12px;min-width:0}.compact-receive-station .receive-workbench-column>.workstation-read-card .tablet-card-title{margin-bottom:0}.compact-receive-station .receive-bind-actions{display:grid;gap:10px;min-width:0}.compact-receive-station .receive-bound-tag-echo{min-width:0}.compact-receive-station .receive-workbench-column{display:grid;grid-template-rows:max-content minmax(0,1fr) max-content;gap:12px;min-width:0;height:100%;min-height:0;overflow:hidden}.compact-receive-station .receive-photo-panel{display:grid;grid-template-rows:max-content minmax(0,1fr);align-content:stretch;gap:10px;min-width:0;min-height:0;border:1px solid #dde7f3;border-radius:8px;padding:12px;background:#fbfdff}.receive-submit-dock{position:sticky;bottom:0;z-index:20;padding-top:6px;background:#edf5ff}.receive-submit-dock button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;height:52px;border:0;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0c67d8,#137cf2);box-shadow:0 10px 22px #0868d833;font-size:17px;font-weight:900;cursor:pointer}.receive-submit-dock button svg{width:22px;height:22px;flex:0 0 auto}.receive-submit-dock button:disabled{cursor:not-allowed;opacity:.55}.compact-receive-station .receive-photo-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.compact-receive-station .receive-photo-title{display:inline-flex;align-items:center;gap:10px;flex:1 1 auto;min-width:0}.compact-receive-station .receive-photo-head strong{font-size:16px}.compact-receive-station .receive-photo-title span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-receive-station .receive-photo-head button,.compact-receive-station .receive-photo-empty button{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;border:0;border-radius:8px;padding:10px 14px;color:#fff;background:#0f6fff;font-weight:800}.compact-receive-station .receive-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));align-content:start;gap:8px;overflow:auto;min-height:0}.compact-receive-station .receive-photo-thumb{position:relative;display:grid;gap:4px;min-width:0}.compact-receive-station .receive-photo-thumb>button:first-child{overflow:hidden;width:100%;aspect-ratio:4 / 3;border:1px solid #d8e3f0;border-radius:8px;padding:0;background:#eef4fb}.compact-receive-station .receive-photo-grid img{width:100%;height:100%;object-fit:cover;display:block}.compact-receive-station .receive-photo-uploading{position:absolute;top:0;right:0;bottom:0;left:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#fff;background:#0f172a94;font-size:13px;font-weight:800}.compact-receive-station .receive-photo-uploading.failed{background:#b42318c7}.compact-receive-station .receive-photo-url{display:block;min-width:0;overflow:hidden;color:#52657a;font-size:11px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.compact-receive-station .receive-photo-delete{position:absolute;top:3px;right:3px;display:inline-flex;align-items:center;justify-content:center;width:16px;min-width:16px;height:16px;min-height:16px;border:1px solid rgba(255,255,255,.92);border-radius:999px;padding:0;color:#fff;background:#ef4444;box-shadow:0 2px 5px #0f172a3d}.compact-receive-station .receive-photo-delete svg{flex:0 0 auto}.compact-receive-station .receive-photo-empty{display:grid;align-items:center;gap:12px;border:1px dashed #b9c8da;border-radius:8px;padding:14px;color:#627188;font-weight:700}.compact-receive-station .tablet-alert{margin-top:0;font-size:15px}.tablet-left-stack,.tablet-right-stack{display:grid;grid-template-rows:minmax(0,1fr) max-content max-content;gap:22px;min-height:0}.member-hero{display:grid;grid-template-columns:72px 1fr;gap:14px;min-height:310px;border-radius:8px;padding:34px 34px 28px;color:#fff;background:linear-gradient(145deg,#0e66df,#207cf3);box-shadow:0 14px 30px #1066de3d}.member-avatar{display:grid;place-items:center;width:72px;height:72px;border-radius:999px;background:#fffffff0;color:var(--tablet-blue)}.member-hero strong,.member-hero span{display:block}.member-hero strong{margin-top:10px;font-size:20px}.member-hero span{margin-top:8px;color:#ffffffb8;font-size:16px}.member-hero dl{grid-column:1 / -1;display:grid;gap:22px;margin:24px 0 0}.member-hero dl div{display:flex;align-items:baseline;gap:12px;font-size:25px;font-weight:800}.member-hero dt,.member-hero dd{margin:0}.tablet-card{border:1px solid var(--tablet-line);border-radius:8px;padding:26px;background:#fffffff5;box-shadow:0 14px 32px #1a407014}.member-selector,.intake-form{display:grid;align-content:start;gap:14px}.member-select{display:grid;gap:12px;min-width:0}.member-select-title{color:#1f2f46;font-size:15px;font-weight:900}.member-search-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;border:1px solid #cfdceb;border-radius:8px;padding:0 12px;background:#fff}.member-search-field input{min-height:44px;border:0;padding:0;outline:0;background:transparent;font-size:14px}.member-search-results{display:grid;gap:8px;max-height:210px;overflow:auto}.member-search-results button{display:grid;justify-items:start;gap:3px;min-height:48px;border:1px solid #dbe5f2;border-radius:8px;padding:8px 10px;color:#1f2f46;background:#fff;text-align:left}.member-search-results button.active{border-color:#2563eb;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb2e}.member-search-results strong{font-size:14px}.member-search-results span,.member-search-empty{color:#64748b;font-size:12px;font-weight:700}.member-select-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid #2563eb;border-radius:8px;padding:0 14px;color:#fff;background:#2563eb;font-weight:900}.member-profile-card{position:relative;display:grid;gap:14px;overflow:hidden;border-radius:8px;padding:18px;color:#fff;background:linear-gradient(145deg,#ffffff2e,#fff0 38%),linear-gradient(135deg,#334155,#0f172a);box-shadow:0 14px 28px #0f172a29}.member-profile-card:after{content:"";position:absolute;inset:auto -46px -66px auto;width:170px;height:170px;border-radius:999px;background:radial-gradient(circle at 34% 34%,rgba(255,255,255,.22),rgba(255,255,255,.06) 58%,transparent 62%);pointer-events:none}.member-profile-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 0 36%,rgba(255,255,255,.14) 47%,transparent 58%),linear-gradient(180deg,rgba(255,255,255,.08),transparent 46%);opacity:.72;pointer-events:none}.member-profile-card.level-standard{background:linear-gradient(145deg,#ffffff29,#fff0 40%),linear-gradient(135deg,#64748b,#334155 48%,#111827);box-shadow:0 14px 28px #3341552e}.member-profile-card.level-silver{background:linear-gradient(145deg,#ffffff5c,#fff0 42%),linear-gradient(135deg,#dbeafe,#94a3b8 44%,#334155);box-shadow:0 14px 28px #47556933}.member-profile-card.level-silver .member-card-head span,.member-profile-card.level-silver .member-card-person span,.member-profile-card.level-silver .member-balance-box span,.member-profile-card.level-silver dt{color:#334155}.member-profile-card.level-silver .member-card-head strong,.member-profile-card.level-silver .member-card-person strong,.member-profile-card.level-silver .member-balance-box strong,.member-profile-card.level-silver dd{color:#0f172a}.member-profile-card.level-silver .member-card-level{color:#1e3a5f;border-color:#1e3a5f7a;background:#ffffff9e}.member-profile-card.level-silver .member-balance-box,.member-profile-card.level-silver dl div{border-color:#1e3a5f47;background:#ffffff7a}.member-profile-card.level-gold{background:linear-gradient(145deg,#ffffff42,#fff0 36%),linear-gradient(135deg,#f8d77a,#d59a20 42%,#8a4b12);box-shadow:0 16px 30px #b453093d}.member-profile-card.level-platinum,.member-profile-card.level-vip{background:linear-gradient(145deg,#ffffff6b,#fff0 42%),linear-gradient(135deg,#eef6ff,#a8c7dd 38%,#536a86);box-shadow:0 16px 30px #536a863d}.member-profile-card.level-diamond{background:radial-gradient(circle at 18% 16%,rgba(125,211,252,.36),transparent 32%),linear-gradient(145deg,#ffffff2e,#fff0 36%),linear-gradient(135deg,#101827,#1e1b4b 46%,#020617);box-shadow:0 18px 34px #0f172a4d}.member-card-head,.member-card-person,.member-balance-box,.member-profile-card dl{position:relative;z-index:1}.member-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.member-card-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:999px;background:#ffffffeb}.member-avatar-token{display:inline-grid;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:999px;color:#2563eb;background:#eff6ff}.member-avatar-token img{width:100%;height:100%;object-fit:cover}.member-card-head span,.member-card-person span,.member-balance-box span,.member-profile-card dt{color:#ffffffb8;font-size:12px;font-weight:800}.member-card-head strong,.member-card-person strong{display:block;overflow:hidden;margin-top:2px;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:900}.member-card-level{border:1px solid rgba(255,255,255,.38);border-radius:999px;padding:5px 9px;font-size:12px;font-style:normal;font-weight:900}.member-card-person strong{font-size:16px}.member-balance-box{display:grid;gap:4px;border:1px solid rgba(255,255,255,.26);border-radius:8px;padding:14px;background:#ffffff1f}.member-balance-box strong{font-size:30px;line-height:1}.member-profile-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.member-profile-card dl div{border-radius:8px;padding:10px;background:#ffffff1a}.member-profile-card dd{margin:4px 0 0;font-size:15px;font-weight:900}.member-select.large .member-select-title,.member-select.large .member-search-results strong{font-size:16px}.member-select.large .member-search-field input{min-height:52px;font-size:16px}.member-select.large .member-profile-card{min-height:260px;padding:24px}.member-select.large .member-balance-box strong{font-size:30px}.member-select-modal{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(960px,calc(100vw - 80px));height:min(620px,calc(100vh - 80px));max-height:calc(100vh - 80px);overflow:hidden}.member-dialog-body{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:12px;min-height:0;min-width:0;overflow-x:hidden;padding:18px;background:#f8fafc}.member-dialog-search{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:46px;border:2px solid #2563eb;border-radius:8px;padding:0 14px;color:#2563eb;background:#fff;box-shadow:0 10px 24px #2563eb1f}.member-dialog-search input{width:100%;min-width:0;height:46px;border:0;padding:0;color:#0f172a;background:transparent;outline:0;font-size:16px;font-weight:800}.member-dialog-search input::placeholder{color:#94a3b8;font-weight:700}.member-dialog-search button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:999px;color:#64748b;background:#eef2f7}.member-dialog-count{display:flex;align-items:center;justify-content:space-between;min-height:28px;padding:0 2px;color:#475569;font-size:14px;font-weight:900}.member-dialog-count strong{color:#2563eb;font-size:16px}.member-dialog-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(144px,.34fr) minmax(104px,.22fr);gap:12px;padding:0 16px;color:#64748b;font-size:12px;font-weight:900}.member-dialog-results{display:grid;align-content:start;gap:8px;min-height:0;min-width:0;max-height:none;overflow:auto;overflow-x:hidden;padding-right:4px}.member-dialog-row{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(144px,.34fr) minmax(104px,.22fr);align-items:center;gap:12px;min-height:76px;border:1px solid #dbe5f2;border-radius:8px;padding:10px 16px;color:#1f2937;background:#fff;text-align:left;box-shadow:0 1px 2px #0f172a0a;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.member-dialog-row:before{content:none}.member-dialog-row:hover,.member-dialog-row:focus-visible{border-color:#93c5fd;background:#f8fbff;box-shadow:0 6px 16px #2563eb1a;outline:0}.member-dialog-row.active{border-color:#2563eb;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb38,0 8px 18px #2563eb1f}.member-dialog-main{display:grid;gap:6px;min-width:0}.member-dialog-name{display:block;overflow:hidden;color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:900;line-height:1.2}.member-dialog-meta{display:flex;flex-wrap:wrap;gap:6px 16px;min-width:0;color:#64748b;font-size:13px;font-weight:800}.member-dialog-meta span{overflow:hidden;max-width:220px;text-overflow:ellipsis;white-space:nowrap}.member-dialog-balance{overflow:hidden;color:#0f766e;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.member-dialog-level{overflow:hidden;color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-style:normal;font-weight:800}.member-dialog-level{box-sizing:border-box;justify-self:start;max-width:100%;border:1px solid #dbeafe;border-radius:999px;padding:4px 10px;color:#1d4ed8;background:#eff6ff;line-height:1.1;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.delivery-rfid-check,.pickup-rfid-check{display:grid;gap:8px;min-width:0}.delivery-rfid-check>span,.pickup-rfid-check>span{color:var(--tablet-text);font-size:14px;font-weight:800}.delivery-rfid-check input,.pickup-rfid-check input{min-width:0;min-height:48px;border:1px solid var(--tablet-line);border-radius:8px;padding:0 12px;color:var(--tablet-text);background:#fff;font:inherit}.delivery-rfid-check small,.pickup-rfid-check small{color:var(--tablet-muted);font-size:13px;font-weight:700}.delivery-rfid-check>div,.pickup-rfid-check>div{display:flex;flex-wrap:wrap;gap:6px}.delivery-rfid-check>div button,.pickup-rfid-check>div button{min-height:34px;border:1px solid #bfdbfe;border-radius:6px;padding:0 9px;color:#1d4ed8;background:#eff6ff;font-size:12px;font-weight:800}.member-dialog-level.level-gold{border-color:#fde68a;color:#92400e;background:#fffbeb}.member-dialog-level.level-platinum,.member-dialog-level.level-vip{border-color:#c7d2fe;color:#3730a3;background:#eef2ff}.member-dialog-level.level-diamond{border-color:#ddd6fe;color:#5b21b6;background:#f5f3ff}.member-dialog-balance{color:#0f766e;text-align:right}.tablet-card label{color:#4a5d77;font-size:16px;font-weight:800}.tablet-card input,.tablet-card select{width:100%;min-height:52px;border:1px solid #cfdceb;border-radius:8px;padding:0 16px;color:#071426;background:#fff;font-size:19px}.tablet-primary,.tablet-card button,.tablet-bottom-nav button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;border:1px solid #a9c5e9;border-radius:8px;padding:0 18px;color:var(--tablet-blue-dark);background:#fff;font-size:16px;font-weight:800}.tablet-primary,.tablet-card button.tablet-primary,.tablet-submit{border-color:transparent;color:#fff;background:linear-gradient(135deg,#0c67d8,#137cf2);box-shadow:0 12px 20px #0868d833}.rfid-panel{display:grid;grid-template-rows:max-content max-content max-content 1fr max-content max-content;min-height:0}.receive-progress{display:grid;grid-template-columns:1fr .64fr minmax(128px,1fr);gap:10px;padding:0}.receive-progress div{display:grid;gap:5px;min-width:0;min-height:64px;border:1px solid #dbe8f7;border-radius:8px;padding:8px 10px 7px;background:#f8fbff}.receive-progress span{color:#62728a;font-size:14px;font-weight:800}.receive-progress strong{overflow:hidden;color:#071426;font-size:15px;line-height:1.1;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.tablet-card-title,.photo-title{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--tablet-line);padding-bottom:20px}.tablet-card-title h2{margin:0;font-size:34px;letter-spacing:0}.rfid-inputs{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:14px;padding:28px 0}.rfid-readout{display:grid;align-content:start;gap:22px;border-radius:8px;padding:26px 30px;background:linear-gradient(180deg,#fbfdff,#f4f8fe)}.rfid-readout p{margin:0;font-size:25px}.rfid-state{display:inline-flex;min-width:96px;justify-content:center;border-radius:999px;padding:6px 12px;color:#fff;background:#8a97aa;font-size:16px;font-weight:900}.rfid-state.blank{border:1px solid #9fb0c7;color:#22324a;background:#e5edf7}.rfid-state.released{background:var(--tablet-success)}.rfid-state.bound,.rfid-state.sorting,.rfid-state.processing,.rfid-state.shelved{background:#ff9500}.rfid-state.repair_processing{background:var(--recommend)}.rfid-state.pending_sorting,.rfid-state.pending_dry_clean,.rfid-state.pending_wet_clean,.rfid-state.pending_stain,.rfid-state.pending_dry,.rfid-state.pending_iron,.rfid-state.pending_quality,.rfid-state.pending_shelf,.rfid-state.pending_repair{border:1px solid #9bb5d4;color:#1f4f83;background:#eaf3ff}.rfid-state.retired,.rfid-state.lost{background:var(--tablet-danger)}.rfid-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.tablet-alert{margin-top:16px;border-radius:8px;padding:14px 16px;max-width:100%;min-width:0;overflow-wrap:anywhere;font-size:16px;line-height:1.35;font-weight:800}.tablet-alert.success{color:#006b3a;background:#e8fff3}.tablet-alert.danger{color:#b01209;background:#fff0ee}.photo-panel{display:grid;gap:20px}.receive-item-list{display:grid;grid-template-rows:max-content max-content minmax(0,1fr);min-height:0}.receive-items{display:grid;align-content:start;gap:10px;min-height:0;overflow:auto;padding-top:0}.receive-items div,.receive-items button{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) 84px;align-items:center;gap:10px;min-height:54px;border:1px solid #dbe4f0;border-radius:8px;padding:8px 10px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.receive-item-switcher .receive-items button{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) 84px;min-height:70px;text-align:left;cursor:pointer}.receive-items div.pending,.receive-items button.pending{border-color:#d9e2ee;background:#fff}.receive-items div.bound,.receive-items button.bound{border-color:#0f766e;background:#ecfdf5}.receive-items button.active{border-color:#1677ff;background:#edf5ff;box-shadow:inset 6px 0 #1677ff,0 8px 18px #1677ff29}.receive-items span,.receive-items strong,.receive-items em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.receive-items span{color:#071426;font-weight:900}.receive-item-main,.receive-item-extra{display:grid;gap:5px}.receive-item-title-row{display:flex;align-items:center;gap:6px;min-width:0}.receive-item-main b{min-width:0;overflow:hidden;color:#071426;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.receive-items em.receive-item-insurance{flex:0 0 auto;justify-self:auto;border:1px solid #fed7aa;border-radius:4px;padding:1px 5px;color:#c2410c;background:#fff7ed;font-size:10px;font-style:normal;font-weight:900;line-height:16px}.receive-item-main small,.receive-item-extra small{min-width:0;overflow:hidden;color:#62728a;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}.receive-items strong{justify-self:start;border-radius:999px;padding:4px 9px;font-size:13px;font-weight:900}.receive-items strong.untagged{color:#a64b00;background:#fff0d9;box-shadow:inset 0 0 0 1px #ffd39a}.receive-items strong.tagged{color:#0f766e;background:#d9f7e8;box-shadow:inset 0 0 0 1px #0f766e}.receive-items em{justify-self:end;border-radius:999px;padding:4px 8px;color:#5b6b82;background:#eef3f8;font-size:13px;font-style:normal;font-weight:800;text-align:right}.receive-items button.active span,.receive-items button.active b,.receive-items button.active small,.receive-items button.active strong,.receive-items button.active em{color:#0f2f5f}.receive-items button.active .receive-item-main small,.receive-items button.active .receive-item-extra small{color:#48617f}.receive-items button.active strong{background:#fff}.receive-items button.active strong.untagged{color:#9a3412;box-shadow:inset 0 0 0 1px #f8b867}.receive-items button.active strong.tagged{color:#0f766e;box-shadow:inset 0 0 0 1px #0f766e}.receive-items button.active em{color:#31506f;background:#dce9f8}.receive-items button.active em.receive-item-insurance{color:#9a3412;background:#fff7ed;border-color:#f8b867}.receive-photo-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:38px;border:0;border-radius:8px;padding:0 10px;color:#fff;background:#0f7a4f;font-size:13px;font-weight:900}.receive-items .empty{display:block;color:#62728a;font-size:16px;font-weight:800}.photo-title{justify-content:flex-start;font-size:25px}.photo-drop{display:grid;place-items:center;gap:14px;min-height:190px;border:2px dashed #c8d8eb;border-radius:8px;color:#2e70d2;background:#f8fbff;font-size:16px;font-weight:800}.photo-chips{display:flex;flex-wrap:wrap;gap:10px}.photo-chips span,.photo-chips button{min-height:38px;border-radius:999px;padding:0 14px;color:#0b5fc7;background:#eef6ff;font-size:15px;font-weight:800}.receive-photo-summary{display:grid;gap:14px}.receive-photo-summary p{margin:0;color:#42526b;font-size:15px;font-weight:800;line-height:1.6}.tablet-bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr)) minmax(130px,1fr) 180px;align-items:center;gap:12px;border-top:1px solid var(--tablet-line);padding:12px 44px;background:#fffffff5}.tablet-bottom-nav button.active{color:#fff;border-color:transparent;background:var(--tablet-blue)}.tablet-placeholder-page{grid-template-rows:72px minmax(0,1fr)}.tablet-placeholder-main{display:grid;place-items:center;gap:24px;padding:48px}.tablet-placeholder-main div{display:grid;gap:14px;width:min(760px,80vw);border:1px solid var(--tablet-line);border-radius:8px;padding:48px;text-align:center;background:#fff;box-shadow:0 14px 32px #1a407014}.tablet-placeholder-main strong{font-size:42px}.tablet-placeholder-main span{color:#51647e;font-size:16px}.tablet-placeholder-main button{min-height:54px;border:0;border-radius:8px;padding:0 28px;color:#fff;background:var(--tablet-blue);font-size:20px;font-weight:900}.workstation-page{grid-template-rows:72px minmax(0,1fr);height:auto;min-height:100vh;overflow:auto}.workstation-grid{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1fr) minmax(360px,1fr);gap:20px;align-items:start;min-height:calc(100dvh - 72px);padding:20px 22px}.workstation-toast{position:fixed;top:68px;left:50%;z-index:90;display:inline-flex;align-items:center;gap:8px;min-height:48px;border-radius:999px;padding:0 18px;color:#fff;background:#0f7a4f;box-shadow:0 16px 36px #0f172a38;font-size:17px;font-weight:900;transform:translate(-50%)}.workstation-toast.success{background:#0f7a4f}.sort-station-page .workstation-grid{grid-template-columns:minmax(320px,.82fr) minmax(430px,1.08fr) minmax(360px,.9fr);gap:18px;align-items:stretch;height:calc(100dvh - 72px);min-height:0}.workstation-read-card,.workstation-param-card,.workstation-action-card{display:grid;align-content:start;gap:20px;min-height:0}.sort-station-page .workstation-read-card,.sort-station-page .workstation-param-card,.sort-station-page .workstation-action-card{gap:14px;height:100%;max-height:none;overflow:auto}.sort-station-page .tablet-card-title{padding-bottom:14px}.sort-station-page .tablet-card-title h2{font-size:28px}.sort-station-page .workstation-info-card{gap:8px;padding:12px}.sort-station-page .workstation-info-hero{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label status" "name status" "member member" "order order";align-items:start;gap:4px 8px;padding-bottom:8px}.sort-station-page .workstation-info-hero>strong{font-size:22px;line-height:1.12}.sort-station-page .workstation-hero-member{grid-area:member;display:flex;align-items:center;gap:8px;min-width:0;border-radius:8px;padding:5px 8px;background:#eef6ff}.sort-station-page .workstation-hero-member b{min-width:0;overflow:hidden;color:#244263;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.2}.sort-station-page .workstation-hero-member b:first-child{color:#071527;font-size:15px;font-weight:900}.sort-station-page .workstation-info-meta,.sort-station-page .workstation-item-details{gap:6px}.sort-station-page .workstation-info-meta p,.sort-station-page .workstation-item-details span{min-height:42px}.sort-station-page .workstation-item-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sort-station-page .workstation-item-details span{align-content:start;gap:3px;min-height:42px;padding:6px 8px}.sort-station-page .workstation-item-details em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.sort-station-page .workstation-item-details strong,.sort-station-page .workstation-item-details .workstation-order-link{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:1.2}.sort-station-page .workstation-item-details .order-detail-row{grid-column:span 2;min-height:42px}.workstation-item-details .insurance-detail-row{grid-column:1 / -1;border-color:#f2c886;background:#fff8eb}.workstation-item-details .insurance-detail-row strong{color:#a15c00}.workstation-page .workstation-read-card,.workstation-page .workstation-param-card,.workstation-page .workstation-action-card{max-height:calc(100vh - 128px);overflow:auto}.sort-station-page .workstation-read-card,.sort-station-page .workstation-param-card,.sort-station-page .workstation-action-card{max-height:none}.workstation-read-row{display:grid;grid-template-columns:minmax(0,1fr) repeat(2,max-content);gap:12px}.workstation-read-row button:only-of-type{min-width:128px}.sort-station-page .workstation-read-card>.rfid-read-echo{display:none}.rfid-read-echo{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;background:#f8fbff}.rfid-read-echo span{color:#61748d;font-size:13px;font-weight:900}.rfid-read-echo strong{min-width:0;overflow-wrap:anywhere;color:#071426;font-size:15px;font-weight:900}.workstation-info-card{display:grid;gap:12px;border-radius:8px;padding:16px;background:linear-gradient(180deg,#f7fbff,#f1f7fe);border:1px solid #dbe8f7}.workstation-info-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label status" "name status" "order order";align-items:center;gap:6px 12px;min-width:0;border-bottom:1px solid #dbe8f7;padding-bottom:14px}.workstation-info-hero>span:not(.rfid-state),.workstation-info-meta span{color:#61748d;font-size:14px;font-weight:900}.workstation-info-hero>span:not(.rfid-state){grid-area:label}.workstation-info-hero strong{grid-area:name;min-width:0;overflow-wrap:anywhere;color:#071527;font-size:26px;line-height:1.15;text-align:left}.workstation-info-hero em{grid-area:order;color:#2f5f9e;font-size:16px;font-style:normal;font-weight:900}.workstation-info-hero .rfid-state{grid-area:status;justify-self:end;margin-top:0}.workstation-info-card .workstation-order-link{display:inline;min-width:0;min-height:0;overflow:hidden;border:0;padding:0;color:#0f5cc8;background:transparent;box-shadow:none;font:inherit;font-size:16px;font-weight:900;line-height:1.25;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.workstation-info-card .workstation-order-link:hover{color:#084aa3;text-decoration:underline}.workstation-info-status{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.workstation-info-status small{min-width:0;overflow-wrap:anywhere;color:#50657f;font-size:14px;font-weight:800;text-align:right}.workstation-info-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workstation-info-meta p{display:grid;gap:4px;min-width:0;margin:0;border-radius:8px;padding:9px 10px;background:#fff;border:1px solid #edf3fb}.workstation-info-meta strong{min-width:0;overflow-wrap:anywhere;color:#071527;font-size:16px;text-align:left}.workstation-item-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:2px}.workstation-item-details span{display:grid;gap:4px;min-width:0;border-radius:8px;padding:9px 10px;background:#fff;border:1px solid #e1ebf5}.workstation-item-details em{color:#5e7188;font-size:14px;font-style:normal;font-weight:800}.workstation-item-details strong{overflow-wrap:anywhere;color:#071527;font-size:16px;line-height:1.25;text-align:left}.workstation-param-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sort-ai-summary{display:grid;gap:8px;border:1px solid #d6e5f7;border-radius:8px;padding:16px 18px;background:#f8fbff}.sort-ai-summary span,.sort-ai-reasons h3{margin:0;color:#62728a;font-size:16px;font-weight:900}.sort-ai-summary strong{color:#071527;font-size:30px;line-height:1.1}.sort-ai-summary p,.sort-ai-summary small,.sort-ai-reasons p{margin:0;color:#20344f;font-size:16px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}.sort-ai-summary small{color:#6a7890;font-size:14px;font-weight:800}.sort-ai-reasons{display:grid;gap:10px;border-radius:8px;padding:16px 18px;background:#fff9ed;border:1px solid #ffe0a6}.sort-ai-reasons .sort-risk-warning{border:1px solid #ffb4a8;border-radius:8px;padding:8px 10px;color:#9f1d12;background:#fff0ee}.sort-basket-panel{display:grid;gap:10px;border-radius:8px;padding:16px 18px;background:#f7fbff;border:1px solid #d6e5f7}.sort-basket-panel h3{margin:0;color:#62728a;font-size:16px;font-weight:900}.sort-basket-panel p{margin:0;color:#6a7890;font-size:15px;font-weight:800}.sort-basket-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sort-basket-grid button{display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-areas:"dot title" "dot badge" "dot reason" "dot meta";gap:3px 9px;min-width:0;min-height:78px;position:relative;overflow:hidden;border:1px solid #d3e0ef;border-radius:8px;padding:10px 10px 10px 14px;color:#26354d;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 8px 18px #112a4f0f;text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.sort-basket-grid button:before{content:"";position:absolute;top:0;bottom:0;left:0;width:5px;background:var(--basket-color, #3b82f6)}.sort-basket-grid button:hover{border-color:#8db7ea;box-shadow:0 12px 24px #112a4f1f;transform:translateY(-1px)}.sort-basket-grid button.selected{--sort-selected-color: #155fd1;border-color:var(--sort-selected-color);color:#fff;background:linear-gradient(135deg,#155fd1,#0f4fb5);box-shadow:inset 0 0 0 1px #ffffff29,0 14px 26px #0f4fb53d}.sort-basket-grid button.selected:before{width:8px;background:var(--sort-selected-color)}.sort-basket-grid button.recommended:not(.selected){border-color:var(--basket-color, #3b82f6);background:linear-gradient(180deg,color-mix(in srgb,var(--basket-color, #3b82f6) 14%,#ffffff),#fff);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--basket-color, #3b82f6) 18%,transparent)}.sort-basket-grid i{grid-area:dot;align-self:center;justify-self:center;width:18px;height:18px;border-radius:999px;background:var(--basket-color, #3b82f6);box-shadow:inset 0 0 0 3px #ffffffb8,0 0 0 1px #0f172a24}.sort-basket-grid strong,.sort-basket-grid span,.sort-basket-grid small{min-width:0;overflow-wrap:anywhere}.sort-basket-grid strong{grid-area:title;display:block;color:#071527;font-size:15px;line-height:1.18;white-space:normal}.sort-basket-grid span{grid-area:reason;color:#51647e;font-size:12px;font-weight:800;line-height:1.2}.sort-basket-grid small{grid-area:meta;color:#7a8aa0;font-size:11px;font-weight:800;line-height:1.2}.sort-basket-grid em{grid-area:badge;justify-self:start;align-self:start;border-radius:999px;padding:2px 6px;color:#0f5cc8;background:#e8f2ff;font-size:11px;line-height:1.15;font-style:normal;font-weight:900;white-space:nowrap}.sort-basket-grid button.selected em{color:#fff;background:var(--sort-selected-color);box-shadow:0 6px 12px color-mix(in srgb,var(--sort-selected-color) 24%,transparent)}.sort-basket-grid button.recommended:not(.selected) em{color:#fff;background:var(--basket-color, #3b82f6)}.sort-basket-grid button.selected strong,.sort-basket-grid button.selected span,.sort-basket-grid button.selected small{color:#fff}.sort-basket-grid button.selected span,.sort-basket-grid button.selected small{color:#ffffffdb}.sort-basket-grid button.selected i{background:#fff;box-shadow:inset 0 0 0 5px var(--sort-selected-color),0 0 0 1px #ffffff80}.sort-station-page .sort-ai-summary,.sort-station-page .sort-basket-panel,.sort-station-page .sort-ai-reasons{gap:8px;padding:14px 16px}.sort-station-page .sort-ai-summary strong{font-size:28px}.sort-station-page .sort-ai-summary p,.sort-station-page .sort-ai-summary small,.sort-station-page .sort-ai-reasons p{font-size:15px;line-height:1.35}.sort-station-page .sort-basket-grid{gap:8px}.sort-station-page .sort-basket-grid button{padding:10px 10px 10px 12px}.sort-station-page .sort-basket-grid strong{font-size:15px}.sort-station-page .sort-basket-grid span{font-size:13px}.sort-action-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sort-action-summary p{display:grid;gap:4px;min-width:0;margin:0;border:1px solid #dbe8f7;border-radius:8px;padding:9px 10px;background:#f8fbff}.sort-action-summary span,.sort-route-choice>span{color:#61748d;font-size:13px;font-weight:900}.sort-action-summary strong{min-width:0;overflow:hidden;color:#071527;font-size:15px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.sort-route-choice{display:grid;gap:8px}.sort-route-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sort-route-choice-grid button{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:4px 9px;min-width:0;min-height:68px;position:relative;overflow:hidden;border:1px solid #d3e0ef;border-radius:8px;padding:10px 11px;color:#18314f;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 8px 16px #112a4f0f;text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.sort-route-choice-grid button:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--route-color, #2563eb)}.sort-route-choice-grid button:hover:not(:disabled){border-color:color-mix(in srgb,var(--route-color, #2563eb) 48%,#d3e0ef);box-shadow:0 12px 22px #112a4f1f;transform:translateY(-1px)}.sort-route-choice-grid button.active{--sort-selected-color: #155fd1;border-color:var(--sort-selected-color);color:#fff;background:linear-gradient(135deg,#155fd1,#0f4fb5);box-shadow:inset 0 0 0 1px #ffffff29,0 14px 26px #0f4fb53d}.sort-route-choice-grid button.active:before{width:8px;background:var(--sort-selected-color)}.sort-route-choice-grid button:disabled{opacity:.56;cursor:not-allowed}.sort-route-choice-grid strong,.sort-route-choice-grid small{min-width:0;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.sort-route-choice-grid i{grid-row:span 2;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;color:var(--route-color, #2563eb);background:color-mix(in srgb,var(--route-color, #2563eb) 12%,#ffffff)}.sort-route-choice-grid button.active i{color:#fff;background:var(--sort-selected-color);box-shadow:0 8px 16px color-mix(in srgb,var(--sort-selected-color) 32%,transparent)}.sort-route-choice-grid strong{font-size:15px;font-weight:900}.sort-route-choice-grid small{grid-column:2 / -1;color:#64748b;font-size:12px;font-weight:800}.sort-route-choice-grid button.active small{color:#ffffffdb}.sort-route-choice-grid em{justify-self:end;border-radius:999px;padding:3px 7px;color:#fff;background:var(--sort-selected-color, #2563eb);font-size:12px;font-style:normal;font-weight:900;white-space:nowrap;box-shadow:0 6px 12px color-mix(in srgb,var(--sort-selected-color, #2563eb) 28%,transparent)}.wash-toggle-row{display:flex;align-items:center;gap:12px;min-height:54px;border:1px solid #d6e5f7;border-radius:8px;padding:0 16px;color:#123056;background:#f8fbff;font-size:16px;font-weight:900}.wash-toggle-row input{width:24px;min-height:24px}.machine-select-row{display:grid;gap:8px;border:1px solid #d6e5f7;border-radius:8px;padding:14px 16px;background:#f8fbff}.machine-select-row span{color:#62728a;font-size:15px;font-weight:900}.wash-station-page .workstation-grid{grid-template-columns:minmax(320px,.82fr) minmax(520px,1.26fr) minmax(330px,.78fr);gap:18px;min-height:calc(100dvh - 72px);padding:18px 24px}.wash-station-page .workstation-read-card,.wash-station-page .workstation-param-card,.wash-station-page .workstation-action-card{gap:12px;max-height:calc(100dvh - 124px);overflow:auto;padding:20px 22px}.wash-station-page .tablet-card-title{padding-bottom:14px}.wash-station-page .tablet-card-title h2{font-size:28px}.wash-station-page .workstation-read-card>.workstation-info-card{display:none}.wash-station-page .workstation-read-row{grid-template-columns:minmax(0,1fr) max-content max-content;gap:10px}.wash-station-page .workstation-read-row input,.wash-station-page .workstation-read-row button,.wash-station-page .machine-select-row select,.wash-station-page .param-row input,.wash-station-page .param-row select,.wash-station-page .param-row textarea{min-width:0;border:1px solid #cfdceb;border-radius:8px;background:#fff;color:#102033;font:inherit;font-weight:800}.wash-station-page .workstation-read-row input,.wash-station-page .machine-select-row select,.wash-station-page .param-row input,.wash-station-page .param-row select{min-height:42px;padding:0 10px}.wash-station-page .workstation-read-row button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;border-color:#9fc2ee;padding:0 14px;color:#0f5cc8;background:#f4f9ff;white-space:nowrap}.wash-station-page .workstation-read-row button:last-child{border-color:#0f6fff;color:#fff;background:#0f6fff}.wash-read-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wash-read-summary p,.wash-action-state,.wash-batch-hero,.wash-item-list{min-width:0;border:1px solid #dbe8f7;border-radius:8px;background:#f8fbff}.wash-read-summary p{display:grid;gap:4px;margin:0;padding:10px 12px}.wash-read-summary span,.wash-action-state span,.wash-batch-hero span,.wash-item-list-head,.wash-read-summary p span{color:#61748d;font-size:13px;font-weight:900}.wash-read-summary strong,.wash-action-state strong,.wash-batch-hero strong,.wash-item-list strong{min-width:0;overflow:hidden;color:#071527;text-overflow:ellipsis;white-space:nowrap}.wash-read-summary strong{font-size:18px}.wash-batch-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:78px;padding:12px 14px;background:linear-gradient(180deg,#fff,#f8fbff)}.wash-batch-hero div{display:grid;gap:4px;min-width:0}.wash-batch-hero strong{font-size:24px;line-height:1.1}.wash-batch-hero em{min-width:0;overflow:hidden;color:#315985;font-size:13px;font-style:normal;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.wash-batch-hero b{border-radius:999px;padding:5px 10px;color:#526173;background:#eef2f7;font-size:13px;font-weight:900;white-space:nowrap}.wash-batch-hero b.ready{color:#0f6fff;background:#e8f2ff}.wash-batch-hero b.running{color:#9a5b00;background:#fff3d8}.wash-batch-hero b.blocked{color:#b01209;background:#fff0ee}.wash-plan-summary{display:grid;gap:8px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;background:#fff}.wash-plan-summary-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.55fr);gap:8px}.wash-plan-summary-head p{display:grid;gap:3px;min-width:0;margin:0}.wash-plan-summary span,.wash-plan-summary-head span,.wash-plan-steps>span{color:#61748d;font-size:12px;font-weight:900}.wash-plan-summary-head strong{min-width:0;overflow:hidden;color:#10233d;font-size:15px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.wash-plan-steps{display:grid;gap:5px}.wash-plan-steps div{display:flex;flex-wrap:wrap;gap:6px 4px;min-width:0}.wash-plan-step{display:inline-flex;align-items:center;gap:4px;min-width:0}.wash-plan-step svg{flex:0 0 auto;color:#8aa2bd;stroke-width:2.8}.wash-plan-steps b,.wash-plan-steps em{border-radius:999px;padding:4px 8px;color:#17375e;background:#eef6ff;font-size:12px;font-style:normal;font-weight:900}.wash-plan-steps em{color:#697b91;background:#f3f6fa}.wash-plan-risk{display:flex;align-items:flex-start;gap:6px;border:1px solid #ffd2c9;border-radius:8px;padding:7px 8px;color:#a92a1d;background:#fff3f1;font-size:12px;font-weight:800;line-height:1.35}.wash-plan-risk svg{flex:0 0 auto;margin-top:1px}.wash-item-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.wash-item-list-head strong{color:#10233d;font-size:15px;font-weight:900}.wash-item-list{display:grid;gap:0;max-height:min(42dvh,520px);overflow:auto;padding:0 12px 12px;background:#fff}.wash-item-list-head{position:sticky;top:0;z-index:1;margin:0 -12px;border-bottom:1px solid #dbe8f7;padding:12px 14px 10px;background:#fff}.wash-item-list-head span{font-size:13px;font-weight:900}.wash-item-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.85fr) minmax(88px,.45fr) 78px;align-items:center;gap:10px;min-height:42px;border-bottom:1px solid #edf2f7;padding:9px 2px;background:#fff}.wash-item-row>strong,.wash-item-row>span,.wash-item-row>b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wash-item-row>strong{color:#10233d;font-size:14px;font-weight:900}.wash-item-row>span{color:#50657d;font-size:12px;font-weight:800}.wash-item-row>b{justify-self:start;border-radius:999px;padding:3px 8px;color:#315985;background:#eef6ff;font-size:12px;font-weight:900}.pickup-order-row{width:100%;grid-template-columns:minmax(110px,.8fr) minmax(0,1.25fr) minmax(72px,.35fr);justify-content:stretch;border:0;border-bottom:1px solid #edf2f7;border-radius:0;padding:9px 2px;color:inherit;background:#fff;box-shadow:none;text-align:left}.pickup-order-row.selected{border-color:#b8d6fb;background:#f0f7ff}.pickup-order-link{display:inline;min-width:0;max-width:100%;border:0;padding:0;color:#0f5cc8;background:transparent;font:inherit;font-weight:900;text-align:left;text-decoration:none;cursor:pointer}.pickup-order-link:hover,.pickup-order-link:focus-visible{text-decoration:underline}.pickup-order-link.hero{display:block;width:auto;min-height:0;overflow:hidden;border:0;border-radius:0;padding:0;color:#0f5cc8;background:transparent;box-shadow:none;text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.1}.pickup-station-page .wash-batch-hero .pickup-order-link.hero{min-height:0;border:0;padding:0;color:#0f5cc8;background:transparent;box-shadow:none;font-size:18px}.pickup-station-page .workstation-grid{grid-template-columns:minmax(320px,.72fr) minmax(360px,.78fr) minmax(560px,1.2fr);align-items:stretch;height:calc(100dvh - 72px);min-height:0}.pickup-station-page .pickup-recent-card,.pickup-station-page .workstation-read-card,.pickup-station-page .workstation-action-card{display:grid;align-content:start;grid-template-rows:auto minmax(0,1fr);height:100%;max-height:none;min-height:0;overflow:hidden}.pickup-station-page .pickup-recent-card{grid-template-rows:auto minmax(0,1fr)}.pickup-station-page .workstation-read-card{grid-template-rows:auto auto auto auto auto minmax(0,1fr)}.pickup-station-page .workstation-action-card{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(128px,1fr) auto auto auto;gap:10px;padding:16px}.pickup-station-page .workstation-action-card.has-order-strip{grid-template-rows:auto auto auto minmax(128px,1fr) auto auto auto}.pickup-station-page .finish-context-grid{align-self:end}.pickup-empty-notice{display:grid;gap:6px;align-self:end;border:1px dashed #cbd9ea;border-radius:8px;padding:14px;color:#61748d;background:#f8fbff}.pickup-empty-notice strong{color:#10233d;font-size:16px;font-weight:900}.pickup-empty-notice span{font-size:13px;line-height:1.4;font-weight:800}.pickup-station-page .wash-item-list{min-height:0;max-height:none;align-content:start;overscroll-behavior:contain;scrollbar-gutter:stable;overflow:auto}.pickup-station-page .workstation-action-card .wash-item-row{grid-template-columns:minmax(0,.9fr) minmax(90px,.55fr) minmax(150px,.95fr);gap:12px;padding:10px 2px}.pickup-station-page .workstation-action-card .pickup-item-row{grid-template-columns:minmax(0,1.2fr) minmax(168px,.65fr) minmax(132px,.48fr);min-height:66px;padding:8px 2px}.pickup-item-row>div,.pickup-item-row>p{display:grid;gap:4px;min-width:0;margin:0}.pickup-item-row>div>strong,.pickup-item-row>p>strong{min-width:0;color:#10233d;overflow-wrap:anywhere;white-space:normal;font-size:14px;font-weight:900}.pickup-item-row>div>span,.pickup-item-row>p>span{min-width:0;color:#61748d;overflow-wrap:anywhere;white-space:normal;font-size:12px;font-weight:900}.pickup-item-delivery-status{justify-self:start;border-radius:999px;padding:3px 8px;font-size:12px;font-style:normal;font-weight:900;line-height:1.3}.pickup-item-delivery-status.ready{color:#087443;background:#dcfce7}.pickup-item-delivery-status.pending{color:#b42318;background:#fff1f0}.pickup-item-row>p>strong{color:#0f5cc8;font-size:18px;font-weight:900}.pickup-station-page .workstation-action-card .wash-batch-hero{align-self:start;width:100%;box-sizing:border-box;min-height:0;padding:10px 12px}.pickup-station-page .workstation-action-card>.station-photo-panel{gap:6px;padding:8px 10px}.pickup-station-page .workstation-action-card>.station-photo-panel .station-photo-grid{grid-template-columns:repeat(6,66px);max-height:72px}.pickup-station-page .workstation-action-card>.workstation-read-card.workstation-read-content{display:grid;grid-template-rows:auto auto auto auto;gap:8px;width:auto;height:auto;max-height:none;min-height:0;overflow:visible;padding:0;border:0;background:transparent;box-shadow:none}.pickup-station-page .workstation-read-content .tablet-card-title{min-height:28px;padding-bottom:6px}.pickup-station-page .workstation-read-content .tablet-card-title h2{font-size:18px}.pickup-station-page .workstation-read-content>label{color:#365a83;font-size:13px;font-weight:900}.pickup-station-page .workstation-read-content .workstation-read-row{grid-template-columns:minmax(0,1fr) max-content}.pickup-station-page .workstation-read-content .workstation-read-row input,.pickup-station-page .workstation-read-content .workstation-read-row button{min-height:42px}.pickup-rfid-verified-tags{display:flex;flex-wrap:wrap;gap:6px}.pickup-rfid-verified-tags .pickup-rfid-chip{min-height:30px;border:1px solid #bbf7d0;border-radius:6px;padding:0 9px;color:#087443;background:#f0fdf4;font-size:13px;font-weight:900}.pickup-station-page .workstation-action-card .workstation-primary-action{align-self:end}.pickup-station-page .workstation-action-card .pickup-confirm-action{border-color:transparent;color:#fff;background:#16a34a;box-shadow:0 12px 24px #16a34a38}.pickup-station-page .workstation-action-card .pickup-confirm-action:hover:not(:disabled){background:#15803d}.pickup-station-page .pickup-detail-panel .wash-item-list{height:100%}.pickup-station-page .pickup-detail-panel .workstation-primary-action{align-self:end}.pickup-work-card{grid-column:auto}.pickup-station-page .pickup-recent-card{grid-area:recent}.pickup-station-page .pickup-query-card{grid-area:read}.pickup-station-page .pickup-work-card{grid-area:work}.pickup-order-strip{min-height:0;overflow:hidden;border:1px solid #dbe8f7;border-radius:8px;background:#fff}.pickup-order-strip .wash-item-list-head{position:static;margin:0}.pickup-order-list{display:grid;gap:0;max-height:130px;min-height:0;overflow:auto;padding:0 12px 10px}.pickup-order-list.compact{max-height:118px}.pickup-order-list p{margin:0;padding:12px 2px;color:#697b91;font-size:14px;font-weight:800}.pickup-work-card .wash-batch-hero{margin-top:2px}.pickup-recent-list{display:grid;align-content:start;gap:8px;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-top:8px}.pickup-recent-list button{position:relative;display:grid;justify-items:stretch;align-content:center;gap:9px;min-height:82px;overflow:hidden;border:1px solid #cfdded;border-radius:8px;padding:11px 14px 11px 18px;color:#24344d;background:#fff;box-shadow:none;text-align:left}.pickup-recent-list button:before{content:"";position:absolute;top:12px;bottom:12px;left:0;width:4px;border-radius:0 4px 4px 0;background:#0f6fff}.pickup-recent-list button:hover{border-color:#8cb8ee;background:#f8fbff}.pickup-recent-list button.active{border-color:#0f6fff;background:#eef6ff;box-shadow:inset 0 0 0 1px #0f6fff2e}.pickup-task-main,.pickup-task-sub{display:grid;align-items:center;gap:8px;width:100%;min-width:0}.pickup-task-main{grid-template-columns:136px minmax(0,1fr) max-content}.pickup-task-sub{grid-template-columns:minmax(0,1fr) max-content}.pickup-task-order,.pickup-task-main em,.pickup-task-sub i{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pickup-task-main em,.pickup-task-sub i{color:#61748d;font-size:14px;font-style:normal;font-weight:900}.pickup-task-main em{color:#47617f}.pickup-task-sub .pickup-task-member,.pickup-task-sub .pickup-task-phone{color:#071527;font-size:17px;line-height:1.2;font-weight:900}.pickup-task-sub .pickup-task-phone{color:#0f4fb3;text-align:left;overflow:visible;text-overflow:clip}.pickup-task-order{display:block;min-width:0;overflow:hidden;color:#0f4fb3;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:1.2;font-weight:900}.pickup-task-main b{border-radius:999px;padding:4px 11px;color:#c2410c;background:#fff3e6;font-size:14px;font-weight:900;white-space:nowrap}.pickup-recent-list p{margin:0;border:1px dashed #cbd9ea;border-radius:8px;padding:14px;color:#61748d;background:#f8fbff;font-size:14px;line-height:1.45;font-weight:800}.batch-rfid-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,.72fr);gap:10px}.batch-rfid-actions .workstation-primary-action,.batch-rfid-actions .workstation-secondary-action{min-height:44px;height:44px;padding:0 14px}.batch-rfid-actions .batch-rfid-stop-action{border-color:#fecaca;color:#991b1b;background:#fff1f2}.batch-rfid-station-page .workstation-grid{align-items:stretch;gap:14px;height:calc(100dvh - 72px);min-height:0;padding:14px 18px 16px;background:#edf3fa}.batch-rfid-station-page.workstation-page{grid-template-rows:72px minmax(0,1fr);background:#edf3fa}.batch-rfid-station-page .tablet-topbar{min-height:72px;padding:0 20px;background:linear-gradient(135deg,#0c4f9e,#0f6fd8);box-shadow:0 8px 20px #0f4f9e29}.batch-rfid-station-page .tablet-station-brand{gap:10px;font-size:19px}.batch-rfid-station-page .tablet-title strong{font-size:28px}.batch-rfid-station-page .tablet-title span{font-size:14px}.batch-rfid-station-page .tablet-status{gap:12px;font-size:14px}.batch-rfid-station-page .tablet-home-link{min-height:36px;font-size:14px}.batch-rfid-station-page .workstation-read-card,.batch-rfid-station-page .workstation-param-card,.batch-rfid-station-page .workstation-action-card{height:100%;max-height:none;overflow:hidden;border:1px solid #d7e3f1;background:#fff;box-shadow:0 12px 26px #13325812;padding:16px}.batch-rfid-station-page .workstation-read-card{grid-template-rows:max-content max-content max-content minmax(0,1fr) max-content}.batch-rfid-station-page .workstation-param-card{display:grid;gap:10px;grid-template-rows:max-content max-content minmax(66px,max-content) minmax(0,1fr)}.batch-rfid-station-page .workstation-param-card:not(.has-batch-history){grid-template-rows:max-content minmax(66px,max-content) minmax(0,1fr)}.batch-rfid-station-page .workstation-action-card{align-content:stretch;gap:12px;grid-template-rows:max-content max-content max-content max-content max-content minmax(0,1fr)}.batch-rfid-station-page .tablet-card-title{min-height:42px;border-bottom:1px solid #e2ebf5;padding-bottom:10px}.batch-rfid-station-page .tablet-card-title h2{color:#10233d;font-size:22px;letter-spacing:0}.batch-rfid-station-page .tablet-card-title svg{color:#315985;stroke-width:2.4}.batch-rfid-station-page .batch-rfid-panel .shelf-code-row{gap:8px;border:1px solid #d8e6f7;padding:12px;background:#f8fbff}.batch-rfid-station-page .batch-rfid-panel .shelf-code-row span{color:#315985;font-size:13px}.batch-rfid-station-page .batch-rfid-panel .shelf-code-row input{min-height:50px;border:1px solid #c9dbf0;border-radius:8px;padding:0 14px;color:#0f2238;background:#fff;font-size:17px;font-weight:900}.batch-rfid-station-page .batch-rfid-panel .shelf-code-row input::placeholder{color:#7b8da5;font-size:16px;font-weight:800}.batch-rfid-station-page .batch-rfid-list,.batch-rfid-station-page .wash-item-list{min-height:0;max-height:none;overflow:auto}.batch-rfid-station-page .wash-item-list{align-content:start;gap:0;grid-auto-rows:max-content;align-self:stretch;border-color:#d7e3f1;border-radius:8px;padding:0;background:#fff}.batch-rfid-station-page .batch-rfid-list{overflow-x:hidden}.batch-rfid-station-page .param-input-grid{min-height:0;overflow:visible}.batch-rfid-station-page .workstation-action-card>.param-row textarea{height:86px;min-height:86px;resize:none}.batch-rfid-station-page .wash-batch-hero{align-self:start;min-height:82px;border:1px solid #d7e3f1;border-radius:8px;padding:13px 14px;background:linear-gradient(135deg,#f3f8ff,#fff 72%);box-shadow:inset 4px 0 #1d6ed8}.batch-history-select{display:grid;grid-template-columns:96px minmax(0,1fr) 64px;align-items:center;gap:8px;min-height:42px;border:1px solid #d7e3f1;border-radius:8px;padding:7px 9px;background:#f8fbff}.batch-history-select span{color:#315985;font-size:12px;font-weight:900}.batch-history-select select{min-width:0;min-height:34px;border:1px solid #bfd4ee;border-radius:8px;padding:0 9px;color:#10233d;background:#fff;font-size:13px;font-weight:800}.batch-history-select button{min-height:34px;border:1px solid #b8d6fb;border-radius:8px;padding:0 10px;color:#0f5cc8;background:#f7fbff;font-size:13px;font-weight:900}.batch-rfid-station-page .wash-batch-hero strong{color:#061a34;font-size:24px}.batch-rfid-station-page .wash-batch-hero em{color:#315985}.batch-rfid-station-page .wash-batch-hero em mark{border-radius:999px;padding:2px 7px;color:#b45309;background:#fff3d8;font:inherit;font-weight:900}.batch-rfid-station-page .wash-batch-hero b{display:inline-flex;align-items:center;gap:6px;border:1px solid #d6e3f2;padding:6px 11px;font-size:13px;line-height:1}.batch-rfid-station-page .wash-batch-hero b:before{content:"";width:7px;height:7px;border-radius:999px;background:currentColor}.batch-rfid-station-page .wash-batch-hero b.ready{border-color:#9fc5ff;color:#0f5cc8;background:#e8f2ff;box-shadow:inset 0 0 0 1px #0f5cc814}.batch-rfid-station-page .wash-batch-hero b.running{border-color:#f5d08a;color:#9a5b00;background:#fff4dc}.batch-rfid-station-page .wash-batch-hero b.blocked{border-color:#ffc9c2;color:#b01209;background:#fff0ee}.batch-rfid-station-page .wash-item-list-head{margin:0;min-height:42px;border-bottom:1px solid #e2ebf5;padding:10px 12px;background:#f7fbff}.batch-rfid-station-page .machine-select-row{gap:7px;border-color:#d7e3f1;border-radius:8px;padding:11px 12px;background:#f8fbff}.batch-rfid-station-page .machine-select-row span,.batch-rfid-station-page .param-row span{color:#315985;font-size:12px;font-weight:900}.batch-rfid-station-page .machine-select-row select,.batch-rfid-station-page .param-row input,.batch-rfid-station-page .param-row select{min-height:40px;border-color:#bfd4ee;padding:0 10px;background:#f8fbff;font-size:14px}.batch-rfid-station-page .workstation-action-card>.param-row{gap:6px;min-height:0}.batch-rfid-station-page .workstation-action-card>.param-row textarea{border-color:#bfd4ee;border-radius:8px;padding:10px 12px;background:#fff;font-size:14px}.batch-rfid-station-page .wash-param-grid{gap:10px}.batch-rfid-station-page .wash-action-card .workstation-primary-action{min-height:55px;height:55px;border:1px solid #0f5cc8;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0f6fff,#0b58c7);box-shadow:0 12px 22px #0f6fff33}.batch-rfid-station-page .batch-action-buttons .workstation-primary-action{gap:8px;justify-content:center;font-size:15px;font-weight:900}.batch-rfid-station-page .batch-action-buttons .workstation-primary-action:first-child:not(:disabled){border-color:#0f5cc8;color:#fff;background:linear-gradient(135deg,#0f6fff,#0b58c7)}.batch-rfid-station-page .batch-action-buttons .workstation-primary-action:last-child:not(:disabled){border-color:#059669;color:#fff;background:linear-gradient(135deg,#10b981,#047857);box-shadow:0 12px 22px #0596692e}.garment-batch-station-page .workstation-grid{grid-template-columns:minmax(320px,.42fr) minmax(0,.58fr);grid-template-areas:"read batch" "action action";grid-template-rows:minmax(0,1fr) max-content;gap:12px;overflow:hidden;padding:12px 18px 16px}.garment-batch-station-page .workstation-read-card{grid-area:read}.garment-batch-station-page .wash-batch-card{grid-area:batch}.garment-batch-station-page .workstation-action-card{grid-area:action}.garment-batch-station-page .workstation-read-card,.garment-batch-station-page .wash-batch-card{min-height:0}.garment-batch-station-page .workstation-action-card{display:grid;grid-template-columns:minmax(300px,.34fr) minmax(0,.42fr) minmax(260px,.24fr);grid-template-areas:"title params note" "machine params photos" "actions params photos";align-items:stretch;gap:10px 12px;min-height:0;padding:14px 16px}.garment-batch-station-page .workstation-action-card>.tablet-card-title{grid-area:title}.garment-batch-station-page .workstation-action-card>.machine-select-row{grid-area:machine}.garment-batch-station-page .workstation-action-card>.wash-param-grid{grid-area:params}.garment-batch-station-page .workstation-action-card>.param-row{grid-area:note}.garment-batch-station-page .workstation-action-card>.station-photo-panel{grid-area:photos;min-height:0}.garment-batch-station-page .workstation-action-card>.batch-action-buttons{grid-area:actions}.garment-batch-station-page .tablet-card-title{min-height:34px;padding-bottom:8px}.garment-batch-station-page .tablet-card-title h2{font-size:20px}.garment-batch-station-page .batch-rfid-panel .shelf-code-row{padding:9px 10px}.garment-batch-station-page .batch-rfid-panel .shelf-code-row input{min-height:42px;font-size:15px}.garment-batch-station-page .batch-rfid-panel .shelf-code-row input::placeholder{font-size:14px}.garment-batch-station-page .batch-rfid-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.garment-batch-station-page .batch-rfid-actions .workstation-primary-action,.garment-batch-station-page .batch-rfid-actions .workstation-secondary-action{min-height:38px;height:38px;gap:4px;padding:0 6px;font-size:13px;white-space:nowrap}.garment-batch-station-page .batch-rfid-actions .workstation-primary-action svg,.garment-batch-station-page .batch-rfid-actions .workstation-secondary-action svg{width:16px;height:16px;flex:0 0 auto}.garment-batch-station-page .wash-batch-hero{min-height:64px;padding:9px 12px}.garment-batch-station-page .wash-batch-hero strong{font-size:22px}.garment-batch-station-page .wash-item-list-head{min-height:38px;padding:0 10px}.garment-batch-station-page .batch-garment-table-head,.garment-batch-station-page .batch-garment-row{grid-template-columns:minmax(138px,1.25fr) minmax(168px,1.15fr) minmax(82px,.5fr) 58px}.garment-batch-station-page .batch-garment-table-head{top:38px}.garment-batch-station-page .batch-garment-row{min-height:44px}.garment-batch-station-page .batch-garment-row>.batch-order-link{min-height:44px}.garment-batch-station-page .batch-garment-row .wash-item-remove{width:50px;min-width:50px;height:30px;min-height:30px;font-size:12px}.garment-batch-station-page .machine-select-row,.garment-batch-station-page .wash-param-grid .param-row,.garment-batch-station-page .workstation-action-card>.param-row,.garment-batch-station-page .station-photo-panel{padding:8px 10px}.garment-batch-station-page .machine-select-row select,.garment-batch-station-page .param-row input,.garment-batch-station-page .param-row select{min-height:34px;font-size:14px}.garment-batch-station-page .workstation-action-card>.param-row textarea{height:58px;min-height:58px}.garment-batch-station-page .station-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:94px}.garment-batch-station-page .batch-action-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.garment-batch-station-page .batch-action-buttons .workstation-primary-action{min-height:55px;height:55px;padding:0 16px;font-size:18px}.wash-station-page.garment-batch-station-page .workstation-grid{grid-template-columns:minmax(320px,.42fr) minmax(0,.58fr);grid-template-areas:"read batch" "action action";grid-template-rows:minmax(0,1fr) max-content;gap:12px;overflow:hidden;padding:12px 18px 16px}.wash-station-page.garment-batch-station-page .workstation-action-card{display:grid;grid-template-columns:minmax(300px,.34fr) minmax(0,.42fr) minmax(260px,.24fr);grid-template-areas:"title params note" "machine params photos" "actions params photos";align-items:stretch;gap:10px 12px;min-height:0;padding:14px 16px}.batch-action-buttons{align-self:start;display:grid;gap:10px}.batch-action-buttons .workstation-primary-action{width:100%}.batch-rfid-list{display:grid;align-content:start;gap:8px;min-height:0;border:1px solid #d7e3f1;border-radius:8px;padding:0 10px 10px;background:#fff;overflow:auto}.batch-rfid-list>p,.batch-rfid-station-page .wash-item-list>p{margin:10px 0;color:#61748d;font-size:13px;font-weight:800}.batch-rfid-chip{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:6px;min-width:0;border:1px solid #d7e3f1;border-radius:8px;padding:8px 7px 8px 11px;background:#f8fbff}.batch-rfid-chip strong{min-width:0;overflow:hidden;color:#10233d;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.batch-rfid-chip button{min-width:28px;min-height:28px;border-color:#b8d6fb;color:#0f5cc8;background:#f7fbff;padding:0}.batch-rfid-messages p{margin:0}.batch-garment-table-head,.batch-garment-row{display:grid;grid-template-columns:minmax(152px,1.3fr) minmax(174px,1.15fr) minmax(90px,.55fr) 78px;align-items:center;gap:0;min-width:0}.batch-garment-table-head{position:sticky;top:42px;z-index:1;border-bottom:1px solid #cfe0f3;padding:0;color:#315985;background:#eef6ff;font-size:12px;font-weight:900}.batch-garment-row{min-height:52px;border-bottom:1px solid #edf2f7;padding:0}.batch-garment-row:not(.selected){background:#fff}.batch-garment-row:nth-child(2n):not(.selected){background:#fbfdff}.batch-garment-table-head>span,.batch-garment-row>strong,.batch-garment-row>span,.batch-garment-row>b,.batch-garment-row>.batch-order-link{border-right:1px solid #edf2f7;padding:0 6px}.batch-garment-table-head>span{display:flex;align-items:center;min-height:30px}.batch-garment-row>strong,.batch-garment-row>span,.batch-garment-row>b,.batch-garment-row>.batch-order-link,.batch-garment-table-head>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.batch-garment-row>strong{color:#10233d;font-size:15px;font-weight:900}.batch-garment-row>span{color:#50657d;font-size:13px;font-weight:800}.batch-garment-row>.batch-order-link{display:flex;align-items:center;justify-content:flex-start;height:100%;min-height:52px;border-top:0;border-bottom:0;border-left:0;border-radius:0;color:#0f5cc8;background:transparent;font-size:13px;font-weight:900;text-align:left}.batch-garment-row>.batch-order-link:active{background:#e8f2ff}.batch-garment-row>b{border-right:0;justify-self:start;border-radius:999px;margin-left:8px;padding:4px 8px;color:#047857;background:#dcfce7;font-size:13px;font-weight:900}.batch-garment-row>b.invalid{color:#b91c1c;background:#fee2e2}.batch-garment-row .wash-item-remove{justify-self:center;align-self:center;display:inline-flex;align-items:center;justify-content:center;width:64px;min-width:64px;height:34px;min-height:34px;padding:0;border-color:#b8d6fb;border-radius:8px;color:#0f5cc8;background:#f7fbff;font-size:14px;line-height:1}.batch-garment-row .wash-item-remove:active:not(:disabled){background:#e8f2ff;transform:translateY(1px)}.batch-garment-card{display:grid;grid-template-columns:minmax(0,1fr) 64px;align-items:center;gap:8px;border:1px solid #dbe8f7;border-radius:8px;padding:6px 8px;background:#fff}.batch-garment-main{display:grid;grid-column:1 / -1;gap:4px;min-width:0}.batch-garment-main strong,.batch-garment-main span,.batch-garment-info strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.batch-garment-main strong{color:#10233d;font-size:15px;font-weight:900}.batch-garment-main span{color:#50657d;font-size:12px;font-weight:800}.batch-garment-info{display:grid;grid-template-columns:1.1fr .9fr .8fr 1fr;align-items:center;gap:5px;min-width:0}.batch-garment-info p{display:grid;gap:1px;min-width:0;margin:0;border:1px solid #edf2f7;border-radius:8px;padding:4px 7px;background:#f8fbff}.batch-garment-info span{color:#61748d;font-size:10px;font-weight:900}.batch-garment-info strong{color:#10233d;font-size:12px;font-weight:900}.batch-garment-card .wash-item-remove{align-self:center;width:60px;min-width:60px;height:34px;min-height:34px}.wash-item-remove{justify-self:end;display:inline-flex;align-items:center;justify-content:center;gap:4px;width:72px;min-width:72px;height:30px;border:1px solid #fecaca;border-radius:8px;background:#fff7f7;color:#b42318;font-size:12px;font-weight:900;white-space:nowrap}.wash-item-remove:disabled{cursor:not-allowed;opacity:.55}.wash-item-list p{margin:0;border:1px dashed #cfdceb;border-radius:8px;padding:14px;color:#64748b;background:#fff;font-size:14px;font-weight:800}.wash-item-list .wash-item-load-more{border-style:solid;padding:10px;text-align:center;color:#315985;background:#eef6ff}.wash-action-state{display:grid;gap:6px;padding:14px 16px;background:linear-gradient(180deg,#f7fbff,#fff)}.wash-action-state strong{font-size:28px;line-height:1.1}.wash-action-state p{margin:0;color:#315985;font-size:15px;font-weight:800}.wash-station-page .machine-select-row{gap:5px;padding:9px 12px}.wash-station-page .wash-param-grid,.wash-station-page .param-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wash-station-page .param-row{display:grid;gap:5px;min-width:0;color:#263b55;font-size:13px;font-weight:900}.batch-rfid-station-page .wash-param-grid .param-row{border:1px solid #d8e6f7;border-radius:8px;padding:8px 10px 10px;background:#f8fbff}.batch-rfid-station-page .wash-param-grid .param-row span{color:#315985}.batch-rfid-station-page .workstation-primary-action:disabled,.batch-rfid-station-page .workstation-secondary-action:disabled{border-color:#d6e3f2;color:#9bb1cc;background:#f4f7fb;box-shadow:none;opacity:1}.batch-rfid-station-page .batch-action-buttons .workstation-primary-action:disabled{border:1px solid #dde7f3;color:#a8bad0;background:#f5f8fc}.batch-rfid-station-page .workstation-secondary-action{border-color:#b8d6fb;border-radius:8px;color:#0f5cc8;background:#f7fbff}.wash-station-page .param-row.wide{grid-column:1 / -1}.wash-station-page .param-row textarea{min-height:58px;resize:vertical;padding:8px 10px}.wash-station-page .checkbox-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:42px;border:1px solid #d6e5f7;border-radius:8px;padding:0 10px;background:#f8fbff}.wash-station-page .checkbox-row input[type=checkbox]{width:20px;min-width:20px;min-height:20px;padding:0}.wash-station-page .wash-result-toggle{border-color:#ffd6a3;color:#9a5b00;background:#fff8eb}.wash-station-page .workstation-check-list{gap:8px}.wash-station-page .workstation-check-list div{grid-template-columns:24px minmax(0,1fr) 68px;min-height:44px;padding:0 10px}.wash-station-page .workstation-check-list span,.wash-station-page .workstation-check-list strong,.wash-station-page .workstation-check-list button{font-size:13px}.wash-param-panel{display:grid;gap:8px;border:1px solid #dbe8f7;border-radius:8px;padding:12px;background:#f8fbff}.wash-param-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.wash-param-head strong{color:#10233d;font-size:14px;font-weight:900}.wash-detergent-row{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.38fr);gap:8px;min-width:0}.wash-param-head span{border-radius:999px;padding:4px 9px;color:#0f5cc8;background:#e8f2ff;font-size:12px;font-weight:900;white-space:nowrap}.wash-action-card{align-self:start}.wash-action-card .workstation-primary-action,.wash-action-card .workstation-secondary-action{min-height:56px}.finish-station-page .workstation-grid{grid-template-columns:minmax(330px,.84fr) minmax(460px,1.18fr) minmax(360px,.9fr);gap:18px;min-height:calc(100dvh - 72px);padding:18px 24px}.finish-station-page .workstation-read-card,.finish-station-page .workstation-param-card,.finish-station-page .workstation-action-card{gap:14px;max-height:calc(100dvh - 124px);overflow:auto;padding:22px 24px}.finish-station-page .tablet-card-title{padding-bottom:14px}.finish-station-page .tablet-card-title h2{font-size:28px}.finish-station-page .workstation-read-row{grid-template-columns:minmax(0,1fr) max-content max-content;gap:10px}.finish-station-page .workstation-read-row input,.finish-station-page .workstation-read-row button,.finish-station-page .machine-select-row select,.finish-station-page .shelf-code-row input,.finish-station-page .param-row input,.finish-station-page .param-row select,.finish-station-page .param-row textarea{min-width:0;border:1px solid #cfdceb;border-radius:8px;color:#102033;background:#fff;font:inherit;font-weight:800}.finish-station-page .workstation-read-row input,.finish-station-page .machine-select-row select,.finish-station-page .shelf-code-row input,.finish-station-page .param-row input,.finish-station-page .param-row select{min-height:48px;padding:0 12px}.finish-station-page .workstation-read-row button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;border-color:#9fc2ee;padding:0 14px;color:#0f5cc8;background:#f4f9ff;white-space:nowrap}.finish-station-page .workstation-read-row button:last-child{border-color:#0f6fff;color:#fff;background:#0f6fff}.finish-read-summary,.finish-context-grid,.finish-param-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.finish-read-summary p,.finish-context-grid p,.finish-action-state,.finish-work-hero,.finish-evidence-placeholder,.finish-requirements div{min-width:0;border:1px solid #dbe8f7;border-radius:8px;background:#f8fbff}.finish-read-summary p,.finish-context-grid p{display:grid;gap:4px;margin:0;padding:9px 10px}.finish-read-summary span,.finish-context-grid span,.finish-action-state span,.finish-work-hero span,.finish-process-route strong,.finish-evidence-placeholder span{color:#61748d;font-size:13px;font-weight:900}.finish-read-summary strong,.finish-context-grid strong,.finish-action-state strong,.finish-work-hero strong{min-width:0;overflow:hidden;color:#071527;text-overflow:ellipsis;white-space:nowrap}.finish-read-summary strong,.finish-context-grid strong{font-size:15px}.finish-work-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.finish-work-hero div{display:grid;gap:5px;min-width:0}.finish-work-hero strong{font-size:28px;line-height:1.1}.finish-work-hero em{min-width:0;overflow:hidden;color:#315985;font-size:15px;font-style:normal;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.finish-work-hero b{border-radius:999px;padding:7px 12px;color:#526173;background:#eef2f7;font-size:14px;font-weight:900;white-space:nowrap}.finish-work-hero b.ready{color:#0f6fff;background:#e8f2ff}.finish-work-hero b.running{color:#9a5b00;background:#fff3d8}.finish-work-hero b.blocked{color:#b01209;background:#fff0ee}.finish-process-route{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.finish-process-route div{display:grid;justify-items:center;gap:5px;min-width:0;border:1px solid #dbe8f7;border-radius:8px;padding:9px 6px;background:#fff}.finish-process-route span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;color:#61748d;background:#edf2f7;font-size:12px;font-weight:900}.finish-process-route div.done span,.finish-process-route div.active span{color:#fff;background:#0f6fff}.finish-process-route div.active{border-color:#0f6fff;background:#eef6ff;box-shadow:inset 0 0 0 1px #0f6fff2e}.finish-process-route strong{overflow:hidden;max-width:100%;color:#24344d;text-overflow:ellipsis;white-space:nowrap}.finish-evidence-stack{display:grid;gap:10px}.finish-evidence-placeholder{display:grid;gap:5px;padding:14px;background:#fff}.finish-evidence-placeholder strong{color:#10233d;font-size:15px;font-weight:900}.finish-station-page .station-photo-panel{gap:9px;padding:12px}.finish-station-page .station-photo-head strong{color:#10233d;font-size:15px;font-weight:900}.finish-station-page .station-photo-head button{min-height:38px;border:1px solid #cfe0f3;border-radius:8px;color:#0f5cc8;background:#eef6ff;font-weight:900}.finish-station-page .station-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.finish-station-page .machine-select-row,.finish-station-page .shelf-code-row{gap:7px;padding:12px 14px}.finish-station-page .param-row{display:grid;gap:7px;min-width:0;color:#263b55;font-size:14px;font-weight:900}.finish-station-page .param-row textarea{min-height:72px;resize:vertical;padding:10px 12px}.finish-station-page .checkbox-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:48px;border:1px solid #d6e5f7;border-radius:8px;padding:0 12px;background:#f8fbff}.finish-station-page .checkbox-row input[type=checkbox]{width:22px;min-width:22px;min-height:22px;padding:0}.finish-action-state{display:grid;gap:6px;padding:14px 16px;background:linear-gradient(180deg,#f7fbff,#fff)}.finish-action-state strong{font-size:28px;line-height:1.1}.finish-action-state p{margin:0;color:#315985;font-size:15px;font-weight:800}.finish-requirements{display:grid;gap:8px}.finish-requirements div{display:grid;grid-template-columns:24px minmax(0,1fr) 68px;align-items:center;gap:9px;min-height:44px;padding:0 10px;background:#fff}.finish-requirements svg{color:#0f6fff}.finish-requirements span{min-width:0;overflow:hidden;color:#24344d;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.finish-requirements strong{color:#0f8f68;font-size:13px;font-weight:900;text-align:right}.shelf-code-row{display:grid;gap:8px;border:1px solid #d6e5f7;border-radius:8px;padding:14px 16px;background:#f8fbff}.shelf-code-row span{color:#62728a;font-size:15px;font-weight:900}.inline-create-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:12px 0}.inline-create-grid input,.inline-create-grid select,.inline-create-grid button{min-width:0;min-height:42px}.workstation-param-list div{display:grid;gap:10px;min-height:120px;border:1px solid var(--tablet-line);border-radius:8px;padding:22px;background:#f8fbff}.workstation-param-list span{color:#51647e;font-size:16px;font-weight:800}.workstation-param-list strong{color:#071426;font-size:30px}.workstation-photo-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:4px}.workstation-photo-compare div,.workstation-shelf-map{display:grid;place-items:center;min-height:210px;border:2px dashed #c8d8eb;border-radius:8px;color:#0b63ce;background:#f8fbff;font-size:20px;font-weight:900}.workstation-shelf-map{gap:12px}.workstation-check-list{display:grid;gap:14px}.workstation-check-list div{display:grid;grid-template-columns:28px minmax(0,1fr) 76px;align-items:center;gap:10px;min-height:56px;border:1px solid var(--tablet-line);border-radius:8px;padding:0 14px;background:#fff}.workstation-check-list svg{color:var(--tablet-blue)}.workstation-check-list span{font-size:16px;font-weight:800}.workstation-check-list strong{color:#0f8f68;text-align:right}.workstation-check-list button{border:0;padding:0;color:#a26000;background:transparent;font:inherit;font-weight:900;text-align:right;cursor:pointer}.workstation-check-list button:disabled{cursor:not-allowed;opacity:.55}.workstation-check-list div.checked{border-color:#9bd8c0;background:#f3fff9}.workstation-check-list div.checked svg,.workstation-check-list div.checked button{color:#0f8f68}.workstation-trace{display:grid;gap:8px;border-radius:8px;padding:18px;color:#51647e;background:#f8fbff;font-size:16px}.workstation-trace strong{color:#071426;font-size:16px}.workstation-primary-action,.workstation-secondary-action{width:100%;min-height:64px;border-radius:8px;font-size:16px}.workstation-primary-action{border:0;color:#fff;background:linear-gradient(135deg,#0c67d8,#137cf2)}.workstation-primary-action:disabled{opacity:.5;cursor:not-allowed}.workstation-secondary-action{color:#b01209;border:1px solid #ffc6bf;background:#fff3f1}.quality-disposition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quality-disposition-button,.quality-disposition-danger{min-height:52px;border-radius:8px;font-size:16px;font-weight:700}.quality-disposition-button{color:#155b3f;border:1px solid #b8e5d2;background:#f0fbf6}.quality-disposition-danger{color:#b01209;border:1px solid #ffc6bf;background:#fff3f1}.quality-disposition-button:disabled,.quality-disposition-danger:disabled{opacity:.5;cursor:not-allowed}.single-rfid-station-page .workstation-grid{grid-template-columns:minmax(300px,.8fr) minmax(300px,1.1fr) minmax(400px,1.2fr);gap:16px;align-items:stretch;height:calc(100dvh - 72px);min-height:calc(100dvh - 72px);overflow:hidden;padding:16px 18px}.single-rfid-station-page .workstation-grid>*{min-width:0}.single-rfid-station-page .workstation-read-card,.single-rfid-station-page .single-scan-guide-card,.single-rfid-station-page .single-scan-last-card,.single-rfid-station-page .single-inline-empty-card{display:grid;align-content:start;align-self:stretch;gap:14px;height:100%;max-height:none;overflow:auto;padding:18px 20px}.single-rfid-station-page .single-scan-last-card,.single-rfid-station-page .single-scan-guide-card{align-self:stretch}.single-rfid-station-page .single-scan-last-card{grid-template-rows:auto minmax(0,1fr);overflow:hidden;padding-inline:12px}.single-rfid-station-page{color:#1f2937;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.single-rfid-station-page .tablet-card-title h2,.single-rfid-station-page .workstation-info-hero strong,.single-rfid-station-page .single-confirm-head h3{color:#111827;font-weight:800}.single-rfid-station-page .workstation-info-card{gap:12px;padding:18px;background:#f8fbff}.single-rfid-station-page .workstation-info-hero{gap:8px;padding-bottom:14px}.single-rfid-station-page .workstation-info-hero strong{font-size:26px}.single-rfid-station-page .workstation-info-hero .rfid-state{min-width:0;border-radius:999px;padding:6px 12px;color:#155b3f;background:#dff8ec;font-size:14px}.single-rfid-station-page .workstation-item-details{gap:8px;padding-top:2px}.single-rfid-station-page .workstation-info-meta p,.single-rfid-station-page .workstation-item-details span{grid-template-columns:64px minmax(0,1fr);align-items:center;border-color:#dce8f6;padding:10px 12px;background:#fff}.single-rfid-station-page .workstation-info-meta p span,.single-rfid-station-page .workstation-item-details em{color:#63758b;font-size:13px;font-weight:600}.single-rfid-station-page .workstation-info-meta strong,.single-rfid-station-page .workstation-item-details strong{overflow:hidden;color:#111827;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700}.single-rfid-station-page .workstation-item-details span.order-detail-row{grid-column:1 / -1}.single-rfid-station-page .workstation-item-details span.insurance-detail-row{grid-template-columns:132px minmax(0,1fr)}.workstation-service-details{display:grid;gap:8px;margin-top:4px;border-top:1px solid #d6e4f3;padding-top:14px}.workstation-service-title{color:#315985;font-size:13px;font-weight:900;letter-spacing:0}.workstation-service-grid{display:grid;gap:8px}.workstation-service-grid span{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:start;gap:8px;min-width:0;border:1px solid #cfe0f2;border-radius:6px;padding:10px 12px;background:#f3f8fe}.workstation-service-grid em{color:#56708f;font-size:13px;font-style:normal;font-weight:700}.workstation-service-grid strong{min-width:0;overflow-wrap:anywhere;color:#12345a;line-height:1.4;white-space:normal;font-size:15px;font-weight:800}.workstation-service-grid span.insurance-detail-row{border-color:#f1d29c;background:#fff9ed}.single-rfid-station-page .workstation-order-link{width:auto;justify-self:start;min-height:0;border:0;border-radius:0;padding:0;color:#0f5cc8;background:transparent;box-shadow:none}.single-scan-hero{display:grid;gap:10px;border:1px solid #dbe8f7;border-radius:8px;padding:20px;background:linear-gradient(180deg,#fff,#f7fbff)}.single-scan-hero span,.single-context-grid span,.single-confirm-head span,.single-confirm-grid span,.single-confirm-field span{color:#61748d;font-size:14px;font-weight:900}.single-scan-hero strong{color:#071527;font-size:30px;line-height:1.1;font-weight:900}.single-scan-hero p{margin:0;color:#315985;font-size:16px;line-height:1.5;font-weight:800}.single-scan-steps{display:grid;gap:10px}.single-scan-steps div{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;min-height:56px;border:1px solid #dbe8f7;border-radius:8px;padding:0 14px;color:#24344d;background:#fff;font-weight:900}.single-scan-steps svg{color:#0f6fff}.single-recent-list{display:grid;align-content:start;gap:10px;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.single-recent-list button{display:grid;align-items:stretch;justify-items:stretch;align-content:center;width:100%;min-height:54px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;color:#24344d;background:linear-gradient(180deg,#fff,#f9fcff);text-align:left;box-shadow:0 6px 16px #0f325e0a}.single-recent-list button.active{border-color:#0f6fff;background:#eef6ff;box-shadow:inset 0 0 0 1px #0f6fff29}.single-recent-list .recent-row{display:grid;width:100%;justify-self:stretch;justify-items:start;grid-template-columns:76px minmax(96px,1fr) minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0}.single-recent-list .recent-row em{justify-self:start;color:#61748d;font-size:12px;font-style:normal;font-weight:600;white-space:nowrap}.single-recent-list .recent-row small,.single-recent-list strong{min-width:0;overflow:hidden;color:#071527;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.2;font-weight:700}.single-recent-list .recent-row small{font-size:13px}.single-rfid-station-page .single-recent-list .recent-row strong{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;line-height:1.35}.single-recent-list .recent-row i{justify-self:start;border-radius:999px;padding:4px 8px;color:#0f5cc8;background:#e8f2ff;font-size:12px;font-style:normal;font-weight:700}.single-recent-list b{justify-self:end;border-radius:999px;padding:4px 9px;overflow:hidden;color:#0f8f68;background:#e7f8f1;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:900}.single-recent-list p{margin:0;border:1px dashed #cbd9ea;border-radius:8px;padding:14px;color:#61748d;background:#f8fbff;font-size:14px;line-height:1.45;font-weight:800}.single-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.single-context-grid p,.single-confirm-grid p{display:grid;gap:5px;min-width:0;margin:0;border:1px solid #dbe8f7;border-radius:8px;padding:9px 10px;background:#f8fbff}.single-context-grid strong,.single-confirm-grid strong{min-width:0;overflow:hidden;color:#071527;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:900}.single-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:22px;background:#0f172a7a}.single-confirm-overlay.single-confirm-inline{position:static;inset:auto;z-index:auto;display:block;align-self:stretch;place-items:initial;min-width:0;height:100%;padding:0;background:transparent}.single-confirm-dialog{display:grid;grid-template-rows:auto auto auto;width:min(940px,calc(100vw - 44px));max-height:min(780px,calc(100dvh - 44px));overflow:hidden;border-radius:10px;background:#fff;box-shadow:0 28px 70px #0f172a47}.single-confirm-inline .single-confirm-dialog{width:100%;height:100%;grid-template-rows:auto minmax(0,1fr) auto;max-height:none;border:1px solid var(--tablet-line);border-radius:8px;box-shadow:0 14px 32px #1a407014}.single-confirm-inline .single-confirm-head{padding:16px 18px}.single-confirm-inline .single-confirm-body{overflow:auto;max-height:none;padding:14px 18px}.single-confirm-inline .single-confirm-actions{padding:12px 18px 14px}.single-confirm-dialog.shelf-confirm-dialog{width:min(1120px,calc(100vw - 32px));max-height:min(860px,calc(100dvh - 32px))}.single-confirm-dialog.repair-confirm-dialog{width:min(1180px,calc(100vw - 32px));max-height:min(880px,calc(100dvh - 32px))}.single-confirm-dialog.after-sales-confirm-dialog{width:min(1120px,calc(100vw - 32px));max-height:min(860px,calc(100dvh - 32px))}.single-confirm-dialog.shelf-confirm-dialog .single-confirm-body,.single-confirm-dialog.repair-confirm-dialog .single-confirm-body{gap:12px;min-height:0;overflow:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 24px}.iron-station-page .single-confirm-overlay.single-confirm-inline{min-height:0;overflow:hidden}.iron-station-page .single-confirm-inline .single-confirm-dialog.iron-confirm-dialog{width:100%;height:100%;min-height:0;max-height:none;grid-template-rows:auto minmax(0,1fr) max-content;overflow:hidden}.iron-station-page .single-confirm-inline .single-confirm-dialog.iron-confirm-dialog .single-confirm-body{min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;padding:12px 16px}.iron-station-page .single-confirm-inline .single-confirm-actions{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid #dbe8f7;padding:12px 16px;background:#fff}.iron-station-page .single-confirm-inline .single-confirm-actions .primary{width:100%;min-width:0;min-height:52px}.single-confirm-dialog.after-sales-confirm-dialog .single-confirm-body{gap:12px;min-height:0;overflow:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 24px}.after-sales-station-page .after-sales-inline-panel{min-height:0;overflow:hidden}.after-sales-station-page .single-confirm-inline .single-confirm-dialog.after-sales-confirm-dialog{width:100%;height:100%;min-height:0;max-height:none;grid-template-rows:auto minmax(0,1fr) max-content;overflow:hidden}.after-sales-station-page .single-confirm-inline .single-confirm-dialog.after-sales-confirm-dialog .single-confirm-body{gap:10px;height:100%;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;padding:12px 16px}.after-sales-station-page .single-confirm-inline .single-confirm-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #dbe8f7;padding:12px 16px;background:#fff}.after-sales-read-description{display:grid;gap:6px;border:1px solid #dce8f6;border-radius:8px;padding:10px 12px;background:#fff}.after-sales-read-description>span{color:#63758b;font-size:13px;font-weight:700}.after-sales-read-description p{margin:0;color:#111827;font-size:15px;font-weight:700;line-height:1.45;white-space:pre-wrap}.after-sales-read-card .station-photo-panel{border:1px solid #dce8f6;border-radius:8px;padding:10px 12px;background:#fff}.single-confirm-dialog.shelf-confirm-dialog .single-shelf-options{max-height:330px}.shelf-station-page .single-confirm-overlay.single-confirm-inline{min-height:0;overflow:hidden}.shelf-station-page .single-confirm-inline .single-confirm-dialog.shelf-confirm-dialog{width:100%;height:100%;min-height:0;max-height:none;grid-template-rows:auto minmax(0,1fr) max-content;overflow:hidden}.shelf-station-page .single-confirm-inline .single-confirm-dialog.shelf-confirm-dialog .single-confirm-body{gap:10px;height:100%;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;padding:12px 16px}.shelf-station-page .single-confirm-inline .single-confirm-actions{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid #dbe8f7;padding:12px 16px;background:#fff}.shelf-station-page .single-confirm-inline .single-confirm-actions .primary{width:100%;min-width:0;min-height:52px}.shelf-station-page .single-confirm-inline .single-shelf-options{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;align-content:start}.shelf-station-page .single-confirm-inline .single-shelf-options button{min-height:88px;padding:12px}.shelf-station-page .single-confirm-inline .single-shelf-options strong{font-size:16px}.shelf-station-page .single-confirm-inline .single-confirm-field textarea{min-height:88px}.care-station-page .single-confirm-overlay.single-confirm-inline,.repair-station-page .single-confirm-overlay.single-confirm-inline{min-height:0;overflow:hidden}.care-station-page .single-confirm-inline .single-confirm-dialog.repair-confirm-dialog,.repair-station-page .single-confirm-inline .single-confirm-dialog.repair-confirm-dialog{width:100%;height:100%;min-height:0;max-height:none;grid-template-rows:auto minmax(0,1fr) max-content;overflow:hidden}.care-station-page .single-confirm-inline .single-confirm-head,.repair-station-page .single-confirm-inline .single-confirm-head{padding:12px 16px}.care-station-page .single-confirm-inline .single-confirm-head h3,.repair-station-page .single-confirm-inline .single-confirm-head h3{margin-top:2px;font-size:22px}.care-station-page .single-confirm-dialog.repair-confirm-dialog .single-confirm-body,.repair-station-page .single-confirm-dialog.repair-confirm-dialog .single-confirm-body{gap:10px;height:100%;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;padding:12px 16px}.care-station-page .single-confirm-grid,.care-station-page .single-repair-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.care-station-page .single-repair-type-grid button{position:relative;min-height:66px;padding:8px 34px 8px 10px}.care-station-page .single-repair-type-grid button.single-care-method-option.selected{border-color:#86efac;background:#fff;box-shadow:inset 0 0 0 1px #16a34a29}.care-station-page .single-care-method-option:before{content:"";position:absolute;top:8px;right:9px;width:18px;height:18px;border:2px solid #cbd5e1;border-radius:5px;background:#fff}.care-station-page .single-care-method-option.selected:before{border-color:#16a34a;background:#16a34a}.care-station-page .single-care-method-option.selected:after{content:"";position:absolute;top:11px;right:15px;width:5px;height:10px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(42deg)}.care-station-page .single-care-method-option.selected strong{color:#064e3b}.care-station-page .single-care-method-manual{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.care-station-page .single-care-method-manual input{min-width:0;min-height:42px;border:1px solid #c8d9eb;border-radius:6px;padding:0 12px;color:#172033;background:#fff;font-size:14px;font-weight:700}.care-station-page .single-care-method-manual button{min-height:42px;border:1px solid #b9d2ff;border-radius:6px;padding:0 14px;color:#0f5cc8;background:#eef6ff;font-size:14px;font-weight:900}.care-station-page .single-care-method-manual button:disabled{color:#94a3b8;border-color:#d7e1ed;background:#f1f5f9}.care-station-page .care-notes-field textarea{min-height:96px}.care-station-page .single-repair-photo-compare .station-photo-head button,.repair-station-page .single-repair-photo-compare .station-photo-head button{min-height:42px;border:0;border-radius:6px;padding:0 14px;color:#fff;background:#1677ff;font-size:14px;font-weight:900;box-shadow:0 6px 14px #1677ff33}.care-station-page .single-repair-photo-compare .station-photo-head button:disabled,.repair-station-page .single-repair-photo-compare .station-photo-head button:disabled{background:#94a3b8;box-shadow:none}.single-care-ai-card{display:grid;gap:10px;border:1px solid #bbf7d0;border-radius:8px;padding:12px;background:#f7fef9}.single-care-ai-card .single-stain-ai-head span,.single-care-ai-card .single-stain-ai-head b{color:#047857}.single-care-value-reference{display:grid;gap:4px;border:1px solid #f6d36b;border-radius:8px;padding:8px 10px;background:#fffdf5}.single-care-value-reference span{color:#a16207;font-size:13px;font-weight:900}.single-care-value-reference strong{color:#713f12;font-size:15px;line-height:1.25;font-weight:900}.single-care-value-reference p{margin:0;color:#854d0e;font-size:13px;line-height:1.45;font-weight:800}.single-care-ai-notes{display:grid;gap:8px}.single-care-ai-notes div{display:grid;gap:5px;border:1px solid #dbe8f7;border-radius:8px;padding:8px 10px;background:#fff}.single-care-ai-notes div.warning{border-color:#fed7aa;background:#fff7ed}.single-care-ai-notes span{color:#047857;font-size:13px;font-weight:900}.single-care-ai-notes div.warning span{color:#c2410c}.single-care-ai-notes p{margin:0;color:#31506b;font-size:13px;line-height:1.45;font-weight:800}.single-care-ai-notes div.warning p{color:#7c2d12}.care-station-page .single-repair-fields,.care-station-page .single-repair-photo-compare{grid-template-columns:minmax(0,1fr)}.care-station-page .station-photo-panel{min-height:132px;background:#fff}.care-station-page .single-confirm-inline .single-confirm-actions,.repair-station-page .single-confirm-inline .single-confirm-actions{grid-template-columns:minmax(0,3fr) minmax(108px,1fr);gap:10px;border-top:1px solid #dbe8f7;padding:12px 16px;background:#fff;box-shadow:0 -8px 18px #0f325e0f}.care-station-page .single-confirm-actions button.primary,.care-station-page .single-confirm-actions button.primary+button.danger,.repair-station-page .single-confirm-actions button.primary,.repair-station-page .single-confirm-actions button.primary+button.danger{grid-column:span 1;width:100%}.care-station-page .single-confirm-actions button,.repair-station-page .single-confirm-actions button{min-height:54px}.single-confirm-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;border-bottom:1px solid #e1e9f3;padding:16px 22px}.single-confirm-head h3{margin:4px 0 0;overflow:hidden;color:#071527;text-overflow:ellipsis;white-space:nowrap;font-size:28px;line-height:1.1}.single-confirm-head button{min-height:44px;border:1px solid #d5e3f5;border-radius:8px;padding:0 18px;color:#263b55;background:#f8fbff;font-weight:900}.single-confirm-body{display:grid;align-content:start;gap:10px;min-height:0;overflow:hidden;padding:14px 22px;background:#f7fbff}.single-confirm-status{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;background:#fff}.single-confirm-status b{border-radius:999px;padding:8px 14px;color:#0f6fff;background:#e8f2ff;font-size:15px;font-weight:900}.single-confirm-status b.blocked{color:#b01209;background:#fff0ee}.single-confirm-status strong{overflow:hidden;color:#24344d;text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:900}.single-confirm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.single-stain-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.single-stain-block{display:grid;gap:12px}.single-stain-photo-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px}.single-repair-block{display:grid;gap:12px}.single-repair-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.single-repair-tabs button{min-height:46px;border:1px solid #bfd4ee;border-radius:8px;color:#315985;background:#fff;font-size:15px;font-weight:900}.single-repair-tabs button.active{border-color:#0f6fff;color:#0f5cc8;background:#eef6ff;box-shadow:inset 0 0 0 1px #0f6fff29}.single-repair-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.single-repair-type-grid button{display:grid;align-content:start;gap:5px;min-height:84px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;color:#24344d;background:#fff;text-align:left}.single-repair-type-grid button.selected{border-color:#0f6fff;background:#eef6ff;box-shadow:inset 0 0 0 1px #0f6fff29}.single-repair-type-grid strong{overflow:hidden;color:#071527;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:900}.single-repair-type-grid span{display:-webkit-box;overflow:hidden;color:#61748d;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px;line-height:1.35;font-weight:800}.single-repair-type-grid p,.single-repair-materials p{margin:0;border:1px dashed #cbd9ea;border-radius:8px;padding:10px 12px;color:#61748d;background:#f8fbff;font-weight:800}.single-repair-type-grid p{grid-column:1 / -1}.single-repair-fields{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:8px}.single-repair-photo-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.after-sales-photo-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.after-sales-dialog-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}.exception-station-page .single-confirm-inline .single-confirm-dialog.after-sales-confirm-dialog .single-confirm-body{align-content:start}.exception-resolution-panel{display:grid;gap:10px}.exception-resolution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.exception-resolution-grid button{display:grid;align-content:start;gap:5px;min-height:72px;border:1px solid #d4e1ef;border-radius:8px;padding:10px;color:#24344d;background:#fff;text-align:left}.exception-resolution-grid button:hover:not(:disabled),.exception-resolution-grid button.selected{border-color:#0f6fff;color:#0f4fb3;background:#eef6ff;box-shadow:inset 0 0 0 1px #0f6fff29}.exception-resolution-grid button:nth-child(6):hover:not(:disabled),.exception-resolution-grid button:nth-child(6).selected,.exception-resolution-grid button:nth-child(7):hover:not(:disabled),.exception-resolution-grid button:nth-child(7).selected{border-color:#fca5a5;color:#b42318;background:#fff7f7;box-shadow:inset 0 0 0 1px #b423181f}.exception-resolution-grid strong{font-size:15px;font-weight:900}.exception-resolution-grid span{color:#61748d;font-size:12px;font-weight:700;line-height:1.35}.exception-order-link{display:block;width:fit-content;min-height:0;height:auto;min-width:0;border:0;border-radius:0;padding:0;gap:0;color:#0f5cc8;background:transparent;font:inherit;font-size:15px;line-height:1.25;font-weight:800;text-align:left;text-decoration:underline;text-underline-offset:2px}.exception-order-link:disabled{color:#61748d;text-decoration:none}.after-sales-wide-field{grid-column:1 / -1}.after-sales-trace{display:grid;gap:7px;border:1px solid #dbe8f7;border-radius:8px;padding:10px;background:#fff}.after-sales-trace-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.after-sales-trace-head strong{color:#24344d;font-size:14px;font-weight:900}.after-sales-trace-head span{color:#6b7d94;font-size:12px;font-weight:700}.after-sales-trace p{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:8px;margin:0;color:#24344d;font-size:14px;font-weight:800}.after-sales-trace p strong{color:#0f5cc8;font-weight:900}.after-sales-trace p time{color:#6b7d94;font-size:11px;font-style:normal;font-weight:700;line-height:1.2;white-space:nowrap}.after-sales-trace .after-sales-trace-content{min-width:0;color:#24344d;line-height:1.35}.after-sales-trace span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.after-sales-trace p.after-sales-trace-empty{display:block;color:#6b7d94;font-weight:700}.after-sales-station-page .single-confirm-inline .single-confirm-actions button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;gap:0;padding:8px}.after-sales-station-page .single-confirm-inline .single-confirm-actions button.primary{display:flex;gap:0;font-size:16px}.after-sales-station-page .single-confirm-inline .single-confirm-actions button svg{display:none}.after-sales-station-page .single-recent-list .after-sales-recent-row{grid-template-columns:82px minmax(116px,.9fr) minmax(0,1.15fr) minmax(92px,.9fr) auto auto;gap:8px}.after-sales-station-page .single-recent-list .after-sales-recent-row .recent-member{min-width:0}.after-sales-station-page .single-recent-list .after-sales-recent-row .recent-member small{display:block;min-width:0;overflow:hidden;color:#61748d;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.25;font-weight:700}.single-repair-materials{display:grid;gap:8px;border:1px solid #dbe8f7;border-radius:8px;padding:10px;background:#fff}.single-repair-material-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.single-repair-material-head span{color:#61748d;font-size:14px;font-weight:900}.single-repair-material-head button{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid #bfd4ee;border-radius:8px;padding:0 10px;color:#0f5cc8;background:#f4f9ff;font-size:13px;font-weight:900}.single-repair-material-row{display:grid;grid-template-columns:minmax(0,1.1fr) 90px minmax(0,1fr) 42px;gap:8px}.single-repair-material-row input{min-width:0;min-height:40px;border:1px solid #cfdceb;border-radius:8px;padding:0 10px;color:#102033;background:#fff;font:inherit;font-weight:800}.single-repair-material-row button{min-height:40px;border:1px solid #ffc6bf;border-radius:8px;color:#b01209;background:#fff3f1}.single-stain-compare-button{justify-self:start;min-height:40px;border:1px solid #bfdbfe;border-radius:8px;padding:0 14px;color:#1d4ed8;background:#eff6ff;font-size:15px;font-weight:900}.single-stain-ai-card{display:grid;gap:10px;border:1px solid #bfdbfe;border-radius:8px;padding:12px;background:#f4f9ff}.single-stain-ai-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.single-stain-ai-head div{display:grid;gap:3px;min-width:0}.single-stain-ai-head span,.single-stain-ai-notes span{color:#0f5cc8;font-size:13px;font-weight:900}.single-stain-ai-head strong{overflow:hidden;color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:20px;line-height:1.15;font-weight:900}.single-stain-ai-head b{border-radius:999px;padding:6px 10px;color:#0f5cc8;background:#dbeafe;font-size:12px;font-weight:900}.single-stain-ai-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.single-stain-ai-meta p{display:grid;gap:4px;min-width:0;margin:0;border:1px solid #d6e8ff;border-radius:8px;padding:8px 10px;background:#fff}.single-stain-ai-meta span{color:#315985;font-size:12px;font-weight:900}.single-stain-ai-meta strong{overflow:hidden;color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:900}.single-stain-ai-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.single-stain-ai-notes div{display:grid;align-content:start;gap:6px;border:1px solid #d6e8ff;border-radius:8px;padding:10px;background:#fff}.single-stain-ai-notes p,.single-stain-ai-empty{margin:0;color:#3b4657;font-size:13px;line-height:1.36;font-weight:800;white-space:normal;word-break:break-word}.single-stain-ai-empty{border:1px dashed #9fc5ff;border-radius:8px;padding:10px;background:#fff}.station-ai-treatment-panel{display:grid;gap:10px;border:1px solid #bfdbfe;border-radius:8px;padding:12px;background:#f8fbff}.station-ai-treatment-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.station-ai-treatment-head div,.station-ai-treatment-result,.station-ai-treatment-requirements{display:grid;gap:5px;min-width:0}.station-ai-treatment-head span,.station-ai-treatment-requirements>span,.station-ai-treatment-details span{color:#0f5cc8;font-size:13px;font-weight:900}.station-ai-treatment-head strong,.station-ai-treatment-result>div>strong{color:#172033;font-size:16px;line-height:1.3;font-weight:900}.station-ai-treatment-head button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;border:0;border-radius:6px;padding:0 14px;color:#fff;background:#1677ff;font-size:14px;font-weight:900;white-space:nowrap}.station-ai-treatment-head button:disabled{color:#94a3b8;background:#e2e8f0}.station-ai-treatment-requirements textarea{width:100%;min-height:84px;box-sizing:border-box;border:1px solid #b8cce4;border-radius:6px;padding:10px 12px;color:#172033;background:#fff;font:14px/1.5 Microsoft YaHei,PingFang SC,sans-serif;resize:vertical}.station-ai-treatment-requirements textarea::placeholder{color:#7b8aa2}.station-ai-treatment-requirements textarea:focus{outline:2px solid rgba(22,119,255,.18);border-color:#1677ff}.care-station-page .single-confirm-body>.station-photo-panel,.stain-station-page .single-confirm-body>.station-photo-panel,.repair-station-page .single-confirm-body>.station-photo-panel{min-height:204px}.care-station-page .single-confirm-body>.station-photo-panel .station-photo-grid,.stain-station-page .single-confirm-body>.station-photo-panel .station-photo-grid,.repair-station-page .single-confirm-body>.station-photo-panel .station-photo-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));max-height:170px}.care-station-page .single-confirm-body>.station-photo-panel .station-photo-grid img,.stain-station-page .single-confirm-body>.station-photo-panel .station-photo-grid img,.repair-station-page .single-confirm-body>.station-photo-panel .station-photo-grid img{height:132px;aspect-ratio:auto}.station-ai-treatment-result{border-top:1px solid #dbeafe;padding-top:10px}.station-ai-treatment-result p,.station-ai-treatment-result>b,.station-ai-treatment-details p{margin:0;color:#3b4657;font-size:13px;line-height:1.45;font-weight:700;word-break:break-word}.station-ai-treatment-result>b{color:#9a6700}.station-ai-treatment-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.station-ai-treatment-details>div{display:grid;align-content:start;gap:6px;border:1px solid #dbeafe;border-radius:6px;padding:9px;background:#fff}.single-confirm-field{display:grid;gap:6px;min-width:0}.single-confirm-field select,.single-confirm-field input,.single-confirm-field textarea{min-width:0;border:1px solid #cfdceb;border-radius:8px;color:#102033;background:#fff;font:inherit;font-weight:800}.single-confirm-field select,.single-confirm-field input{min-height:44px;padding:0 12px}.stain-station-page .single-confirm-dialog{width:min(1120px,calc(100vw - 32px))}.stain-station-page .single-confirm-inline .single-confirm-dialog{width:100%;height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr) max-content;max-height:none;overflow:hidden}.stain-station-page .single-confirm-overlay.single-confirm-inline{min-height:0;overflow:hidden}.stain-station-page .single-confirm-inline .single-confirm-head{padding:10px 16px}.stain-station-page .single-confirm-inline .single-confirm-head h3{margin-top:2px;font-size:22px}.stain-station-page .single-confirm-inline .single-confirm-body{gap:8px;height:100%;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:scroll;overscroll-behavior:contain;scrollbar-gutter:stable;padding:10px 16px 16px}.stain-station-page .single-confirm-inline .single-confirm-actions{position:static;z-index:3;display:grid;align-items:stretch;justify-items:stretch;gap:10px;flex-shrink:0;overflow:visible;border-top:1px solid #dbe8f7;padding:10px 16px 12px;background:#fff;box-shadow:0 -8px 18px #0f325e0f}.stain-station-page .single-confirm-inline .single-confirm-actions button.primary{grid-column:auto}.stain-station-page .single-confirm-inline .single-confirm-actions.stain-start-actions{grid-template-columns:minmax(0,3fr) minmax(108px,1fr);min-height:72px}.stain-station-page .single-confirm-actions.stain-start-actions button.danger{grid-column:auto}.stain-station-page .single-confirm-inline .single-confirm-actions.stain-complete-actions{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:54px;grid-template-rows:none;min-height:184px;gap:10px}.stain-station-page .single-confirm-status{gap:10px;padding:8px 10px}.stain-station-page .single-confirm-status b{padding:6px 12px;font-size:14px}.stain-station-page .single-confirm-status strong{font-size:16px}.stain-station-page .single-stain-block{gap:9px}.stain-station-page .single-stain-ai-card{gap:8px;padding:9px 10px}.stain-station-page .single-stain-ai-head strong{font-size:18px}.stain-station-page .single-stain-ai-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.stain-station-page .single-stain-ai-meta p{grid-template-columns:64px minmax(0,1fr);align-items:start;padding:6px 8px}.stain-station-page .single-stain-ai-meta strong{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.28}.stain-station-page .single-stain-ai-notes{gap:6px}.stain-station-page .single-stain-ai-notes div{gap:4px;padding:8px}.stain-station-page .single-stain-ai-notes div:last-child{border-color:#fed7aa;background:#fff7ed}.stain-station-page .single-stain-ai-notes div:last-child span{color:#c2410c}.stain-station-page .single-stain-ai-notes div:last-child p{color:#7c2d12}.stain-station-page .single-stain-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stain-station-page .single-confirm-field input{min-height:38px;padding:0 10px;font-size:14px}.stain-station-page .single-confirm-field textarea{min-height:48px;padding:8px 10px}.stain-station-page .single-stain-photo-compare{gap:8px}.stain-station-page .station-photo-panel{align-content:start;min-height:156px;gap:8px;padding:10px;background:#fff}.stain-station-page .station-photo-head button{max-width:100%;min-height:40px;border:0;border-radius:8px;padding:0 14px;color:#fff;background:#2057d6;font-size:14px;font-weight:900;box-shadow:0 8px 18px #2057d62e}.stain-station-page .station-photo-head button:disabled{background:#94a3b8;box-shadow:none}.stain-station-page .station-photo-empty{font-size:13px}.stain-station-page .single-confirm-field textarea{min-height:72px}.stain-station-page .single-confirm-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:100%;min-height:52px;border-radius:8px;padding:0 16px;min-width:0}.stain-station-page .single-confirm-actions button.primary{grid-column:auto;justify-self:stretch}.stain-station-page .single-confirm-actions button.danger{grid-column:auto;justify-self:stretch;margin:0}.stain-station-page .single-confirm-actions.stain-complete-actions button.normal{display:grid;place-items:center;align-content:center;gap:3px;min-height:58px;border:1px solid #9fc5ff;color:#0f5cc8;background:#f4f9ff;box-shadow:inset 0 0 0 1px #0f5cc80a}.stain-station-page .single-confirm-actions.stain-complete-actions button.normal:hover:not(:disabled){border-color:#2057d6;background:#e8f2ff}.stain-station-page .single-confirm-actions.stain-complete-actions button.normal strong{color:#0f3f8f;font-size:15px;font-weight:800}.stain-station-page .single-confirm-actions.stain-complete-actions button.normal span{max-width:100%;overflow:hidden;color:#315985;text-overflow:ellipsis;font-size:12px;font-weight:600}.stain-station-page .single-confirm-actions.stain-complete-actions button.normal{width:100%;min-width:0}.stain-station-page .single-confirm-actions.stain-complete-actions button.danger{grid-column:span 2;grid-row:auto;width:100%;min-height:50px;border-color:#fca5a5;color:#b42318;background:#fff7f7}.stain-station-page .single-confirm-actions button strong,.stain-station-page .single-confirm-actions button span{white-space:nowrap}.single-rfid-station-page .single-confirm-head h3,.single-rfid-station-page .single-stain-ai-head strong{color:#111827;font-weight:800}.single-rfid-station-page .single-confirm-status strong,.single-rfid-station-page .single-stain-ai-meta strong,.single-rfid-station-page .single-context-grid strong,.single-rfid-station-page .single-confirm-grid strong{color:#1f2937;font-weight:700}.single-rfid-station-page .single-confirm-head span,.single-rfid-station-page .single-confirm-field span,.single-rfid-station-page .single-confirm-status b,.single-rfid-station-page .single-stain-ai-head span,.single-rfid-station-page .single-stain-ai-head b,.single-rfid-station-page .single-stain-ai-meta span,.single-rfid-station-page .single-stain-ai-notes span{font-weight:700}.single-rfid-station-page .single-stain-ai-notes p,.single-rfid-station-page .single-stain-ai-empty,.single-rfid-station-page .single-confirm-field input,.single-rfid-station-page .single-confirm-field textarea,.single-rfid-station-page .single-confirm-field select{color:#1f2937;font-weight:600}.single-shelf-field{display:grid;gap:10px;min-width:0}.single-shelf-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.single-shelf-head b{min-width:0;overflow:hidden;color:#315985;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900}.single-shelf-head div{display:inline-flex;align-items:center;gap:10px;min-width:0}.single-shelf-head button{min-height:34px;border:1px solid #bfd4ee;border-radius:8px;padding:0 10px;color:#0f5cc8;background:#f4f9ff;font-size:13px;font-weight:900}.single-shelf-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0}.single-shelf-input-row button{min-height:44px;border:1px solid #bfd4ee;border-radius:8px;padding:0 12px;color:#0f5cc8;background:#f4f9ff;font-weight:900}.single-shelf-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-height:210px;overflow:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;border:1px solid #dbe8f7;border-radius:8px;padding:8px;background:#fff}.single-shelf-options button{display:grid;grid-template-columns:auto minmax(0,1fr);justify-items:start;align-items:center;gap:4px;min-height:78px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;color:#24344d;background:#f8fbff;text-align:left}.single-shelf-options button svg{grid-row:span 3;color:#0f6fff}.single-shelf-options button.active{border-color:#0f6fff;background:#eef6ff;box-shadow:inset 0 0 0 1px #0f6fff29}.single-shelf-options button:disabled{cursor:not-allowed;opacity:.58}.single-shelf-options strong,.single-shelf-options span,.single-shelf-options em{min-width:0;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.single-shelf-options strong{color:#071527;font-size:15px;font-weight:900}.single-shelf-options span,.single-shelf-options p{color:#61748d;font-size:12px;font-weight:800}.single-shelf-options em{align-self:end;border-radius:999px;padding:3px 8px;color:#0f5cc8;background:#e8f2ff;font-size:12px;font-style:normal;font-weight:900}.single-shelf-options p{grid-column:1 / -1;margin:0;border:1px dashed #cbd9ea;border-radius:8px;padding:10px 12px;background:#f8fbff}.single-hanger-panel{display:grid;gap:8px;border:1px solid #dbe8f7;border-radius:8px;padding:10px;background:#fff}.single-hanger-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.single-hanger-head span,.single-hanger-head b{color:#315985;font-size:13px;font-weight:900}.single-hanger-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.single-hanger-options button{min-height:42px;border:1px solid #dbe8f7;border-radius:8px;padding:0 10px;color:#24344d;background:#f8fbff;font-weight:900}.single-hanger-options button.active{border-color:#0f6fff;color:#0f4fb3;background:#eef6ff}.single-hanger-panel input{width:100%;min-height:46px;border:1px solid #cfdceb;border-radius:8px;padding:0 12px;color:#071527;background:#fff;font-size:15px;font-weight:800}.single-confirm-field textarea{min-height:54px;resize:vertical;padding:10px 12px}.single-confirm-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-height:0;overflow:visible;border-top:1px solid #e1e9f3;padding:12px 22px 14px;background:#fff}.single-confirm-actions button{display:grid;place-items:center;gap:3px;min-height:50px;border-radius:8px;padding:6px 8px;font-size:14px;font-weight:900}.single-confirm-actions button.primary{grid-column:span 2;display:inline-flex;justify-content:center;gap:10px;border:0;color:#fff;background:linear-gradient(135deg,#0c67d8,#137cf2);font-size:17px}.single-confirm-actions button.normal{color:#155b3f;border:1px solid #b8e5d2;background:#f0fbf6}.single-confirm-actions button.danger{color:#b01209;border:1px solid #ffc6bf;background:#fff3f1}.single-confirm-actions button.danger.selected{border-color:#dc2626;background:#ffe4e6;box-shadow:inset 0 0 0 2px #dc262624}.single-confirm-actions button.primary+button.danger{grid-column:span 2}.single-confirm-actions button span{color:inherit;opacity:.76;font-size:12px}.single-confirm-actions button:disabled{cursor:not-allowed;opacity:.5}.station-photo-panel{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid #e1e9f3;border-radius:8px;background:#f8fbff}.station-photo-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.station-photo-head>div{display:inline-flex;align-items:center;gap:8px;min-width:0}.station-photo-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-photo-head span{flex:0 0 auto;border:1px solid #bdd7fb;border-radius:999px;padding:2px 7px;color:#0f5cc8;background:#eef6ff;font-size:12px;font-weight:900;white-space:nowrap}.station-photo-head button{flex:0 0 auto;min-height:34px;width:auto;padding:0 10px;font-size:13px;white-space:nowrap}.station-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-height:152px;min-width:0;overflow:auto}.station-photo-grid>button,.station-photo-thumb>button:first-child{display:block;width:100%;border:0;border-radius:6px;padding:0;overflow:hidden;background:transparent;cursor:zoom-in}.station-photo-grid>button:disabled,.station-photo-thumb>button:first-child:disabled{cursor:default}.station-photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;border:1px solid #d7e1ee}.station-photo-delete{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;min-height:26px;border:1px solid rgba(185,28,28,.24);border-radius:999px;padding:0;background:#fff;color:#b91c1c;box-shadow:0 6px 16px #0f172a29;cursor:pointer}.station-photo-empty{min-height:30px;margin:0;display:flex;align-items:center;color:#697b91;font-size:13px;font-weight:800}.workstation-exception-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10020;display:flex;align-items:center;justify-content:center;padding:24px;background:#0916268f}.workstation-exception-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(760px,calc(100vw - 40px));max-height:calc(100vh - 48px);max-width:760px;border-radius:12px;background:#fff;box-shadow:0 24px 72px #0f172a52;overflow:hidden}.workstation-exception-dialog .dialog-header,.workstation-exception-dialog .dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;background:#fff}.workstation-exception-dialog .dialog-header{border-bottom:1px solid #e4edf7}.workstation-exception-dialog .dialog-header h3{display:inline-flex;align-items:center;gap:8px;margin:0;color:#0f2137;font-size:20px;font-weight:900}.workstation-exception-dialog .dialog-header button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #d7e3f1;border-radius:8px;color:#52657c;background:#f8fbff}.workstation-exception-dialog .dialog-body{display:grid;gap:16px;min-height:0;padding:20px 24px 22px;overflow:auto;background:#f6f9fd}.workstation-exception-dialog .dialog-footer{justify-content:flex-end;gap:10px;border-top:1px solid #e4edf7}.workstation-exception-dialog .dialog-footer button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:42px;min-width:96px;width:auto;border:1px solid #d7e3f1;border-radius:8px;padding:0 18px;color:#26405f;background:#fff;font-weight:900;white-space:nowrap}.workstation-exception-dialog .dialog-footer .workstation-primary-action{min-width:160px;width:auto;border-color:#0f5cc8;color:#fff;background:#0f5cc8}.workstation-exception-context{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.workstation-exception-context section{display:grid;align-content:start;gap:10px;border:1px solid #dce8f6;border-radius:8px;padding:12px;background:#fff}.workstation-exception-context section header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:2px}.workstation-exception-context section header strong{color:#10233d;font-size:15px;font-weight:900}.workstation-exception-context section header span{min-width:0;overflow:hidden;color:#64748b;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.workstation-exception-context section>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.workstation-exception-context p{display:flex;align-items:baseline;gap:7px;min-width:0;margin:0;padding:0;background:transparent}.workstation-exception-context p.code em{display:inline;width:auto;padding:0;overflow:hidden;overflow-wrap:normal;word-break:normal;color:#17375e;background:transparent;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.35;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.workstation-exception-context span{flex:0 0 auto;color:#64748b;font-size:11px;font-weight:800}.workstation-exception-context em{flex:1 1 auto;min-width:0;overflow:hidden;overflow-wrap:anywhere;color:#0f172a;font-size:13px;font-style:normal;font-weight:900;line-height:1.3;text-overflow:ellipsis}.workstation-exception-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.workstation-exception-fields.single{grid-template-columns:minmax(0,1fr)}.workstation-exception-reason{margin-top:0}.workstation-exception-field{display:grid;gap:8px;min-width:0}.workstation-exception-field>span{color:#263b55;font-size:14px;font-weight:900}.workstation-exception-field input,.workstation-exception-field select,.workstation-exception-field button,.workstation-exception-field textarea{width:100%;min-width:0;border:1px solid #cfdceb;border-radius:8px;color:#102033;background:#fff;font:inherit;font-size:15px;font-weight:800;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.workstation-exception-rfid{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:8px;min-width:0}.workstation-exception-rfid button{height:42px;padding:0 10px;color:#0f5cc8;background:#f4f9ff;font-size:13px;cursor:pointer}.workstation-exception-rfid-message{color:#64748b;font-size:12px;font-weight:800}.workstation-exception-identified{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0;border:1px solid #b9d8c8;border-radius:8px;padding:9px 10px;color:#14532d;background:#f0fdf4;font-size:13px;font-weight:800}.workstation-exception-identified strong,.workstation-exception-identified span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workstation-exception-identified strong{max-width:160px}.workstation-exception-identified span{color:#386653}.searchable-select{position:relative;display:grid;min-width:0}.workstation-exception-field input,.searchable-select input{height:42px;padding:0 12px}.searchable-select-results{position:absolute;top:calc(100% + 4px);right:0;left:0;z-index:20;display:grid;max-height:220px;overflow:auto;border:1px solid #cfdceb;border-radius:8px;padding:4px;background:#fff;box-shadow:0 12px 26px #112a4f24}.searchable-select-results button,.searchable-select-results p{margin:0;border:0;border-radius:6px;padding:9px 10px;color:#102033;background:transparent;font:inherit;font-size:13px;font-weight:800;line-height:1.35;text-align:left}.searchable-select-results button{cursor:pointer}.searchable-select-results button:hover,.searchable-select-results button.active{background:#eef6ff}.searchable-select-results button:disabled{cursor:not-allowed;opacity:.55}.searchable-select-results p{color:#64748b}.workstation-exception-field select{height:44px;padding:0 12px}.workstation-exception-field textarea{min-height:118px;resize:vertical;padding:12px;line-height:1.45}.workstation-exception-field input:focus,.workstation-exception-field select:focus,.workstation-exception-field textarea:focus{border-color:#0f5cc8;box-shadow:0 0 0 3px #0f5cc81f}.workstation-exception-severity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workstation-exception-severity button{display:grid;justify-items:start;gap:3px;min-height:58px;border:1px solid #cfdceb;border-radius:8px;padding:10px 12px;color:#263b55;background:#fff;text-align:left}.workstation-exception-severity button.active{border-color:#0f5cc8;background:#eef6ff;box-shadow:inset 0 0 0 2px #0f5cc81f}.workstation-exception-severity button.danger.active{border-color:#dc2626;background:#fff1f2;box-shadow:inset 0 0 0 2px #dc26261f}.workstation-exception-severity strong{font-size:15px;font-weight:900}.workstation-exception-severity small{color:#64748b;font-size:12px;font-weight:800}.workstation-exception-checkbox{border:1px solid #dce8f6;border-radius:8px;padding:14px;background:#fff;box-shadow:0 8px 18px #112a4f0d}.workstation-exception-checkbox button{display:grid;justify-items:start;gap:3px;min-height:58px;border:1px solid #cfdceb;border-radius:8px;padding:10px 12px;color:#263b55;background:#fff;text-align:left}.workstation-exception-checkbox button.active{border-color:#dc2626;background:#fff1f2;box-shadow:inset 0 0 0 2px #dc26261f}.workstation-exception-checkbox strong{font-size:15px;font-weight:900}.workstation-exception-checkbox small{color:#64748b;font-size:12px;font-weight:800}.workstation-exception-description{border:1px solid #dce8f6;border-radius:8px;padding:14px;background:#fff;box-shadow:0 8px 18px #112a4f0d}.workstation-exception-photos{gap:12px;border-color:#dce8f6;padding:14px;background:#fff;box-shadow:0 8px 18px #112a4f0d}.workstation-exception-photos .station-photo-head{min-height:40px}.workstation-exception-photos .station-photo-head strong{color:#263b55;font-size:14px;font-weight:900}.workstation-exception-dialog .station-photo-head button{display:inline-flex;align-items:center;gap:6px;border:1px solid #cfe0f3;border-radius:8px;color:#0f5cc8;background:#eef6ff;font-weight:900}.workstation-exception-photos .station-photo-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.station-photo-thumb{position:relative;min-width:0}.workstation-exception-photos .station-photo-grid>button,.workstation-exception-photos .station-photo-thumb>button:first-child{position:relative}.workstation-exception-photos .station-photo-grid .station-photo-delete{position:absolute;top:4px;right:4px;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:2px solid #fff;border-radius:999px;padding:0;color:#fff;background:#ef4444;box-shadow:0 6px 14px #0f172a38;cursor:pointer}.workstation-exception-photos .station-photo-grid .station-photo-delete:hover{background:#dc2626}.workstation-exception-photos .station-photo-grid button.uploading,.workstation-exception-photos .station-photo-grid button.failed{cursor:wait}.workstation-exception-photos .station-photo-grid button.uploading img,.workstation-exception-photos .station-photo-grid button.failed img{filter:saturate(.85)}.workstation-exception-photos .station-photo-grid button.uploading:after,.workstation-exception-photos .station-photo-grid button.failed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:6px;background:#0f172a5c}.workstation-exception-photos .station-photo-grid button.uploading span,.workstation-exception-photos .station-photo-grid button.failed span{position:absolute;inset:auto 4px 4px;z-index:1;border-radius:999px;padding:2px 6px;color:#fff;background:#0f172ab8;font-size:11px;font-weight:900;text-align:center}.workstation-exception-photos .station-photo-grid button.failed{cursor:not-allowed}.workstation-exception-photos .station-photo-grid button.failed span{background:#b42318d1}.workstation-exception-photos .station-photo-empty{min-height:42px;display:flex;align-items:center;border:1px dashed #cfdceb;border-radius:8px;padding:0 12px;color:#6b7d94;background:#f8fbff;font-weight:800}@media(max-width:1366px){.tablet-page{grid-template-rows:56px minmax(0,1fr) 68px;min-width:1024px;font-size:14px}.workstation-page,.batch-rfid-station-page.workstation-page{grid-template-rows:56px minmax(0,1fr)}.workstation-grid,.batch-rfid-station-page .workstation-grid{min-height:calc(100dvh - 56px);height:calc(100dvh - 56px);gap:12px;padding:14px 16px}.tablet-topbar,.batch-rfid-station-page .tablet-topbar{grid-template-columns:minmax(150px,210px) minmax(0,1fr) max-content;min-height:56px;gap:8px;padding-inline:16px}.tablet-station-brand,.tablet-status,.batch-rfid-station-page .tablet-station-brand,.batch-rfid-station-page .tablet-status{gap:8px;font-size:13px}.tablet-title strong,.batch-rfid-station-page .tablet-title strong{font-size:22px}.tablet-title span,.batch-rfid-station-page .tablet-title span{font-size:12px}.tablet-home-link,.batch-rfid-station-page .tablet-home-link{min-height:32px;padding-inline:9px;font-size:13px}.tablet-card{padding:14px}.tablet-card-title{padding-bottom:10px}.tablet-card-title h2{font-size:20px;line-height:1.12}.compact-receive-station.tablet-page{grid-template-rows:56px minmax(0,1fr);overflow:hidden;font-size:13px}.compact-receive-station .tablet-topbar{grid-template-columns:minmax(132px,170px) minmax(0,1fr) minmax(0,260px);gap:6px;padding-inline:16px}.compact-receive-station .tablet-station-brand,.compact-receive-station .tablet-status{gap:8px;min-width:0;font-size:13px}.compact-receive-station .tablet-status{overflow:hidden}.compact-receive-station .tablet-title strong{font-size:22px}.compact-receive-station .tablet-title span{font-size:12px}.compact-receive-station .tablet-home-link{min-height:32px;padding-inline:9px;font-size:13px}.compact-receive-grid{grid-template-columns:minmax(270px,.78fr) minmax(340px,.88fr) minmax(320px,.93fr);gap:10px;height:calc(100dvh - 56px);min-height:0;overflow:hidden;padding:12px 16px 10px}.compact-receive-station .tablet-card{padding:10px}.compact-receive-station .tablet-card-title{padding-bottom:7px}.compact-receive-station .tablet-card-title h2{font-size:18px;line-height:1.12}.compact-receive-station .receive-info-panel,.compact-receive-station .receive-item-switcher{gap:10px}.compact-receive-station .receive-pending-orders{gap:6px;padding:8px}.compact-receive-station .tablet-card .receive-pending-order{gap:5px;min-height:60px;padding:7px 8px 7px 11px}.compact-receive-station .receive-pending-order .receive-pending-main,.compact-receive-station .receive-pending-order .receive-pending-sub{grid-template-columns:74px minmax(0,1fr) max-content;gap:5px}.compact-receive-station .receive-pending-order em{font-size:11px}.compact-receive-station .receive-pending-order strong,.compact-receive-station .receive-pending-order small{font-size:13px}.compact-receive-station .receive-pending-order b{padding:3px 6px;font-size:11px}.compact-receive-station .receive-order-summary{gap:5px;padding:7px}.compact-receive-station .receive-order-summary-main span,.compact-receive-station .receive-order-summary-grid span{font-size:11px}.compact-receive-station .receive-order-no-link,.compact-receive-station .tablet-card .receive-order-no-link,.compact-receive-station .receive-order-summary-grid strong{font-size:13px}.compact-receive-station .receive-order-summary-main p{font-size:11px}.compact-receive-station .receive-order-summary-grid{gap:5px}.compact-receive-station .receive-order-summary-grid div{padding:6px 7px}.compact-receive-station .receive-section-title strong{font-size:14px}.compact-receive-station .receive-progress{gap:5px}.compact-receive-station .receive-progress div{min-height:42px;padding:6px 7px}.compact-receive-station .receive-progress span{font-size:11px}.compact-receive-station .receive-progress strong{font-size:13px}.compact-receive-station .receive-item-main,.compact-receive-station .receive-item-extra{gap:3px}.compact-receive-station .receive-item-main b{font-size:13px}.compact-receive-station .receive-item-main small,.compact-receive-station .receive-item-extra small{font-size:11px;line-height:1.2}.compact-receive-station .receive-items strong{padding:3px 6px;font-size:11px}.workstation-grid{grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr);gap:14px;padding:16px}.workstation-exception-dialog{width:min(720px,calc(100vw - 32px));max-width:720px}.sort-station-page .workstation-grid{grid-template-columns:minmax(280px,.78fr) minmax(360px,1.05fr) minmax(320px,.9fr);gap:14px;padding:18px}.workstation-action-card{grid-column:1 / -1}.sort-station-page .workstation-action-card{grid-column:auto}.tablet-receive-grid{grid-template-columns:330px minmax(360px,1fr) 330px;gap:12px;padding-inline:24px}.compact-receive-grid{grid-template-columns:minmax(270px,.78fr) minmax(340px,.88fr) minmax(320px,.93fr)}.receive-item-switcher .receive-items button{grid-template-columns:minmax(0,1fr) 86px}.receive-item-switcher .receive-items button .receive-item-extra{grid-column:1 / -1}.compact-receive-station .receive-item-switcher .receive-items button{grid-template-columns:minmax(0,1.28fr) minmax(0,.92fr) 64px;gap:7px;min-height:48px;padding:6px 8px}.compact-receive-station .receive-item-switcher .receive-items button .receive-item-extra,.compact-receive-station .receive-item-main,.compact-receive-station .receive-item-extra,.compact-receive-station .receive-items strong{grid-column:auto}.tablet-topbar{grid-template-columns:minmax(150px,210px) minmax(0,1fr) max-content;padding-inline:16px}.tablet-title strong{font-size:22px}.rfid-actions{grid-template-columns:1fr}.wash-station-page .workstation-grid{grid-template-columns:minmax(300px,.82fr) minmax(430px,1.2fr) minmax(300px,.78fr);gap:14px;padding:16px}.wash-station-page .workstation-read-card,.wash-station-page .workstation-param-card,.wash-station-page .workstation-action-card{gap:12px;padding:16px}.wash-station-page .tablet-card-title h2{font-size:24px}.wash-station-page .workstation-read-row,.wash-read-summary{grid-template-columns:minmax(0,1fr)}.wash-station-page .workstation-param-card{max-height:none}.wash-item-row{grid-template-columns:minmax(0,1fr) minmax(120px,.75fr) minmax(78px,.42fr) 72px}.wash-action-state strong,.wash-batch-hero strong{font-size:24px}.finish-station-page .workstation-grid{grid-template-columns:minmax(300px,.82fr) minmax(390px,1.08fr) minmax(320px,.9fr);gap:14px;padding:16px}.pickup-station-page .workstation-grid{grid-template-columns:minmax(280px,.68fr) minmax(320px,.78fr) minmax(420px,1.1fr)}.finish-station-page .workstation-read-card,.finish-station-page .workstation-param-card,.finish-station-page .workstation-action-card{gap:12px;padding:16px}.finish-station-page .tablet-card-title h2{font-size:24px}.finish-station-page .workstation-read-row,.finish-read-summary,.finish-context-grid,.finish-param-grid{grid-template-columns:minmax(0,1fr)}.finish-process-route{grid-template-columns:repeat(3,minmax(0,1fr))}.finish-work-hero strong,.finish-action-state strong{font-size:24px}.finish-station-page .quality-disposition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1025px)and (max-width:1280px)and (orientation:landscape){.sort-station-page .workstation-grid{grid-template-columns:minmax(260px,.72fr) minmax(300px,1fr) minmax(300px,.92fr);grid-template-areas:"read route action";gap:12px;padding:14px}.sort-station-page .workstation-read-card{grid-area:read}.sort-station-page .sort-route-card{grid-area:route}.sort-station-page .workstation-action-card{grid-area:action}.sort-station-page .workstation-read-card,.sort-station-page .workstation-param-card,.sort-station-page .workstation-action-card{gap:10px;max-height:none;overflow:auto;padding:14px}.sort-station-page .tablet-card-title{padding-bottom:10px}.sort-station-page .tablet-card-title h2{font-size:22px}.sort-station-page .workstation-info-card{gap:8px;padding:10px}.sort-station-page .workstation-info-hero strong{font-size:20px}.sort-station-page .workstation-info-hero{gap:4px 6px;padding-bottom:8px}.sort-station-page .workstation-hero-member{gap:7px;padding:5px 7px}.sort-station-page .workstation-hero-member b:first-child{font-size:14px}.sort-station-page .workstation-hero-member b{font-size:12px}.sort-station-page .workstation-item-details{gap:6px}.sort-station-page .workstation-item-details span,.sort-action-summary p{padding:6px 8px}.sort-station-page .workstation-item-details span,.sort-station-page .workstation-item-details .order-detail-row{min-height:42px}.sort-station-page .workstation-item-details strong,.sort-station-page .workstation-item-details .workstation-order-link{font-size:14px}.sort-station-page .workstation-read-row{grid-template-columns:minmax(0,1fr) 104px;gap:8px}.sort-station-page .workstation-read-row button{min-width:0;padding-inline:8px;font-size:13px;white-space:nowrap}.sort-station-page .workstation-read-row button svg{width:16px;height:16px}.sort-station-page .sort-ai-summary,.sort-station-page .sort-basket-panel,.sort-station-page .sort-ai-reasons{gap:6px;padding:10px 12px}.sort-station-page .sort-ai-summary strong{font-size:22px}.sort-station-page .sort-ai-summary p,.sort-station-page .sort-ai-summary small,.sort-station-page .sort-ai-reasons p{font-size:13px;line-height:1.3}.sort-station-page .sort-basket-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sort-station-page .sort-basket-grid button{min-height:82px;padding:9px 9px 9px 12px}.sort-station-page .sort-basket-grid strong{font-size:14px}.sort-station-page .sort-basket-grid span{font-size:11px}.sort-station-page .sort-basket-grid small,.sort-station-page .sort-basket-grid em{font-size:10px}.sort-action-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sort-route-choice-grid{grid-template-columns:minmax(0,1fr);gap:6px}.sort-route-choice-grid button{min-height:52px;padding:8px}.sort-station-page .workstation-check-list{gap:6px}.sort-station-page .workstation-check-list div{min-height:44px;padding:8px 10px}.sort-station-page .workstation-primary-action,.sort-station-page .workstation-secondary-action{min-height:48px}.sort-station-page .station-photo-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.wash-station-page .workstation-grid{grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr);grid-template-areas:"read batch" "action batch";gap:12px;padding:14px}.wash-station-page .workstation-read-card{grid-area:read}.wash-station-page .wash-batch-card{grid-area:batch}.wash-station-page .workstation-action-card{grid-area:action}.wash-station-page .workstation-read-card,.wash-station-page .workstation-param-card,.wash-station-page .workstation-action-card{max-height:none;overflow:visible}.wash-station-page .workstation-check-list div{min-height:40px}.finish-station-page .workstation-grid{grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr);grid-template-areas:"read context" "action context";gap:12px;padding:14px}.finish-station-page .workstation-read-card{grid-area:read}.finish-station-page .finish-context-card{grid-area:context}.finish-station-page .workstation-action-card{grid-area:action}.finish-station-page .workstation-read-card,.finish-station-page .workstation-param-card,.finish-station-page .workstation-action-card{max-height:none;overflow:visible}.finish-station-page .station-photo-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.pickup-station-page .workstation-grid{grid-template-columns:minmax(260px,.68fr) minmax(300px,.74fr) minmax(420px,1.1fr);grid-template-areas:"recent read work"}.pickup-station-page .pickup-recent-card{grid-area:recent}.pickup-station-page .pickup-query-card{grid-area:read}.pickup-station-page .pickup-work-card{grid-area:work}}.wash-station-page.garment-batch-station-page .batch-garment-table-head,.wash-station-page.garment-batch-station-page .batch-garment-row{grid-template-columns:minmax(114px,1.25fr) minmax(154px,1.15fr) minmax(68px,.45fr) 50px}.batch-garment-row>.batch-garment-actions{display:flex;align-items:center;justify-content:center;height:100%;min-width:0;padding:0 4px}.batch-garment-row .wash-item-remove{display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;height:28px;min-height:28px;padding:0;border:1px solid #b8d6fb;border-radius:8px;color:#0f5cc8;background:#f7fbff;font-size:12px;font-weight:900;line-height:1;white-space:nowrap}.batch-garment-row .wash-item-remove svg{display:none}@media(max-width:1024px){.tablet-page{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100dvh;overflow-x:hidden}.tablet-topbar{grid-template-columns:1fr;justify-items:start;gap:6px;padding:10px 14px}.tablet-station-brand,.tablet-status{width:100%;flex-wrap:wrap;justify-content:flex-start;gap:6px;font-size:16px}.tablet-title{justify-items:start}.tablet-title strong{font-size:21px}.tablet-title span{font-size:13px}.tablet-home-link{margin-left:auto}.tablet-card{padding:18px}.tablet-card-title{padding-bottom:14px}.tablet-card-title h2{font-size:20px}.pickup-station-page .workstation-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:none;height:auto}.pickup-station-page .pickup-recent-card,.pickup-station-page .pickup-query-card,.pickup-station-page .pickup-work-card{grid-area:auto}.tablet-card input,.tablet-card select{min-height:46px;font-size:16px}.tablet-primary,.tablet-card button,.tablet-bottom-nav button{min-height:46px;padding-inline:14px;font-size:16px}.tablet-receive-grid,.workstation-grid,.compact-receive-grid{grid-template-columns:minmax(0,1fr);gap:12px;padding:12px;min-height:auto}.tablet-receive-grid,.compact-receive-grid,.receive-progress{grid-template-columns:1fr}.receive-progress div{min-height:60px;padding:8px 10px}.receive-progress strong{font-size:16px}.receive-items div,.receive-items button,.receive-item-switcher .receive-items button{grid-template-columns:minmax(0,1fr) max-content;gap:8px 10px;min-height:0}.receive-items strong,.receive-items em,.receive-item-main,.receive-item-extra{grid-column:1 / -1}.sort-basket-grid{grid-template-columns:1fr}.workstation-exception-overlay{align-items:stretch;padding:12px}.workstation-exception-dialog{width:100%;max-width:none;max-height:none}.workstation-exception-dialog .dialog-header,.workstation-exception-dialog .dialog-footer{padding:14px 16px}.workstation-exception-dialog .dialog-body{padding:14px 16px 16px}.workstation-exception-context,.workstation-exception-fields,.workstation-exception-severity,.workstation-exception-context section>div{grid-template-columns:1fr}.workstation-exception-photos .station-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.workstation-page .workstation-read-card,.workstation-page .workstation-param-card,.workstation-page .workstation-action-card{max-height:none;overflow:visible}.workstation-page{overflow-x:hidden}.workstation-grid{grid-auto-rows:min-content}.workstation-read-row,.workstation-info-meta,.workstation-item-details,.workstation-param-list{grid-template-columns:minmax(0,1fr)}.tablet-bottom-nav{padding:10px 14px;gap:6px}.workstation-primary-action,.workstation-secondary-action{min-height:46px;font-size:16px}.wash-station-page .workstation-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:none;padding:12px}.wash-station-page .workstation-read-card,.wash-station-page .workstation-param-card,.wash-station-page .workstation-action-card{max-height:none;overflow:visible;padding:16px}.wash-station-page .workstation-read-card,.wash-station-page .wash-batch-card,.wash-station-page .workstation-action-card{grid-area:auto}.wash-batch-hero,.wash-item-list-head{align-items:start}.wash-batch-hero,.wash-station-page .wash-param-grid,.wash-station-page .param-input-grid{grid-template-columns:minmax(0,1fr)}.wash-item-row{grid-template-columns:minmax(0,1fr);gap:4px;align-items:start}.finish-station-page .workstation-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:none;padding:12px}.finish-station-page .workstation-read-card,.finish-station-page .workstation-param-card,.finish-station-page .workstation-action-card{max-height:none;overflow:visible;padding:16px}.finish-station-page .workstation-read-card,.finish-station-page .finish-context-card,.finish-station-page .workstation-action-card{grid-area:auto}.finish-work-hero{grid-template-columns:minmax(0,1fr);align-items:start}.finish-process-route,.finish-read-summary,.finish-context-grid,.finish-param-grid{grid-template-columns:minmax(0,1fr)}.finish-station-page .station-photo-grid,.finish-station-page .quality-disposition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pickup-station-page .workstation-grid{grid-template-columns:minmax(250px,.72fr) minmax(286px,.78fr) minmax(386px,1.14fr);grid-template-areas:"recent read work";align-items:stretch;gap:12px;height:calc(100dvh - 72px);min-height:0;padding:12px}.pickup-station-page .pickup-recent-card,.pickup-station-page .pickup-query-card,.pickup-station-page .pickup-work-card{height:100%;min-height:0;max-height:none;overflow:hidden}}.workstation-page .tablet-card-title,.receive-station .tablet-card-title,.tablet-page .tablet-card-title{min-height:34px;gap:8px;padding-bottom:8px}.workstation-page .tablet-card-title h2,.receive-station .tablet-card-title h2,.tablet-page .tablet-card-title h2{font-size:20px;line-height:1.12}.workstation-page .tablet-card-title svg,.receive-station .tablet-card-title svg,.tablet-page .tablet-card-title svg{width:22px;height:22px;flex:0 0 auto}.wash-station-page.garment-batch-station-page .workstation-grid{grid-template-columns:minmax(280px,.8fr) minmax(390px,1.12fr) minmax(280px,.8fr);grid-template-areas:"read batch action";grid-template-rows:minmax(0,1fr);gap:12px;overflow:hidden;padding:12px 16px}.wash-station-page.garment-batch-station-page .workstation-read-card{grid-area:read}.wash-station-page.garment-batch-station-page .wash-batch-card{grid-area:batch}.wash-station-page.garment-batch-station-page .workstation-action-card{grid-area:action;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "machine" "params" "note" "photos" "actions";grid-template-rows:max-content max-content max-content max-content minmax(0,1fr) max-content;align-content:stretch;gap:8px;min-height:0;padding:12px}.wash-station-page.garment-batch-station-page .workstation-read-card,.wash-station-page.garment-batch-station-page .wash-batch-card,.wash-station-page.garment-batch-station-page .workstation-action-card{height:100%;max-height:none;overflow:hidden}.wash-station-page.garment-batch-station-page .workstation-action-card>.tablet-card-title{grid-area:title}.wash-station-page.garment-batch-station-page .workstation-action-card>.machine-select-row{grid-area:machine}.wash-station-page.garment-batch-station-page .workstation-action-card>.wash-param-grid{grid-area:params}.wash-station-page.garment-batch-station-page .workstation-action-card>.param-row{grid-area:note}.wash-station-page.garment-batch-station-page .workstation-action-card>.station-photo-panel{grid-area:photos;min-height:0}.wash-station-page.garment-batch-station-page .workstation-action-card>.batch-action-buttons{grid-area:actions}.wash-station-page.garment-batch-station-page .wash-param-grid,.wash-station-page.garment-batch-station-page .param-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.wash-station-page.garment-batch-station-page .machine-select-row,.wash-station-page.garment-batch-station-page .wash-param-grid .param-row,.wash-station-page.garment-batch-station-page .workstation-action-card>.param-row,.wash-station-page.garment-batch-station-page .station-photo-panel{padding:7px 8px}.wash-station-page.garment-batch-station-page .machine-select-row select,.wash-station-page.garment-batch-station-page .param-row input,.wash-station-page.garment-batch-station-page .param-row select{min-height:32px;font-size:13px}.wash-station-page.garment-batch-station-page .workstation-action-card>.param-row textarea{height:48px;min-height:48px}.wash-station-page.garment-batch-station-page .batch-action-buttons{grid-template-columns:1fr;gap:7px}.wash-station-page.garment-batch-station-page .batch-action-buttons .workstation-primary-action{min-height:55px;height:55px;padding:0 16px;font-size:18px}.wash-station-page.garment-batch-station-page .station-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:88px}.wash-station-page.garment-batch-station-page .batch-rfid-panel .shelf-code-row input{min-height:40px;font-size:14px}.wash-station-page.garment-batch-station-page .batch-rfid-actions .workstation-primary-action,.wash-station-page.garment-batch-station-page .batch-rfid-actions .workstation-secondary-action{min-height:36px;height:36px;font-size:13px}.wash-station-page.garment-batch-station-page .wash-batch-hero{min-height:60px;padding:8px 10px}.wash-station-page.garment-batch-station-page .wash-batch-hero strong{font-size:20px}.wash-station-page.garment-batch-station-page .batch-garment-table-head,.wash-station-page.garment-batch-station-page .batch-garment-row{grid-template-columns:minmax(116px,1.25fr) minmax(156px,1.15fr) minmax(66px,.44fr) 46px}.wash-station-page.garment-batch-station-page .batch-garment-row{min-height:40px}.wash-station-page.garment-batch-station-page .batch-garment-row>.batch-order-link{min-height:40px}.wash-station-page.garment-batch-station-page .batch-garment-row .wash-item-remove{width:42px;min-width:42px;height:28px;min-height:28px;font-size:12px}@media(max-width:1366px){.workstation-page .tablet-card-title,.receive-station .tablet-card-title,.tablet-page .tablet-card-title{min-height:30px;padding-bottom:6px}.workstation-page .tablet-card-title h2,.receive-station .tablet-card-title h2,.tablet-page .tablet-card-title h2{font-size:18px}.workstation-page .tablet-card-title svg,.receive-station .tablet-card-title svg,.tablet-page .tablet-card-title svg{width:20px;height:20px}}@media(max-width:1024px){.wash-station-page.garment-batch-station-page .workstation-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"read" "batch" "action";height:auto;overflow:visible}}.wash-station-page.garment-batch-station-page .workstation-action-card>.station-photo-panel{display:grid;grid-template-rows:max-content minmax(0,1fr);align-content:start;gap:8px;min-height:0;padding:10px;overflow:hidden}.wash-station-page.garment-batch-station-page .station-photo-head{min-height:24px}.wash-station-page.garment-batch-station-page .station-photo-head strong{font-size:14px}.wash-station-page.garment-batch-station-page .station-photo-grid{grid-template-columns:repeat(auto-fill,112px);grid-auto-rows:82px;justify-content:start;align-content:start;gap:8px;max-height:none;min-height:0;overflow:auto;padding-right:2px}.wash-station-page.garment-batch-station-page .station-photo-thumb>button:first-child{display:block;width:112px;height:82px}.wash-station-page.garment-batch-station-page .station-photo-grid img{width:100%;height:82px;aspect-ratio:auto;object-fit:contain;background:#f1f5f9}.wash-station-page.garment-batch-station-page .batch-garment-table-head,.wash-station-page.garment-batch-station-page .batch-garment-main{grid-template-columns:minmax(0,1.25fr) minmax(148px,1.1fr) minmax(66px,.44fr) 46px}.wash-station-page.garment-batch-station-page .batch-garment-row{display:block;min-height:58px}.wash-station-page.garment-batch-station-page .batch-garment-main{display:grid;align-items:center;min-height:58px}.wash-station-page.garment-batch-station-page .batch-garment-name-row,.wash-station-page.garment-batch-station-page .batch-garment-main>span,.wash-station-page.garment-batch-station-page .batch-garment-main>b,.wash-station-page.garment-batch-station-page .batch-garment-main>.batch-order-link{min-width:0;border-right:1px solid #edf2f7;padding:0 6px}.wash-station-page.garment-batch-station-page .batch-garment-name-row{display:grid;align-content:center;gap:2px;overflow:hidden}.wash-station-page.garment-batch-station-page .batch-garment-title-row{display:flex;align-items:center;gap:5px;min-width:0}.wash-station-page.garment-batch-station-page .batch-garment-title-row strong{overflow:hidden;color:#10233d;font-size:14px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-garment-insurance{flex:0 0 auto;border:1px solid #fed7aa;border-radius:4px;padding:1px 4px;color:#c2410c;background:#fff7ed;font-size:10px;font-style:normal;font-weight:900;line-height:16px}.wash-station-page.garment-batch-station-page .batch-garment-main>.batch-order-link{display:flex;align-items:center;min-height:36px;border-top:0;border-bottom:0;border-left:0;border-radius:0;color:#0f5cc8;background:transparent;font-size:13px;font-weight:900;text-align:left}.wash-station-page.garment-batch-station-page .batch-garment-main>span,.wash-station-page.garment-batch-station-page .batch-garment-main>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-garment-main>b{font-size:12px}.wash-station-page.garment-batch-station-page .batch-garment-main>.batch-garment-actions{display:flex;align-items:center;justify-content:center;height:36px;padding:0 4px}.wash-station-page.garment-batch-station-page .batch-garment-options{display:block;overflow:hidden;padding:0;color:#5b6d85;font-size:11px;font-weight:700;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.wash-station-page.garment-batch-station-page .station-photo-empty{align-self:start;min-height:44px;padding-top:4px}.single-rfid-station-page .single-recent-list button{min-height:78px;padding:8px 10px}.single-rfid-station-page .single-recent-list .recent-row{grid-template-columns:70px minmax(0,1fr) 64px;grid-template-areas:"time order status" "item member phone";gap:5px 8px}.single-rfid-station-page .single-recent-list .recent-row em{grid-area:time}.single-rfid-station-page .single-recent-list .recent-row small{grid-area:order;max-width:100%;font-size:13px}.single-rfid-station-page .single-recent-list .recent-row strong{grid-area:item;max-width:100%;font-size:14px}.single-rfid-station-page .single-recent-list .recent-member{grid-area:member;display:contents;min-width:0;max-width:100%}.single-rfid-station-page .single-recent-list .recent-member small{min-width:0;max-width:100%;color:#315985;font-size:12px;font-weight:800}.single-rfid-station-page .single-recent-list .recent-member small:first-child{grid-area:member}.single-rfid-station-page .single-recent-list .recent-member small:last-child{grid-area:phone;max-width:100%}.single-rfid-station-page .single-recent-list .recent-row i{grid-area:status;align-self:center;justify-self:end;max-width:64px;padding:4px 7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.single-rfid-station-page .workstation-info-meta p,.single-rfid-station-page .workstation-item-details span{grid-template-columns:56px minmax(0,1fr);padding:8px 10px}.single-rfid-station-page .workstation-info-meta strong,.single-rfid-station-page .workstation-item-details strong{font-size:14px}.single-rfid-station-page .workstation-read-card>label,.single-rfid-station-page .workstation-read-row,.single-rfid-station-page .rfid-hint,.single-rfid-station-page .workstation-info-card,.single-rfid-station-page .tablet-alert{width:100%;max-width:100%;justify-self:stretch}.single-rfid-station-page .workstation-read-row{grid-template-columns:minmax(0,1fr) 148px}.single-rfid-station-page .workstation-read-row button,.after-sales-station-page .workstation-read-row button{min-width:148px;white-space:nowrap}.single-rfid-station-page .workstation-info-hero{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label status" "name name" "member member";align-items:center;gap:5px 12px}.single-rfid-station-page .workstation-info-hero>span:not(.rfid-state):not(.workstation-hero-member){grid-area:label}.single-rfid-station-page .workstation-info-hero>strong{grid-area:name;min-width:0;align-self:start;line-height:1.1}.single-rfid-station-page .workstation-info-hero>.rfid-state{grid-area:status;justify-self:end;align-self:center}.single-rfid-station-page .workstation-hero-member{grid-area:member;display:flex;align-items:center;gap:10px;min-width:0;max-width:100%}.single-rfid-station-page .workstation-hero-member b{overflow:hidden;max-width:100%;color:#071527;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.15;font-weight:900}.single-rfid-station-page .single-recent-list .recent-row{grid-template-columns:minmax(108px,.85fr) minmax(0,1.15fr) max-content;grid-template-areas:"time order status" "item member member";gap:5px 8px}.single-rfid-station-page .single-recent-list .recent-row strong{min-width:0;overflow:hidden;overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap}.single-rfid-station-page .single-recent-list .recent-member{grid-area:member;display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;max-width:100%}.single-rfid-station-page .single-recent-list .recent-member small{grid-area:auto;min-width:0;color:#315985;font-size:12px;font-weight:800;line-height:1.15;white-space:nowrap}.single-rfid-station-page .single-recent-list .recent-member small:first-child{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}.single-rfid-station-page .single-recent-list .recent-member small:last-child{flex:0 0 auto;overflow:visible;text-overflow:clip}.single-rfid-station-page .workstation-info-hero{grid-template-columns:max-content minmax(0,1fr) auto;grid-template-areas:"label label status" "name member member";align-items:center;column-gap:12px;row-gap:6px}.single-rfid-station-page .workstation-info-hero>strong{grid-area:name;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.single-rfid-station-page .workstation-info-hero>.workstation-hero-member{grid-area:member;display:flex;align-items:center;justify-content:flex-start;gap:10px;min-width:0}.single-rfid-station-page .workstation-info-hero>.workstation-hero-member b:first-child{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}.single-rfid-station-page .workstation-info-hero>.workstation-hero-member b:last-child{flex:0 0 auto;overflow:visible;text-overflow:clip}@media(min-width:900px)and (max-width:1024px)and (orientation:landscape){.pickup-station-page .workstation-grid{grid-template-columns:minmax(220px,.7fr) minmax(250px,.78fr) minmax(310px,1.12fr);grid-template-areas:"recent read work";align-items:stretch;gap:10px;height:calc(100dvh - 72px);min-height:0;padding:10px}.pickup-station-page .pickup-recent-card{grid-area:recent}.pickup-station-page .pickup-query-card{grid-area:read}.pickup-station-page .pickup-work-card{grid-area:work}.pickup-station-page .pickup-recent-card,.pickup-station-page .pickup-query-card,.pickup-station-page .pickup-work-card{height:100%;min-height:0;max-height:none;overflow:hidden;padding:12px}}@media(min-width:900px)and (orientation:landscape){.pickup-station-page.finish-station-page .workstation-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:"recent read work";justify-content:stretch;align-items:stretch;width:100%;max-width:100%;height:calc(100dvh - 52px);min-height:0;gap:12px;padding:12px;overflow:hidden;box-sizing:border-box}.pickup-station-page .pickup-recent-card{grid-area:recent}.pickup-station-page .pickup-query-card{grid-area:read}.pickup-station-page .pickup-work-card{grid-area:work}.pickup-station-page .pickup-recent-card,.pickup-station-page .pickup-query-card,.pickup-station-page .pickup-work-card{width:100%;min-width:0;height:100%;min-height:0;max-height:none;overflow:hidden;padding:14px;box-sizing:border-box}.pickup-station-page .pickup-work-card{display:flex;flex-direction:column;align-content:initial;gap:10px}.pickup-station-page .pickup-work-card .wash-item-list{flex:1 1 auto;max-height:min(44dvh,420px)}.pickup-station-page .pickup-work-card>.station-photo-panel{flex:0 0 auto;align-self:start;width:100%;gap:8px;max-height:238px;padding:10px 12px;overflow:hidden}.pickup-station-page .pickup-work-card .station-photo-head{min-height:22px}.pickup-station-page .pickup-work-card .station-photo-head strong{font-size:14px}.pickup-station-page .pickup-work-card .station-photo-grid{grid-template-columns:repeat(auto-fill,minmax(82px,82px));grid-auto-rows:82px;justify-content:start;gap:8px;max-height:174px;overflow:auto}.pickup-station-page .pickup-work-card .station-photo-thumb,.pickup-station-page .pickup-work-card .station-photo-thumb>button:first-child,.pickup-station-page .pickup-work-card .station-photo-grid img{width:82px;height:82px}.pickup-station-page .pickup-work-card .station-photo-grid img{aspect-ratio:auto}.pickup-station-page .pickup-work-card .station-photo-empty{min-height:28px}.pickup-station-page .pickup-work-card .pickup-confirm-action{flex:0 0 auto;width:100%;margin-top:auto}}.shelf-station-page .single-confirm-inline .single-confirm-dialog.shelf-confirm-dialog .single-confirm-body{padding:10px 12px}.shelf-station-page .single-confirm-inline .single-shelf-field{gap:8px}.shelf-station-page .single-confirm-inline .single-shelf-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:8px}.shelf-station-page .single-confirm-inline .single-shelf-options button{min-height:64px;padding:8px 10px;gap:2px 6px}.delivery-station-page .workstation-grid{grid-template-columns:minmax(250px,.78fr) minmax(360px,1.18fr) minmax(320px,.92fr);grid-template-areas:"queue detail action";grid-template-rows:minmax(0,1fr);height:calc(100dvh - 72px);min-height:0;gap:12px;padding:12px;overflow:hidden}.delivery-station-page .tablet-card{min-width:0;min-height:0;height:100%;overflow:hidden;padding:14px}.delivery-queue-card{grid-area:queue;display:flex;flex-direction:column}.delivery-detail-card{grid-area:detail;display:flex;flex-direction:column;gap:12px}.delivery-action-card{grid-area:action;display:flex;flex-direction:column;gap:12px}.delivery-task-list,.delivery-garment-list{min-height:0;overflow:auto}.delivery-task-list{display:grid;align-content:start;gap:8px}.delivery-task-list>p,.delivery-empty{color:var(--muted);font-weight:700}.delivery-task-card{display:grid;gap:6px;width:100%;min-height:92px;border:1px solid var(--border-soft);border-radius:8px;padding:10px;color:var(--text);background:#fff;text-align:left}.delivery-task-card.active{border-color:var(--accent);background:#eef4ff}.delivery-task-card>span{display:flex;align-items:center;justify-content:space-between;gap:8px}.delivery-task-card strong{font-size:15px}.delivery-task-card b,.delivery-task-card small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px}.delivery-task-card em,.delivery-order-hero em,.delivery-action-status strong{flex:0 0 auto;border-radius:4px;padding:4px 7px;font-style:normal;font-size:12px;font-weight:800}.delivery-task-card em.pending,.delivery-order-hero em.pending,.delivery-action-status strong.pending{color:#a14b00;background:#fff3df}.delivery-task-card em.in_progress,.delivery-order-hero em.in_progress,.delivery-action-status strong.in_progress{color:#0f5cc8;background:#e8f1ff}.delivery-order-hero{display:flex;align-items:center;min-height:34px;justify-content:space-between;gap:10px;padding:0}.delivery-order-hero span,.delivery-info-grid span,.delivery-note span,.delivery-arrange-fields label>span,.delivery-complete-fields label>span,.delivery-action-status span{color:var(--muted);font-size:12px;font-weight:700}.delivery-order-hero button{min-width:0;overflow:hidden;border:0;padding:0;color:var(--accent);background:transparent;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:900;text-align:left}.delivery-order-hero>em{margin-left:auto}.delivery-order-hero button:hover{text-decoration:underline}.delivery-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.delivery-info-grid p{display:grid;gap:4px;margin:0;border:1px solid var(--border-soft);border-radius:6px;padding:8px 10px}.delivery-info-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.delivery-address{display:flex;align-items:flex-start;gap:8px;border:1px solid #bfdbfe;border-radius:6px;padding:10px;color:#315985;background:#f7fbff;line-height:1.45}.delivery-address svg{flex:0 0 auto;color:var(--accent)}.delivery-garment-list{display:grid;flex:1 1 0;align-content:start;min-width:0;min-height:130px;gap:8px;overflow-x:hidden;overflow-y:auto;border-top:1px solid var(--border-soft);padding-top:10px}.delivery-garment-list .wash-item-list-head{grid-column:1 / -1}.delivery-garment-card{display:grid;min-width:0;gap:8px;border:1px solid var(--border-soft);border-radius:6px;padding:10px;background:#fff}.delivery-garment-card-head{display:flex;align-items:center;gap:8px}.delivery-garment-card-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.delivery-garment-option-grid{display:flex;flex-wrap:wrap;gap:5px}.delivery-garment-option-grid span{max-width:100%;overflow-wrap:anywhere;border-radius:4px;padding:4px 6px;color:#475569;background:#f3f6fa;font-size:12px;line-height:1.3}.delivery-detail-card>.station-photo-panel{flex:0 0 auto;min-height:0}.delivery-detail-card .station-photo-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));grid-auto-rows:76px;max-height:164px;overflow:auto}.delivery-detail-card .station-photo-thumb>button:first-child,.delivery-detail-card .station-photo-grid img{height:76px}.delivery-action-status{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border-soft);border-radius:6px;padding:10px}.delivery-arrange-fields,.delivery-complete-fields{display:grid;gap:10px}.delivery-arrange-fields label,.delivery-complete-fields label,.delivery-note{display:grid;gap:6px}.delivery-arrange-fields .date-field,.delivery-arrange-fields .searchable-select{width:100%}.delivery-arrange-fields .searchable-select input{height:38px;min-height:38px;padding:0 10px;font-size:13px}.delivery-arrange-fields .searchable-select-results{max-height:164px;border-color:#bfd4ee;border-radius:6px;padding:3px;box-shadow:0 8px 18px #112a4f1f}.delivery-arrange-fields .searchable-select-results button,.delivery-arrange-fields .searchable-select-results p{min-height:34px;padding:7px 9px;font-size:12px}.delivery-note{border:1px solid #d8e6f7;border-radius:8px;padding:10px;background:#f8fbff}.delivery-note textarea{width:100%;min-height:72px;border:1px solid #bfd4ee;border-radius:8px;padding:10px 12px;resize:vertical;background:#fff;font:inherit}.delivery-signoff-note{display:grid;gap:7px;border:1px solid #d8e6f7;border-radius:8px;padding:10px;background:#f8fbff}.delivery-signoff-note>span{color:var(--muted);font-size:12px;font-weight:700}.delivery-signoff-options{display:flex;flex-wrap:wrap;gap:6px}.delivery-signoff-options button{min-height:32px;border:1px solid #bfd4ee;border-radius:6px;padding:4px 9px;color:#315985;background:#fff;font-size:12px;font-weight:800}.delivery-signoff-options button.active{border-color:var(--accent);color:#fff;background:var(--accent)}.delivery-signoff-note textarea{width:100%;min-height:66px;border:1px solid #bfd4ee;border-radius:8px;padding:9px 10px;resize:vertical;background:#fff;font:inherit}.delivery-evidence-count{margin:0;color:var(--success);font-size:13px;font-weight:800}.delivery-action-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:auto}.delivery-action-buttons button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:56px;padding:6px;font-weight:800;white-space:nowrap}@media(max-width:1024px),(orientation:portrait){.delivery-station-page .workstation-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"queue" "detail" "action";height:auto;overflow:visible}.delivery-station-page .tablet-card{height:auto;overflow:visible}.delivery-task-list,.delivery-garment-list{max-height:320px}}.shelf-station-page .single-confirm-inline .single-shelf-options button svg{width:16px;height:16px}.shelf-station-page .single-confirm-inline .single-shelf-options strong{font-size:14px}.shelf-station-page .single-confirm-inline .single-shelf-options span,.shelf-station-page .single-confirm-inline .single-shelf-options em{font-size:11px}.shelf-station-page .single-confirm-inline .single-hanger-panel{padding:8px}@media(min-width:900px)and (max-width:1366px)and (orientation:landscape){.single-rfid-station-page.tablet-page{grid-template-rows:72px minmax(0,1fr);overflow:hidden}.single-rfid-station-page .workstation-grid{grid-template-columns:minmax(260px,.8fr) minmax(320px,1.1fr) minmax(400px,1.3fr);gap:10px;width:100%;max-width:100%;height:calc(100dvh - 72px);min-height:0;overflow:hidden;padding:10px;box-sizing:border-box}.single-rfid-station-page .workstation-read-card,.single-rfid-station-page .single-scan-guide-card,.single-rfid-station-page .single-scan-last-card,.single-rfid-station-page .single-inline-empty-card,.single-rfid-station-page .single-confirm-overlay.single-confirm-inline{width:100%;min-width:0;height:100%;min-height:0;max-height:none;box-sizing:border-box}.single-rfid-station-page .workstation-read-card,.single-rfid-station-page .single-scan-guide-card,.single-rfid-station-page .single-scan-last-card,.single-rfid-station-page .single-inline-empty-card{gap:10px;padding:12px}.single-rfid-station-page .single-scan-last-card{padding-inline:10px}.single-rfid-station-page .tablet-card-title{min-height:28px;padding-bottom:6px}.single-rfid-station-page .tablet-card-title h2{font-size:17px}.single-rfid-station-page .single-recent-list{gap:7px}.single-rfid-station-page .single-recent-list button{min-height:66px;padding:7px 8px}.single-rfid-station-page .single-recent-list .recent-row{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"time status" "order order" "item item";gap:3px 6px}.single-rfid-station-page .single-recent-list .recent-member{display:none}.single-rfid-station-page .single-recent-list .recent-row em,.single-rfid-station-page .single-recent-list .recent-row small,.single-rfid-station-page .single-recent-list .recent-row strong,.single-rfid-station-page .single-recent-list .recent-row i{font-size:12px;line-height:1.15}.single-rfid-station-page .single-recent-list .recent-row i{max-width:100%;justify-self:end;padding:3px 6px}.single-rfid-station-page .workstation-read-row{grid-template-columns:minmax(0,1fr);gap:8px}.single-rfid-station-page .workstation-read-row button,.after-sales-station-page .workstation-read-row button{width:100%;min-width:0}.single-rfid-station-page .workstation-info-card{gap:8px;padding:10px}.single-rfid-station-page .workstation-info-hero{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label status" "name name" "member member";gap:5px 8px;padding-bottom:8px}.single-rfid-station-page .workstation-info-hero>strong{font-size:21px}.single-rfid-station-page .workstation-info-hero>.workstation-hero-member{gap:8px}.single-rfid-station-page .workstation-info-meta,.single-rfid-station-page .workstation-item-details{gap:6px}.single-rfid-station-page .workstation-info-meta p,.single-rfid-station-page .workstation-item-details span{grid-template-columns:48px minmax(0,1fr);padding:7px 8px}.single-rfid-station-page .workstation-info-meta strong,.single-rfid-station-page .workstation-item-details strong{font-size:13px}.single-rfid-station-page .single-scan-hero{gap:8px;padding:12px}.single-rfid-station-page .single-scan-hero strong{font-size:23px}.single-rfid-station-page .single-scan-hero p{font-size:14px;line-height:1.4}.single-rfid-station-page .single-confirm-inline .single-confirm-dialog{width:100%;height:100%;min-width:0;min-height:0;max-height:none;overflow:hidden}.single-rfid-station-page .single-confirm-inline .single-confirm-head{padding:10px 12px}.single-rfid-station-page .single-confirm-head h3{font-size:20px}.single-rfid-station-page .single-confirm-inline .single-confirm-body,.single-rfid-station-page .single-confirm-dialog.shelf-confirm-dialog .single-confirm-body,.single-rfid-station-page .single-confirm-dialog.repair-confirm-dialog .single-confirm-body{gap:8px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:10px 12px}.single-rfid-station-page .single-confirm-status{gap:8px;padding:8px 10px}.single-rfid-station-page .single-confirm-status b{padding:6px 10px;font-size:13px}.single-rfid-station-page .single-confirm-status strong{font-size:15px}.single-rfid-station-page .station-photo-panel{gap:7px;padding:8px}.single-rfid-station-page .station-photo-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:7px}.single-rfid-station-page .station-photo-thumb>button:first-child,.single-rfid-station-page .station-photo-grid img{height:72px}.single-rfid-station-page .single-confirm-grid,.single-rfid-station-page .single-stain-fields,.single-rfid-station-page .single-stain-ai-meta,.single-rfid-station-page .single-stain-ai-notes,.single-rfid-station-page .single-repair-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.single-rfid-station-page .single-repair-fields,.single-rfid-station-page .single-stain-photo-compare,.single-rfid-station-page .single-repair-photo-compare{grid-template-columns:minmax(0,1fr)}.single-rfid-station-page .single-confirm-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px}.single-rfid-station-page .single-confirm-actions button,.stain-station-page .single-confirm-actions button{width:100%;min-width:0;min-height:48px;padding:5px 8px}.single-rfid-station-page .single-confirm-actions button.primary,.single-rfid-station-page .single-confirm-actions button.primary+button.danger,.stain-station-page .single-confirm-actions button.primary,.stain-station-page .single-confirm-actions button.danger{grid-column:span 1;justify-self:stretch;width:100%}.stain-station-page .single-confirm-inline .single-confirm-actions.stain-start-actions{grid-template-columns:minmax(0,3fr) minmax(96px,1fr);grid-template-rows:none;min-height:0}.stain-station-page .single-confirm-actions.stain-start-actions button.danger{grid-column:auto}.stain-station-page .single-confirm-inline .single-confirm-actions.stain-complete-actions{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;min-height:0}.stain-station-page .single-confirm-actions.stain-complete-actions button.danger{grid-column:span 2;grid-row:auto;width:100%}.shelf-station-page .single-confirm-inline .single-shelf-options{grid-template-columns:repeat(2,minmax(0,1fr))}.shelf-station-page .single-confirm-inline .single-shelf-options button{min-height:62px}}@media(min-width:1180px)and (max-width:1366px)and (orientation:landscape){.single-rfid-station-page .workstation-grid{grid-template-columns:minmax(300px,.8fr) minmax(300px,1.1fr) minmax(400px,1.2fr);gap:12px;padding:12px}.single-rfid-station-page .workstation-read-row{grid-template-columns:minmax(0,1fr) 118px}.single-rfid-station-page .single-recent-list .recent-member{display:flex}.single-rfid-station-page .single-recent-list .recent-row{grid-template-columns:minmax(108px,.85fr) minmax(0,1.15fr) max-content;grid-template-areas:"time order status" "item member member"}.single-rfid-station-page .single-stain-photo-compare,.single-rfid-station-page .single-repair-photo-compare{grid-template-columns:repeat(2,minmax(0,1fr))}}.wash-station-page.garment-batch-station-page .batch-garment-card-list{display:grid;align-content:start;gap:8px;overflow:auto;padding:8px}.wash-station-page.garment-batch-station-page .batch-garment-card{cursor:pointer;border:1px solid #d7e2ee;border-radius:8px;padding:10px;background:#fff;box-shadow:0 1px 2px #0f233d0f}.wash-station-page.garment-batch-station-page .batch-garment-card.selected{border-color:#1d6ed8;background:#f4f9ff;box-shadow:inset 3px 0 #1d6ed8,0 1px 2px #0f233d0f}.wash-station-page.garment-batch-station-page .batch-garment-card:focus-visible{outline:2px solid #1d6ed8;outline-offset:2px}.wash-station-page.garment-batch-station-page .batch-garment-card-main{grid-column:1 / -1;width:100%;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"identity controls" "meta meta";align-items:start;gap:8px;min-width:0}.wash-station-page.garment-batch-station-page .batch-garment-card .batch-garment-name-row{grid-area:identity;display:grid;gap:3px;min-width:0}.wash-station-page.garment-batch-station-page .batch-garment-card .batch-garment-title-row{display:flex;align-items:center;gap:6px;min-width:0}.wash-station-page.garment-batch-station-page .batch-garment-card .batch-garment-title-row strong{overflow:hidden;color:#10233d;font-size:15px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-garment-card .batch-garment-options{overflow:hidden;color:#52657a;font-size:12px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-garment-card-meta{grid-area:meta;display:flex;flex-wrap:wrap;gap:4px 18px}.wash-station-page.garment-batch-station-page .batch-garment-meta-item{display:flex;align-items:center;gap:6px;min-width:0;padding:0}.wash-station-page.garment-batch-station-page .batch-garment-meta-item>span{color:#66788d;font-size:11px;font-weight:700}.wash-station-page.garment-batch-station-page .batch-garment-meta-item>strong,.wash-station-page.garment-batch-station-page .batch-garment-meta-item>code{overflow:hidden;color:#1d3148;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-garment-meta-item>code{font-family:Consolas,Courier New,monospace}.wash-station-page.garment-batch-station-page .batch-garment-card .batch-order-link{display:block;overflow:hidden;min-height:auto;padding:0;border:0;color:#075fbd;background:transparent;font-size:12px;font-weight:700;text-align:left;text-overflow:ellipsis;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-garment-card-controls{grid-area:controls;display:flex;align-items:center;justify-self:end;justify-content:flex-end;gap:8px}.wash-station-page.garment-batch-station-page .batch-garment-card-controls>b{margin:0;border-radius:4px;padding:3px 6px;color:#087443;background:#e7f6ed;font-size:12px;font-weight:700;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-garment-card-controls>b.invalid{color:#b42318;background:#fff0ef}.wash-station-page.garment-batch-station-page .batch-garment-card .wash-item-remove{width:auto;min-width:64px;min-height:30px;border-radius:6px}@media(max-width:520px){.wash-station-page.garment-batch-station-page .batch-garment-card-meta{gap:4px 12px}}.wash-station-page.garment-batch-station-page .wash-batch-card{align-self:stretch;display:flex;flex-direction:column;height:100%;max-height:none;overflow:hidden;padding:16px;background:#fff}.wash-station-page.garment-batch-station-page .wash-batch-card>.tablet-card-title{min-height:auto;margin:0;padding-bottom:12px;border-bottom:1px solid #dfe7f0}.wash-station-page.garment-batch-station-page .wash-batch-card>.tablet-card-title h2{color:#17324d;font-size:18px}.wash-station-page.garment-batch-station-page .batch-history-select{align-self:stretch;width:100%;box-sizing:border-box;grid-template-columns:max-content minmax(0,1fr) max-content;gap:8px;padding:10px 0 2px;border:0;background:transparent}.wash-station-page.garment-batch-station-page .batch-history-select>span{color:#566b82;font-size:12px;font-weight:700}.wash-station-page.garment-batch-station-page .batch-history-select select{min-height:38px;border-color:#cbd9e8;border-radius:6px;background:#fff}.wash-station-page.garment-batch-station-page .batch-history-select button{min-width:58px;min-height:38px;border-radius:6px}.wash-station-page.garment-batch-station-page .wash-batch-hero{align-self:stretch;width:100%;box-sizing:border-box;min-height:58px;margin-top:4px;border:0;border-left:4px solid #1976d2;border-radius:0 6px 6px 0;padding:9px 12px;background:#f3f8fd;box-shadow:none}.wash-station-page.garment-batch-station-page .wash-batch-hero strong{font-size:21px}.wash-station-page.garment-batch-station-page .wash-item-list{align-self:stretch;width:100%;box-sizing:border-box;display:grid;flex:1 1 auto;gap:0;min-height:0;max-height:none;overflow:auto;border:0;border-radius:0;padding:0;background:transparent}.wash-station-page.garment-batch-station-page .wash-item-list-head{position:static;min-height:48px;margin:0;border-bottom:1px solid #dfe7f0;padding:14px 0 8px;background:transparent}.wash-station-page.garment-batch-station-page .wash-item-list-head strong{color:#17324d;font-size:15px}.wash-station-page.garment-batch-station-page .wash-item-list-head span{color:#63778d;font-size:12px;font-weight:700}.wash-station-page.garment-batch-station-page .batch-garment-card-list{gap:6px;overflow:visible;padding:8px 0 0}.wash-station-page.garment-batch-station-page .batch-garment-card{border-color:#d9e4ef;border-radius:6px;padding:10px 12px;box-shadow:none}.wash-station-page.garment-batch-station-page .batch-garment-card.selected{border-color:#91bff0;background:#f5f9fe;box-shadow:inset 3px 0 #1976d2}@media(max-width:1024px){.wash-station-page.garment-batch-station-page .wash-batch-card{height:auto;max-height:none;overflow:visible}}.batch-shelf-station-page .workstation-action-card{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "machine" "params" "note" "actions" "photos";grid-template-rows:max-content max-content max-content max-content max-content minmax(0,1fr);align-content:stretch;min-height:0}.batch-shelf-station-page .workstation-action-card>.tablet-card-title{grid-area:title}.batch-shelf-station-page .workstation-action-card>.machine-select-row{grid-area:machine}.batch-shelf-station-page .workstation-action-card>.wash-param-grid{grid-area:params}.batch-shelf-station-page .workstation-action-card>.param-row{grid-area:note}.batch-shelf-station-page .workstation-action-card>.batch-action-buttons{grid-area:actions;align-self:stretch}.batch-shelf-station-page .workstation-action-card>.station-photo-panel{grid-area:photos;min-height:0}.single-rfid-station-page .single-confirm-body>.station-photo-panel{order:20;align-self:stretch;margin-top:2px}.home-pickup-station-page .workstation-grid{grid-template-columns:minmax(280px,.75fr) minmax(340px,.92fr) minmax(380px,1.08fr);grid-template-areas:"tasks detail action";grid-template-rows:minmax(0,1fr);align-items:stretch;height:calc(100dvh - 72px);min-height:0}.home-pickup-station-page .home-pickup-task-card,.home-pickup-station-page .home-pickup-detail-card,.home-pickup-station-page .home-pickup-action-card{display:grid;min-height:0;height:100%;overflow:hidden}.home-pickup-station-page .home-pickup-task-card{grid-area:tasks;grid-template-rows:auto minmax(0,1fr) auto}.home-pickup-station-page .home-pickup-detail-card{grid-area:detail;grid-template-rows:auto minmax(0,1fr)}.home-pickup-station-page .home-pickup-detail-card .workstation-info-card{align-content:start;min-height:0;overflow:auto;overscroll-behavior:contain}.home-pickup-station-page .home-pickup-action-card{grid-area:action;grid-column:auto;grid-template-rows:auto minmax(0,1fr) auto}.home-pickup-task-list{display:grid;align-content:start;gap:8px;min-height:0;overflow:auto;padding:2px 0 10px}.home-pickup-task-list>button{display:grid;gap:7px;min-width:0;min-height:78px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;color:#1f3a56;background:#fff;text-align:left}.home-pickup-task-list>button:hover:not(:disabled),.home-pickup-task-list>button.active{border-color:#75aeee;background:#f4f9ff;box-shadow:inset 3px 0 #1976d2}.home-pickup-task-list>button>span{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.home-pickup-task-list em,.home-pickup-task-list small{min-width:0;overflow:hidden;color:#63778d;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;font-weight:700}.home-pickup-task-list strong{min-width:0;overflow:hidden;color:#17324d;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:900}.home-pickup-task-list b{flex:0 0 auto;border-radius:999px;padding:3px 7px;color:#0f5cc8;background:#e8f2ff;font-size:12px;font-weight:900}.home-pickup-refresh{width:100%;min-height:48px}.home-pickup-address{display:flex;align-items:flex-start;gap:7px;margin-top:10px;border:1px solid #dbe8f7;border-radius:8px;padding:10px;color:#31506b;background:#f8fbff;font-size:14px;font-weight:800;line-height:1.4}.home-pickup-address svg{flex:0 0 auto;color:#1976d2}.home-pickup-garments{display:grid;align-content:start;gap:0;min-height:0;overflow:auto;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;background:#fff}.home-pickup-action-content{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:0;overflow:hidden}.home-pickup-time-field{display:grid;gap:6px;color:#526b85;font-size:13px;font-weight:800}.home-pickup-time-field input{width:100%;min-width:0;min-height:44px;box-sizing:border-box;border:1px solid #b8d2ef;border-radius:7px;padding:0 10px;color:#17324d;background:#fff;font:inherit;font-weight:800}.appointment-accept-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.appointment-accept-fields label{display:grid;gap:6px;min-width:0;color:#526b85;font-size:13px;font-weight:800}.appointment-accept-fields .appointment-reject-field,.appointment-accept-fields .appointment-accept-note-field{grid-column:1 / -1}.appointment-accept-fields select,.appointment-accept-fields input,.appointment-accept-fields textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #b8d2ef;border-radius:7px;padding:0 10px;color:#17324d;background:#fff;font:inherit;font-weight:800}.appointment-accept-fields select,.appointment-accept-fields input{min-height:44px}.appointment-accept-fields textarea{min-height:72px;padding-block:9px;resize:vertical}.appointment-reject-action:not(:disabled){border-color:#fecaca;color:#b42318;background:#fff1f0}.home-pickup-actions .appointment-accept-confirm-action:not(:disabled){color:#fff;background:#0f7a4f}.appointment-accept-station-page .home-pickup-detail-card>.tablet-card-title{min-height:30px;padding-bottom:8px}.appointment-accept-station-page .home-pickup-detail-card>.tablet-card-title h2{font-size:18px}.appointment-accept-station-page .home-pickup-detail-card>.tablet-card-title svg{width:20px;height:20px}.appointment-accept-station-page .home-pickup-detail-card .workstation-info-card{gap:8px;padding:12px}.appointment-accept-station-page .home-pickup-detail-card .workstation-info-hero{gap:4px 8px;padding-bottom:8px}.appointment-accept-station-page .home-pickup-detail-card .workstation-info-hero>span:not(.rfid-state),.appointment-accept-station-page .home-pickup-detail-card .workstation-info-meta span,.appointment-accept-station-page .home-pickup-detail-card .workstation-item-details em{font-size:12px}.appointment-accept-station-page .home-pickup-detail-card .workstation-info-hero strong{font-size:21px;line-height:1.1}.appointment-accept-station-page .home-pickup-detail-card .rfid-state{padding:5px 10px;font-size:12px}.appointment-accept-station-page .home-pickup-detail-card .workstation-info-meta,.appointment-accept-station-page .home-pickup-detail-card .workstation-item-details{gap:6px}.appointment-accept-station-page .home-pickup-detail-card .workstation-info-meta p,.appointment-accept-station-page .home-pickup-detail-card .workstation-item-details span{gap:3px;padding:7px 8px}.appointment-accept-station-page .home-pickup-detail-card .workstation-info-meta strong,.appointment-accept-station-page .home-pickup-detail-card .workstation-item-details strong{font-size:14px;line-height:1.2}.appointment-accept-station-page .home-pickup-detail-card .appointment-number-detail strong{overflow:hidden;font-size:12px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.appointment-accept-station-page .home-pickup-detail-card .home-pickup-address{gap:6px;margin-top:0;padding:8px;font-size:13px}.appointment-accept-station-page .home-pickup-detail-card .home-pickup-address svg{width:17px;height:17px}.appointment-detail-note,.appointment-detail-garments{display:grid;gap:7px;min-width:0;border-top:1px solid #dbe8f7;padding-top:10px}.appointment-accept-station-page .appointment-detail-note,.appointment-accept-station-page .appointment-detail-garments{gap:6px;padding-top:8px}.appointment-detail-note>span,.appointment-detail-garments>div>span{color:#526b85;font-size:13px;font-weight:900}.appointment-accept-station-page .appointment-detail-note>span,.appointment-accept-station-page .appointment-detail-garments>div>span{font-size:12px}.appointment-detail-note p{margin:0;color:#17324d;font-size:14px;font-weight:700;line-height:1.45;white-space:pre-wrap}.appointment-accept-station-page .appointment-detail-note p,.appointment-accept-station-page .appointment-detail-garments p{font-size:13px}.appointment-detail-garments>div,.appointment-detail-garments p{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;margin:0}.appointment-detail-garments>div b{flex:0 0 auto;color:#0f5cc8;font-size:12px}.appointment-detail-garments p{border-top:1px solid #edf2f7;padding-top:8px;color:#17324d;font-size:14px;font-weight:800}.appointment-detail-garments p span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-detail-garments p b{flex:0 0 auto;color:#526b85;font-size:13px}.home-pickup-garments>strong{padding-bottom:9px;color:#17324d;font-size:15px;font-weight:900}.home-pickup-garments p{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;margin:0;border-top:1px solid #edf2f7;padding:10px 0;color:#526b85;font-size:14px;font-weight:700}.home-pickup-garments p span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-pickup-garments p b{flex:0 0 auto;color:#17324d}.home-pickup-actions{display:grid;grid-template-columns:minmax(0,1fr);align-content:end;gap:10px;padding-top:12px}.home-pickup-actions>button{width:100%;min-width:0;min-height:54px}.home-pickup-actions .home-pickup-convert-action:not(:disabled){color:#fff;background:#0f7a4f}.home-pickup-order-create-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:16px;background:#0f233a75}.home-pickup-order-create-modal{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1440px,calc(100vw - 32px));height:min(920px,calc(100dvh - 32px));overflow:hidden;border:1px solid #cbdceb;border-radius:8px;background:#fff;box-shadow:0 24px 80px #09233e4d}.home-pickup-order-create-modal>header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;border-bottom:1px solid #dbe8f7;padding:12px 16px;background:#fff}.home-pickup-order-create-modal>header>div{display:grid;gap:2px;min-width:0}.home-pickup-order-create-modal>header strong{color:#17324d;font-size:18px;font-weight:900}.home-pickup-order-create-modal>header span{overflow:hidden;color:#63778d;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.home-pickup-order-create-modal>header button{display:inline-grid;flex:0 0 auto;width:42px;height:42px;place-items:center;border:1px solid #cbdceb;border-radius:7px;color:#31506b;background:#fff}.home-pickup-order-create-modal iframe{width:100%;min-width:0;height:100%;min-height:0;border:0;background:#f6f9fc}@media(max-width:899px){.home-pickup-order-create-backdrop{padding:0}.home-pickup-order-create-modal{width:100vw;height:100dvh;border:0;border-radius:0}.home-pickup-order-create-modal>header{padding:10px 12px}.home-pickup-order-create-modal>header strong{font-size:16px}}.sort-station-page .workstation-action-card{grid-template-rows:auto minmax(0,1fr) auto;align-content:stretch;overflow:hidden}.sort-action-scroll{display:grid;align-content:start;gap:14px;min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:2px}.sort-action-footer{display:grid;grid-template-columns:minmax(0,3fr) minmax(108px,1fr);gap:10px;border-top:1px solid #dbe8f7;padding-top:12px;background:#fff;box-shadow:0 -8px 18px #0f325e0f}.sort-action-footer>button{width:100%;min-width:0;min-height:54px;white-space:nowrap}@media(max-width:899px){.sort-station-page .workstation-action-card,.sort-action-scroll{overflow:visible}.sort-action-footer{grid-template-columns:minmax(0,3fr) minmax(96px,1fr);gap:8px}.sort-action-footer>button{min-height:48px}}@media(max-width:899px){.home-pickup-station-page .workstation-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"tasks" "detail" "action";grid-template-rows:auto;height:auto}.home-pickup-station-page .home-pickup-task-card,.home-pickup-station-page .home-pickup-detail-card,.home-pickup-station-page .home-pickup-action-card{height:auto;overflow:visible}.home-pickup-task-list,.home-pickup-garments,.home-pickup-action-content{max-height:320px}.home-pickup-action-content{overflow:visible}.appointment-accept-fields{grid-template-columns:minmax(0,1fr)}.appointment-accept-fields .appointment-reject-field{grid-column:auto}.home-pickup-actions{grid-template-columns:minmax(0,1fr);gap:8px}}.single-rfid-station-page .single-confirm-inline .single-confirm-actions.single-station-actions{display:grid;grid-template-columns:minmax(0,3fr) minmax(108px,1fr);align-items:stretch;gap:10px;min-height:0;overflow:visible;border-top:1px solid #dbe8f7;padding:12px 16px;background:#fff;box-shadow:0 -8px 18px #0f325e0f}.single-rfid-station-page .single-confirm-actions.single-station-actions>button{grid-column:auto;justify-self:stretch;width:100%;min-width:0;min-height:54px}.single-rfid-station-page .single-confirm-actions.single-station-actions>button.primary,.single-rfid-station-page .single-confirm-actions.single-station-actions>button.primary+button.danger{grid-column:auto}.single-rfid-station-page .single-confirm-actions.single-station-actions.stain-complete-actions,.single-rfid-station-page .single-confirm-actions.single-station-actions.quality-disposition-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.single-rfid-station-page .single-confirm-actions.single-station-actions.stain-complete-actions>button.danger,.single-rfid-station-page .single-confirm-actions.single-station-actions.quality-disposition-actions>button.danger{grid-column:span 2}.single-rfid-station-page .single-confirm-actions.single-station-actions.quality-disposition-actions>button.primary+button.danger{grid-column:auto}@media(max-width:899px),(min-width:900px)and (max-width:1366px)and (orientation:landscape){.single-rfid-station-page .single-confirm-inline .single-confirm-actions.single-station-actions{grid-template-columns:minmax(0,3fr) minmax(96px,1fr);gap:8px;padding:10px 12px}.single-rfid-station-page .single-confirm-actions.single-station-actions>button{min-height:48px;padding:5px 8px}.single-rfid-station-page .single-confirm-actions.single-station-actions.stain-complete-actions,.single-rfid-station-page .single-confirm-actions.single-station-actions.quality-disposition-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.wash-station-page.garment-batch-station-page .batch-action-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.wash-station-page.garment-batch-station-page .batch-action-buttons>:only-child{grid-column:1 / -1}.wash-station-page.garment-batch-station-page .batch-action-buttons .workstation-primary-action{min-width:0;padding:0 10px;font-size:14px;white-space:nowrap}.wash-station-page.garment-batch-station-page .batch-action-buttons .workstation-primary-action svg{width:20px;height:20px}.sort-station-page .workstation-grid{grid-template-columns:minmax(230px,.72fr) minmax(310px,1fr) minmax(330px,1.08fr);grid-template-areas:"tasks read action";gap:14px}.sort-station-page .sort-task-card{grid-area:tasks;display:grid;grid-template-rows:auto auto minmax(0,1fr);align-content:stretch;gap:10px;min-height:0;overflow:hidden}.sort-station-page .sort-read-column{grid-area:read;min-height:0}.sort-station-page .sort-read-column>.tablet-card{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;align-content:start;min-height:0;height:100%;max-height:none;overflow:auto;overscroll-behavior:contain;padding:12px}.sort-station-page .sort-read-column .workstation-read-card{grid-area:1 / 1;overflow:visible;height:auto}.sort-station-page .sort-ai-content{grid-area:2 / 1;display:grid;gap:9px;border-top:1px solid var(--border-soft);padding-top:12px}.sort-station-page .sort-read-column .tablet-card-title{padding-bottom:8px}.sort-station-page .sort-read-column .tablet-card-title h2{font-size:16px}.sort-station-page .sort-read-column .tablet-card-title>svg{width:22px;height:22px}.sort-station-page .sort-read-column .workstation-read-card{gap:9px;padding:0}.sort-station-page .sort-read-column .workstation-info-card{gap:6px;padding:8px 10px}.sort-station-page .sort-read-column .workstation-info-hero{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label status" "name name" "member member";gap:3px 6px;padding-bottom:6px}.sort-station-page .sort-read-column .workstation-info-hero>strong{font-size:20px}.sort-station-page .sort-read-column .workstation-hero-member{gap:6px;padding:4px 6px}.sort-station-page .sort-read-column .workstation-hero-member b,.sort-station-page .sort-read-column .workstation-hero-member b:first-child{font-size:12px}.sort-station-page .sort-read-column .workstation-item-details{gap:5px}.sort-station-page .sort-read-column .workstation-item-details span{min-height:34px;gap:2px;padding:5px 7px}.sort-station-page .sort-read-column .workstation-item-details em{font-size:10px}.sort-station-page .sort-read-column .workstation-item-details strong,.sort-station-page .sort-read-column .workstation-item-details .workstation-order-link{font-size:12px}.sort-station-page .sort-ai-content .sort-ai-summary,.sort-station-page .sort-ai-content .sort-ai-reasons{gap:6px;padding:10px 12px}.sort-station-page .sort-ai-content .sort-ai-summary strong{font-size:18px}.sort-station-page .sort-recommend-route{display:flex;align-items:baseline;gap:4px;min-width:0}.sort-station-page .sort-recommend-route span,.sort-station-page .sort-recommend-route strong{white-space:nowrap}.sort-station-page .sort-ai-content .sort-ai-summary p,.sort-station-page .sort-ai-content .sort-ai-summary small,.sort-station-page .sort-ai-content .sort-ai-reasons p{font-size:12px;line-height:1.3}.sort-station-page .workstation-action-card .sort-basket-panel{gap:8px;align-content:start;border:0;border-radius:0;padding:0;background:transparent}.sort-station-page .workstation-action-card .sort-basket-panel h3{color:#61748d;font-size:13px;font-weight:900;text-align:left}.sort-station-page .workstation-action-card .sort-basket-grid{gap:6px}.sort-station-page .workstation-action-card .sort-basket-grid button{grid-template-columns:18px minmax(0,1fr);min-height:56px;gap:1px 5px;padding:5px 6px 5px 8px}.sort-station-page .workstation-action-card .sort-basket-grid i{width:14px;height:14px}.sort-station-page .workstation-action-card .sort-basket-grid strong{font-size:12px;line-height:1.05}.sort-station-page .workstation-action-card .sort-basket-grid span,.sort-station-page .workstation-action-card .sort-basket-grid small,.sort-station-page .workstation-action-card .sort-basket-grid em{font-size:9px;line-height:1.05}.sort-station-page .workstation-action-card .sort-route-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sort-station-page .workstation-action-card{grid-area:action;grid-column:auto}.sort-station-page .sort-read-column .workstation-info-card{gap:8px;padding:12px}.sort-station-page .sort-read-column .workstation-info-hero{gap:4px 8px;padding-bottom:8px}.sort-station-page .sort-read-column .workstation-info-hero>strong{font-size:18px}.sort-station-page .sort-read-column .workstation-hero-member{gap:8px;padding:5px 8px}.sort-station-page .sort-read-column .workstation-hero-member b{font-size:13px}.sort-station-page .sort-read-column .workstation-hero-member b:first-child{font-size:15px}.sort-station-page .sort-read-column .workstation-item-details{gap:6px}.sort-station-page .sort-read-column .workstation-item-details span{min-height:42px;gap:3px;padding:6px 8px}.sort-station-page .sort-read-column .workstation-item-details em{font-size:11px}.sort-station-page .sort-read-column .workstation-item-details strong,.sort-station-page .sort-read-column .workstation-item-details .workstation-order-link{font-size:15px}.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:6px 14px;padding-top:0}.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details span{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:baseline;min-height:0;gap:0;border:0;padding:0;background:transparent}.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details span.order-detail-row{grid-column:1 / -1}.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details em{font-size:12px;text-align:left}.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details em:after{content:"："}.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details strong,.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details .workstation-order-link{grid-column:2;min-width:0;color:#1f3a56;font-size:12px;line-height:1.35}.sort-station-page .sort-read-column .workstation-read-sort .workstation-item-details .order-detail-row strong{overflow-wrap:anywhere;white-space:normal}.sort-station-page .tablet-card-title h2{font-size:18px;line-height:1.2}.sort-station-page .tablet-card-title>svg{width:20px;height:20px}.sort-task-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--border-soft);padding-bottom:10px}.sort-task-toolbar>span{color:var(--muted);font-size:13px;font-weight:700}.sort-station-page .sort-task-toolbar .sort-task-refresh{min-height:32px;padding:0 9px;font-size:12px}.sort-task-list{display:grid;align-content:start;gap:7px;min-height:0;overflow:auto;padding-right:2px}.sort-task-list>p{margin:0;padding:16px 8px;color:var(--muted);font-size:13px;text-align:center}.sort-task-list>p.danger{color:var(--danger)}.sort-station-page .sort-task-card .sort-task-item{display:grid;grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"name member" "rfid rfid";align-items:center;gap:5px 8px;width:100%;min-height:74px;border-color:var(--border-soft);border-radius:var(--control-radius-compact);padding:9px 10px;color:var(--control-text);background:var(--surface);text-align:left}.sort-station-page .sort-task-card .sort-task-item:hover:not(:disabled),.sort-station-page .sort-task-card .sort-task-item.active{border-color:var(--control-focus-border);background:var(--color-primary-50);box-shadow:inset 3px 0 0 var(--accent)}.sort-task-item>span{grid-area:name;display:grid;gap:3px;min-width:0}.sort-task-item strong,.sort-task-item small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sort-task-item strong{color:var(--text);font-size:14px;font-weight:700}.sort-task-item>em{grid-area:member;display:grid;gap:4px;max-width:72px;overflow:hidden;color:var(--muted);font-size:12px;font-style:normal;text-align:right;text-overflow:ellipsis;white-space:nowrap}.sort-task-item>em>b,.sort-task-item>em>small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sort-task-item>em>b{color:var(--muted);font-size:12px;font-weight:700}.sort-task-item>em>small{color:var(--muted);font-size:10px;font-weight:500}.sort-task-item>small{grid-area:rfid;color:var(--muted);font-size:11px}@media(max-width:899px){.sort-station-page .workstation-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"tasks" "read" "action";height:auto}.sort-station-page .sort-task-card{max-height:340px}}.shell{display:flex;min-height:100vh;background:#f3f6fa}.shell-top-nav{display:block}.shell-top-nav .main{width:100%}.brand{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border-soft);padding:0 8px 18px}.brand-mark{width:42px;height:54px;border-radius:4px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(15,111,115,.18))}.brand strong,.brand span{display:block}.brand strong{color:var(--text);font-size:15px}.brand span{margin-top:3px;color:var(--muted);font-size:12px}.main{flex:1;min-width:0}.topbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:84px;padding:16px 32px;border-bottom:1px solid var(--border);background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.topbar-stacked{display:grid;gap:10px;min-height:0;padding:12px 32px}.topbar-main{display:grid;grid-template-columns:auto minmax(0,1fr) max-content;align-items:center;width:100%;gap:16px}.title-area,.header-actions,.user,.ghost-button{display:flex;align-items:center}.title-area{gap:14px}.top-brand{min-width:190px;border:0;padding:0 16px 0 0;border-right:1px solid var(--border-soft)}.icon-button{display:inline-grid;place-items:center;width:48px;height:48px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:#fff}.title-area h1{margin:0;color:var(--text);font-size:21px;font-weight:800;letter-spacing:0}.title-area p{margin:5px 0 0;color:var(--muted);font-size:14px}.header-actions{justify-self:end;width:max-content;margin-left:0;gap:10px;flex:0 0 auto;white-space:nowrap;align-self:center}.topbar-main>.header-actions{grid-column:3;margin-left:auto;justify-self:end;width:max-content;min-width:max-content}.topbar-main>.header-actions .user{flex:0 0 auto;min-width:96px}.top-nav,.sub-nav{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:thin}.top-nav{grid-column:2;flex:1;min-width:0;max-width:100%;flex-wrap:nowrap;border-bottom:0;padding-bottom:0}.top-nav button,.sub-nav button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border:1px solid #dbe7f6;border-radius:8px;padding:0 16px;color:#334155;background:#fff;font-size:14px;font-weight:800;white-space:nowrap}.top-nav button.active{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:0 8px 18px #2057d624}.top-nav svg{flex:0 0 auto}.sub-nav{border-top:1px solid var(--border-soft);padding-top:10px}.sub-nav button{gap:8px;min-height:44px;border-color:transparent;background:transparent}.sub-nav button.active{color:var(--accent);border-color:#b9cdf4;background:#eef4ff}.env-pill{display:flex;align-items:center;gap:8px;height:34px;border:1px solid #dbe7ff;border-radius:999px;padding:0 12px;color:var(--accent);background:#f3f7ff;font-size:12px}.env-pill span{color:#6b7b95}.env-pill strong{font-size:12px}.icon-button,.logout-button{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--border);border-radius:8px;color:#63728a;background:var(--surface)}.logout-button:hover{color:#c82f2f;background:#fff0f0}.user strong,.user span{display:block;text-align:right}.user strong{font-size:14px}.user span{margin-top:2px;color:#7b8aa2;font-size:12px}.content{width:100%;max-width:1720px;margin:0 auto;padding:28px 32px 44px}.ghost-button{min-height:46px;gap:8px;border:1px solid #e1e8f4;border-radius:8px;padding:0 16px;color:#14213d;background:#fff}.auth-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:#2e6bff}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:40px 16px 24px;background:#f4f7fb}.login-card{width:min(400px,92vw);border:1px solid #e6ecf5;border-radius:12px;padding:34px 30px 26px;background:#fff;box-shadow:0 20px 60px #1931571f}.login-brand{margin-bottom:26px;text-align:center}.login-logo{display:inline-block;width:82px;height:110px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(15,111,115,.2))}.login-brand h1{margin:16px 0 0;color:#071832;font-size:24px;line-height:1.18;font-weight:900}.login-brand p,.login-hint{color:#73839d;font-size:15px;line-height:1.45}.login-form{display:grid;gap:16px}.login-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:18px;padding:4px;border-radius:8px;background:#eef3f9}.login-mode-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;height:38px;border:0;border-radius:6px;color:#65738b;background:transparent;font-size:14px;font-weight:700}.login-mode-tabs button.active{color:#1e4fb3;background:#fff;box-shadow:0 1px 3px #19315724}.wecom-login-panel{position:relative;display:grid;place-items:center;min-height:322px;border:1px solid #dfe7f2;border-radius:8px;overflow:hidden;background:#f8fbff}.wecom-login-qr-frame{width:296px;height:318px;overflow:hidden}.wecom-login-qr{display:block;width:400px;height:430px;border:0;background:#fff;transform:scale(.74);transform-origin:top left}.wecom-login-refresh{position:absolute;top:8px;right:8px;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:1px solid #d5e0ee;border-radius:6px;color:#2e6bff;background:#ffffffeb}.wecom-login-refresh:hover:not(:disabled){border-color:#9bbdff;background:#edf4ff}.wecom-login-refresh:disabled{color:#9aa7bb;cursor:not-allowed}.wecom-login-loading{display:inline-flex;align-items:center;gap:8px;color:#65738b;font-size:14px;font-weight:700}.login-field label{display:block;margin-bottom:6px;color:#23314c;font-size:13px;font-weight:700}.login-field input{width:100%}.login-error{border-radius:8px;padding:8px 10px;color:#b42318;background:#ffecec;font-size:13px}.slider-captcha{display:grid;gap:10px;min-width:0;border:1px solid #dfe7f2;border-radius:8px;padding:12px;background:#f8fbff}.slider-captcha-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#23314c;font-size:13px;font-weight:800}.slider-captcha-head button{border:0;padding:0;color:#2e6bff;background:transparent;font-size:12px;font-weight:800}.slider-captcha-head button:disabled{color:#9aa7bb;cursor:not-allowed}.slider-captcha-stage{position:relative;overflow:hidden;width:282px;max-width:100%;height:112px;border:1px solid #dbe5f2;border-radius:8px;background:linear-gradient(135deg,rgba(46,107,255,.18),transparent 34%),linear-gradient(45deg,#eef5ff 25%,#f8fbff 25%,#f8fbff 50%,#eef5ff 50%,#eef5ff 75%,#f8fbff 75%);background-size:auto,26px 26px}.slider-captcha-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 22% 38%,rgba(46,107,255,.14),transparent 18%),radial-gradient(circle at 78% 66%,rgba(15,122,79,.14),transparent 16%)}.slider-captcha-gap,.slider-captcha-piece{position:absolute;top:34px;width:42px;height:42px;border-radius:8px}.slider-captcha-gap{border:2px dashed rgba(35,49,76,.42);background:#ffffff9e;box-shadow:inset 0 0 0 999px #1720330a}.slider-captcha-piece{z-index:2;border:2px solid #ffffff;background:linear-gradient(135deg,#2e6bff,#0f7a4f);box-shadow:0 8px 20px #19315738}.slider-captcha-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#65738b;background:#f8fbffc7;font-size:13px;font-weight:800}.slider-captcha-track{position:relative;display:flex;align-items:center;width:282px;max-width:100%;height:42px;overflow:hidden;border:1px solid #dbe5f2;border-radius:8px;background:#fff;color:#73839d;font-size:13px;font-weight:800}.slider-captcha-track span{position:relative;z-index:1;width:100%;padding-left:52px;text-align:center;-webkit-user-select:none;user-select:none;pointer-events:none}.slider-captcha-fill{position:absolute;inset:0 auto 0 0;max-width:100%;background:#eaf2ff}.slider-captcha-handle{position:absolute;left:0;z-index:2;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:8px;color:#fff;background:#2e6bff;font-size:20px;font-weight:900;touch-action:none;-webkit-user-select:none;user-select:none}.slider-captcha-handle:disabled{opacity:1;cursor:default}.slider-captcha.verified{border-color:#bce5d3;background:#f4fbf7}.slider-captcha.verified .slider-captcha-fill,.slider-captcha.verified .slider-captcha-handle{background:#0f7a4f}.slider-captcha.verified .slider-captcha-track span{color:#0f7a4f}.login-button{display:inline-flex;align-items:center;justify-content:center;height:44px;gap:8px;border:0;border-radius:8px;color:#fff;background:#2e6bff;font-weight:700}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-hint{text-align:center}.login-footer{margin-top:24px;text-align:center;color:#73839d;font-size:12px}.login-footer a{color:#73839d;text-decoration:none}.login-footer a:hover{color:#2e6bff;text-decoration:underline}.laundry-workbench{display:grid;gap:14px}.laundry-head{display:none}.laundry-toast-region{position:fixed;top:18px;left:50%;z-index:10000;display:grid;gap:8px;width:min(520px,calc(100vw - 32px));transform:translate(-50%);pointer-events:none}.laundry-message{border:1px solid transparent;border-radius:8px;padding:12px 16px;font-size:14px;font-weight:800;box-shadow:0 14px 32px #0f172a2e;pointer-events:auto}.laundry-message.success{color:#146c43;border-color:#bfe8d2;background:#effaf5}.laundry-message.error{color:#b42318;border-color:#ffd0d0;background:#fff3f3}.appointment-live-notice{position:fixed;right:28px;bottom:28px;z-index:80;display:grid;grid-template-columns:48px minmax(220px,1fr) 72px 44px;align-items:center;gap:12px;width:min(520px,calc(100vw - 40px));min-height:96px;padding:16px;border:1px solid #b9d4ff;border-radius:8px;background:#f7fbff;box-shadow:0 18px 48px #182f5638}.appointment-live-notice-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;color:#0f4fb3;background:#e7f0ff}.appointment-live-notice-content{display:grid;gap:6px;min-width:0}.appointment-live-notice-content strong{color:#17233d;font-size:16px}.appointment-live-notice-content span{overflow:hidden;color:#5c6b82;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.appointment-live-notice-action,.appointment-live-notice-close{height:44px;border:1px solid #c8d8ee;border-radius:8px;background:#fff;color:#24324d;font-weight:700}.appointment-live-notice-action{color:#fff;border-color:var(--accent);background:var(--accent)}.appointment-live-notice-close{display:grid;place-items:center;padding:0}.laundry-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.laundry-metric,.laundry-panel{border:1px solid #e6ecf5;border-radius:8px;background:#fff}.laundry-metric{display:flex;align-items:center;gap:12px;min-height:92px;padding:16px;box-shadow:0 10px 28px #1426430d}.laundry-metric span{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;color:var(--accent);background:#eef4ff}.laundry-metric p{margin:0;color:#66748c;font-size:13px}.laundry-metric strong{display:block;margin-top:5px;font-size:20px;font-weight:800}.finance-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:8px 24px 0}.finance-metric{min-height:78px}.laundry-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.module-overview{display:none}.laundry-panel{padding:0;overflow:hidden}.laundry-panel-title{display:flex;align-items:center;gap:8px;margin-bottom:0;border-bottom:1px solid #edf1f7;padding:14px 16px;color:#2457d6;background:#fff}.laundry-panel-title h3{margin:0;color:#18243d;font-size:16px}.overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.store-touch-home{display:grid;gap:12px;margin-bottom:18px}.touch-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #dbe7f6;border-radius:8px;padding:22px 24px;background:#fff;box-shadow:0 10px 28px #1426430d}.touch-hero h3{margin:0;color:var(--text);font-size:26px;line-height:1.25}.touch-hero p{margin:8px 0 0;color:var(--muted);font-size:14px}.touch-clock{flex:none;min-width:150px;border-left:1px solid #e8eef7;padding-left:24px;text-align:right}.touch-clock span{display:block;color:var(--muted);font-size:13px}.touch-clock strong{display:block;margin-top:4px;color:var(--text);font-size:30px;line-height:1}.touch-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.touch-action{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto;gap:8px 16px;align-items:center;min-height:150px;border:1px solid #dbe7f6;border-radius:8px;padding:22px;background:#fff;text-align:left;box-shadow:0 10px 28px #1426430f}.touch-action:hover{border-color:#b7cdf3;transform:translateY(-1px)}.touch-icon{grid-row:1 / span 2;display:grid;place-items:center;width:72px;height:72px;border-radius:8px;color:#fff;background:var(--accent)}.touch-action strong{color:var(--text);font-size:28px;line-height:1.15}.touch-action em{color:var(--muted);font-size:14px;line-height:1.45;font-style:normal}.touch-action-count{position:absolute;top:14px;right:14px;min-width:32px;height:32px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;font-size:15px;font-weight:800;line-height:1;box-shadow:0 8px 18px #ef444447}.touch-action.green .touch-icon{background:#0f8f72}.touch-action.amber .touch-icon{background:#bd6b00}.touch-action.indigo .touch-icon{background:#4b5bd7}.touch-action.red .touch-icon{background:#c2414b}.touch-action.slate .touch-icon{background:#46556b}.touch-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.overview-grid article{border:1px solid var(--border);border-radius:8px;padding:18px;background:#fff;box-shadow:0 10px 28px #1426430d}.overview-grid h3{margin:0 0 12px;font-size:15px}.overview-work-card{display:flex;flex-direction:column;min-height:310px}.overview-work-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.overview-work-card header h3{margin:0}.overview-work-card header button{border:1px solid #dbe7f6;border-radius:8px;padding:6px 12px;color:#2f5edb;background:#f6f9ff;font-size:13px;font-weight:800}.overview-status-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.overview-status-summary div{border:1px solid #e5edf8;border-radius:8px;padding:10px 8px;background:#f8fbff;text-align:center}.overview-status-summary strong{display:block;color:#18243d;font-size:16px;line-height:1}.overview-status-summary span{display:block;margin-top:6px;color:#65738b;font-size:12px;font-weight:700}.overview-status-summary .warning strong{color:#bd6b00}.overview-status-summary .processing strong{color:#2f5edb}.overview-status-summary .success strong{color:#0f8f72}.overview-work-list{display:grid;gap:8px}.overview-work-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:8px;padding:8px 10px;background:#f8fafc}.overview-work-list span{min-width:0}.overview-work-list strong{display:block;overflow:hidden;color:#22314d;font-size:13px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.overview-work-list em{display:block;overflow:hidden;margin-top:3px;color:#7b8aa2;font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.overview-status-pill{flex:none;border-radius:8px;padding:5px 8px;background:#eef2f8;color:#5d6b80;font-size:12px;font-weight:800;white-space:nowrap}.overview-status-pill.warning{background:#fff4df;color:#9a5700}.overview-status-pill.processing{background:#e8f0ff;color:#2f5edb}.overview-status-pill.success{background:#e4f7f1;color:#0f7d63}.overview-status-pill.danger{background:#ffe9eb;color:#b8323c}.overview-stat-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf1f7;padding:10px 0}.overview-stat-row:first-of-type{border-top:0;padding-top:0}.overview-stat-row span{color:#65738b;font-size:13px}.overview-stat-row strong{color:#18243d;font-size:20px}.laundry-form{display:grid;gap:8px;margin-bottom:12px}.laundry-form.two{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.laundry-form.four{grid-template-columns:repeat(4,minmax(0,1fr)) auto}.management-page .laundry-form.four{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;border-bottom:1px solid var(--border-soft);padding:18px 24px;background:#fbfdff}.laundry-form.compact{margin-top:10px}.laundry-form .span{grid-column:span 2}.laundry-form button,.laundry-actions button,.list-filters button,.load-more button,.module-toolbar button,.crud-modal-actions button,.query-bar button,.primary-action,.row-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--button-height);border:0;border-radius:var(--button-radius);padding:0 16px;color:#fff;background:var(--accent);font-size:14px;font-weight:700;white-space:nowrap}.management-page .laundry-form.four button{min-height:52px}.management-page .laundry-form.four input[type=file]{padding:8px 10px;height:auto;min-height:52px}.primary-action:hover,.crud-modal-actions button:last-child:hover{background:var(--accent-strong)}.management-page{overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 12px 30px #1426430f}.management-page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:92px;border-bottom:1px solid var(--border-soft);padding:18px 24px;background:#fff}.management-page-title{display:flex;align-items:center;gap:12px;color:var(--text)}.management-page-title span{display:grid;place-items:center;width:44px;height:44px;border-radius:6px;color:var(--accent);background:#eef4ff}.management-page-title strong{display:block;font-size:16px;font-weight:800}.management-page-title p{margin:4px 0 0;color:var(--muted);font-size:14px}.management-page-actions{display:flex;align-items:center;gap:10px}.record-count{display:inline-flex;align-items:center;min-height:34px;border:1px solid var(--border-soft);border-radius:999px;padding:0 12px;color:var(--muted);background:#f8fafc;font-size:13px}.management-page-body{display:grid}.management-subsection{display:grid;gap:12px;border-top:1px solid var(--border-soft);padding-top:14px}.management-subsection-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px}.query-bar{display:flex;flex-wrap:wrap;align-items:end;gap:14px;border-bottom:1px solid #dfe8f4;padding:18px 24px;background:#f8fbff}.config-subtabs{display:inline-flex;gap:2px;margin:0 0 14px;border-bottom:1px solid #d8e1ee}.config-subtabs button{min-height:52px;border:0;border-bottom:2px solid transparent;padding:0 16px;color:#64748b;background:transparent;font-size:14px;font-weight:800}.config-subtabs button.active{border-bottom-color:#1677ff;color:#0f5cc8}.model-scene-tabs{max-width:100%;overflow-x:auto;scrollbar-width:thin}.intake-option-tab-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}.intake-option-tab-toolbar .config-subtabs{margin:0;max-width:calc(100% - 128px);overflow-x:auto}.intake-option-tab-toolbar .primary-action{flex:0 0 auto;margin-right:8px}.miniapp-settings-section{padding:20px 24px 24px}.miniapp-settings-grid{display:grid;grid-template-columns:minmax(0,760px);align-items:start;gap:16px}.miniapp-settings-field{display:grid;gap:7px;color:#5c6e85;font-size:13px;font-weight:800}.miniapp-settings-field input{width:100%}.miniapp-settings-actions{padding-top:2px}.miniapp-settings-qr-row{display:grid;grid-template-columns:minmax(0,1fr) 168px;align-items:start;gap:16px}.miniapp-settings-upload{min-width:0}.miniapp-settings-preview{display:grid;width:168px;min-height:168px;place-items:center;overflow:hidden;border:1px dashed #b7c6da;border-radius:6px;color:#7b8ba1;background:#f8fbff;font-size:12px;text-align:center}.miniapp-settings-preview img{display:block;width:160px;height:160px;object-fit:contain;background:#fff}@media(max-width:900px){.miniapp-settings-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:620px){.miniapp-settings-grid,.miniapp-settings-qr-row{grid-template-columns:minmax(0,1fr)}.miniapp-settings-preview{width:168px}}.query-bar button,.list-filters button{align-self:end;justify-self:start;width:auto;min-width:76px;max-width:120px;color:#24324d;background:#eef2f7}.list-filters button.list-filter-search,.query-bar button.list-filter-search{color:#fff;background:#2563eb}.query-bar label,.list-filters label{display:grid;gap:7px;flex:0 1 220px;min-width:160px;max-width:260px}.query-bar label:has(input),.list-filters label:has(input){flex-basis:240px;max-width:320px}.query-bar label span,.list-filters label span{color:#6b778c;font-size:13px;font-weight:700}.management-section-title{border-bottom:1px solid var(--border-soft);padding:18px 24px 12px;color:var(--text);background:linear-gradient(180deg,#fff,#fbfdff);font-size:15px;font-weight:800}.management-tabs{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border-soft);padding:12px 18px 0;background:#fff}.management-tabs button{display:inline-flex;align-items:center;gap:8px;margin:0;border:1px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;padding:10px 14px 11px;color:#56657a;background:transparent;font-size:13px;font-weight:800}.management-tabs button.active{color:#0f766e;border-color:var(--border-soft);background:#f8fffd}.management-tabs span{min-width:22px;border-radius:999px;padding:2px 7px;color:#0f766e;background:#e6f7f4;font-size:12px;text-align:center}.section-block{display:grid;gap:0;border-top:8px solid #f3f6fa}.section-block:first-child{border-top:0}.section-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border-soft);padding:18px 24px 12px;color:var(--text);background:linear-gradient(180deg,#fff,#fbfdff);font-size:15px;font-weight:800}.section-count{color:#6b778c;font-weight:600;font-size:13px}.expense-entry-panel{display:grid;gap:14px;border-bottom:1px solid var(--border-soft);padding:18px 22px;background:#fbfdff}.expense-modal{display:flex;flex-direction:column;width:min(900px,calc(100vw - 48px));max-height:min(88vh,760px);overflow:hidden}.expense-modal .crud-modal-head{flex:0 0 auto;padding:16px 22px}.expense-modal .crud-modal-actions{flex:0 0 auto;padding:14px 22px}.modal-expense-entry{flex:1 1 auto;min-height:0;max-height:none;overflow:auto;border-bottom:0;background:#fbfdff}.expense-entry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px 14px}.expense-entry-grid label{display:grid;gap:7px;min-width:0}.expense-entry-grid label>span{color:#6b778c;font-size:13px;font-weight:700}.expense-entry-grid input,.expense-entry-grid select,.expense-entry-grid textarea{min-width:0;border:1px solid var(--control-border);border-radius:var(--control-radius);color:var(--control-text);background:#fff;font-size:14px;outline:none}.expense-entry-grid textarea{min-height:88px}.expense-entry-wide{grid-column:span 2}.expense-entry-flags{display:grid;grid-column:span 3;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.expense-entry-reason,.expense-entry-upload{grid-column:1 / -1;min-width:0}.expense-entry-check{align-self:end;grid-template-columns:18px minmax(0,1fr);align-items:center;min-height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 12px;background:#fff}.expense-entry-check input{width:16px;height:16px;padding:0}.expense-entry-check span{color:#24324d}.expense-entry-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.expense-entry-actions span{color:#6b778c;font-size:13px;font-weight:700}.expense-entry-actions button:disabled{opacity:.6;cursor:not-allowed}.inline-success,.inline-error{margin:0;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:800}.inline-success{color:#0f766e;background:#e7f8f1}.inline-error{color:#b42318;background:#fff0ee}.expense-attachment-note{margin:8px 0 0;color:#6b778c;font-size:13px;font-weight:700}.expense-existing-files{display:grid;gap:8px;margin-top:10px}.expense-existing-files-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.expense-existing-files-head span{color:#6b778c;font-size:13px;font-weight:700}.expense-existing-files-head em{color:#64748b;font-size:12px;font-style:normal;font-weight:800}.expense-existing-file-list{display:grid;gap:8px}.expense-existing-file{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;border:1px solid #dbe7f6;border-radius:8px;padding:9px 10px;background:#fff}.expense-existing-file>div{display:grid;gap:3px;min-width:0}.expense-existing-file strong,.expense-existing-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-existing-file strong{color:#24324d;font-size:13px;font-weight:800}.expense-existing-file span{color:#6b778c;font-size:12px;font-weight:700}.expense-existing-file button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;border:1px solid #c9d8ee;border-radius:8px;padding:0 10px;color:#1f5fd1;background:#f6f9ff;font-size:13px;font-weight:800;white-space:nowrap}.expense-existing-file button.danger{border-color:#fecaca;color:#b42318;background:#fff5f5}.expense-existing-file button:disabled{opacity:.55;cursor:not-allowed}.file-upload-field{display:grid;gap:8px;min-width:0}.file-upload-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.file-upload-head span{color:#6b778c;font-size:13px;font-weight:700}.file-upload-head button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:1px solid #c9d8ee;border-radius:8px;padding:0 12px;color:#1f5fd1;background:#f6f9ff;font-size:13px;font-weight:800}.file-upload-body{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;min-height:72px;border:1px solid var(--control-border);border-radius:var(--control-radius);padding:9px 10px;background:#fff}.file-upload-body p{margin:0;color:#7b8798;font-size:13px;font-weight:700}.file-upload-chip{display:inline-flex;align-items:center;gap:6px;max-width:240px;border:1px solid #dbe7f6;border-radius:999px;padding:5px 8px;color:#334155;background:#f8fbff;font-size:13px;font-weight:700}.file-upload-chip em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.file-upload-chip button{display:inline-grid;place-items:center;width:20px;height:20px;border:0;border-radius:999px;padding:0;color:#64748b;background:transparent}@media(max-width:900px){.expense-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-entry-flags{grid-column:1 / -1}}@media(max-width:620px){.expense-modal{width:calc(100vw - 24px)}.expense-entry-grid,.expense-entry-flags{grid-template-columns:1fr}.expense-entry-flags,.expense-entry-reason,.expense-entry-upload{grid-column:1 / -1}.expense-existing-file{grid-template-columns:1fr}.expense-existing-file button{width:100%}}.filter-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto;border-bottom:1px solid #dfe8f4;padding:14px 24px 12px;background:#fbfdff;-webkit-overflow-scrolling:touch}.filter-tabs-normal button{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid #dbe7f6;border-radius:999px;padding:0 14px;color:#42526c;background:#fff;font-size:13px;font-weight:800;white-space:nowrap}.filter-tabs-normal button.active{color:#fff;border-color:var(--accent);background:var(--accent)}.filter-tabs-normal button span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:999px;padding:0 6px;color:inherit;background:#2563eb1a;font-size:12px}.filter-tabs-normal button.active span{background:#ffffff2e}.filter-tabs-compact{gap:8px;border-bottom:1px solid var(--border-soft);padding:12px 18px 0;background:#fff}.filter-tabs-compact button{display:inline-flex;align-items:center;gap:8px;margin:0;border:1px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;padding:10px 14px 11px;color:#56657a;background:transparent;font-size:13px;font-weight:800}.filter-tabs-compact button.active{color:#0f766e;border-color:var(--border-soft);background:#f8fffd}.filter-tabs-compact button span{min-width:22px;border-radius:999px;padding:2px 7px;color:#0f766e;background:#e6f7f4;font-size:12px;text-align:center}.module-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;border:0;border-bottom:1px solid #edf1f7;border-radius:0;padding:12px 16px;background:#fbfcfe}.module-toolbar strong{font-size:14px}.list-filters{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin:0;border:0;border-bottom:1px solid #dfe8f4;border-radius:0;padding:18px 24px;background:#f8fbff}.load-more{display:flex;justify-content:center;border-top:1px solid var(--border-soft);padding:16px 22px}.load-more button{color:#24324d;background:#eef4ff}.photo-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-top:12px}.photo-strip a{display:grid;place-items:center;aspect-ratio:1;overflow:hidden;border:1px solid #e2e9f5;border-radius:8px;color:#65738b;background:#f8fafc;font-size:12px;text-decoration:none}.photo-strip img{width:100%;height:100%;object-fit:cover}.laundry-subsection{margin-top:0;border-top:1px solid var(--border-soft);padding-top:0}.management-page-body>.laundry-subsection{border-top-width:8px;border-top-color:#f3f6fa}.laundry-subtitle{margin:0;border-bottom:1px solid var(--border-soft);padding:18px 24px 14px;color:#22314d;font-size:15px;font-weight:800}.laundry-list{display:grid;gap:8px}.laundry-list div{display:flex;justify-content:space-between;gap:12px;border-radius:8px;padding:9px 10px;background:#f8fafc}.laundry-list strong{color:#22314d;font-size:13px}.laundry-list span,.laundry-empty{color:#7b8aa2;font-size:13px}.laundry-empty{padding:56px 22px;background:#fff;text-align:center}.laundry-table-wrap{overflow-x:auto;padding:0;background:#fff;-webkit-overflow-scrolling:touch}.laundry-table{width:100%;border-collapse:collapse;table-layout:auto;min-width:100%;font-size:13px}.laundry-table th,.laundry-table td{border-bottom:1px solid var(--border-soft);padding:8px 10px;text-align:left;vertical-align:middle;white-space:normal;overflow-wrap:break-word;line-height:1.45}.laundry-table th{position:sticky;top:0;z-index:1;color:#65738b;font-size:12px;font-weight:800;background:#f8fafc;white-space:nowrap}.laundry-table .col-id,.laundry-table .col-sort_order,.laundry-table .col-item_count,.laundry-table .col-enabled,.laundry-table .col-status,.laundry-table .col-payment_status,.laundry-table .col-total_amount,.laundry-table .col-amount,.laundry-table .col-price,.laundry-table .col-base_price,.laundry-table .col-member_price,.laundry-table .col-original_price,.laundry-table .col-discount_value,.laundry-table .col-min_amount,.laundry-table .col-created_at,.laundry-table .col-updated_at{white-space:nowrap;width:1%}.laundry-table .col-payment_no,.laundry-table .col-transaction_id,.laundry-table .col-transaction_no,.laundry-table .col-order_no,.laundry-table .col-appointment_no,.laundry-table .col-ticket_no,.laundry-table .col-exception_no,.laundry-table .col-record_no,.laundry-table .col-batch_no,.laundry-table .col-task_no,.laundry-table .col-visit_no,.laundry-table .col-refund_no,.laundry-table .col-global_ticket,.laundry-table .col-business_no,.laundry-table .col-target_display{min-width:150px;white-space:nowrap}.laundry-table .col-payment_no,.laundry-table .col-transaction_id,.laundry-table .col-transaction_no,.laundry-table .col-order_no,.laundry-table .col-global_ticket{min-width:180px}.laundry-table .col-created_at,.laundry-table .col-updated_at,.laundry-table .col-paid_at,.laundry-table .col-scheduled_at,.laundry-table .col-arrived_at,.laundry-table .col-verified_at,.laundry-table .col-quoted_at,.laundry-table .col-checked_at,.laundry-table .col-handed_over_at{min-width:168px;white-space:nowrap}.laundry-table .col-channel,.laundry-table .col-type,.laundry-table .col-action_label,.laundry-table .col-actor_name,.laundry-table .col-username{min-width:110px;white-space:nowrap}.laundry-table .col-name,.laundry-table .col-title,.laundry-table .col-member_name,.laundry-table .col-store_name,.laundry-table .col-opening_store_name,.laundry-table .col-item_name,.laundry-table .col-address,.laundry-table .col-description,.laundry-table .col-remark{min-width:120px}.laundry-table .col-store_name,.laundry-table .col-opening_store_name,.laundry-table .col-item_name{white-space:nowrap}.product-catalog-table{min-width:1720px}.product-catalog-table .col-category_name{min-width:190px}.product-catalog-table .col-name{min-width:240px}.product-catalog-table .col-min_price{min-width:200px;white-space:nowrap}.product-catalog-table .row-actions .product-sort-action{width:32px;min-width:32px;padding:0}.laundry-table .col-note,.laundry-table .col-result,.laundry-table .col-status_change{min-width:160px;white-space:nowrap}.laundry-table .col-note{min-width:180px}.laundry-table .col-product_scope,.laundry-table .col-applicable_store_ids{min-width:180px;max-width:340px}.mall-products-table .col-image_url{width:5%;min-width:54px}.mall-products-table .col-product_info{width:20%}.mall-products-table .col-price_info{width:18%}.mall-products-table .col-benefit_info{width:12%}.mall-products-table .col-scope_info{width:26%;min-width:0}.mall-products-table .col-enabled_info{width:6%;min-width:64px;white-space:nowrap}.mall-products-table th:last-child,.mall-products-table td.laundry-actions{position:static;right:auto;box-shadow:none;width:164px;min-width:164px;max-width:164px}.mall-products-table th:last-child{z-index:5;background:#f8fafc}.mall-products-table td.laundry-actions{z-index:4;background:#fff}.mall-product-info-cell,.mall-product-price-cell,.mall-product-meta-cell,.mall-product-scope-cell{display:grid;gap:6px;min-width:0}.mall-product-info-main,.mall-product-info-sub,.mall-product-sale-price,.mall-product-price-sub,.mall-product-meta-cell>div,.mall-product-scope-cell>div{display:flex;align-items:center;min-width:0}.mall-product-info-main{gap:8px}.mall-product-info-main strong{min-width:0;overflow:hidden;color:#0f172a;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.mall-product-type-tag{flex:0 0 auto;border:1px solid #bfdbfe;border-radius:6px;padding:2px 6px;color:#1d4ed8;background:#eff6ff;font-size:12px;font-weight:800}.mall-product-info-sub{gap:8px;color:#64748b;font-size:12px;font-weight:700}.mall-product-info-sub>span:first-child{flex:0 1 auto}.mall-product-info-sub span,.mall-product-meta-cell span,.mall-product-scope-cell strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mall-platform-tag{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px;border:1px solid transparent;border-radius:999px;padding:2px 7px;font-size:12px;font-weight:900;line-height:1.2;white-space:nowrap}.mall-platform-tag svg{flex:0 0 auto;stroke-width:2.4}.mall-platform-tag.platform-miniapp{border-color:#bbf7d0;color:#047857;background:#ecfdf5}.mall-platform-tag.platform-meituan{border-color:#fde68a;color:#a16207;background:#fffbeb}.mall-platform-tag.platform-dianping{border-color:#fed7aa;color:#c2410c;background:#fff7ed}.mall-platform-tag.platform-douyin{border-color:#c7d2fe;color:#4338ca;background:#eef2ff}.mall-platform-tag.platform-other{border-color:#cbd5e1;color:#475569;background:#f8fafc}.mall-product-price-cell{gap:5px}.mall-product-sale-price{gap:6px;color:#b45309}.mall-product-sale-price span{flex:0 0 auto;color:#92400e;font-size:12px;font-weight:900}.mall-product-sale-price strong{min-width:0;overflow:hidden;color:#dc2626;font-size:17px;font-weight:950;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.mall-product-price-sub{gap:10px;color:#64748b;font-size:12px;font-weight:800}.mall-product-price-sub span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mall-product-price-sub span:first-child{color:#475569}.mall-product-meta-cell{color:#64748b;font-size:12px;font-weight:700}.mall-product-meta-cell>div{gap:8px}.mall-product-meta-cell strong{color:#0f172a;font-size:13px;font-weight:900;white-space:nowrap}.mall-product-scope-cell{color:#475569;font-size:12px;font-weight:800;max-width:360px}.mall-product-scope-cell>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px}.mall-product-scope-cell span{color:#94a3b8;font-weight:900}.rfid-tags-table .col-tag_code{width:240px;max-width:240px;min-width:240px}.station-history-table .col-station_label,.station-history-table .col-actor_name{width:92px;min-width:92px;white-space:nowrap}.station-history-table .col-order_no{min-width:190px;width:190px;white-space:nowrap}.station-history-table .col-record_no,.station-history-table .col-batch_no{min-width:150px;white-space:nowrap}.station-history-table .col-tag_code{min-width:160px;white-space:nowrap}.station-history-table .col-status_change{min-width:180px}.station-history-table .col-created_at{min-width:150px}.order-event-table{table-layout:fixed;min-width:1120px}.order-event-table .col-created_at{width:142px}.order-event-table .col-item_name{width:110px}.order-event-table .col-event_type{width:82px}.order-event-table .col-status_change{width:170px}.order-event-table .col-actor_name{width:86px;white-space:nowrap}.order-event-table .col-photos{width:104px;white-space:nowrap}.order-event-table .col-note{width:auto!important;min-width:260px}.table-link-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;background:transparent;color:#2563eb;font:inherit;font-weight:700;cursor:pointer}.table-link-button:hover{color:#1d4ed8;text-decoration:underline}.laundry-table.has-actions th:last-child,.laundry-table td.laundry-actions{position:sticky;right:0;z-index:1;background:#fff;box-shadow:-8px 0 14px #1426430a;width:1%;min-width:max-content;max-width:none;white-space:nowrap}.laundry-table td.laundry-actions.action-compact{min-width:150px}.laundry-table td.laundry-actions.action-normal{min-width:312px}.laundry-table td.laundry-actions.action-many{min-width:390px}.exception-row-actions{display:flex;justify-content:center;min-width:86px}.exception-row-actions button{min-width:72px}.after-sales-table{min-width:1540px}.after-sales-table .col-ticket_info{width:220px;min-width:220px}.after-sales-table .col-order_member{width:200px;min-width:200px}.after-sales-table .col-item_reason{width:180px;min-width:170px}.after-sales-table .col-after_sales_content{width:280px;min-width:240px}.after-sales-table .col-amount_store{width:190px;min-width:180px}.after-sales-list-cell{display:grid;gap:5px;min-width:0}.after-sales-list-primary,.after-sales-list-secondary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.after-sales-list-primary{color:#1f2937;font-size:14px;font-weight:800}.after-sales-list-secondary{color:#64748b;font-size:13px;font-weight:700}.after-sales-photo-preview{display:inline-flex;align-items:center;gap:6px;width:fit-content;max-width:100%;border:0;padding:0;color:#1d4ed8;background:transparent;font:inherit;cursor:pointer}.after-sales-photo-preview img{width:24px;height:24px;border-radius:4px;object-fit:cover}.after-sales-photo-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.after-sales-actions{display:grid;grid-template-columns:1fr;gap:6px;min-width:0;width:100%}.after-sales-actions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;min-width:0}.after-sales-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:58px;min-height:34px;border:1px solid #dbe7ff;border-radius:6px;padding:0 9px;color:var(--accent);background:#eef4ff;font-size:12px;font-weight:800;white-space:nowrap}.after-sales-actions button.primary{border-color:#1d4ed8;color:#fff;background:var(--accent)}.after-sales-actions button.success{border-color:#bfe8d2;color:#0f766e;background:#e7f8f1}.after-sales-actions button.danger{border-color:#ffd5d5;color:#b42318;background:#fff1f1}.after-sales-actions button:disabled{opacity:.58;cursor:not-allowed}.after-sales-actions svg{flex:0 0 auto}.exception-resolved-text{display:inline-block;max-width:180px;overflow:hidden;color:#64748b;text-overflow:ellipsis;white-space:nowrap}.exception-resolve-modal{width:min(560px,calc(100vw - 40px))}.exception-resolve-form{display:grid;gap:14px;padding:18px}.exception-resolve-form label{display:grid;gap:7px}.exception-resolve-form label>span,.exception-resolve-summary span{color:#64748b;font-size:13px;font-weight:900}.exception-resolve-form textarea{min-height:104px}.exception-resolve-summary{display:grid;gap:8px;border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.exception-resolve-summary p{display:grid;gap:3px;margin:0}.exception-resolve-summary strong{color:#172033;font-size:14px;line-height:1.45}.exception-resolve-photos{display:grid;gap:8px}.exception-resolve-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}.exception-resolve-photo-grid button{position:relative;overflow:hidden;border:1px solid #dbe5f1;border-radius:8px;padding:0;aspect-ratio:1;background:#fff;cursor:pointer}.exception-resolve-photo-grid img{width:100%;height:100%;object-fit:cover}.exception-resolve-photo-grid span,.exception-resolve-photo-empty{display:grid;place-items:center;min-height:78px;margin:0;color:#94a3b8;font-size:12px;font-weight:800}.exception-resolve-footer .primary{color:#fff;background:var(--accent)}.after-sales-process-modal{display:flex;flex-direction:column;width:min(920px,calc(100vw - 48px));max-height:min(88vh,780px);overflow:hidden}.after-sales-process-modal .crud-modal-head{flex:0 0 auto;padding:16px 22px}.after-sales-process-modal .crud-modal-head>div{display:grid;gap:4px;min-width:0}.after-sales-process-modal .crud-modal-head p{margin:0;overflow:hidden;color:#64748b;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.after-sales-process-modal .crud-modal-actions{flex:0 0 auto;padding:14px 22px}.after-sales-process-body{display:grid;gap:14px;flex:1 1 auto;min-height:0;overflow:auto;padding:18px 22px;background:#fbfdff}.after-sales-process-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.after-sales-process-summary p{display:grid;gap:5px;min-width:0;margin:0;border:1px solid #dbe7f6;border-radius:8px;padding:11px 12px;background:#fff}.after-sales-process-summary p.wide{grid-column:1 / -1}.after-sales-process-summary span,.after-sales-process-form label>span{color:#64748b;font-size:13px;font-weight:800}.after-sales-process-summary strong{min-width:0;overflow-wrap:anywhere;color:#172033;font-size:14px;font-weight:900;line-height:1.45}.after-sales-process-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px 14px}.after-sales-process-form label{display:grid;gap:7px;min-width:0}.after-sales-process-form label.wide{grid-column:1 / -1}.after-sales-process-form textarea{min-height:88px;line-height:1.45}.after-sales-detail-page,.mall-order-detail-page{margin-top:12px}.after-sales-detail-panel,.mall-order-detail-panel{width:100%}.after-sales-detail-description,.mall-order-detail-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:16px 18px;background:#fff}.after-sales-detail-description h4,.mall-order-detail-cards h4{margin:0;color:#172033;font-size:14px;font-weight:900}.after-sales-detail-description p,.mall-order-detail-cards p{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;margin:0;border-top:1px solid #eef2f7;padding-top:9px}.after-sales-detail-description span,.mall-order-detail-cards span{color:#64748b;font-size:13px;font-weight:800}.after-sales-detail-description strong,.mall-order-detail-cards strong{min-width:0;overflow-wrap:anywhere;color:#172033;font-size:13px;font-weight:800;line-height:1.55}.after-sales-detail-empty{margin:0;padding:18px;color:#94a3b8;background:#fff;font-size:13px;font-weight:800}.mall-orders-table{min-width:1120px;table-layout:fixed}.mall-orders-table .col-order_info{width:170px}.mall-orders-table .col-product_info{width:190px}.mall-orders-table .col-source_info{width:210px}.mall-orders-table .col-member_info{width:130px}.mall-orders-table .col-amount_info{width:112px}.mall-orders-table .col-status_info{width:178px}.mall-order-main-cell,.mall-order-product-cell,.mall-order-meta-cell,.mall-order-amount-cell{display:grid;gap:4px;min-width:0}.mall-order-main-cell strong,.mall-order-product-cell strong,.mall-order-meta-cell strong,.mall-order-amount-cell strong{min-width:0;overflow:hidden;color:#0f172a;font-size:13px;font-weight:900;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.mall-order-product-cell strong{white-space:normal;overflow-wrap:anywhere}.mall-order-main-cell span,.mall-order-product-cell span,.mall-order-meta-cell span,.mall-order-amount-cell span{min-width:0;overflow:hidden;color:#64748b;font-size:12px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.mall-order-amount-cell strong{color:#0f766e}.mall-order-status-cell{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.mall-order-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-width:188px}.mall-order-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;border:1px solid #dbe7ff;border-radius:6px;padding:0 9px;color:var(--accent);background:#eef4ff;font-size:12px;font-weight:800;white-space:nowrap}.mall-order-actions button.primary{border-color:#1d4ed8;color:#fff;background:var(--accent)}.mall-order-actions button.danger{border-color:#ffd5d5;color:#b42318;background:#fff1f1}.mall-ship-modal{width:min(620px,calc(100vw - 40px))}.mall-ship-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px 22px;background:#fbfdff}.mall-ship-form label{display:grid;gap:7px;min-width:0}.mall-ship-form label.wide,.mall-ship-form .inline-error{grid-column:1 / -1}.mall-ship-form label>span{color:#64748b;font-size:13px;font-weight:800}.mall-ship-form textarea{min-height:92px}.mall-order-detail-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.mall-order-detail-cards>div{display:grid;gap:9px;min-width:0;border:1px solid #e2e8f0;border-radius:8px;padding:14px;background:#fff}@media(max-width:1180px){.after-sales-table{min-width:1180px}.after-sales-process-summary,.after-sales-process-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.after-sales-table{min-width:0}.after-sales-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.after-sales-actions>div,.mall-order-actions{display:grid;grid-template-columns:1fr}.after-sales-actions button{width:100%;min-height:42px}.mall-order-detail-cards,.mall-ship-form{grid-template-columns:1fr}.after-sales-process-modal{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.after-sales-process-summary,.after-sales-process-form{grid-template-columns:1fr}}.laundry-table.has-actions th:last-child{z-index:2;background:#f8fafc}.laundry-table tbody tr:hover{background:#fbfdff}.member-table-scroll{max-width:100%;overflow-x:auto;overflow-y:visible;background:#fff}.member-table-scroll .laundry-table-wrap{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.member-table-scroll .laundry-table{width:max-content;min-width:1480px}.member-table-scroll .laundry-table th,.member-table-scroll .laundry-table td{white-space:nowrap;overflow-wrap:normal}.member-table-scroll .laundry-table .col-name,.member-table-scroll .laundry-table .col-opening_store_name{min-width:140px}.member-table-scroll .laundry-table .col-name{min-width:176px}.member-table-scroll .laundry-table .col-member_no,.member-table-scroll .laundry-table .col-phone,.member-table-scroll .laundry-table .col-created_at{min-width:132px}.member-table-scroll .laundry-table .col-principal_balance,.member-table-scroll .laundry-table .col-gift_balance,.member-table-scroll .laundry-table .col-balance{min-width:104px}.member-table-scroll .laundry-table th:last-child,.member-table-scroll .laundry-table td.laundry-actions{width:320px;min-width:320px;vertical-align:top}.member-table-scroll .laundry-actions .row-actions>button,.member-table-scroll .laundry-actions .row-actions>.row-actions-more{min-width:64px}.product-thumb{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:30px;border-radius:6px;color:#0f766e;background:#e6f7f4;font-size:12px;font-weight:800}.product-thumb.empty{color:#8a97aa;background:#eef2f7}.product-thumb-button{display:inline-flex;align-items:center;justify-content:center;width:58px;height:42px;border:1px solid transparent;border-radius:6px;padding:1px;background:transparent;cursor:zoom-in}.product-thumb-button:hover{border-color:var(--accent);background:#eef6ff}.product-thumb-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.product-thumb-img{width:54px;height:38px;border-radius:6px;object-fit:cover;background:#eef2f7;box-shadow:0 2px 8px #151f2e1a}.miniapp-home-config-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start;border-bottom:1px solid var(--border-soft);padding:18px 24px 22px;background:#fbfdff}.miniapp-home-config-settings{min-width:0}.miniapp-home-config-settings .laundry-table-wrap{margin:0}.miniapp-home-preview-panel{position:sticky;top:16px;display:grid;gap:12px;justify-items:center;min-width:0}.miniapp-home-preview-head{display:grid;gap:6px;justify-self:stretch;border:1px solid #dbe7ff;border-radius:8px;padding:12px 14px;background:#fff}.miniapp-home-preview-head strong{color:#172033;font-size:16px;font-weight:900}.miniapp-home-preview-head span{color:#66758c;font-size:13px;line-height:1.6}.miniapp-phone-frame{width:min(330px,100%);max-height:600px;overflow:auto;border:1px solid #dbe7ff;border-radius:28px;padding:12px;background:#eef4ff;box-shadow:0 16px 44px #1720331f}@media(max-width:1280px){.miniapp-home-config-layout{grid-template-columns:1fr}.miniapp-home-preview-panel{position:static;justify-items:start}}.miniapp-phone-status{display:flex;align-items:center;justify-content:space-between;padding:0 10px 8px;color:#172033;font-size:11px;font-weight:900}.miniapp-preview-toolbar{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;gap:8px;align-items:center;margin-bottom:10px}.miniapp-preview-toolbar span,.miniapp-preview-toolbar div{min-height:30px;border:1px solid #e0e8f4;border-radius:999px;background:#fff}.miniapp-preview-toolbar div{display:flex;align-items:center;padding:0 12px;color:#94a3b8;font-size:12px}.miniapp-preview-hero{position:relative;min-height:132px;overflow:hidden;border-radius:18px;padding:18px;color:#102033;background:linear-gradient(135deg,#dff7ef,#fff)}.miniapp-preview-hero.blue{background:linear-gradient(135deg,#dbeafe,#fff)}.miniapp-preview-hero img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.miniapp-preview-hero img+div{color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.24)}.miniapp-preview-hero div{position:relative;z-index:1;display:grid;gap:5px;max-width:230px}.miniapp-preview-hero em,.miniapp-preview-section-head em{font-style:normal}.miniapp-preview-hero em{color:#0f766e;font-size:11px;font-weight:900}.miniapp-preview-hero strong{font-size:21px;line-height:1.15}.miniapp-preview-hero span{font-size:12px;line-height:1.45}.miniapp-preview-banner-count{margin-top:6px;color:#7b8aa2;font-size:11px;text-align:center}.miniapp-preview-entry-card,.miniapp-preview-section{margin-top:10px;border-radius:16px;background:#fff;box-shadow:0 8px 22px #1720330f}.miniapp-preview-entry-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px 8px}.miniapp-preview-entry{display:grid;justify-items:center;gap:6px;min-width:0}.miniapp-preview-entry span{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;color:#0f766e;background:#e6f7f4;font-size:13px;font-weight:900}.miniapp-preview-entry strong{max-width:86px;overflow:hidden;color:#24324d;font-size:12px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.miniapp-preview-section{display:grid;gap:10px;padding:12px}.miniapp-preview-section-head{display:flex;justify-content:space-between;gap:12px}.miniapp-preview-section-head div{display:grid;gap:3px}.miniapp-preview-section-head strong{color:#172033;font-size:14px;font-weight:900}.miniapp-preview-section-head span,.miniapp-preview-section-head em{color:#7b8aa2;font-size:11px;font-weight:800}.miniapp-preview-progress{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:12px;padding:10px;background:#f8fafc}.miniapp-preview-progress div{display:grid;gap:3px}.miniapp-preview-progress strong{color:#24324d;font-size:12px}.miniapp-preview-progress span{color:#7b8aa2;font-size:11px}.miniapp-preview-progress button{min-width:54px;min-height:28px;border:0;border-radius:999px;color:#fff;background:var(--accent);font-size:12px;font-weight:900}.miniapp-preview-service-grid,.miniapp-preview-mall-grid,.miniapp-preview-recommend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.miniapp-preview-service{display:grid;align-content:end;min-height:92px;border-radius:14px;padding:10px;color:#17332b;background:linear-gradient(135deg,#dff7ef,#f8fffc)}.miniapp-preview-service.laundry-care{color:#3f2d14;background:linear-gradient(135deg,#ffe8c7,#fffaf2)}.miniapp-preview-service strong,.miniapp-preview-small-card strong{overflow:hidden;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.miniapp-preview-service span,.miniapp-preview-small-card span{overflow:hidden;color:#66758c;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.miniapp-preview-small-card{display:grid;gap:6px;min-width:0}.miniapp-preview-small-image{display:grid;place-items:start;min-height:78px;overflow:hidden;border-radius:14px;padding:8px;background:#f1f5f9}.miniapp-preview-small-image img{width:calc(100% + 16px);height:calc(100% + 16px);margin:-8px;object-fit:cover}.miniapp-preview-small-image span{display:inline-flex;border-radius:999px;padding:2px 7px;color:#0f766e;background:#e6f7f4;font-size:10px;font-weight:900}.miniapp-preview-mall-card{position:relative;display:grid;gap:5px;min-width:0;padding-bottom:8px}.miniapp-preview-mall-image{display:grid;place-items:center;min-height:88px;overflow:hidden;border-radius:12px;color:#0f766e;background:#edf6f4;font-size:11px;font-weight:900}.miniapp-preview-mall-image img{width:100%;height:88px;object-fit:cover}.miniapp-preview-mall-card>strong,.miniapp-preview-mall-card>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.miniapp-preview-mall-card>strong{color:#24324d;font-size:12px;font-weight:900}.miniapp-preview-mall-card>span{color:#7b8aa2;font-size:10px}.miniapp-preview-mall-card>div{display:flex;align-items:baseline;gap:5px}.miniapp-preview-mall-card b{color:#e35d35;font-size:13px}.miniapp-preview-mall-card del{color:#9aa8ba;font-size:10px}.miniapp-preview-mall-card em{position:absolute;right:5px;top:67px;border-radius:999px;padding:2px 5px;color:#0f766e;background:#e6f7f4;font-size:9px;font-style:normal;font-weight:900}.miniapp-preview-mall-empty{grid-column:1 / -1;padding:20px 8px;color:#7b8aa2;font-size:11px;text-align:center}.ai-usage-detail-modal{width:min(900px,calc(100vw - 32px));max-height:min(820px,calc(100vh - 32px));overflow:auto}.ai-usage-detail-summary{display:flex;flex-wrap:wrap;gap:8px 16px;padding:14px 0;color:#56657b;font-size:13px}.ai-usage-json-section{margin-top:14px}.ai-usage-json-section h4{margin:0 0 8px;color:#24324d;font-size:14px}.ai-usage-json-section pre{max-height:300px;margin:0;overflow:auto;border:1px solid #dbe7f0;border-radius:6px;padding:12px;color:#24324d;background:#f8fafc;font-family:Consolas,Courier New,monospace;font-size:12px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.laundry-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:6px;min-width:max-content}.laundry-actions>button,.laundry-actions>select,.laundry-actions>.row-actions,.laundry-actions>.row-actions-more,.laundry-actions .row-actions>button,.laundry-actions .row-actions>.row-actions-more{flex:0 0 auto;min-width:72px}.laundry-actions .row-actions,.laundry-actions.action-compact,.laundry-actions.action-normal,.laundry-actions.action-many{flex-wrap:nowrap}.laundry-actions button,.row-actions button{min-height:32px;border:1px solid #dbe7ff;border-radius:6px;padding:0 10px;color:var(--accent);background:#eef4ff;font-size:13px;font-weight:700;width:auto;white-space:nowrap}.row-actions{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:6px;min-width:max-content}.model-config-table th:last-child,.model-config-table td.laundry-actions{width:244px;min-width:244px;max-width:244px;white-space:normal}.model-config-table .col-model_type{min-width:132px;white-space:nowrap}.model-config-table .col-is_default{width:96px;min-width:96px;text-align:center;white-space:nowrap}.model-config-table td.laundry-actions .row-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-width:0}.model-config-table td.laundry-actions .row-actions>button{min-width:0;width:100%;padding:0 6px}.appointments-table th:last-child,.appointments-table td.laundry-actions{width:220px;min-width:220px;max-width:220px}.appointments-table{min-width:1360px;font-size:14px}.appointments-table th{font-size:13px}.appointments-table th,.appointments-table td{padding:10px 12px}.appointments-table .col-appointment_info{width:210px;min-width:210px}.appointments-table .col-member_info{width:190px;min-width:190px}.appointments-table .col-pickup_plan{width:230px;min-width:230px}.appointments-table .col-estimated_quote{width:132px;min-width:132px;max-width:132px}.appointments-table .col-appointment_summary{width:300px;min-width:260px}.appointment-list-cell{display:grid;gap:5px;min-width:0}.appointment-list-cell-primary,.appointment-list-cell-secondary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-list-cell-primary{color:#223048;font-size:15px;font-weight:700}.appointment-list-cell-secondary{color:var(--text-muted);font-size:13px}.appointment-list-time-stack{display:grid;gap:2px;white-space:normal}.appointment-list-time-stack span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-list-cancel-reason{display:block;overflow-wrap:anywhere;white-space:normal;line-height:1.4}.appointment-list-status{display:inline-block;margin-left:6px;padding:2px 6px;border:1px solid #cfe0ff;border-radius:4px;color:#1d4ed8;background:#eef4ff;font-size:13px;font-weight:700}.appointment-list-status.warning{border-color:#f5d5a1;color:#9a5b00;background:#fff7e8}.appointment-list-status.success{border-color:#bfe8d2;color:#0f766e;background:#e7f8f1}.appointment-list-status.danger{border-color:#ffd5d5;color:#b42318;background:#fff1f1}.appointment-management-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0}.appointment-management-actions button{flex:0 0 auto;width:100%}.row-actions.appointment-management-actions button.success{border-color:#bfe8d2;color:#0f766e;background:#e7f8f1}.row-actions.appointment-management-actions button.success:hover{background:#d4f3e4}.member-table-scroll .laundry-actions{white-space:normal}.member-table-scroll .laundry-actions .row-actions{width:100%;min-width:0;justify-content:flex-start;flex-wrap:wrap;row-gap:6px}.member-row-actions{display:flex;flex-wrap:nowrap;gap:6px;width:100%;min-width:0}.member-row-actions button{flex:1 1 0;min-width:0;min-height:32px;border:1px solid #dbe7ff;border-radius:6px;padding:0 6px;color:var(--accent);background:#eef4ff;font-size:13px;font-weight:700;white-space:nowrap;text-align:center}.member-row-actions button.danger{border-color:#ffd5d5;color:#b42318;background:#fff1f1}.member-name-cell{display:inline-flex;align-items:center;gap:10px;min-width:0}.member-list-avatar{display:inline-grid;flex:0 0 34px;place-items:center;overflow:hidden;width:34px;height:34px;border-radius:999px;color:#2563eb;background:#eff6ff}.member-list-avatar img{width:100%;height:100%;object-fit:cover}.member-name-text{display:grid;gap:2px;min-width:0}.member-name-text strong,.member-name-text em{overflow:hidden;max-width:108px;text-overflow:ellipsis;white-space:nowrap}.member-name-text strong{color:#0f172a;font-weight:800}.member-name-text em{color:#64748b;font-size:12px;font-style:normal;font-weight:700}table.member-table .col-member_actions{position:static;right:auto;z-index:auto;width:280px;min-width:280px;max-width:280px;box-sizing:border-box;padding:8px 10px;vertical-align:middle;background:#fff;white-space:normal;box-shadow:none}.touch-row-actions{flex-wrap:wrap;min-width:0;max-width:420px}.touch-row-actions button,.touch-row-actions .primary{color:#fff;border-color:var(--accent);background:var(--accent)}.touch-row-actions .success{color:#fff;border-color:#0f7a4f;background:#0f7a4f}.touch-row-actions .warning{color:#fff;border-color:var(--warning);background:var(--warning)}.appointment-row-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;min-width:0;max-width:360px}.appointment-row-actions button{min-height:34px;border-radius:6px}.appointment-row-actions select{max-width:132px}.appointment-row-actions .primary{color:#fff;border-color:var(--accent);background:var(--accent)}.touch-flow-bar{display:grid;grid-template-columns:1.4fr repeat(3,minmax(130px,.5fr));gap:12px;border-bottom:1px solid var(--border-soft);padding:16px 18px;background:#fbfdff}.management-page .query-bar+.management-section-title,.management-page .list-filters+.laundry-table-wrap,.management-page .list-filters+.laundry-split,.management-page .list-filters+.management-section-title{border-top:0}.management-page-body>.laundry-table-wrap:first-child{border-top:0}.sms-template-table .laundry-table{min-width:1160px}.sms-template-table .laundry-table th:nth-child(5),.sms-template-table .laundry-table td:nth-child(5){width:96px;text-align:center}.sms-template-table .laundry-table th:last-child,.sms-template-table .laundry-table td:last-child{width:76px;min-width:76px;white-space:nowrap}.sms-template-table code{color:var(--muted);font-size:12px}.sms-template-content{min-width:330px;max-width:430px;color:#334155;line-height:1.55;white-space:normal}.sms-template-id-input{width:180px}.sms-template-save{min-height:34px;min-width:56px;padding:0 10px;white-space:nowrap}.sms-template-table input[role=switch]{width:40px;height:22px;margin:0;accent-color:var(--success);cursor:pointer}.sms-audience-table .laundry-table{min-width:700px}.sms-audience-table .laundry-table th:first-child,.sms-audience-table .laundry-table td:first-child{width:54px;text-align:center}.sms-notification-table .laundry-table{min-width:920px}.ai-usage-log-table .laundry-table{min-width:880px;table-layout:fixed}.ai-usage-log-table-wrap{max-height:clamp(260px,calc(100dvh - 320px),560px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.ai-usage-log-table .laundry-table th{z-index:3}.ai-usage-log-table .laundry-table.has-actions th:last-child{z-index:5}.ai-usage-log-table .laundry-table td.laundry-actions{z-index:2}.ai-usage-log-table .col-created_at{width:150px;white-space:nowrap}.ai-usage-log-table .col-call_info{width:168px}.ai-usage-log-table .col-model_id{width:210px}.ai-usage-log-table .col-status{width:82px;text-align:center}.ai-usage-log-table .col-usage{width:118px;text-align:right}.ai-usage-log-table .col-result{white-space:normal;overflow-wrap:anywhere;line-height:1.5}.ai-usage-log-table td.laundry-actions.action-compact{display:table-cell;min-width:56px;padding:8px;text-align:center}.ai-usage-log-table .ai-usage-detail-action{display:inline-grid;width:32px;min-width:32px;height:32px;min-height:32px;place-items:center;padding:0}.ai-usage-call-info,.ai-usage-model,.ai-usage-consumption{display:grid;gap:3px;min-width:0}.ai-usage-call-info strong,.ai-usage-model strong,.ai-usage-consumption strong{overflow:hidden;color:var(--text);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.ai-usage-call-info span,.ai-usage-model span,.ai-usage-consumption span{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ai-usage-consumption{justify-items:end}.ai-usage-result{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ai-usage-result.failed{color:var(--danger)}.sms-records-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:56px;border-top:1px solid var(--border-soft);padding:10px 18px;color:var(--muted);background:#fff;font-size:13px}.sms-records-pagination .ghost-button{display:inline-grid;place-items:center;width:36px;min-width:36px;min-height:36px;padding:0}.role-permission-layout{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(520px,1.1fr);gap:16px;align-items:start}.role-permission-panel{display:grid;gap:14px;border:1px solid #dbe6f3;border-radius:8px;padding:16px;background:#fff}.role-permission-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.role-permission-head div{display:grid;gap:4px}.role-permission-head span{color:#64748b;font-size:12px;font-weight:800}.role-permission-head strong{color:#0f172a;font-size:18px}.role-permission-head button{min-height:38px;border:0;border-radius:8px;padding:0 14px;color:#fff;background:#2563eb;font-weight:800}.role-permission-head button:disabled{opacity:.5;cursor:not-allowed}.role-permission-groups{display:grid;gap:12px;max-height:calc(100dvh - 330px);overflow:auto;padding-right:4px}.role-permission-section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:2px 2px 0}.role-permission-section-title strong{color:#10233d;font-size:15px}.role-permission-section-title span{color:#64748b;font-size:12px;font-weight:700}.role-menu-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.role-menu-group{display:grid;gap:8px;min-width:0;border:1px solid #dbe6f3;border-radius:8px;padding:10px;background:#fff}.role-menu-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0;padding-bottom:8px;border-bottom:1px solid #edf2f7}.role-menu-head span{min-width:0;overflow:hidden;color:#0f172a;font-size:14px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.role-menu-head em{border-radius:999px;padding:2px 8px;color:#2563eb;background:#eff6ff;font-size:11px;font-style:normal;font-weight:900}.role-menu-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.role-menu-items label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;align-items:center;min-width:0;border-radius:6px;padding:7px 8px;background:#f8fbff}.role-menu-items span{min-width:0;overflow:hidden;color:#334155;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.role-permission-group{display:grid;gap:8px;border:1px solid #edf2f7;border-radius:8px;padding:12px;background:#f8fbff}.role-permission-group h3{margin:0;color:#10233d;font-size:15px}.role-permission-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.role-permission-group label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 8px;align-items:center;min-width:0;border:1px solid #dbe6f3;border-radius:8px;padding:8px 10px;background:#fff}.role-permission-group input{grid-row:span 2}.role-permission-group span,.role-permission-group em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-permission-group span{color:#1e293b;font-size:13px;font-weight:800}.role-permission-group em{color:#64748b;font-size:11px;font-style:normal}.row-action-note{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border-radius:999px;padding:0 10px;color:#64748b;background:#eef2f7;font-size:12px;font-weight:800}.touch-flow-bar button{display:grid;align-content:center;gap:4px;min-height:76px;border:1px solid #dbe7f6;border-radius:8px;padding:12px 16px;color:#172033;background:#fff;text-align:left;box-shadow:0 8px 18px #1426430d}.touch-flow-bar button.primary{color:#fff;border-color:var(--accent);background:var(--accent)}.touch-flow-bar strong{font-size:20px;line-height:1}.touch-flow-bar span{color:inherit;font-size:13px;opacity:.82}.station-entry-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.station-entry-strip button{display:grid;gap:6px;min-height:72px;border:1px solid #dbe7f6;border-radius:8px;padding:8px 10px;text-align:left;color:#24324d;background:#fff;box-shadow:0 8px 18px #1426430d}.station-entry-strip strong{font-size:16px}.station-entry-strip span{color:#66738a;font-size:12px}.station-tab-entry{display:grid;gap:12px}.station-tab-entry .filter-tabs-compact{gap:10px;border-bottom:0;padding:4px 0 2px;background:transparent;flex-wrap:wrap;overflow-x:visible}.station-tab-entry .filter-tabs-compact button{min-height:54px;min-width:104px;border:1px solid #dbe7f6;border-radius:8px;padding:0 18px;justify-content:center;color:#24324d;background:#fff;font-size:16px;box-shadow:0 8px 18px #1426430d}.station-tab-entry .filter-tabs-compact button.active{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:0 10px 22px #2563eb2e}.station-icon-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:8px 0 0}.station-icon-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:94px;min-height:42px;border:1px solid #dbe7f6;border-radius:8px;padding:0 14px;color:#24324d;background:#fff;font-size:13px;font-weight:900;white-space:nowrap;box-shadow:0 6px 14px #1426430a}.station-icon-tabs button svg{flex:0 0 auto;color:#3864d9}.station-icon-tabs button.active{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:0 8px 18px #2563eb29}.station-icon-tabs button.active svg{color:currentColor}.station-tab-entry-action{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dbe7f6;border-radius:8px;padding:10px 12px;background:#fbfdff}.station-tab-entry-action div{display:grid;gap:3px}.station-tab-entry-action strong{color:#1f2a44;font-size:15px}.station-tab-entry-action span{color:#66738a;font-size:12px}.order-status-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto;border-bottom:1px solid #dfe8f4;padding:14px 24px 12px;background:#fbfdff;-webkit-overflow-scrolling:touch}.order-status-tabs button{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid #dbe7f6;border-radius:999px;padding:0 13px;color:#42526c;background:#fff;font-size:13px;font-weight:800;white-space:nowrap}.order-status-tabs button.active{color:#fff;border-color:var(--accent);background:var(--accent)}.order-status-tabs button span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:999px;padding:0 6px;color:inherit;background:#2563eb1a;font-size:12px}.order-status-tabs button.active span{background:#ffffff2e}.order-list{display:grid;gap:10px;padding:14px 18px 18px;background:#fff}.order-list-row{display:grid;grid-template-columns:minmax(360px,1fr) 128px 336px;align-items:center;gap:16px;border:1px solid var(--border-soft);border-radius:8px;padding:14px 16px 14px 12px;background:#fff;box-shadow:0 8px 24px #1720330a}.order-list-row:hover{border-color:#cddaf0;background:#fbfdff}.order-list-main{display:grid;gap:10px;min-width:0;padding-left:10px;border-left:3px solid #dbe7ff}.order-list-title,.order-list-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.order-list-title button{border:0;padding:0;color:#172033;background:transparent;font-size:15.5px;font-weight:900;line-height:1.2;letter-spacing:0}.order-list-title span:not(.status-badge){display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:0 9px;color:#315076;background:#eef4ff;font-size:12px;font-weight:800}.order-list-meta{gap:6px 10px}.order-list-meta span{color:#66758c;font-size:13px;line-height:1.35}.order-list-meta .order-list-member{display:inline-flex;align-items:center;gap:8px;min-height:24px;margin-right:2px;color:#172033}.order-list-member strong,.order-list-member b{color:#172033;font-size:15.5px;font-weight:900;line-height:1.2}.order-list-member b{font-size:14.5px;font-weight:800}.order-list-meta-item{position:relative;display:inline-flex;align-items:center;min-height:24px;padding-left:10px}.order-list-meta-item:before{position:absolute;left:0;width:3px;height:3px;border-radius:999px;background:#b8c4d6;content:""}.order-list-count{color:#315076;font-weight:800}.order-list-amount{display:grid;justify-items:center;align-content:center;justify-self:center;min-width:112px;gap:4px;white-space:nowrap;text-align:center}.order-list-amount span{color:#7b8aa2;font-size:12px}.order-list-amount strong{color:#0f7a4f;font-size:16px}.order-list-actions{display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));align-items:center;justify-content:flex-end;gap:6px;min-width:0;max-width:336px}.order-list-actions>button,.order-list-actions>select,.order-list-actions>.row-actions,.order-list-actions .row-actions>button,.order-list-actions .row-actions>.row-actions-more{min-width:72px}.order-list-actions .row-actions{display:contents}.order-list-actions button,.order-list-actions select{width:100%}.order-list-actions .primary{color:#fff;border-color:var(--accent);background:var(--accent)}.order-list-actions .success{color:#fff;border-color:#0f7a4f;background:#0f7a4f}.order-list-actions .warning{color:#fff;border-color:var(--warning);background:var(--warning)}.order-list-actions .danger{color:var(--danger);border-color:#fecaca;background:#fff1f1}.order-list-actions .row-actions{min-width:0;gap:8px}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:28px;border:1px solid transparent;border-radius:999px;padding:0 10px;font-size:13px;font-weight:800}.status-badge.success{border-color:#bfe8d2;color:var(--success);background:#effaf5}.status-badge.warning{border-color:#f6d58c;color:var(--warning);background:#fff7e8}.status-badge.danger{border-color:#ffc9c9;color:var(--danger);background:#fff1f1}.status-badge.processing{border-color:#cfe0ff;color:var(--processing);background:#eef4ff}.status-badge.neutral{border-color:#dfe6f0;color:#65738b;background:#f8fafc}.row-actions .danger{border-color:#ffd5d5;color:#b42318;background:#fff1f1}.row-actions button:hover,.laundry-actions button:hover{background:#dfeaff}.row-actions .danger:hover{background:#ffe4e4}.laundry-actions .after-sales-actions button{min-width:0;min-height:34px;width:100%;padding:0 4px;font-size:11px;font-weight:800}.laundry-actions .after-sales-actions button.primary,.laundry-actions .after-sales-actions button.primary:hover{border-color:#1d4ed8;color:#fff;background:var(--accent)}.laundry-actions .after-sales-actions button.success,.laundry-actions .after-sales-actions button.success:hover{border-color:#bfe8d2;color:#0f766e;background:#e7f8f1}.laundry-actions .after-sales-actions button.danger,.laundry-actions .after-sales-actions button.danger:hover{border-color:#ffd5d5;color:#b42318;background:#fff1f1}.laundry-actions .mall-order-actions button{min-width:0;min-height:34px;padding:0 9px;font-size:12px;font-weight:800}.laundry-actions .mall-order-actions button.primary,.laundry-actions .mall-order-actions button.primary:hover{border-color:#1d4ed8;color:#fff;background:var(--accent)}.laundry-actions .mall-order-actions button.danger,.laundry-actions .mall-order-actions button.danger:hover{border-color:#ffd5d5;color:#b42318;background:#fff1f1}.crud-modal-actions button:first-child{color:#24324d;background:#eef2f7}.row-actions-more{position:relative;display:inline-flex;flex:0 0 auto;min-width:72px;z-index:4}.row-actions-more>button{width:100%}.row-actions-dropdown{position:absolute;top:100%;right:0;z-index:80;display:grid;gap:4px;min-width:140px;border:1px solid #dfe8f4;border-radius:8px;padding:8px;background:#fff;box-shadow:0 4px 16px #0f172a1f}.row-actions-dropdown.floating{position:fixed;top:auto;right:auto}.row-actions-dropdown button,.row-actions-dropdown select{width:100%}.laundry-form-actions{display:flex;gap:12px;padding-top:8px}.laundry-form-actions button{min-width:120px}.laundry-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.management-surface{display:block}@media(min-width:1024px)and (max-width:1368px)and (orientation:landscape){.topbar-stacked{gap:8px;padding:10px 18px}.topbar-main{grid-template-columns:auto minmax(0,1fr) auto;gap:10px}.top-brand{min-width:138px;padding-right:10px}.brand-mark{width:36px;height:46px}.brand strong{font-size:14px}.brand span,.title-area p{font-size:11px}.top-nav,.sub-nav{gap:6px}.top-nav button,.sub-nav button{min-height:42px;padding:0 11px;font-size:13px}.top-nav button svg,.sub-nav button svg{width:16px;height:16px}.logout-button{width:42px;height:42px}.content{padding:16px}.management-page-head{padding:16px 18px}.management-page-title strong{font-size:17px}.management-page-title p{font-size:12px}.management-page-actions{gap:8px}.record-count{min-height:34px;padding:0 10px;font-size:12px}.primary-action,.ghost-button{min-height:40px;padding:0 12px;font-size:13px}.list-filters{gap:10px;padding:14px 16px}.list-filters label{min-width:132px}.list-filter-search,.list-filters>button{min-height:42px;padding:0 14px}.filter-tabs{padding:10px 16px}.filter-tabs button,.order-status-tabs button{min-height:38px;padding:0 12px;font-size:13px}.laundry-table{font-size:12px}.laundry-table th,.laundry-table td{padding:8px 9px}.laundry-table .col-payment_no,.laundry-table .col-transaction_id,.laundry-table .col-transaction_no,.laundry-table .col-order_no,.laundry-table .col-global_ticket{min-width:156px}.laundry-table .col-created_at,.laundry-table .col-updated_at,.laundry-table .col-paid_at,.laundry-table .col-scheduled_at,.laundry-table .col-arrived_at,.laundry-table .col-verified_at,.laundry-table .col-quoted_at,.laundry-table .col-checked_at,.laundry-table .col-handed_over_at{min-width:144px}.laundry-table .col-note,.laundry-table .col-result,.laundry-table .col-status_change{min-width:140px}.laundry-table td.laundry-actions.action-normal{min-width:280px}.laundry-table td.laundry-actions.action-many{min-width:340px}.laundry-actions button,.row-actions button{min-height:38px;padding:0 9px;font-size:12px}.laundry-table td.laundry-actions.action-compact{min-width:156px}.laundry-actions.action-compact button,.laundry-actions.action-compact .row-actions button{min-width:64px;padding:0 8px}.appointments-table{min-width:1360px}.appointments-table th:last-child,.appointments-table td.laundry-actions{width:220px;min-width:220px;max-width:220px}.order-list{gap:10px}.order-list-row{grid-template-columns:minmax(280px,1fr) minmax(92px,auto) minmax(300px,336px);gap:12px;padding:14px 16px}.order-list-actions{grid-template-columns:repeat(3,minmax(72px,1fr));max-width:300px}.order-list-actions button{min-height:38px}.station-entry-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.role-permission-layout{grid-template-columns:1fr}}.shell input:not([type]),.shell input[type=text],.shell input[type=password],.shell input[type=email],.shell input[type=number],.shell input[type=tel],.shell input[type=url],.shell input[type=search],.shell input[type=date],.shell input[type=datetime-local],.shell select,.shell textarea,.login-page input[type=text],.login-page input[type=password],.login-page input[type=tel],.login-page textarea{min-width:0;height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 13px;color:var(--control-text);background:var(--control-bg);outline:none;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.shell textarea,.login-page textarea{height:auto;min-height:var(--control-height-large);padding:10px 13px;line-height:1.5;resize:vertical}.modal-backdrop input:not([type]),.modal-backdrop input[type=text],.modal-backdrop input[type=password],.modal-backdrop input[type=email],.modal-backdrop input[type=number],.modal-backdrop input[type=tel],.modal-backdrop input[type=url],.modal-backdrop input[type=search],.modal-backdrop input[type=date],.modal-backdrop input[type=datetime-local],.modal-backdrop select{height:var(--control-height-large)}.shell input:not([type]):focus,.shell input[type=text]:focus,.shell input[type=password]:focus,.shell input[type=email]:focus,.shell input[type=number]:focus,.shell input[type=tel]:focus,.shell input[type=url]:focus,.shell input[type=search]:focus,.shell input[type=date]:focus,.shell input[type=datetime-local]:focus,.shell select:focus,.shell textarea:focus,.login-page input[type=text]:focus,.login-page input[type=password]:focus,.login-page input[type=tel]:focus,.login-page textarea:focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.shell input:not([type]):disabled,.shell input[type=text]:disabled,.shell input[type=password]:disabled,.shell input[type=email]:disabled,.shell input[type=number]:disabled,.shell input[type=tel]:disabled,.shell input[type=url]:disabled,.shell input[type=search]:disabled,.shell input[type=date]:disabled,.shell input[type=datetime-local]:disabled,.shell select:disabled,.shell textarea:disabled,.login-page input[type=text]:disabled,.login-page input[type=password]:disabled,.login-page input[type=tel]:disabled,.login-page textarea:disabled{color:var(--control-disabled-text);background:var(--control-disabled-bg);cursor:not-allowed}.shell input::placeholder,.shell textarea::placeholder,.login-page input::placeholder{color:var(--control-placeholder)}.shell input[type=file]{width:100%;min-width:0;min-height:var(--control-height);border:1px dashed var(--control-border);border-radius:var(--control-radius);padding:4px;color:var(--muted);background:var(--surface-muted);cursor:pointer}.modal-backdrop input[type=file]{min-height:var(--control-height-large)}.shell input[type=file]::file-selector-button{height:34px;margin-right:10px;border:1px solid #c9d8ee;border-radius:6px;padding:0 10px;color:var(--accent);background:#f6f9ff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.shell input[type=file]:hover{border-color:var(--control-focus-border);background:#f8fbff}.shell input[type=file]:focus-visible{outline:none;border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.shell input[type=file]:disabled{color:var(--control-disabled-text);border-color:var(--control-border);background:var(--control-disabled-bg);cursor:not-allowed}.file-upload-body{border-style:dashed;background:var(--surface-muted)}.file-upload-head button:hover:not(:disabled),.file-upload-chip button:hover:not(:disabled){color:var(--accent-strong);background:var(--color-primary-50)}.file-upload-head button:disabled,.file-upload-chip button:disabled{color:var(--control-disabled-text);background:var(--control-disabled-bg);cursor:not-allowed}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px;background:#0f172a57}.crud-modal{width:min(720px,96vw);max-height:94vh;overflow:auto;border-radius:8px;border:1px solid #e6ecf5;background:#fff;box-shadow:0 24px 80px #09233e3d}.crud-modal-media{width:min(860px,96vw)}.crud-modal-head,.crud-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid var(--border-soft)}.crud-modal-head h3{margin:0;font-size:16px;font-weight:800}.crud-modal-head button{min-width:46px;min-height:42px;border:1px solid var(--border-soft);border-radius:var(--button-radius);padding:0 12px;background:#fff;color:#65738b}.crud-modal-head button:hover:not(:disabled){border-color:#c9d8ee;color:var(--accent);background:#f6f9ff}.crud-modal-head button:disabled{color:var(--control-disabled-text);background:var(--control-disabled-bg);cursor:not-allowed}.coupon-share-modal,.api-key-dialog{width:min(620px,96vw)}.api-key-dialog-body{display:grid;gap:10px;padding:24px;background:#fbfdff}.api-key-dialog-body p{margin:0;color:var(--form-label);font-size:13px;font-weight:800}.api-key-dialog-body input{width:100%;height:var(--control-height-large);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 13px;background:var(--control-bg);color:var(--control-text)}.coupon-share-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:24px;background:#fbfdff}.coupon-share-link{display:grid;min-width:0;gap:7px}.coupon-share-link>span{color:var(--form-label);font-size:13px;font-weight:800}.coupon-share-link input{width:100%;min-width:0;height:var(--control-height-large);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 13px;background:var(--control-bg);color:var(--control-text)}.coupon-share-copy{display:inline-flex;align-items:center;align-self:end;justify-content:center;gap:7px;min-width:118px;height:var(--control-height-large);border:1px solid var(--accent);border-radius:var(--button-radius);padding:0 16px;background:var(--accent);color:#fff;font-weight:800}.coupon-share-copy:hover{background:var(--accent-strong)}.coupon-share-qr{grid-column:1 / -1;display:grid;min-height:220px;place-items:center}.coupon-share-qr p{margin:0;color:var(--muted);font-size:14px}.coupon-share-qr .form-error{color:var(--danger)}.coupon-share-qr img{display:block;width:220px;max-width:100%;height:220px;object-fit:contain}.appointment-detail-modal{width:min(680px,96vw)}.appointment-detail-body{padding:20px 24px 24px;background:#fbfdff}.appointment-detail-section{overflow:hidden;border:1px solid var(--border-soft);border-radius:8px;background:#fff}.appointment-detail-section h4{margin:0;padding:14px 16px;border-bottom:1px solid var(--border-soft);color:var(--text);font-size:14px;font-weight:900}.appointment-garment-detail-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--border-soft);color:var(--text);font-size:14px}.appointment-garment-detail-row:last-child{border-bottom:0}.appointment-garment-detail-row span{min-width:0}.appointment-garment-detail-row strong{flex:0 0 auto;color:var(--accent)}.appointment-detail-section p{margin:0;padding:16px;color:var(--muted);font-size:14px;line-height:1.5}.crud-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:24px;background:#fbfdff}.crud-form-section-title{grid-column:1 / -1;margin:0 0 -4px;color:var(--text);font-size:15px;font-weight:900}.date-field{width:100%;min-width:0}.date-field.ant-picker{width:100%;height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 12px;background:var(--control-bg)}.modal-backdrop .date-field.ant-picker{height:var(--control-height-large)}.shell .searchable-select input{width:100%}.shell .searchable-select-results{z-index:30;border-color:var(--control-border);box-shadow:0 12px 26px #112a4f24}.shell .searchable-select-results button:hover,.shell .searchable-select-results button.active{color:var(--accent-strong);background:var(--color-primary-50)}.shell .member-dialog-search input{height:46px;border:0;padding:0;background:transparent;box-shadow:none}.shell .member-dialog-search input:focus{border:0;box-shadow:none}.date-field.ant-picker:hover,.date-field.ant-picker-focused{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.date-field .ant-picker-input>input{height:auto;border:0;border-radius:0;padding:0;background:transparent;box-shadow:none;outline:0;color:#24364b;font:inherit}.date-field .ant-picker-input>input:focus{border:0;box-shadow:none}.date-field .ant-picker-input>input::placeholder{color:var(--control-placeholder)}.date-field .ant-picker-suffix{color:#64748b}.crud-form .form-field{display:grid;gap:7px;min-width:0}.crud-form .form-field>span{color:var(--form-label);font-size:13px;font-weight:800}.crud-form .form-field em{margin-left:4px;color:#d92d20;font-style:normal}.crud-form .form-field small{color:#64748b;font-size:12px;line-height:1.5}.crud-form .category-mode-field{grid-column:1 / -1}.category-mode-segment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;border:1px solid #c8d9eb;border-radius:8px;padding:4px;background:#edf4fb}.category-mode-segment button{min-height:44px;border:0;border-radius:6px;color:#49637d;background:transparent;font-size:14px;font-weight:800}.category-mode-segment button.active{color:#0f5cc8;background:#fff;box-shadow:0 1px 3px #0f325e29}.category-tree-name{display:inline-flex;align-items:center;min-width:0;color:#172033}.category-tree-name.root strong{color:#0f3f78;font-weight:900}.category-tree-name.child{padding-left:28px;color:#49637d}.category-tree-name.child i{display:block;position:relative;width:18px;height:20px;margin-right:8px;border-left:1px solid #b9d2ed;border-bottom:1px solid #b9d2ed}.crud-form .store-geocode-field{align-content:start}.store-geocode-button{height:var(--control-height-large);border:1px solid var(--control-border);border-radius:var(--control-radius);background:#fff;color:var(--primary);font:inherit;font-weight:800;cursor:pointer}.store-geocode-button:disabled{cursor:wait;opacity:.65}.crud-form .form-field .form-field-error{color:#d92d20}.crud-form .form-field select[multiple]{min-height:112px;padding:8px}.scope-picker-field{grid-column:1 / -1;border:1px solid #dbe7f6;border-radius:8px;padding:12px;background:#fff}.scope-picker-head,.scope-picker-tools{display:flex;align-items:center;gap:10px}.scope-picker-head{justify-content:space-between}.scope-picker-head>span:first-child{color:var(--form-label);font-size:13px;font-weight:800}.scope-picker-head>span:last-child{color:var(--accent);font-size:12px;font-weight:900}.scope-picker-tools input{flex:1 1 auto}.scope-picker-tools button{flex:0 0 auto;min-width:76px;height:var(--control-height-compact);border:1px solid var(--control-border);border-radius:var(--control-radius-compact);background:#fff;color:#24364b;font-weight:800}.scope-picker-tools button:disabled{color:#9aa7b7;background:#f3f6fa}.scope-picker-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:220px;overflow:auto;border:1px solid #e7edf6;border-radius:8px;padding:8px;background:#f8fbff}.scope-picker-option{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;min-height:48px;border:1px solid #e1e9f4;border-radius:7px;padding:8px;background:#fff}.scope-picker-option input{width:16px;height:16px;margin-top:2px}.scope-picker-option span{display:grid;gap:2px;min-width:0}.scope-picker-option strong,.scope-picker-option em{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.35}.scope-picker-option strong{color:#1f2f46;font-size:13px;font-weight:850}.scope-picker-option em{color:#64748b;font-size:12px;font-style:normal}.scope-picker-empty{grid-column:1 / -1;display:grid;place-items:center;min-height:76px;color:#7b8798;font-size:13px;font-weight:800}.container-name-cell,.color-picker-control{display:inline-flex;align-items:center;gap:8px;min-width:0}.container-color-dot{flex:0 0 auto;width:12px;height:12px;border:1px solid rgba(15,23,42,.16);border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff59}.container-color-dot.large{width:22px;height:22px}.crud-form .color-picker-field input[type=color]{width:64px;min-height:42px;padding:4px;cursor:pointer}.crud-form textarea{min-height:118px}.crud-form .model-prompt-field{grid-column:1 / -1;border:1px solid #dbe7f6;border-radius:8px;padding:14px;background:#fff}.crud-form .model-prompt-field textarea{min-height:150px}.crud-form .model-prompt-field small{color:#64748b;font-size:12px;font-weight:700;line-height:1.45}.crud-form .appointment-remark-field{grid-column:1 / -1;min-height:150px}.crud-form .mall-product-description-field,.crud-form .product-spu-service-description-field{grid-column:1 / -1}.crud-form .mall-product-description-field textarea{min-height:150px}.sku-picker-modal{width:min(480px,calc(100vw - 32px))}.sku-picker-modal .crud-modal-head{padding:18px 22px}.sku-picker-modal .crud-modal-head h3{color:#172033;font-size:17px}.crud-form.sku-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px 22px 22px}.sku-picker-choice{display:grid;min-height:76px;padding:12px 14px;border:1px solid #cddbf0;border-radius:8px;color:#172033;background:#f8fbff;text-align:left}.sku-picker-choice:hover{border-color:var(--accent);background:#edf5ff}.sku-picker-choice span{overflow:hidden;color:#334155;font-size:14px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.sku-picker-choice strong{align-self:end;margin-top:7px;color:var(--accent);font-size:18px;line-height:1}.mall-product-top-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product-sku-editor{grid-column:1 / -1;display:grid;gap:10px;min-width:0;padding:14px;border:1px solid var(--control-border);border-radius:var(--control-radius);background:#f8fbff}.product-sku-editor-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.product-sku-editor-head>div{display:grid;gap:3px}.product-sku-editor-head strong{color:var(--text);font-size:14px}.product-sku-editor-head span{color:var(--muted);font-size:12px}.product-sku-add{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;height:36px;padding:0 12px;border:1px solid var(--processing);border-radius:var(--control-radius-compact);background:var(--control-bg);color:var(--processing);font-weight:800}.product-sku-grid{display:grid;grid-template-columns:minmax(220px,1.7fr) minmax(110px,.7fr) minmax(110px,.7fr) 40px;gap:10px;align-items:center}.product-sku-grid-head{padding:0 1px;color:var(--form-label);font-size:12px;font-weight:800}.product-sku-grid-head span:last-child{text-align:center}.product-sku-delete{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--color-danger-100);border-radius:var(--control-radius-compact);background:var(--color-danger-50);color:var(--danger)}.product-sku-delete:disabled{cursor:not-allowed;border-color:var(--control-border);background:var(--state-unselected-bg);color:var(--muted)}@media(max-width:900px){.mall-product-top-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.coupon-share-form{grid-template-columns:1fr;gap:14px;padding:18px}.coupon-share-copy{width:100%;align-self:stretch}.coupon-share-qr{min-height:0}.mall-product-top-grid{grid-template-columns:1fr}.product-sku-grid{grid-template-columns:minmax(0,1fr) minmax(88px,.7fr) minmax(88px,.7fr) 40px;gap:8px}.product-sku-grid-head{font-size:11px}}.file-field{display:grid;gap:6px;border:1px dashed #cbd8e7;border-radius:6px;padding:8px 10px;background:#fff}.file-field span{color:#65738b;font-size:12px;font-weight:800}.crud-form .file-field input{height:auto;border:0;padding:0}.image-upload-field{display:grid;gap:7px;min-width:0}.image-upload-field.with-ai{grid-column:1 / -1}.image-upload-field>span{color:#475569;font-size:13px;font-weight:800}.image-upload-control{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:center;min-height:86px;border:1px dashed #cbd8e7;border-radius:8px;padding:10px;background:#fff}.image-upload-manual{display:contents}.image-upload-field.with-ai .image-upload-control{grid-template-columns:minmax(300px,360px) minmax(0,1fr);align-items:stretch;gap:16px;padding:14px}.image-upload-field.with-ai .image-upload-manual{display:grid;grid-template-columns:168px minmax(0,1fr);gap:12px;align-content:center;min-width:0}.image-upload-preview{display:grid;place-items:center;width:84px;height:64px;overflow:hidden;border-radius:6px;color:#8a97aa;background:#eef2f7;font-size:12px;font-weight:800}.image-upload-preview img{width:100%;height:100%;object-fit:cover}.image-upload-preview-button{display:block;width:100%;height:100%;border:0;padding:0;background:transparent;cursor:zoom-in}.image-upload-preview-button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ai-image-generator{display:grid;gap:8px;min-width:0;border-left:1px solid #e6edf7;padding-left:16px}.ai-image-generator-head,.ai-image-generator-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.ai-image-generator-head span{color:#475569;font-size:13px;font-weight:900}.ai-image-generator-head em{color:#b45309;font-size:12px;font-style:normal;font-weight:800;white-space:nowrap}.crud-form .ai-image-generator textarea{min-height:112px;height:auto;border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.45}.ai-image-generator-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:1px solid #9db9f3;border-radius:8px;padding:0 12px;color:#174ea6;background:#eef5ff;font-size:13px;font-weight:900;white-space:nowrap}.ai-image-generator-actions button:disabled{opacity:.62;cursor:not-allowed}.ai-image-generator-actions span{min-width:0;color:#64748b;font-size:12px;font-weight:700;line-height:1.4}.ai-image-generator-actions .ai-image-generator-error{color:#b42318}@media(max-width:760px){.image-upload-field.with-ai .image-upload-control{grid-template-columns:1fr}.image-upload-field.with-ai .image-upload-manual{grid-template-columns:112px minmax(0,1fr)}.image-upload-field.with-ai .image-upload-preview{width:112px;height:86px}.ai-image-generator{border-top:1px solid #e6edf7;border-left:0;padding-top:12px;padding-left:0}}.image-upload-main{display:grid;gap:8px;min-width:0}.image-upload-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:fit-content;height:34px;border:1px solid #b9c8dc;border-radius:7px;padding:0 12px;color:#1f3b57;background:#f8fbff;font-size:13px;font-weight:900;cursor:pointer}.image-upload-button input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;padding:0;opacity:0;cursor:pointer}.image-upload-main em{min-width:0;overflow:hidden;color:#65738b;font-size:12px;font-style:normal;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.password-modal{width:min(520px,96vw)}.settings-panel{display:grid;gap:12px;padding:24px}.settings-section-title{display:grid;gap:6px}.settings-section-title strong{color:var(--text);font-size:16px;font-weight:900}.settings-section-title span{color:var(--muted);font-size:13px;line-height:1.5}.settings-form{display:grid;gap:14px;max-width:460px}.settings-form label{display:grid;gap:7px}.settings-form label span{color:var(--form-label);font-size:13px;font-weight:800}.settings-actions{display:flex;justify-content:flex-start;padding-top:4px}.agreement-settings-form{max-width:860px}.agreement-upload-row{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:16px;align-items:start;border:1px solid var(--border);border-radius:8px;padding:14px;background:#fff}.agreement-upload-meta{display:grid;gap:6px;min-width:0}.agreement-upload-meta strong{color:var(--text);font-size:14px;font-weight:900}.agreement-upload-meta span{overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.agreement-upload-meta a{color:#0f766e;font-size:13px;font-weight:800;text-decoration:none}.agreement-text-row{grid-template-columns:minmax(180px,220px) minmax(0,1fr)}.agreement-text-row textarea{width:100%;min-height:280px;line-height:1.6}@media(max-width:720px){.agreement-upload-row{grid-template-columns:1fr}}.image-field-note{display:flex;align-items:center;gap:10px;align-self:center;border-radius:6px;padding:8px 10px;color:#0f766e;background:#e6f7f4;font-size:13px;font-weight:800}.image-field-note img{width:64px;height:48px;border-radius:6px;object-fit:cover;background:#eef2f7}.crud-modal-actions{justify-content:flex-end;position:sticky;bottom:0;z-index:2;border-top:1px solid var(--border-soft);border-bottom:0;background:#fff}.container-rfid-modal{width:min(560px,96vw)}.workstation-rfid-test-modal{width:min(620px,96vw)}.container-rfid-body,.workstation-rfid-test-body{display:grid;gap:16px;padding:24px;background:#fbfdff}.workstation-rfid-test-body .form-field{display:grid;gap:7px}.confirm-dialog-backdrop{z-index:10040;background:#0916267a}.confirm-dialog{width:min(460px,calc(100vw - 32px));overflow:hidden}.confirm-dialog-head h3{display:inline-flex;align-items:center;gap:8px}.confirm-dialog-danger .confirm-dialog-head h3 svg{color:#dc2626}.confirm-dialog-success .confirm-dialog-head h3 svg{color:#059669}.confirm-dialog-body{display:grid;gap:8px;padding:22px 24px;background:#fbfdff}.confirm-dialog-body strong{color:#0f2137;font-size:17px;font-weight:900;line-height:1.45}.confirm-dialog-body p{margin:0;color:#607089;font-size:14px;font-weight:800;line-height:1.45;overflow-wrap:anywhere}.appointment-cancel-reasons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:6px}.appointment-cancel-reason{min-height:48px;border:1px solid #d6e3f2;border-radius:8px;padding:10px 12px;color:#31506f;background:#fff;font-size:14px;font-weight:800;line-height:1.35;text-align:left}.appointment-cancel-reason.selected{border-color:#dc2626;color:#991b1b;background:#fff1f1}.confirm-dialog.appointment-cancel-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(520px,calc(100vw - 32px));max-height:min(520px,calc(100dvh - 32px));overflow:hidden}.appointment-cancel-dialog .confirm-dialog-body{overflow-y:auto}.appointment-cancel-dialog .crud-modal-actions{position:static}.appointment-cancel-dialog.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit-danger{border-color:#dc2626;color:#fff;background:#d93025}.appointment-cancel-dialog.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit-danger:hover{background:#b42318}.confirm-dialog-actions button{min-width:118px;min-height:48px;border-radius:8px;font-size:14px;font-weight:900}.confirm-dialog-actions button:first-child{border:1px solid #d6e3f2;color:#31506f;background:#f7faff}.confirm-dialog-actions .confirm-dialog-submit{border:1px solid #0f5cc8;color:#fff;background:linear-gradient(135deg,#0f6fff,#0b58c7);box-shadow:0 10px 18px #0f6fff29}.confirm-dialog-actions .confirm-dialog-submit:hover{background:linear-gradient(135deg,#0d63df,#0a4fb4)}.confirm-dialog-actions .confirm-dialog-submit-primary,.confirm-dialog-success .confirm-dialog-actions .confirm-dialog-submit-primary,.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit-primary{border-color:#0f5cc8;color:#fff;background:linear-gradient(135deg,#0f6fff,#0b58c7);box-shadow:0 10px 18px #0f6fff29}.confirm-dialog-actions .confirm-dialog-submit-primary:hover,.confirm-dialog-success .confirm-dialog-actions .confirm-dialog-submit-primary:hover,.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit-primary:hover{background:linear-gradient(135deg,#0d63df,#0a4fb4)}.confirm-dialog-actions button:first-child:hover{background:#edf4fc}.confirm-dialog-actions button:disabled{color:#9bb1cc;background:#f4f7fb;box-shadow:none;cursor:not-allowed}.confirm-dialog-success .confirm-dialog-actions .confirm-dialog-submit{border-color:#059669;background:linear-gradient(135deg,#10b981,#047857);box-shadow:0 10px 18px #05966929}.confirm-dialog-success .confirm-dialog-actions .confirm-dialog-submit:hover{background:linear-gradient(135deg,#059669,#047857)}.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit{border-color:#dc2626;background:linear-gradient(135deg,#ef4444,#b91c1c);box-shadow:0 10px 18px #dc262629}.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit:hover{background:linear-gradient(135deg,#dc2626,#991b1b)}.workstation-rfid-test-body .form-field>span{color:#61748d;font-size:13px;font-weight:900}.workstation-rfid-test-body input,.workstation-rfid-test-body select{width:100%}.container-rfid-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.container-rfid-summary p{display:grid;gap:6px;margin:0;border:1px solid #dbe8f7;border-radius:8px;padding:12px;background:#fff}.container-rfid-summary span,.container-rfid-body .form-field>span{color:#61748d;font-size:13px;font-weight:900}.container-rfid-summary strong{min-width:0;overflow-wrap:anywhere;color:#071426;font-size:15px}.container-rfid-body .form-field{display:grid;gap:7px}.container-rfid-body input{width:100%;min-width:0;height:var(--control-height-large);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 13px;background:var(--control-bg);outline:none}.container-rfid-action-row{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:12px}.container-rfid-action-row button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0;height:var(--button-height);border-radius:var(--button-radius);font-size:14px;font-weight:900}.container-rfid-secondary{border:1px solid #b9c8dc;background:#fff;color:#24405f}.container-rfid-secondary:hover:not(:disabled){border-color:#8fb0d6;background:#f5f9ff}.container-rfid-primary{border:1px solid #1f5fbf;background:#1f5fbf;color:#fff;box-shadow:0 10px 22px #1f5fbf33}.container-rfid-primary:hover:not(:disabled){background:#174f9f}.container-rfid-action-row button:disabled{cursor:not-allowed;opacity:.55}.container-rfid-status{display:grid;grid-template-columns:max-content max-content minmax(0,1fr);align-items:center;gap:10px;border:1px solid #dbe8f7;border-radius:8px;padding:10px 12px;background:#fff}.container-rfid-status>span,.container-rfid-status em{color:#61748d;font-size:13px;font-weight:900}.container-rfid-status em{justify-self:end;font-style:normal}.container-rfid-status .rfid-state{min-width:76px;padding:5px 10px;font-size:13px}.order-detail-modal{width:min(1180px,96vw)}.member-detail-modal{width:min(980px,94vw);max-height:min(88vh,840px)}.order-detail-page{width:100%;min-width:0}.order-detail-panel{width:100%;max-width:none;min-height:calc(100vh - 190px);max-height:none;border-radius:8px;box-shadow:none}.order-detail-panel .order-detail-body{max-height:none}.refund-modal{width:min(760px,96vw)}.refund-modal .crud-modal-head{padding:18px 22px}.quote-modal{width:min(680px,96vw)}.quote-modal .crud-modal-head{padding:18px 22px}.quote-form{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:22px;background:#f7fafc}.quote-form .form-field{display:grid;gap:8px;min-width:0}.quote-form .form-field>span{color:#334155;font-size:13px;font-weight:900}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-width:0}.quote-form textarea{min-height:92px}.quote-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.refund-form{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:20px 22px 18px}.refund-form .refund-reason-field{grid-column:1 / -1}.refund-item-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);padding:12px 22px;background:#fff}.refund-item-head strong{color:var(--text);font-size:14px;font-weight:900}.refund-item-head span{color:var(--muted);font-size:13px;font-weight:800}.order-detail-body{display:grid;gap:0;background:#fff}.member-detail-modal .order-detail-body{gap:10px;padding:12px;background:#f6f8fb}.member-detail-modal .crud-modal-head{position:sticky;top:0;z-index:6;min-height:56px;padding:12px 80px 12px 16px;background:#fff}.member-detail-modal .crud-modal-head strong{color:var(--text);font-size:15px;font-weight:900}.member-detail-modal .crud-modal-head p{margin:2px 0 0;color:var(--muted);font-size:12px;font-weight:800}.image-upload-field.with-ai .image-upload-preview{width:168px;height:128px}.member-detail-modal .crud-modal-head button{position:absolute;top:10px;right:16px;min-height:36px}.member-record-overview{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}.member-record-panels section{border:1px solid var(--border-soft);border-radius:8px;background:#fff}.member-record-panels{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:10px;min-width:0}.member-record-panels section{min-width:0;padding:10px}.member-record-panels section:first-child{grid-row:span 2}.member-record-panels h4{margin:0 0 8px;color:#0f172a;font-size:13px;font-weight:900}.member-record-grid,.member-balance-grid{display:grid;gap:8px;min-width:0}.member-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-balance-grid{grid-template-columns:minmax(0,1fr)}.member-record-grid div,.member-balance-grid div{display:grid;gap:4px;min-width:0;border-radius:8px;padding:7px 8px;background:#f8fafc}.member-record-grid span,.member-balance-grid span{color:var(--muted);font-size:11px;font-weight:800}.member-record-grid strong,.member-balance-grid strong{overflow-wrap:anywhere;color:var(--text);font-size:12px;font-weight:900;line-height:1.3}.member-balance-grid strong{color:#0f766e;font-size:14px}.member-wechat-panel .member-record-grid{grid-template-columns:minmax(0,1fr)}.member-wechat-avatar{float:left;margin:0 10px 8px 0}.member-wechat-avatar img,.member-wechat-avatar>span{width:48px;height:48px;border-radius:8px}.member-wechat-avatar img{object-fit:cover;background:#eef2f7}.member-wechat-avatar>span{display:grid;place-items:center;color:#fff;background:#0f766e;font-size:16px;font-weight:900}.member-detail-modal .detail-section{overflow:hidden;border:1px solid var(--border-soft);border-radius:8px;background:#fff}.member-record-tabs{display:flex;gap:8px;overflow-x:auto;border:1px solid var(--border-soft);border-radius:8px;padding:8px;background:#fff}.member-record-tabs button{flex:0 0 auto;min-height:36px;border:1px solid #dbe7ff;border-radius:8px;padding:0 14px;color:#42526c;background:#f8fafc;font-weight:900}.member-record-tabs button.active{border-color:var(--accent);color:#fff;background:var(--accent)}.detail-summary{display:grid;grid-template-columns:repeat(3,max-content 1fr);gap:1px;border-bottom:1px solid var(--border-soft);background:var(--border-soft)}.detail-summary div{display:contents}.detail-summary span{color:var(--muted);font-size:12px;font-weight:700;white-space:nowrap;padding:10px 6px 10px 16px;background:#f8fafc}.detail-summary strong{color:var(--text);font-size:13px;font-weight:800;word-break:break-word;padding:10px 16px 10px 6px;background:#fff}.detail-summary .detail-summary-value{display:flex;align-items:center;min-width:0}.order-detail-delivery-inline{display:inline-flex;align-items:center;gap:8px;min-width:0}.order-detail-delivery-inline button{min-height:28px;border:1px solid #cfe0f5;border-radius:8px;padding:0 9px;color:#0f5cc8;background:#f4f8ff;font-size:12px;font-weight:900}.order-detail-delivery-modal{width:min(720px,calc(100vw - 32px))}.order-delivery-address-field,.order-detail-delivery-address-field{grid-column:1 / -1}.order-delivery-address-field select,.order-detail-delivery-address-field select,.order-delivery-address-field input,.order-detail-delivery-address-field textarea{width:100%}.order-detail-delivery-address-field textarea{min-height:72px}.form-error-text{grid-column:1 / -1;margin:0;color:#dc2626;font-size:13px;font-weight:800}.detail-summary .status-badge{flex:0 0 auto;min-width:64px;min-height:28px;padding:0 10px;font-size:13px;line-height:1;white-space:nowrap;word-break:normal}.detail-actions{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--border-soft);padding:12px 18px;background:#fbfdff}.detail-actions button,.refund-item-list button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:0;border-radius:8px;padding:0 14px;color:#fff;background:var(--accent);font-size:14px;font-weight:800}.order-detail-receipt-backdrop{z-index:30}.order-detail-receipt-modal{width:min(880px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 24px 80px #09233e3d}.order-detail-receipt-modal .settlement-print-panel{border:0;border-radius:8px;background:#fff}.detail-section .laundry-table th,.detail-section .laundry-table td{padding:10px 14px}.detail-section .laundry-table.order-items-table,.detail-section .laundry-table.order-record-table{min-width:920px;table-layout:fixed}.detail-section .laundry-table.order-items-table th,.detail-section .laundry-table.order-items-table td,.detail-section .laundry-table.order-record-table th,.detail-section .laundry-table.order-record-table td{padding:9px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-section .laundry-table.order-items-table .col-tag_code{width:180px}.detail-section .laundry-table.order-items-table .col-item_name{width:150px}.detail-section .laundry-table.order-items-table .col-sku_name,.detail-section .laundry-table.order-items-table .col-material,.detail-section .laundry-table.order-items-table .col-color,.detail-section .laundry-table.order-items-table .col-brand{width:96px}.detail-section .laundry-table.order-items-table .col-damages,.detail-section .laundry-table.order-items-table .col-addons{width:130px}.detail-section .laundry-table.order-items-table .col-price{width:92px}.detail-section .laundry-table.order-items-table .col-status{width:110px}.detail-section .laundry-table.order-items-table .col-photos{width:118px}.detail-section .laundry-table.order-record-table .col-payment_no,.detail-section .laundry-table.order-record-table .col-transaction_id,.detail-section .laundry-table.order-record-table .col-task_no,.detail-section .laundry-table.order-record-table .col-visit_no,.detail-section .laundry-table.order-record-table .col-quote_no,.detail-section .laundry-table.order-record-table .col-handover_no,.detail-section .laundry-table.order-record-table .col-refund_no{width:150px}.detail-section .laundry-table.order-record-table .col-status,.detail-section .laundry-table.order-record-table .col-quote_status,.detail-section .laundry-table.order-record-table .col-result,.detail-section .laundry-table.order-record-table .col-type,.detail-section .laundry-table.order-record-table .col-mode,.detail-section .laundry-table.order-record-table .col-channel,.detail-section .laundry-table.order-record-table .col-closure_action,.detail-section .laundry-table.order-record-table .col-rework_type,.detail-section .laundry-table.order-record-table .col-event_type,.detail-section .laundry-table.order-record-table .col-from_status,.detail-section .laundry-table.order-record-table .col-to_status{width:108px}.detail-section .laundry-table.order-record-table .col-amount,.detail-section .laundry-table.order-record-table .col-quoted_price,.detail-section .laundry-table.order-record-table .col-confirmed_price,.detail-section .laundry-table.order-record-table .col-base_price,.detail-section .laundry-table.order-record-table .col-final_price{width:96px}.detail-section .laundry-table.order-record-table .col-assigned_staff_name,.detail-section .laundry-table.order-record-table .col-checker_name,.detail-section .laundry-table.order-record-table .col-receiver_name{width:120px}.detail-section .laundry-table.order-record-table .col-item_name,.detail-section .laundry-table.order-record-table .col-created_at,.detail-section .laundry-table.order-record-table .col-scheduled_at,.detail-section .laundry-table.order-record-table .col-arrived_at,.detail-section .laundry-table.order-record-table .col-verified_at,.detail-section .laundry-table.order-record-table .col-quoted_at,.detail-section .laundry-table.order-record-table .col-checked_at,.detail-section .laundry-table.order-record-table .col-handed_over_at,.detail-section .laundry-table.order-record-table .col-paid_at{width:150px}.detail-section .laundry-table.quote-record-table{min-width:1020px}.detail-section .laundry-table.quote-record-table .col-quote_no{width:155px}.detail-section .laundry-table.quote-record-table .col-item_name{width:150px}.detail-section .laundry-table.quote-record-table .col-status{width:96px}.detail-section .laundry-table.quote-record-table .col-base_price,.detail-section .laundry-table.quote-record-table .col-final_price{width:104px;text-align:right}.detail-section .laundry-table.quote-record-table .col-confirmed_at{width:175px}.detail-section .laundry-table.quote-record-table .col-remark{width:220px}.detail-section .laundry-table.order-record-table .col-problem{width:220px;white-space:normal}.detail-section .laundry-table.order-record-table .col-note{width:240px}.detail-section .laundry-table.order-event-table .col-note{width:auto;min-width:260px}.detail-section .laundry-table .col-created_at{width:132px;min-width:132px;white-space:nowrap}.detail-section .laundry-table .col-transaction_no{min-width:260px;white-space:nowrap}.detail-section .laundry-table .col-refund_no,.detail-section .laundry-table .col-ticket_no,.detail-section .laundry-table .col-order_no{min-width:168px;white-space:nowrap}.detail-section .laundry-table .col-reason,.detail-section .laundry-table .col-item_name{min-width:180px}.detail-section .laundry-table th,.detail-section .laundry-table td{white-space:nowrap;overflow-wrap:normal}.detail-link-button{border:0;padding:0;color:var(--accent);background:transparent;font:inherit;font-weight:900;text-align:left}.detail-link-button:hover{text-decoration:underline}.detail-section .photo-strip{margin:0;padding:14px 18px 18px}.sop-timeline{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--border-soft);padding:16px 20px;background:linear-gradient(180deg,#fff,#f8fbff)}.sop-step{display:flex;align-items:center;gap:6px;flex:1;position:relative;font-size:12px;font-weight:700;color:var(--muted)}.sop-step:after{content:"";flex:1;height:2px;margin:0 6px;background:var(--border-soft);border-radius:2px}.sop-step:last-child:after{display:none}.sop-dot{width:10px;height:10px;border-radius:50%;background:var(--border-soft);flex-shrink:0}.sop-step.done .sop-dot{background:var(--success, #22c55e)}.sop-step.done{color:var(--success, #22c55e)}.sop-step.done:after{background:var(--success, #22c55e)}.sop-step.active .sop-dot{background:var(--accent);box-shadow:0 0 0 3px #2563eb2e}.sop-step.active{color:var(--accent);font-weight:800}.sop-step.pending{color:var(--muted);opacity:.6}.detail-section-group{border-bottom:1px solid var(--border-soft)}.detail-section-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;border:0;padding:10px 18px;color:var(--text);background:#fbfdff;font-size:14px;font-weight:800;cursor:pointer;text-align:left;transition:background .15s}.detail-section-toggle:hover{background:#f0f6ff}.detail-section-toggle.disabled{cursor:default;background:#fbfdff}.detail-section-toggle span:first-child{font-size:12px;color:var(--muted);width:14px}.detail-section-toggle em{font-style:normal;font-size:11px;font-weight:800;color:var(--accent);background:#eef4ff;border-radius:999px;padding:1px 7px}.detail-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;padding:14px 18px;background:#fff}.detail-photos-grid button{display:block;aspect-ratio:1;border:1px solid var(--border-soft);border-radius:8px;padding:0;overflow:hidden;background:#f0f4f8;cursor:pointer}.detail-photos-grid img{width:100%;height:100%;object-fit:cover}.detail-photos-grid span{display:flex;align-items:center;justify-content:center;height:100%;font-size:11px;color:var(--muted)}.item-photo-empty{color:var(--muted)}.item-photo-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:86px;min-height:32px;border:1px solid var(--border-soft);border-radius:8px;padding:0 10px;background:#fff;color:var(--accent);font-size:12px;font-weight:900;cursor:pointer}.item-photo-button em{min-width:18px;height:18px;border-radius:999px;padding:0 5px;color:#fff;background:var(--accent);font-size:11px;font-style:normal;font-weight:900;line-height:18px}.stain-compare-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.stain-compare-cell button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;border:1px solid var(--border-soft);border-radius:8px;padding:0 9px;color:var(--accent);background:#fff;font-size:12px;font-weight:900;cursor:pointer}.stain-compare-cell button.primary{color:#fff;border-color:var(--accent);background:var(--accent)}.stain-compare-cell button:disabled{color:var(--muted);background:#f3f6fa;cursor:not-allowed}.stain-compare-cell strong{min-width:18px;height:18px;border-radius:999px;padding:0 5px;color:#fff;background:var(--accent);font-size:11px;line-height:18px}.image-preview-dialog{z-index:70}.photo-capture-backdrop .image-preview-dialog{z-index:10060}.image-preview-dialog>img{transition:transform .16s ease;transform-origin:center center}.image-preview-thumbs{position:fixed;right:24px;bottom:24px;left:24px;z-index:71;display:flex;justify-content:center;gap:8px;overflow-x:auto;padding:8px;pointer-events:auto}.image-preview-thumbs button{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;border:2px solid transparent;border-radius:8px;padding:0;overflow:hidden;background:#e2e8f0;cursor:pointer}.image-preview-thumbs button.active{border-color:#fff}.image-preview-thumbs img{width:100%;height:100%;object-fit:cover}.refund-item-list{display:grid;gap:8px;max-height:260px;overflow:auto;padding:14px 22px 18px;background:#f8fafc}.refund-item{display:grid;grid-template-columns:18px minmax(150px,1.25fr) minmax(160px,1fr) 88px;align-items:center;gap:10px;border:1px solid var(--border-soft);border-radius:8px;padding:10px 12px;color:var(--text);background:#fff;font-size:13px}.refund-item input{width:16px;height:16px}.refund-item span{overflow:hidden;color:#0f172a;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.refund-item strong,.refund-item em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.refund-item strong{color:#475569;font-weight:800}.refund-item em{color:#0f766e;font-style:normal;font-weight:900;text-align:right}@media(min-width:1024px)and (max-width:1368px)and (orientation:landscape){.modal-backdrop{padding:14px;place-items:center;align-items:center}.crud-modal{width:min(720px,calc(100vw - 28px));max-height:calc(100dvh - 28px)}.crud-modal-head,.crud-modal-actions{padding:14px 18px}.crud-form{gap:12px;padding:18px}.crud-form input,.crud-form select,.crud-form textarea,.date-field.ant-picker{height:42px;font-size:13px}.crud-form textarea{min-height:76px}.order-detail-panel,.member-detail-modal{width:min(1120px,calc(100vw - 28px));max-height:calc(100dvh - 28px)}.member-detail-modal{width:min(940px,calc(100vw - 28px))}.detail-summary{grid-template-columns:repeat(2,max-content minmax(0,1fr))}.detail-actions{gap:7px;padding:10px 14px}.detail-actions button,.refund-item-list button{min-height:42px;padding:0 12px;font-size:13px}.detail-section .laundry-table th,.detail-section .laundry-table td{padding:8px 9px;font-size:12px}.refund-item-list{max-height:210px}}.confirm-dialog-backdrop{place-items:center;align-items:center;justify-items:center;padding:16px}.confirm-dialog{width:min(380px,calc(100vw - 32px));max-height:min(360px,calc(100dvh - 32px));border-radius:8px}.confirm-dialog .crud-modal-head,.confirm-dialog .crud-modal-actions{padding:12px 16px}.confirm-dialog-head h3{font-size:15px}.confirm-dialog-head button{min-width:36px;min-height:36px;border-radius:8px}.confirm-dialog-body{gap:6px;padding:16px 20px 14px}.confirm-dialog-body strong{font-size:15px;line-height:1.35}.confirm-dialog-body p{font-size:13px;line-height:1.35}.confirm-dialog-actions{justify-content:flex-end}.confirm-dialog-actions button{min-width:96px;min-height:40px;border:1px solid #0f5cc8;border-radius:8px;color:#fff;background:#1677ff;font-size:13px;font-weight:900;box-shadow:none}.confirm-dialog-actions button:first-child,.confirm-dialog-actions .confirm-dialog-submit,.confirm-dialog-actions .confirm-dialog-submit-primary,.confirm-dialog-actions .confirm-dialog-submit-success,.confirm-dialog-actions .confirm-dialog-submit-danger,.confirm-dialog-success .confirm-dialog-actions .confirm-dialog-submit,.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit{border-color:#0f5cc8;color:#fff;background:#1677ff;box-shadow:none}.confirm-dialog-actions button:hover,.confirm-dialog-actions button:first-child:hover,.confirm-dialog-actions .confirm-dialog-submit:hover,.confirm-dialog-actions .confirm-dialog-submit-primary:hover,.confirm-dialog-success .confirm-dialog-actions .confirm-dialog-submit:hover,.confirm-dialog-danger .confirm-dialog-actions .confirm-dialog-submit:hover{background:#0f5cc8}.confirm-dialog-actions button:disabled{border-color:#cbd5e1;color:#fff;background:#94a3b8;box-shadow:none;cursor:not-allowed}.crud-form .ai-image-generator .ai-image-generator-prompt{height:132px;min-height:132px;resize:vertical}@media(max-width:760px){.image-upload-field.with-ai .image-upload-control{grid-template-columns:1fr}.image-upload-field.with-ai .image-upload-manual{grid-template-columns:112px minmax(0,1fr)}.image-upload-field.with-ai .image-upload-preview{width:112px;height:86px}}.admin-order-create-modal{display:flex;flex-direction:column;max-height:min(96vh,980px);width:min(1680px,98vw);overflow:hidden}.embedded-order-create{min-height:100dvh;background:#f3f6fa}.embedded-order-create .laundry-head,.embedded-order-create .laundry-grid,.embedded-order-create .appointment-live-notice,.embedded-order-create .laundry-toast-region{display:none}.embedded-order-create .modal-backdrop{padding:0;background:transparent}.embedded-order-create .admin-order-create-modal{width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;box-shadow:none}.embedded-order-create .admin-order-create-modal>.crud-modal-head{display:none}.admin-order-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ghost-icon-button{display:inline-flex;align-items:center;gap:6px;border:1px solid #d9e2ef;border-radius:6px;padding:8px 10px;color:#24324d;background:#fff;font-weight:800}.ghost-icon-button:hover{border-color:#b9cdf4;background:#f7fbff}.admin-pos-shell{display:grid;grid-template-columns:320px minmax(0,1fr) minmax(280px,320px);min-height:0;flex:1;background:#f3f6fa;overflow:hidden}.admin-order-create-modal .admin-pos-shell{grid-template-columns:340px minmax(0,1fr) 320px}.admin-pos-side{display:grid;align-content:start;gap:12px;border-right:1px solid var(--border);padding:16px;background:#fff;overflow:auto}.admin-member-side{width:100%}.admin-order-create-modal .admin-member-side{gap:8px;min-height:0;overflow:auto;scrollbar-gutter:stable}.admin-order-create-modal .admin-member-side .member-select{gap:8px}.admin-order-create-modal .admin-member-side .member-select-title{font-size:13px}.admin-order-create-modal .admin-member-side .member-profile-card{gap:8px;padding:12px;box-shadow:0 8px 18px #0f172a1f}.admin-order-create-modal .admin-member-side .member-card-avatar{width:32px;height:32px}.admin-order-create-modal .admin-member-side .member-card-head{grid-template-columns:32px minmax(0,1fr);gap:8px 10px}.admin-order-create-modal .admin-member-side .member-card-head span,.admin-order-create-modal .admin-member-side .member-card-person span,.admin-order-create-modal .admin-member-side .member-balance-box span,.admin-order-create-modal .admin-member-side .member-profile-card dt{font-size:11px}.admin-order-create-modal .admin-member-side .member-card-head strong,.admin-order-create-modal .admin-member-side .member-card-person strong{font-size:14px;overflow-wrap:anywhere}.admin-order-create-modal .admin-member-side .member-card-level{padding:3px 7px;font-size:11px;justify-self:end;min-width:0;max-width:none;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.admin-order-create-modal .admin-member-side .member-card-person strong{white-space:normal;line-height:1.2}.admin-order-create-modal .admin-member-side .member-card-person{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:8px}.admin-order-create-modal .admin-member-side .member-card-person span{grid-column:1 / -1;display:block;margin-top:3px}.admin-order-create-modal .admin-member-side .member-balance-box{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;padding:8px 10px}.admin-order-create-modal .admin-member-side .member-balance-box strong{font-size:20px}.admin-order-create-modal .admin-member-side .member-profile-card dl{gap:6px}.admin-order-create-modal .admin-member-side .member-profile-card dl div{padding:7px 8px}.admin-order-create-modal .admin-member-side .member-profile-card dd{margin-top:2px;font-size:13px}.admin-order-create-modal .admin-member-side .member-select-trigger{min-height:36px}.quick-member-create{display:grid;gap:8px;border:1px solid #d8e4f2;border-radius:8px;padding:10px;background:#f8fbff}.quick-member-create-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.quick-member-create>summary{cursor:pointer;list-style:none}.quick-member-create>summary::-webkit-details-marker{display:none}.quick-member-create-head:after{content:"+";flex:0 0 auto;color:#0f5cc8;font-size:18px;font-weight:900;line-height:1}.quick-member-create[open] .quick-member-create-head:after{content:"-"}.quick-member-create-head strong{overflow:hidden;color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900}.quick-member-create-head span{flex:0 0 auto;color:#64748b;font-size:11px;font-weight:800}.quick-member-create-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.quick-member-create-button{width:100%;margin-top:4px;min-height:36px;border:0;border-radius:8px;color:#fff;background:#0f766e;font-size:14px;font-weight:900;cursor:pointer}.quick-member-create-button:disabled{cursor:not-allowed;opacity:.6}.admin-order-create-modal .admin-member-side label{gap:4px}.admin-order-create-modal .admin-member-side .admin-order-remark{min-height:64px;height:64px}.admin-picker-main{min-width:0}.admin-pos-section-title{color:var(--text);font-size:15px;font-weight:900}.admin-pos-side label{display:grid;gap:6px}.admin-pos-side label span{color:#65738b;font-size:12px;font-weight:800}.admin-pos-side textarea{height:78px}.admin-pos-side .admin-order-remark{min-height:104px;height:104px;resize:none}.admin-pos-side .admin-order-remark::placeholder{color:#94a3b8;font-weight:700}.admin-pos-side .admin-order-remark:focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow);outline:none}.admin-member-card{display:grid;gap:8px;border:1px solid #e7edf6;border-radius:8px;padding:12px;background:#f8fafc}.admin-member-card strong,.admin-member-card span,.admin-member-card em,.admin-member-card b{display:block}.admin-member-card strong{color:var(--text);font-size:15px}.admin-member-card span,.admin-member-card em{color:var(--muted);font-size:12px;font-style:normal}.admin-member-card div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e7edf6;padding-top:8px}.admin-member-card b{color:#172033}.admin-pos-total{display:grid;grid-template-columns:1fr auto;min-width:210px;gap:6px 14px}.admin-pos-total span{color:#65738b;font-size:12px}.admin-pos-total strong{text-align:right}.admin-order-footer{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"package package" "total actions";align-items:center;gap:6px 14px;border-top:1px solid #d9e2ef;padding:8px 14px;background:#fffffffa;box-shadow:0 -8px 20px #14264312}.admin-order-footer .admin-pos-total{grid-area:total;grid-template-columns:repeat(12,max-content);align-items:baseline;gap:4px 10px;min-width:0;justify-content:start;white-space:nowrap}.admin-order-footer .admin-pos-total span{font-size:12px}.admin-order-footer .admin-pos-total .member-discount-summary em{color:#172033;font-size:14px;font-style:normal;font-weight:900}.admin-order-footer .admin-pos-total strong:first-of-type{color:#a15c00;font-size:24px;line-height:1}.admin-order-footer .admin-pos-total input{width:90px;min-height:32px}.admin-order-benefit-tools{grid-area:package;display:flex;align-items:center;gap:12px;min-width:0}.admin-order-coupon-tools{display:grid;grid-template-columns:minmax(180px,260px);align-items:center;gap:6px 10px;min-width:0}.admin-member-discount-note{grid-column:1;grid-row:1;display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:5px;min-width:0}.admin-member-discount-note strong{overflow:hidden;color:#172033;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.admin-package-panel{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px;min-width:0;width:fit-content;max-width:100%;justify-self:start;border:1px solid #bfdbfe;border-radius:8px;padding:6px 10px;background:#f8fbff}.admin-package-panel-head,.admin-package-applied{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.admin-package-panel-head>div,.admin-package-applied>div{min-width:0}.admin-package-panel-head strong,.admin-package-applied strong,.admin-package-applied span{display:block}.admin-package-panel-head strong,.admin-package-applied>strong{color:#172033;font-size:14px;font-weight:900}.admin-package-applied span{margin-top:3px;overflow:hidden;color:#65738b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.admin-package-panel-head b,.admin-package-panel-head em{flex:0 0 auto;border-radius:999px;padding:3px 8px;font-size:12px;font-style:normal;font-weight:800}.admin-package-panel-head b{color:#166534;background:#dcfce7}.admin-package-panel-head em{color:#1d4ed8;background:#dbeafe}.admin-package-entry-grid{display:grid;grid-template-columns:minmax(200px,300px) minmax(220px,320px) auto;gap:8px;align-items:center;min-width:0}.admin-package-entry-grid label{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:6px;min-width:0}.admin-package-entry-grid label span{color:#65738b;font-size:12px;font-weight:800}.admin-package-entry-grid select,.admin-package-entry-grid input,.admin-benefit-select{width:100%}.admin-package-scan-action,.admin-package-applied button{display:inline-grid;place-items:center;min-height:34px;border:1px solid #2563eb;border-radius:6px;padding:0 12px;color:#fff;background:#2563eb;font-size:13px;font-weight:800;white-space:nowrap}.admin-package-scan-action{width:34px;padding:0}.admin-package-applied{grid-column:2;align-items:center}.admin-package-applied>strong{margin-left:auto;color:#0f766e}.admin-package-applied button{border-color:#fecaca;color:#b42318;background:#fff1f2}.admin-package-scan-action:disabled,.admin-package-applied button:disabled{border-color:#cbd5e1;color:#64748b;background:#e2e8f0;cursor:not-allowed}.admin-package-redeem-error{grid-column:2;color:#b42318;font-size:12px;line-height:1.3}.admin-order-coupon-tools>label:not(.admin-package-redeem-row){grid-column:1;grid-row:1}.admin-order-coupon-tools label{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:4px;min-width:0}.admin-order-coupon-tools span{color:#65738b;font-size:12px}.admin-order-coupon-tools select{width:100%;min-width:0;min-height:30px;border:1px solid #d9e2ef;border-radius:6px;padding:0 8px;color:#24324d;background:#fff;font-size:13px}.admin-order-footer-actions{grid-area:actions;display:flex;align-items:center;gap:8px;justify-content:flex-end;min-width:max-content}.admin-order-footer-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:1px solid transparent;border-radius:6px;padding:0 14px;color:#fff;background:var(--accent);font-size:14px;font-weight:800;white-space:nowrap}.admin-order-footer-actions button.ghost-button{border-color:#d9e2ef;color:#24324d;background:#fff}.admin-order-footer-actions button.ghost-button:hover{border-color:#b9cdf4;background:#f7fbff}.admin-order-footer-actions button.draft-action{border-color:#f59e0b;color:#92400e;background:#fff7ed}.admin-order-footer-actions button.restore-action{border-color:#6366f1;color:#3730a3;background:#eef2ff}.admin-order-footer-actions button.settle-action{color:#fff;border-color:transparent;background:#0f7a4f}.admin-order-footer-actions button.draft-action:hover{background:#ffedd5}.admin-order-footer-actions button.restore-action:hover{background:#e0e7ff}.admin-order-footer-note{min-width:0;color:var(--muted);font-size:13px;text-align:right}.admin-pos-main{display:grid;grid-template-rows:auto auto minmax(0,1fr);min-width:0;min-height:0;background:#fff}.admin-pos-modules,.admin-pos-tools{display:grid;gap:8px;border-bottom:1px solid var(--border-soft);padding:12px}.admin-pos-modules{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:42px;background:#eef5ff}.admin-pos-modules button,.admin-pos-tools button{min-height:42px;border:1px solid #e2e9f4;border-radius:8px;color:#4d5b70;background:#fff;font-size:14px;font-weight:900;white-space:nowrap}.admin-pos-modules button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;border-color:#c9d9ef;border-radius:7px;padding:0 10px;color:#31506b;background:#f8fbff;box-shadow:0 1px 2px #0f325e0a}.admin-pos-modules button svg{flex:0 0 auto}.admin-pos-modules button span{overflow:hidden;min-width:0;text-overflow:ellipsis}.admin-pos-modules button.active{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:0 8px 18px #2563eb2e}.admin-pos-tools{grid-template-columns:repeat(6,minmax(0,1fr));background:#fbfdff}.admin-pos-tools input,.admin-pos-tools select{min-width:0;min-height:42px;border:1px solid #d9e2ef;border-radius:6px;padding:0 12px;color:#24324d;background:#fff;font-size:14px}.admin-pos-tools button{min-height:38px;border-radius:6px}.admin-intake-step-panel{display:grid;min-height:0;border-bottom:1px solid var(--border-soft);padding:14px 12px 12px;background:#fff;overflow:hidden}.admin-intake-step-panel>span{color:#53617a;font-size:14px;font-weight:800}.admin-step-options{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-step-options span{border:1px dashed #cbd8ea;border-radius:6px;padding:9px 12px;color:#6b778c;background:#fff;font-size:13px;font-weight:800}.admin-step-options button{min-height:42px;border:1px solid #d9e2ef;border-radius:6px;padding:0 12px;color:#334155;background:#fff;font-weight:800}.admin-step-options button.active{color:#fff;border-color:var(--accent);background:var(--accent)}.admin-tab-panel{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;min-height:0}.admin-cloth-tab-panel{grid-template-columns:178px minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.admin-cloth-tab-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0}.admin-option-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));align-content:start;gap:10px;min-height:0;overflow:auto}.admin-option-list button{position:relative;display:grid;align-items:center;justify-items:center;gap:6px;min-height:112px;border:1px solid #dfe7f2;border-radius:8px;padding:12px 10px;color:#24324d;background:linear-gradient(180deg,#fff,#fbfdff);text-align:center;font-weight:800}.admin-option-list button.active{border-color:#2563eb;color:#172033;background:#f3f7ff;box-shadow:inset 0 0 0 2px #2563eb2e,0 8px 18px #2563eb14}.admin-option-list button.active:after{content:"已选";position:absolute;top:7px;right:7px;border-radius:999px;padding:2px 6px;color:#fff;background:#2563eb;font-size:11px;font-weight:900}.admin-option-list button em{color:inherit;font-size:12px;font-style:normal;opacity:.8}.admin-cloth-list .admin-option-row.active{background:#f8fbff}.admin-attribute-panel .admin-option-list{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-auto-rows:auto;gap:10px;border-top:1px solid #e6eef8;padding-top:12px}.admin-order-create-modal .admin-attribute-panel{height:100%;min-height:0}.admin-order-create-modal .admin-attribute-panel .admin-option-list{min-height:0;overflow:auto}.admin-order-create-modal .admin-attribute-panel .admin-add-option-row{grid-template-columns:minmax(160px,260px) 88px;justify-content:start;width:min(100%,360px);align-self:end;margin-top:0;background:#fbfdff}.admin-manual-addon-row+.admin-insurance-quote-row{margin-top:10px}.admin-attribute-panel .admin-option-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-height:64px;border:1px solid #d7e3f0;border-radius:7px;color:#24324d;background:#fbfdff;box-shadow:none;overflow:hidden}.admin-attribute-panel .admin-option-row.active{border-color:#22c55e;color:#172033;background:#f7fef9;box-shadow:inset 0 0 0 1px #16a34a29}.admin-attribute-panel .admin-option-row.active:before{content:"✓";position:absolute;top:50%;left:10px;display:grid;place-items:center;width:17px;height:17px;border-radius:5px;color:#fff;background:#16a34a;font-size:12px;font-weight:900;transform:translateY(-50%)}.admin-attribute-panel .admin-option-row>button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch;gap:8px;min-height:64px;border:0;padding:8px 14px 8px 36px;color:inherit;background:transparent;text-align:left;font-weight:900}.admin-attribute-panel .admin-option-row strong{display:block;overflow:visible;min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word;font-size:16px;line-height:1.25}.admin-option-badges{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}.admin-attribute-panel .admin-option-row em{border-radius:999px;padding:2px 7px;color:#64748b;background:#eef2f7;font-size:12px;font-style:normal;font-weight:900}.admin-attribute-panel .admin-option-row em.ai{color:#9a3412;background:#ffedd5}.admin-option-row-actions{display:flex;align-items:center;gap:4px;padding-right:8px}.admin-option-row-actions button{min-width:36px;min-height:32px;border:1px solid #fecaca;border-radius:6px;padding:0 8px;color:#b42318;background:#fff5f5;font-size:12px;font-weight:900}.admin-cloth-list{grid-template-columns:repeat(auto-fill,170px);justify-content:start;padding:10px 0}.admin-cloth-list .admin-option-row{width:170px;height:202px;min-height:202px;grid-template-rows:86px 32px 44px;align-content:center;gap:7px;border-color:#d9e4f2;padding:12px;background:#fff;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease}.admin-cloth-list .admin-option-row:hover{border-color:#9bbcf3;background:#fbfdff;box-shadow:0 8px 18px #2057d614;transform:translateY(-1px)}.admin-cloth-list .admin-service-badge{position:absolute;top:9px;left:9px;right:auto;z-index:1;min-height:18px;border:1px solid #bbf7d0;padding:0 6px;color:#047857;background:#f0fdf4f5;box-shadow:0 2px 6px #0478571a;font-size:10px;line-height:18px;font-weight:900}.admin-photo-panel{display:flex;flex-direction:column;align-items:stretch;gap:10px;height:100%;min-height:0;overflow:auto;padding:0 2px 12px 0}.admin-photo-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-photo-panel-head strong,.admin-photo-panel-head span{display:block}.admin-photo-panel-head strong{color:var(--text);font-size:16px}.admin-photo-panel-head span{margin-top:3px;color:var(--muted);font-size:12px;font-weight:800}.admin-photo-panel-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.admin-photo-capture-button,.admin-photo-ai-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border-radius:8px;padding:0 14px;border:1px solid transparent;color:#fff;font-size:14px;font-weight:900;white-space:nowrap;cursor:pointer}.admin-photo-capture-button{background:#2563eb}.admin-photo-ai-button{min-width:132px;border-color:#ea580c;color:#fff;background:#ea580c;box-shadow:0 8px 16px #ea580c2e}.admin-photo-ai-button:hover{background:#c2410c}.admin-photo-ai-button:disabled{border-color:#fed7aa;color:var(--color-recommend-700);background:var(--color-recommend-50);box-shadow:none;cursor:not-allowed;opacity:.55}.admin-photo-ai-status{border:1px solid #bfdbfe;border-radius:8px;padding:9px 12px;color:#1d4ed8;background:#eff6ff;font-size:13px;font-weight:800}.admin-photo-ai-result{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.admin-photo-ai-result section{display:grid;gap:7px;min-width:0;border:1px solid #d9e2ef;border-left-width:4px;border-radius:8px;padding:11px 12px;background:#fff}.admin-photo-ai-result section.value-card{border-color:#f6d36b;background:#fffdf5}.admin-photo-ai-result section.sort-card{border-color:#93c5fd;background:#f8fbff}.admin-photo-ai-result section.wash-card{border-color:#86efac;background:#f9fffb}.admin-photo-ai-result strong,.admin-photo-ai-result p,.admin-photo-ai-result span,.admin-photo-ai-result em{min-width:0}.admin-photo-ai-result strong{color:#0f172a;font-size:13px;font-weight:900}.admin-photo-ai-result p{margin:0;color:#111827;font-size:14px;font-weight:900;line-height:1.45;overflow-wrap:anywhere}.admin-photo-ai-result span,.admin-photo-ai-result em{display:block;color:#334155;font-size:13px;font-style:normal;font-weight:700;line-height:1.55;overflow-wrap:anywhere}.admin-photo-ai-result em{border-radius:6px;padding:6px 8px;color:#991b1b;background:#fff1f2}.admin-photo-ai-result section.high-value strong,.admin-photo-ai-result section.high-value em{color:#991b1b}.photo-capture-backdrop .image-preview-thumbs{z-index:10061}.admin-photo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,168px));align-content:start;flex:0 0 auto;gap:10px;min-height:0}.admin-photo-card{display:grid;align-content:start;gap:6px;border:1px solid #dfe7f2;border-radius:8px;padding:7px;background:#fff}.admin-photo-card>button:first-child{border:0;border-radius:6px;padding:0;background:#f8fafc;overflow:hidden}.admin-photo-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.admin-photo-card span{overflow:hidden;color:#475569;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.admin-photo-card .danger{min-height:32px;border:1px solid #fecaca;border-radius:6px;color:#b42318;background:#fff5f5;font-weight:900}.admin-photo-empty{display:grid;place-items:center;min-height:120px;border:1px dashed #cbd8ea;border-radius:8px;padding:16px;color:#64748b;background:#fff;font-weight:900;text-align:center}.admin-photo-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:24px;background:#0a0f1cd1}.admin-photo-lightbox img{max-width:min(92vw,1200px);max-height:88vh;border-radius:8px;object-fit:contain;transition:transform .12s ease;transform-origin:center center}.photo-capture-backdrop{z-index:10040}.photo-capture-modal{display:flex;flex-direction:column;width:min(1080px,94vw);height:min(700px,calc(100vh - 28px));max-height:calc(100vh - 36px);overflow:hidden}.photo-capture-modal .crud-modal-head{padding:10px 14px}.photo-capture-modal .crud-modal-head h3{font-size:17px}.photo-capture-modal .crud-modal-head p{margin-top:2px;font-size:13px}.photo-capture-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:10px;flex:1 1 auto;min-height:0;overflow:hidden;padding:10px;background:#f8fafc}.photo-capture-video-box{position:relative;display:grid;place-items:center;min-height:0;border:1px solid #d9e2ef;border-radius:8px;background:#101827;overflow:hidden}.photo-capture-video{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.photo-capture-video-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#cbd5e1;font-size:16px;font-weight:900;pointer-events:none}.photo-capture-side{display:grid;grid-auto-rows:max-content;align-content:start;gap:7px;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding-right:2px}.photo-capture-side label{display:grid;gap:6px;color:#475569;font-size:13px;font-weight:900}.photo-capture-side select{min-width:0;min-height:38px;border:1px solid #d9e2ef;border-radius:8px;padding:0 10px;color:#24324d;background:#fff}.photo-capture-side button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:0;border-radius:8px;padding:0 10px;color:#fff;background:#2563eb;font-weight:900;white-space:nowrap;cursor:pointer}.photo-capture-side button:disabled{opacity:.48}.photo-capture-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;border:1px solid #d9e2ef;border-radius:8px;padding:8px;background:#fff}.photo-capture-section>strong{grid-column:1 / -1;color:#172033;font-size:13px}.photo-capture-primary{background:#2563eb!important}.photo-capture-switch{color:#075985!important;background:#e0f2fe!important}.photo-capture-primary,.photo-capture-switch,.photo-capture-shot,.photo-capture-stop{min-height:44px!important;padding:0 9px!important;font-size:13px}.photo-capture-shot{background:#0f7a4f!important}.photo-capture-stop{color:#475569!important;background:#e2e8f0!important}.photo-capture-pedal{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border-top:1px solid #e2e8f0;padding-top:6px}.photo-capture-pedal div{display:grid;gap:3px;min-width:0}.photo-capture-pedal span,.photo-capture-pedal small{overflow:hidden;color:#64748b;text-overflow:ellipsis;white-space:nowrap}.photo-capture-pedal span{font-size:12px;font-weight:800}.photo-capture-pedal small{font-size:11px;font-weight:700}.photo-capture-pedal button{width:auto;min-width:76px;background:#475569!important}.photo-capture-footer{flex:0 0 auto;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--border-soft);padding:10px 14px;background:#fff}.photo-capture-done{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:0;border-radius:8px;padding:0 18px;color:#fff!important;background:#111827!important;font-weight:900;white-space:nowrap;cursor:pointer}.photo-capture-error{max-height:92px;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid #fecaca;border-radius:8px;padding:9px 10px;color:#b42318;background:#fff5f5;font-size:12px;font-weight:800;line-height:1.45;word-break:break-word}.photo-capture-count{display:flex;align-items:center;justify-content:space-between;border:1px solid #d9e2ef;border-radius:8px;padding:8px 10px;background:#fff}.photo-capture-count svg{color:#0f7a4f}.photo-capture-count span{color:#64748b;font-size:13px;font-weight:900}.photo-capture-count strong{color:#0f7a4f;font-size:20px}.photo-capture-preview-panel{display:grid;grid-template-rows:max-content minmax(0,1fr) max-content;gap:8px;min-height:0;border:1px solid #cfe0f5;border-radius:8px;padding:10px;background:#f8fbff}.photo-capture-preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.photo-capture-preview-head strong{color:#172033;font-size:14px}.photo-capture-preview-head span{color:#64748b;font-size:12px;font-weight:800}.photo-capture-preview-frame,.photo-capture-preview-empty{display:grid;place-items:center;width:100%;min-height:126px;max-height:176px;border:1px solid #d9e2ef;border-radius:8px;overflow:hidden;background:#fff}.photo-capture-preview-frame{position:relative}.photo-capture-preview-main{display:block;width:100%;height:100%;border:0;border-radius:0}.photo-capture-preview-main{min-height:0;padding:0;color:inherit;background:#fff;cursor:zoom-in}.photo-capture-preview-main img{width:100%;height:100%;object-fit:cover}.photo-capture-preview-empty{gap:8px;color:#94a3b8;font-size:13px;font-weight:900}.photo-capture-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-height:78px;overflow:auto}.photo-capture-thumb{position:relative;min-width:0}.photo-capture-thumb>button:first-child{min-height:0;width:100%;aspect-ratio:1;border:2px solid transparent;border-radius:8px;padding:0;color:inherit;overflow:hidden;background:#e2e8f0}.photo-capture-thumb>button:first-child.active{border-color:#2563eb}.photo-capture-side .photo-capture-thumb-delete{position:absolute;top:3px;right:3px;display:inline-flex;align-items:center;justify-content:center;width:16px;min-width:16px;height:16px;min-height:16px;border:1px solid rgba(255,255,255,.92);border-radius:999px;padding:0;color:#fff;background:#ef4444;box-shadow:0 2px 5px #0f172a3d}.photo-capture-side .photo-capture-thumb-delete svg{flex:0 0 auto}.photo-capture-thumbs img{width:100%;height:100%;object-fit:cover}.photo-capture-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:28px;background:#0a0f1cdb}.photo-capture-lightbox img{max-width:min(92vw,1280px);max-height:88vh;border-radius:8px;object-fit:contain;transition:transform .12s ease;transform-origin:center center}.photo-lightbox-toolbar{position:absolute;top:22px;right:22px;z-index:2;display:inline-flex;align-items:center;gap:8px}.photo-lightbox-toolbar button{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:8px;color:#fff;background:#0f172ac2}.photo-lightbox-toolbar span{min-width:54px;border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:9px 10px;color:#fff;background:#0f172ac2;font-size:13px;font-weight:900;text-align:center}.admin-cloth-list .admin-option-row.active{border-color:#2563eb;background:#f3f7ff;box-shadow:inset 0 0 0 2px #2563eb38,0 10px 22px #2563eb24}.admin-cloth-list .admin-option-row.active:after{content:"已选";position:absolute;top:7px;right:7px;border-radius:999px;padding:3px 8px;color:#fff;background:#2563eb;font-size:11px;font-weight:900}.admin-option-row .admin-cloth-icon,.admin-option-row .admin-cloth-image{align-self:center;justify-self:center;width:84px;height:84px;margin:0;border:1px solid #dbe5f2;border-radius:12px;background:linear-gradient(180deg,#f8fbff,#eef4fb);box-shadow:inset 0 0 0 1px #ffffffb8}.admin-option-row .admin-cloth-image{object-fit:cover}.admin-option-row strong{overflow:hidden;max-width:100%;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;overflow-wrap:anywhere;color:#172033;font-size:14px;font-weight:900}.admin-option-row em{border-radius:999px;padding:4px 10px;color:#d61f69;background:#ffe7f1;font-size:15px;font-style:normal;font-weight:900}.admin-option-row.active em{color:#d61f69;background:#ffe7f1}.admin-product-price-summary{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;width:100%;min-width:0}.admin-product-spec-meta{display:inline-flex;align-self:center;flex:0 1 auto;align-items:center;max-width:100%;min-height:22px;border:1px solid var(--color-neutral-200);border-radius:var(--control-radius-compact);padding:0 7px;color:var(--color-neutral-500);background:var(--color-neutral-50);font-size:11px;font-weight:800;line-height:20px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-product-price{display:block;width:100%;min-width:0;overflow:hidden;color:var(--processing);font-size:16px;font-variant-numeric:tabular-nums;font-weight:900;line-height:1.15;text-align:center;text-overflow:ellipsis;white-space:nowrap}.admin-cloth-list .admin-option-row.active .admin-product-price{color:var(--accent-strong)}.admin-add-option-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(92px,110px) minmax(92px,110px) auto;gap:8px;border-top:1px solid var(--border-soft);padding-top:10px}.admin-cloth-tab-main .admin-add-option-row{grid-template-columns:minmax(120px,220px) minmax(86px,104px) minmax(86px,104px) auto;justify-content:start}.admin-add-option-row input{min-width:0;min-height:40px;border:1px solid #d9e2ef;border-radius:6px;padding:0 10px}.admin-add-option-row button{min-height:40px;border:0;border-radius:6px;padding:0 14px;color:#fff;background:var(--accent);font-weight:800}.admin-category-list{display:grid;align-content:start;min-height:0;border-right:1px solid var(--border-soft);background:#fbfdff;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.admin-category-list button{width:100%;min-height:44px;border:0;border-bottom:1px solid var(--border-soft);color:#56657a;background:transparent;font-size:15px;font-weight:900;touch-action:manipulation}.admin-category-list button.active{color:#fff;background:var(--accent)}.admin-category-group-title{display:block;padding:12px 14px 6px;color:#334155;border-bottom:1px solid var(--border-soft);background:#f1f5f9;font-size:13px;font-weight:900;text-align:center}.admin-category-group-title.laundry{color:#1d4ed8;background:#dbeafe}.admin-category-group-title.repair{color:#b45309;background:#ffedd5}.admin-category-list button.child{min-height:40px;padding-left:0;text-align:center;font-size:14px}.admin-add-option-row.admin-manual-addon-row{grid-template-columns:270px 108px max-content;justify-content:start;width:max-content;max-width:100%}.admin-add-option-row .admin-manual-addon-name{width:270px;min-width:270px;max-width:270px}.admin-product-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;border-bottom:1px solid var(--border-soft);padding:10px}.admin-product-search button{border:0;border-radius:6px;padding:0 12px;color:#24324d;background:#eef2f7;font-weight:700}.admin-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:10px;padding:12px}.admin-product-card{display:grid;place-items:center;min-height:160px;border:1px solid #dfe7f2;border-radius:8px;padding:12px;background:#fff}.admin-product-card:hover{border-color:#b9cdf4;background:#fbfdff}.admin-product-card strong{overflow:hidden;max-width:100%;color:#172033;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.admin-product-card em{color:#a15c00;font-size:12px;font-style:normal;font-weight:800}.admin-cloth-icon{position:relative;display:block;width:84px;height:84px;margin:0;overflow:hidden}.admin-cloth-icon:before,.admin-cloth-icon:after{content:"";position:absolute;display:block}.admin-cloth-icon.shirt:before,.admin-cloth-icon.coat:before,.admin-cloth-icon.cloth:before{top:10px;right:17px;bottom:9px;left:17px;border:4px solid #24324d;border-radius:10px 10px 5px 5px;background:#19a7dc;clip-path:polygon(18% 0,36% 0,50% 16%,64% 0,82% 0,100% 28%,82% 42%,82% 100%,18% 100%,18% 42%,0 28%)}.admin-cloth-icon.coat:before{background:#bd625c}.admin-cloth-icon.leather:before{top:10px;right:17px;bottom:9px;left:17px;border:4px solid #24324d;border-radius:12px 12px 5px 5px;background:#7c4a32;clip-path:polygon(18% 0,36% 0,50% 16%,64% 0,82% 0,100% 28%,82% 42%,82% 100%,18% 100%,18% 42%,0 28%)}.admin-cloth-icon.cloth:before{background:#91a8bd}.admin-cloth-icon.iron:before{left:11px;top:27px;width:58px;height:32px;border:4px solid #24324d;border-radius:8px 18px 8px 8px;background:#fff}.admin-cloth-icon.iron:after{top:24px;left:27px;width:32px;height:6px;border-radius:999px;background:#24324d}.admin-cloth-icon.pants:before{left:21px;top:9px;width:42px;height:64px;border:4px solid #24324d;border-radius:8px;background:#1d9bd8;clip-path:polygon(10% 0,90% 0,76% 100%,55% 100%,50% 40%,45% 100%,24% 100%)}.admin-cloth-icon.dress:before{left:17px;top:9px;width:50px;height:64px;border:4px solid #24324d;border-radius:12px 12px 7px 7px;background:#d9468f;clip-path:polygon(28% 0,72% 0,80% 24%,66% 38%,92% 100%,8% 100%,34% 38%,20% 24%)}.admin-cloth-icon.skirt:before{left:18px;top:19px;width:48px;height:46px;border:4px solid #24324d;border-radius:8px 8px 10px 10px;background:#c084fc;clip-path:polygon(20% 0,80% 0,100% 100%,0 100%)}.admin-cloth-icon.shoe:before{left:11px;top:30px;width:58px;height:30px;border:4px solid #24324d;border-radius:999px 16px 9px 13px;background:#f2b181;transform:skew(-12deg)}.admin-cloth-icon.bag:before{left:16px;top:29px;width:52px;height:36px;border:4px solid #24324d;border-radius:9px;background:#f59e0b}.admin-cloth-icon.bag:after{left:28px;top:17px;width:28px;height:20px;border:4px solid #24324d;border-bottom:0;border-radius:14px 14px 0 0}.admin-cloth-icon.bedding:before{left:14px;top:20px;width:56px;height:44px;border:4px solid #24324d;border-radius:9px;background:#60a5fa}.admin-cloth-icon.bedding:after{left:22px;top:27px;width:40px;height:12px;border-radius:6px;background:#ffffffb8}.admin-cloth-icon.service:before{left:18px;top:18px;width:48px;height:48px;border:4px solid #24324d;border-radius:50%;background:#22c55e}.admin-cloth-icon.service:after{left:37px;top:29px;width:10px;height:24px;border-radius:999px;background:#fff;box-shadow:-7px 7px 0 -3px #fff,7px 7px 0 -3px #fff}.admin-selected-side{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;min-width:0;border-left:1px solid var(--border);padding:16px;background:#fff;overflow:hidden}.admin-selected-list{display:grid;align-content:start;gap:10px;min-width:0;overflow:auto;overflow-x:hidden}.admin-selected-list>span{color:#65738b;font-size:13px;line-height:1.5}.admin-insurance-quote-row{display:grid;grid-template-columns:auto minmax(156px,220px) auto minmax(180px,1fr);align-items:center;gap:10px;min-width:0;border-top:1px solid #e1e8f4;padding:12px 0 2px;color:#24324d}.admin-insurance-quote-row>span{color:#53617a;font-size:13px;font-weight:800;white-space:nowrap}.admin-insurance-quote-row input{width:100%;min-width:0;height:var(--control-height-compact);border:1px solid #b9cdf4;border-radius:var(--control-radius-compact);padding:0 12px;color:#172033;background:#fff;font-size:14px;font-weight:800;font-family:inherit}.admin-insurance-quote-row input:focus{border-color:var(--processing);outline:2px solid rgba(37,99,235,.14);outline-offset:1px}.admin-insurance-quote-row strong{grid-column:3 / -1;min-width:0;color:#a15c00;font-size:13px;font-weight:900;text-align:right;white-space:nowrap}@media(max-width:700px){.admin-insurance-quote-row{grid-template-columns:88px minmax(0,1fr)}.admin-insurance-quote-row strong{grid-column:1 / -1;text-align:left}}.admin-selected-item{display:grid;gap:8px;min-width:0;border:1px solid #e1e8f4;border-radius:6px;padding:10px;background:#fff;cursor:pointer}.admin-selected-item.active{border-color:#b9cdf4;background:#f7fbff}.admin-selected-item.service-line{border-color:#d7e3dc;background:#f8fbf8}.admin-selected-item:hover,.admin-selected-item:focus-visible{border-color:#8fb2f4;box-shadow:0 0 0 2px #2563eb14;outline:none}.admin-selected-title{display:flex;align-items:center;gap:10px;min-width:0;border:0;padding:0;color:var(--text);background:transparent;text-align:left}.admin-selected-title strong,.admin-selected-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-selected-title strong{flex:1 1 auto;min-width:0;font-size:14px}.admin-selected-title span{color:#a15c00;font-size:13px;font-weight:900}.admin-selected-price{display:inline-flex;flex-direction:column;flex:0 0 auto;align-items:flex-end;gap:2px;min-width:52px;line-height:1.15}.admin-selected-price del{color:#94a3b8;font-size:12px;font-weight:800}.admin-selected-price b{color:#a15c00;font-size:13px;font-weight:900}.admin-selected-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px}.admin-selected-summary span{overflow:hidden;color:#53617a;font-size:12px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.admin-selected-summary .admin-insurance-summary{color:#a15c00;font-weight:900}.admin-selected-summary .admin-insurance-summary:last-child{grid-column:1 / -1}.admin-service-badge{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:22px;border-radius:999px;padding:0 8px;color:#0f7a4d;background:#e8f7ee;font-size:12px;font-style:normal;font-weight:900;white-space:nowrap}.admin-selected-edit input,.admin-selected-edit select,.admin-order-footer input{min-width:0;min-height:34px;border:1px solid #d9e2ef;border-radius:6px;padding:0 9px;color:#24324d;background:#fff;font-size:13px}.admin-selected-actions{display:flex;justify-content:flex-start;flex-wrap:nowrap;gap:6px;align-items:center;min-width:0}.admin-selected-actions button{flex:0 0 76px;min-width:64px;min-height:38px;border:0;border-radius:6px;padding:0 8px;color:var(--accent);background:#eef4ff;font-size:13px;font-weight:800;white-space:nowrap}.admin-selected-actions span{text-align:center;font-weight:900}.admin-selected-actions .danger{flex-basis:64px;color:var(--danger);background:#fff1f1}.quick-operation-modal{width:min(840px,96vw)}.order-detail-modal,.refund-modal,.recharge-modal,.quick-operation-modal{max-width:min(96vw,1200px)}.quick-operation-body{display:grid;gap:12px;padding:20px}.quick-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quick-summary-grid div{display:grid;gap:6px;border:1px solid var(--border-soft);border-radius:8px;padding:12px;background:#fbfdff}.quick-summary-grid span{color:var(--muted);font-size:12px;font-weight:700}.quick-summary-grid strong{color:var(--text);font-size:16px}.quick-summary-grid .payment-total-card{border-color:#bfdbfe;background:#eff6ff}.quick-summary-grid .payment-total-card strong{color:#1d4ed8}.quick-summary-grid .payment-balance-card{border-color:#bbf7d0;background:#f0fdf4}.quick-summary-grid .payment-balance-card strong{color:#15803d}.quick-summary-grid .payment-due-card{border-color:#fed7aa;background:#fff7ed}.quick-summary-grid .payment-due-card strong{color:#c2410c;font-size:26px}.delivery-arrangement-address{display:grid;gap:6px;min-height:74px;border:1px solid var(--border-soft);border-radius:8px;padding:12px;background:#fbfdff}.delivery-arrangement-address span,.delivery-arrangement-note span,.delivery-arrangement-grid label>span{color:var(--muted);font-size:13px;font-weight:700}.delivery-arrangement-address strong{color:var(--text);font-size:14px;line-height:1.55;overflow-wrap:anywhere}.delivery-arrangement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.delivery-arrangement-grid label,.delivery-arrangement-note{display:grid;gap:6px}.delivery-arrangement-grid .date-field,.delivery-arrangement-grid .searchable-select{width:100%}.delivery-arrangement-grid .searchable-select input{width:100%;height:40px;min-height:40px;border:1px solid var(--border-soft);border-radius:var(--control-radius);padding:0 12px;color:var(--text);background:#fff;font:inherit}.delivery-arrangement-grid .searchable-select-results{z-index:40;max-height:164px;border-color:#bfd4ee;border-radius:6px;padding:3px;box-shadow:0 8px 18px #112a4f1f}.delivery-arrangement-grid .searchable-select-results button,.delivery-arrangement-grid .searchable-select-results p{min-height:34px;padding:7px 9px;font-size:12px}.delivery-arrangement-note{border:1px solid #d8e6f7;border-radius:8px;padding:10px;background:#f8fbff}.delivery-arrangement-note textarea{width:100%;min-height:76px;border:1px solid #bfd4ee;border-radius:var(--control-radius);padding:10px 12px;resize:vertical;color:var(--text);background:#fff;font:inherit}.photo-evidence-panel{display:grid;gap:8px;border:1px solid #d8e6f7;border-radius:8px;padding:10px;background:#f8fbff}.photo-evidence-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:13px;font-weight:700}.photo-evidence-head>div{display:flex;align-items:center;gap:7px}.photo-evidence-head strong{color:var(--muted);font-size:13px;font-weight:700}.photo-evidence-head span{border:1px solid #bdd7fb;border-radius:999px;padding:2px 7px;color:#0f5cc8;background:#eef6ff;font-size:12px;font-weight:800}.photo-evidence-panel .photo-evidence-action{min-height:34px;border:1px solid #9fc5ef;border-radius:6px;padding:0 10px;color:#0f5cc8;background:#fff;font-size:13px}.photo-evidence-empty{margin:0;color:var(--muted);font-size:13px}.photo-evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,72px);grid-auto-rows:72px;gap:8px}.photo-evidence-thumb{position:relative;width:72px;height:72px}.photo-evidence-panel .photo-evidence-preview{display:block;width:72px;height:72px;min-height:0;overflow:hidden;border:1px solid #cbdced;border-radius:6px;padding:0;background:#fff}.photo-evidence-panel .photo-evidence-preview img{display:block;width:100%;height:100%;object-fit:cover}.photo-evidence-panel .photo-evidence-delete{position:absolute;top:3px;right:3px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;min-height:22px;border:1px solid rgba(185,28,28,.28);border-radius:50%;padding:0;color:#b91c1c;background:#fff;box-shadow:0 2px 6px #0f172a2e}.quick-operation-modal .delivery-signoff-note{gap:8px}.quick-operation-modal .delivery-signoff-options{display:flex;flex-wrap:wrap;gap:6px}.quick-operation-modal .delivery-signoff-options button{min-height:32px;border:1px solid #bfd4ee;border-radius:6px;padding:4px 9px;color:#315985;background:#fff;font-size:12px;font-weight:800}.quick-operation-modal .delivery-signoff-options button.active{border-color:var(--accent);color:#fff;background:var(--accent)}@media(max-width:620px){.delivery-arrangement-grid{grid-template-columns:minmax(0,1fr)}}.payment-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.payment-form-grid label,.payment-method-section{display:grid;gap:8px}.payment-form-grid label span,.payment-method-section>span{color:var(--muted);font-size:13px;font-weight:800}.payment-form-grid input{min-height:46px;border:1px solid #d9e2ef;border-radius:8px;padding:0 12px;color:var(--text);font-size:16px;font-weight:800}.payment-package-section{display:grid;gap:10px;border:1px solid #d9e2ef;border-radius:8px;padding:12px;background:#f8fafc}.payment-package-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.payment-package-head span,.payment-package-grid label span{color:var(--muted);font-size:13px;font-weight:800}.payment-package-head strong{color:#0f766e;font-size:15px}.payment-package-grid{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(120px,.7fr) minmax(110px,.6fr) auto;gap:10px;align-items:end}.payment-package-grid label{display:grid;gap:8px}.payment-package-grid select,.payment-package-grid input{min-height:42px;min-width:0;border:1px solid #d9e2ef;border-radius:8px;padding:0 10px;color:var(--text);background:#fff;font-size:14px;font-weight:700}.payment-package-grid button{min-height:42px;border:1px solid #0f766e;border-radius:8px;padding:0 14px;color:#fff;background:#0f766e;font-weight:800}.payment-package-grid button:disabled{border-color:#cbd5e1;color:#64748b;background:#e2e8f0;cursor:not-allowed}.payment-package-empty{border:1px dashed #cbd5e1;border-radius:8px;padding:10px;color:var(--muted);background:#fff;font-size:13px;font-weight:700}.payment-method-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.payment-method-cards button{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-height:66px;border:2px solid #d9e2ef;border-radius:8px;padding:12px;color:#24324d;background:#fff;text-align:left}.payment-method-cards button.active{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 3px #2563eb1f}.payment-method-cards i{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;color:#fff;background:#2563eb;font-style:normal;font-size:20px;font-weight:900}.payment-method-cards .payment-method-wechat i{background:#16a34a}.payment-method-cards .payment-method-cash i{background:#475569}.payment-method-cards strong{font-size:16px}.touch-confirm-actions button{min-height:54px;padding:0 20px}.payment-warning{border:1px solid #fed7aa;border-radius:8px;padding:8px 10px;color:#9a3412;background:#fff7ed;font-size:13px;font-weight:800}.settlement-success-modal{width:min(760px,96vw)}.settlement-success-body{display:grid;gap:16px;padding:20px}.settlement-success-mark{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;border:1px solid #bbf7d0;border-radius:8px;padding:14px;color:#166534;background:#f0fdf4}.settlement-success-mark strong,.settlement-success-mark span{display:block}.settlement-success-mark strong{color:#14532d;font-size:16px}.settlement-success-mark span{margin-top:4px;color:#3f6f52;font-size:13px}.settlement-next-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settlement-next-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:54px;border:1px solid transparent;border-radius:8px;color:#fff;font-size:16px;font-weight:900}.settlement-next-actions .print-settlement-action{border-color:#7dd3fc;color:#075985;background:#eff6ff}.settlement-next-actions .label-settlement-action{background:#2563eb}.settlement-print-panel{display:grid;gap:14px;border:1px solid #d9e2ef;border-radius:8px;padding:16px;background:#f8fafc}.settlement-print-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.settlement-print-head>div:first-child{min-width:0}.settlement-print-head strong,.settlement-print-head span{display:block}.settlement-print-head strong{color:var(--text);font-size:15px}.settlement-print-head span{margin-top:3px;color:var(--muted);font-size:12px}.settlement-print-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.settlement-print-collapse{border:1px solid #d9e2ef;border-radius:6px;padding:8px 10px;color:#24324d;background:#fff;font-weight:800}.settlement-printer-select{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:800}.settlement-printer-grid{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(180px,1.35fr) minmax(120px,.75fr) minmax(150px,.9fr);gap:10px}.settlement-printer-select select{min-height:var(--control-height-compact);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 12px;color:var(--control-text);background:var(--control-bg);font-size:14px}.settlement-printer-select select:disabled{color:var(--control-disabled-text);background:var(--control-disabled-bg)}.settlement-printer-device{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #d9e2ef;border-radius:8px;padding:8px 10px;background:#fff}.settlement-printer-device span{color:var(--muted);font-size:13px;font-weight:800}.settlement-printer-device strong{margin-left:4px;color:var(--text)}.settlement-printer-device button{display:inline-flex;align-items:center;gap:6px;min-height:38px;border:0;border-radius:6px;padding:0 12px;color:#fff;background:#2563eb;font-weight:800}.settlement-printer-device button.ghost-button{border:1px solid var(--control-border);color:var(--control-text);background:var(--control-bg)}.settlement-printer-device button:disabled,.settlement-print-actions button:disabled{opacity:.55;cursor:not-allowed}.settlement-printer-status{border:1px solid #bbf7d0;border-radius:8px;padding:9px 12px;color:#166534;background:#f0fdf4;font-size:13px;font-weight:800}.settlement-printer-status.danger{border-color:#fecaca;color:#991b1b;background:#fff1f2}.settlement-receipt-preview{display:grid;gap:10px;border:1px solid #d9e2ef;border-radius:8px;padding:12px;background:#eef4fb}.settlement-receipt-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:13px;font-weight:900}.settlement-receipt-preview-head strong{color:#334155}.settlement-receipt-paper{width:min(360px,100%);max-height:280px;margin:0 auto;overflow:auto;border:1px solid #e2e8f0;border-radius:4px;padding:18px 20px 22px;background:#fff;box-shadow:0 12px 24px #0f172a1f}.settlement-receipt-line{color:var(--text);font-family:Microsoft YaHei,PingFang SC,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.42;word-break:break-word}.settlement-receipt-line:first-child{margin-bottom:6px;text-align:center;font-size:15px;font-weight:900}.settlement-receipt-qr{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;margin-top:8px}.settlement-receipt-qr img{width:132px;height:132px;image-rendering:pixelated}.settlement-print-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.settlement-print-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:6px;min-height:38px;padding:0 14px;color:#fff;background:var(--accent);font-weight:800}.settlement-print-actions button.ghost-button{border:1px solid #d9e2ef;color:#24324d;background:#fff}.admin-pos-shell{grid-template-columns:350px minmax(0,1fr) 340px}.admin-order-footer{padding:10px 16px}.admin-order-footer-actions button{min-height:54px;border-radius:8px;padding:0 24px}.admin-pos-tools button,.admin-step-options button{min-height:52px;border-radius:8px}.admin-pos-modules button{min-height:42px;padding:0 10px;font-size:14px}.admin-pos-tools input,.admin-pos-tools select,.admin-pos-side input,.admin-pos-side select,.admin-pos-side textarea,.admin-product-search input,.admin-selected-edit input,.admin-selected-edit select,.admin-order-footer input,.admin-add-option-row input{min-height:46px;border-radius:8px}.admin-order-footer .admin-package-entry-grid input,.admin-order-footer .admin-package-entry-grid select,.admin-order-create-modal .admin-order-footer .admin-package-entry-grid input,.admin-order-create-modal .admin-order-footer .admin-package-entry-grid select{height:34px;min-height:34px;padding:0 9px;border-radius:6px}.admin-order-footer .admin-package-scan-action,.admin-order-footer .admin-package-applied button,.admin-order-create-modal .admin-order-footer .admin-package-scan-action,.admin-order-create-modal .admin-order-footer .admin-package-applied button{height:34px;min-height:34px;padding:0;border-radius:6px}.admin-order-footer .admin-package-scan-action,.admin-order-create-modal .admin-order-footer .admin-package-scan-action{width:34px}.admin-order-footer .admin-order-coupon-tools select,.admin-order-create-modal .admin-order-footer .admin-order-coupon-tools select{height:34px;min-height:34px;padding:0 9px;border-color:#bfd1eb;border-radius:6px}.package-redeem-confirm-modal{width:min(560px,calc(100vw - 32px))}.package-redeem-confirm-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:16px}.package-redeem-confirm-body>div{display:grid;gap:4px;min-width:0;border:1px solid #e1e8f4;border-radius:6px;padding:10px;background:#fbfdff}.package-redeem-confirm-body>div.wide{grid-column:1 / -1}.package-redeem-confirm-body span{color:#65738b;font-size:12px}.package-redeem-confirm-body strong{color:#172033;font-size:14px;line-height:1.45;word-break:break-word}.admin-draft-panel{border-top:1px solid var(--border-soft);padding:14px 16px;background:#fbfdff}.admin-draft-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.admin-draft-panel-head strong{display:block;color:var(--text);font-size:15px}.admin-draft-panel-head span{display:block;margin-top:3px;color:var(--muted);font-size:12px}.admin-draft-list{display:grid;gap:8px;max-height:220px;overflow:auto}.admin-draft-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e1e8f4;border-radius:8px;padding:8px 10px;background:#fff}.admin-draft-main{min-width:0}.admin-draft-main strong,.admin-draft-main span,.admin-draft-main em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-draft-main strong{color:var(--text);font-size:14px}.admin-draft-main span,.admin-draft-main em{margin-top:3px;color:var(--muted);font-size:12px;font-style:normal}.admin-draft-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.admin-draft-actions button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;padding:8px 10px;color:#fff;background:var(--accent);font-weight:800}.admin-draft-actions button.danger{color:var(--danger);background:#fff1f1}.recharge-modal{width:min(720px,94vw)}.touch-recharge-body{display:grid;grid-template-columns:minmax(240px,.82fr) minmax(310px,1fr);gap:12px;padding:16px}.touch-recharge-body>label{min-width:0}.recharge-member-select{display:grid;gap:10px;grid-row:span 4;min-width:0}.recharge-member-select .member-select{min-width:0}.recharge-member-select .member-profile-card{gap:10px;min-height:0;padding:14px}.recharge-member-select .member-profile-card:after{display:none}.recharge-member-select .member-card-head{grid-template-columns:auto minmax(0,1fr)}.recharge-member-select .member-card-avatar{width:40px;height:40px}.recharge-member-select .member-card-person{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;align-items:center}.recharge-member-select .member-card-person span{grid-column:1 / -1}.recharge-member-select .member-balance-box{padding:11px 12px}.recharge-member-select .member-balance-box strong{font-size:26px}.recharge-member-select .member-profile-card dl{gap:8px}.recharge-member-select .member-profile-card dl div{padding:8px 10px}.recharge-member-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recharge-member-meta div{display:grid;gap:5px;min-width:0;border:1px solid #d9e2ef;border-radius:8px;padding:8px 10px;background:#f8fafc}.recharge-member-meta span{color:#65738b;font-size:12px;font-weight:800}.recharge-member-meta strong{overflow:hidden;color:#24324d;text-overflow:ellipsis;white-space:nowrap}.touch-recharge-body label{display:grid;gap:6px}.touch-recharge-body label span{color:#65738b;font-size:12px;font-weight:800}.recharge-rule-picker{display:grid;gap:7px;min-width:0}.recharge-rule-picker-title{color:#65738b;font-size:12px;font-weight:800}.recharge-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recharge-rule-card{display:grid;gap:3px;min-width:0;min-height:58px;border:1px solid #d7e2f0;border-radius:8px;padding:8px 10px;color:#24324d;text-align:left;background:#fff}.recharge-rule-card strong,.recharge-rule-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recharge-rule-card strong{color:#172033;font-size:14px;font-weight:900}.recharge-rule-card span{color:#65738b;font-size:12px;font-weight:800}.recharge-rule-card.active{border-color:var(--processing);color:var(--processing);background:#eff6ff}.recharge-rule-card.active span{color:var(--processing)}.recharge-amount-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.touch-recharge-body input,.touch-recharge-body select,.touch-recharge-body textarea{min-width:0;min-height:var(--control-height-compact);border:1px solid var(--control-border);border-radius:var(--control-radius-compact);padding:0 12px;color:var(--control-text);background:var(--control-bg);font-size:15px;font-family:inherit}.touch-recharge-body textarea{min-height:88px;padding-top:10px;resize:vertical}.recharge-payment-field{min-width:0}.recharge-payment-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.recharge-payment-options button{min-width:0;min-height:44px;border:1px solid #cfd9e8;border-radius:8px;color:#24324d;background:#fff;font-weight:900}.recharge-payment-options .payment-alipay{border-color:#1677ff;color:#1677ff}.recharge-payment-options .payment-wechat{border-color:#07c160;color:#079a4d}.recharge-payment-options .payment-cash{border-color:#94a3b8;color:#475569}.recharge-payment-options .payment-alipay.active{border-color:#1677ff;color:#fff;background:#1677ff}.recharge-payment-options .payment-wechat.active{border-color:#07c160;color:#fff;background:#07c160}.recharge-payment-options .payment-cash.active{border-color:#0f766e;color:#fff;background:#475569}@media(max-width:1180px){.shell,.shell-top-nav{display:block}.topbar-stacked,.topbar-main{align-items:stretch}.top-brand{min-width:0;border-right:0;padding-right:0}.top-nav,.sub-nav{flex-wrap:nowrap}.topbar,.management-page-head{align-items:flex-start;flex-direction:column}.header-actions,.management-page-actions{width:100%;justify-content:space-between}.topbar-main .header-actions{width:auto;justify-self:end;justify-content:flex-end}.laundry-metrics,.overview-grid,.touch-action-grid,.touch-overview-grid,.laundry-grid,.laundry-form.two,.laundry-form.four,.laundry-split,.crud-form{grid-template-columns:1fr}.finance-metrics{grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:10px;margin:8px 16px 0}.finance-metric{min-height:74px;padding:14px 16px}.order-list-row{grid-template-columns:1fr}.order-list-amount{justify-items:center;justify-self:center;text-align:center}.order-list-actions{justify-content:flex-start}.laundry-table-wrap{overflow-x:visible}.laundry-table,.laundry-table tbody,.laundry-table tr,.laundry-table td{display:block;width:100%}.appointments-table{min-width:0}.laundry-table thead{display:none}.laundry-table tbody{display:grid;gap:10px;padding:12px;background:#fff}.laundry-table tr{border:1px solid var(--border-soft);border-radius:8px;padding:8px 10px;background:#fff}.laundry-table.has-actions th:last-child,.laundry-table td.laundry-actions{position:static;min-width:0;max-width:none;box-shadow:none;white-space:normal}.laundry-table td{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;border-bottom:0;padding:7px 0;white-space:normal}.laundry-table td:before{content:attr(data-label);color:#7b8aa2;font-size:12px;font-weight:800}.laundry-table td.laundry-actions{display:block;padding-top:10px}.laundry-table td.laundry-actions:before{display:none}.member-table-scroll .laundry-table-wrap{overflow-x:auto}.member-table-scroll .laundry-table,.member-table-scroll .laundry-table tbody,.member-table-scroll .laundry-table tr{display:revert;width:auto}.member-table-scroll .laundry-table td{display:table-cell;width:auto;border-bottom:1px solid var(--border-soft);padding:8px 10px}.member-table-scroll .laundry-table thead{display:table-header-group}.member-table-scroll .laundry-table tbody{padding:0}.member-table-scroll .laundry-table tr{border:0;border-radius:0;padding:0}.member-table-scroll .laundry-table td:before{display:none}.member-table-scroll .laundry-table.has-actions th:last-child,.member-table-scroll .laundry-table td.laundry-actions{position:sticky;right:0;width:320px;min-width:320px;white-space:nowrap;box-shadow:-8px 0 14px #1426430a}.product-catalog-table-wrap{overflow-x:auto;scrollbar-gutter:stable}.product-catalog-table,.product-catalog-table tbody,.product-catalog-table tr{display:revert;width:auto}.product-catalog-table{display:table;min-width:1720px}.product-catalog-table thead{display:table-header-group}.product-catalog-table tbody{padding:0;background:transparent}.product-catalog-table tr{border:0;border-radius:0;padding:0;background:transparent}.product-catalog-table th,.product-catalog-table td{display:table-cell;width:auto;border-bottom:1px solid var(--border-soft);padding:8px 10px;white-space:normal}.product-catalog-table td:before{display:none}.product-catalog-table.has-actions th:last-child,.product-catalog-table td.laundry-actions{position:sticky;right:0;min-width:196px;background:#fff;box-shadow:-8px 0 14px #1426430a}.laundry-actions,.row-actions{justify-content:flex-start;flex-wrap:wrap;min-width:0}.laundry-panel,.laundry-form .span{grid-column:auto}.admin-pos-shell,.admin-pos-body{grid-template-columns:1fr}.admin-pos-side{border-right:0;border-bottom:1px solid var(--border)}.admin-pos-modules{grid-template-columns:repeat(3,minmax(0,1fr))}.touch-hero{align-items:flex-start}.touch-clock{min-width:120px}.member-dialog-head{display:none}.member-dialog-row{grid-template-columns:38px minmax(0,1fr) minmax(104px,auto);grid-template-areas:"avatar main balance" "avatar main level";min-height:88px;gap:6px 12px;padding:12px 14px}.member-dialog-row .member-avatar-token{grid-area:avatar;align-self:center}.member-dialog-main{grid-area:main}.member-dialog-meta{gap:4px 12px}.member-dialog-level{grid-area:level;justify-self:end;max-width:112px;text-align:right}.member-dialog-balance{grid-area:balance;justify-self:end;align-self:start;font-size:16px}}@media(min-width:761px)and (max-width:1180px){.laundry-table-wrap{overflow-x:auto}.laundry-table,.laundry-table tbody,.laundry-table tr{display:revert;width:auto}.laundry-table{display:table;width:100%}.laundry-table thead{display:table-header-group}.laundry-table tbody{padding:0;background:transparent}.laundry-table tr{border:0;border-radius:0;padding:0;background:transparent}.laundry-table th,.laundry-table td{display:table-cell;width:auto;border-bottom:1px solid var(--border-soft);padding:12px 14px;white-space:nowrap}.laundry-table td:before{display:none}.laundry-table.has-actions th:last-child,.laundry-table td.laundry-actions{position:sticky;right:0;width:auto;min-width:180px;max-width:320px;white-space:nowrap;box-shadow:-8px 0 14px #1426430a}.laundry-table td.laundry-actions{display:table-cell;padding-top:12px}}@media(min-width:1181px)and (max-width:1399px){.topbar-stacked{gap:8px;padding:10px 18px}.topbar-main{grid-template-columns:minmax(150px,auto) minmax(0,1fr) max-content;gap:10px}.top-brand{min-width:150px;padding-right:10px}.brand-mark{width:36px;height:46px}.brand strong{font-size:14px}.brand span,.user span{font-size:11px}.top-nav,.sub-nav,.filter-tabs,.management-tabs{-webkit-overflow-scrolling:touch}.top-nav button,.sub-nav button{min-height:42px;padding:0 11px;font-size:13px}.top-nav button{gap:5px}.sub-nav{padding-top:8px}.sub-nav button{min-height:38px}.logout-button{width:42px;height:42px}.content{max-width:none;padding:18px 18px 30px}.management-page-head{min-height:74px;padding:14px 18px}.management-page-title{min-width:0}.management-page-title span{width:38px;height:38px}.management-page-title strong{font-size:16px}.management-page-title p{font-size:12px}.management-page-actions,.header-actions{gap:8px}.record-count{min-height:30px;padding:0 10px;font-size:12px}.query-bar,.list-filters{gap:10px;padding:14px 18px}.query-bar label,.list-filters label{flex:1 1 178px;min-width:150px;max-width:230px}.query-bar label:has(input),.list-filters label:has(input){flex-basis:200px;max-width:280px}.query-bar button,.list-filters button,.primary-action,.ghost-button{min-height:42px;padding-inline:12px}.section-block-head,.management-section-title,.laundry-subtitle,.filter-tabs{padding-inline:18px}.laundry-table{min-width:980px;font-size:12px}.laundry-table th,.laundry-table td{padding:10px 11px}.laundry-table .col-name,.laundry-table .col-title,.laundry-table .col-member_name,.laundry-table .col-store_name,.laundry-table .col-address,.laundry-table .col-description,.laundry-table .col-remark{min-width:104px}.laundry-table td.laundry-actions.action-normal{min-width:220px}.laundry-table td.laundry-actions.action-many{min-width:320px}.member-table-scroll .laundry-table.has-actions th:last-child,.member-table-scroll .laundry-table td.laundry-actions{width:320px;min-width:320px}.row-actions,.laundry-actions{gap:6px}.row-actions button,.laundry-actions button{min-height:36px;padding-inline:9px}.modal-backdrop{padding:16px}.crud-modal{max-height:calc(100vh - 32px)}.crud-form{gap:12px;padding:18px}.crud-modal-head,.crud-modal-actions{padding:16px 18px}.order-detail-modal,.refund-modal,.quote-modal,.quick-operation-modal{width:min(1120px,calc(100vw - 32px));max-width:calc(100vw - 32px)}.member-detail-modal{width:min(960px,calc(100vw - 32px))}.recharge-modal{width:min(720px,calc(100vw - 32px));max-width:calc(100vw - 32px)}.quote-form{padding:18px}.quote-price-grid{grid-template-columns:1fr}.settlement-printer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-summary{grid-template-columns:repeat(2,max-content 1fr)}.member-record-overview{grid-template-columns:1fr}.member-record-grid,.member-balance-grid,.member-wechat-panel .member-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-order-create-modal{width:min(1320px,calc(100vw - 48px));max-width:none;height:calc(100vh - 32px);max-height:calc(100vh - 32px)}.admin-order-create-modal .admin-pos-shell{grid-template-columns:260px minmax(0,1fr) 260px}.admin-order-create-modal .crud-modal-head,.admin-order-create-modal .crud-modal-actions{padding:12px 14px}.admin-order-create-modal .admin-pos-side,.admin-order-create-modal .admin-selected-side{gap:10px;padding:10px}.admin-order-create-modal .admin-member-side .member-profile-card{padding:10px}.admin-order-create-modal .admin-member-side .member-balance-box{padding:7px 9px}.admin-order-create-modal .admin-member-side .member-profile-card dl div{padding:6px 7px}.admin-pos-side .admin-order-remark{min-height:80px;height:80px}.admin-pos-modules,.admin-pos-tools{gap:6px;padding:10px}.admin-pos-modules{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:40px}.admin-pos-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-pos-modules button{min-height:40px;padding:0 6px;font-size:12px}.admin-pos-tools button{min-height:40px}.admin-intake-step-panel{padding:10px}.admin-step-options{gap:6px}.admin-step-options button{min-height:38px;padding-inline:10px}.admin-cloth-tab-panel{grid-template-columns:150px minmax(0,1fr)}.admin-category-list button{min-height:48px;font-size:15px}.admin-option-list{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}.admin-option-list button{min-height:108px;padding:10px 8px}.admin-cloth-list{grid-template-columns:repeat(auto-fill,minmax(138px,1fr))}.admin-cloth-list .admin-option-row{width:152px;height:194px;min-height:194px;grid-template-rows:86px 34px 40px;padding:12px 10px}.admin-cloth-list .admin-cloth-icon,.admin-cloth-list .admin-cloth-image{width:84px;height:84px}.admin-attribute-panel .admin-option-list{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));grid-auto-rows:auto}.admin-attribute-panel .admin-option-row{min-height:60px}.admin-attribute-panel .admin-option-row>button{min-height:60px;padding:8px 12px 8px 34px}.admin-selected-side{padding:12px}.admin-selected-actions{flex-wrap:wrap}.admin-selected-actions button{flex:1 1 72px;min-height:36px}.admin-order-footer{display:grid;grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"package package" "total actions";align-items:center;gap:10px;padding:8px 10px}.admin-order-footer .admin-pos-total{grid-template-columns:repeat(12,max-content);align-items:center;justify-content:start;gap:4px 8px;min-width:0}.admin-order-footer .admin-pos-total span,.admin-order-footer .admin-pos-total strong{white-space:nowrap}.admin-order-footer .admin-pos-total strong:first-of-type{font-size:20px}.admin-order-footer .admin-pos-total input{width:72px;min-height:30px}.admin-order-coupon-tools{grid-template-columns:minmax(180px,260px);width:auto}.admin-member-discount-note{grid-template-columns:minmax(0,1fr)}.admin-order-coupon-tools label{gap:6px}.admin-order-footer-actions{flex:0 0 auto;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.admin-order-footer-actions button{min-height:40px;padding:0 12px;font-size:13px}.store-touch-home{gap:14px;margin-bottom:14px}.touch-hero{gap:16px;padding:18px}.touch-hero h3{font-size:16px}.touch-clock{min-width:132px;padding-left:18px}.touch-clock strong{font-size:32px}.touch-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.touch-action{grid-template-columns:56px minmax(0,1fr);gap:8px 12px;min-height:112px;padding:16px}.touch-icon{width:56px;height:56px}.touch-icon svg{width:34px;height:34px}.touch-action strong{font-size:16px}.touch-action em{font-size:13px}.touch-overview-grid,.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.overview-work-card{min-height:260px}.touch-flow-bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px 18px}.touch-flow-bar button{min-height:62px;padding:8px 10px}.touch-flow-bar strong{font-size:20px}.order-status-tabs{padding:12px 18px 10px}.order-list{gap:8px;padding:12px 18px 16px}.order-list-row{grid-template-columns:minmax(260px,1fr) 112px 336px;gap:12px;padding:12px}.order-list-actions{gap:6px}.order-list-actions button{min-height:32px;padding-inline:8px;font-size:12px}.sop-timeline{overflow-x:auto;padding:12px 16px}.sop-step{flex:0 0 112px}.detail-actions{padding:10px 16px}.detail-actions button{min-height:42px}.member-select-modal{width:min(880px,calc(100vw - 96px));height:min(560px,calc(100vh - 96px));max-height:calc(100vh - 96px)}.member-dialog-body{padding:16px}.quick-operation-modal{width:min(760px,calc(100vw - 32px))}.quick-operation-body{gap:14px;padding:16px}.quick-summary-grid,.payment-form-grid,.payment-method-cards{gap:10px}.photo-capture-modal{width:min(1040px,calc(100vw - 72px));height:min(640px,calc(100vh - 48px));max-height:calc(100vh - 48px)}.photo-capture-body{grid-template-columns:minmax(0,1fr) 286px;gap:10px;padding:10px}.photo-capture-video-box,.photo-capture-video{min-height:0}.photo-capture-side button{min-height:36px}}@media(min-width:900px)and (max-width:1180px){.admin-order-create-modal{width:min(1168px,calc(100vw - 32px));max-width:none;height:calc(100vh - 32px);max-height:calc(100vh - 32px);overflow:hidden}.admin-order-create-modal .crud-modal-head,.admin-order-create-modal .crud-modal-actions{padding:10px 14px}.admin-order-create-modal .admin-pos-shell{grid-template-columns:230px minmax(0,1fr) 220px}.admin-order-create-modal .admin-pos-side{gap:8px;border-right:1px solid var(--border);border-bottom:0;padding:10px}.admin-order-create-modal .admin-pos-side .admin-order-remark{min-height:74px;height:74px}.admin-order-create-modal .admin-pos-modules,.admin-order-create-modal .admin-pos-tools{gap:6px;padding:8px 10px}.admin-order-create-modal .admin-pos-modules{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:40px}.admin-order-create-modal .admin-pos-modules button{min-height:40px;gap:4px;padding:0 5px;font-size:12px}.admin-order-create-modal .admin-intake-step-panel{padding:12px 10px 10px}.admin-order-create-modal .admin-pos-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-order-create-modal .admin-cloth-tab-panel{grid-template-columns:112px minmax(0,1fr)}.admin-order-create-modal .admin-category-list button{min-height:42px;font-size:13px}.admin-order-create-modal .admin-option-list{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.admin-order-create-modal .admin-option-list button{min-height:102px;padding:8px 6px}.admin-order-create-modal .admin-cloth-list{grid-template-columns:repeat(auto-fill,minmax(116px,1fr))}.admin-order-create-modal .admin-cloth-list .admin-option-row{width:auto;height:194px;min-height:194px;grid-template-rows:86px 28px 44px;padding:10px 8px}.admin-order-create-modal .admin-cloth-list .admin-cloth-icon,.admin-order-create-modal .admin-cloth-list .admin-cloth-image{width:84px;height:84px}.admin-order-create-modal .admin-cloth-list .admin-product-price{font-size:14px}.admin-order-create-modal .admin-cloth-list .admin-option-row strong{font-size:12px}.admin-order-create-modal .admin-attribute-panel .admin-option-list{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-auto-rows:auto;gap:10px;padding-top:10px}.admin-order-create-modal .admin-attribute-panel .admin-option-row{min-height:60px}.admin-order-create-modal .admin-attribute-panel .admin-option-row>button{min-height:60px;padding:8px 12px 8px 34px}.admin-order-create-modal .admin-attribute-panel .admin-option-row strong{font-size:14px}.admin-order-create-modal .admin-attribute-panel .admin-option-row em{padding-inline:6px;font-size:11px}.admin-order-create-modal .admin-selected-side{border-left:1px solid var(--border);padding:10px}.admin-order-create-modal .admin-selected-actions{flex-wrap:wrap}.admin-order-create-modal .admin-selected-actions button{flex:1 1 68px;min-height:36px}.admin-order-create-modal .admin-order-footer{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"package package" "total actions";align-items:center;gap:10px;padding:8px 10px}.admin-order-create-modal .admin-order-footer .admin-pos-total{grid-template-columns:auto auto auto auto auto auto auto auto auto auto auto auto;justify-content:start;gap:4px 8px}.admin-order-create-modal .admin-order-footer .admin-pos-total strong:first-of-type{font-size:20px}.admin-order-create-modal .admin-order-footer .admin-pos-total input{width:80px;min-height:30px}.admin-order-create-modal .admin-order-footer-actions{justify-content:flex-end;gap:8px}.admin-order-create-modal .admin-order-footer-actions button{min-height:44px;padding:0 10px;font-size:14px}.content{max-width:none;padding:18px}.topbar-stacked{padding:10px 18px}.topbar-main{grid-template-columns:minmax(140px,auto) minmax(0,1fr) max-content;gap:10px}.topbar{flex-direction:row}.top-nav button,.sub-nav button{min-height:40px;padding:0 10px;font-size:12px}.management-page-head{min-height:74px;padding:14px 18px}.query-bar,.list-filters{gap:10px;padding:14px 18px}.touch-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.touch-action{grid-template-columns:52px minmax(0,1fr);min-height:118px;padding:14px}.touch-icon{width:52px;height:52px}.touch-icon svg{width:30px;height:30px}.touch-action strong{font-size:20px}.touch-overview-grid,.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.touch-flow-bar{grid-template-columns:repeat(4,minmax(0,1fr));padding:12px 18px}.touch-flow-bar button{min-height:54px;padding:10px}.order-list-row{grid-template-columns:minmax(0,1fr) 108px 336px;gap:10px;padding:12px}.order-list-actions{gap:6px}.order-list-actions button{min-height:34px;padding-inline:8px;font-size:12px}.member-select-modal{width:min(820px,calc(100vw - 48px));height:min(560px,calc(100vh - 48px));max-height:calc(100vh - 48px)}.quick-operation-modal{width:min(760px,calc(100vw - 32px))}.photo-capture-modal{width:min(960px,calc(100vw - 48px));height:min(620px,calc(100vh - 48px));max-height:calc(100vh - 48px)}.photo-capture-body{grid-template-columns:minmax(0,1fr) 270px;gap:10px;padding:10px}.photo-capture-video-box,.photo-capture-video{min-height:0}.sop-timeline{overflow-x:auto}.sop-step{flex:0 0 104px}}@media(max-width:1180px){.admin-order-footer,.admin-order-create-modal .admin-order-footer{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"package package" "total actions"}.admin-order-coupon-tools{grid-template-columns:minmax(180px,240px);justify-self:end}.admin-order-coupon-tools>label{grid-column:auto;grid-row:auto}.admin-member-discount-note{display:none}}@media(max-width:980px){.admin-order-footer,.admin-order-create-modal .admin-order-footer{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"package package" "total actions"}.admin-order-footer .admin-pos-total,.admin-order-create-modal .admin-order-footer .admin-pos-total{justify-content:start;overflow-x:auto;padding-bottom:2px}.admin-order-coupon-tools{grid-template-columns:minmax(0,1fr)}.admin-member-discount-note,.admin-order-coupon-tools>label{grid-column:auto;grid-row:auto}.admin-package-entry-grid{grid-template-columns:minmax(220px,1fr) minmax(240px,1fr) 34px}.admin-package-scan-action{grid-column:auto;width:34px;padding:0}.admin-order-benefit-tools{flex-wrap:wrap}.admin-order-footer-actions,.admin-order-create-modal .admin-order-footer-actions{justify-content:flex-end}}@media(max-width:760px){.admin-order-footer,.admin-order-create-modal .admin-order-footer{grid-template-columns:minmax(0,1fr);grid-template-areas:"total" "package" "actions"}.member-select-modal{width:min(100vw - 24px,520px);height:min(640px,calc(100vh - 24px));max-height:calc(100vh - 24px)}.member-dialog-head{display:none}.member-dialog-row{grid-template-columns:38px minmax(0,1fr);grid-template-areas:"avatar main" "avatar level" "avatar balance";align-items:start}.member-dialog-level,.member-dialog-balance{justify-self:start;text-align:left}.member-dialog-meta{display:grid;gap:4px}.member-dialog-meta span{max-width:100%}.compact-receive-station .receive-rfid-status-row{grid-template-columns:1fr;align-items:stretch}.compact-receive-station .receive-bind-actions button{width:100%}.touch-hero{display:grid}.touch-clock{border-left:0;border-top:1px solid #e8eef7;padding-top:16px;padding-left:0;text-align:left}.touch-action-grid,.touch-overview-grid,.payment-form-grid,.payment-method-cards,.admin-photo-ai-result,.settlement-printer-grid{grid-template-columns:1fr}.settlement-print-head{display:grid}.settlement-print-head-actions,.settlement-print-actions{justify-content:stretch}.settlement-print-actions,.settlement-print-head-actions>button{width:100%}.settlement-print-actions button{flex:1 1 0}.query-bar label,.list-filters label,.query-bar button,.list-filters button{flex:1 1 100%;max-width:none;width:100%}.finance-metrics{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));margin:8px 12px 0}.member-detail-modal .order-detail-body{padding:10px}.member-record-panels{grid-template-columns:1fr}.member-record-panels section:first-child{grid-row:auto}.member-record-grid,.member-balance-grid,.member-wechat-panel .member-record-grid{grid-template-columns:1fr}.order-list,.order-status-tabs,.order-list-row{padding:12px}.order-list-title,.order-list-meta,.order-list-actions{align-items:flex-start}.order-list-actions button,.order-list-actions select,.order-list-actions .row-actions,.order-list-actions .row-actions button{width:100%}.order-list-actions{grid-template-columns:1fr;justify-content:stretch}}@media(min-width:1600px){.content{max-width:1800px}.topbar-stacked{padding:14px 34px}.top-nav button,.sub-nav button{min-height:52px;padding:0 20px}.management-page-head{padding:20px 26px}.management-page-title strong{font-size:19px}.query-bar,.list-filters{padding:18px 24px}.laundry-table th,.laundry-table td{padding:20px 26px}.order-detail-modal{width:min(1280px,96vw)}.member-detail-modal{width:min(980px,94vw)}.admin-pos-shell{grid-template-columns:350px minmax(0,1fr) 340px}}.mall-products-table-wrap{max-width:100%;overflow-x:hidden;position:relative}.mall-products-table{width:100%;min-width:0;table-layout:fixed}.mall-products-table.has-actions th:last-child,.mall-products-table td.laundry-actions{position:static;right:auto;z-index:4;background:#fff;box-shadow:none;width:164px;min-width:164px;max-width:164px}.mall-products-table.has-actions th:last-child{z-index:5;background:#f8fafc}@media(max-width:1180px){.mall-products-table{display:table;width:100%;min-width:0;table-layout:fixed}.mall-products-table thead{display:table-header-group}.mall-products-table tbody{display:table-row-group;width:auto;padding:0;background:transparent}.mall-products-table tr{display:table-row;width:auto;border:0;border-radius:0;padding:0;background:transparent}.mall-products-table th,.mall-products-table td{display:table-cell;width:auto;border-bottom:1px solid var(--border-soft);white-space:nowrap}.mall-products-table td:before{display:none}.mall-products-table.has-actions th:last-child,.mall-products-table td.laundry-actions{position:static;right:auto;min-width:164px;max-width:164px;white-space:nowrap}.mall-products-table td.laundry-actions{display:table-cell}}table.member-table{width:max-content;min-width:1480px}table.member-table .col-member_actions{position:static;right:auto;z-index:auto;width:320px;min-width:320px;max-width:320px;box-sizing:border-box;padding:8px 10px;vertical-align:middle;background:#fff;white-space:normal;box-shadow:none}body:has(.order-detail-page) .content{max-width:none;padding:16px 24px 32px}.order-detail-status-edit{display:inline-flex;align-items:center;gap:8px;min-width:0}.order-detail-status-edit select{min-height:32px;max-width:150px;border:1px solid #d6e0ee;border-radius:6px;padding:0 8px;color:#172033;background:#fff;font-size:13px;font-weight:800}.order-detail-page{display:grid;width:100%;min-width:0}.order-detail-page .order-detail-modal.order-detail-panel{width:100%;max-width:none;min-height:calc(100vh - 156px)}.order-detail-page .order-detail-body{min-height:0}table.member-table th.col-member_actions{z-index:auto;background:#f8fafc}table.member-table .member-row-actions{display:flex;flex-wrap:wrap;gap:6px;width:100%;min-width:0}table.member-table .member-row-actions button{flex:0 0 auto;min-width:58px;overflow:hidden;text-overflow:clip}table.member-table th:last-child,table.member-table td.col-member_actions{position:sticky;right:0;z-index:5;width:280px;min-width:280px;max-width:280px;background:#fff;box-shadow:-8px 0 14px #1426430a}table.member-table th.col-member_actions,table.member-table td.col-member_actions{position:sticky;right:0;z-index:5;width:280px;min-width:280px;max-width:280px;background:#fff;box-shadow:-8px 0 14px #1426430a}table.member-table th.col-member_actions{z-index:6;background:#f8fafc}.refund-method-options .payment-original{border-color:#dbe7ff;color:var(--accent);background:#eef4ff}.touch-keyboard-trigger{position:fixed;right:18px;bottom:18px;z-index:9999;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;border:1px solid #cbd7e6;border-radius:8px;padding:0 14px;color:#fff;background:#2563eb;box-shadow:0 14px 34px #2563eb47;font-size:14px;font-weight:900;touch-action:none;-webkit-user-select:none;user-select:none}.touch-keyboard-trigger.dragged{right:auto;bottom:auto}.touch-keyboard-trigger.docked{width:34px;min-width:34px;min-height:58px;overflow:hidden;gap:0;border-color:#93b5e8;padding:0;transition:width .16s ease,box-shadow .16s ease}.touch-keyboard-trigger.docked-left{border-left:0;border-radius:0 8px 8px 0}.touch-keyboard-trigger.docked-right{border-right:0;border-radius:8px 0 0 8px}.touch-keyboard-trigger.docked span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.touch-keyboard-trigger.docked:after{content:"";position:absolute;top:50%;width:4px;height:22px;border-radius:999px;background:#ffffffb8;transform:translateY(-50%)}.touch-keyboard-trigger.docked-left:after{left:4px}.touch-keyboard-trigger.docked-right:after{right:4px}.touch-keyboard-trigger.docked:hover,.touch-keyboard-trigger.docked:focus-visible{width:42px}.touch-keyboard-trigger.dragging{cursor:grabbing;opacity:.96;box-shadow:0 18px 42px #2563eb5c}.touch-keyboard-trigger.disabled{border-color:#94a3b8;color:#172033;background:#fff;box-shadow:0 12px 28px #0f172a24}.touch-keyboard{position:fixed;left:50%;bottom:12px;z-index:10000;width:min(780px,calc(100vw - 24px));padding:10px;border:1px solid #cfd9e8;border-radius:8px;background:#f8fafc;box-shadow:0 18px 48px #0f172a38;transform:translate(-50%)}.touch-keyboard.dragged{right:auto;bottom:auto;transform:none}.touch-keyboard.dragging{opacity:.96;box-shadow:0 24px 58px #0f172a4d;cursor:grabbing}.touch-keyboard-head,.touch-keyboard-actions{display:flex;align-items:center;gap:8px}.touch-keyboard-head{justify-content:space-between;margin-bottom:8px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.touch-keyboard-head-actions{display:inline-flex;align-items:center;gap:6px}.touch-keyboard-head span{display:inline-flex;align-items:center;gap:6px;color:#334155;font-size:13px;font-weight:700}.touch-keyboard-head span em{border:1px solid #bfdbfe;border-radius:999px;padding:2px 7px;color:#1d4ed8;background:#eff6ff;font-size:11px;font-style:normal;font-weight:900}.touch-keyboard button{min-height:42px;border:1px solid #d6e0ee;border-radius:6px;background:#fff;color:#0f172a;font-size:16px;font-weight:800;cursor:pointer}.touch-keyboard button:active{background:#eaf2ff;transform:translateY(1px)}.touch-keyboard-head button{display:inline-flex;min-width:42px;align-items:center;justify-content:center;gap:4px;padding:0 10px;font-size:13px}.touch-keyboard-head .touch-keyboard-drag-handle{min-width:78px;border-color:#93b5e8;color:#0f5cc8;background:#eaf3ff;cursor:grab;touch-action:none}.touch-keyboard.dragging .touch-keyboard-drag-handle{cursor:grabbing}.touch-keyboard-ime{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:8px;margin-bottom:8px}.touch-keyboard-composition{min-height:42px;overflow:hidden;border:1px solid #cbd7e6;border-radius:6px;padding:9px 12px;color:#1d4ed8;background:#eff6ff;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:900}.touch-keyboard-candidates{display:flex;align-items:center;gap:6px;min-width:0;min-height:42px;overflow-x:auto}.touch-keyboard-candidates span{color:#64748b;font-size:13px;font-weight:800}.touch-keyboard-candidates button{flex:0 0 auto;min-width:54px;padding:0 14px;color:#0f172a;background:#fff}.touch-keyboard-grid{display:grid;gap:6px;grid-template-columns:repeat(10,minmax(0,1fr))}.touch-keyboard-plugin{overflow:hidden;border-radius:8px}.touch-keyboard-plugin .hg-theme-default{background:transparent;padding:0}.touch-keyboard-plugin .hg-button{min-height:44px;border:1px solid #d6e0ee;border-radius:6px;background:#fff;color:#0f172a;box-shadow:none;font-size:16px;font-weight:800}.touch-keyboard-plugin .hg-button:active{background:#eaf2ff}.touch-keyboard-plugin .touch-keyboard-plugin-action{color:#1d4ed8;background:#eff6ff}.touch-keyboard-plugin .touch-keyboard-plugin-wide{flex-grow:4}.touch-keyboard-grid.symbols{grid-template-columns:repeat(10,minmax(0,1fr))}.touch-keyboard-grid.number{width:min(360px,100%);grid-template-columns:repeat(3,minmax(0,1fr))}.touch-keyboard-actions{margin-top:8px}.touch-keyboard-actions button{display:inline-flex;flex:1 1 0;align-items:center;justify-content:center;gap:6px;font-size:14px}.touch-keyboard-actions .primary{border-color:#2563eb;background:#2563eb;color:#fff}.touch-keyboard-actions button.active{border-color:#2563eb;color:#1d4ed8;background:#eff6ff}@media(max-width:760px){.touch-keyboard{bottom:6px;width:calc(100vw - 12px);padding:8px}.touch-keyboard-trigger{right:10px;bottom:10px}.touch-keyboard-trigger.dragged{right:auto;bottom:auto}.touch-keyboard-ime{grid-template-columns:1fr}.touch-keyboard-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.touch-keyboard button{min-height:40px}}.xyflow-canvas-page{display:flex;flex-direction:column;min-height:calc(100vh - 210px)}.ai-canvas-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding:8px 14px;border-bottom:1px solid var(--border);background:#fff}.ai-canvas-add-tools,.ai-canvas-toolbar-actions{display:flex;align-items:center;gap:8px}.ai-canvas-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 11px;border:1px solid var(--control-border);border-radius:6px;color:var(--control-text);background:#fff;font-size:13px}.ai-canvas-toolbar button:hover{border-color:var(--processing);color:var(--processing)}.ai-canvas-toolbar .primary{border-color:var(--processing);color:#fff;background:var(--processing)}.ai-canvas-toolbar .primary:hover{color:#fff;background:var(--accent-strong)}.ai-canvas-clear{color:var(--danger)!important;border-color:#fecaca!important}.ai-canvas-notice{position:absolute;z-index:5;top:76px;left:18px;padding:9px 12px;border:1px solid #bfdbfe;border-radius:6px;color:#1d4ed8;background:#eff6ff;font-size:13px;box-shadow:0 4px 14px #17203314}.ai-canvas-notice.error{border-color:#fecaca;color:var(--danger);background:var(--color-danger-50)}.ai-canvas-flow{position:relative;flex:1;min-height:620px}.ai-canvas-flow .react-flow{background:#f8fafc}.react-flow__controls{overflow:hidden;border:1px solid var(--border)!important;border-radius:6px!important;box-shadow:0 4px 14px #1720331f!important}.react-flow__controls-button{width:32px!important;height:32px!important;border-color:var(--border-soft)!important;color:var(--text)!important}.react-flow__minimap{border:1px solid var(--border);border-radius:6px;background:#fff!important}.flow-node{position:relative;width:276px;overflow:visible;border:1px solid #cbd5e1;border-radius:7px;color:var(--text);background:#fff;box-shadow:0 7px 18px #1720331a}.image-node{width:300px}.generate-node{width:560px}.react-flow__node.selected .flow-node{border-color:var(--processing);box-shadow:0 0 0 3px #2563eb26,0 8px 22px #1720331f}.react-flow__handle{width:11px!important;height:11px!important;border:2px solid #60a5fa!important;background:#fff!important}.react-flow__edge-path{stroke:#79a9e8;stroke-width:2}.flow-node-header{display:flex;align-items:center;gap:7px;min-height:42px;padding:0 10px 0 13px;border-bottom:1px solid var(--border-soft)}.flow-node-header>span{display:grid;place-items:center;width:24px;height:24px;border-radius:5px;color:#1d4ed8;background:#dbeafe}.prompt-node .flow-node-header>span{color:#9a5b08;background:#fef3c7}.generate-node .flow-node-header>span{color:#047857;background:#d1fae5}.flow-node-header strong{overflow:hidden;flex:1;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.flow-node-delete{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:4px;color:var(--muted);background:transparent}.flow-node-delete:hover{color:var(--danger);background:var(--color-danger-50)}.flow-image-content{position:relative;width:calc(100% - 24px);height:auto;min-height:148px;max-height:260px;margin:12px;overflow:hidden;border:1px solid var(--border-soft);border-radius:5px;background:#f8fafc;aspect-ratio:16 / 10}.flow-image-preview,.flow-generation-preview{display:block;width:100%;height:100%;padding:0;border:0;cursor:zoom-in;background:transparent}.flow-image-content img,.flow-generation-preview img{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}.flow-upload-empty{display:grid;place-items:center;width:100%;height:100%;gap:8px;border:0;color:var(--muted);background:transparent;font-size:13px}.flow-upload-empty:hover{color:var(--processing);background:#eff6ff}.flow-image-actions{position:absolute;right:6px;bottom:6px;display:flex;gap:5px}.flow-image-actions button,.flow-image-actions a{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:28px;padding:0 7px;border:0;border-radius:4px;color:#fff;background:#172033b8;font-size:12px}.flow-image-actions a{width:28px;padding:0}.flow-image-prompt{display:block;width:calc(100% - 24px);min-height:58px;margin:0 12px 12px;padding:8px;resize:vertical;border:1px solid var(--control-border);border-radius:5px;color:var(--text);background:#fff;font-size:12px;line-height:1.45;outline:0}.flow-image-prompt:focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.prompt-node textarea,.generate-node textarea{display:block;width:calc(100% - 24px);min-height:112px;margin:12px;padding:9px;resize:vertical;border:1px solid var(--control-border);border-radius:5px;color:var(--text);background:#fff;font-size:13px;line-height:1.55;outline:0}.prompt-node textarea:focus,.generate-node textarea:focus,.flow-model-select select:focus,.flow-config-grid select:focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.flow-generate-content{display:grid;grid-template-columns:minmax(0,1fr) 214px;grid-template-rows:auto auto 1fr;gap:8px 12px;padding:12px}.flow-generation-preview,.flow-generation-placeholder{grid-column:1;grid-row:1 / span 3;width:100%;height:auto;aspect-ratio:16 / 9;margin:0;overflow:hidden;border:1px solid var(--border-soft);border-radius:5px}.flow-generation-placeholder{display:grid;place-items:center;gap:7px;color:var(--muted);background:#f8fafc;font-size:12px}.flow-generate-content textarea{grid-column:2;width:100%;min-height:66px;margin:0}.flow-model-select{grid-column:2}.flow-model-select{position:relative;display:grid;gap:3px;color:var(--muted);font-size:11px}.flow-model-select select{width:100%;height:31px;padding:0 25px 0 8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text);background:#fff;font-size:12px;outline:0}.flow-model-select svg{position:absolute;right:8px;bottom:8px;pointer-events:none}.flow-image-settings{position:relative;grid-column:2}.flow-image-settings>button{display:inline-flex;align-items:center;justify-content:center;width:100%;height:34px;gap:6px;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text);background:#fff;font-size:12px}.flow-image-settings-popover{position:absolute;z-index:10;right:0;bottom:calc(100% + 8px);width:300px;padding:10px;border:1px solid var(--border);border-radius:6px;background:#fff;box-shadow:0 9px 24px #17203329}.flow-ratio-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.flow-ratio-grid button{display:grid;place-items:center;gap:4px;height:55px;padding:4px;border:1px solid var(--control-border);border-radius:5px;color:var(--muted);background:#fff;font-size:11px}.flow-ratio-grid button.selected{border-color:var(--text);color:var(--text);background:var(--color-neutral-50)}.flow-ratio-grid i{display:block;width:15px;height:15px;border:1px solid currentColor;border-radius:2px}.flow-ratio-grid button.landscape i{width:18px;height:12px}.flow-ratio-grid button.portrait i{width:12px;height:18px}.flow-ratio-grid button.portrait-wide i{width:13px;height:17px}.flow-ratio-grid button.landscape-wide i{width:17px;height:13px}.flow-ratio-grid button.portrait-tall i{width:10px;height:19px}.flow-ratio-grid button.landscape-tall i{width:19px;height:11px}.flow-ratio-grid button.ultrawide i{width:20px;height:9px}.flow-custom-size{display:inline-flex;align-items:center;justify-content:center;width:100%;height:35px;gap:6px;margin-top:9px;border:1px solid var(--control-border);border-radius:4px;color:var(--muted);background:#fff;font-size:12px}.flow-custom-size.selected{border-color:var(--processing);color:var(--processing)}.flow-custom-size-inputs{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;margin-top:8px;color:var(--muted)}.flow-custom-size-inputs input{min-width:0;height:31px;padding:0 7px;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text)}.flow-quality-options{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:9px}.flow-quality-options button{height:31px;border:1px solid var(--control-border);border-radius:5px;color:var(--muted);background:#fff;font-size:12px}.flow-quality-options button.selected{border-color:var(--text);color:var(--text);background:var(--color-neutral-50)}.flow-generate-actions{grid-column:2;display:flex;align-items:center;gap:8px;margin-top:0}.flow-generate-actions>button{display:inline-flex;align-items:center;justify-content:center;flex:1;gap:7px;height:34px;border:0;border-radius:4px;color:#fff;background:var(--processing);font-size:13px}.flow-generate-actions>button:disabled{cursor:wait;opacity:.65}.flow-generate-actions a{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text);background:#fff}.flow-node-status,.flow-node-error{display:flex;align-items:center;gap:6px;padding:0 12px 10px;color:var(--muted);font-size:12px}.flow-node-error{color:var(--danger)}.spin{animation:ai-canvas-spin .85s linear infinite}@keyframes ai-canvas-spin{to{transform:rotate(360deg)}}.ai-canvas-context-menu{position:fixed;z-index:20;min-width:148px;padding:5px;border:1px solid var(--border);border-radius:6px;background:#fff;box-shadow:0 9px 24px #17203329}.ai-canvas-context-menu button{display:flex;align-items:center;width:100%;height:34px;gap:8px;padding:0 8px;border:0;border-radius:4px;color:var(--text);background:transparent;text-align:left;font-size:13px}.ai-canvas-context-menu button:hover{color:var(--processing);background:var(--color-primary-50)}.ai-canvas-page:fullscreen{width:100vw;height:100vh;border:0;border-radius:0}.ai-canvas-page:fullscreen .ai-canvas-flow{min-height:0}.generate-node{width:520px}.flow-generate-content{display:block;padding:12px}.flow-generation-preview,.flow-generation-placeholder{display:block;width:min(100%,380px);height:auto;aspect-ratio:16 / 9;margin:0 auto 10px}.flow-generate-content textarea{display:block;width:100%;min-height:76px;margin:0 0 9px}.flow-model-select,.flow-image-settings,.flow-generate-actions{width:100%;margin-top:8px}.flow-model-select,.flow-image-settings,.flow-generate-actions{grid-column:auto}.flow-image-settings-popover{bottom:calc(100% + 8px)}.flow-generate-actions>button{height:38px}.flow-generation-controls{display:grid;grid-template-columns:minmax(0,210px) 116px 154px;align-items:end;gap:8px}.flow-generation-controls .flow-model-select,.flow-generation-controls .flow-image-settings,.flow-generation-controls .flow-generate-actions{width:auto;margin-top:0}.flow-generation-controls .flow-generate-actions>button{height:34px}.generate-node{width:520px;height:480px}.generate-node .flow-generate-content{display:grid;height:calc(100% - 42px);grid-template-columns:minmax(0,1fr);grid-template-areas:"preview" "prompt" "controls";grid-template-rows:minmax(0,1fr) 70px 48px;gap:8px;padding:12px}.generate-node .flow-generation-preview,.generate-node .flow-generation-placeholder{grid-area:preview;grid-column:auto;grid-row:auto;width:100%!important;max-width:none!important;height:100%;aspect-ratio:16 / 9;margin:0;border-radius:0}.generate-node .flow-generation-preview img{object-fit:cover}.generate-node .flow-generate-content textarea{grid-area:prompt;grid-column:auto;width:100%;min-height:70px;height:70px;margin:0;resize:none}.generate-node .flow-generation-controls{grid-area:controls;height:48px}.generate-node .flow-generation-controls .flow-model-select{min-width:0}.generate-node .flow-generation-controls .flow-model-select span{line-height:11px}.flow-generate-actions .flow-download-button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text);background:#fff}.flow-generate-actions>.flow-cancel-button{flex:0 0 auto;width:68px;border:1px solid #fecaca;color:var(--danger);background:#fff}.flow-mask-select{display:grid;gap:4px;margin-bottom:9px;color:var(--muted);font-size:12px}.flow-mask-select select{width:100%;height:32px;padding:0 8px;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text);background:#fff;outline:0}.flow-mask-select select:focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.flow-generate-actions>button{white-space:nowrap}.flow-node-repaint{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;height:24px;gap:3px;padding:0 5px;border:0;border-radius:4px;color:var(--processing);background:transparent;font-size:12px;white-space:nowrap}.flow-node-repaint:hover{background:var(--color-primary-50)}.inpaint-dialog-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#0f172aa3}.inpaint-dialog{width:min(1040px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 20px 50px #0f172a47}.inpaint-dialog>header{display:flex;align-items:center;justify-content:space-between;height:50px;padding:0 14px;border-bottom:1px solid var(--border-soft)}.inpaint-dialog>header button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:4px;color:var(--muted);background:transparent}.inpaint-dialog>header button:hover{color:var(--danger);background:var(--color-danger-50)}.inpaint-editor{display:grid;grid-template-columns:minmax(0,1fr) 244px;gap:16px;padding:16px}.inpaint-image-stage{position:relative;width:fit-content;max-width:100%;margin:auto;overflow:hidden;background:#f1f5f9;line-height:0}.inpaint-image-stage img{display:block;max-width:min(720px,100%);max-height:min(68vh,640px);object-fit:contain}.inpaint-image-stage svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:crosshair;touch-action:none}.inpaint-editor aside{display:grid;align-content:start;gap:12px}.inpaint-editor label{display:grid;gap:6px;color:var(--muted);font-size:12px}.inpaint-editor textarea{min-height:116px;padding:8px;resize:vertical;border:1px solid var(--control-border);border-radius:4px;color:var(--text);font:inherit;outline:0}.inpaint-editor textarea:focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.inpaint-editor input[type=range]{width:100%;accent-color:var(--processing)}.inpaint-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.inpaint-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:34px;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text);background:#fff;font-size:12px;white-space:nowrap}.inpaint-actions button:disabled{opacity:.5}.inpaint-error{margin:0;color:var(--danger);font-size:12px;line-height:1.4}.inpaint-submit{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;height:40px;border:0;border-radius:4px;color:#fff;background:var(--processing);font-size:13px}.inpaint-submit:disabled{opacity:.65}.inpaint-image-viewport{max-width:100%;max-height:min(78vh,820px);overflow:auto;background:#f1f5f9}.inpaint-image-viewport .inpaint-image-stage{max-width:none;margin:0}.inpaint-image-viewport .inpaint-image-stage img{width:100%;max-width:none;max-height:none;height:auto}.inpaint-zoom-controls{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:6px}.inpaint-zoom-controls button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--control-border);border-radius:4px;color:var(--control-text);background:#fff}.inpaint-zoom-controls button:disabled{opacity:.5}.inpaint-zoom-controls span{color:var(--muted);font-size:12px;text-align:center}@media(min-width:721px){.inpaint-dialog{width:min(1600px,calc(100vw - 32px))}.inpaint-editor{grid-template-columns:minmax(0,1fr) 300px;gap:24px}.inpaint-image-viewport{max-height:min(84vh,940px)}}@media(max-width:900px){.ai-canvas-toolbar{align-items:flex-start;flex-direction:column}.ai-canvas-add-tools{flex-wrap:wrap}.ai-canvas-flow{min-height:560px}.react-flow__minimap{display:none}}@media(max-width:720px){.inpaint-dialog-backdrop{padding:10px}.inpaint-dialog{max-height:calc(100vh - 20px)}.inpaint-editor{grid-template-columns:minmax(0,1fr);padding:12px}.inpaint-image-viewport{max-height:48vh}.inpaint-editor aside{grid-template-columns:1fr 1fr}.inpaint-editor aside>label:first-child,.inpaint-error,.inpaint-submit{grid-column:1 / -1}}.shell .management-page :is(input:not([type]),input[type=text],input[type=password],input[type=email],input[type=number],input[type=tel],input[type=url],input[type=search],input[type=date],input[type=datetime-local],select,textarea),.modal-backdrop .crud-modal :is(input:not([type]),input[type=text],input[type=password],input[type=email],input[type=number],input[type=tel],input[type=url],input[type=search],input[type=date],input[type=datetime-local],select,textarea),.login-page :is(input:not([type]),input[type=text],input[type=password],input[type=email],input[type=number],input[type=tel],input[type=url],input[type=search],textarea){min-width:0;height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 13px;color:var(--control-text);background:var(--control-bg);outline:none;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.shell .management-page textarea,.modal-backdrop .crud-modal textarea,.login-page textarea{height:auto;min-height:var(--control-height-large);padding:10px 13px;line-height:1.5;resize:vertical}.modal-backdrop .crud-modal :is(input:not([type]),input[type=text],input[type=password],input[type=email],input[type=number],input[type=tel],input[type=url],input[type=search],input[type=date],input[type=datetime-local],select){height:var(--control-height-large)}.shell .management-page :is(input,select,textarea):focus,.modal-backdrop .crud-modal :is(input,select,textarea):focus,.login-page :is(input,textarea):focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.shell .management-page :is(input,textarea)::placeholder,.modal-backdrop .crud-modal :is(input,textarea)::placeholder,.login-page :is(input,textarea)::placeholder{color:var(--control-placeholder)}.shell .management-page :is(input,select,textarea):disabled,.modal-backdrop .crud-modal :is(input,select,textarea):disabled,.login-page :is(input,textarea):disabled{color:var(--control-disabled-text);background:var(--control-disabled-bg);cursor:not-allowed}:is(.workstation-page,.tablet-page) :is(input:not([type]),input[type=text],input[type=password],input[type=email],input[type=number],input[type=tel],input[type=url],input[type=search],input[type=date],input[type=datetime-local],select,textarea){min-width:0;min-height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 13px;color:var(--control-text);background:var(--control-bg);outline:none;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}:is(.workstation-page,.tablet-page) textarea{min-height:72px;padding:10px 13px;line-height:1.5;resize:vertical}:is(.workstation-page,.tablet-page) :is(input,select,textarea):focus{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}:is(.workstation-page,.tablet-page) :is(input,textarea)::placeholder{color:var(--control-placeholder)}:is(.workstation-page,.tablet-page) :is(input,select,textarea):disabled{color:var(--control-disabled-text);background:var(--control-disabled-bg);cursor:not-allowed}:is(.workstation-page,.tablet-page) .date-field.ant-picker{width:100%;min-height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 12px;background:var(--control-bg)}:is(.workstation-page,.tablet-page) .date-field .ant-picker-input>input{min-height:0;height:auto;border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}:is(.workstation-page,.tablet-page) .date-field.ant-picker:hover,:is(.workstation-page,.tablet-page) .date-field.ant-picker-focused{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}:is(.workstation-page,.tablet-page) .searchable-select{width:100%}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select{position:relative;display:grid;min-width:0}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-input{width:100%;height:var(--control-height);min-height:var(--control-height);padding:0 36px 0 13px;font-size:13px;font-weight:500}.modal-backdrop .crud-modal .searchable-select-input{height:var(--control-height-large);min-height:var(--control-height-large)}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-arrow{position:absolute;top:50%;right:12px;width:16px;height:16px;color:var(--muted);pointer-events:none;transform:translateY(-50%);transition:transform .15s ease,color .15s ease}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select.is-open .searchable-select-arrow{color:var(--accent);transform:translateY(-50%) rotate(180deg)}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-results{top:calc(100% + 4px);z-index:60;max-height:180px;border:1px solid var(--control-border);border-radius:var(--control-radius-compact);padding:4px;background:var(--surface);box-shadow:0 10px 22px #17203324}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-results :is(button,p){display:flex;align-items:center;justify-content:flex-start;min-height:34px;margin:0;border:0;border-radius:4px;padding:0 10px;color:var(--control-text);background:transparent;box-shadow:none;font:inherit;font-size:13px;font-weight:500;line-height:1.35;text-align:left}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-results button:hover:not(:disabled),:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-results button.active{color:var(--accent-strong);background:var(--color-primary-50)}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-results button:disabled{color:var(--control-disabled-text);cursor:not-allowed;opacity:1}:is(.shell .management-page,.modal-backdrop .crud-modal,.workstation-page,.tablet-page) .searchable-select-results p{color:var(--muted)}:is(.workstation-page,.tablet-page) :is(.single-confirm-field,.workstation-exception-field,.appointment-accept-fields,.delivery-note,.delivery-signoff-note) textarea{border-color:var(--control-border);border-radius:var(--control-radius);padding:10px 13px;color:var(--control-text);background:var(--control-bg);line-height:1.5}:is(.workstation-page,.tablet-page) .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:var(--button-height);border:1px solid var(--control-border);border-radius:var(--button-radius);padding:0 14px;color:var(--control-text);background:var(--surface);box-shadow:none;font-size:14px;font-weight:600;line-height:1;white-space:nowrap}:is(.workstation-page,.tablet-page) .btn-primary{color:#fff;border-color:var(--accent);background:var(--accent)}:is(.workstation-page,.tablet-page) .btn-primary:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong)}:is(.workstation-page,.tablet-page) .btn-ghost{color:var(--accent);border-color:var(--color-primary-100);background:var(--color-primary-50)}:is(.workstation-page,.tablet-page) .btn-danger{color:var(--danger);border-color:var(--color-danger-100);background:var(--color-danger-50)}:is(.workstation-page,.tablet-page) .btn:focus-visible{outline:none;border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}:is(.workstation-page,.tablet-page) .btn:disabled{color:var(--control-disabled-text);border-color:var(--control-border);background:var(--control-disabled-bg);cursor:not-allowed}.login-field input,.slider-captcha .captcha-input{width:100%}.shell .management-page input[type=file],.modal-backdrop .crud-modal input[type=file]{width:100%;min-width:0;min-height:var(--control-height);border:1px dashed var(--control-border);border-radius:var(--control-radius);padding:4px;color:var(--muted);background:var(--surface-muted)}.modal-backdrop .crud-modal input[type=file]{min-height:var(--control-height-large)}.shell .management-page .date-field .ant-picker-input>input,.modal-backdrop .crud-modal .date-field .ant-picker-input>input{height:auto;border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.shell .management-page .date-field.ant-picker,.modal-backdrop .crud-modal .date-field.ant-picker{height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:0 12px;background:var(--control-bg)}.modal-backdrop .crud-modal .date-field.ant-picker{height:var(--control-height-large)}.shell .management-page .date-field.ant-picker:hover,.shell .management-page .date-field.ant-picker-focused,.modal-backdrop .crud-modal .date-field.ant-picker:hover,.modal-backdrop .crud-modal .date-field.ant-picker-focused{border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.shell .xyflow-canvas-page .flow-model-select select,.shell .xyflow-canvas-page .flow-custom-size-inputs input{height:31px;border-radius:4px;padding:0 8px;font-size:12px}.shell .xyflow-canvas-page .flow-mask-select select{height:32px;border-radius:4px;padding:0 8px;font-size:12px}.shell .xyflow-canvas-page :is(.prompt-node,.generate-node) textarea,.shell .xyflow-canvas-page .flow-image-prompt,.shell .xyflow-canvas-page .inpaint-editor textarea{height:auto;border-radius:5px;padding:8px 9px}.btn,.shell .management-page :is(.order-list-actions>button,.row-actions>button,.laundry-actions>button,.list-filters>button,.query-bar>button),.modal-backdrop .crud-modal .crud-modal-actions>button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--control-border);border-radius:var(--control-radius-compact);padding:0 12px;color:var(--control-text);background:var(--control-bg);font:inherit;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.btn:hover:not(:disabled),.shell .management-page :is(.order-list-actions>button,.row-actions>button,.laundry-actions>button,.list-filters>button,.query-bar>button):hover:not(:disabled),.modal-backdrop .crud-modal .crud-modal-actions>button:hover:not(:disabled){border-color:var(--control-focus-border);background:var(--color-primary-50)}.btn:focus-visible,.shell .management-page :is(.order-list-actions>button,.row-actions>button,.laundry-actions>button,.list-filters>button,.query-bar>button):focus-visible,.modal-backdrop .crud-modal .crud-modal-actions>button:focus-visible{outline:none;border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}.btn-primary,.shell .management-page :is(.primary-action,.list-filter-search,.query-bar .list-filter-search,.order-list-actions .primary,.row-actions .primary,.laundry-actions .primary),.modal-backdrop .crud-modal .crud-modal-actions>button:last-child{color:#fff;border-color:var(--accent);background:var(--accent)}.btn-primary:hover:not(:disabled),.shell .management-page :is(.primary-action,.list-filter-search,.query-bar .list-filter-search,.order-list-actions .primary,.row-actions .primary,.laundry-actions .primary):hover:not(:disabled),.modal-backdrop .crud-modal .crud-modal-actions>button:last-child:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong)}.btn-info,.shell .management-page :is(.order-list-actions .info,.row-actions .info,.laundry-actions .info){color:var(--accent);border-color:var(--color-primary-100);background:var(--color-primary-50)}.btn-info:hover:not(:disabled),.shell .management-page :is(.order-list-actions .info,.row-actions .info,.laundry-actions .info):hover:not(:disabled){border-color:var(--control-focus-border);background:var(--color-primary-100)}.btn-secondary,.shell .management-page :is(.order-list-actions .secondary,.row-actions .secondary,.laundry-actions .secondary){color:var(--control-text);border-color:var(--control-border);background:var(--surface-muted)}.shell .management-page .api-key-preview-button{display:inline-flex;align-items:center;gap:5px;max-width:100%;overflow:hidden;border:0;padding:0;color:var(--accent);background:transparent;font:inherit;white-space:nowrap}.shell .management-page .api-key-preview-button span{overflow:hidden;text-overflow:ellipsis}.shell .management-page .api-key-preview-button:hover:not(:disabled){color:var(--accent-strong);text-decoration:underline}.btn-ghost{color:var(--control-text);border-color:transparent;background:transparent}.btn-ghost:hover:not(:disabled){border-color:var(--control-border);background:var(--surface-muted)}.btn-success,.shell .management-page :is(.order-list-actions .success,.row-actions .success,.laundry-actions .success){color:#fff;border-color:var(--success);background:var(--success)}.shell .management-page .order-list-actions :is(.action-view,.action-edit){color:var(--accent);border-color:var(--color-primary-100);background:var(--color-primary-50)}.shell .management-page .order-list-actions :is(.action-view,.action-edit):hover:not(:disabled){border-color:var(--control-focus-border);background:var(--color-primary-100)}.shell .management-page .order-list-actions .action-partial-refund{color:var(--color-recommend-700);border-color:var(--color-recommend-100);background:var(--color-recommend-50)}.shell .management-page .order-list-actions .action-partial-refund:hover:not(:disabled){border-color:#fdba74;background:var(--color-recommend-100)}.btn-danger,.shell .management-page :is(.order-list-actions .danger,.row-actions .danger,.laundry-actions .danger){color:var(--danger);border-color:var(--color-danger-100);background:var(--color-danger-50)}.btn-danger:hover:not(:disabled),.shell .management-page :is(.order-list-actions .danger,.row-actions .danger,.laundry-actions .danger):hover:not(:disabled){border-color:#fca5a5;background:#fee2e2}.modal-backdrop .confirm-dialog .confirm-dialog-submit-danger{color:#fff;border-color:var(--danger);background:var(--danger)}.modal-backdrop .confirm-dialog .confirm-dialog-submit-success{color:#fff;border-color:var(--success);background:var(--success)}.btn:disabled,.shell .management-page :is(.order-list-actions>button,.row-actions>button,.laundry-actions>button,.list-filters>button,.query-bar>button):disabled,.modal-backdrop .crud-modal .crud-modal-actions>button:disabled{color:var(--control-disabled-text);border-color:var(--control-border);background:var(--control-disabled-bg);box-shadow:none;cursor:not-allowed}.shell .management-page .primary-action{min-height:var(--button-height);border-radius:var(--button-radius);padding:0 16px}.shell .management-page .order-list-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.shell .management-page .order-list-actions>button{box-sizing:border-box;flex:0 0 80px;width:80px;min-width:80px;padding:0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.shell .management-page,.workstation-page,.tablet-page) :is(button.photo-evidence-action,button.station-photo-action){display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);border:1px solid var(--color-primary-100);border-radius:var(--control-radius-compact);padding:0 12px;color:var(--accent);background:var(--color-primary-50);font:inherit;font-size:13px;font-weight:700;line-height:1;white-space:nowrap}:is(.shell .management-page,.workstation-page,.tablet-page) :is(button.photo-evidence-action,button.station-photo-action):hover:not(:disabled){border-color:var(--control-focus-border);background:var(--color-primary-100)}:is(.shell .management-page,.workstation-page,.tablet-page) :is(button.photo-evidence-action,button.station-photo-action):focus-visible{outline:none;border-color:var(--control-focus-border);box-shadow:var(--control-focus-shadow)}:is(.shell .management-page,.workstation-page,.tablet-page) :is(button.photo-evidence-action,button.station-photo-action):disabled{color:var(--control-disabled-text);border-color:var(--control-border);background:var(--control-disabled-bg);box-shadow:none;cursor:not-allowed}:is(.workstation-page,.tablet-page) .rfid-read-panel{gap:10px;padding:14px 16px}:is(.workstation-page,.tablet-page) .rfid-read-panel .tablet-card-title{min-height:30px;padding-bottom:8px}:is(.workstation-page,.tablet-page) .rfid-read-panel .workstation-read-row{display:grid;grid-template-columns:minmax(0,1fr) 132px 48px;gap:8px;align-items:stretch}:is(.workstation-page,.tablet-page) .rfid-read-panel .workstation-read-row input,:is(.workstation-page,.tablet-page) .rfid-read-panel .workstation-read-row .rfid-primary-action,:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-auto-toggle{min-width:0;min-height:48px;height:48px;border-radius:var(--control-radius-compact)}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-primary-action,:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-auto-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--color-primary-100);color:var(--accent);background:var(--color-primary-50);font:inherit;font-size:15px;font-weight:800;line-height:1;white-space:nowrap}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-primary-action{border-color:var(--accent);color:#fff;background:var(--accent)}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-auto-toggle{width:48px;padding:0}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-auto-toggle.is-active{color:var(--danger);border-color:var(--color-danger-100);background:var(--color-danger-50)}:is(.workstation-page,.tablet-page) .rfid-read-panel :is(.rfid-primary-action,.rfid-auto-toggle):disabled{color:var(--control-disabled-text);border-color:var(--control-border);background:var(--control-disabled-bg);cursor:not-allowed}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-tag-list-clear{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-left:auto;border:1px solid var(--color-primary-100);border-radius:var(--control-radius-compact);padding:0;color:var(--accent);background:var(--color-primary-50)}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-tag-list-clear:disabled{color:var(--control-disabled-text);border-color:var(--control-border);background:var(--control-disabled-bg);cursor:not-allowed}@media(max-width:900px),(hover:none)and (pointer:coarse){:is(.workstation-page,.tablet-page) .rfid-read-panel .workstation-read-row{grid-template-columns:minmax(0,1fr) 104px 44px}:is(.workstation-page,.tablet-page) .rfid-read-panel .workstation-read-row :is(input,.rfid-primary-action),:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-auto-toggle{min-height:44px;height:44px}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-primary-action{gap:4px;padding:0 8px;font-size:14px}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-primary-action svg{width:18px;height:18px}:is(.workstation-page,.tablet-page) .rfid-read-panel .rfid-auto-toggle{width:44px}}
