:root{--primary:#7c3aed;--secondary:#22c55e;--bg:#f6f7fb;--card:#fff;--text:#111827;--muted:#6b7280;--danger:#ef4444;--warn:#f59e0b;--info:#3b82f6;--radius:18px}
*{box-sizing:border-box} body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)} a{text-decoration:none;color:inherit}
.layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.side{background:#111827;color:white;padding:22px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.logo{width:44px;height:44px;border-radius:14px;background:#7c3aed url(../img/icone-bora.svg) center / 62% no-repeat;display:grid;place-items:center;font-weight:900;color:#fff}.brand small{color:#c7d2fe}.nav a{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:12px;color:#d1d5db;margin:3px 0;font-size:14px;font-weight:600}.nav a:hover,.nav a.active{background:rgba(255,255,255,.12);color:white}.nav a.active{box-shadow:inset 3px 0 0 var(--primary)}.navic{width:20px;text-align:center;flex:0 0 20px}.side{overflow-y:auto}.side::-webkit-scrollbar{width:6px}.side::-webkit-scrollbar-thumb{background:#374151;border-radius:8px}.main{padding:24px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.title h1{margin:0;font-size:28px}.title p{margin:4px 0;color:var(--muted)}.btn{border:0;padding:11px 15px;border-radius:12px;background:var(--primary);color:white;font-weight:700;cursor:pointer}.btn.secondary{background:#e5e7eb;color:#111827}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:var(--card);border-radius:var(--radius);padding:18px;box-shadow:0 8px 25px rgba(0,0,0,.06)}.kpi .num{font-size:30px;font-weight:900}.kpi .lbl{color:var(--muted);font-size:13px}.kpi.recebido{border-left:5px solid var(--info)}.kpi.preparo{border-left:5px solid var(--warn)}.kpi.entrega{border-left:5px solid #8b5cf6}.kpi.entregue{border-left:5px solid var(--secondary)}.row{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-top:16px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:12px;border-bottom:1px solid #eee}.badge{padding:6px 9px;border-radius:999px;font-size:12px;font-weight:800}.b-recebido{background:#dbeafe;color:#1d4ed8}.b-preparo{background:#fef3c7;color:#92400e}.b-pronto{background:#ede9fe;color:#5b21b6}.b-entrega{background:#fce7f3;color:#9d174d}.b-entregue{background:#dcfce7;color:#166534}.b-cancelado{background:#fee2e2;color:#991b1b}.form{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field label{font-size:13px;color:var(--muted);display:block;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:white;font-size:16px}.full{grid-column:1/-1}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan{border:2px solid transparent}.plan.featured{border-color:var(--primary);transform:translateY(-4px)}.price{font-size:32px;font-weight:900}.theme-preview{height:110px;border-radius:16px;background:linear-gradient(135deg,var(--primary),var(--secondary));margin-top:10px}.mobile-only{display:none}
@media(max-width:900px){
  .layout{display:block}
  .grid,.row,.plans,.form{grid-template-columns:1fr}
  .main{padding:16px 16px 84px}
  .mobile-only{display:block}
  /* sidebar vira barra de navegação inferior fixa */
  .side{position:fixed;left:0;right:0;bottom:0;top:auto;height:auto;width:100%;z-index:60;padding:6px 8px;box-shadow:0 -4px 16px rgba(0,0,0,.18)}
  .side .brand{display:none}
  .nav{display:flex;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .nav::-webkit-scrollbar{display:none}
  .nav a{flex:0 0 auto;margin:0;padding:9px 11px;font-size:12px;border-radius:10px;white-space:nowrap}
  .nav a.active{box-shadow:none;background:var(--primary);color:#fff}
  .navtx{display:none}.navic{font-size:18px}
}
/* ---- polish visual ---- */
.card{transition:box-shadow .15s, transform .15s}
.kpi{transition:transform .15s}
.kpi:hover{transform:translateY(-2px)}
.btn{transition:filter .12s, transform .08s}
.btn:hover{filter:brightness(1.07)}
.btn:active{transform:scale(.98)}
.table tbody tr{transition:background .1s}
.table tbody tr:hover{background:#f8fafc}
.table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#64748b}
.title h1{letter-spacing:-.02em}
.kancard{transition:transform .1s, box-shadow .12s}
.kancard:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.1)}
.plan{transition:transform .15s, box-shadow .15s}
.plan:hover{box-shadow:0 10px 30px rgba(0,0,0,.1)}
.kanban{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:start}
.kancol{background:#f1f5f9;border-radius:14px;padding:10px}
.kancol h3{font-size:13px;margin:4px 6px 10px;color:#475569;display:flex;justify-content:space-between;font-weight:800}
.kancol .cnt{background:#fff;border-radius:999px;padding:1px 8px;color:#475569}
.kancard{background:#fff;border-radius:12px;padding:10px;margin-bottom:8px;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.kancard .cod{font-weight:800}
.kancard .meta{font-size:12px;color:#64748b;margin:4px 0}
.kancard.atrasado{border:2px solid var(--danger)}
.kancard .alerta{color:var(--danger);font-size:12px;font-weight:700}
.kanbtns{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.kanbtns button{font-size:12px;padding:6px 9px;border:0;border-radius:8px;cursor:pointer;background:var(--primary);color:#fff}
.kanbtns button.ghost{background:#e5e7eb;color:#111827}
.itens-linha{display:flex;gap:8px;align-items:center;margin:6px 0}
.itens-linha .nome{flex:1}
@media(max-width:900px){.kanban{grid-template-columns:1fr}}

/* ===================== QUADRO DE PEDIDOS PREMIUM (v2) ===================== */
.board-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--card);border-radius:16px;padding:12px 14px;box-shadow:0 6px 20px rgba(0,0,0,.05);margin-bottom:16px}
.board-search{flex:1;min-width:220px;position:relative}
.board-search input{width:100%;padding:12px 14px 12px 40px;border:1px solid #e5e7eb;border-radius:12px;font-size:15px;background:#f8fafc}
.board-search input:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px rgba(124,58,237,.12)}
.board-search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#94a3b8}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:1px solid #e5e7eb;background:#fff;color:#475569;padding:9px 14px;border-radius:999px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:7px;transition:all .12s}
.chip:hover{border-color:var(--primary);color:var(--primary)}
.chip.active{background:var(--primary);border-color:var(--primary);color:#fff}
.chip .dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.6}
.live-dot{width:9px;height:9px;border-radius:50%;background:var(--secondary);box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.5)}70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
.live-tag{display:flex;align-items:center;gap:7px;font-size:12px;color:#64748b;font-weight:700}

.kboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}
.kcol{background:linear-gradient(180deg,#f1f5f9,#f8fafc);border-radius:16px;padding:0 0 8px;min-height:200px;border:1px solid #eef2f7}
.kcol-head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px;border-top:4px solid var(--col);border-radius:16px 16px 0 0}
.kcol-head .ttl{font-size:13px;font-weight:800;letter-spacing:.02em;color:#334155;display:flex;align-items:center;gap:8px;text-transform:uppercase}
.kcol-head .ttl .ic{width:22px;height:22px;border-radius:7px;background:var(--col);display:grid;place-items:center;color:#fff;font-size:12px}
.kcol-head .pill{background:var(--col);color:#fff;font-weight:800;font-size:13px;border-radius:999px;min-width:26px;height:24px;padding:0 8px;display:grid;place-items:center}
.kcol-body{padding:0 10px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 230px);overflow-y:auto}
.kcol-body::-webkit-scrollbar{width:6px}.kcol-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px}
.kcol-empty{color:#94a3b8;font-size:13px;text-align:center;padding:24px 8px;border:2px dashed #e2e8f0;border-radius:12px;margin:4px}

.kcard{background:#fff;border-radius:14px;padding:12px 13px;box-shadow:0 2px 8px rgba(15,23,42,.06);border-left:4px solid var(--col,#cbd5e1);position:relative;cursor:default}
.kcard:hover{box-shadow:0 8px 22px rgba(15,23,42,.13);transform:translateY(-2px)}
.kcard.late{border-left-color:var(--danger);background:linear-gradient(180deg,#fff5f5,#fff)}
.kcard-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.kcard .num{font-weight:900;font-size:15px;color:#0f172a}
.kcard .num small{color:#94a3b8;font-weight:700}
.kcard .clock{font-size:11px;font-weight:800;color:#64748b;background:#f1f5f9;border-radius:999px;padding:3px 8px;white-space:nowrap}
.kcard.late .clock{background:#fee2e2;color:#b91c1c}
.kcard .cli{font-weight:800;font-size:14px;margin:8px 0 2px;color:#1e293b}
.kcard .line{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;margin:3px 0}
.kcard .line svg{flex:0 0 14px;color:#94a3b8}
.kcard .itens{background:#f8fafc;border-radius:10px;padding:7px 9px;margin:9px 0;font-size:12px;color:#475569;line-height:1.55}
.kcard .itens b{color:#0f172a}
.kcard .obs{font-size:11.5px;color:#92400e;background:#fffbeb;border-radius:8px;padding:5px 8px;margin:6px 0}
.kcard-foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:9px;border-top:1px dashed #eef2f7}
.kcard .val{font-weight:900;font-size:15px;color:#0f172a}
.kcard .pay{font-size:11px;font-weight:700;color:#475569;background:#eef2ff;border-radius:999px;padding:3px 9px}
.kcard .late-tag{margin-top:8px;font-size:11.5px;font-weight:800;color:#b91c1c;display:flex;align-items:center;gap:5px}
.kacts{display:flex;gap:6px;margin-top:10px}
.kacts button{flex:1;font-size:12px;font-weight:800;padding:9px;border:0;border-radius:10px;cursor:pointer;transition:filter .1s,transform .06s;display:flex;align-items:center;justify-content:center;gap:5px}
.kacts button:hover{filter:brightness(1.06)}.kacts button:active{transform:scale(.97)}
.kacts .adv{background:var(--col);color:#fff}
.kacts .sec{flex:0 0 auto;background:#f1f5f9;color:#475569;padding:9px 11px}
.kacts .danger{flex:0 0 auto;background:#fef2f2;color:#dc2626;padding:9px 11px}

@media(max-width:1100px){.kboard{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.kboard{grid-template-columns:1fr}.kcol-body{max-height:none}}

/* ===================== DASHBOARD PREMIUM (v2) ===================== */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.statcard{background:var(--card);border-radius:16px;padding:18px;box-shadow:0 6px 20px rgba(15,23,42,.05);position:relative;overflow:hidden;transition:transform .15s,box-shadow .15s}
.statcard:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(15,23,42,.1)}
.statcard .ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:20px;margin-bottom:12px}
.statcard .v{font-size:28px;font-weight:900;letter-spacing:-.02em;color:#0f172a;line-height:1}
.statcard .l{color:var(--muted);font-size:13px;margin-top:6px}
.statcard .trend{position:absolute;top:16px;right:16px;font-size:12px;font-weight:800;padding:3px 8px;border-radius:999px}
.trend.up{background:#dcfce7;color:#166534}.trend.down{background:#fee2e2;color:#991b1b}.trend.flat{background:#f1f5f9;color:#475569}
.ico.money{background:#ecfdf5;color:#059669}.ico.cart{background:#eff6ff;color:#2563eb}.ico.ticket{background:#f5f3ff;color:#7c3aed}.ico.cancel{background:#fef2f2;color:#dc2626}

.oplive{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:var(--card);border-radius:16px;overflow:hidden;box-shadow:0 6px 20px rgba(15,23,42,.05);margin-top:16px}
.oplive .cell{padding:16px 18px;border-left:1px solid #f1f5f9;display:flex;align-items:center;gap:12px}
.oplive .cell:first-child{border-left:0}
.oplive .badge-ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:18px;color:#fff}
.oplive .n{font-size:22px;font-weight:900;color:#0f172a;line-height:1}
.oplive .t{font-size:12px;color:var(--muted)}

.panel{background:var(--card);border-radius:16px;padding:18px;box-shadow:0 6px 20px rgba(15,23,42,.05)}
.panel h2{margin:0 0 14px;font-size:16px}
.panel .sub{color:var(--muted);font-size:12px;font-weight:600;margin:-10px 0 14px}

/* bar chart por hora (CSS puro) */
.bars{display:flex;align-items:flex-end;gap:6px;height:150px;padding-top:8px}
.bars .b{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:100%}
.bars .b .fill{width:100%;max-width:26px;background:linear-gradient(180deg,#a78bfa,#7c3aed);border-radius:6px 6px 3px 3px;min-height:3px;transition:height .4s;position:relative}
.bars .b .fill:hover{filter:brightness(1.08)}
.bars .b .cap{font-size:10px;color:#94a3b8;font-weight:700}
.bars .b.peak .fill{background:linear-gradient(180deg,#34d399,#059669)}

/* breakdown por canal */
.chan{display:flex;flex-direction:column;gap:12px}
.chan .row2{display:flex;align-items:center;gap:10px}
.chan .nm{width:96px;font-size:13px;font-weight:700;color:#334155;display:flex;align-items:center;gap:6px}
.chan .track{flex:1;background:#f1f5f9;border-radius:999px;height:12px;overflow:hidden}
.chan .barfill{height:100%;border-radius:999px;background:linear-gradient(90deg,#7c3aed,#a78bfa)}
.chan .vl{width:84px;text-align:right;font-size:13px;font-weight:800;color:#0f172a}

/* top produtos */
.toplist{display:flex;flex-direction:column;gap:10px}
.topitem{display:flex;align-items:center;gap:12px}
.topitem .rk{width:26px;height:26px;border-radius:8px;background:#f5f3ff;color:#7c3aed;font-weight:900;display:grid;place-items:center;font-size:13px}
.topitem .rk.gold{background:#fef9c3;color:#a16207}
.topitem .nm{flex:1;font-size:13px;font-weight:700;color:#334155}
.topitem .qt{font-size:12px;font-weight:800;color:#64748b;background:#f1f5f9;border-radius:999px;padding:3px 9px}

@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.oplive{grid-template-columns:repeat(2,1fr)}.oplive .cell:nth-child(3){border-left:0}}
@media(max-width:900px){.kpis{grid-template-columns:1fr}.oplive{grid-template-columns:1fr}.oplive .cell{border-left:0;border-top:1px solid #f1f5f9}}

/* ===================== FRENTE DE CAIXA (PDV) ===================== */
.pdv{display:grid;grid-template-columns:1fr 380px;gap:16px;align-items:start}
.pdv-cats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.pdv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.prodtile{background:var(--card);border-radius:14px;padding:14px;box-shadow:0 4px 14px rgba(15,23,42,.06);cursor:pointer;border:2px solid transparent;transition:all .12s;text-align:left}
.prodtile:hover{border-color:var(--primary);transform:translateY(-2px)}
.prodtile .pn{font-weight:800;font-size:14px;color:#1e293b;line-height:1.3;min-height:36px}
.prodtile .pc{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px}
.prodtile .pp{font-weight:900;color:var(--primary);font-size:16px;margin-top:6px}
.cart{background:var(--card);border-radius:16px;box-shadow:0 6px 20px rgba(15,23,42,.06);position:sticky;top:16px;display:flex;flex-direction:column;max-height:calc(100vh - 32px)}
.cart h2{margin:0;padding:16px 18px;border-bottom:1px solid #f1f5f9;font-size:16px}
.cart-items{flex:1;overflow-y:auto;padding:8px 14px;min-height:120px}
.cart-empty{color:#94a3b8;text-align:center;padding:30px 10px;font-size:14px}
.citem{display:flex;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px dashed #f1f5f9}
.citem .cn{flex:1;font-size:13px;font-weight:700;color:#334155}
.citem .cn small{display:block;color:#94a3b8;font-weight:600}
.qty{display:flex;align-items:center;gap:8px}
.qty button{width:26px;height:26px;border:0;border-radius:8px;background:#f1f5f9;font-weight:900;cursor:pointer;color:#334155}
.qty button:hover{background:#e2e8f0}
.qty span{min-width:18px;text-align:center;font-weight:800}
.cart-foot{padding:16px 18px;border-top:1px solid #f1f5f9}
.cart-foot .ln{display:flex;justify-content:space-between;font-size:13px;color:#64748b;margin:4px 0}
.cart-foot .tot{display:flex;justify-content:space-between;font-size:22px;font-weight:900;color:#0f172a;margin:8px 0 14px}
.pays{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.pay-btn{border:2px solid #e5e7eb;background:#fff;border-radius:10px;padding:9px 4px;font-size:12px;font-weight:700;cursor:pointer;color:#475569}
.pay-btn.sel{border-color:var(--primary);background:#f5f3ff;color:var(--primary)}
.cart select{width:100%;padding:11px;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:12px;font-size:14px}
.btn-finish{width:100%;padding:15px;font-size:16px;font-weight:900;border:0;border-radius:12px;background:var(--secondary);color:#fff;cursor:pointer}
.btn-finish:hover{filter:brightness(1.06)}.btn-finish:disabled{opacity:.5;cursor:default}
@media(max-width:1000px){.pdv{grid-template-columns:1fr}.cart{position:static;max-height:none}}

/* ===================== KDS COZINHA (fullscreen dark) ===================== */
body.kds-mode{background:#0b1220;color:#e2e8f0}
.kds-wrap{padding:18px 22px;min-height:100vh}
.kds-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.kds-top h1{margin:0;font-size:24px;color:#fff;display:flex;align-items:center;gap:10px}
.kds-top .clock{font-size:18px;font-weight:800;color:#94a3b8}
.kds-top a{color:#94a3b8;border:1px solid #334155;padding:8px 14px;border-radius:10px;font-weight:700}
.kds-cols{display:grid;grid-template-columns:2fr 1fr;gap:16px}
.kds-col{background:#111c33;border-radius:16px;padding:14px}
.kds-col h2{margin:0 0 12px;font-size:15px;color:#cbd5e1;text-transform:uppercase;letter-spacing:.05em;display:flex;justify-content:space-between}
.kds-col h2 .c{background:#1e293b;border-radius:999px;padding:2px 12px;color:#e2e8f0}
.kds-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;align-content:start}
.kdscard{background:#0f1a30;border-radius:14px;padding:14px;border-top:5px solid #f59e0b;cursor:pointer;transition:transform .1s}
.kdscard:hover{transform:scale(1.02)}
.kdscard.warn{border-top-color:#fb923c}.kdscard.late{border-top-color:#ef4444;animation:kpulse 1.4s infinite}
@keyframes kpulse{50%{box-shadow:0 0 0 4px rgba(239,68,68,.25)}}
.kdscard .kh{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.kdscard .kcod{font-size:18px;font-weight:900;color:#fff}
.kdscard .ktime{font-size:20px;font-weight:900;color:#fbbf24}
.kdscard.late .ktime{color:#fca5a5}
.kdscard .kcli{font-size:12px;color:#94a3b8;margin-bottom:8px}
.kdscard ul{margin:0;padding:0;list-style:none}
.kdscard li{font-size:15px;color:#e2e8f0;padding:3px 0;font-weight:600}
.kdscard li b{color:#fbbf24;margin-right:4px}
.kdscard .kgo{margin-top:10px;text-align:center;font-size:12px;font-weight:800;color:#34d399;text-transform:uppercase}
.kds-col.ready .kdscard{border-top-color:#22c55e}.kds-col.ready .ktime{color:#86efac}
@media(max-width:900px){.kds-cols{grid-template-columns:1fr}}

/* ===================== CARDÁPIO DIGITAL (público) ===================== */
.menu-wrap{max-width:680px;margin:0 auto;padding:0 0 120px}
.menu-hero{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;padding:38px 22px 26px;border-radius:0 0 26px 26px;text-align:center}
.menu-hero .lg{width:70px;height:70px;border-radius:20px;background:rgba(255,255,255,.2);margin:0 auto 12px;display:grid;place-items:center;font-size:34px}
.menu-hero h1{margin:0;font-size:26px}
.menu-hero p{margin:6px 0 0;opacity:.9;font-size:14px}
.menu-cat{padding:22px 18px 4px}
.menu-cat h3{margin:0 0 10px;font-size:17px;color:#0f172a;border-left:4px solid var(--primary);padding-left:10px}
.menu-item{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:14px;margin:0 18px 10px;box-shadow:0 3px 12px rgba(15,23,42,.05)}
.menu-item .mi{flex:1}.menu-item .mn{font-weight:800;color:#1e293b}.menu-item .mp{color:var(--secondary);font-weight:800;margin-top:3px}
.menu-item .madd{width:40px;height:40px;border:0;border-radius:12px;background:var(--primary);color:#fff;font-size:22px;font-weight:700;cursor:pointer}
.menu-bar{position:fixed;left:0;right:0;bottom:0;background:#fff;box-shadow:0 -6px 22px rgba(0,0,0,.12);padding:14px 18px;display:flex;align-items:center;gap:14px;max-width:680px;margin:0 auto}
.menu-bar .info{flex:1}.menu-bar .ct{font-weight:900;font-size:18px}.menu-bar .cs{font-size:12px;color:#64748b}
.menu-bar .send{background:#25d366;color:#fff;border:0;border-radius:12px;padding:14px 18px;font-weight:900;font-size:15px;cursor:pointer}
.menu-bar.hidden{display:none}

/* ===================== CARDÁPIO QR (admin) ===================== */
.qrbox{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:center}
.qrbox img{width:240px;height:240px;border-radius:16px;border:1px solid #e5e7eb;background:#fff;padding:8px}
.linkrow{display:flex;gap:8px;margin:12px 0}
.linkrow input{flex:1;padding:11px;border:1px solid #e5e7eb;border-radius:10px;font-size:13px;background:#f8fafc}
@media(max-width:700px){.qrbox{grid-template-columns:1fr;justify-items:center;text-align:center}}

/* ===================== CRM / FIDELIDADE ===================== */
.seg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}
.segcard{background:var(--card);border-radius:16px;padding:18px;box-shadow:0 6px 20px rgba(15,23,42,.05);border-top:4px solid var(--c)}
.segcard .sv{font-size:30px;font-weight:900;color:#0f172a}.segcard .sl{color:var(--muted);font-size:13px;margin-top:4px}
.cashtag{font-weight:800;color:#059669;background:#ecfdf5;border-radius:999px;padding:3px 9px;font-size:12px}
@media(max-width:900px){.seg{grid-template-columns:1fr}}

/* ===================== CANAIS / ENTREGADORES ===================== */
.canalbadge{display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:13px}
.canalbadge .cd{width:10px;height:10px;border-radius:3px}
.champ{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#111827,#1f2937);color:#fff;border-radius:18px;padding:20px 24px;margin-bottom:18px}
.champ .big{font-size:40px}
.champ .l{font-size:13px;color:#cbd5e1;text-transform:uppercase;letter-spacing:.05em}
.champ .n{font-size:24px;font-weight:900}
.champ .r{margin-left:auto;text-align:right}
.share-track{flex:1;background:#f1f5f9;border-radius:999px;height:14px;overflow:hidden}
.share-fill{height:100%;border-radius:999px}
.moto{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #f1f5f9}
.moto .av{width:42px;height:42px;border-radius:12px;background:#f5f3ff;display:grid;place-items:center;font-size:20px}
.moto .nm{flex:1}.moto .nm b{display:block;color:#1e293b}.moto .nm small{color:#94a3b8}
.moto .st{font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px}
.st.on{background:#dcfce7;color:#166534}.st.off{background:#fee2e2;color:#991b1b}
.linkbtns{display:flex;gap:6px}
.linkbtns button{border:0;background:#f1f5f9;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:12px;font-weight:700;color:#475569}
.linkbtns button:hover{background:#e2e8f0}

/* ===================== INTEGRAÇÕES / MARKETPLACES ===================== */
.intgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.intcard{background:var(--card);border-radius:16px;box-shadow:0 6px 20px rgba(15,23,42,.06);overflow:hidden;border-top:5px solid var(--c,#94a3b8)}
.intcard .ih{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #f1f5f9}
.intcard .logo-mp{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:24px;background:var(--c,#eef2ff)}
.intcard .ih .nm{flex:1}.intcard .ih .nm b{font-size:16px}.intcard .ih .nm small{color:#94a3b8;display:block}
.intstatus{font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px}
.is-CONECTADO{background:#dcfce7;color:#166534}.is-PRONTO{background:#fef3c7;color:#92400e}.is-DESCONECTADO{background:#f1f5f9;color:#64748b}.is-ERRO{background:#fee2e2;color:#991b1b}
.intbody{padding:16px 18px;display:none}.intbody.open{display:block}
.intbody .field{margin-bottom:12px}
.intbody label{font-size:12px;color:var(--muted);display:block;margin-bottom:5px;font-weight:600}
.intbody input{width:100%;padding:10px;border:1px solid #e5e7eb;border-radius:10px;font-size:13px}
.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer}
.switch{width:46px;height:26px;border-radius:999px;background:#cbd5e1;position:relative;transition:background .15s;flex:0 0 46px}
.switch.on{background:var(--secondary)}
.switch::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}
.switch.on::after{left:23px}
.webhook-box{background:#f8fafc;border-radius:10px;padding:10px;margin-top:8px}
.webhook-box .wl{display:flex;gap:6px}.webhook-box input{font-size:11px;background:#fff}
.intfoot{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.intmini{font-size:12px;color:#64748b;padding:8px 18px 14px;display:flex;gap:14px;border-top:1px dashed #f1f5f9}
.intmini b{color:#0f172a}
@media(max-width:900px){.intgrid{grid-template-columns:1fr}}

/* ===================== TOASTS (alerta de pedido novo) ===================== */
#boraToasts{position:fixed;top:18px;right:18px;z-index:9999;display:flex;flex-direction:column;gap:10px}
.btoast{background:#0f172a;color:#fff;padding:14px 18px;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.25);font-weight:700;font-size:14px;min-width:240px;max-width:340px;opacity:0;transform:translateX(40px);transition:all .3s;border-left:5px solid var(--secondary)}
.btoast.show{opacity:1;transform:translateX(0)}
.btoast.novo{border-left-color:#22c55e}.btoast small{display:block;font-weight:600;color:#cbd5e1;margin-top:3px}
@media(max-width:900px){#boraToasts{left:12px;right:12px;top:12px}.btoast{max-width:none}}

/* aceite/recusa nos cards do quadro */
.kacts .ok{background:#22c55e;color:#fff}.kacts .no{background:#fef2f2;color:#dc2626;flex:0 0 auto;padding:9px 11px}
.kacts .prt{background:#f1f5f9;color:#475569;flex:0 0 auto;padding:9px 11px}
.kcard .canaltag{position:absolute;top:10px;right:10px;font-size:10px;font-weight:800;padding:2px 7px;border-radius:999px;background:#f1f5f9;color:#475569}

/* Conexao oficial com marketplace (iFood, 99Food): o app e da plataforma e o lojista so autoriza. */
.oficial-box{border-radius:10px;padding:14px 16px;margin-bottom:14px;font-size:14px;line-height:1.55}
.oficial-box b{display:block;margin-bottom:4px}
.oficial-box p{margin:4px 0}
.oficial-box.passo{background:#f5f3ff;border:1px solid #ddd6fe;color:#4c1d95}
.oficial-box.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}
.oficial-box.aviso{background:#fef3c7;border:1px solid #fde68a;color:#92400e}
.oficial-box .err{color:#b91c1c;font-size:13px}
.oficial-box .usercode{font-family:ui-monospace,monospace;font-size:26px;font-weight:800;letter-spacing:.16em;
  background:#fff;border:1px dashed #a78bfa;border-radius:10px;padding:12px;text-align:center;margin:8px 0}
.oficial-box a{color:#6d28d9;font-weight:600}
