@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600&family=Montserrat:wght@300;400;500;600&display=swap');

:root {
  --bg:#070706; --surface:#10100e; --surface-2:#171611; --line:rgba(216,183,93,.17);
  --gold:#d8b75d; --gold-light:#f0dda0; --text:#f1ede2; --muted:#979084; --danger:#e48676;
  --success:#7cc59a; --info:#66cbe9; --shadow:0 24px 70px rgba(0,0,0,.3); --radius:2px;
}
*{box-sizing:border-box}
html{color-scheme:dark;background:var(--bg)}
body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 85% 0,rgba(216,183,93,.08),transparent 30%),var(--bg);font-family:Montserrat,system-ui,sans-serif;font-size:14px}
button,input,select{font:inherit}button{cursor:pointer}.skip-link{position:fixed;z-index:100;left:1rem;top:1rem;padding:.75rem 1rem;background:var(--gold-light);color:#080806;transform:translateY(-180%)}.skip-link:focus{transform:none}
[hidden]{display:none!important}.muted{color:var(--muted)}.eyebrow{margin:0 0 .4rem;color:var(--gold);font-size:.62rem;letter-spacing:.26em;text-transform:uppercase}.form-error{min-height:1.2em;color:var(--danger);font-size:.8rem}.form-message{min-height:1.2em;color:var(--muted);font-size:.78rem}

.login-shell{min-height:100vh;display:grid;place-items:center;padding:2rem;background:linear-gradient(135deg,rgba(0,0,0,.9),rgba(11,10,7,.86)),radial-gradient(circle at 50% 25%,rgba(216,183,93,.18),transparent 28%)}
.login-panel{width:min(100%,29rem);display:grid;gap:2rem;padding:clamp(2rem,7vw,4rem);border:1px solid var(--line);background:rgba(10,10,8,.86);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.brand-lockup{display:grid;justify-items:center;gap:.35rem;color:var(--gold);font-family:Cinzel,serif}.brand-lockup span{font-size:.55rem;letter-spacing:.31em}.brand-lockup strong{font-size:4.5rem;font-weight:400;line-height:.9;letter-spacing:.08em}.brand-lockup small{font-family:Montserrat,sans-serif;font-size:.55rem;letter-spacing:.45em}
.login-panel h1{margin:.25rem 0;font:500 clamp(1.4rem,4vw,2rem)/1.3 Cinzel,serif}.login-panel .muted{margin:.6rem 0 0;line-height:1.6}

.form-stack{display:grid;gap:1rem}.form-stack label,.inline-form label,.cart-panel label,.dialog-form label{display:grid;gap:.42rem;color:var(--muted);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
input,select{width:100%;min-height:2.75rem;border:1px solid rgba(216,183,93,.18);border-radius:var(--radius);padding:.68rem .8rem;color:var(--text);background:#0c0c0a;outline:none;transition:border-color .2s,box-shadow .2s}
input:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,183,93,.09)}
.button{min-height:2.65rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--line);border-radius:var(--radius);padding:.65rem 1rem;color:var(--text);background:transparent;font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:transform .2s,border-color .2s,background .2s}.button:hover,.button:focus-visible{transform:translateY(-1px);border-color:var(--gold)}.button:disabled{cursor:not-allowed;opacity:.4;transform:none}.button--primary{border-color:var(--gold);color:#151207;background:linear-gradient(135deg,#f0dda0,#c89d38)}.button--ghost{color:var(--gold-light);background:rgba(216,183,93,.03)}.text-button{border:0;padding:0;color:var(--gold);background:none;font-size:.7rem}.icon-button{width:2.7rem;height:2.7rem;border:1px solid var(--line);color:var(--gold);background:transparent}.status-pill,.badge{display:inline-flex;align-items:center;width:max-content;border:1px solid var(--line);padding:.4rem .65rem;color:var(--muted);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase}.badge--success{color:var(--success);border-color:rgba(124,197,154,.25)}.badge--danger{color:var(--danger);border-color:rgba(228,134,118,.25)}.badge--gold{color:var(--gold-light)}

.app-shell{min-height:100vh;display:grid;grid-template-columns:15.5rem minmax(0,1fr);grid-template-rows:5rem minmax(0,1fr);grid-template-areas:"sidebar topbar" "sidebar content"}
.sidebar{grid-area:sidebar;position:fixed;z-index:30;inset:0 auto 0 0;width:15.5rem;display:flex;flex-direction:column;padding:1.7rem 1rem;border-right:1px solid var(--line);background:rgba(8,8,7,.96);box-shadow:16px 0 60px rgba(0,0,0,.2)}
.sidebar-brand{display:flex;align-items:baseline;gap:.7rem;padding:0 .8rem 1.5rem}.sidebar-brand strong{color:var(--gold-light);font:400 1.7rem Cinzel,serif;letter-spacing:.12em}.sidebar-brand span{color:var(--muted);font-size:.48rem;letter-spacing:.28em}
.sidebar nav{display:grid;gap:.3rem}.sidebar nav button{display:grid;grid-template-columns:1.5rem 1fr;align-items:center;width:100%;border:1px solid transparent;padding:.75rem .8rem;color:#aaa395;background:none;text-align:left;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.sidebar nav button>span{color:#736a58;font-size:1rem}.sidebar nav button:hover,.sidebar nav button[aria-current="page"]{border-color:var(--line);color:var(--gold-light);background:linear-gradient(90deg,rgba(216,183,93,.09),transparent)}.sidebar nav button[aria-current="page"]>span{color:var(--gold)}
.sidebar-user{display:grid;gap:.3rem;margin-top:auto;padding:1rem .8rem 0;border-top:1px solid var(--line)}.sidebar-user>span{font-size:.75rem}.sidebar-user small{margin-bottom:.6rem;color:var(--muted);font-size:.55rem;letter-spacing:.13em;text-transform:uppercase}.sidebar-user .text-button{text-align:left}
.topbar{grid-area:topbar;position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;border-bottom:1px solid var(--line);background:rgba(7,7,6,.88);backdrop-filter:blur(16px)}.topbar h1{margin:0;font:500 1.15rem Cinzel,serif}.topbar .eyebrow{margin-bottom:.15rem}.topbar .icon-button{display:none}.live-status{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.live-status>span:first-child{width:.45rem;height:.45rem;border-radius:50%;background:var(--success);box-shadow:0 0 12px var(--success)}
.workspace{grid-area:content;width:100%;max-width:1500px;margin:0 auto;padding:2rem;outline:none}.page-section{display:grid;gap:1.4rem;animation:page-in .25s ease}.section-heading{min-height:3rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.section-heading h2{margin:0;font:500 clamp(1.3rem,3vw,2rem) Cinzel,serif}.panel{border:1px solid var(--line);background:linear-gradient(150deg,rgba(19,18,14,.95),rgba(11,11,9,.96));box-shadow:0 16px 45px rgba(0,0,0,.15)}.panel-heading{min-height:3.3rem;display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid var(--line)}.panel-heading h3{margin:0;color:var(--gold-light);font:500 .75rem Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.kpi{min-height:7.5rem;display:flex;flex-direction:column;justify-content:space-between;padding:1rem;border:1px solid var(--line);background:linear-gradient(145deg,rgba(216,183,93,.07),rgba(15,15,12,.96))}.kpi small{color:var(--muted);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}.kpi strong{color:var(--gold-light);font:400 1.7rem Cinzel,serif}.kpi span{color:#70695d;font-size:.65rem}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(18rem,1fr);gap:1rem}.split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.list-state{display:grid;gap:.1rem;padding:.8rem}.list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.75rem .4rem;border-bottom:1px solid rgba(216,183,93,.09)}.list-row:last-child{border:0}.list-row strong{font-size:.75rem}.list-row small{display:block;margin-top:.25rem;color:var(--muted)}.empty-state{padding:2rem;color:var(--muted);text-align:center;line-height:1.7}.metric-list{display:grid;gap:.8rem;padding:1rem}.metric-row{display:flex;justify-content:space-between;padding-bottom:.7rem;border-bottom:1px solid rgba(216,183,93,.09)}.metric-row span{color:var(--muted);text-transform:capitalize}.metric-row strong{color:var(--gold-light)}

.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 23rem;gap:1rem;align-items:start}.catalog-tools,.table-tools,.filter-row{display:flex;align-items:center;gap:.7rem;padding:1rem}.catalog-tools input{flex:1}.catalog-tools select{width:13rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.65rem;padding:0 1rem 1rem}.product-card{min-height:7.7rem;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(216,183,93,.15);padding:.8rem;color:var(--text);background:#0d0d0b;text-align:left}.product-card:hover,.product-card:focus-visible{border-color:var(--gold);background:rgba(216,183,93,.06)}.product-card small{color:var(--muted);font-size:.55rem;letter-spacing:.08em;text-transform:uppercase}.product-card strong{font-size:.75rem}.product-card span{color:var(--gold-light);font:500 .95rem Cinzel,serif}.product-card:disabled{opacity:.4}.cart-panel{position:sticky;top:6.4rem;padding-bottom:1rem}.cart-lines{min-height:12rem;max-height:30vh;overflow:auto;padding:.5rem 1rem}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.6rem;align-items:center;padding:.65rem 0;border-bottom:1px solid rgba(216,183,93,.1)}.cart-line strong{font-size:.7rem}.quantity-control{display:flex;align-items:center;gap:.5rem}.quantity-control button{width:1.6rem;height:1.6rem;border:1px solid var(--line);color:var(--gold);background:none}.cart-totals{display:grid;gap:.6rem;padding:1rem;border-top:1px solid var(--line)}.cart-totals>div{display:flex;justify-content:space-between;color:var(--muted)}.cart-totals .cart-total{padding-top:.7rem;border-top:1px solid var(--line);color:var(--text);font-size:1rem}.cart-total strong{color:var(--gold-light);font:500 1.35rem Cinzel,serif}.cart-panel>label,.cart-panel>.button,.cart-panel>.form-message{margin:.7rem 1rem 0}

.heading-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}.inline-form{display:grid;grid-template-columns:repeat(4,minmax(10rem,1fr));gap:1rem;padding:1rem}.wide-field{grid-column:1/-1}.recipe-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem;color:var(--muted);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.recipe-rows{display:grid;gap:.6rem}.recipe-row{display:grid;grid-template-columns:minmax(12rem,1fr) 10rem auto;gap:.6rem;align-items:end}.recipe-row .text-button{min-height:2.75rem;padding:.5rem;color:var(--danger)}.form-actions{display:flex;align-items:end;gap:.6rem}.table-panel{min-width:0}.table-tools{justify-content:space-between}.table-tools input{max-width:20rem}.table-tools span{color:var(--muted);font-size:.7rem}.table-scroll{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:.8rem 1rem;border-bottom:1px solid rgba(216,183,93,.09);text-align:left}th{color:#6f685b;background:rgba(0,0,0,.18);font-size:.55rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}td{font-size:.7rem}tbody tr:hover{background:rgba(216,183,93,.025)}td strong{color:var(--gold-light)}.table-action{border:0;color:var(--gold);background:none;font-size:.65rem}.filter-row{padding:0}.filter-row input,.filter-row select{width:auto;min-width:9rem}.clock-card{display:grid;gap:1rem;place-items:center;padding:2rem}.clock-time{color:var(--gold-light);font:400 2rem Cinzel,serif}.clock-card .button{min-width:10rem}

dialog{width:min(92vw,30rem);border:1px solid var(--line);padding:0;color:var(--text);background:#11110e;box-shadow:var(--shadow)}dialog::backdrop{background:rgba(0,0,0,.75);backdrop-filter:blur(5px)}.dialog-form{display:grid;gap:1rem;padding:1.5rem}.dialog-form h2{margin:.2rem 0;font:500 1.35rem Cinzel,serif}.toast{position:fixed;z-index:100;right:1.5rem;bottom:1.5rem;max-width:24rem;padding:.9rem 1rem;border:1px solid var(--gold);color:var(--gold-light);background:#11100c;box-shadow:var(--shadow);opacity:0;transform:translateY(1rem);pointer-events:none;transition:.25s}.toast.is-visible{opacity:1;transform:none}.toast.is-error{border-color:var(--danger);color:#ffc3b9}

@keyframes page-in{from{opacity:0;transform:translateY(5px)}}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.pos-layout{grid-template-columns:1fr}.cart-panel{position:static}.inline-form{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{transform:translateX(-102%);transition:transform .25s}.sidebar.is-open{transform:none}.topbar{height:4.6rem;padding:0 1rem}.topbar .icon-button{display:block}.live-status{display:none}.workspace{padding:1rem}.section-heading{align-items:flex-start;flex-direction:column}.heading-actions{justify-content:flex-start}.dashboard-grid,.split-grid{grid-template-columns:1fr}.filter-row{width:100%;flex-wrap:wrap}.filter-row input,.filter-row select{flex:1}.product-grid{grid-template-columns:repeat(2,1fr)}.inline-form{grid-template-columns:1fr}.wide-field{grid-column:auto}.recipe-row{grid-template-columns:1fr}.pos-layout{display:block}.cart-panel{margin-top:1rem}}
@media(max-width:480px){.login-shell{padding:0}.login-panel{min-height:100vh;border:0}.kpi-grid{grid-template-columns:1fr}.catalog-tools{flex-direction:column}.catalog-tools select{width:100%}.product-grid{grid-template-columns:1fr 1fr;padding-inline:.7rem}.workspace{padding:.8rem}.panel-heading,.table-tools{padding-inline:.75rem}.topbar h1{font-size:1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
