/* MEATS V4 · tokens y piezas compartidas (cliente, pedido, admin, repartidor). Colores del logo y del flyer (11-10). */
:root{
  --ink:#140405;--brasa:#2a0a0d;--vino:#5c1424;--vino2:#7a1f2b;--naranja:#f26a1b;--naranja2:#ff8a3d;--crema:#f6ead8;--oro:#e7b24c;
  --verde:#35d07f;--ambar:#f5b83d;--rojo:#e8412b;--gris:#9a8b84;
  --linea:rgba(246,234,216,.14);--linea2:rgba(246,234,216,.26);--sombra:0 22px 60px rgba(0,0,0,.5);
  --r:18px;--fuente:"Barlow",system-ui,sans-serif;--cond:"Barlow Condensed","Arial Narrow",sans-serif;--marca:"Sedgwick Ave Display",cursive;
  --ease:cubic-bezier(.2,.8,.2,1);--rebote:cubic-bezier(.2,1.5,.4,1)
}
[hidden]{display:none!important}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{background:var(--ink)}
body{background:var(--ink);color:var(--crema);font-family:var(--fuente);min-height:100dvh;-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
a{color:inherit}
:focus-visible{outline:2px solid var(--naranja2);outline-offset:2px}
.cond{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.05em}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border-radius:14px;border:1.5px solid var(--linea2);
  font-weight:600;font-size:15px;text-decoration:none;transition:transform .15s var(--ease),background .2s,border-color .2s;white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn.fuego{background:linear-gradient(180deg,var(--naranja2),var(--naranja));border-color:transparent;color:#1d0703;font-family:var(--cond);font-weight:700;
  font-size:19px;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 10px 30px rgba(242,106,27,.35),inset 0 1px 0 rgba(255,255,255,.35)}
.btn.vino{background:var(--vino2);border-color:var(--vino2)}
.btn.verde{background:var(--verde);border-color:var(--verde);color:#062012;font-weight:700}
.btn.fantasma{border-style:dashed}
.btn[disabled]{opacity:.38;pointer-events:none;box-shadow:none}
.btn.ancho{width:100%}

/* campos */
.campo{display:grid;gap:6px;min-width:0}
.campo>span,.campo label{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;opacity:.72}
.campo input,.campo select,.campo textarea{min-height:50px;width:100%;border-radius:14px;border:1.5px solid var(--linea);background:rgba(246,234,216,.05);padding:12px 14px;font-size:16px}
.campo textarea{min-height:86px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--naranja)}
.campo select option{background:var(--ink)}
.fila2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:360px){.fila2{grid-template-columns:1fr}}

/* estado de pedido (pastillas) */
.pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--cond);font-weight:700;font-size:13.5px;letter-spacing:.07em;text-transform:uppercase;
  padding:5px 11px;border-radius:999px;background:rgba(246,234,216,.1);white-space:nowrap}
.pill i{width:8px;height:8px;border-radius:50%;background:currentColor}
.pill.gris{color:#cbbdb5}.pill.ambar{color:var(--ambar);background:rgba(245,184,61,.14)}.pill.verde{color:var(--verde);background:rgba(53,208,127,.14)}
.pill.naranja{color:var(--naranja2);background:rgba(242,106,27,.16)}.pill.rojo{color:#ff8a78;background:rgba(232,65,43,.16)}
.pill.vivo i{animation:latido 1.4s ease-in-out infinite}
@keyframes latido{50%{transform:scale(1.6);opacity:.4}}

/* ========== LETRERO ABIERTO / CERRADO (neón) ========== */
.letrero{position:relative;display:inline-grid;justify-items:center;gap:2px;padding:12px 26px 10px;border-radius:20px;isolation:isolate;
  background:linear-gradient(180deg,rgba(20,4,5,.78),rgba(42,10,13,.72));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border:1.5px solid rgba(255,138,61,.35);box-shadow:0 0 0 1px rgba(0,0,0,.3),0 14px 40px rgba(0,0,0,.45),inset 0 0 26px rgba(242,106,27,.12)}
.letrero::before,.letrero::after{content:"";position:absolute;top:-9px;width:2px;height:10px;background:linear-gradient(var(--gris),transparent)}
.letrero::before{left:26%}.letrero::after{right:26%}
.letrero .tubo{display:flex;align-items:center;gap:10px;font-family:var(--marca);font-size:clamp(30px,8.5vw,44px);line-height:1;letter-spacing:.02em;color:#fff4e6;
  text-shadow:0 0 4px #fff,0 0 10px var(--naranja2),0 0 22px var(--naranja),0 0 42px var(--naranja),0 0 70px rgba(242,106,27,.7);
  animation:enciende 2.4s steps(1) 1,zumbido 5s ease-in-out 2.4s infinite}
.letrero .llama{width:.85em;height:.85em;flex:none;filter:drop-shadow(0 0 8px var(--naranja)) drop-shadow(0 0 18px rgba(242,106,27,.8));animation:flama 1.1s ease-in-out infinite alternate}
.letrero .sub{font-family:var(--cond);font-weight:600;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,234,216,.82)}
.letrero .halo{position:absolute;inset:-18px;z-index:-1;border-radius:32px;background:radial-gradient(closest-side,rgba(242,106,27,.35),transparent);animation:respiraH 3.2s ease-in-out infinite}
@keyframes enciende{0%{opacity:.15}8%{opacity:1}12%{opacity:.2}18%{opacity:1}22%{opacity:.35}30%,100%{opacity:1}}
@keyframes zumbido{0%,100%{opacity:1}47%{opacity:1}48%{opacity:.82}49%{opacity:1}}
@keyframes flama{from{transform:scale(1) rotate(-4deg)}to{transform:scale(1.12,1.18) rotate(4deg)}}
@keyframes respiraH{50%{opacity:.55;transform:scale(1.06)}}
.letrero.cerrado{border-color:rgba(246,234,216,.16);box-shadow:0 14px 40px rgba(0,0,0,.45)}
.letrero.cerrado .tubo{color:rgba(246,234,216,.38);text-shadow:none;animation:none}
.letrero.cerrado .llama{filter:grayscale(1) opacity(.35);animation:none}
.letrero.cerrado .halo{display:none}
.letrero.cerrado .sub{color:rgba(246,234,216,.6)}

/* aviso flotante */
.toast{position:fixed;left:50%;bottom:calc(110px + env(safe-area-inset-bottom));transform:translate(-50%,20px);z-index:90;background:var(--crema);color:var(--ink);
  padding:12px 18px;border-radius:999px;font-weight:600;opacity:0;transition:.3s var(--ease);pointer-events:none;max-width:calc(100% - 32px);text-align:center;box-shadow:var(--sombra)}
.toast.ver{opacity:1;transform:translate(-50%,0)}

/* ========== FACTURA QUE SE IMPRIME ========== */
.impresora{position:relative;max-width:400px;margin:0 auto;padding-top:26px}
.impresora .boca{position:absolute;top:0;left:-8px;right:-8px;height:34px;z-index:3;border-radius:14px 14px 10px 10px;
  background:linear-gradient(180deg,#3a3236,#1c1719 60%,#0d0a0b);box-shadow:0 10px 24px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.12)}
.impresora .boca::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:5px;border-radius:4px;background:#050304;box-shadow:inset 0 2px 3px #000}
.impresora .led{position:absolute;right:16px;top:9px;width:7px;height:7px;border-radius:50%;background:#3a2c22;z-index:4}
.impresora.imprimiendo .led{background:var(--naranja2);box-shadow:0 0 8px var(--naranja2);animation:latido .5s infinite}
.impresora.imprimiendo .boca{animation:vibra .09s linear infinite}
@keyframes vibra{50%{transform:translateY(.6px)}}
.impresora .ventana{position:relative;overflow:hidden;padding:0 6px 22px}
.ticket{position:relative;color:#2a1a14;padding:26px 20px 26px;font-family:"IBM Plex Mono","Courier New",monospace;font-size:13px;line-height:1.5;
  background:#fffaf1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .2 0 0 0 .045 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");
  box-shadow:0 18px 40px rgba(0,0,0,.45),inset 0 -40px 40px -40px rgba(120,80,40,.18);transform-origin:top center}
.ticket::after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:12px;
  background:linear-gradient(-45deg,transparent 8px,#fffaf1 0) 0 0/16px 12px repeat-x,linear-gradient(45deg,transparent 8px,#fffaf1 0) 0 0/16px 12px repeat-x;filter:drop-shadow(0 4px 3px rgba(0,0,0,.25))}
.ticket .brillo{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);background-size:250% 100%;background-position:120% 0;mix-blend-mode:soft-light}
.ticket.listo .brillo{animation:brilla 1.6s var(--ease) .2s 1}
@keyframes brilla{to{background-position:-60% 0}}
.ticket .t-logo{display:block;width:118px;margin:0 auto 6px;filter:sepia(.3) saturate(1.3)}
.ticket .t-c{text-align:center}
.ticket .t-neg{font-weight:700;font-size:14px;letter-spacing:.04em}
.ticket .t-sep{border:0;border-top:1.5px dashed rgba(42,26,20,.45);margin:10px 0}
.ticket .t-doc{display:flex;justify-content:space-between;gap:10px;font-weight:700;font-size:15px}
.ticket .t-l{display:flex;justify-content:space-between;gap:10px}
.ticket .t-l span:first-child{min-width:0;overflow-wrap:anywhere}
.ticket .t-l span:last-child{white-space:nowrap}
.ticket .t-it{padding:2px 0}
.ticket .t-it small{display:block;opacity:.7;font-size:12px}
.ticket .t-tot{display:flex;justify-content:space-between;font-weight:700;font-size:20px;margin-top:4px;letter-spacing:.02em}
.ticket .t-mini{font-size:11.5px;opacity:.78}
.ticket .t-qr{display:flex;justify-content:center;margin-top:10px}
.ticket .t-qr canvas,.ticket .t-qr img{width:96px!important;height:96px!important;image-rendering:pixelated}
.ticket .t-linea{opacity:.08;transition:opacity .25s ease,filter .25s ease;filter:blur(.6px)}
.ticket .t-linea.tinta{opacity:1;filter:none}
.sello{position:absolute;right:16px;bottom:200px;z-index:2;padding:6px 14px;border:3px solid #1f8f53;border-radius:10px;color:#1f8f53;font-family:var(--cond);font-weight:700;
  font-size:30px;letter-spacing:.1em;transform:rotate(-14deg) scale(2.4);opacity:0;mix-blend-mode:multiply;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.6' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2.4 1.8'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23g)'/%3E%3C/svg%3E");
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.6' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2.4 1.8'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23g)'/%3E%3C/svg%3E")}
.sello.pendiente{border-color:#b26a00;color:#b26a00}
.sello.ver{animation:sella .45s var(--rebote) forwards}
@keyframes sella{60%{opacity:.95;transform:rotate(-14deg) scale(.92)}to{opacity:.88;transform:rotate(-14deg) scale(1)}}

/* ========== MAPA ========== */
.mapa{position:relative;height:320px;border-radius:var(--r);overflow:hidden;border:1px solid var(--linea);background:#1b1416}
.mapa .leaflet-container{background:#1b1416;font-family:var(--fuente)}
.teselas-meats{filter:sepia(.18) saturate(.85) contrast(1.02)}
.pin-local b,.pin-cliente b{display:grid;place-items:center}
.leaflet-control-attribution{font-size:9px!important;background:rgba(20,4,5,.6)!important;color:#cbb!important}
.leaflet-control-attribution a{color:#e9c9a8!important}
.moto{position:relative;width:54px;height:54px}
.moto .onda{position:absolute;inset:0;border-radius:50%;background:rgba(242,106,27,.35);animation:onda 1.8s ease-out infinite}
.moto .onda:nth-child(2){animation-delay:.9s}
@keyframes onda{from{transform:scale(.4);opacity:.9}to{transform:scale(1.6);opacity:0}}
.moto .cuerpo{position:absolute;inset:6px;display:grid;place-items:center;transition:transform .9s var(--ease)}
.moto svg{width:42px;height:42px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.5))}
.pin-local,.pin-cliente{display:grid;place-items:center;width:44px;height:44px}
.pin-local span,.pin-cliente span{display:grid;place-items:center;width:36px;height:36px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);box-shadow:0 6px 14px rgba(0,0,0,.5)}
.pin-local span{background:var(--vino2);border:2px solid var(--naranja)}
.pin-cliente span{background:var(--crema);border:2px solid var(--ink)}
.pin-local b,.pin-cliente b{transform:rotate(45deg);font-size:17px}
.ruta-viva{stroke-dasharray:2 12;stroke-linecap:round;animation:hormiga 1s linear infinite}
@keyframes hormiga{to{stroke-dashoffset:-14}}
.eta{position:absolute;left:12px;right:12px;bottom:12px;z-index:500;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;
  background:rgba(20,4,5,.86);backdrop-filter:blur(10px);border:1px solid var(--linea)}
.eta b{font-family:var(--cond);font-size:26px;line-height:1;color:var(--naranja2)}
.eta span{font-size:13px;opacity:.8}

@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}
@media print{body{background:#fff!important}.no-print{display:none!important}.impresora .boca,.impresora .led{display:none}.ticket{box-shadow:none}}

/* ========== 4.4.0 · TEMA DE LA CARTA: modo claro (diseño del pastor, chat 16-10 13:46 VET) y modo oscuro ==========
   «Lo mismo pero diferente · así descansa más la vista»: fondo blanco, vino #930504 (títulos, sólidos, bordes), rojo #fe0113 (platos),
   naranja #ff8f1d (precios sin elegir, total, Continuar). Oscuro = el mismo diseño sobre brasa. Se elige con el botón ☀/☾ y se recuerda
   (html[data-tema]). Solo cliente (hoja del menú y pedido.html); el Admin no lo usa. */
.tema-ig{
  --t-fondo:#fff;--t-tinta:#930504;--t-titulo:#930504;--t-nombre:#fe0113;--t-acento:#ff8f1d;--t-solido:#930504;--t-sobre:#fff;
  --t-tarjeta:#fff;--t-borde:#930504;--t-linea:rgba(147,5,4,.16);--t-suave:#fff3ec;--t-ok:#0a7d3c;
  --ink:var(--t-fondo);--brasa:var(--t-tarjeta);--crema:var(--t-tinta);--oro:var(--t-acento);--naranja:var(--t-nombre);--naranja2:var(--t-solido);--rojo-p:var(--t-solido);
  --linea:var(--t-linea);--linea2:rgba(147,5,4,.3);--sombra:0 16px 40px rgba(147,5,4,.18);--negra:"Archivo Black",Impact,sans-serif;--script:"Yellowtail",cursive;
  background:var(--t-fondo);color:var(--t-tinta);color-scheme:light}
:root[data-tema="oscuro"] .tema-ig{
  --t-fondo:#140405;--t-tinta:#f6ead8;--t-titulo:#ff3b2b;--t-nombre:#f6ead8;--t-acento:#ff9a33;--t-solido:#c8130c;--t-sobre:#fff;
  --t-tarjeta:#21090a;--t-borde:#8a1d17;--t-linea:rgba(246,234,216,.13);--t-suave:#2c0d0c;--t-ok:#35d07f;
  --linea2:rgba(246,234,216,.26);--sombra:0 16px 40px rgba(0,0,0,.5);color-scheme:dark}
:root[data-tema="oscuro"] body.tema-ig,:root[data-tema="oscuro"]{background:#140405}
.tema-ig,.tema-ig .barra,.tema-ig .chips,.tema-ig .hoja-top{transition:background-color .35s var(--ease),color .35s var(--ease)}
.tema-ig .btn{border-radius:0;border:3px solid var(--t-borde);background:var(--t-tarjeta);color:var(--t-titulo);font-family:var(--negra);font-weight:400;letter-spacing:.02em;text-transform:uppercase}
.tema-ig .btn.fuego{background:var(--t-acento);color:#fff;border:0;box-shadow:none;font-size:19px}
.tema-ig .btn.fuego:active{background:var(--t-solido)}
.tema-ig .btn.verde{background:var(--t-tarjeta);border-color:var(--t-ok);color:var(--t-ok)}
.tema-ig .btn[disabled]{opacity:.5}

/* encabezado de la hoja */
.tema-ig .hoja-top{border-bottom:3px solid var(--t-solido);background:var(--t-fondo)}
.tema-ig .hoja-top img{filter:brightness(0) saturate(100%) invert(9%) sepia(93%) saturate(5200%) hue-rotate(356deg) brightness(78%)}
:root[data-tema="oscuro"] .tema-ig .hoja-top img{filter:none}
.tema-ig .redondo{background:var(--t-tarjeta);border-radius:0;border:2.5px solid var(--t-borde)}
.tema-ig .redondo path{stroke:var(--t-titulo)}
.tema-ig .hoja-top{gap:8px}
.tema-ig .paso{font-family:var(--negra);opacity:1;color:var(--t-titulo);letter-spacing:.02em;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis}
@media (max-width:400px){.tema-ig .hoja-top img{width:50px}.tema-ig .tema-btn{width:40px;height:40px}}
@media (max-width:420px){.tema-ig .paso{display:none}.tema-ig .hoja-top .tema-btn{margin-left:auto}}
.tema-ig .moneda{background:var(--t-tarjeta);border-radius:0;border:2.5px solid var(--t-borde);padding:2px}
.tema-ig .moneda button{border-radius:0;color:var(--t-acento);font-family:var(--negra);font-weight:400}
.tema-ig .moneda button[aria-pressed="true"]{background:var(--t-solido);color:var(--t-sobre)}
/* botón claro/oscuro (sol / luna) */
.tema-btn{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:0;border:2.5px solid var(--t-borde,#930504);background:var(--t-tarjeta,#fff);color:var(--t-titulo,#930504)}
.tema-btn svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;transition:transform .5s var(--rebote)}
.tema-btn .luna{display:none}
:root[data-tema="oscuro"] .tema-btn .sol{display:none}
:root[data-tema="oscuro"] .tema-btn .luna{display:block}
.tema-btn:active svg{transform:rotate(-40deg) scale(.85)}

/* chips de categoría: activo vino relleno, el resto blanco con letras naranja */
.tema-ig .chips{background:linear-gradient(var(--t-fondo) 82%,transparent)}
.tema-ig .chips button{border-radius:0;border:2.5px solid var(--t-borde);background:var(--t-tarjeta);color:var(--t-acento);font-family:var(--negra);font-weight:400;font-size:15px}
.tema-ig .chips button[aria-current="true"]{background:var(--t-solido);color:var(--t-sobre);border-color:var(--t-solido)}

/* carta: títulos de categoría gigantes en vino, platos en rojo, descripción simple */
.tema-ig .cat{font-family:var(--negra);font-weight:400;color:var(--t-titulo);font-size:clamp(40px,12.5vw,68px);line-height:.86;letter-spacing:-.01em;margin:30px 0 8px;
  text-transform:uppercase;scroll-margin-top:84px}
.tema-ig .item{border-bottom:0;padding:12px 0 16px}
.tema-ig .item .n{font-family:var(--negra);font-weight:400;font-size:clamp(20px,6vw,26px);line-height:1.05;letter-spacing:0;text-transform:none;color:var(--t-nombre)}
.tema-ig .item .n small{font-family:var(--fuente);font-weight:500;font-size:15px;line-height:1.3;color:var(--t-tinta);opacity:1;margin-top:4px}
.tema-ig .item .p{font-family:var(--negra);font-weight:400;color:var(--t-acento)}
.tema-ig .item.agotado{opacity:.5}
.tema-ig .item .quedan{color:var(--t-sobre);background:var(--t-solido);padding:2px 6px}
.tema-ig .talla{border-radius:0;border:2.5px solid var(--t-borde);background:var(--t-tarjeta);color:var(--t-acento)}
.tema-ig .talla b{font-family:var(--negra);font-weight:400;font-size:15px}
.tema-ig .talla span{color:var(--t-acento);font-family:var(--negra);font-size:14px}
.tema-ig .talla[aria-pressed="true"]{background:var(--t-solido);color:var(--t-sobre);border-color:var(--t-solido)}
.tema-ig .talla[aria-pressed="true"] span{color:var(--t-sobre)}
.tema-ig .talla em{border-radius:0;background:var(--t-acento);color:#fff}
.tema-ig .conts-t{font-family:var(--negra);font-weight:400;color:var(--t-titulo);letter-spacing:0}
.tema-ig .cont{border-radius:0;border:2.5px solid var(--t-borde);background:var(--t-tarjeta);color:var(--t-acento);font-family:var(--negra);font-weight:400}
.tema-ig .cont[aria-pressed="true"]{background:var(--t-solido);color:var(--t-sobre);border-color:var(--t-solido)}
.tema-ig .cont-linea{color:var(--t-tinta);font-weight:600}.tema-ig .cont-linea button{color:var(--t-titulo);border:2px solid var(--t-borde)}
.tema-ig .stepper{background:var(--t-tarjeta);border-radius:0;border:2.5px solid var(--t-borde);padding:2px}
.tema-ig .stepper.vacio{border:0;padding:0;background:none}
.tema-ig .stepper button{border-radius:0;color:var(--t-titulo);font-weight:700}
.tema-ig .stepper button.mas{background:var(--t-solido);color:var(--t-sobre);width:48px;height:48px;font-size:30px}
.tema-ig .stepper output{font-family:var(--negra);font-weight:400;color:var(--t-titulo)}
.tema-ig .estado-mini{display:none}
.tema-ig .aviso-cerrado{margin:14px 0 4px}
.tema-ig .aviso-cerrado,.tema-ig .cuenta-mesa{border-radius:0;background:var(--t-suave);border:3px solid var(--t-solido);color:var(--t-tinta)}
.tema-ig .cuenta-mesa b{color:var(--t-nombre)}
.tema-ig .cuenta-mesa .ya a{border-radius:0;background:var(--t-solido)}

/* barra inferior: bloque vino, total naranja, Continuar naranja (como el diseño del pastor) */
.barra.tema-ig{background:linear-gradient(180deg,transparent,var(--t-fondo) 30%)}
.tema-ig .barra-in{background:var(--t-solido);border:0;border-radius:0;box-shadow:none}
.tema-ig .total b{font-family:var(--negra);font-weight:400;font-size:30px;color:var(--t-acento)}
.tema-ig .total span{color:#fff;opacity:.9}
.barra.tema-ig .btn.fuego{background:var(--t-acento);color:#fff;box-shadow:none}
.barra.tema-ig .btn.fuego[disabled]{opacity:1;cursor:default}

/* entrega y resumen */
.tema-ig .titulo{font-family:var(--negra);font-weight:400;color:var(--t-titulo);font-size:clamp(30px,9vw,46px);line-height:.9;letter-spacing:0}
.tema-ig .modo{border-radius:0;border:3px solid var(--t-borde);background:var(--t-tarjeta);color:var(--t-acento)}
.tema-ig .modo svg{stroke:var(--t-acento)}
.tema-ig .modo b{font-family:var(--negra);font-weight:400;font-size:16px}
.tema-ig .modo[aria-pressed="true"]{background:var(--t-solido);color:var(--t-sobre);border-color:var(--t-solido)}
.tema-ig .modo[aria-pressed="true"] svg{stroke:var(--t-sobre)}
.tema-ig .campo>span,.tema-ig .campo label{opacity:1;color:var(--t-titulo);font-family:var(--negra);font-size:12px;letter-spacing:.06em}
.tema-ig .campo input,.tema-ig .campo select,.tema-ig .campo textarea{border-radius:0;border:2.5px solid var(--t-borde);background:var(--t-tarjeta);color:var(--t-tinta)}
.tema-ig .campo select option{background:var(--t-tarjeta);color:var(--t-tinta)}
.tema-ig .costo-delivery{border-radius:0;background:var(--t-suave);border:3px solid var(--t-solido)}
.tema-ig .costo-delivery b{font-family:var(--negra);font-weight:400;color:var(--t-nombre)}
.tema-ig .resumen{border-radius:0;background:var(--t-tarjeta);border:3px solid var(--t-solido)}
.tema-ig .r-tot{font-family:var(--negra);font-weight:400;color:var(--t-titulo);border-top-color:var(--linea2)}
.tema-ig .mapa-pedido,.tema-ig .mapa{border-radius:0;border:3px solid var(--t-solido)}
.tema-ig .demo a,.tema-ig .mapa-ayuda{color:var(--t-tinta)}

/* pedido.html (pago, seguimiento y factura) */
.tema-ig .top{background:var(--t-fondo);border-bottom:3px solid var(--t-solido);backdrop-filter:none}
.tema-ig .top img{filter:brightness(0) saturate(100%) invert(9%) sepia(93%) saturate(5200%) hue-rotate(356deg) brightness(78%)}
:root[data-tema="oscuro"] .tema-ig .top img{filter:none}
.tema-ig .top .num{font-family:var(--negra);font-weight:400;color:var(--t-titulo)}
.tema-ig .top .pill{background:var(--t-suave);border-radius:0}
.tema-ig .hero h1{font-family:var(--negra);font-weight:400;color:var(--t-titulo);font-size:clamp(34px,11vw,58px);line-height:.88;letter-spacing:-.01em}
.tema-ig .hero p{opacity:1;color:var(--t-tinta);font-family:var(--fuente);font-weight:500;font-size:17px;line-height:1.35;text-shadow:none}
.tema-ig .hito i{background:var(--t-tarjeta);border:2.5px solid var(--t-borde);border-radius:50%;color:var(--t-titulo)}
.tema-ig .hito.hecho i{background:var(--t-solido);color:var(--t-sobre)}
.tema-ig .linea::before{background:var(--linea2)}
.tema-ig .bloque{background:var(--t-tarjeta);border:3px solid var(--t-solido);border-radius:0}
.tema-ig .bloque h2,.tema-ig #h-factura{font-family:var(--negra);font-weight:400;color:var(--t-titulo);font-size:clamp(26px,8vw,38px);line-height:.9;letter-spacing:0}
.tema-ig .metodo{border-radius:0;border:2.5px solid var(--linea2);background:var(--t-tarjeta)}
.tema-ig .metodo:has(input:checked){border-color:var(--t-solido);background:var(--t-suave)}
.tema-ig .metodo .cab b{font-family:var(--negra);font-weight:400;font-size:17px;color:var(--t-nombre)}
.tema-ig .metodo .cab em{font-family:var(--negra);font-weight:400;color:var(--t-acento)}
.tema-ig .copiar{border-radius:0;background:var(--t-solido);color:var(--t-sobre)}
.tema-ig .cuenta-tot{font-family:var(--negra);font-weight:400;color:var(--t-titulo)}
.tema-ig .ayuda{color:var(--t-tinta)}

/* 4.5.0 avisos de la cuenta compartida (cliente ↔ mesero): franja arriba, colores de la carta del pastor */
.avisos{position:fixed;left:0;right:0;top:calc(8px + env(safe-area-inset-top));z-index:95;display:grid;gap:6px;padding:0 12px;pointer-events:none;justify-items:center}
.aviso-vivo{pointer-events:auto;width:100%;max-width:520px;text-align:left;padding:12px 14px;background:var(--t-solido,#930504);color:#fff;border:3px solid var(--t-acento,#ff8f1d);
  font-family:"Archivo Black",Impact,sans-serif;font-size:15px;line-height:1.25;box-shadow:0 12px 30px rgba(20,4,5,.35);animation:aviso-baja .35s cubic-bezier(.2,1.5,.4,1)}
@keyframes aviso-baja{from{transform:translateY(-24px);opacity:0}}
@media (prefers-reduced-motion:reduce){.aviso-vivo{animation:none}}
