:root{--ink:#1b1a18;--ink-2:#26241f;--steel:#4b5a67;--steel-soft:#7c8b97;--amber:#f0a202;--amber-deep:#c98300;--ember:#d6472b;--pine:#2e7d5b;--paper:#eef0f1;--card:#fff;--text:#201f1c;--muted:#5b5952;--rule:#1b1a181a;--radius-lg:10px;--radius-md:8px;--radius-sm:5px;--shadow:0 10px 30px #11111114;--sidebar-w:240px}*{box-sizing:border-box}body{background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:IBM Plex Sans,ui-sans-serif,system-ui,sans-serif;line-height:1.4}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3{text-transform:uppercase;letter-spacing:.01em;margin:0;font-family:Oswald,ui-sans-serif,sans-serif}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.app-shell{min-height:100vh;display:flex}.mobile-topbar-burger,.mobile-topbar-brand,.sidebar-backdrop,.sidebar-close{display:none}.sidebar{width:var(--sidebar-w);background:var(--ink);color:#f3f1ec;flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:10px;padding:22px 20px;display:flex}.sidebar-brand img{width:34px;height:34px}.sidebar-brand .word{font-family:Oswald,sans-serif;font-size:16px;font-weight:700}.sidebar-brand .word .top-tag{color:var(--amber)}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:10px 12px;display:flex}.sidebar-nav a{border-radius:var(--radius-sm);color:#f3f1ecbf;align-items:center;gap:10px;padding:11px 14px;font-size:14.5px;font-weight:500;display:flex}.sidebar-nav a svg{flex-shrink:0;width:18px;height:18px}.sidebar-nav a:hover{color:#f3f1ec;background:#ffffff0f}.sidebar-nav a.active{background:var(--amber);color:var(--ink);font-weight:700}.sidebar-footer{border-top:1px solid #ffffff14;padding:14px 20px 20px}.sidebar-user{color:#f3f1ec99;word-break:break-all;margin:0 0 10px;font-size:13px}.sidebar-logout{color:#f3f1ec;border-radius:var(--radius-sm);background:#ffffff14;border:none;width:100%;padding:9px 12px;font-size:13.5px;font-weight:600}.sidebar-logout:hover{background:var(--ember)}.main-content{flex:1;min-width:0;padding:32px 40px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-head h1{font-size:26px}.page-sub{color:var(--muted);margin:4px 0 0;font-size:14px}.btn{border-radius:var(--radius-sm);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13.5px;font-weight:700;display:inline-flex}.btn-amber{background:var(--amber);color:var(--ink)}.btn-amber:hover{background:var(--amber-deep)}.btn-ink{background:var(--ink);color:#f3f1ec}.btn-ink:hover{background:var(--ink-2)}.btn-outline{background:var(--card);border:1px solid var(--rule);color:var(--text)}.btn-outline:hover{border-color:var(--steel-soft)}.btn-danger{color:var(--ember);background:0 0;border:1px solid #d6472b59}.btn-danger:hover{background:#d6472b14}.btn-sm{padding:7px 12px;font-size:12.5px}.btn:disabled{opacity:.55;cursor:not-allowed}.card{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-md);padding:20px}.stat-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.stat-card{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-md);padding:20px}.stat-card .label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:12.5px}.stat-card .value{font-family:IBM Plex Mono,monospace;font-size:26px;font-weight:600}.stat-card.warn .value{color:var(--ember)}.section-title{text-transform:none;letter-spacing:0;margin:0 0 14px;font-size:15px;font-weight:700}.table-wrap{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-md);overflow-x:auto}.table-wrap table{min-width:100%}table{border-collapse:collapse;width:100%;font-size:13.5px}thead th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--rule);white-space:nowrap;padding:12px 16px;font-size:11.5px}tbody td{border-bottom:1px solid var(--rule);vertical-align:middle;padding:13px 16px}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--paper)}.table-empty{text-align:center;color:var(--muted);padding:40px 16px}.pill{border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.pill-stock-bor{color:var(--pine);background:#2e7d5b1f}.pill-stock-kam{color:var(--amber-deep);background:#f0a20226}.pill-stock-yoq{color:var(--ember);background:#d6472b1f}.pill-order-new{color:var(--steel);background:#4b5a6724}.pill-order-confirmed,.pill-order-preparing{color:var(--amber-deep);background:#f0a20226}.pill-order-out_for_delivery{color:var(--pine);background:#2e7d5b1f}.pill-order-delivered{color:var(--pine);background:#2e7d5b2e}.pill-order-cancelled{color:var(--ember);background:#d6472b1f}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-field.full{grid-column:1/-1}.form-field label{color:var(--text);font-size:12.5px;font-weight:700}.form-field input,.form-field textarea,.form-field select{border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);color:var(--text);padding:10px 12px;font-family:inherit;font-size:14px}.form-field textarea{resize:vertical;min-height:80px}.form-error{color:var(--ember);margin:0 0 14px;font-size:13px}.form-success{color:var(--pine);margin:0 0 14px;font-size:13px}.spec-row-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;margin-bottom:8px;display:grid}.login-page{background:var(--paper);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);text-align:center;flex-direction:column;gap:14px;width:100%;max-width:360px;padding:36px 30px;display:flex}.login-card img{margin:0 auto}.login-card h1{margin-top:4px;font-size:20px}.login-card .form-field{text-align:left;margin-bottom:0}.icon-btn{color:var(--muted);background:0 0;border:none;padding:4px}.icon-btn:hover{color:var(--ember)}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.filter-tabs{flex-wrap:wrap;gap:8px;display:flex}.filter-tab{border:1px solid var(--rule);background:var(--card);color:var(--muted);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.filter-tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}.thumb-preview{border-radius:var(--radius-sm);background:var(--paper);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.thumb-preview svg{width:22px;height:22px;color:var(--steel)}.name-cell{align-items:center;gap:10px;display:flex}.spinner-text{color:var(--muted);text-align:center;padding:30px}@media (width<=900px){.stat-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}}@media (width<=860px){.app-shell{flex-direction:column}.mobile-topbar-burger{z-index:40;border-radius:var(--radius-sm);background:var(--ink);color:#f3f1ec;border:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:fixed;top:12px;left:14px}.mobile-topbar-burger svg{width:20px;height:20px}.mobile-topbar-brand{background:var(--ink);color:#f3f1ec;z-index:30;align-items:center;gap:8px;height:64px;padding:0 20px 0 62px;font-family:Oswald,sans-serif;font-size:15px;font-weight:700;display:flex;position:fixed;top:0;left:0;right:0}.mobile-topbar-brand img{width:26px;height:26px}.sidebar-backdrop{z-index:45;background:#00000073;display:block;position:fixed;inset:0}.sidebar{z-index:50;width:260px;max-width:82vw;box-shadow:var(--shadow);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0)!important}.sidebar-close{border-radius:var(--radius-sm);color:#f3f1ec;background:#ffffff14;border:none;justify-content:center;align-items:center;width:30px;height:30px;display:flex;position:absolute;top:14px;right:14px}.sidebar-close svg{width:16px;height:16px}.main-content{width:100%;padding:84px 16px 24px}.page-head{flex-direction:column;align-items:flex-start}table{font-size:12.5px}thead th,tbody td{padding:10px}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card .value{font-size:20px}}@media (width<=480px){.stat-grid{grid-template-columns:1fr}}
