/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.flex{display:flex}.hidden{display:none}.table-row{display:table-row}.resize{resize:both}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f6f7f9;--foreground:#172033;--card:#fff;--card-foreground:#172033;--primary:#165d4f;--primary-foreground:#fff;--secondary:#eef2f8;--secondary-foreground:#25324a;--muted:#eef1f5;--muted-foreground:#667085;--border:#dfe3ea;--danger:#c9362b;--danger-foreground:#fff;--ring:#42a58f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:var(--background);min-width:320px;color:var(--foreground);margin:0}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.48}input,select,textarea{color:var(--foreground)}.app-shell{background:#f4f5f2;min-height:100vh;display:flex}.sidebar{z-index:20;color:#e8f2ee;background:#122b27;flex-direction:column;width:228px;padding:22px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.02em;align-items:center;gap:11px;padding:0 8px 24px;font-size:18px;font-weight:760;display:flex}.brand-mark{color:#122b27;background:#d7f45b;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.sidebar nav{gap:5px;display:grid}.nav-item{color:#afc2bc;text-align:left;background:0 0;border-radius:10px;align-items:center;gap:12px;width:100%;padding:11px 12px;transition:all .15s;display:flex}.nav-item:hover,.nav-item.active{color:#fff;background:#24443d}.nav-item.active{box-shadow:inset 3px 0 #d7f45b}.sidebar-bottom{gap:14px;margin-top:auto;display:grid}.network{color:#afc2bc;border:1px solid #31534a;border-radius:10px;align-items:center;gap:8px;padding:9px 11px;font-size:13px;display:flex}.network.online svg{color:#90d7a5}.network.offline svg{color:#ffb56b}.network strong{color:#122b27;background:#ffbf69;border-radius:999px;margin-left:auto;padding:1px 7px}.main-panel{width:calc(100% - 228px);min-height:100vh;margin-left:228px}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;border-bottom:1px solid #dde1db;justify-content:space-between;align-items:center;min-height:94px;padding:18px 34px;display:flex}.topbar h1{letter-spacing:-.04em;margin:2px 0 0;font-size:25px}.eyebrow{color:#698078;letter-spacing:.18em;margin:0;font-size:10px;font-weight:800}.eyebrow-line{align-items:center;gap:9px;display:flex}.preview-badge{color:#7a4b00;letter-spacing:.04em;background:#fff0cf;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800}.top-actions{align-items:flex-end;gap:10px;display:flex}.store-select{color:#66746f;gap:4px;font-size:11px;font-weight:700;display:grid}.store-select select,.language-toggle{background:#fff;border:1px solid #d7ddd7;border-radius:10px;height:40px}.store-select select{min-width:210px;padding:0 34px 0 12px}.language-toggle{color:#315249;padding:0 13px;font-weight:700}.page-content{padding:30px 34px 70px}.notice{border-radius:10px;align-items:center;gap:9px;margin:18px 34px 0;padding:11px 14px;font-size:14px;display:flex}.notice.success{color:#184c3c;background:#dff3e9}.notice.error{color:#7f3028;background:#fde5e0}.notice button{color:inherit;background:0 0;margin-left:auto;font-size:20px}.sync-banner{color:#704a16;background:#fff4df;border:1px solid #f0c78a;border-radius:12px;justify-content:space-between;align-items:center;margin:18px 34px 0;padding:12px 15px;display:flex}.sync-banner div,.sync-banner button{align-items:center;gap:8px;display:flex}.sync-banner button{color:#fff;background:#855a20;border-radius:8px;padding:7px 11px}.hero-card{color:#fff;background:linear-gradient(135deg,#173f36,#285d50);border-radius:24px;grid-template-columns:1.4fr .6fr;min-height:280px;padding:40px;display:grid;overflow:hidden;box-shadow:0 18px 48px #18372f2b}.hero-card h2{letter-spacing:-.055em;max-width:630px;margin:22px 0 12px;font-size:clamp(32px,4.3vw,58px);line-height:1.02}.hero-card p{color:#c8ddd6;max-width:560px;line-height:1.8}.status-pill{color:#d7f45b;border:1px solid #54796e;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:25px;display:flex}.hero-visual{color:#d7f45b;background:#ffffff0f;border:1px solid #ffffff21;border-radius:42px;place-self:end;place-items:center;width:170px;height:170px;display:grid;transform:rotate(4deg)}.primary,.secondary,.ghost,.wide-link,.current-context button{border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-weight:750;display:inline-flex}.primary{color:#15352e;background:#d7f45b}.secondary{color:#264e44;background:#e2ece7}.ghost{color:#6e7a76;background:0 0}.hero-card .secondary{color:#fff;background:#3b6b60}.full{width:100%;margin-top:18px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px;display:grid}.metric-grid article{background:#fff;border:1px solid #e1e4df;border-radius:16px;min-height:128px;padding:18px;display:grid}.metric-grid span{color:#5e6a66;font-size:13px}.metric-grid strong{letter-spacing:-.05em;margin-top:6px;font-size:34px}.metric-grid small{color:#98a19e;align-self:end}.wide-link{color:#24463e;background:#fff;justify-content:flex-start;width:100%;margin-top:14px;padding:16px 18px;box-shadow:0 1px #dfe3de}.wide-link svg:last-child{margin-left:auto}.two-column{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;display:grid}.work-card{background:#fff;border:1px solid #dde2dc;border-radius:18px;min-width:0;padding:24px;box-shadow:0 8px 28px #253b350d}.list-card{flex-direction:column;min-height:500px;display:flex}.section-heading,.section-title{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading h2,.section-title h2{letter-spacing:-.035em;margin:0;font-size:21px}.section-title p{color:#7b8883;margin:4px 0 0}.step{color:#7a938b;letter-spacing:.18em;margin:0 0 5px;font-size:10px;font-weight:850}.rack-badge,.count-badge{color:#1d5b49;background:#e2f1eb;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.scanner-shell{color:#1d5948;background:#fbfefc;border:2px solid #7aa797;border-radius:14px;align-items:center;gap:11px;margin-top:24px;padding:10px 10px 10px 15px;display:flex;box-shadow:0 0 0 4px #edf5f1}.scanner-shell input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:17px;font-weight:650}.scan-enter{color:#fff;background:#1b5b4a;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.current-context{background:#eff5f1;border-radius:13px;justify-content:space-between;align-items:center;margin-top:18px;padding:16px;display:flex}.current-context div{display:grid}.current-context span,.current-context small{color:#75847f;font-size:12px}.current-context strong{font-size:27px}.current-context button{color:#355b50;background:#dce9e3}.empty-hint{color:#89948f;background:#fafbf9;border:1px dashed #ccd5cf;border-radius:13px;justify-content:center;align-items:center;gap:10px;min-height:100px;margin-top:18px;display:flex}.empty-hint.tall{flex-direction:column;min-height:250px}.scan-list,.shortage-list{gap:8px;max-height:410px;margin-top:18px;display:grid;overflow:auto}.scan-list article,.shortage-list article{border:1px solid #e2e6e1;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.scan-list article>div:first-child,.shortage-list article div{min-width:0;display:grid}.scan-list strong,.shortage-list strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scan-list small,.shortage-list small{color:#8b9691}.mini-rack{color:#346657;background:#e7f0ec;border-radius:5px;width:fit-content;margin-bottom:4px;padding:2px 7px;font-size:11px;font-weight:800}.quantity-control{flex:none;grid-auto-flow:column;align-items:center;gap:4px;display:flex!important}.quantity-control button{color:#3f6359;background:#e8efec;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.quantity-control input{text-align:center;border:1px solid #d6dcd8;border-radius:7px;width:48px;height:34px}.quantity-control span{color:#78857f;font-size:12px}.shortage-list button{color:#a04b43;background:0 0;font-size:20px}.muted-copy{color:#73817c;line-height:1.7}.section-title{margin-bottom:18px}.task-layout{grid-template-columns:minmax(300px,.8fr) minmax(380px,1.2fr);gap:18px;display:grid}.task-list,.route-panel{background:#fff;border:1px solid #dde2dc;border-radius:18px;min-width:0;padding:17px}.task-row{cursor:pointer;border:1px solid #e3e7e2;border-radius:12px;align-items:center;gap:11px;margin-bottom:8px;padding:13px;display:flex}.task-row.selected{background:#eff7f3;border-color:#72a592}.task-row input{accent-color:#1b5b4a;width:17px;height:17px}.task-main{flex:1;min-width:0;display:grid}.task-main small{color:#84908b}.task-status{color:#6c5a24;background:#fbefc9;border-radius:6px;padding:4px 7px;font-size:11px;font-weight:750}.status-无库存{color:#893e37;background:#fae4e0}.route-head{border-bottom:1px solid #e2e6e1;justify-content:space-between;align-items:center;padding:4px 3px 15px;display:flex}.route-head p{color:#78857f;margin:0;font-size:12px}.route-head h3{color:#173e35;margin:4px 0 0;font-size:19px}.route-head>span{color:#486c61;font-size:12px}.route-placeholder,.pick-card{border:1px solid #e1e6e0;border-radius:13px;margin-top:12px;padding:14px}.route-placeholder{color:#78837f;justify-content:space-between;display:flex}.route-placeholder.warning{color:#873f38;background:#fff6f3}.pick-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.pick-title div{display:grid}.pick-title small{color:#89948f}.pick-title>span{color:#1e5c4a;background:#e3f0eb;border-radius:7px;padding:5px 8px;font-weight:800}.location-row{background:#f6f8f5;border-radius:10px;grid-template-columns:28px 1fr 64px;align-items:center;gap:10px;margin-top:9px;padding:10px;display:grid}.route-index{color:#fff;background:#376e5f;border-radius:50%;place-items:center;width:25px;height:25px;font-size:12px;font-weight:800;display:grid}.location-row div{display:grid}.location-row small{color:#7d8a85}.location-row input{text-align:center;border:1px solid #cfd7d2;border-radius:8px;width:60px;height:36px}.inventory-table{background:#fff;border:1px solid #dfe4de;border-radius:16px;overflow:hidden}.table-head,.table-row{grid-template-columns:minmax(210px,1.5fr) minmax(100px,.7fr) 90px minmax(160px,.8fr);align-items:center;gap:14px;padding:13px 17px;display:grid}.table-head{color:#738079;background:#edf1ed;font-size:12px;font-weight:800}.table-row{border-top:1px solid #e7eae6}.table-row div{display:grid}.table-row small{color:#88938e}.settings-view{max-width:860px}.settings-tabs{gap:7px;margin-bottom:12px;display:flex}.settings-tabs button{color:#5f6d68;background:#e7ece8;border-radius:9px;padding:9px 15px}.settings-tabs button.active{color:#fff;background:#1e5a49}.settings-card{background:#fff;border:1px solid #dee3dd;border-radius:16px;gap:15px;padding:22px;display:grid}.settings-card label{color:#53625c;gap:6px;font-size:13px;font-weight:700;display:grid}.settings-card input,.settings-card select,.settings-card textarea{background:#fff;border:1px solid #ced6d1;border-radius:9px;width:100%;padding:10px}.form-error{color:#a23f36}.center-state{color:#3e5c54;place-content:center;justify-items:center;gap:12px;min-height:100vh;display:grid}.access-state{text-align:center;padding:24px}.access-state h1{margin:8px 0 0}.access-state p{color:#71817b;margin:0}.login-page{background:radial-gradient(circle at 18% 16%,#eaf5c4 0,#0000 34%),linear-gradient(145deg,#f7f8f3,#e9efeb);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#ffffffeb;border:1px solid #dce5de;border-radius:24px;gap:16px;width:min(100%,470px);padding:42px;display:grid;box-shadow:0 24px 70px #122b271f}.brand-mark.large{border-radius:14px;width:48px;height:48px;font-size:23px}.login-card h1,.login-card p{margin:0}.login-card>p:not(.eyebrow){color:#63726c}.login-card small{color:#83908b;text-align:center}.login-button{justify-content:center;padding:13px 18px;text-decoration:none}.user-summary{color:#61716b;justify-items:end;font-size:12px;display:grid}.user-summary strong{color:#203f36;font-size:14px}.logout-button{color:#afc2bc;background:0 0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:9px 10px;display:flex}.logout-button:hover{color:#fff;background:#ffffff14}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#07141194;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.registration-modal{background:#fff;border-radius:20px;gap:16px;width:min(100%,480px);padding:28px;display:grid;box-shadow:0 24px 80px #0000003d}.registration-modal h2,.registration-modal p{margin:0}.registration-modal>p:not(.eyebrow){color:#68766f}.registration-modal label{color:#46564f;gap:7px;font-size:13px;font-weight:700;display:grid}.registration-modal input{background:#fff;border:1px solid #cdd7d1;border-radius:9px;width:100%;padding:11px 12px}.modal-actions{justify-content:flex-end;gap:9px;padding-top:4px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.sidebar{width:100%;height:68px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:#122b27;flex-direction:row;inset:auto 0 0}.brand,.sidebar-bottom{display:none}.sidebar nav{grid-template-columns:repeat(5,1fr);gap:3px;width:100%;display:grid}.nav-item{flex-direction:column;gap:3px;min-width:0;padding:6px 3px;font-size:10px}.nav-item:nth-child(6){display:none}.nav-item.active{box-shadow:inset 0 3px #d7f45b}.main-panel{width:100%;margin-left:0;padding-bottom:75px}.topbar{min-height:82px;padding:12px 16px}.topbar h1{font-size:21px}.store-select span{display:none}.store-select select{min-width:142px;max-width:45vw}.language-toggle{display:none}.page-content{padding:18px 14px 38px}.notice,.sync-banner{margin:12px 14px 0}.two-column,.task-layout{grid-template-columns:1fr}.hero-card{grid-template-columns:1fr;min-height:310px;padding:27px 22px}.hero-visual{display:none}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric-grid article{min-height:108px}.table-head,.table-row{grid-template-columns:minmax(170px,1.4fr) 80px 50px}.table-head span:last-child,.table-row>span:last-child{display:none}.work-card{padding:18px}.scanner-shell{z-index:5;position:sticky;top:8px}.route-panel{padding:12px}}button,input,textarea,select{font:inherit}::selection{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--primary) 20%, transparent)}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
