@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Syne:wght@600;700;800&family=DM+Mono:wght@400;500&display=swap";:root{--bg:#f8fafc;--surface:#fff;--border:#e2e8f0;--border-strong:#cbd5e1;--text:#0f172a;--text-muted:#64748b;--text-light:#94a3b8;--primary:#b8ff35;--primary-dark:#95e018;--primary-light:#eeffd0;--primary-lime-ink:#2c5400;--ff-display:"Syne", "Inter", system-ui, sans-serif;--ff-mono:"DM Mono", ui-monospace, monospace;--success:#16a34a;--success-bg:#dcfce7;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--radius:8px;--radius-lg:12px;--shadow:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000d;--shadow-lg:0 10px 25px #00000014, 0 4px 10px #0000000d}[data-theme=dark]{--bg:#0f172a;--surface:#1e293b;--border:#334155;--border-strong:#475569;--text:#f1f5f9;--text-muted:#94a3b8;--text-light:#64748b;--primary:#8fd400;--primary-dark:#78b300;--primary-light:#1a2e00;--success:#4ade80;--success-bg:#052e16;--warning:#fcd34d;--warning-bg:#2d1b00;--danger:#f87171;--danger-bg:#2d0707;--shadow:0 1px 3px #0006, 0 1px 2px #0000004d;--shadow-md:0 4px 6px #0000004d, 0 2px 4px #00000040;--shadow-lg:0 10px 25px #0006, 0 4px 10px #0000004d}[data-theme=dark] .auth-page{background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#0f172a 100%)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif}#root{flex-direction:column;min-height:100vh;display:flex}.loading-screen{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{background:linear-gradient(135deg,#eef2ff 0%,#f8fafc 50%,#f0fdf4 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-lg);padding:40px}.auth-logo{text-align:center;margin-bottom:28px}.auth-logo-mark{background:var(--primary);border-radius:var(--radius);justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:12px;font-size:22px;display:inline-flex}.auth-logo h1{letter-spacing:-.5px;font-size:20px;font-weight:800}.auth-logo h1 em{color:var(--primary);font-style:normal}.auth-title{text-align:center;margin-bottom:4px;font-size:18px;font-weight:700}.auth-subtitle{text-align:center;color:var(--text-muted);margin-bottom:28px;font-size:13px;line-height:1.5}.auth-form{flex-direction:column;gap:14px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text);font-size:13px;font-weight:500}.form-group input,.form-group select{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);background:var(--surface);outline:none;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #b8ff3533}.form-group input::placeholder{color:var(--text-light)}.form-hint{color:var(--text-muted);font-size:12px}.form-hint code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-family:Courier New,monospace;font-size:11px}.btn-primary{background:var(--primary);color:#0a0a0a;border-radius:var(--radius);cursor:pointer;border:none;width:100%;padding:11px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s,transform .1s}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-primary:active:not(:disabled){transform:scale(.99)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.auth-switch{text-align:center;color:var(--text-muted);margin-top:20px;font-size:13px}.auth-switch button{color:var(--primary);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:600;text-decoration:underline}.auth-error{background:var(--danger-bg);color:var(--danger);border-radius:var(--radius);padding:10px 14px;font-size:13px;line-height:1.5}.setup-page{background:linear-gradient(135deg,#eef2ff 0%,#f8fafc 50%,#f0fdf4 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.setup-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:540px;box-shadow:var(--shadow-lg);padding:40px}.setup-brand{align-items:center;gap:10px;margin-bottom:28px;display:flex}.setup-brand-mark{background:var(--primary);border-radius:var(--radius);justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.setup-brand span{letter-spacing:-.3px;font-size:16px;font-weight:800}.setup-brand span em{color:var(--primary);font-style:normal}.setup-progress{gap:6px;margin-bottom:28px;display:flex}.progress-step{background:var(--border);border-radius:2px;flex:1;height:4px;transition:background .3s}.progress-step.active{background:var(--primary)}.progress-step.done{background:var(--success)}.setup-step-label{text-transform:uppercase;letter-spacing:.8px;color:var(--primary);margin-bottom:6px;font-size:11px;font-weight:700}.setup-title{letter-spacing:-.5px;margin-bottom:6px;font-size:22px;font-weight:800}.setup-subtitle{color:var(--text-muted);margin-bottom:28px;font-size:14px;line-height:1.6}.setup-form{flex-direction:column;gap:16px;display:flex}.setup-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.btn-ghost{color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:0 0;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.btn-ghost:hover{background:var(--bg);color:var(--text);border-color:var(--border-strong)}.display-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.display-option{border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;padding:20px 16px;transition:all .15s}.display-option:hover,.display-option.selected{border-color:var(--primary);background:var(--primary-light)}.display-option .d-icon{margin-bottom:10px;font-size:32px}.display-option .d-label{color:var(--text);margin-bottom:4px;font-size:14px;font-weight:700}.display-option .d-desc{color:var(--text-muted);font-size:12px;line-height:1.5}.info-box{background:var(--primary-light);border-radius:var(--radius);border:1px solid #b8ff3566;margin-bottom:20px;padding:14px 16px}.info-box p{color:#3a6600;font-size:13px;line-height:1.6}.info-box strong{font-weight:600}.info-box code{color:#3a6600;word-break:break-all;background:#b8ff3533;border-radius:4px;padding:2px 7px;font-family:Courier New,monospace;font-size:12px;font-weight:600}.success-icon{text-align:center;margin-bottom:16px;font-size:56px}.success-title{text-align:center;margin-bottom:8px;font-size:22px;font-weight:800}.success-text{color:var(--text-muted);text-align:center;margin-bottom:28px;font-size:14px;line-height:1.6}.kitchen-url-box{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:14px 16px;display:flex}.kitchen-url-box code{color:var(--text);word-break:break-all;flex:1;font-family:Courier New,monospace;font-size:13px}.btn-copy{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--text-muted);white-space:nowrap;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:all .15s}.btn-copy:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.dashboard{flex-direction:column;min-height:100vh;display:flex}.dash-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;height:58px;padding:0 24px;display:flex;position:sticky;top:0}.dash-header-left{align-items:center;gap:14px;display:flex}.dash-logo{font-family:var(--ff-display);letter-spacing:-.025em;font-size:18px;font-weight:800}.dash-logo em{color:var(--primary-dark);font-style:normal}.dash-separator{background:var(--border);width:1px;height:20px}.dash-restaurant{color:var(--text-muted);font-size:13px;font-weight:500}.live-badge{background:var(--success-bg);color:var(--success);text-transform:uppercase;letter-spacing:.4px;border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:700;display:flex}.live-dot{background:var(--success);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.dash-header-right{align-items:center;gap:10px;display:flex}.btn-settings{color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:0 0;min-height:42px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.btn-settings:hover{background:var(--bg);color:var(--text)}.btn-logout{color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:0 0;min-height:42px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.btn-logout:hover{background:var(--danger-bg);color:var(--danger);border-color:#fecaca}.dash-body{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:28px 24px}.stats-row{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px 22px}.stat-label{font-family:var(--ff-mono);color:var(--text-muted);text-transform:uppercase;letter-spacing:.18em;margin-bottom:10px;font-size:10.5px;font-weight:500}.stat-value{font-family:var(--ff-display);color:var(--text);letter-spacing:-.025em;font-size:34px;font-weight:800;line-height:1}.stat-card.active-card{background:#fffbeb;border-color:#d977064d}.stat-card.active-card .stat-value{color:var(--warning)}.stat-card.revenue-card{background:var(--primary-light);border-color:#4f46e54d}.stat-card.revenue-card .stat-value{color:var(--primary)}.section-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.section-title{font-family:var(--ff-display);color:var(--text);letter-spacing:-.015em;font-size:18px;font-weight:700}.count-badge{background:var(--border);color:var(--text-muted);border-radius:20px;padding:2px 9px;font-size:12px;font-weight:700}.count-badge.has-items{background:var(--warning-bg);color:var(--warning)}.orders-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:36px;display:grid}.order-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:box-shadow .2s,transform .2s;overflow:hidden}.order-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.order-accent{background:var(--warning);height:4px}.order-accent.preparing{background:var(--primary)}.order-accent.done{background:var(--success)}.order-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px 12px;display:flex}.order-id{letter-spacing:-.3px;font-size:16px;font-weight:800}.order-meta{align-items:center;gap:8px;display:flex}.order-time{color:var(--text-muted);font-size:11px}.badge{letter-spacing:.5px;text-transform:uppercase;border-radius:20px;padding:3px 9px;font-size:10px;font-weight:800}.badge-pending{background:var(--warning-bg);color:var(--warning)}.badge-preparing{background:var(--primary-light);color:var(--primary)}.badge-done{background:var(--success-bg);color:var(--success)}.badge-refunded{color:#dc2626;background:#fee2e2}.order-items-list{padding:12px 16px}.order-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:5px 0;font-size:13px;display:flex}.order-item:last-child{border-bottom:none}.item-qty{color:var(--text-muted);margin-right:6px}.item-name{color:var(--text);flex:1}.item-price{color:var(--text-muted);font-size:12px}.order-card-foot{border-top:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.order-total{color:var(--text);font-size:14px;font-weight:800}.order-btns{gap:8px;display:flex}.btn-sm{border-radius:var(--radius);cursor:pointer;border:none;min-height:48px;padding:12px 22px;font-family:inherit;font-size:15px;font-weight:600;transition:all .15s}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.btn-accept{background:var(--primary);color:#0a0a0a}.btn-accept:hover:not(:disabled){background:var(--primary-dark)}.btn-ready{background:var(--success);color:#fff}.btn-ready:hover:not(:disabled){background:#15803d}.btn-refund{background:var(--danger-bg);color:var(--danger);border:1px solid #fecaca}.btn-refund:hover:not(:disabled){background:#fee2e2}.empty-state{text-align:center;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);margin-bottom:32px;padding:48px 24px;font-size:14px}.empty-icon{margin-bottom:10px;font-size:32px}.empty-state p{line-height:1.6}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:480px;max-height:90vh;box-shadow:var(--shadow-lg);padding:32px;overflow-y:auto}.modal-title{margin-bottom:6px;font-size:18px;font-weight:700}.modal-subtitle{color:var(--text-muted);margin-bottom:24px;font-size:13px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.modal-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:0;margin-bottom:24px;display:flex}.modal-tabs button{white-space:nowrap}.menu-item-grid{grid-template-columns:40px 1fr 80px auto;align-items:center;gap:6px;display:grid}.menu-item-desc{grid-column:1/3}.menu-item-stock{grid-column:3/-1}@media (width<=900px){.stats-row{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.stats-row{grid-template-columns:repeat(2,1fr)}.dash-body{padding:16px}.orders-grid{grid-template-columns:1fr}.dash-header{height:54px;padding:0 12px}.dash-restaurant,.dash-separator{display:none}.dash-header-right{-webkit-overflow-scrolling:touch;gap:6px;overflow-x:auto}.btn-settings{padding:8px 10px;font-size:13px}.btn-logout{display:none}.order-card-foot{flex-direction:column;align-items:stretch;gap:10px}.order-btns{flex-direction:column;gap:8px}.btn-sm{width:100%;min-height:52px;padding:14px 20px;font-size:16px}.modal-overlay{align-items:flex-end;padding:0}.modal-card{-webkit-overflow-scrolling:touch;border-radius:20px 20px 0 0;max-width:100%;max-height:92vh;padding:20px 16px 0;overflow-y:auto}.modal-title{font-size:15px;line-height:1.3}.modal-actions{background:var(--surface);border-top:1px solid var(--border);justify-content:stretch;gap:10px;margin-top:16px;padding:12px 0 28px;display:flex;position:sticky;bottom:0}.modal-actions .btn-ghost{flex:1}.modal-actions .btn-primary{flex:2}.menu-item-grid{grid-template-columns:36px 1fr 65px auto}}.delivery-card{border-radius:var(--radius);background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border:1.5px solid #f59e0b;margin-bottom:16px;padding:16px}.delivery-card-header{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.delivery-card-icon{font-size:28px}.delivery-card-title{font-size:15px;font-weight:700}.delivery-card-sub{color:var(--text-muted);margin-top:2px;font-size:13px}.delivery-card-items{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.delivery-card-item{background:#fff9;border-radius:6px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:13px;display:flex}.delivery-card-actions{gap:8px;display:flex}@media (width<=768px){.restaurants-controls{gap:8px!important}.restaurants-controls>*{width:100%!important}.restaurants-controls select{min-width:0!important}.restaurant-row .rr-inner{flex-direction:column;align-items:stretch!important;gap:12px!important}.restaurant-row .rr-stats{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;padding-top:10px;text-align:left!important;gap:10px!important;display:grid!important}.restaurant-row .rr-stats>div{text-align:left!important}.restaurant-row .rr-btn-primary{width:100%;padding:12px 16px!important;font-size:14px!important}}@media (width<=480px){.dash-body{padding:14px 12px!important}.restaurant-row{padding:12px 14px!important}}.splash-screen{z-index:9000;cursor:pointer;background:#040404;flex-direction:column;justify-content:center;align-items:center;transition:opacity .45s cubic-bezier(.16,1,.3,1),filter .45s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;inset:0;overflow:hidden}.splash-screen.is-hiding{opacity:0;filter:blur(8px);pointer-events:none}.splash-aura{opacity:0;pointer-events:none;background:radial-gradient(circle,#b8ff351f 0%,#0000 55%);animation:1.6s cubic-bezier(.16,1,.3,1) .3s forwards splashAura;position:absolute;inset:0}@keyframes splashAura{0%{opacity:0;transform:scale(.6)}60%{opacity:1}to{opacity:.85;transform:scale(1.1)}}.splash-logo{font-family:var(--ff-display,"Syne", sans-serif);letter-spacing:-.04em;color:#fff;z-index:2;align-items:baseline;gap:0;font-size:clamp(56px,11vw,120px);font-weight:800;line-height:1;display:flex;position:relative}.splash-logo .l-web{opacity:0;animation:.75s cubic-bezier(.16,1,.3,1) .1s forwards splashLetterIn}.splash-logo .l-404{color:#b8ff35;opacity:0;animation:.75s cubic-bezier(.16,1,.3,1) .3s forwards splashLetterIn}@keyframes splashLetterIn{0%{opacity:0;filter:blur(10px);transform:translateY(40px)scale(.85)}60%{filter:blur()}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.splash-pip{opacity:0;background:#b8ff35;border-radius:50%;align-self:flex-end;width:14px;height:14px;margin-bottom:.18em;margin-left:10px;animation:.45s cubic-bezier(.16,1,.3,1) .75s forwards splashPipIn,1.4s 1.2s infinite splashPipPulse;transform:scale(0)}@keyframes splashPipIn{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}@keyframes splashPipPulse{0%,to{box-shadow:0 0 14px #b8ff35}50%{box-shadow:0 0 38px #b8ff35,0 0 60px #b8ff3566}}.splash-tag{font-family:var(--ff-mono,monospace);letter-spacing:.42em;text-transform:uppercase;color:#ffffff94;opacity:0;z-index:2;margin-top:32px;font-size:clamp(10px,1vw,12px);animation:.6s cubic-bezier(.16,1,.3,1) 1s forwards splashFadeUp;position:relative;transform:translateY(8px)}.splash-line{z-index:2;background:linear-gradient(90deg,#0000,#b8ff35,#0000);width:0;height:1px;margin-top:18px;animation:.7s cubic-bezier(.16,1,.3,1) 1.2s forwards splashLineGrow;position:relative}@keyframes splashFadeUp{to{opacity:1;transform:translateY(0)}}@keyframes splashLineGrow{to{width:90px}}.splash-skip{font-family:var(--ff-mono,monospace);letter-spacing:.3em;text-transform:uppercase;color:#ffffff40;opacity:0;font-size:10px;animation:.6s 1.5s forwards splashFadeUp;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.auth-page.auth-page-entered .auth-card{animation:.55s cubic-bezier(.16,1,.3,1) both cardSlideIn}@keyframes cardSlideIn{0%{opacity:0;filter:blur(6px);transform:translateY(24px)scale(.96)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.splash-screen,.splash-logo .l-web,.splash-logo .l-404,.splash-pip,.splash-tag,.splash-line,.splash-skip,.splash-aura,.auth-page.auth-page-entered .auth-card{opacity:1!important;filter:none!important;animation:none!important;transform:none!important}.splash-line{width:90px}}
