:root{--brand:#1c3b69;--brand-dark:#0f2647;--gold:#f2b705;--gold-dark:#a97b00;--bg:#f5f7fa;--surface:#fff;--border:#dce2ea;--text:#182335;--text-muted:#5c6b7d;--danger:#b3261e;--success:#1e7a46;--tab-bar-height:4.25rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{overscroll-behavior-y:none;margin:0}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:10;padding:.75rem 1rem;padding-top:calc(.75rem + env(safe-area-inset-top));background:var(--brand);color:#fff;border-bottom:3px solid var(--gold);align-items:center;gap:.75rem;display:flex;position:sticky;top:0}.brand{font-weight:700}.topbar-sync{opacity:.9;white-space:nowrap;margin-left:auto;font-size:.8rem}.icon-button{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:8px;justify-content:center;align-items:center;width:2.75rem;min-width:2.75rem;height:2.75rem;font-size:1.1rem;display:flex}.menu-backdrop{z-index:15;cursor:default;background:#2b23204d;border:none;padding:0;position:fixed;inset:0}.menu-panel{z-index:20;background:var(--surface);min-width:12rem;color:var(--text);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;position:absolute;top:calc(100% + .4rem);right:1rem;overflow:hidden;box-shadow:0 8px 24px #2b23202e}.menu-item{text-align:left;border:none;border-bottom:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;padding:.85rem 1rem;font-weight:500;text-decoration:none;display:block}.menu-item:last-child{border-bottom:none}.menu-item-danger{color:var(--danger)}.tab-bar{z-index:10;background:var(--surface);border-top:1px solid var(--border);padding:.4rem .5rem calc(.4rem + env(safe-area-inset-bottom));justify-content:center;gap:.25rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #2b232014}.tab{max-width:8rem;color:var(--text-muted);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:.15rem;padding:.4rem .25rem;font-size:.75rem;font-weight:600;text-decoration:none;display:flex}.tab-icon{font-size:1.4rem;line-height:1}.tab.router-link-active{color:var(--brand);background:color-mix(in srgb, var(--brand) 10%, transparent);box-shadow:inset 0 3px 0 0 var(--gold)}.content{padding:1.25rem 1rem calc(var(--tab-bar-height) + env(safe-area-inset-bottom));flex:1;width:100%;max-width:720px;margin:0 auto}h1{margin:0 0 .6rem;font-size:1.3rem}.subtitle{color:var(--text-muted);margin-top:0}.table-scroll{-webkit-overflow-scrolling:touch;border-radius:10px;margin-top:1rem;overflow-x:auto}.data-table,table{border-collapse:collapse;background:var(--surface);width:100%}.data-table th,.data-table td,table th,table td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem;font-size:.95rem}.empty{color:var(--text-muted);margin-top:1rem}.card-list{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.6rem;margin-top:1rem;display:grid}.inventory-card,.log-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem 1rem}.inventory-card-name{font-weight:600}.inventory-card-total{color:var(--brand-dark);font-size:1.6rem;font-weight:700;line-height:1.3}.inventory-card-total .unit-label{color:var(--text-muted);font-size:.95rem;font-weight:500}.inventory-card-breakdown{color:var(--text-muted);font-size:.9rem}.log-card-top{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.log-card-product{flex:1;font-weight:600}.log-card-date{color:var(--text-muted);white-space:nowrap;font-size:.85rem}.log-card-detail{color:var(--text-muted);margin-top:.35rem;font-size:.9rem}.log-card-note{margin-top:.25rem;font-size:.9rem;font-style:italic}.log-card-who{color:var(--text-muted);margin-top:.4rem;font-size:.78rem}.log-card.voided{opacity:.6}.log-card-void{color:var(--danger);margin-top:.5rem;font-size:.85rem;font-weight:600}.remove-form{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.remove-actions{gap:1.25rem;display:flex}.remove-actions .link-button:last-child{color:var(--text-muted)}.filter-bar{grid-template-columns:1fr 1fr;align-items:end;gap:.6rem;margin:1rem 0;display:grid}.filter-bar label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;flex-direction:column;gap:.25rem;font-size:.78rem;font-weight:700;display:flex}.filter-bar .clear-filters{grid-column:1/-1;justify-self:start}.badge{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:700;display:inline-block}.badge.in{background:color-mix(in srgb, var(--success) 15%, transparent);color:var(--success)}.badge.out{background:color-mix(in srgb, var(--danger) 15%, transparent);color:var(--danger)}.results-summary{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:10px;margin:1rem 0;padding:.7rem 1rem;font-weight:600}.stacked-form{flex-direction:column;gap:.4rem;max-width:420px;display:flex}.stacked-form label{margin-top:.5rem;font-size:.9rem;font-weight:600}.stacked-form input,.stacked-form select,.inline-form input,.inline-form select,.filter-bar input,.filter-bar select{border:1px solid var(--border);background:var(--surface);min-height:2.75rem;color:var(--text);border-radius:8px;width:100%;padding:.65rem .7rem;font-size:1rem}.field-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.toggle{gap:.5rem;display:flex}.toggle button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;flex:1;min-height:3rem;padding:.75rem;font-size:1rem;font-weight:700}.toggle button.active{background:var(--brand);border-color:var(--brand);color:#fff}button[type=submit],.entry-form button[type=submit]{background:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:8px;min-height:2.9rem;margin-top:1rem;padding:.8rem;font-size:1.05rem;font-weight:600}button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.link-button{color:var(--brand-dark);cursor:pointer;font:inherit;background:0 0;border:none;min-height:2.75rem;padding:0;text-decoration:underline}.inline-form{flex-direction:column;gap:.5rem;margin:1rem 0;display:flex}.inline-form button{background:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:8px;min-height:2.75rem;padding:.7rem 1rem;font-weight:600}@media (width>=640px){.inline-form{flex-flow:wrap;align-items:center}.inline-form input,.inline-form select{flex:10rem;width:auto}}.total-preview{color:var(--text-muted);font-size:.9rem}.form-warning{background:color-mix(in srgb, var(--gold) 15%, var(--surface));border:1px solid var(--gold-dark);color:var(--gold-dark);border-radius:8px;margin-top:.5rem;padding:.6rem .8rem;font-size:.9rem;font-weight:600}.success{color:var(--success);font-weight:600}.error{color:var(--danger)}.pending{opacity:.7}.sync-status.offline{color:#ffe0b2}.sync-status.error{color:#ffcdd2}.auth-screen{max-width:380px;min-height:100dvh;padding:1.5rem;padding-top:calc(1.5rem + env(safe-area-inset-top));padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));text-align:center;flex-direction:column;justify-content:center;margin:0 auto;display:flex}.auth-screen .stacked-form{text-align:left;width:100%;margin:0 auto}.check-email{margin-top:1rem}.dev-link{min-height:2.75rem;margin:1rem 0;font-weight:600;display:inline-block}
