:root{font-family:'DM Sans',system-ui,sans-serif;color:#f5efe4;background:#17191a;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4,.brand-name,.metric-value{font-family:Outfit,system-ui,sans-serif}#app{min-height:100vh}.shell{max-width:1500px;margin:auto;padding:0 34px 50px}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #343638;gap:20px}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand-icon{width:46px;height:46px;border:1px solid #8d482c;background:#321e18;border-radius:15px;display:grid;place-items:center;box-shadow:0 0 30px #ff7a2e20}.brand-icon img{width:28px;height:28px}.brand-name{font-size:20px;font-weight:800;letter-spacing:.02em;white-space:nowrap}.brand-sub{font-size:10px;color:#a4a5a4;letter-spacing:.21em;font-weight:800;margin-top:2px}.top-actions{display:flex;align-items:center;gap:14px;color:#b1b3b1;font-size:12px}.online{display:flex;align-items:center;gap:7px}.online:before{content:'';width:7px;height:7px;background:#75c28e;border-radius:50%;box-shadow:0 0 8px #75c28e}.logout{border:1px solid #414344;background:transparent;color:#ded8ce;padding:8px 12px;border-radius:10px}.hero{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:37px 0 27px}.eyebrow{color:#ff9c5e;letter-spacing:.17em;font-size:11px;font-weight:800;text-transform:uppercase;margin-bottom:8px}.hero h1{font-size:clamp(29px,3vw,41px);line-height:1.08;margin:0 0 7px;font-weight:700}.muted{color:#a5a8a7}.hero p{color:#a5a8a7;margin:0;font-size:14px}.primary,.secondary,.ghost,.danger{border:0;border-radius:12px;font-weight:700;min-height:42px;padding:0 17px;transition:transform .15s,background .15s}.primary:hover,.secondary:hover,.ghost:hover{transform:translateY(-1px)}.primary{background:#ff7a2e;color:#1b1714;box-shadow:0 8px 25px #ff7a2e24}.primary:hover{background:#ff9552}.secondary{background:#303437;color:#f5efe4;border:1px solid #45494a}.ghost{background:transparent;color:#f4ede3;border:1px solid #444748}.danger{background:#512b2b;color:#ffcbc4}.small{min-height:34px;padding:0 11px;font-size:12px}.wide{width:100%}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 28px}.metric{min-height:116px;background:#212426;border:1px solid #34383a;border-radius:18px;padding:19px 22px;position:relative;overflow:hidden}.metric.featured{background:linear-gradient(110deg,#39261e,#2c2522 62%,#302521);border-color:#7b482e}.metric-label{color:#aaa9a5;font-size:12px;font-weight:700;margin-bottom:12px}.metric-value{font-size:29px;font-weight:700;line-height:1}.metric-detail{color:#a5a8a7;font-size:11px;margin-top:9px}.metric-mark{position:absolute;right:18px;top:16px;font-size:22px;color:#ff8e48;opacity:.75}.tabs{display:flex;align-items:center;gap:6px;border-bottom:1px solid #34383a;margin-bottom:24px}.tab{background:transparent;border:0;color:#9fa2a1;padding:13px 20px 16px;font-size:13px;font-weight:800;position:relative}.tab.active{color:#ff9d5e}.tab.active:after{content:'';position:absolute;bottom:-1px;left:12px;right:12px;height:2px;background:#ff7a2e;border-radius:2px}.panel-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(450px,1.35fr);gap:20px;align-items:start}.panel{background:#212426;border:1px solid #34383a;border-radius:18px;overflow:hidden}.panel-head{padding:21px 22px;border-bottom:1px solid #333739;display:flex;justify-content:space-between;gap:12px;align-items:center}.panel-head h2{font-size:19px;margin:0}.panel-head p{font-size:12px;color:#9ea1a0;margin:5px 0 0}.panel-body{padding:20px 22px}.search{position:relative;margin:18px 20px 0}.search input{padding-left:36px!important}.search-icon{position:absolute;left:13px;top:11px;color:#8f9695}.filters{display:flex;gap:7px;padding:15px 20px 7px;overflow-x:auto}.chip{border:1px solid #3d4243;border-radius:100px;background:#292d2f;color:#b9bdbc;padding:7px 12px;font-size:11px;font-weight:700;white-space:nowrap}.chip.active{background:#513322;border-color:#9b5930;color:#ffb47d}.order-list{padding:8px 12px 14px;max-height:540px;overflow:auto}.order-card{width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:13px;padding:14px;display:flex;justify-content:space-between;gap:10px;color:#f3eee5;margin-bottom:5px}.order-card:hover{background:#2a2e30}.order-card.selected{background:#302d2b;border-color:#95532c}.order-card strong{font-family:Outfit;font-size:15px}.order-meta{color:#9fa4a2;font-size:11px;margin-top:5px}.order-amount{font-family:Outfit;font-size:16px;font-weight:700;text-align:right;white-space:nowrap}.badge{display:inline-flex;align-items:center;border-radius:50px;padding:5px 8px;font-size:10px;font-weight:800;letter-spacing:.02em}.badge.open{background:#284235;color:#9ae1af}.badge.awaiting_payment{background:#51402c;color:#f8c77a}.badge.closed{background:#3c3d40;color:#c4c5c6}.detail-top{display:flex;justify-content:space-between;align-items:start;gap:10px}.detail-top h2{font-size:23px;margin:0 0 6px}.detail-top .muted{font-size:12px}.detail-actions{display:flex;flex-wrap:wrap;gap:8px;padding:18px 22px;border-bottom:1px solid #333739}.section-title{font-family:Outfit;font-weight:700;font-size:15px;margin:0 0 12px}.items{display:grid;gap:9px}.item{background:#292d2f;border:1px solid #3a3f40;border-radius:12px;padding:13px}.item-main{display:flex;justify-content:space-between;gap:10px}.item-name{font-size:13px;font-weight:800}.item-note{color:#aaaead;font-size:11px;margin-top:3px}.item-price{font-size:13px;font-weight:800;white-space:nowrap}.item-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:11px}.stepper{display:flex;align-items:center;gap:8px}.stepper button{width:27px;height:27px;border:1px solid #4c5051;border-radius:8px;background:#353a3b;color:#fff;font-weight:800}.stepper span{font-size:12px;min-width:18px;text-align:center}.text-btn{border:0;background:none;color:#ffad82;font-size:11px;font-weight:700;padding:3px}.strike{text-decoration:line-through;color:#949897}.divider{height:1px;background:#373b3d;margin:20px 0}.total-row{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-family:Outfit;font-size:19px;font-weight:700}.add-grid{display:grid;grid-template-columns:1fr 80px;gap:9px}.field,.select,.textarea{background:#191c1d;border:1px solid #414648;color:#f7f0e8;border-radius:10px;padding:11px 12px;outline:0;min-width:0;width:100%}.field:focus,.select:focus,.textarea:focus{border-color:#ff9253;box-shadow:0 0 0 3px #ff7a2e1c}.field::placeholder,.textarea::placeholder{color:#777e7d}.textarea{resize:vertical;min-height:68px}.field-label{display:block;font-size:11px;font-weight:800;color:#b8b9b6;margin:0 0 6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-stack{display:grid;gap:14px}.form-actions{display:flex;gap:9px;margin-top:16px}.empty{text-align:center;padding:35px 15px;color:#aaaead}.empty-icon{font-size:35px;margin-bottom:8px}.empty h3{color:#f1ebe1;margin-bottom:6px}.empty p{font-size:12px}.hint{font-size:11px;color:#9ca29f;line-height:1.5}.warning{background:#483728;border:1px solid #8a5c35;color:#ffd7ac;padding:11px 13px;border-radius:10px;font-size:11px;line-height:1.45}.catalog{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.product{border:1px solid #3a3f40;border-radius:13px;background:#292d2f;padding:16px;display:flex;flex-direction:column;gap:12px}.product-category{text-transform:uppercase;letter-spacing:.12em;color:#ff985b;font-size:10px;font-weight:800}.product h3{font-size:16px;margin:2px 0 0}.product-footer{display:flex;justify-content:space-between;align-items:center}.product-price{font-family:Outfit;font-size:20px;font-weight:700}.product-actions{display:flex;gap:9px}.cash-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.method-list{display:grid;gap:10px}.method-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #333739;font-size:13px}.method-row b{font-family:Outfit}.history-list{max-height:440px;overflow:auto}.history-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #34383a;padding:13px 0}.history-row:last-child{border:0}.history-row strong{font-size:13px}.history-row small{display:block;color:#9ba1a0;margin-top:4px}.payment-line{display:grid;grid-template-columns:1.15fr .8fr .8fr auto;gap:7px;align-items:end;margin-bottom:8px}.payment-line label{font-size:10px;color:#aeb2b0;font-weight:700}.payment-line .field,.payment-line .select{padding:9px}.payment-total{display:flex;justify-content:space-between;font-size:13px;padding:10px 0}.dialog-backdrop{position:fixed;inset:0;background:#000b;z-index:20;display:grid;place-items:center;padding:16px}.dialog{width:min(100%,510px);max-height:92vh;overflow:auto;background:#24282a;border:1px solid #5a4c43;border-radius:20px;box-shadow:0 20px 80px #0009;padding:25px}.dialog h2{font-size:24px;margin:0 0 6px}.dialog .muted{font-size:12px;margin-bottom:20px}.dialog-footer{display:flex;justify-content:end;gap:9px;margin-top:20px}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 70% 5%,#4b2b1d 0,transparent 36%),#17191a}.auth-card{width:min(100%,420px);background:#24282a;border:1px solid #4a4d4d;border-radius:22px;padding:30px;box-shadow:0 25px 70px #0005}.auth-card .brand{margin-bottom:30px}.auth-card h1{font-size:27px;margin-bottom:7px}.auth-card p{font-size:13px;color:#aeb3b1;line-height:1.5}.auth-card form{margin-top:25px}.auth-card .primary{margin-top:9px}.print-overlay{position:fixed;inset:0;background:#000d;z-index:30;display:grid;place-items:center;padding:16px}.print-wrap{width:min(100%,440px);max-height:95vh;overflow:auto}.print-toolbar{background:#262a2b;border:1px solid #515455;border-radius:15px 15px 0 0;padding:13px;display:flex;gap:7px;flex-wrap:wrap}.receipt{background:#fff;color:#111;padding:22px;width:100%;font:13px/1.45 'Courier New',monospace}.receipt h2{text-align:center;font:bold 19px/1.2 'Courier New',monospace;margin:0 0 8px}.receipt .center{text-align:center}.receipt hr{border:0;border-top:1px dashed #111;margin:12px 0}.receipt-line{display:flex;justify-content:space-between;gap:12px}.receipt-line b{white-space:nowrap}.receipt small{font-size:11px}.receipt .big{font-size:18px;font-weight:bold}.install-hint{margin-top:12px;text-align:center;font-size:11px;color:#a5aaa8}#toast{position:fixed;bottom:20px;right:20px;max-width:min(400px,calc(100vw - 30px));z-index:40;pointer-events:none}.toast{padding:12px 16px;border-radius:12px;background:#334339;border:1px solid #6aab7c;color:#eef8ef;box-shadow:0 10px 30px #0006;font-size:12px}.toast.error{background:#512d2a;border-color:#b46a59;color:#ffe4dc}
.auth-hint{margin-top:17px}.cancel-warning{margin-top:13px}.cash-total{font-size:36px;margin-bottom:23px}.cash-hint{margin-top:15px}.filters{scrollbar-width:none}.filters::-webkit-scrollbar{display:none}
@media(max-width:900px){.shell{padding:0 16px 35px}.panel-grid,.cash-grid{grid-template-columns:1fr}.topbar{height:72px}.hero{padding-top:25px}.metrics{gap:8px}.metric{padding:16px;min-height:106px}.order-list{max-height:260px}}
@media(max-width:570px){.brand-name{font-size:16px}.brand-sub{font-size:8px}.brand-icon{width:40px;height:40px}.top-actions .online,.top-actions .username{display:none}.hero{align-items:start}.hero h1{font-size:28px}.hero p{font-size:12px}.hero .primary{font-size:11px;padding:0 10px;min-height:38px}.metrics{grid-template-columns:repeat(3,1fr)}.metric{padding:11px;min-height:92px;border-radius:13px}.metric-label{font-size:10px;margin-bottom:8px}.metric-value{font-size:21px}.metric-detail{font-size:9px}.metric-mark{display:none}.tabs{justify-content:space-between}.tab{padding:12px 11px 14px}.panel-head,.panel-body{padding:16px}.detail-actions{padding:14px 16px}.form-row{grid-template-columns:1fr}.payment-line{grid-template-columns:1fr 1fr}.payment-line .text-btn{align-self:center}}
@media print{@page{size:58mm auto;margin:2mm}html,body{background:#fff!important;width:58mm!important;margin:0!important;padding:0!important}#app>#app-content,.print-toolbar,.install-hint,#toast{display:none!important}.print-overlay{position:static;display:block;background:#fff;padding:0}.print-wrap{width:54mm;max-height:none;overflow:visible}.receipt{width:54mm;padding:0;font-size:10px}.receipt h2{font-size:13px}.receipt .big{font-size:14px}}
.tabs{overflow-x:auto;scrollbar-width:thin}.tab{flex:none;white-space:nowrap}.history-row{align-items:center}.history-row .primary{flex:none}
@media(max-width:570px){.tabs{justify-content:flex-start}.tab{font-size:12px}.history-row .primary{font-size:11px}}
