:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#21343c;background:#f4f7f8;font-synthesis:none;--accent:#087e78;--tint:#e9f5f3;--border:#e4eaed}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #36aaa5;outline-offset:3px}.shell{min-height:100vh;display:flex}.sidebar{width:244px;background:#fff;border-right:1px solid var(--border);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:33px 20px;z-index:5}.brand{display:flex;align-items:center;gap:11px;font-size:23px;font-weight:750;letter-spacing:-.8px;margin:0 5px 49px}.brand-symbol{display:grid;place-items:center;width:42px;height:44px;border-radius:13px;background:#087e78;color:white}.brand-symbol svg{width:27px;height:27px}.brand small{display:block;font-size:8px;letter-spacing:1.5px;color:#8b9b9f;margin-top:7px}.side-label{font-size:10px;letter-spacing:1.8px;color:#96a2a8;padding:0 15px;margin-bottom:14px;font-weight:700}nav{display:grid;gap:7px}.nav-link{display:flex;gap:13px;align-items:center;min-height:49px;padding:12px 14px;border-radius:10px;color:#6c7b83;font-size:14px;font-weight:600}.nav-link svg{width:20px;height:20px}.nav-link:hover{background:#f5f8f9}.nav-link.active{background:var(--nav-tint);color:var(--nav-color)}.sidebar-bottom{margin-top:auto;padding:30px 12px 0}.demo-indicator{font-size:12px;font-weight:650;display:flex;align-items:center;gap:8px}.demo-indicator span{width:7px;height:7px;background:#20a68d;border-radius:50%}.sidebar-bottom p{font-size:11px;color:#8c999f;line-height:1.8}.reset-link{border:0;background:none;padding:12px 0 0;color:#7c8a91;font-size:11px;text-decoration:underline;text-underline-offset:4px}.workspace{margin-left:244px;min-width:0;flex:1}.topbar{height:84px;border-bottom:1px solid var(--border);background:#ffffffc9;display:flex;align-items:center;justify-content:space-between;padding:0 45px}.breadcrumb{font-size:12px;color:#8a999f}.breadcrumb span{padding:0 15px;color:#bac3c8}.breadcrumb b{font-weight:550;color:#53666e}.top-actions{display:flex;align-items:center;gap:20px}.environment{font-size:10px;color:#758b91;font-weight:700;letter-spacing:1.4px;background:#edf2f3;padding:6px 10px;border-radius:5px}.avatar{width:34px;height:34px;background:#e5efee;color:#087e78;font-size:10px;font-weight:700;display:grid;place-items:center;border-radius:50%}.mobile-brand{display:none}main{max-width:1280px;margin:auto;padding:39px 45px 26px;outline:none!important}.eyebrow{font-size:10px;font-weight:750;color:#83969e;letter-spacing:1.8px;text-transform:uppercase;margin:0 0 10px}h1{font-size:32px;font-weight:700;letter-spacing:-1.1px;margin:0 0 9px}h2{font-size:17px;letter-spacing:-.3px;margin:0}p{line-height:1.6}.lead{font-size:13px;color:#7c8e97;margin:0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.warehouse-chip{display:flex;align-items:center;gap:9px;background:white;border:1px solid var(--border);padding:10px 14px;border-radius:8px;font-size:12px;white-space:nowrap}.warehouse-chip svg{width:17px;color:#6e8c90}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:31px}.metric{display:flex;align-items:center;gap:14px;border:1px solid var(--border);background:#fff;border-radius:12px;padding:19px 21px}.metric-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:11px;background:#f0f6f6;color:#65928f}.metric strong{font-size:25px;letter-spacing:-.7px;line-height:1.2}.metric small{display:block;font-size:11px;color:#8b9aa0;margin-top:5px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px}.section-heading span{font-size:11px;color:#8c9ba2}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:30px}.tile{color:white;border-radius:13px;min-height:170px;position:relative;overflow:hidden;padding:23px 24px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .16s,box-shadow .16s;background:var(--tile)}.tile:hover{transform:translateY(-3px);box-shadow:0 9px 20px #243c4015}.tile:after{content:"";position:absolute;width:150px;height:150px;right:-55px;bottom:-65px;border:24px solid #ffffff0b;border-radius:50%;pointer-events:none}.tile-icon{display:grid;place-items:center;width:41px;height:41px;border-radius:11px;background:#ffffff24;margin-bottom:17px}.tile-icon svg{width:25px;height:25px}.tile strong{font-size:17px;font-weight:600;letter-spacing:-.3px}.tile small{font-size:11px;margin-top:7px;color:#ffffffe0}.tile-arrow{position:absolute;top:24px;right:23px;opacity:.65}.tile-arrow svg{width:18px}.panel{background:white;border:1px solid var(--border);border-radius:13px;overflow:hidden}.panel-heading{padding:21px 24px;display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-heading a{font-size:11px;color:#087e78;font-weight:600}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px;white-space:nowrap}th{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#8b9da4;background:#fafcfc;font-weight:650;padding:13px 24px;border-top:1px solid #f0f3f4;border-bottom:1px solid #edf1f3}td{padding:16px 24px;border-bottom:1px solid #f1f4f5}tr:last-child td{border-bottom:0}.muted{color:#94a2a7}.badge{display:inline-flex;gap:6px;align-items:center;font-size:10px;font-weight:650;padding:5px 8px;border-radius:5px;background:#eff3f5;color:#6e8591}.badge.in{background:#f0eafa;color:#8052b0}.badge.out{background:#eaf5e9;color:#4a9147}.badge.new{background:#e7f5f3;color:#087e78}.table-primary{font-weight:600}.small-note{font-size:11px;color:#8d9da5}.welcome-note{display:flex;align-items:flex-start;gap:11px;font-size:11px;color:#7d9299;background:#eaf1f3;border:1px solid #e1ebee;border-radius:9px;padding:13px 16px;margin-top:20px;line-height:1.6}.welcome-note svg{width:17px;height:17px;margin-top:1px}footer{max-width:1280px;margin:auto;padding:4px 45px 25px;display:flex;justify-content:space-between;gap:12px;color:#a0adb3;font-size:10px}.footer-dot{padding:0 7px}.color-heading{background:var(--accent);color:white;padding:26px 29px;border-radius:13px;display:flex;align-items:center;gap:19px;margin-bottom:25px}.color-heading>svg{width:33px;height:33px}.color-heading h1{font-size:25px;letter-spacing:-.5px;margin:0 0 6px}.color-heading p{margin:0;color:#ffffffdc;font-size:12px}.back{display:inline-flex;gap:7px;align-items:center;font-size:11px;color:#788d96;margin-bottom:19px}.back svg{width:15px}.form-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(220px,1fr);gap:24px}.form-panel{padding:27px}.form-panel h2{margin-bottom:23px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:21px 18px}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field.full{grid-column:1/-1}label{font-size:12px;font-weight:600}input,select{width:100%;min-height:48px;background:#fff;color:#243a44;border:1px solid #d8e2e6;border-radius:8px;padding:11px 13px;font-size:14px}input::placeholder{color:#a3b0b6}input:focus,select:focus{border-color:var(--accent)}.field small{font-size:10px;line-height:1.6;color:#8b9ca4}.form-actions{display:flex;justify-content:flex-end;gap:11px;margin-top:27px;flex-wrap:wrap}.button{min-height:46px;border:0;border-radius:8px;padding:12px 18px;font-size:12px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button svg{width:17px;height:17px}.primary{background:var(--accent);color:white}.primary:hover{filter:brightness(.95)}.secondary{background:#f0f4f5;color:#6d818b}.helper-panel{padding:26px;background:var(--tint);border:1px solid color-mix(in srgb,var(--accent) 15%,white);border-radius:13px;align-self:start}.helper-panel>svg{color:var(--accent);margin-bottom:12px}.helper-panel h2{font-size:15px;margin-bottom:14px}.helper-panel p,.helper-panel li{font-size:12px;color:#698089;line-height:1.8}.helper-panel ol{padding-left:19px}.helper-panel li{padding-left:4px;margin-bottom:10px}.helper-panel .separator{border-top:1px solid #bcced255;margin-top:18px;padding-top:15px}.form-error{color:#b43443;background:#fdf0f0;border-radius:7px;padding:12px;font-size:12px;margin-top:18px}.toolbar{display:flex;align-items:center;justify-content:space-between;padding:19px 24px;gap:16px;border-bottom:1px solid var(--border)}.search-wrap{display:flex;align-items:center;gap:10px;flex:1;max-width:430px}.search-wrap svg{color:#8a9fa5;width:19px}.search-wrap input{border:0;min-height:38px;background:#f5f8f9}.empty{text-align:center;padding:35px;color:#82969f;font-size:13px}.stock-preview{padding:13px 15px;background:var(--tint);border-radius:8px;font-size:12px;line-height:1.8;color:#56717c;margin-top:20px}.stock-preview strong{color:var(--accent)}.available{font-size:11px;color:#7e929a}.row-actions{color:var(--accent);font-size:11px;font-weight:650}.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:22px}.slot-card{border:1px solid var(--border);border-radius:9px;padding:17px}.slot-card h3{font-size:15px;margin:0 0 12px}.slot-card p{font-size:12px;margin:5px 0;color:#7e919a}.slot-card .badge{margin-bottom:10px}.instructions{font-size:12px;color:#7c9099;margin:0 0 20px}.page-title-row{display:flex;align-items:center;gap:12px}.count{font-size:10px;background:var(--tint);color:var(--accent);padding:5px 8px;border-radius:5px}#toast{position:fixed;bottom:26px;left:calc(50% + 122px);transform:translateX(-50%) translateY(25px);background:#203b3b;color:white;border-radius:10px;box-shadow:0 8px 30px #0002;padding:15px 23px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;z-index:30;max-width:90vw}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}#storage-warning{position:fixed;bottom:0;width:100%;background:#fff2c7;padding:12px;text-align:center;font-size:12px;z-index:50}dialog{border:1px solid var(--border);border-radius:16px;padding:30px;max-width:460px;width:calc(100% - 32px);color:#21343c}dialog::backdrop{background:#132e3c66}dialog p{font-size:13px;color:#7d909a}.dialog-icon{display:block;color:#087e78;margin-bottom:15px}@media(min-width:1450px){main{padding-top:50px}.tile{min-height:185px}}@media(max-width:1100px){.sidebar{width:210px;padding:30px 14px}.workspace{margin-left:210px}.brand{font-size:21px;gap:9px}.brand small{font-size:7px}.topbar{padding:0 28px}main{padding:30px 28px 24px}footer{padding-left:28px;padding-right:28px}.tile{padding:21px 19px}.tile strong{font-size:16px}.form-layout{grid-template-columns:1fr}.helper-panel{display:none}#toast{left:calc(50% + 105px)}}@media(max-width:760px){.sidebar{position:fixed;inset:auto 0 0;width:100%;height:73px;padding:0;background:white;border-right:0;border-top:1px solid var(--border)}.brand,.side-label,.sidebar-bottom{display:none}nav{height:100%;display:grid;grid-template-columns:repeat(5,1fr);gap:0}.nav-link{border-radius:0;gap:6px;min-height:0;padding:10px 2px 12px;flex-direction:column;justify-content:center;font-size:9px}.nav-link svg{width:21px;height:21px}.nav-link[data-route="places"]{display:none}.workspace{margin:0 0 73px;width:100%}.topbar{height:64px;padding:0 20px}.mobile-brand{display:block;font-weight:750;font-size:19px;letter-spacing:-.6px;color:#087e78}.breadcrumb{display:none}.top-actions{gap:12px}.avatar{width:29px;height:29px}.environment{font-size:8px}main{padding:27px 19px 23px}h1{font-size:27px}.page-heading{align-items:flex-start;margin-bottom:22px}.warehouse-chip{font-size:0;padding:9px}.warehouse-chip svg{width:18px}.lead{font-size:12px;max-width:235px;line-height:1.7}.eyebrow{font-size:9px}.metrics{gap:8px;margin-bottom:25px}.metric{padding:13px 9px;display:block}.metric-icon{display:none}.metric strong{font-size:23px}.metric small{font-size:9px;line-height:1.5}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:25px}.tile{min-height:151px;padding:18px}.tile-icon{width:35px;height:35px;border-radius:9px;margin-bottom:16px}.tile-icon svg{width:23px;height:23px}.tile strong{font-size:15px}.tile small{font-size:10px;line-height:1.5}.tile-arrow{right:15px;top:19px}.section-heading h2{font-size:16px}.section-heading span{font-size:9px}.panel-heading{padding:18px 16px}.panel-heading h2{font-size:15px}td,th{padding:14px 16px}footer{padding:0 19px 22px;display:block;font-size:9px}footer>span{display:block;margin-bottom:7px}.welcome-note{font-size:10px;padding:12px}.color-heading{padding:22px 20px;gap:14px;margin-bottom:19px}.color-heading h1{font-size:22px}.color-heading p{font-size:11px}.color-heading>svg{width:27px}.form-panel{padding:21px 18px}.fields{grid-template-columns:1fr;gap:19px}.field.full{grid-column:auto}.form-actions{gap:8px}.form-actions .button{flex:1}.toolbar{padding:15px;flex-wrap:wrap}.search-wrap{flex-basis:100%;max-width:none}.toolbar>.button{width:100%}.slot-grid{grid-template-columns:repeat(2,1fr);padding:15px;gap:10px}.slot-card{padding:13px}.slot-card p{font-size:10px}#toast{left:50%;bottom:90px;width:max-content;font-size:12px}.count{white-space:nowrap}input,select{font-size:16px}.button{min-height:48px}.form-panel h2{font-size:16px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media(max-width:360px){main{padding-left:12px;padding-right:12px}.tile{padding:15px}.tile strong{font-size:14px}.tile small{font-size:9px}.section-heading span{display:none}}

.mobile-reset{display:none}@media(max-width:760px){.mobile-reset{display:block;padding-top:5px}}

/* Version 0.2.0: compact workspace */
main{padding-top:28px}.brand{margin-bottom:35px}.color-heading{padding:20px 25px;min-height:75px}.color-heading h1{margin:0}.form-layout{display:block;max-width:850px}.place-form{padding:0 24px 22px;display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--border)}.place-form .field{flex:1;min-width:190px;max-width:360px}.place-form #form-error{flex-basis:100%}.place-form #form-error:empty{display:none}.badge.out{background:#fff0e6;color:#b3541c}.reset-link{font:inherit;padding:0;text-decoration:underline;color:#82969e}footer{align-items:center;padding-top:20px;justify-content:space-between}button:disabled{opacity:.6;cursor:wait}.sidebar{padding-top:29px}.brand-symbol{background:#087e78}
@media(min-width:1450px){main{padding-top:30px}}
@media(max-width:760px){main{padding-top:18px}footer{display:flex;align-items:center;gap:15px;padding-top:18px}footer>span{margin:0}.place-form{padding:0 16px 20px;gap:10px}.place-form .field{max-width:none;min-width:100%}.place-form button{width:100%}nav{grid-template-columns:repeat(6,1fr)}.nav-link[data-route="places"]{display:flex}.nav-link{font-size:9px}.color-heading{min-height:67px;padding:18px}.form-layout{max-width:none}}

/* Version 0.2.1: app header and permanent quick navigation */
:root{--header-height:64px;--bottom-height:72px}.app-header{position:fixed;inset:0 0 auto 0;z-index:20;height:calc(var(--header-height) + env(safe-area-inset-top));padding:env(safe-area-inset-top) 26px 0;display:flex;align-items:center;gap:15px;background:#fff;border-bottom:1px solid var(--border)}.app-brand{display:inline-flex;align-items:center;gap:11px;font-size:23px;font-weight:750;letter-spacing:-.7px;color:#21343c}.app-brand .brand-symbol{height:38px;width:38px;border-radius:11px}.app-brand .brand-symbol svg{height:25px;width:25px}.demo-badge{font-size:11px;letter-spacing:.4px;color:#567777;background:#eaf2f2;border:1px solid #d9e8e7;padding:6px 10px;border-radius:6px;font-weight:650}.sidebar{top:calc(var(--header-height) + env(safe-area-inset-top));bottom:0}.workspace{padding-top:calc(var(--header-height) + env(safe-area-inset-top));padding-bottom:calc(var(--bottom-height) + env(safe-area-inset-bottom) + 8px)}.bottom-navigation{position:fixed;inset:auto 0 0 244px;z-index:20;height:calc(var(--bottom-height) + env(safe-area-inset-bottom));padding:8px 22px calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;background:#fff;border-top:1px solid var(--border);box-shadow:0 -3px 15px #21343c05}.bottom-link{display:flex;justify-content:center;align-items:center;gap:10px;border-radius:9px;color:#6c7b83;font-size:13px;font-weight:650;min-height:48px}.bottom-link svg{width:22px;height:22px}.bottom-link.active{color:var(--nav-color);background:var(--nav-tint)}.bottom-link:hover{background:var(--nav-tint);color:var(--nav-color)}#toast{bottom:calc(var(--bottom-height) + env(safe-area-inset-bottom) + 16px)}main{scroll-margin-top:calc(var(--header-height) + 15px)}
@media(max-width:1100px){.bottom-navigation{left:210px}}
@media(max-width:760px){.sidebar{display:none}.workspace{margin:0;width:100%}.app-header{padding-left:18px;padding-right:18px;gap:12px}.app-brand{font-size:21px}.app-brand .brand-symbol{height:34px;width:34px;border-radius:10px}.app-brand .brand-symbol svg{height:23px;width:23px}.bottom-navigation{left:0;gap:6px;padding-left:9px;padding-right:9px;grid-template-columns:repeat(4,minmax(0,1fr))}.bottom-link{flex-direction:column;gap:5px;font-size:11px;min-height:50px}.bottom-link svg{width:22px;height:22px}.demo-badge{font-size:10px;padding:5px 9px}}
