:root{--bg: #0b0f14;--bg-elev: #131a22;--bg-elev-2: #1b232d;--border: #26313d;--border-strong: #35424f;--text: #eef2f6;--text-dim: #9aa8b6;--muted: #6b7885;--primary: #3b82f6;--primary-hover: #2f6fd6;--success: #22c55e;--success-hover: #1aa64f;--danger: #ef4444;--danger-hover: #dc2f2f;--warn: #f59e0b;--accent: #a855f7;--radius: 14px;--radius-sm: 10px;--shadow: 0 8px 24px rgba(0, 0, 0, .35);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .28);--tap: 48px;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.4}.muted{color:var(--muted)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:var(--radius-sm);min-height:var(--tap);padding:0 18px;font-size:15px;font-weight:700;color:var(--text);background:var(--bg-elev-2);cursor:pointer;transition:background .12s ease,transform .05s ease,box-shadow .12s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:default}.btn:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.btn-lg{min-height:56px;font-size:17px}.btn-primary{background:var(--primary);border-color:var(--primary)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-success{background:var(--success);border-color:var(--success);color:#05210f}.btn-success:hover:not(:disabled){background:var(--success-hover)}.btn-danger{background:var(--danger);border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn-muted{background:var(--bg-elev-2);border-color:var(--border);color:var(--text-dim)}.btn-ghost{background:transparent;border-color:var(--border-strong);color:var(--text-dim)}.btn-ghost:hover:not(:disabled){background:var(--bg-elev-2);color:var(--text)}.login-screen{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 50% -10%,#16202b 0%,var(--bg) 60%)}.login-card{width:100%;max-width:400px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;display:flex;flex-direction:column;gap:16px}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:4px}.login-logo{font-size:40px}.login-brand h1{margin:0;font-size:22px}.login-brand p{margin:2px 0 0;color:var(--text-dim);font-size:14px}.field{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--text-dim)}.field input{min-height:var(--tap);padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text);font-size:16px}.field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f640}.login-error{background:#ef44441f;border:1px solid rgba(239,68,68,.4);color:#fecaca;border-radius:var(--radius-sm);padding:10px 12px;font-size:14px}.login-hint{text-align:center;color:var(--muted);font-size:13px;margin:0}.splash{height:100%;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--text-dim)}.splash__logo{font-size:48px}.app{min-height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:20px;padding:12px 20px;background:var(--bg-elev);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20;flex-wrap:wrap}.topbar__brand{display:flex;align-items:center;gap:12px}.topbar__logo{font-size:30px}.topbar__title{display:flex;flex-direction:column;line-height:1.1}.topbar__title strong{font-size:18px}.topbar__subtitle{font-size:12px;color:var(--text-dim)}.topbar__right{margin-left:auto;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.metrics{display:flex;gap:10px;flex-wrap:wrap}.metric{display:flex;align-items:center;gap:10px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 14px;min-width:120px}.metric--highlight{border-color:#22c55e80;background:#22c55e14}.metric__icon{font-size:20px}.metric__body{display:flex;flex-direction:column;line-height:1.1}.metric__value{font-size:18px;font-weight:800}.metric__label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.calls-ticker{display:flex;flex-direction:column;gap:6px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;min-width:200px;max-width:360px}.calls-ticker__head{display:flex;align-items:center;gap:8px}.calls-ticker__head h3{margin:0;font-size:14px}.live-dot{width:10px;height:10px;border-radius:50%;background:var(--border-strong);flex:none}.live-dot--on{background:var(--danger);box-shadow:0 0 #ef444499;animation:pulse 1.4s infinite}@keyframes pulse{0%{box-shadow:0 0 #ef44448c}70%{box-shadow:0 0 0 8px #ef444400}to{box-shadow:0 0 #ef444400}}.calls-ticker__empty{font-size:13px;margin:0}.calls-ticker__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:140px;overflow-y:auto}.call-chip{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;border-radius:8px;background:var(--bg);border:1px solid var(--border);font-size:13px}.call-chip--active{border-color:#ef444473}.call-chip--ended{opacity:.55}.call-chip__phone{font-weight:700}.call-chip__state{color:var(--text-dim)}.main{flex:1;padding:16px 20px 32px;overflow:hidden}.board{display:flex;flex-direction:column;gap:14px;height:100%}.board__header{display:flex;align-items:center;gap:14px}.board__header h2{margin:0;font-size:20px;display:flex;align-items:center;gap:10px}.board__count{background:var(--primary);color:#fff;border-radius:999px;padding:2px 12px;font-size:15px}.board__tools{margin-left:auto;display:flex;gap:10px}.btn-silence{animation:blink 1s steps(2,start) infinite}@keyframes blink{50%{opacity:.6}}.board__error{background:#ef44441f;border:1px solid rgba(239,68,68,.4);color:#fecaca;padding:10px 14px;border-radius:var(--radius-sm)}.board__columns{display:grid;grid-template-columns:repeat(5,minmax(240px,1fr));gap:14px;flex:1;overflow-x:auto;align-items:start}.column{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;min-height:0;max-height:100%}.column__head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);position:sticky;top:0}.column__title{font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.03em}.column__count{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px;padding:1px 10px;font-size:13px;color:var(--text-dim)}.column__body{padding:12px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.column__empty{text-align:center;padding:20px 0;font-size:14px}.column--pending_acceptance .column__head{box-shadow:inset 4px 0 0 var(--warn)}.column--accepted .column__head{box-shadow:inset 4px 0 0 var(--primary)}.column--preparing .column__head{box-shadow:inset 4px 0 0 var(--accent)}.column--ready .column__head{box-shadow:inset 4px 0 0 var(--success)}.column--out_for_delivery .column__head{box-shadow:inset 4px 0 #38bdf8}.order-card{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-sm)}.order-card--new{border-color:var(--warn);box-shadow:0 0 0 2px #f59e0b40;animation:cardIn .35s ease}@keyframes cardIn{0%{transform:translateY(-6px);opacity:0}to{transform:none;opacity:1}}.order-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.order-card__number{font-size:20px;font-weight:900}.badge{font-size:12px;font-weight:700;border-radius:999px;padding:3px 10px;border:1px solid var(--border-strong);white-space:nowrap}.badge--channel{background:#a855f726;border-color:#a855f780;color:#e9d5ff}.order-card__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.badge--type{background:var(--bg)}.badge--delivery{border-color:#38bdf8;color:#bae6fd}.badge--pickup{border-color:var(--success);color:#bbf7d0}.order-card__eta{font-size:13px;color:var(--text-dim)}.order-card__customer{display:flex;flex-direction:column;line-height:1.2}.order-card__customer strong{font-size:15px}.order-card__customer .muted{font-size:13px}.order-card__toggle{align-self:flex-start;background:none;border:none;color:var(--primary);font-size:13px;font-weight:700;cursor:pointer;padding:2px 0}.order-card__items ul{list-style:none;margin:0;padding:6px 0;display:flex;flex-direction:column;gap:6px;border-top:1px dashed var(--border)}.order-item{display:grid;grid-template-columns:auto 1fr auto;gap:8px;font-size:14px;align-items:baseline}.order-item__qty{font-weight:800;color:var(--warn)}.order-item__name{display:flex;flex-direction:column}.order-item__mods{color:var(--text-dim);font-style:normal;font-size:12px}.order-item__note{color:var(--muted);font-size:12px}.order-item__price{color:var(--text-dim);font-variant-numeric:tabular-nums}.order-card__notes{margin:0;font-size:13px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);color:#fde68a;padding:6px 10px;border-radius:8px}.order-card__total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--border);padding-top:8px}.order-card__total span{color:var(--text-dim);font-size:13px;text-transform:uppercase;letter-spacing:.04em}.order-card__total strong{font-size:20px;font-variant-numeric:tabular-nums}.order-card__error{background:#ef44441f;border:1px solid rgba(239,68,68,.4);color:#fecaca;border-radius:8px;padding:6px 10px;font-size:13px}.order-card__actions{display:flex;gap:8px;flex-wrap:wrap}.order-card__actions .btn{flex:1 1 auto;min-height:46px;padding:0 12px}.order-card__closed{text-align:center;color:var(--text-dim);font-size:13px;font-weight:700;padding:4px 0}@media(max-width:1100px){.board__columns{grid-auto-flow:column;grid-auto-columns:260px;grid-template-columns:none}}@media(max-width:760px){.topbar{gap:12px}.topbar__right{width:100%;margin-left:0}.calls-ticker{max-width:none;flex:1}.metrics{order:3;width:100%}.metric{flex:1 1 100px;min-width:100px}.board__columns{grid-auto-columns:84vw}.main{padding:12px}}
