@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');:root{--navy:#123a70;--blue:#1d5ba6;--gold:#e6b84b;--ink:#182538;--muted:#718096;--line:#e7ecf3;--bg:#f4f7fb;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#102f59;color:#dbe8f8;padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;color:white;padding:0 8px 25px}.brand b{display:block;letter-spacing:1.5px;font-size:16px}.brand small{display:block;color:#9fb5d2;font-size:11px;margin-top:3px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#f2cf70,#d99e28);color:#17375f;font-size:24px;font-weight:800}.tenant-label{font-size:11px;color:#9fb5d2;padding:12px 10px;border-top:1px solid #ffffff20;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar nav{display:grid;gap:5px}.sidebar nav a{padding:12px;border-radius:9px;color:#c4d3e6;display:flex;gap:12px;align-items:center}.sidebar nav a.active,.sidebar nav a:hover{background:#ffffff17;color:white}.sidebar nav a.active{box-shadow:inset 3px 0 var(--gold)}.sidebar-bottom{margin-top:auto;display:grid;gap:15px;padding:12px 10px;color:#c5d4e6}.sync-indicator{font-size:12px}.main{margin-left:244px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:72px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px}.topbar b{display:block}.eyebrow{font-size:10px;letter-spacing:1.5px;color:#8795a8;font-weight:700;display:block;margin-bottom:5px}.role-chip,.pill,.count{font-size:10px;font-weight:700;padding:6px 9px;border-radius:20px;background:#edf3fa;color:#31567f}.content{padding:30px 34px;flex:1;max-width:1500px;width:100%;margin:0 auto}.page-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-title h1{margin:0;font-size:27px;letter-spacing:-.8px}.muted{color:var(--muted);margin:7px 0 0}.btn{border:0;border-radius:8px;background:#eaf0f8;color:#23466f;padding:11px 16px;font-weight:700;cursor:pointer;display:inline-flex;justify-content:center;align-items:center}.btn.primary{background:var(--navy);color:white;box-shadow:0 4px 12px #123a7020}.btn:hover{filter:brightness(1.06)}.btn.full{width:100%}.btn.small{padding:7px 10px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}.stats article,.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:20px;box-shadow:0 4px 18px #1d35570a}.stats article span{display:block;color:var(--muted);font-size:12px}.stats article strong{display:block;font-size:27px;margin:11px 0 4px;letter-spacing:-1px}.stats article small,.product-tile small,td small{display:block;color:#8a98aa;font-size:11px;margin-top:4px}.panel{margin-bottom:18px}.panel h2{font-size:15px;margin:0 0 17px}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-links a{border:1px solid var(--line);border-radius:10px;padding:18px;display:grid;gap:8px;color:var(--blue);font-size:20px}.quick-links b{color:var(--ink);font-size:13px}.quick-links small{color:var(--muted);font-size:11px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.form-grid label,.cart-summary label,.login-card label{display:grid;gap:7px;color:#526174;font-size:12px;font-weight:600}.form-grid input,.cart-summary input,.cart-summary select,.login-card input,.inline-form input,.search{width:100%;border:1px solid #dfe6ef;border-radius:8px;padding:11px 12px;outline:none;background:white;color:var(--ink)}input:focus,select:focus{border-color:#6a94c5;box-shadow:0 0 0 3px #1d5ba610}.form-action{display:flex;align-items:end}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#8996a7;font-size:10px;text-transform:uppercase;letter-spacing:.7px;font-weight:700;padding:11px;border-bottom:1px solid var(--line)}td{padding:13px 11px;border-bottom:1px solid #f0f3f7;font-size:12px}tr:last-child td{border-bottom:0}.pill.ok{background:#e8f7ef;color:#23834d}.pill.warn{background:#fff4df;color:#a46b09}.empty{text-align:center;color:#99a5b4;padding:30px!important}.pos-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,.8fr);gap:18px;align-items:start}.search{margin-bottom:14px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:65vh;overflow:auto}.product-tile{text-align:left;border:1px solid var(--line);background:white;border-radius:9px;padding:13px;display:grid;gap:8px;cursor:pointer;min-height:105px}.product-tile:hover{border-color:#7ca2cf;background:#f7faff}.product-tile b{font-size:12px}.product-tile strong{color:var(--blue);font-size:13px}.cart-panel{position:sticky;top:15px}.cart-items{max-height:220px;overflow:auto}.cart-row{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.cart-row button{border:0;background:none;color:#c45b5b;cursor:pointer}.cart-summary{display:grid;gap:12px;margin-top:14px}.total-line{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.total-line strong{font-size:22px;color:var(--navy)}.inline-form{display:flex;gap:6px}.inline-form input{width:110px;padding:7px}.alert{background:#fff0ef;color:#a13d35;border:1px solid #f4d1ce;padding:12px;border-radius:8px;margin-bottom:15px;font-size:12px}.hint{font-size:11px;color:#8b98a9;margin-top:20px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 15%,#e7eef9,transparent 35%),var(--bg)}.login-card{background:white;border:1px solid var(--line);border-radius:17px;padding:34px;width:min(420px,100%);box-shadow:0 18px 60px #17385d14}.login-card .brand{padding:0 0 26px;color:var(--navy)}.login-card .brand small{color:#8795a8}.login-card h1{font-size:25px;margin:0}.login-card form{display:grid;gap:10px;margin-top:24px}.login-card input{margin-bottom:8px}footer{text-align:center;padding:18px;color:#9aa6b5;font-size:10px}@media(max-width:900px){.sidebar{width:72px;padding:18px 9px}.sidebar .brand{padding:0 6px 22px}.brand div,.tenant-label,.sidebar nav a span,.sidebar-bottom a{display:none}.sidebar nav a{justify-content:center;font-size:18px}.main{margin-left:72px}.content{padding:22px 18px}.topbar{padding:0 18px}.pos-layout{grid-template-columns:1fr}.cart-panel{position:static}.product-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.stats{grid-template-columns:1fr}.quick-links{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.page-title{align-items:flex-start;gap:12px}.page-title h1{font-size:23px}.content{padding:18px 12px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{height:62px}.panel{padding:15px}}

.logout-btn{border:0;background:none;color:#c5d4e6;padding:0;cursor:pointer;font:inherit;text-align:left}.logout-btn:hover{color:white}

/* v0.8.0 platform console */
.stats:has(article:nth-child(4)){grid-template-columns:repeat(5,minmax(0,1fr))}.inline-actions{display:flex;gap:6px;align-items:center}.inline-actions form{margin:0}.notice{background:#fff4df;color:#8b5b08;border:1px solid #f1dfb7;padding:12px 14px;border-radius:8px;margin:0 0 16px;font-size:12px}.notice.success{background:#eaf7ef;color:#247447;border-color:#ccebd8}.form-grid label small{font-size:10px;color:#8795a8;font-weight:400}@media(max-width:1100px){.stats:has(article:nth-child(4)){grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.stats:has(article:nth-child(4)){grid-template-columns:1fr}.inline-actions{flex-wrap:wrap}}

.nav-group { margin: 12px 0; }
.nav-label { display:block; font-size:11px; text-transform:uppercase; letter-spacing:.5px; color:#94a3b8; padding:8px 16px 4px; }
.nav-group a { padding-left: 28px; }

