:root{
  /* Paleta “comida” (research: Figma/Canva/Spice Route) — tons quentes estimulam apetite;
     creme de fundo (vanilla), marrom-cacau no texto e verde-fresco como complemento do laranja. */
  --bg:#fff8f0;--surface:#ffffff;--surface-2:#fff1e2;--surface-3:#f7f0e8;
  --ink:#2a1c12;--muted:#6f6257;--border:#ead9c6;
  --brand:#d03f00;--brand-2:#ff9f1a;--brand-soft:#ffe9d6;
  --amber:#e8960a;--amber-ink:#4a2a00;
  --green:#0f7a50;--green-soft:#e9f8f1;--yellow:#ffc928;--red:#d93a32;
  --shadow:0 18px 50px rgba(69,38,20,.10);--shadow-sm:0 8px 24px rgba(69,38,20,.08);
  --r-lg:28px;--r-md:20px;--r-sm:14px;--max:1320px;
  --sidebar:260px;--topbar:76px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
button,a,.btn,.icon-btn,.cat-btn,.tabs button,.qty button,.add-btn,.fav,.num-pad button,.quick button,.chat-fab,.switch,.pos-card,.order-row,.chat-order,.bottom-nav a,.settings-nav button{touch-action:manipulation}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#dccfc4;border-radius:999px;border:3px solid transparent;background-clip:padding-box}
html{scrollbar-color:#dccfc4 transparent}
.container{width:min(calc(100% - 32px),var(--max));margin:auto}.muted{color:var(--muted)}.eyebrow{font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}.h1{font-size:clamp(2.5rem,6vw,5.5rem);line-height:.96;letter-spacing:-.055em;margin:.15em 0}.h2{font-size:clamp(1.8rem,3vw,3.1rem);line-height:1;letter-spacing:-.035em;margin:0}.h3{font-size:1.15rem;margin:0}.kicker{font-size:1.1rem;color:var(--muted);line-height:1.65}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:#fff;padding:9px 13px;border-radius:999px;font-size:.82rem;font-weight:800}.pill.good{background:var(--green-soft);border-color:#ccebdc;color:#16714d}.pill.brand{background:var(--brand-soft);border-color:#ffd8c0;color:#ba4200}.row{display:flex;align-items:center;gap:12px}.between{display:flex;align-items:center;justify-content:space-between;gap:16px}.stack{display:grid;gap:16px}
.btn{border:0;border-radius:14px;padding:13px 18px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.2s ease;min-height:46px}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.primary{background:var(--brand);color:#fff;box-shadow:0 9px 20px rgba(255,90,10,.24)}.btn.primary:hover{background:#b53800}.btn.primary:active{box-shadow:0 2px 8px rgba(255,90,10,.15)}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--border)}.btn.ghost{background:transparent;color:var(--ink)}.btn.dark{background:#211a16;color:#fff}.btn.full{width:100%}.btn.sm{padding:9px 12px;min-height:40px;font-size:.8rem}.icon-btn{width:44px;height:44px;border-radius:14px;border:1px solid var(--border);background:#fff;display:grid;place-items:center;font-size:1.05rem;transition:.2s}.icon-btn:hover{border-color:#ffc6a7;box-shadow:var(--shadow-sm)}.icon-btn:active{transform:scale(.94)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn.sm{width:38px;height:38px;border-radius:12px}.nav-burger{display:none}
[data-theme="dark"] .btn.secondary:disabled{opacity:.5}
[data-theme="dark"] .btn.primary:disabled{opacity:.55}
/* Alvos de toque: controles usados no dedo (carrinho/quantidade) ganham área maior no mobile */
@media(max-width:860px){.qty button{width:44px;height:44px}.fav{width:44px;height:44px}.add-btn{width:44px;height:44px;border-radius:14px}.icon-btn.sm,.side-collapse,.side-user .icon-btn,.dash-burger{width:44px;height:44px}.store-search button{width:44px;height:44px}.icon-btn{width:48px;height:48px}}
/* Feedback de press (toque): todos os controles clicáveis respondem fisicamente */
.cat-btn:active,.tabs button:active,.qty button:active,.add-btn:active,.fav:active,.num-pad button:active,.quick button:active,.chat-fab:active,.bottom-nav a:active,.pos-card:active,.order-row:active,.settings-nav button:active,.chat-order:active{transform:scale(.96)}
/* Spinner e skeleton (estados de carregamento) */
.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite;vertical-align:-3px;margin-right:8px}
@keyframes spin{to{transform:rotate(360deg)}}
.skeleton{display:inline-block;background:linear-gradient(90deg,var(--surface-3) 25%,var(--surface-2) 50%,var(--surface-3) 75%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:10px;min-height:14px}
@keyframes shimmer{to{background-position:-200% 0}}
/* Indicador offline */
#net-banner{display:none;position:fixed;left:0;right:0;bottom:0;z-index:500;background:#9b4c00;color:#fff;padding:10px 16px;padding-bottom:calc(10px + env(safe-area-inset-bottom));font-weight:800;font-size:.85rem;text-align:center}
body.offline #net-banner{display:block}
body.offline .bottom-nav{bottom:36px}body.offline .mobile-cart{bottom:calc(36px + 56px)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:sticky;top:0;z-index:50;background:rgba(255,250,245,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(234,223,214,.75)}.nav .links{display:flex;gap:26px;font-size:.92rem;font-weight:800;color:#4e443e}.logo{height:42px;width:auto}.hero{padding:58px 0 34px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:42px;align-items:center}.hero-copy{padding:28px 0}.hero-copy .accent{color:var(--brand)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.trustline{display:flex;align-items:center;gap:14px;margin-top:30px;color:var(--muted);font-size:.88rem}.avatars{display:flex}.avatars span{width:34px;height:34px;border-radius:50%;border:3px solid var(--bg);margin-left:-8px;background:linear-gradient(135deg,#ffc7a5,#ff7c32);display:block}.avatars span:first-child{margin-left:0}.hero-visual{position:relative;min-height:560px;border-radius:38px;background:linear-gradient(135deg,#ffe8cf,#fff7ed);overflow:hidden;box-shadow:var(--shadow)}.hero-visual .food{position:absolute;inset:0;background:url('/assets/demo/burger-smash.jpg') center/cover;background-image:image-set(url('/assets/demo/webp/burger-smash-1200.webp') 1x,url('/assets/demo/burger-smash.jpg') 1x)}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(35,18,7,.20))}.floating{position:absolute;z-index:2;background:#fff;border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow-sm);border-radius:20px;padding:14px 16px;backdrop-filter:blur(12px)}.floating.one{left:22px;bottom:24px}.floating.two{right:22px;top:22px}.floating strong{display:block;font-size:1.25rem}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}.mini-feature{background:#fff;border:1px solid var(--border);padding:18px;border-radius:18px;display:flex;gap:12px;align-items:center}.mini-feature .ico{width:42px;height:42px;background:var(--brand-soft);border-radius:13px;display:grid;place-items:center}.section{padding:74px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}/* .cards/.card base definidas em "Cards (dashboard)" */.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}.feature-card .icon{width:52px;height:52px;border-radius:16px;background:var(--brand-soft);display:grid;place-items:center;font-size:1.4rem;margin-bottom:18px}.feature-card p{color:var(--muted);line-height:1.65}.lead-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:start}.lead-copy .kicker{margin-top:10px}.compare-panel{overflow:hidden}.compare-table th:not(:first-child),.compare-table td:not(:first-child){text-align:center}.check-mark{color:var(--green);font-weight:900}.showcase{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:stretch}.phone-stage{background:#17120f;border-radius:32px;padding:28px;min-height:560px;position:relative;overflow:hidden}.phone-stage:before{content:"";position:absolute;width:440px;height:440px;background:radial-gradient(circle,var(--brand),transparent 65%);filter:blur(40px);opacity:.33;right:-100px;top:-110px}.phone{width:min(330px,80%);height:590px;background:#fff;border:8px solid #0d0b0a;border-radius:42px;margin:auto;position:relative;overflow:hidden;box-shadow:0 34px 80px rgba(0,0,0,.35);transform:rotate(2deg)}.phone-top{height:120px;background:url('/assets/demo/showcase.jpg') center/cover}.phone-body{padding:14px}.phone-chip{height:34px;background:#f7f3ef;border-radius:11px;margin:8px 0}.phone-card{display:grid;grid-template-columns:66px 1fr;gap:10px;margin-top:11px}.phone-img{background:#ffe3cf;border-radius:14px}.phone-lines span{height:8px;background:#ede7e1;border-radius:8px;display:block;margin:7px 0}.phone-lines span:last-child{width:60%;background:#ffb486}.showcase-copy{background:linear-gradient(135deg,#fff,#fff5eb);border:1px solid var(--border);border-radius:32px;padding:38px}.checklist{display:grid;gap:15px;margin:28px 0}.check{display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start}.check .mark{width:28px;height:28px;border-radius:10px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-weight:900}.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
/* Plano único: card ao lado do painel "O que está incluído" — preenche o espaço (usado no render e no fallback). */
.pricing:has(.included-list){grid-template-columns:1.05fr 1.4fr;gap:18px;align-items:stretch}
.pricing .included-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px 16px;margin-top:12px}.price-card{position:relative}.price-card.popular{border:2px solid var(--brand);transform:translateY(-8px)}.price{font-size:2.6rem;font-weight:950;letter-spacing:-.05em}.price small{font-size:.9rem;color:var(--muted);font-weight:700}.tag-top{position:absolute;right:16px;top:16px;background:var(--amber);color:var(--amber-ink);border-radius:999px;padding:8px 11px;font-size:.74rem;font-weight:900}.footer{padding:46px 0;border-top:1px solid var(--border);margin-top:60px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(2,1fr);gap:26px}.footer h4{margin:0 0 14px}.footer a{display:block;color:var(--muted);margin:9px 0;font-size:.9rem}
/* Store */
.store-page{min-height:100vh;background:#fffaf5}.store-top{position:sticky;top:0;padding-top:env(safe-area-inset-top);z-index:40;background:rgba(255,250,245,.93);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.store-top .inner{height:76px;display:flex;align-items:center;gap:18px}.store-search{flex:1;max-width:620px;position:relative}.store-search input,.input{width:100%;height:48px;border:1px solid var(--border);border-radius:15px;background:#fff;padding:0 46px 0 15px;outline:none;transition:.2s}.store-search input:focus,.input:focus,.textarea:focus{border-color:#ffb186;box-shadow:0 0 0 4px rgba(255,90,10,.09)}.store-search button{position:absolute;right:5px;top:5px;width:38px;height:38px;border-radius:11px;border:0;background:var(--brand);color:#fff}.store-shell{display:grid;grid-template-columns:1fr 350px;gap:24px;padding:26px 0 100px}.store-shell>*{min-width:0}.store-hero{height:320px;border-radius:30px;overflow:hidden;position:relative;background:#f4d5bc}.store-hero img{width:100%;height:100%;object-fit:cover}.store-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,10,5,.78),rgba(20,10,5,.08))}
.store-hero.scrim:after{background:linear-gradient(90deg,rgba(8,4,2,.9),rgba(8,4,2,.3))}
.hero-visual.scrim:after{background:linear-gradient(180deg,rgba(30,15,5,.38),rgba(30,15,5,.6))}.store-hero .copy{position:absolute;z-index:2;left:28px;bottom:26px;color:#fff;max-width:560px}.store-hero .copy h1{font-size:clamp(2rem,4vw,3.7rem);line-height:.95;margin:10px 0}.store-meta{display:flex;gap:9px;flex-wrap:wrap}.store-meta .pill{background:rgba(255,255,255,.92);border:0;color:#211710}.category-row{display:flex;gap:10px;overflow:auto;padding:20px 2px 8px;position:sticky;top:76px;background:var(--bg);z-index:20}.cat-btn{flex:0 0 auto;border:1px solid var(--border);background:#fff;border-radius:14px;padding:11px 14px;font-weight:800}.cat-btn.active{background:var(--brand);color:#fff;border-color:var(--brand)}.category-title{margin:34px 0 14px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.product-card{background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden;transition:.22s;position:relative}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}.product-card .img{height:160px;background:#f7eee8;overflow:hidden}.product-card .img img{width:100%;height:100%;object-fit:cover;transition:.3s}.product-card:hover .img img{transform:scale(1.04)}.product-card .body{padding:15px}.product-card h3{font-size:1rem;margin:0 0 6px}.product-card p{font-size:.82rem;color:var(--muted);line-height:1.45;height:36px;overflow:hidden}.product-card .bottom{display:flex;align-items:center;justify-content:space-between;margin-top:11px}.money{font-weight:950}.add-btn{width:38px;height:38px;border:0;border-radius:12px;background:var(--brand);color:#fff;font-size:1.2rem}.cart-panel{position:sticky;top:98px;align-self:start;background:#fff;border:1px solid var(--border);border-radius:26px;padding:20px;box-shadow:var(--shadow-sm);max-height:calc(100vh - 120px);overflow:auto}.cart-empty{text-align:center;padding:42px 10px;color:var(--muted)}.cart-empty .big{font-size:3rem}.cart-item{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px 0;border-bottom:1px dashed var(--border)}.qty{display:flex;align-items:center;gap:8px}.qty button{width:28px;height:28px;border-radius:9px;border:1px solid var(--border);background:#fff}.summary{display:grid;gap:9px;padding:16px 0}.summary .line{display:flex;justify-content:space-between;color:var(--muted);font-size:.9rem}.summary .line.total{font-weight:950;color:var(--ink);font-size:1.08rem;border-top:1px solid var(--border);padding-top:12px}.mobile-cart{display:none;position:fixed;z-index:50;bottom:calc(12px + env(safe-area-inset-bottom));left:12px;right:12px;background:#1f1712;color:#fff;border-radius:18px;padding:13px 16px;box-shadow:0 18px 50px rgba(0,0,0,.24);align-items:center;justify-content:space-between;border:0}.bottom-nav{display:none}
/* Modals */
.backdrop{position:fixed;inset:0;background:rgba(26,15,9,.52);backdrop-filter:blur(5px);z-index:100;display:grid;place-items:center;padding:18px}.modal{width:min(620px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:28px;box-shadow:0 30px 90px rgba(0,0,0,.28);animation:pop .2s ease}.modal.wide{width:min(920px,100%)}@keyframes pop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.modal-head{padding:20px 22px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fff;z-index:2}.modal-body{padding:22px}.modal-product-img{height:260px;border-radius:20px;overflow:hidden;margin-bottom:20px}.modal-product-img img{width:100%;height:100%;object-fit:cover}.option-group{margin:18px 0}.option-group h4{margin:0 0 10px}.option{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:14px;padding:12px 14px;margin:8px 0}.option label{display:flex;align-items:center;gap:9px;flex:1}.textarea{width:100%;min-height:92px;border:1px solid var(--border);border-radius:15px;padding:13px;outline:none;resize:vertical}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-group label{font-size:.8rem;font-weight:850;display:block;margin:0 0 7px}.tabs{display:flex;gap:8px;background:#f6f1ed;border-radius:15px;padding:5px}.tabs button{flex:1;border:0;background:transparent;border-radius:11px;padding:10px;font-weight:850}.tabs button.active{background:#fff;box-shadow:0 3px 12px rgba(55,34,21,.08)}
/* Chat */
.chat-fab{position:fixed;right:20px;bottom:22px;width:58px;height:58px;border-radius:20px;border:0;background:var(--brand);color:#fff;box-shadow:0 14px 36px rgba(255,90,10,.35);z-index:75;font-size:1.35rem}.chatbox{position:fixed;right:20px;bottom:92px;width:min(390px,calc(100vw - 24px));height:min(620px,calc(100vh - 120px));background:#fff;border:1px solid var(--border);box-shadow:0 28px 80px rgba(50,25,10,.25);border-radius:26px;z-index:80;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;animation:pop .2s ease}.chat-head{padding:15px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.bot-avatar{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--brand),#ff9b59);display:grid;place-items:center;color:#fff}.chat-messages{padding:16px;overflow:auto;background:linear-gradient(#fff,#fffaf5)}.msg{max-width:82%;padding:11px 13px;border-radius:15px;margin:8px 0;font-size:.91rem;line-height:1.45}.msg.bot{background:#f3ece6;border-bottom-left-radius:5px}.msg.user{background:var(--brand);color:#fff;margin-left:auto;border-bottom-right-radius:5px}.quick{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.quick button{border:1px solid #ffc9aa;background:#fff4ec;color:#b94505;padding:8px 10px;border-radius:999px;font-weight:800;font-size:.78rem}.chat-input{padding:12px;border-top:1px solid var(--border);display:flex;gap:8px}.chat-input input{flex:1;border:1px solid var(--border);border-radius:13px;padding:0 12px;outline:none}.chat-input button{width:44px;height:44px;border:0;border-radius:13px;background:var(--brand);color:#fff}
/* Dashboard */
.dashboard{min-height:100vh;background:var(--bg)}.side-backdrop{display:none}
/* === Sidebar === */
.side{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar);background:#1b1613;color:#f9f0ea;padding:14px 12px;z-index:70;display:flex;flex-direction:column;transition:width .22s ease,transform .22s ease}
.side-head{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 16px}
.side .logo-wrap{display:flex;align-items:center;gap:10px;min-width:0}.side .logo-wrap img{filter:brightness(0) invert(1);opacity:.96;height:26px;width:auto}
.side-wordmark{font-weight:950;letter-spacing:-.02em;font-size:1.15rem;white-space:nowrap}
.side-collapse{color:#cbbfb7;border:1px solid #392e28;background:#241d18;width:32px;height:32px;flex:0 0 auto}
.side-collapse:hover{color:#fff;border-color:#4d3d33}
.side-nav{display:grid;gap:4px;overflow:auto;flex:1;padding-bottom:10px}
.nav-group{display:grid;gap:3px;margin-bottom:8px}
.nav-label{font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#8d7f74;padding:10px 12px 4px;white-space:nowrap}
.nav-link{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;color:#cbbfb7;font-weight:750;font-size:.9rem;position:relative;transition:.15s;white-space:nowrap}
.nav-link:hover{background:#241d18;color:#fff}
.nav-link.active{background:linear-gradient(90deg,#2d2018,#38251a);color:#fff}
.nav-link.active .nav-ico{color:var(--brand-2,#ff9f1a)}
.nav-dot{position:absolute;left:3px;top:50%;transform:translateY(-50%);width:3px;height:20px;border-radius:3px;background:var(--brand-2,#ff9f1a)}
.nav-ico{display:grid;place-items:center;width:24px;height:24px;flex:0 0 auto;color:#a99a8e}
.nav-link.active .nav-ico,.nav-ico svg{width:20px;height:20px}
.side-bottom{border-top:1px solid #30241c;padding-top:12px}
.side-user{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:13px}
.side-user:hover{background:#241d18}
.avatar{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#c73a00,#9b2400);color:#fff;display:grid;place-items:center;font-weight:900;font-size:.82rem;flex:0 0 auto}
.side-user-txt{min-width:0;flex:1}
.side-user-txt b{display:block;font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.side-user-txt small{color:#8d7f74;font-size:.72rem;font-weight:800}
.side-user .icon-btn{color:#8d7f74;border:0;background:transparent;width:30px;height:30px}
.side-user .icon-btn:hover{color:#fff;background:#30241c}
/* Rail (recolhido) */
body.side-collapsed .side{width:72px;padding:14px 8px}
body.side-collapsed .side-wordmark,body.side-collapsed .nav-txt,body.side-collapsed .nav-label,body.side-collapsed .side-user-txt{display:none}
body.side-collapsed .side-head{justify-content:center;padding-bottom:14px}
body.side-collapsed .side-collapse svg{transform:rotate(180deg)}
body.side-collapsed .nav-link{justify-content:center;padding:11px 0}
body.side-collapsed .side-user{justify-content:center;padding:8px 0}
body.side-collapsed .dash-main{margin-left:72px}
.mobile-only-link{display:none}
/* === Main === */
.dash-main{margin-left:var(--sidebar);min-height:100vh;transition:margin-left .22s ease}
.dash-top{min-height:var(--topbar);height:auto;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px 16px;padding:10px 24px;position:sticky;top:0;z-index:30}
.dash-burger{display:none}
.dash-title h1{margin:0;font-size:1.55rem;letter-spacing:-.02em}
.dash-title p{margin:4px 0 0;color:var(--muted);font-size:.86rem}
.dash-actions{flex-wrap:wrap;justify-content:flex-end}
.dash-divider{width:1px;height:26px;background:var(--border)}
.status-pill{background:var(--green-soft);border-color:color-mix(in srgb,var(--green) 30%,transparent);color:var(--green)}
.status-pill.closed{background:var(--red);border-color:var(--red);color:#fff}
.tenant-pill{display:inline-flex;align-items:center;gap:8px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.store-switch{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:6px 8px 6px 12px;font-size:.82rem;font-weight:800;color:var(--ink);cursor:pointer}
.store-switch svg{width:15px;height:15px;color:var(--brand)}
.store-switch select{border:0;background:transparent;font:inherit;font-weight:800;color:var(--ink);cursor:pointer;max-width:130px;outline:none}
.store-switch:focus-within{border-color:var(--brand)}
#bell-btn{position:relative}
.notify-dot{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--red);border:2px solid var(--surface);display:none}
.dash-content{padding:26px 28px 40px}
/* === Stats === */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0 0}
.stat{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:18px;position:relative;overflow:hidden}
.stat:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--brand),var(--brand-2))}
.stat-top{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.stat-ico{width:32px;height:32px;border-radius:10px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}
.stat-ico svg{width:17px;height:17px}
.stat .value{font-size:1.7rem;font-weight:950;letter-spacing:-.04em;margin:4px 0 6px}
.trend{font-size:.78rem;font-weight:850}
.trend.up{color:var(--green)}
.trend.down{color:var(--red)}
.quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 0}
.quick-actions .btn{display:inline-flex;align-items:center;gap:8px}
.quick-actions svg{width:17px;height:17px}
.dash-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px;margin-top:16px}
.panel{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:18px}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.chart-bars{height:230px;display:flex;align-items:end;gap:8px;padding-top:20px}
.bar{flex:1;background:linear-gradient(var(--brand),var(--brand-2));border-radius:9px 9px 4px 4px;min-height:10px;position:relative;transition:.2s}
.bar:hover{opacity:.85}
.bar:hover:after{content:attr(data-value);position:absolute;top:-28px;left:50%;transform:translateX(-50%);font-size:.72rem;background:#1d1713;color:#fff;padding:5px 7px;border-radius:7px;z-index:2}
.order-list{display:grid;gap:10px}
.order-row{border:1px solid var(--border);background:var(--surface);border-radius:15px;padding:13px;display:grid;grid-template-columns:1fr auto;gap:10px;transition:.15s}
.order-row:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--border))}
.status{font-size:.72rem;font-weight:900;border-radius:999px;padding:6px 8px;background:var(--surface-3)}
.status.new{background:var(--brand-soft);color:#ba4200}
.status.preparing{background:var(--yellow);color:#4a2a00}
.status.ready{background:var(--green-soft);color:var(--green)}
.table-wrap{overflow:auto}
.table{width:100%;border-collapse:collapse}
.table th,.table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border);font-size:.86rem;white-space:nowrap}
.table th{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}
.table tbody tr{transition:.12s}
.table tbody tr:hover{background:var(--surface-3)}
.kanban{display:grid;grid-template-columns:repeat(4,minmax(260px,1fr));gap:12px;overflow:auto;padding-bottom:8px}
.kanban-col{background:var(--surface-3);border:1px solid var(--border);border-radius:18px;padding:12px;min-height:520px}
.kanban-col h3{font-size:.9rem;margin:5px 4px 12px}
.ticket{background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:13px;margin:9px 0;box-shadow:0 3px 12px rgba(56,34,18,.05)}
.ticket.unpaid{border-left:4px solid var(--amber)} /* pedido PIX aguardando confirmação manual */
.ticket .code{font-size:.78rem;font-weight:950;color:var(--brand)}
.ticket .items{font-size:.82rem;line-height:1.5;margin:9px 0;color:var(--muted)}
.ticket .timer{font-size:.76rem;color:var(--muted)}
.courier-card{border-left:4px solid var(--green)}
.courier-addr{display:flex;align-items:center;gap:7px;font-size:.82rem;color:var(--muted);margin-top:9px}
.net-bar{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--brand),var(--brand-2));min-width:8px}
.print-history{display:grid;gap:8px}
.print-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);background:var(--surface);border-radius:13px;padding:10px 12px}
.print-item b{display:block}.print-item span{font-size:.76rem}
.courier-addr svg{width:15px;height:15px;flex:0 0 auto;color:var(--brand)}
/* Cards (dashboard) */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:20px}
.card-emoji{font-size:1.7rem;filter:saturate(.9)}
.card p{font-size:.86rem;line-height:1.6;margin:10px 0 0}
/* POS */
.pos-layout{display:grid;grid-template-columns:1fr 390px;gap:16px;height:calc(100vh - var(--topbar) - 56px)}.pos-products{overflow:auto;padding-right:4px}.pos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.pos-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:10px;cursor:pointer;transition:.18s}.pos-card:hover{border-color:var(--brand-2);transform:translateY(-2px)}.pos-card img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:11px}.pos-card h4{margin:9px 0 4px;font-size:.86rem}.pos-cart{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:16px;overflow:auto}.num-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.num-pad button{border:1px solid var(--border);background:var(--surface);padding:12px;border-radius:11px;font-weight:850}
/* Settings */
.settings-grid{display:grid;grid-template-columns:220px 1fr;gap:18px}.settings-nav{display:grid;gap:6px;align-self:start;position:sticky;top:calc(var(--topbar) + 20px)}.settings-nav button{text-align:left;border:0;background:transparent;padding:11px 12px;border-radius:12px;font-weight:800;color:var(--muted)}.settings-nav button:hover{background:var(--surface-3);color:var(--ink)}
.settings-nav button.active{background:var(--surface);border:1px solid var(--border);color:var(--ink);box-shadow:0 1px 0 rgba(43,24,12,.04)}
.switch{width:50px;height:30px;background:#d7cec7;border:1px solid #8a7a6a;border-radius:999px;position:relative;transition:.2s;display:inline-block;flex:0 0 auto}.switch:after{content:"";width:24px;height:24px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:.2s;box-shadow:0 2px 5px rgba(0,0,0,.2)}.switch.on{background:var(--green);border-color:var(--green)}.switch.on:after{left:22px}.switch:disabled{opacity:.5;cursor:not-allowed}
.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.table-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;transition:.18s}
.table-card.occupied{border-color:var(--brand-2)}
.table-card.reserved{border-color:#d9a441}
.table-qr{display:flex;gap:8px;margin-top:12px}
.table-qr .input{font-size:.76rem;padding:9px 10px;height:auto;min-width:0}
.suspended-banner{background:#fff3e0;border:1px solid #e8b26b;color:#7a4a10;border-radius:14px;padding:12px 14px;font-weight:750;margin-bottom:14px}
.suspended-banner.warn{background:#fdeaea;border-color:var(--red);color:var(--red)}
[data-theme="dark"] .suspended-banner{background:#2a2015;border-color:#8a6a35;color:#f0c98a}
[data-theme="dark"] .suspended-banner.warn{background:#2a1515;border-color:var(--red);color:#ffb3b3}
.btn.danger{background:var(--red);color:#fff}
.btn.danger:hover{filter:brightness(.94)}
.btn.danger:active{transform:translateY(0) scale(.98)}[data-theme="dark"] .switch{background:#3a2e23;border-color:var(--border)}[data-theme="dark"] .switch.on{background:var(--green);border-color:var(--green)}[data-theme="dark"] .switch:after{background:#211710}.automation{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--border)}
.zip-row{display:flex;gap:8px}.zip-row .input{flex:1;min-width:0}
.slug-at{display:grid;place-items:center;background:var(--surface-3);border:1px solid var(--border);border-radius:12px;padding:0 13px;font-weight:900;color:var(--muted)}
.new-store-btn{white-space:nowrap;border-style:dashed}
/* Fav */
.fav{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:rgba(255,255,255,.94);transition:.2s}
.fav.on{color:var(--brand);border-color:#ffc9aa;background:var(--brand-soft)}
[data-theme="dark"] .fav{color:#211710}
[data-theme="dark"] .fav.on{color:var(--brand)}
/* Min order + cash + notify */
.min-order{font-size:.78rem;line-height:1.5;color:#8a4b00;background:#fff7da;border:1px solid #f3e3b0;border-radius:12px;padding:9px 11px;margin:12px 0}
.cash-line{display:grid;gap:4px;margin:10px 0;background:#fff7da;border:1px solid #f3e3b0;border-radius:12px;padding:10px;font-size:.86rem}
.notify-panel{position:fixed;top:calc(var(--topbar) + 10px);right:24px;width:min(340px,calc(100vw - 32px));background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:14px;z-index:90;animation:pop .18s ease}
.notify-sep{height:1px;background:var(--border);margin:8px 0}
.notify-item.warn{color:var(--red)}
.alerts-banner{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.alert-item{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:14px;padding:10px 14px}
.alert-item.warn{border-left-color:var(--red)}
.alert-item.info{border-left-color:var(--brand)}
.alert-ico{font-size:1.15rem}
.alert-body{flex:1;min-width:0}
.alert-body b{display:block;font-size:.9rem}
.alert-body span{display:block;color:var(--muted);font-size:.8rem}
@media(max-width:640px){.alert-item{flex-wrap:wrap;padding:10px 12px}.alert-item .row{width:100%;justify-content:flex-end}}
.notify-item{padding:9px 0;border-bottom:1px solid var(--border);font-size:.86rem;line-height:1.45}
.notify-item:last-child{border-bottom:0}
/* Chat full-screen tab */
.chat-full{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;border-radius:0;z-index:130;grid-template-rows:auto auto 1fr auto}
.chat-full .chat-head{gap:10px}
.chat-order{display:flex;align-items:center;gap:12px;width:calc(100% - 24px);margin:12px auto 0;padding:11px 13px;border:1px solid var(--border);border-radius:14px;background:#fffaf5;cursor:pointer;text-align:left;font-size:.88rem}
.chat-order:hover{border-color:#ffc6a7}
.chat-order span:first-child{font-size:1.2rem}
.chat-order b:last-child{color:var(--brand);margin-left:auto}
body.chat-full-open .bottom-nav,body.chat-full-open .chat-fab{display:none!important}
/* Palette page */
.palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.swatch{display:flex;align-items:center;gap:11px;border:1px solid var(--border);border-radius:13px;padding:10px}
.chip{width:44px;height:44px;border-radius:11px;flex:0 0 auto}
.chip-sm{display:inline-block;width:15px;height:15px;border-radius:5px;vertical-align:-2px;margin-right:5px;border:1px solid rgba(0,0,0,.14)}
.palette-block code{font-size:.76rem;background:var(--surface-3);padding:3px 7px;border-radius:7px}
/* FAB de contato da landing (leva ao formulário, sem número fake) */
.landing-contact-fab{position:fixed;right:20px;bottom:22px;z-index:70;background:var(--brand);color:#fff;display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:999px;font-weight:900;box-shadow:0 14px 36px rgba(255,90,10,.35);transition:.2s}
.landing-contact-fab:hover{transform:translateY(-2px)}
.landing-contact-fab:active{transform:scale(.97)}
[data-theme="dark"] .landing-contact-fab{color:#211710}
@media(max-width:620px){.landing-contact-fab span{display:none}.landing-contact-fab{padding:16px;border-radius:50%}}
/* FAQ da landing */
.faq-item summary::-webkit-details-marker{display:none}
.faq-item[open] summary span{transform:rotate(45deg)}
.faq-item summary span{transition:.2s}
/* Skip link + focus + reduced motion */
.skip-link{position:fixed;left:12px;top:-70px;z-index:400;background:var(--brand);color:#fff;padding:12px 16px;border-radius:12px;font-weight:900;transition:top .2s}
.skip-link:focus{top:12px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
.btn:focus-visible,.icon-btn:focus-visible{outline-offset:3px}
#app{outline:none}
.btn.active{background:#211a16;color:#fff;border-color:#211a16}
[data-theme="dark"] .btn.active{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}
[data-theme="dark"] .btn.dark{background:var(--brand);border-color:var(--brand);color:#211710}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Toast */
#toast-root{position:fixed;right:18px;top:18px;z-index:200;display:grid;gap:8px;left:18px;justify-items:end}.toast{background:#1c1713;color:#fff;padding:12px 15px;border-radius:13px;box-shadow:var(--shadow);animation:pop .2s ease;max-width:min(360px,calc(100vw - 36px))}.toast.good{background:#176d4d}.toast.warn{background:#9b4c00}
/* Responsive */
@media(max-width:1100px){.hero-grid,.showcase{grid-template-columns:1fr}.hero-visual{min-height:470px}.feature-strip,.stats{grid-template-columns:repeat(2,1fr)}.store-shell{grid-template-columns:1fr 320px}.product-grid{grid-template-columns:repeat(2,1fr)}.cards,.pricing{grid-template-columns:repeat(2,1fr)}.pricing .price-card:last-child{grid-column:1/-1}.pos-grid{grid-template-columns:repeat(3,1fr)}.dash-grid{grid-template-columns:1fr}.dash-actions .tenant-pill{display:none}}
@media(max-width:860px){.lead-grid{grid-template-columns:1fr}:root{--sidebar:0px}.nav-burger{display:grid}.nav .links{display:none}.nav-links-open .links{display:flex;flex-direction:column;position:absolute;top:78px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);padding:10px 22px;gap:4px;z-index:60}.nav-links-open .links a{padding:12px 8px;border-radius:12px}.nav-links-open .links a:active{background:var(--surface-2)}.nav-links-open .links .mobile-only-link{display:block}.chat-fab{display:none}.mobile-cart{bottom:calc(78px + env(safe-area-inset-bottom));z-index:56}.side{display:flex;transform:translateX(-105%);width:min(300px,84vw);padding:14px 12px}.side-open .side{transform:none;box-shadow:0 0 60px rgba(0,0,0,.4)}.side-backdrop{display:block;position:fixed;inset:0;background:rgba(20,10,5,.45);backdrop-filter:blur(2px);z-index:65;opacity:0;pointer-events:none;transition:.2s}.side-open .side-backdrop{opacity:1;pointer-events:auto}body.side-collapsed .side{width:min(300px,84vw);padding:14px 12px}body.side-collapsed .side-wordmark,body.side-collapsed .nav-txt,body.side-collapsed .nav-label,body.side-collapsed .side-user-txt,body.side-collapsed .side-collapse{display:block}body.side-collapsed .side-head{justify-content:space-between;padding-bottom:16px}body.side-collapsed .nav-link{justify-content:flex-start;padding:10px 12px}body.side-collapsed .side-user{justify-content:flex-start;padding:8px 6px}.dash-burger{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto}.dash-main{margin-left:0}body.side-collapsed .dash-main{margin-left:0}.dash-top{padding:0 14px;padding-top:calc(0px + env(safe-area-inset-top))}.dash-content{padding:16px 14px 92px}.store-shell{grid-template-columns:1fr}.cart-panel{display:none}.mobile-cart{display:flex}.settings-grid{grid-template-columns:1fr}.settings-nav{position:static;display:flex;gap:6px;overflow:auto;padding-bottom:4px}.settings-nav button{flex:0 0 auto;white-space:nowrap}body.side-collapsed .side-collapse svg{transform:none}.dash-content .between,.dash-content .row{flex-wrap:wrap}.store-top .logo{height:36px;width:auto}.product-grid{grid-template-columns:repeat(2,1fr)}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;z-index:55;left:0;right:0;bottom:0;background:var(--surface);backdrop-filter:blur(16px);border-top:1px solid var(--border);padding:7px 6px calc(7px + env(safe-area-inset-bottom))}.bottom-nav button,.bottom-nav a{border:0;background:transparent;display:grid;place-items:center;gap:4px;font-size:.68rem;color:var(--muted);font-weight:800}.bottom-nav .active{color:var(--brand)}.pos-layout{grid-template-columns:1fr;height:auto}.pos-cart{min-height:420px}.settings-grid{grid-template-columns:1fr}.settings-nav{display:flex;overflow:auto;position:static}.settings-nav button{flex:0 0 auto}.footer-grid{grid-template-columns:1fr 1fr}.kanban{grid-template-columns:repeat(4,270px)}.chat-fab{bottom:82px;display:none}.between,.row{flex-wrap:wrap}.quick-actions .btn{flex:1 1 auto;justify-content:center}}
@media(max-width:620px){.container{width:min(calc(100% - 22px),var(--max))}.nav{height:70px;gap:8px}.nav .container{width:min(calc(100% - 16px),var(--max))}.nav .row{gap:6px;flex-wrap:nowrap}.nav .icon-btn.sm{width:36px;height:36px}.nav .btn.primary{padding:9px 12px;font-size:.84rem;white-space:nowrap}.nav .logo{height:34px;width:auto}.nav .btn.secondary{display:none}.nav-links-open .links{top:70px}.hero{padding-top:26px}.hero-visual{min-height:360px;border-radius:26px}.floating.two{display:none}.feature-strip,.cards,.pricing,.stats{grid-template-columns:1fr}.price-card.popular{transform:none}.pricing .price-card:last-child{grid-column:auto}.section{padding:50px 0}.section-head{align-items:start;flex-direction:column}.store-top .inner{gap:9px}.store-top .logo{height:30px;width:auto}.store-top .icon-btn:nth-last-child(2){display:none}.store-search input{height:44px}.store-hero{height:260px;border-radius:22px}.store-hero .copy{left:18px;bottom:18px}.product-grid{grid-template-columns:1fr 1fr;gap:9px}.product-card .img{height:118px}.product-card .body{padding:11px}.product-card p{display:none}.category-row{top:76px}.grid2{grid-template-columns:1fr}.chat-fab{bottom:82px;display:none}.chatbox{right:12px;bottom:148px;height:calc(100vh - 170px)}.footer-grid{grid-template-columns:1fr}.pos-grid{grid-template-columns:repeat(2,1fr)}.dash-title p{display:none}.dash-top .pill{display:none}.dash-content{padding-top:14px}.panel{padding:14px}.panel-head{flex-wrap:wrap}.dash-title h1{font-size:1.32rem}.num-pad button{padding:10px}.table th,.table td{padding:10px 8px}.modal-product-img{height:210px}}
/* Plano único: no celular o card e o painel "O que está incluído" empilham (o :has vence a regra base). */
@media(max-width:620px){.pricing:has(.included-list){grid-template-columns:1fr}}
/* Telas muito estreitas (320px): os itens do painel incluído empilham para não espremer. */
@media(max-width:380px){.pricing .included-list{grid-template-columns:1fr}}

/* ============ Dark mode ============ */
:root[data-theme="dark"]{
  --bg:#171210;--surface:#221b16;--surface-2:#2b2119;--surface-3:#251e19;
  --ink:#f7eee3;--muted:#b8a99a;--border:#3a2e23;
  --brand:#ff9e4d;--brand-2:#ffb066;--brand-soft:#331f10;
  --amber:#ffb33d;--amber-ink:#2b1a00;
  --green:#4dd493;--green-soft:#143022;--yellow:#ffd94d;--red:#ff7a6e;
  --shadow:0 18px 50px rgba(0,0,0,.5);--shadow-sm:0 8px 24px rgba(0,0,0,.4)
}
/* ============ Alto contraste (WCAG AAA-friendly) ============ */
:root[data-contrast="high"]{
  --bg:#ffffff;--surface:#ffffff;--surface-2:#fff1e0;--surface-3:#f5ede4;
  --ink:#1a1209;--muted:#4a3f35;--border:#8a7a6a;
  --brand:#8a2800;--brand-2:#a53a00;--brand-soft:#ffddc4;
  --amber:#a56f00;--amber-ink:#120a00;
  --green:#005f34;--green-soft:#dff3e8;--yellow:#8a6a00;--red:#b3261e;
  --shadow:0 18px 50px rgba(69,38,20,.12);--shadow-sm:0 8px 24px rgba(69,38,20,.10)
}
:root[data-theme="dark"][data-contrast="high"]{
  --bg:#000000;--surface:#0d0a08;--surface-2:#1c1510;--surface-3:#16110d;
  --ink:#ffffff;--muted:#d8cfc6;--border:#7a6857;
  --brand:#ffb066;--brand-2:#ffca8f;--brand-soft:#3a2413;
  --amber:#ffc97d;--amber-ink:#1c0e00;
  --green:#8ff0c0;--green-soft:#0c2418;--yellow:#ffe08a;--red:#ff9b91;
  --shadow:0 18px 50px rgba(0,0,0,.6);--shadow-sm:0 8px 24px rgba(0,0,0,.5)
}
:root[data-contrast="high"] .btn.secondary,:root[data-contrast="high"] .icon-btn,
:root[data-contrast="high"] .cat-btn,:root[data-contrast="high"] .qty button,:root[data-contrast="high"] .num-pad button,
:root[data-contrast="high"] .option{border-width:2px;border-style:solid;border-color:var(--ink)}
:root[data-contrast="high"] .pill{border-width:2px;border-color:var(--border)}
:root[data-contrast="high"] .card,:root[data-contrast="high"] .panel,:root[data-contrast="high"] .product-card,
:root[data-contrast="high"] .modal,:root[data-contrast="high"] .ticket,:root[data-contrast="high"] .pos-card,
:root[data-contrast="high"] .cart-panel,:root[data-contrast="high"] .mini-feature,:root[data-contrast="high"] .notify-panel{border-width:2px;border-style:solid;border-color:var(--border)}
:root[data-contrast="high"] .btn.primary{box-shadow:none}
:root[data-theme="dark"][data-contrast="high"] .btn.primary{color:#000;box-shadow:none}
:root[data-contrast="high"] .summary .line.total{border-top-width:2px;border-top-color:var(--ink)}
:root[data-contrast="high"] .pill.brand{color:#7a2400}
:root[data-theme="dark"][data-contrast="high"] .pill.brand{color:#ffca8f}
:root[data-contrast="high"] a:focus-visible,:root[data-contrast="high"] button:focus-visible,
:root[data-contrast="high"] input:focus-visible,:root[data-contrast="high"] select:focus-visible,
:root[data-contrast="high"] textarea:focus-visible,:root[data-contrast="high"] [tabindex]:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
[data-theme="dark"] body{background:var(--bg);color:var(--ink)}
[data-theme="dark"] .store-page,[data-theme="dark"] .dashboard{background:var(--bg)}
[data-theme="dark"] .nav,[data-theme="dark"] .store-top{background:rgba(20,17,16,.92);border-color:var(--border)}
[data-theme="dark"] .dash-top{background:rgba(29,25,22,.92);border-color:var(--border)}
[data-theme="dark"] .bottom-nav{background:rgba(24,20,18,.97);border-color:var(--border)}
[data-theme="dark"] .side{background:#12100e}
[data-theme="dark"] .side a:hover,[data-theme="dark"] .side a.active{background:#2b211a}

[data-theme="dark"] .card,[data-theme="dark"] .panel,[data-theme="dark"] .product-card,[data-theme="dark"] .cart-panel,
[data-theme="dark"] .modal,[data-theme="dark"] .modal-head,[data-theme="dark"] .chatbox,[data-theme="dark"] .ticket,
[data-theme="dark"] .pos-card,[data-theme="dark"] .pos-cart,[data-theme="dark"] .stat,[data-theme="dark"] .order-row,
[data-theme="dark"] .notify-panel,[data-theme="dark"] .floating,[data-theme="dark"] .option,
[data-theme="dark"] .mini-feature,[data-theme="dark"] .showcase-copy,[data-theme="dark"] .cart-empty .big{background:var(--surface);border-color:var(--border);color:var(--ink)}
[data-theme="dark"] .modal-body{background:var(--surface)}
[data-theme="dark"] .kanban-col{background:#241e19}
[data-theme="dark"] .input,[data-theme="dark"] .textarea{background:var(--surface-2);border-color:var(--border);color:var(--ink)}
[data-theme="dark"] .store-search input,[data-theme="dark"] .chat-input input{background:var(--surface-2);border-color:var(--border);color:var(--ink)}
[data-theme="dark"] .input::placeholder,[data-theme="dark"] .textarea::placeholder,[data-theme="dark"] .store-search input::placeholder,[data-theme="dark"] .chat-input input::placeholder{color:var(--muted)}
[data-theme="dark"] .btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--border)}
[data-theme="dark"] .btn.primary{color:#211710}
[data-theme="dark"] .btn.ghost{color:var(--ink)}
[data-theme="dark"] .icon-btn{background:var(--surface);border-color:var(--border);color:var(--ink)}
[data-theme="dark"] .category-row{background:var(--bg)}
[data-theme="dark"] .cat-btn{background:var(--surface);border-color:var(--border);color:var(--ink)}
[data-theme="dark"] .cat-btn.active{color:#211710}
[data-theme="dark"] .product-card .img,[data-theme="dark"] .modal-product-img{background:var(--surface-2)}
[data-theme="dark"] .msg.bot{background:var(--surface-2)}
[data-theme="dark"] .chat-messages{background:linear-gradient(#1d1916,#17130f)}
[data-theme="dark"] .quick button{background:var(--brand-soft);border-color:#5a3a20;color:#ffb98a}
[data-theme="dark"] .chat-order{background:var(--surface-2);border-color:var(--border)}
[data-theme="dark"] .tabs{background:var(--surface-3)}
[data-theme="dark"] .tabs button{color:var(--muted)}
[data-theme="dark"] .tabs button.active{background:var(--surface);box-shadow:none;color:var(--ink)}
[data-theme="dark"] .qty button,[data-theme="dark"] .num-pad button{background:var(--surface);border-color:var(--border);color:var(--ink)}
[data-theme="dark"] .cart-item,[data-theme="dark"] .summary .line.total{border-color:var(--border)}
[data-theme="dark"] .table th{color:var(--muted)}
[data-theme="dark"] .table td{border-color:var(--border)}
[data-theme="dark"] .settings-nav button{color:var(--muted)}
[data-theme="dark"] .settings-nav button.active{background:var(--surface);border-color:var(--border);color:var(--ink)}
[data-theme="dark"] .pill{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .pill.good{background:var(--green-soft);border-color:#1e4a36;color:#7fe0b5}
[data-theme="dark"] .pill.brand{background:var(--brand-soft);border-color:#5a3a20;color:#ffb98a}
[data-theme="dark"] .status.new{background:var(--brand-soft);color:#ffb98a}
[data-theme="dark"] .status.preparing{background:#2e2811;color:#ffe08a}
[data-theme="dark"] .status.ready{background:var(--green-soft);color:#7fe0b5}
/* Contraste bidirecional: no dark a marca vira laranja claro — texto branco quebraria (2.05:1).
   Elementos com fundo var(--brand) passam a usar texto escuro (mesmo padrão do .btn.primary). */
[data-theme="dark"] .nav .links{color:var(--muted)}
[data-theme="dark"] .bot-avatar{color:#211710}
[data-theme="dark"][data-contrast="high"] .bot-avatar{color:#000}
[data-theme="dark"] .store-search button,[data-theme="dark"] .add-btn,[data-theme="dark"] .chat-fab,
[data-theme="dark"] .msg.user,[data-theme="dark"] .chat-input button,[data-theme="dark"] .skip-link,
[data-theme="dark"] .map-pin-home,[data-theme="dark"] .cat-btn.active{color:#211710}
[data-theme="dark"][data-contrast="high"] .store-search button,[data-theme="dark"][data-contrast="high"] .add-btn,
[data-theme="dark"][data-contrast="high"] .chat-fab,[data-theme="dark"][data-contrast="high"] .msg.user,
[data-theme="dark"][data-contrast="high"] .chat-input button,[data-theme="dark"][data-contrast="high"] .skip-link,
[data-theme="dark"][data-contrast="high"] .map-pin-home,[data-theme="dark"][data-contrast="high"] .cat-btn.active{color:#000}
[data-theme="dark"] .status-pill.closed{color:#1c0604}
[data-theme="dark"][data-contrast="high"] .status-pill.closed{color:#200605}
[data-theme="dark"] .min-order,[data-theme="dark"] .cash-line{background:var(--surface-2);border-color:#5a3a20;color:#ffc98a}
[data-theme="dark"] .backdrop{background:rgba(0,0,0,.62)}
[data-theme="dark"] .hero-visual{background:linear-gradient(135deg,#2a1a0e,#241a10)}
[data-theme="dark"] .phone-lines span{background:#2e2721}
[data-theme="dark"] .footer{border-color:var(--border)}
[data-theme="dark"] .toast{background:#0d0a08}
[data-theme="dark"] ::-webkit-scrollbar-thumb{background:#3a312a;border-color:#171310;background-clip:padding-box}
[data-theme="dark"] .leaflet-tile{filter:brightness(.78) contrast(1.05) invert(1) hue-rotate(180deg)}
[data-theme="dark"] .store-hero:after{background:linear-gradient(90deg,rgba(8,4,2,.85),rgba(8,4,2,.1))}
/* ============ KDS alert ============ */
@keyframes kdsFlash{0%,100%{box-shadow:0 0 0 0 rgba(255,138,61,0)}50%{box-shadow:0 0 0 5px rgba(255,138,61,.5)}}
.ticket.flash{animation:kdsFlash 1.1s ease-in-out 3}
.kds-alert{display:flex;align-items:center;gap:10px;background:var(--brand-soft);border:1px solid #ffc9aa;color:#8a3a00;border-radius:14px;padding:12px 14px;font-weight:850;margin-bottom:14px;animation:pop .25s ease}
[data-theme="dark"] .kds-alert{color:#ffb98a;border-color:#5a3a20}
/* ============ Tracking map ============ */
#order-map{height:280px;border-radius:18px;overflow:hidden;margin-top:18px;border:1px solid var(--border);background:#e8e2db;z-index:0}
.map-pin-home{width:26px;height:26px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:14px;border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.35)}
[data-theme="dark"] #order-map{background:#1d1916}
