:root{
  --brand:#6f42c1;
  --brand-dark:#3d246b;
  --accent:#ffb703;
  --ink:#172033;
  --soft:#f7f5fb;
}
body{color:var(--ink);background:#fafafa;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.app-navbar{background:linear-gradient(120deg,var(--brand-dark),var(--brand))}
.brand-dot{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--accent);color:#171717;margin-right:6px}
.hero{background:radial-gradient(circle at 85% 10%,rgba(255,183,3,.28),transparent 30%),linear-gradient(135deg,#251243,#6f42c1);color:white;padding:6rem 0 5rem}
.hero h1{font-size:clamp(2.4rem,6vw,5rem);font-weight:850;line-height:.98;letter-spacing:-.04em}
.hero-card{background:rgba(255,255,255,.12);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);border-radius:24px}
.feature-card,.stat-card,.panel-card{background:#fff;border:1px solid #ece8f3;border-radius:18px;box-shadow:0 8px 30px rgba(33,20,58,.06)}
.feature-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#f0e9ff;color:var(--brand);font-size:1.4rem}
.dashboard-body{background:#f6f5f8}
.metric{font-size:2rem;font-weight:800}
.tenant-logo{width:38px;height:38px;object-fit:cover;border-radius:10px}
.shop-hero{background:linear-gradient(135deg,#2d184f,#7e57c2);color:#fff;border-radius:0 0 32px 32px;padding:3rem 0}
.product-card{border:0;border-radius:20px;overflow:hidden;box-shadow:0 8px 26px rgba(20,20,30,.08);height:100%;transition:.2s transform}
.product-card:hover{transform:translateY(-4px)}
.product-image{aspect-ratio:4/3;width:100%;object-fit:cover;background:#eee}
.product-placeholder{aspect-ratio:4/3;display:grid;place-items:center;background:linear-gradient(135deg,#f1ebff,#fff3d1);font-size:3rem;color:var(--brand)}
.price-tag{font-weight:800;color:var(--brand)}
.option-group{border:1px solid #e6e1ef;border-radius:14px;padding:14px;margin-bottom:14px}
.option-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px dashed #e9e5ef}
.option-row:last-child{border-bottom:0}
.sticky-summary{position:sticky;top:88px}
.queue-number{font-size:clamp(3rem,10vw,7rem);font-weight:900;line-height:1}
.kitchen-card{border-left:8px solid var(--brand);border-radius:18px;background:#fff;box-shadow:0 10px 25px rgba(0,0,0,.07)}
.kitchen-ready{border-left-color:#198754}
.kitchen-pending{border-left-color:#ffc107}
.kitchen-preparing{border-left-color:#0d6efd}
.receipt-thumb{max-width:180px;max-height:180px;object-fit:contain;border:1px solid #ddd;border-radius:12px}
.table>:not(caption)>*>*{vertical-align:middle}
.btn-brand{background:var(--brand);border-color:var(--brand);color:#fff}.btn-brand:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}
.form-control,.form-select{border-radius:11px;padding:.7rem .9rem}.btn{border-radius:11px}
.login-shell{min-height:calc(100vh - 73px);display:grid;place-items:center;padding:40px 0;background:radial-gradient(circle at 10% 10%,#efe5ff,transparent 35%),#fafafa}
@media(max-width:991px){.sticky-summary{position:static}.hero{padding:4rem 0}.hero-card{margin-top:2rem}}
