:root{--ink:#14262d;--muted:#66777b;--canvas:#f5f8f7;--card:#fff;--line:#e3ebe9;--green:#0f766e;--green-dark:#075950;--mint:#dcf5ed;--yellow:#fff2c7;--red:#c74141;--shadow:0 8px 28px #14342d0e}*{box-sizing:border-box}body{margin:0;font:14px Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:244px 1fr;min-height:100vh}.sidebar{background:#102b2b;color:#eaf3f1;padding:25px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{color:white;text-decoration:none;font-size:20px;letter-spacing:-.5px;display:flex;align-items:center;gap:10px;padding:0 9px}.brand-mark{display:grid;place-items:center;width:30px;height:30px;background:#27a982;border-radius:9px;font-size:19px}.workspace{font-size:10px;letter-spacing:1.3px;color:#8ba6a1;margin:36px 10px 12px}.nav-item{width:100%;border:0;background:transparent;color:#aac2bd;text-align:left;border-radius:9px;padding:11px 10px;margin:2px 0;display:flex;gap:12px;align-items:center}.nav-item:hover,.nav-item.active{background:#1e4542;color:#fff}.nav-icon{width:18px;text-align:center}.sidebar-footer{margin-top:auto;border-top:1px solid #294a47;padding:18px 9px 0;color:#9eb6b1;font-size:12px}.status-dot{display:inline-block;width:7px;height:7px;background:#5ee2aa;border-radius:50%;margin-right:6px}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);padding:0 36px;display:flex;justify-content:space-between;align-items:center}.crumb-title{font-size:16px;font-weight:700}.crumb-sub{font-size:12px;color:var(--muted);margin-top:2px}.header-actions{display:flex;gap:10px;align-items:center}.primary,.secondary,.icon-button{border:0;border-radius:8px;padding:10px 14px;font-weight:650}.primary{color:#fff;background:var(--green)}.primary:hover{background:var(--green-dark)}.secondary{background:#eff4f3;color:#29413f}.icon-button{background:transparent;font-size:20px;color:#637774;padding:7px 10px}.menu-button{display:none}.page{padding:34px 36px;max-width:1500px;margin:auto}.hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:25px}.hero h1{font-size:28px;letter-spacing:-1px;margin:0 0 7px}.hero p{color:var(--muted);margin:0}.section-title{font-size:16px;margin:0}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:18px 0 28px}.kpi,.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.kpi{padding:18px}.kpi-label{font-size:12px;color:var(--muted);display:flex;justify-content:space-between}.kpi-value{font-size:27px;font-weight:750;letter-spacing:-1px;margin:13px 0 7px}.kpi-note{font-size:12px;color:#638278}.kpi-alert{border-color:#efd7aa;background:#fffdf8}.kpi-alert .kpi-value{color:#a66a11}.dashboard-grid{display:grid;grid-template-columns:1.45fr .8fr;gap:18px}.panel{padding:20px}.panel-title{margin:0 0 3px;font-size:15px}.panel-subtitle{color:var(--muted);font-size:12px;margin:0 0 17px}.stock-row{display:grid;grid-template-columns:1.1fr 2fr .6fr;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.stock-row:first-of-type{border-top:0}.stock-name{font-weight:650}.stock-meta{font-size:12px;color:var(--muted);margin-top:3px}.progress{height:8px;background:#ebf0ef;border-radius:99px;overflow:hidden}.progress b{display:block;height:100%;background:#3bb58d;border-radius:99px}.progress.low b{background:#e6a331}.progress.critical b{background:#dc6464}.stock-qty{text-align:right;font-weight:700}.alert-list{margin:0;padding:0;list-style:none}.alert-list li{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:13px}.alert-list li:first-child{border-top:0}.alert-icon{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:var(--yellow)}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.toolbar-left,.toolbar-right{display:flex;gap:8px;align-items:center}.search{border:1px solid var(--line);background:white;border-radius:8px;padding:9px 11px;min-width:230px;color:var(--ink)}.table-wrap{overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px;background:#f8faf9;text-align:left;padding:12px 14px;white-space:nowrap}.data-table td{padding:14px;border-top:1px solid var(--line);vertical-align:middle}.data-table tr:hover td{background:#fbfdfc}.badge{display:inline-flex;padding:4px 8px;border-radius:100px;font-size:11px;font-weight:700;background:#eaf4f1;color:#27705f}.badge.on-order{background:#e3edfa;color:#346aab}.badge.received{background:#e2f4e9;color:#258153}.badge.low{background:#fff0d5;color:#a9680d}.badge.out{background:#fbe5e5;color:#bd4646}.empty{padding:35px;text-align:center;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid .wide{grid-column:1/-1}.field{display:grid;gap:6px}.field label{font-weight:600;font-size:12px}.field input,.field select,.field textarea{border:1px solid #d8e3e0;border-radius:7px;padding:10px;background:#fff;color:var(--ink);width:100%}.field textarea{resize:vertical;min-height:72px}.modal-backdrop{position:fixed;inset:0;background:#071b18a0;z-index:5;padding:20px;display:grid;place-items:center}.modal-card{width:min(650px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 24px 80px #0005;padding:24px}.modal-title{font-size:20px;margin:0 0 4px}.modal-intro{color:var(--muted);margin:0 0 21px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.report-card{padding:20px}.report-card h3{margin:0 0 5px}.big-number{font-size:30px;font-weight:750;letter-spacing:-1px;margin:15px 0}.bar-chart{height:205px;display:flex;align-items:flex-end;gap:14px;padding:10px 0 0;border-bottom:1px solid var(--line)}.bar-group{height:100%;flex:1;display:flex;gap:3px;align-items:flex-end;justify-content:center;position:relative}.bar{width:13px;background:#35ab88;border-radius:4px 4px 0 0}.bar.alt{background:#b4dcd0}.bar-label{position:absolute;bottom:-23px;color:var(--muted);font-size:10px}.analysis{padding:0;margin:0;list-style:none}.analysis li{padding:12px 0;border-top:1px solid var(--line);line-height:1.45}.analysis li:first-child{border-top:0}.setting-row{padding:16px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.setting-row:first-child{border-top:0}.setting-row p{margin:3px 0 0;font-size:12px;color:var(--muted)}.toast-area{position:fixed;z-index:9;right:20px;bottom:20px;display:grid;gap:8px}.toast{background:#173b37;color:#fff;padding:12px 15px;border-radius:9px;box-shadow:var(--shadow)}.muted{color:var(--muted)}.right{text-align:right}.danger{color:var(--red)}
@media(max-width:850px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:4;transform:translateX(-100%);transition:.2s;width:244px}.sidebar.open{transform:none}.topbar{padding:0 16px}.menu-button{display:block;border:0;background:none;font-size:21px}.page{padding:25px 16px}.kpis{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.split{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.header-actions .primary{font-size:0;padding:11px}.header-actions .primary:first-letter{font-size:16px}.stock-row{grid-template-columns:1fr .8fr}.stock-row .progress{grid-row:2;grid-column:1/-1}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}
@media(max-width:470px){.kpis{grid-template-columns:1fr}.search{min-width:0;width:130px}.toolbar{align-items:flex-start;flex-direction:column}.toolbar-left,.toolbar-right{width:100%}.toolbar-right .secondary{flex:1}.topbar{height:66px}}

/* Some preview browsers let this class override the native [hidden] rule. */
.modal-backdrop[hidden]{display:none !important}
.login-screen[hidden]{display:none !important}
.login-screen{position:fixed;inset:0;z-index:20;background:linear-gradient(135deg,#0f2d2a,#133f3b);display:grid;place-items:center;padding:20px}.login-card{background:#fff;width:min(400px,100%);padding:34px;border-radius:16px;box-shadow:0 30px 80px #0006;display:grid;gap:13px}.login-card .brand-mark{width:38px;height:38px;font-size:25px}.login-card h1{margin:4px 0 0;font-size:25px}.login-card p{margin:0;color:var(--muted)}.login-card label{display:grid;gap:6px;font-size:12px;font-weight:700}.login-card input{border:1px solid #d8e3e0;border-radius:8px;padding:11px}.login-card small{color:var(--muted);line-height:1.5}.login-error{color:var(--red)!important;min-height:18px}
