:root{color:#e6edf6;--panel:#0f1725db;--panel-strong:#0b1220f5;--panel-soft:#182334eb;--surface:#94a3b814;--input-bg:#1b2534;--line:#94a3b82e;--line-strong:#94a3b847;--muted:#9aa9bd;--accent:#3b82f6;--accent-strong:#1d4ed8;--accent-soft:#3b82f629;--sea:#22c55e;--danger:#ef4444;--warning:#f59e0b;--success:#22c55e;--shadow:0 22px 44px #02081757;--topbar-offset:104px;background:radial-gradient(circle at 0 0,#2563eb2e,#0000 30%),radial-gradient(circle at 100% 0,#0ea5e91a,#0000 28%),linear-gradient(#0b1220 0%,#111827 48%,#162033 100%);font-family:Segoe UI Variable,Aptos,Segoe UI,sans-serif}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{min-height:100vh;color:inherit;background:0 0;margin:0}button,input,select{font:inherit}button{cursor:pointer}#root{min-height:100vh}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{border:1px solid var(--line);background:var(--panel-strong);width:min(720px,100%);box-shadow:var(--shadow);border-radius:28px;gap:18px;padding:24px;display:grid}.auth-grid,.app-shell{display:grid}.auth-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.app-shell{min-height:100vh;padding-top:var(--topbar-offset);grid-template-columns:minmax(0,1fr)}.topbar{z-index:20;min-height:var(--topbar-offset);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:radial-gradient(circle at 12% 0,#3b82f626,#0000 32%),linear-gradient(#070c16e0,#0a111db3);border-bottom:1px solid #ffffff0d;grid-template-columns:minmax(280px,340px) minmax(0,1fr) auto;align-items:center;gap:22px;padding:16px 24px;display:grid;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 24px #0003}.topbar__right{justify-content:flex-end;align-items:center;gap:12px;display:flex}.topbar__settings{background:#0f172a94;border:1px solid #94a3b824;border-radius:18px;align-items:center;gap:8px;padding:6px;display:flex;box-shadow:inset 0 1px #ffffff08}.topbar__brand,.topbar__actions{align-items:center;display:flex}.topbar__brand{gap:16px;min-width:0;padding-right:4px}.topbar__brand .brand__logo{flex:none;width:168px;margin-bottom:0}.topbar__brand-copy{gap:4px;min-width:0;display:grid}.topbar__brand-copy strong{font-size:1.1rem;line-height:1.1}.topbar__nav-shell{justify-content:flex-start;min-width:0;display:flex}.topbar__nav{background:linear-gradient(145deg,#0f172ac2,#111827e6);border:1px solid #94a3b824;border-radius:22px;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;width:100%;padding:8px 10px;display:flex;box-shadow:inset 0 1px #ffffff0a}.topbar__nav-button{white-space:nowrap;border-radius:15px;min-width:max-content;min-height:42px;padding:10px 16px;font-weight:700}.topbar__field{width:auto;min-width:max-content;margin-bottom:0}.topbar__field--compact{min-width:138px}.topbar__field--narrow{min-width:112px}.topbar__field select{width:auto;min-width:100%}.topbar__actions{flex-wrap:nowrap;gap:8px}.topbar__icon-button{border-radius:14px;place-items:center;width:auto;min-width:48px;min-height:44px;padding:0 14px;display:grid}.topbar__icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.brand__eyebrow,.hero__eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--accent);font-size:.74rem;font-weight:700;display:inline-block}.brand__logo{width:min(210px,100%);height:auto;margin-bottom:6px;display:block}.brand__logo--topbar{width:168px}.brand h1,.panel h2{margin:6px 0 8px}.brand p,.panel__header p,.field span,.field small,.metric span,.metric small{color:var(--muted)}.nav,.stack{gap:8px;display:grid}.nav__button{text-align:left;color:#e6edf6;background:#94a3b80a;border:1px solid #94a3b814;border-radius:16px;padding:12px 14px;transition:background .14s,border-color .14s,transform .14s}.nav__button:hover,.nav__button--active{background:var(--accent-soft);border-color:#3b82f661;transform:translateY(-1px)}.session-card,.panel,.metric,.toast{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:24px;align-self:start}.session-card,.panel,.metric,.toast,.detail-card,.subpanel{padding:14px}.session-card,.field,.panel,.subpanel,.metric,.toast{gap:10px;display:grid}.session-card__chips,.button-row,.panel__actions,.inventory-summary,.toggle-row{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.field input,.field select,.search{border:1px solid var(--line);background:var(--input-bg);color:#f5f7fb;border-radius:14px;width:100%;min-height:42px;padding:10px 12px;transition:border-color .14s,box-shadow .14s,background .14s}.field input:focus,.field select:focus,.search:focus{border-color:#3b82f6a6;outline:none;box-shadow:0 0 0 3px #3b82f62e}.field input::placeholder,.search::placeholder{color:#7f8ea4}.field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#8ea0b8 50%),linear-gradient(135deg,#8ea0b8 50%,#0000 50%);background-position:calc(100% - 22px) calc(50% - 3px),calc(100% - 16px) calc(50% - 3px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:44px}.field select option,.field select optgroup{color:#0f172a;background:#f8fafc}.role-grid{gap:10px;display:grid}.role-option{border:1px solid var(--line);background:#94a3b80a;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}.role-option input{margin-top:3px}.role-option--checked{background:var(--accent-soft);border-color:#3b82f661}.role-option strong,.role-option small{display:block}.role-option small{color:var(--muted)}.field span{display:block}.field--full{grid-column:1/-1}.button{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#eff6ff;border:1px solid #3b82f659;border-radius:16px;min-height:42px;padding:10px 16px;font-weight:700;transition:transform .14s,box-shadow .14s,border-color .14s;box-shadow:0 10px 20px #1d4ed838}.button:hover{transform:translateY(-1px);box-shadow:0 14px 26px #1d4ed847}.button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.button--secondary{background:linear-gradient(135deg,#0f766e,#0f5f8f);border-color:#0e749059}.button--ghost{color:#dce7f3;border:1px solid var(--line);box-shadow:none;background:#94a3b814}.button--block{width:100%}.bom-search{flex:320px}.chip,.badge{border:1px solid var(--line);background:#94a3b814;border-radius:999px;align-items:center;padding:6px 10px;font-size:.78rem;display:inline-flex}.badge--posted,.badge--picked,.badge--applied,.badge--backflushed,.badge--completed,.badge--approved{color:var(--success);background:#22c55e24}.badge--draft,.badge--open,.badge--allocated,.badge--picking{color:#7dc2ff;background:#3b82f624}.badge--discrepancy-recorded,.badge--pending{color:var(--warning);background:#f59e0b24}.content{align-content:start;gap:14px;padding:20px;display:grid}.grid--2,.bom-shell,.bom-workspace-grid,.bom-stat-grid,.metrics-grid,.form-grid{align-items:start;gap:14px;display:grid}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid--2,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-shell{grid-template-columns:minmax(0,1.2fr) minmax(340px,.9fr);align-items:start;gap:14px;display:grid}.inventory-shell__list,.inventory-shell__detail,.inventory-shell__placeholder{min-width:0}.inventory-shell__detail{max-height:calc(100vh - 120px);position:sticky;top:20px;overflow:auto}.inventory-shell__placeholder{align-content:center;gap:8px;min-height:220px;display:grid}.inventory-shell__placeholder h3,.inventory-shell__placeholder p{margin:0}.bom-shell{grid-template-columns:minmax(300px,360px) minmax(0,1fr);align-items:start}.bom-sidebar,.bom-main{gap:18px;display:grid}.bom-workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bom-stat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.metric,.toast{align-content:start;min-width:0;overflow:hidden}.metric{background:linear-gradient(145deg,#1e293b99,#0f172acc);border:1px solid #ffffff0d;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}.metric:hover{background:linear-gradient(145deg,#1e293bcc,#0f172af2);border-color:#94a3b84d;transform:translateY(-4px);box-shadow:0 12px 24px #0006}.toast{justify-self:end;gap:6px;width:min(300px,100%);padding:10px 12px}.toast--compact{padding:8px 10px}.metric span,.metric strong,.metric small,.toast strong,.toast span{min-width:0;display:block}.metric strong{font-size:1.7rem;line-height:1}.metric--accent strong{color:#7dc2ff}.metric--warning strong{color:var(--warning)}.metric--danger strong{color:var(--danger)}.panel__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.panel__header>div{min-width:0}.subpanel,.detail-card,.empty-state,.pick-summary,.inline-note{background:var(--surface);border:1px solid var(--line);border-radius:18px}.panel--compact{padding:14px 18px;display:block}.toggle-row--flush{margin-top:-2px}.bom-stat span,.bom-stat small{color:var(--muted)}.bom-stat strong{font-size:1.1rem;display:block}.table-wrap{border:1px solid var(--line);border-radius:18px;overflow:auto}.data-table{border-collapse:collapse;background:#0c131f9e;width:100%;min-width:620px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #94a3b81f;padding:14px 16px}.data-table th{background:var(--panel-strong);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.data-table tbody tr:hover,.data-table tbody tr.is-selected{background:#3b82f61a}.empty-state{color:var(--muted)}.table-wrap::-webkit-scrollbar{height:10px}.table-wrap::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.table-wrap::-webkit-scrollbar-track{background:#94a3b80f}@media (width<=1180px){:root{--topbar-offset:156px}.auth-grid,.app-shell,.inventory-shell,.bom-shell,.bom-workspace-grid,.metrics-grid,.grid--2,.form-grid{grid-template-columns:1fr}.topbar{border-right:none;border-bottom:1px solid var(--line);grid-template-columns:1fr;gap:14px;min-height:0}.topbar__brand,.topbar__right{justify-content:space-between}.topbar__nav-shell{order:3}.topbar__nav{justify-content:flex-start}}@media (width<=768px){:root{--topbar-offset:166px}.content,.topbar{padding:14px}.topbar__brand{gap:12px}.topbar__brand .brand__logo,.brand__logo--topbar{width:140px}.topbar__brand-copy strong{font-size:1rem}.topbar__right{flex-wrap:wrap;justify-content:space-between}.topbar__settings{flex:auto;min-width:0}.topbar__field--compact{width:100%;min-width:0}.topbar__field--narrow{min-width:92px}.topbar__nav{gap:6px;padding:8px}.topbar__nav-button{min-height:38px;padding:8px 12px}.metric strong{font-size:1.5rem}}
