:root, [data-theme="light"] {
  --bg:#fafafa; --surface:#fff; --surface-2:#f4f4f5;
  --border:#e4e4e7; --border-hover:#d4d4d8;
  --text:#18181b; --text-muted:#71717a; --text-dim:#a1a1aa;
  --accent:#ea580c; --accent-soft:#fff7ed; --accent-border:#fed7aa; --accent-hover:#c2410c;
  --ok:#16a34a; --ok-soft:#dcfce7;
  --warn:#ea580c; --warn-soft:#fff7ed;
  --danger:#dc2626; --danger-soft:#fee2e2;
  --status-pendente-bg:#f4f4f5;   --status-pendente-fg:#52525b;
  --status-produzindo-bg:#dbeafe; --status-produzindo-fg:#1d4ed8;
  --status-em_rota-bg:#ede9fe;    --status-em_rota-fg:#6d28d9;
  --pm-pendente-bg:#f4f4f5;   --pm-pendente-fg:#52525b;
  --pm-dinheiro-bg:#dcfce7;   --pm-dinheiro-fg:#166534;
  --pm-debito-bg:#dbeafe;     --pm-debito-fg:#1d4ed8;
  --pm-credito-bg:#fae8ff;    --pm-credito-fg:#86198f;
  --flash-ok-bg:#dcfce7;   --flash-ok-fg:#14532d;   --flash-ok-border:#bbf7d0;
  --flash-warn-bg:#fff7ed; --flash-warn-fg:#9a3412; --flash-warn-border:#fed7aa;
  --flash-err-bg:#fee2e2;  --flash-err-fg:#7f1d1d;  --flash-err-border:#fecaca;
  --shadow:0 4px 12px rgba(0,0,0,0.06);
  --row-deleted-bg:#fafafa;
}
[data-theme="dark"] {
  --bg:#0a0a0a; --surface:#141414; --surface-2:#1c1c1c;
  --border:#27272a; --border-hover:#3f3f46;
  --text:#fafafa; --text-muted:#a1a1aa; --text-dim:#71717a;
  --accent:#fb923c; --accent-soft:#2a1a0f; --accent-border:#7c2d12; --accent-hover:#f97316;
  --ok:#4ade80; --ok-soft:#052e16;
  --warn:#fb923c; --warn-soft:#2a1a0f;
  --danger:#f87171; --danger-soft:#2a0a0a;
  --status-pendente-bg:#27272a;   --status-pendente-fg:#a1a1aa;
  --status-produzindo-bg:#172554; --status-produzindo-fg:#93c5fd;
  --status-em_rota-bg:#2e1065;    --status-em_rota-fg:#c4b5fd;
  --pm-pendente-bg:#27272a;   --pm-pendente-fg:#a1a1aa;
  --pm-dinheiro-bg:#052e16;   --pm-dinheiro-fg:#86efac;
  --pm-debito-bg:#172554;     --pm-debito-fg:#93c5fd;
  --pm-credito-bg:#3b0764;    --pm-credito-fg:#e9d5ff;
  --flash-ok-bg:#052e16;   --flash-ok-fg:#86efac;   --flash-ok-border:#14532d;
  --flash-warn-bg:#2a1a0f; --flash-warn-fg:#fdba74; --flash-warn-border:#7c2d12;
  --flash-err-bg:#2a0a0a;  --flash-err-fg:#fca5a5;  --flash-err-border:#7f1d1d;
  --shadow:0 4px 12px rgba(0,0,0,0.4);
  --row-deleted-bg:#0f0f0f;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
     background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;
     transition:background-color 0.15s,color 0.15s}

.topbar{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}
.topbar-inner{max-width:1180px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:24px}
.brand{font-weight:700;font-size:15px;letter-spacing:-0.01em;white-space:nowrap}
.brand span{color:var(--text-muted);font-weight:500;font-size:12px;margin-left:6px}
.nav{display:flex;gap:2px;flex-wrap:wrap;flex:1}
.nav a{padding:6px 12px;border-radius:6px;color:var(--text-muted);text-decoration:none;font-weight:500;font-size:13px}
.nav a:hover{background:var(--surface-2);color:var(--text)}
.nav a.active{background:var(--surface-2);color:var(--text)}

.theme-toggle{
  width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
  background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer;
  font-size:15px;padding:0;color:var(--text-muted);transition:background-color 0.15s;
}
.theme-toggle:hover{background:var(--surface-2);color:var(--text)}
.theme-toggle .light-icon{display:inline}
.theme-toggle .dark-icon{display:none}
[data-theme="dark"] .theme-toggle .light-icon{display:none}
[data-theme="dark"] .theme-toggle .dark-icon{display:inline}

.container{max-width:1180px;margin:0 auto;padding:24px}
.page-title{margin-bottom:24px}
.page-title h1{margin:0 0 4px;font-size:22px;letter-spacing:-0.02em}
.muted{color:var(--text-muted)}
.small{font-size:12px}
.positive{color:var(--ok)}
.negative{color:var(--danger)}

.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px;margin-bottom:16px}
.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.section-title{font-size:13px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);margin:0 0 14px;font-weight:600}

.grid{display:grid;gap:12px;margin-bottom:16px}
.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.stat{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px}
.stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.04em;font-weight:600;margin-bottom:6px}
.stat-value{font-size:22px;font-weight:700;letter-spacing:-0.02em}
.stat-hint{font-size:12px;color:var(--text-dim);margin-top:2px}

.form-row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.form-row.inline-edit{padding:10px;background:var(--surface-2);border-radius:8px}
.field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-muted)}
.field.grow{flex:1;min-width:200px}
.field.full{width:100%}
.field.inline{flex-direction:row;align-items:center;gap:8px}
.field span{font-weight:600;text-transform:uppercase;letter-spacing:0.03em}
input,select,button{font:inherit;font-size:14px;padding:7px 10px;border-radius:6px;
                    border:1px solid var(--border);background:var(--surface);color:var(--text)}
input:focus,select:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}
.qty{width:100px}
.check{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--text-muted);cursor:pointer}
.check input{width:auto;padding:0}

.btn{background:var(--accent);color:#fff;border:none;font-weight:600;cursor:pointer;padding:8px 16px;border-radius:6px}
.btn:hover{background:var(--accent-hover)}
.btn.ghost{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}
.btn.ghost:hover{background:var(--border-hover)}
.small-btn{padding:5px 10px;font-size:12px}
.btn-icon{display:inline-flex;align-items:center;padding:4px 9px;font-size:12px;font-weight:600;
          background:transparent;border:1px solid var(--border);border-radius:5px;
          color:var(--text-muted);text-decoration:none;cursor:pointer;transition:all 0.1s}
.btn-icon:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-hover)}
.btn-icon.danger{color:var(--danger)}
.btn-icon.danger:hover{background:var(--danger-soft);border-color:var(--danger)}
.btn-icon.restore{color:var(--ok)}
.btn-icon.restore:hover{background:var(--ok-soft);border-color:var(--ok)}

.table{width:100%;border-collapse:collapse;font-size:13px}
.table th,.table td{padding:10px 8px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}
.table th{font-size:11px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);font-weight:600}
.table tbody tr:last-child td{border-bottom:none}
.table .right{text-align:right}
.table.compact th,.table.compact td{padding:6px 8px}
.row-cancelled td{color:var(--text-dim);text-decoration:line-through}
.row-deleted{opacity:0.55}
.row-deleted td{background:var(--row-deleted-bg)}
.actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.actions form.inline{display:inline}
form.inline{display:inline;margin:0}

.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;vertical-align:middle}
.badge.ok{background:var(--ok-soft);color:var(--ok)}
.badge.warn{background:var(--warn-soft);color:var(--warn)}
.badge.red{background:var(--danger-soft);color:var(--danger)}

.status{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:6px;
        font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em}
.status::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.status.pendente{background:var(--status-pendente-bg);color:var(--status-pendente-fg)}
.status.produzindo{background:var(--status-produzindo-bg);color:var(--status-produzindo-fg)}
.status.em_rota{background:var(--status-em_rota-bg);color:var(--status-em_rota-fg)}
.status.entregue{background:var(--ok-soft);color:var(--ok)}
.status.cancelado{background:var(--danger-soft);color:var(--danger)}

.payment{display:inline-flex;align-items:center;padding:2px 9px;border-radius:6px;
         font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em}
.payment.pendente{background:var(--pm-pendente-bg);color:var(--pm-pendente-fg)}
.payment.dinheiro{background:var(--pm-dinheiro-bg);color:var(--pm-dinheiro-fg)}
.payment.debito{background:var(--pm-debito-bg);color:var(--pm-debito-fg)}
.payment.credito{background:var(--pm-credito-bg);color:var(--pm-credito-fg)}

.pay-bar-row{display:grid;grid-template-columns:1fr 2fr auto;gap:14px;align-items:center;margin-bottom:10px}
.pay-bar-label{display:flex;flex-direction:column;gap:2px}
.pay-bar{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}
.pay-bar-fill{height:100%;border-radius:999px;transition:width 0.3s}
.pay-bar-fill.pm-pendente{background:var(--pm-pendente-fg)}
.pay-bar-fill.pm-dinheiro{background:var(--pm-dinheiro-fg)}
.pay-bar-fill.pm-debito{background:var(--pm-debito-fg)}
.pay-bar-fill.pm-credito{background:var(--pm-credito-fg)}
.pay-bar-pct{font-size:14px;min-width:60px;text-align:right}

.alert-low{background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--warn);
           border-radius:10px;padding:14px 18px;margin-bottom:16px;
           display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.alert-low strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:6px;color:var(--accent)}
.low-list{margin:0;padding-left:18px;font-size:13px}
.low-list li{margin:2px 0}
.flash{padding:12px 16px;border-radius:8px;margin-bottom:12px;font-weight:500;font-size:13px}
.flash.ok{background:var(--flash-ok-bg);color:var(--flash-ok-fg);border:1px solid var(--flash-ok-border)}
.flash.warn{background:var(--flash-warn-bg);color:var(--flash-warn-fg);border:1px solid var(--flash-warn-border)}
.flash.err{background:var(--flash-err-bg);color:var(--flash-err-fg);border:1px solid var(--flash-err-border)}

.tabs{display:flex;gap:4px;margin-bottom:16px;flex-wrap:wrap;border-bottom:1px solid var(--border)}
.tab{padding:8px 14px;border-radius:6px 6px 0 0;color:var(--text-muted);text-decoration:none;
     font-size:13px;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px}
.tab:hover{color:var(--text);background:var(--surface-2)}
.tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.tab-count{background:var(--surface-2);color:var(--text-muted);border-radius:999px;
           padding:1px 7px;font-size:11px;margin-left:4px;font-weight:600}
.tab.active .tab-count{background:var(--accent-soft);color:var(--accent)}

.meal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-bottom:16px}
.meal-card{margin-bottom:0}
.meal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;flex-wrap:wrap}
.meal-head h3{margin:0;font-size:15px}
.price{font-weight:700;color:var(--ok);font-size:15px;white-space:nowrap}
.meal-foot{margin:12px 0 8px}
.ficha{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.ing{background:var(--surface-2);border:1px solid var(--border);padding:2px 9px;border-radius:999px;
     font-size:12px;color:var(--text-muted)}
.ing.low{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}
.ing.out{border-color:var(--danger-soft);color:var(--danger);background:var(--danger-soft)}
.removals{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:8px;padding-top:10px;border-top:1px solid var(--border)}
.removals.addons-pick .check b{color:var(--ok);font-weight:600}
.cost-bar{display:flex;gap:16px;padding-top:12px;margin-top:12px;border-top:1px solid var(--border);font-size:13px}

.addons-block{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.addons-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);margin-bottom:8px}
.addons-list{list-style:none;margin:0 0 8px;padding:0}
.addons-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;
                padding:4px 0;font-size:13px}
.addons-list li > span{flex:1}
.addon-form{display: flex; flex-direction: column; align-items: start; justify-content: center;}
.row{display: flex; flex-direction: row;}
@media (max-width:600px){.addon-form{grid-template-columns:1fr 1fr}}

.status-picker{display:flex;gap:4px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.status-btn{padding:6px 12px;border-radius:6px;border:1px solid var(--border);background:var(--surface);
            color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;transition:all 0.12s}
.status-btn:hover:not(.active):not([disabled]){background:var(--surface-2);color:var(--text);border-color:var(--border-hover)}
.status-btn.active{cursor:default;border-color:transparent}
.status-btn.pendente.active{background:var(--status-pendente-bg);color:var(--status-pendente-fg)}
.status-btn.produzindo.active{background:var(--status-produzindo-bg);color:var(--status-produzindo-fg)}
.status-btn.em_rota.active{background:var(--status-em_rota-bg);color:var(--status-em_rota-fg)}
.status-btn.entregue.active{background:var(--ok-soft);color:var(--ok)}
.status-btn.cancelado.active{background:var(--danger-soft);color:var(--danger)}

.payment-change{display:flex;gap:8px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid var(--border);flex-wrap:wrap}
.payment-change select{max-width:160px}

.order-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;flex-wrap:wrap}
.order-head h3{margin:0 0 2px;font-size:15px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.order-numbers{display:flex;gap:20px;flex-wrap:wrap}
.order-numbers > div{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.order-card.cancelled{opacity:0.65}
.order-card.cancelled .price{text-decoration:line-through}

.status-row{display:flex;gap:8px;flex-wrap:wrap}
.status-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);
             border-radius:8px;text-decoration:none;color:var(--text);font-weight:600;font-size:13px}
.status-chip:hover{border-color:var(--border-hover);background:var(--surface-2)}

.empty{color:var(--text-muted);text-align:center;padding:24px 0;font-style:italic}
.sticky-bar{position:sticky;bottom:16px;display:flex;justify-content:flex-end;
            padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;
            box-shadow:var(--shadow)}

@media (max-width:720px){
  .topbar-inner{padding:12px 16px;flex-wrap:wrap;gap:12px}
  .nav{order:3;width:100%}
  .theme-toggle{margin-left:auto}
  .container{padding:16px}
  .order-numbers{width:100%;justify-content:space-between}
  .order-numbers > div{align-items:flex-start}
  .pay-bar-row{grid-template-columns:1fr auto}
  .pay-bar{grid-column:1 / -1;order:3}
}