
:root{--accent:#f06445;--accent2:#f6b73c;--ink:#171717;--muted:#777;--line:#ece9e4;--paper:#fbfaf7;--card:#fff;--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}.shell{max-width:1180px;margin:auto;padding:0 22px}.hero{padding:30px 0 26px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 15%,white),white 55%,color-mix(in srgb,var(--accent2) 10%,white));border-bottom:1px solid var(--line)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:52px;height:52px;border-radius:17px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;color:white;font-size:25px;box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 24%,transparent)}.brand h1{font:600 21px Arial;margin:0}.brand span{font-size:13px;color:var(--muted)}.top-actions{display:flex;gap:10px}.icon-btn,.primary-btn{border:0;text-decoration:none;cursor:pointer;border-radius:15px;padding:12px 15px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.icon-btn{background:white;color:var(--ink);box-shadow:0 7px 24px rgba(0,0,0,.07)}.primary-btn{background:var(--ink);color:white}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:end;padding-top:45px}.eyebrow{display:inline-flex;background:white;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700}.hero h2{font:800 clamp(40px,6vw,74px)/.98 Arial;letter-spacing:-.055em;margin:18px 0 16px;max-width:760px}.hero p{color:#5f5f5f;font-size:18px;line-height:1.6;max-width:650px;margin:0}.info-card{background:rgba(255,255,255,.78);backdrop-filter:blur(12px);padding:20px;border:1px solid rgba(255,255,255,.9);border-radius:24px;box-shadow:0 20px 50px rgba(31,25,20,.08);display:grid;gap:13px}.info-row{display:flex;gap:12px;align-items:flex-start}.info-row b{display:block;font-size:14px}.info-row span{color:var(--muted);font-size:13px}.search-area{padding:24px 0 0}.search{display:flex;align-items:center;background:white;border:1px solid var(--line);border-radius:18px;padding:0 17px;box-shadow:0 8px 30px rgba(0,0,0,.04)}.search input{width:100%;border:0;outline:0;padding:16px 12px;font:500 16px inherit;background:transparent}.category-wrap{position:sticky;top:0;z-index:10;background:rgba(251,250,247,.9);backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.categories{display:flex;gap:10px;overflow:auto;padding:13px 0;scrollbar-width:none}.categories::-webkit-scrollbar{display:none}.cat{white-space:nowrap;border:1px solid var(--line);background:white;color:#444;border-radius:999px;padding:10px 15px;font-weight:700;cursor:pointer}.cat.active{background:var(--ink);color:white;border-color:var(--ink)}.menu-main{padding:36px 0 70px}.section{scroll-margin-top:85px;margin-bottom:45px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:17px}.section h3{font:800 28px Arial;margin:0}.section-head span{color:var(--muted);font-size:14px}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.product{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:13px;display:grid;grid-template-columns:155px 1fr;gap:17px;min-height:180px;transition:.25s ease;cursor:pointer;overflow:hidden}.product:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(0,0,0,.08)}.product-img{width:100%;height:100%;min-height:154px;border-radius:18px;object-fit:cover}.product-body{padding:5px 6px 5px 0;display:flex;flex-direction:column}.badge{align-self:flex-start;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent);font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;border-radius:999px;padding:6px 9px;margin-bottom:9px}.product h4{font:800 19px Arial;margin:0 0 7px}.product p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.price{margin-top:auto;padding-top:13px;font-weight:800;font-size:18px}.floating-wa{position:fixed;right:22px;bottom:22px;background:#171717;color:#fff;padding:14px 18px;border-radius:999px;text-decoration:none;font-weight:800;box-shadow:0 12px 40px rgba(0,0,0,.2);z-index:20}.empty{padding:40px;text-align:center;color:var(--muted)}.footer{padding:30px 0 95px;color:var(--muted);text-align:center;border-top:1px solid var(--line)}
.modal{position:fixed;inset:0;background:rgba(10,10,10,.52);display:none;align-items:flex-end;justify-content:center;z-index:30;padding:20px}.modal.open{display:flex}.modal-card{background:white;width:min(720px,100%);border-radius:28px;padding:16px;display:grid;grid-template-columns:260px 1fr;gap:22px;box-shadow:0 30px 80px rgba(0,0,0,.25);animation:up .25s ease}.modal-card img{width:100%;height:260px;object-fit:cover;border-radius:20px}.modal-content{padding:15px 15px 15px 0}.close{float:right;border:0;background:#f2f2f2;border-radius:50%;width:38px;height:38px;cursor:pointer}.modal h3{font:800 30px Arial;margin:35px 0 10px}.modal p{color:var(--muted);line-height:1.6}.modal-price{font-size:23px;font-weight:800;margin:18px 0}.modal .primary-btn{width:100%}@keyframes up{from{transform:translateY(25px);opacity:0}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;gap:25px;padding-top:35px}.info-card{display:none}.top-actions .hide-mobile{display:none}.product-grid{grid-template-columns:1fr}.product{grid-template-columns:125px 1fr;min-height:150px}.product-img{min-height:126px}.modal-card{grid-template-columns:1fr;max-height:92vh;overflow:auto}.modal-card img{height:230px}.modal-content{padding:0 8px 10px}.hero h2{font-size:47px}.floating-wa{left:20px;right:20px;text-align:center}}
@media(max-width:430px){.shell{padding:0 15px}.hero{padding-top:18px}.brand-mark{width:45px;height:45px}.hero h2{font-size:40px}.hero p{font-size:16px}.product{grid-template-columns:105px 1fr;padding:10px;gap:12px;border-radius:20px}.product-img{min-height:112px}.product h4{font-size:17px}.product p{font-size:13px}.badge{margin-bottom:6px}.price{font-size:16px}}
.table-chip{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:999px;font-weight:700}.table-chip.warning{color:#9a5a25}.product-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:end;gap:10px}.product-bottom .price{margin:0}.add-btn{border:0;background:var(--ink);color:#fff;border-radius:12px;padding:10px 12px;font-weight:800;cursor:pointer}.add-btn:disabled{opacity:.35}.cart-fab{position:fixed;z-index:25;right:22px;bottom:22px;border:0;border-radius:999px;background:#171717;color:#fff;padding:13px 18px;display:flex;align-items:center;gap:11px;font-weight:800;box-shadow:0 15px 45px rgba(0,0,0,.25);cursor:pointer}.cart-fab b{background:var(--accent);min-width:27px;height:27px;border-radius:999px;display:grid;place-items:center}.cart-fab:disabled{display:none}.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:39;opacity:0;pointer-events:none;transition:.25s}.drawer-backdrop.open{opacity:1;pointer-events:auto}.cart-drawer{position:fixed;z-index:40;right:0;top:0;height:100%;width:min(440px,100%);background:#fff;transform:translateX(102%);transition:.3s ease;display:flex;flex-direction:column;padding:22px;box-shadow:-20px 0 60px rgba(0,0,0,.16)}.cart-drawer.open{transform:none}.cart-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:16px}.cart-head small{color:var(--muted)}.cart-head h3{font:800 28px Arial;margin:3px 0}.cart-head button{border:0;background:#eee;width:38px;height:38px;border-radius:50%;font-size:24px}.cart-items{overflow:auto;flex:1;padding:10px 0}.cart-row{display:grid;grid-template-columns:58px 1fr auto;gap:11px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cart-row img{width:58px;height:58px;border-radius:14px;object-fit:cover}.cart-row span{display:block;color:var(--muted);font-size:13px;margin-top:3px}.qty{display:flex;align-items:center;gap:8px}.qty button{border:1px solid var(--line);background:#fff;width:31px;height:31px;border-radius:10px}.order-note{font-size:13px;font-weight:700;display:grid;gap:7px}.order-note textarea{border:1px solid var(--line);border-radius:13px;padding:11px;min-height:65px;resize:vertical}.cart-summary{display:flex;justify-content:space-between;font-size:20px;padding:15px 0}.send-order{border:0;background:var(--accent);color:#fff;border-radius:15px;padding:15px;font-size:16px;font-weight:800}.send-order:disabled{opacity:.4}.order-help{text-align:center;color:var(--muted);font-size:12px}.cart-empty{text-align:center;color:var(--muted);padding:50px 10px}.toast{position:fixed;left:50%;bottom:100px;z-index:60;transform:translate(-50%,20px);opacity:0;background:#171717;color:#fff;padding:12px 17px;border-radius:999px;transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:600px){.cart-fab{left:15px;right:15px;justify-content:center}.cart-fab strong{margin-left:auto}.product-bottom{align-items:center}.add-btn{padding:9px 10px;font-size:12px}.topbar{align-items:flex-start}.table-chip{font-size:12px}}

.table-chip.web{background:#171717;color:#fff;border-color:#171717}.web-order-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 0}.web-order-fields label{font-size:12px;font-weight:800;display:grid;gap:6px}.web-order-fields input{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px;font:inherit}@media(max-width:460px){.web-order-fields{grid-template-columns:1fr}}


/* Selector de cantidad en tarjetas */
.product-add{display:flex;align-items:center;gap:8px}.product-qty{display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;height:38px}.product-qty button{width:32px;height:100%;border:0;background:#fff;font-size:18px;cursor:pointer}.product-qty button:active{background:#f1efeb}.product-qty strong{min-width:26px;text-align:center;font-size:14px}.add-btn{height:38px}
/* Seguimiento permanente del pedido */
.order-tracker{position:fixed;z-index:28;right:18px;top:18px;width:min(370px,calc(100vw - 36px));display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center;background:rgba(255,255,255,.96);border:1px solid var(--line);border-left:5px solid #d79a2b;border-radius:18px;padding:14px 15px;box-shadow:0 18px 50px rgba(0,0,0,.16);backdrop-filter:blur(12px)}.order-tracker[hidden]{display:none}.tracker-icon{width:44px;height:44px;border-radius:14px;background:#f4eee2;display:grid;place-items:center;font-size:22px;font-weight:900}.order-tracker small,.order-tracker span{display:block}.order-tracker small{color:var(--muted);font-size:11px;margin-bottom:2px}.order-tracker strong{display:block;font-size:15px;margin-bottom:3px}.order-tracker span{font-size:12px;line-height:1.35;color:#666}.order-tracker[data-status="confirmed"]{border-left-color:#2a9d68}.order-tracker[data-status="confirmed"] .tracker-icon{background:#e3f5ec;color:#14784b}.order-tracker[data-status="preparing"]{border-left-color:#e46b35}.order-tracker[data-status="preparing"] .tracker-icon{background:#fff0e8;color:#b84a1e}.order-tracker[data-status="delivered"]{border-left-color:#2479c6}.order-tracker[data-status="delivered"] .tracker-icon{background:#e8f2fc;color:#1b64a7}.order-tracker[data-status="cancelled"]{border-left-color:#c83f46}.order-tracker[data-status="cancelled"] .tracker-icon{background:#fbe8e9;color:#a9272d}.order-tracker.changed{animation:trackerPulse .7s ease}@keyframes trackerPulse{0%{transform:scale(.96);opacity:.65}55%{transform:scale(1.025)}100%{transform:scale(1);opacity:1}}
@media(max-width:700px){.order-tracker{top:10px;right:10px;width:calc(100vw - 20px);grid-template-columns:40px 1fr;padding:11px 12px;border-radius:15px}.tracker-icon{width:38px;height:38px;border-radius:11px}.order-tracker span{font-size:11px}.product-bottom{align-items:flex-end;flex-direction:column}.product-bottom .price{align-self:flex-start}.product-add{width:100%;justify-content:flex-end}.product-qty{height:36px}.add-btn{height:36px}}
@media(max-width:390px){.product-add{gap:5px}.product-qty button{width:28px}.add-btn{padding:8px 9px}}

/* Portada SVG configurable */
.hero-cover{position:relative;min-height:360px;margin-top:30px;border-radius:34px;overflow:hidden;padding:42px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:28px;background:#171717;color:#fff;box-shadow:0 28px 70px rgba(0,0,0,.13)}.hero-copy{position:relative;z-index:2}.hero-cover h2{font:800 clamp(38px,5.8vw,72px)/.96 Arial;margin:18px 0 16px;max-width:720px}.hero-cover p{color:rgba(255,255,255,.78);font-size:17px;line-height:1.55}.hero-cover .eyebrow{color:#171717}.hero-art{position:absolute;inset:0;pointer-events:none}.hero-art svg{width:100%;height:100%}.hero-art .orb{fill:url(#heroG);opacity:.42;filter:url(#soft)}.hero-art .wave{fill:none;stroke:rgba(255,255,255,.18);stroke-width:12;stroke-linecap:round}.hero-symbols{fill:none;stroke:rgba(255,255,255,.72);stroke-width:8;stroke-linecap:round;stroke-linejoin:round}.hero-neon{background:radial-gradient(circle at 75% 20%,color-mix(in srgb,var(--accent) 35%,transparent),transparent 34%),#11101a}.hero-neon .hero-symbols{filter:drop-shadow(0 0 12px var(--accent2))}.hero-italia{background:linear-gradient(135deg,#271b16,#5b281d)}.hero-garden{background:linear-gradient(135deg,#173628,#315f3b)}.hero-minimal{background:linear-gradient(135deg,#202020,#484848)}.hero-cover .info-card{position:relative;z-index:2;color:var(--ink);align-self:end}.hero-cover .info-card span{color:var(--muted)}
/* Modales de aplicación: nunca alert() */
.app-modal{position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.52);display:none;align-items:center;justify-content:center;padding:20px}.app-modal.open{display:flex}.app-modal-card{position:relative;width:min(430px,100%);background:#fff;border-radius:26px;padding:30px;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.28);animation:modalIn .22s ease}.app-modal-close{position:absolute;right:15px;top:15px;border:0;background:#f0efec;border-radius:50%;width:36px;height:36px;font-size:21px;cursor:pointer}.app-modal-icon{margin:0 auto 15px;width:55px;height:55px;border-radius:18px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 15%,white);color:var(--accent);font-size:26px;font-weight:900}.app-modal h3{font:800 25px Arial;margin:0 0 10px}.app-modal p{color:var(--muted);line-height:1.55;margin:0 0 17px}.modal-code{font:800 18px Arial;background:#f4f2ee;border:1px dashed #d4cfc6;border-radius:13px;padding:12px;margin-bottom:17px;word-break:break-all}.modal-ok{width:100%;border:0;background:var(--ink);color:#fff;border-radius:14px;padding:13px;font-weight:800;cursor:pointer}@keyframes modalIn{from{opacity:0;transform:translateY(14px) scale(.97)}}
@media(max-width:800px){.hero-cover{min-height:410px;padding:30px 24px;grid-template-columns:1fr;align-items:start}.hero-art{opacity:.75}.hero-cover .info-card{display:none}.hero-cover h2{font-size:46px;max-width:92%}}
@media(max-width:430px){.hero-cover{margin-top:20px;border-radius:25px;min-height:390px;padding:27px 20px}.hero-cover h2{font-size:39px}.hero-cover p{font-size:15px}}

/* v5 refinements */
.hero{background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 28%,#fff),color-mix(in srgb,var(--accent2) 18%,#fff) 55%,#fff)}
.hero-cover{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 88%,#111),color-mix(in srgb,var(--accent2) 68%,#1b1b1b));overflow:hidden}
.hero-italia{background:linear-gradient(135deg,#7b211c,#d85d3f 52%,#f1aa55)}.hero-neon{background:linear-gradient(135deg,#111124,#32216e 52%,#bf3f93)}.hero-garden{background:linear-gradient(135deg,#153d31,#317b5e 55%,#9cbe78)}.hero-minimal{background:linear-gradient(135deg,#202020,#555 58%,#8b8b8b)}
.hero-copy{position:relative;z-index:2;text-shadow:0 2px 18px rgba(0,0,0,.38)}.hero-copy h2,.hero-copy p{color:#fff}.hero-copy .eyebrow{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.32);color:#fff;backdrop-filter:blur(8px)}
.hero-art{opacity:.72}.hero-art svg{width:100%;height:100%}.hero-disc{fill:rgba(255,255,255,.12)}.hero-disc-small{fill:rgba(255,255,255,.22)}.hero-emblem rect{fill:rgba(255,255,255,.18);stroke:rgba(255,255,255,.5);stroke-width:2}.hero-emblem circle{fill:none;stroke:#fff;stroke-width:7}.hero-emblem path{stroke:#fff;stroke-width:7;stroke-linecap:round}.wave,.orb,.hero-symbols{display:none}
.product{cursor:pointer}.product:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:3px}.footer a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.product-modal{position:fixed;inset:0;z-index:75;background:rgba(14,14,14,.66);display:none;align-items:center;justify-content:center;padding:20px}.product-modal.open{display:flex}.product-modal-card{position:relative;width:min(760px,100%);max-height:min(88vh,850px);overflow:auto;background:#fff;border-radius:28px;box-shadow:0 35px 100px rgba(0,0,0,.32);animation:modalIn .22s ease}.product-modal-close{position:absolute;right:16px;top:16px;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.92);font-size:24px;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.14)}.product-modal-card>img{width:100%;height:320px;object-fit:cover;display:block;background:#f2eee7}.product-modal-content{padding:28px}.product-modal-content h3{font:800 30px Arial;margin:10px 0 8px}.product-modal-summary{font-size:17px;color:#555;line-height:1.55}.product-modal-detail{margin:20px 0;padding-top:20px;border-top:1px solid var(--line);white-space:pre-line;color:#3f3f3f;line-height:1.7}.product-modal-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px}.product-modal-bottom>strong{font-size:25px}.product-modal-actions{display:flex;align-items:center;gap:12px}.form-section{border-top:1px solid #e8e5df;padding-top:22px;margin-top:8px}.form-section b{display:block;font-size:18px}.form-section small,.field small{display:block;color:#777;margin-top:5px}.image-preview{width:180px;height:125px;border-radius:18px;overflow:hidden;background:#eee}.image-preview img{width:100%;height:100%;object-fit:cover}.notice.error{background:#fff0ee;color:#8b2922}
@media(max-width:650px){.product-modal-card>img{height:220px}.product-modal-content{padding:22px}.product-modal-bottom{align-items:stretch;flex-direction:column}.product-modal-actions{justify-content:space-between}.product-modal-actions .add-btn{flex:1}.hero-art{opacity:.45}}

/* v6 refinements */
.hero-cover{min-height:250px;padding:30px 34px;margin-top:22px;border-radius:28px;background:linear-gradient(135deg,var(--hero1,#2b211d),var(--hero2,#6a3b2d))}.hero-cover h2{font-size:clamp(34px,5vw,58px);margin:10px 0}.hero-cover p{margin:0;max-width:620px}.hero-art{opacity:.28}.hero-motif{fill:none;stroke:rgba(255,255,255,.72);stroke-width:8;stroke-linecap:round}.hero-restaurant{--hero1:#1c2321;--hero2:#556052}.hero-bar{--hero1:#140f22;--hero2:#55234f}.hero-pizzeria{--hero1:#4b1f18;--hero2:#c45a2b}.hero-burger{--hero1:#2b1913;--hero2:#a84a1c}.hero-hotdog{--hero1:#43211d;--hero2:#d68027}.hero-fries{--hero1:#47340c;--hero2:#d49c20}.hero-drinks{--hero1:#123342;--hero2:#2d8aa3}.hero-icecream{--hero1:#7d4964;--hero2:#d99fb7}.hero-coffee{--hero1:#2c1b16;--hero2:#80543d}.hero-seafood{--hero1:#0f3443;--hero2:#26798c}.product-modal-card{display:grid;grid-template-columns:minmax(220px,42%) 1fr;width:min(820px,96vw);max-height:82vh;overflow:hidden}.product-modal-card>img{height:100%;min-height:430px}.product-modal-content{min-width:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#bbb transparent}.product-modal-content::-webkit-scrollbar{width:7px}.product-modal-content::-webkit-scrollbar-thumb{background:#bbb;border-radius:99px}.tip-box{border:1px solid var(--line);border-radius:16px;padding:14px;margin-top:14px}.tip-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.tip-heading span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.tip-switch input{display:none}.tip-switch i{display:block;width:46px;height:26px;border-radius:99px;background:#ddd;position:relative}.tip-switch i:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.tip-switch input:checked+i{background:var(--accent)}.tip-switch input:checked+i:after{transform:translateX(20px)}.tip-options{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tip-choice{border:1px solid var(--line);background:#fff;border-radius:11px;padding:9px 11px;font-weight:700}.tip-choice.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}#customTipWrap{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:11px;padding:0 10px}#customTipWrap input{border:0;outline:0;width:120px;padding:9px 0}.cart-totals{padding:10px 0}.cart-totals>div{display:flex;justify-content:space-between;padding:5px 0}.cart-totals .cart-summary{border-top:1px solid var(--line);margin-top:5px;padding-top:12px;font-size:20px}
@media(max-width:650px){.hero-cover{min-height:225px;padding:24px 20px}.hero-cover h2{font-size:38px}.product-modal-card{display:block;max-height:88vh;overflow:hidden}.product-modal-card>img{height:190px;min-height:190px}.product-modal-content{max-height:calc(88vh - 190px);padding:18px}.product-modal-content h3{font-size:25px}.product-modal-detail{margin:12px 0;padding-top:12px}.product-modal-bottom{margin-top:14px}}


/* v7 refinements */
:root{--content-width:1120px}.shell{width:min(100%,var(--content-width));max-width:var(--content-width);padding-left:22px;padding-right:22px}.category-wrap .shell,.menu-main{width:min(100%,var(--content-width));max-width:var(--content-width)}
.table-action{border:0;cursor:pointer;font:inherit}.table-action small{display:block;font-size:10px;font-weight:600;opacity:.72;margin-top:2px}.info-row a{color:inherit;text-decoration:none}
.tip-heading{margin-bottom:12px}.tip-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tip-choice,.custom-tip-option,.tip-none{min-height:48px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px 12px;font:inherit;font-weight:800;cursor:pointer}.tip-choice.active,.custom-tip-option.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.custom-tip-option{display:flex;align-items:center;justify-content:space-between;gap:8px}.custom-tip-input{display:flex;align-items:center;gap:4px}.custom-tip-input input{width:92px;border:0;border-bottom:1px solid var(--line);padding:5px;background:transparent;font:inherit}.tip-none{grid-column:1/-1;background:transparent;color:var(--muted);min-height:40px}.tip-none.active{background:#f3f1ed;color:var(--ink)}
.table-modal{position:fixed;inset:0;background:rgba(15,15,15,.5);display:grid;place-items:center;padding:18px;z-index:100;opacity:0;pointer-events:none;transition:.2s}.table-modal.open{opacity:1;pointer-events:auto}.table-modal-card{width:min(420px,100%);background:#fff;border-radius:24px;padding:28px;position:relative;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.22)}.table-input{display:grid;text-align:left;gap:7px;margin:20px 0}.table-input span{font-size:13px;font-weight:800}.table-input input{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px;font:inherit}
@media(max-width:700px){.shell{padding-left:16px;padding-right:16px}.tip-options{grid-template-columns:1fr}.tip-none{grid-column:auto}}

/* v8: seguimiento centrado, carrito con scroll general y tema de portada */
body{background:linear-gradient(180deg,var(--page-bg1,#f4f1ec) 0,var(--page-bg2,#fbfaf7) 420px,var(--paper) 900px);background-attachment:fixed}
.hero{background:linear-gradient(145deg,color-mix(in srgb,var(--page-bg1) 82%,white),var(--page-bg2) 58%,color-mix(in srgb,var(--accent2) 9%,var(--page-bg2)))}
.category-wrap{background:color-mix(in srgb,var(--page-bg2) 88%,transparent)}
.order-tracker{left:50%;right:auto;top:16px;transform:translateX(-50%);width:min(430px,calc(100vw - 32px));grid-template-columns:46px minmax(0,1fr) auto;padding-right:11px}
.order-tracker.changed{animation:trackerPulseCenter .7s ease}
@keyframes trackerPulseCenter{0%{transform:translateX(-50%) scale(.96);opacity:.65}55%{transform:translateX(-50%) scale(1.025)}100%{transform:translateX(-50%) scale(1);opacity:1}}
.tracker-copy{min-width:0}.tracker-close{width:27px;height:27px;border:0;border-radius:50%;background:#f0efec;color:#555;font-size:18px;line-height:1;cursor:pointer;align-self:start}.tracker-close:hover{background:#e5e3df;color:#111}
.cart-drawer{overflow-y:auto;overscroll-behavior:contain;display:block;padding:0}
.cart-head{position:sticky;top:0;z-index:3;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);padding:22px;border-bottom:1px solid var(--line)}
.cart-items,.order-note,.tip-box,.cart-totals,.send-order,.order-help{margin-left:22px;margin-right:22px}
.cart-items{overflow:visible;flex:none;padding:10px 0}.order-note{margin-top:8px}.send-order{width:calc(100% - 44px)}.order-help{padding-bottom:20px}
.tip-box{padding:11px 12px}.tip-heading{margin-bottom:8px}.tip-heading b{font-size:14px}.tip-heading span{font-size:10px}.tip-options{gap:7px}.tip-choice,.custom-tip-option{min-height:40px;padding:7px 9px;font-size:12px}.tip-choice span,.custom-tip-input,.custom-tip-input input{font-size:12px}.custom-tip-input input{width:75px;padding:3px}.tip-none{min-height:34px;padding:6px 9px;font-size:11px}
@media(max-width:600px){.order-tracker{top:10px;width:calc(100vw - 20px)}.cart-head{padding:18px}.cart-items,.order-note,.tip-box,.cart-totals,.send-order,.order-help{margin-left:18px;margin-right:18px}.send-order{width:calc(100% - 36px)}}


/* v9 */
.info-row .info-value{color:var(--muted);font-size:13px;font-weight:400;text-decoration:none;font-family:inherit;line-height:1.35}.hero-art svg{overflow:visible}.hero-motif{fill:none;stroke:rgba(255,255,255,.72);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.hero-motif circle{fill:rgba(255,255,255,.12);stroke:rgba(255,255,255,.75)}.hero-motif .wing{fill:rgba(255,255,255,.07);stroke-width:2}.hero-icon-line{stroke-width:5}
.cart-row{grid-template-columns:26px 58px 1fr auto}.cart-remove{width:24px!important;height:24px!important;border:0!important;border-radius:50%!important;background:#f1efeb!important;color:#746f68;font-size:17px;line-height:1;cursor:pointer;padding:0}.cart-remove:hover{background:#f9dddd!important;color:#a52b2b}.available-table-list{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.available-table-btn{border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px 8px;font-weight:800;cursor:pointer}.available-table-btn.active{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.12)}.no-tables{grid-column:1/-1;background:#f7f3ee;border-radius:14px;padding:14px;color:var(--muted)}.modal-ok:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:460px){.available-table-list{grid-template-columns:repeat(2,1fr)}.cart-row{grid-template-columns:24px 48px 1fr}.cart-row .qty{grid-column:3;justify-self:start}.cart-row img{width:48px;height:48px}}


/* v10: pedidos por persona, portada temática y carrito con total fijo */
body{min-height:100vh;background:linear-gradient(160deg,var(--page-bg1) 0%,var(--page-bg2) 52%,color-mix(in srgb,var(--page-bg1) 45%,white) 100%);background-attachment:fixed}
.hero{background:linear-gradient(145deg,color-mix(in srgb,var(--page-bg1) 74%,white),color-mix(in srgb,var(--page-bg2) 92%,white) 58%,color-mix(in srgb,var(--accent2) 13%,var(--page-bg2)))}
.brand-mark{overflow:hidden}.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}
.topbar-order-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.table-order-hint{position:relative;max-width:360px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.95);border-radius:15px;padding:10px 31px 10px 13px;box-shadow:0 8px 24px rgba(0,0,0,.05);font-size:12px;line-height:1.4;color:#555}.table-order-hint button{position:absolute;right:7px;top:5px;border:0;background:transparent;font-size:17px;color:#888;cursor:pointer}.table-order-hint[hidden]{display:none}
.hero-art{right:12px;bottom:-8px;width:min(50%,560px);opacity:.95}.hero-art svg{width:100%;height:100%}.hero-decor{fill:rgba(255,255,255,.05);stroke:rgba(255,255,255,.16);stroke-width:2}.hero-decor circle{fill:rgba(255,255,255,.42);stroke:none}.hero-decor .spark{fill:rgba(255,255,255,.18);stroke:rgba(255,255,255,.52)}.hero-icon{fill:none;stroke:rgba(255,255,255,.9);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 7px 16px rgba(0,0,0,.16))}
.cart-drawer{display:flex;flex-direction:column;overflow:hidden;height:100dvh}.cart-head{flex:0 0 auto}.cart-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:12px}.cart-fixed{flex:0 0 auto;background:rgba(255,255,255,.98);border-top:1px solid var(--line);box-shadow:0 -12px 28px rgba(0,0,0,.06);padding-top:8px}.cart-fixed .order-help{padding-bottom:12px;margin-bottom:0}.cart-fixed .send-order{margin-bottom:0}.cart-items{padding-top:12px}
.table-customer-name{display:grid;text-align:left;gap:7px;margin:18px 0 4px}.table-customer-name span{font-size:13px;font-weight:800}.table-customer-name input{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px;font:inherit;outline:none}.table-customer-name input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}
@media(max-width:850px){.topbar{align-items:flex-start}.topbar-order-tools{flex-direction:column-reverse;align-items:flex-end}.table-order-hint{max-width:280px}.hero-art{opacity:.65}}
@media(max-width:600px){.topbar-order-tools{gap:7px}.table-order-hint{position:absolute;left:16px;right:16px;top:92px;max-width:none;z-index:2}.hero-cover{margin-top:76px}.hero-art{width:70%;right:-30px}.table-chip{white-space:nowrap}}

/* Estado del pedido integrado en la tarjeta del header */
.header-order-tracker{position:static!important;inset:auto!important;transform:none!important;width:100%!important;box-shadow:none!important;background:transparent!important;border:0!important;border-left:5px solid #d79a2b!important;border-radius:14px!important;padding:10px 8px 10px 12px!important;backdrop-filter:none!important}
.info-card.showing-order{align-content:center;min-height:155px}
.info-card #localInfoContent{display:grid;gap:13px}
.info-card #localInfoContent[hidden]{display:none}
.header-order-tracker .tracker-close{align-self:start}
@media(max-width:800px){.hero-cover .info-card{display:grid;margin-top:auto;padding:15px;border-radius:19px}.info-card.showing-order{min-height:125px}.header-order-tracker{grid-template-columns:40px minmax(0,1fr) auto!important}.header-order-tracker .tracker-icon{width:38px;height:38px}}

/* Decoración de portada discreta en la esquina superior derecha */
.hero-art{inset:auto -16px auto auto!important;top:-20px!important;bottom:auto!important;width:min(42%,430px)!important;height:74%!important;opacity:.36!important}
.hero-art svg{width:100%;height:100%;object-fit:contain;object-position:top right}
.hero-decor{opacity:.55}
.hero-icon{stroke:rgba(255,255,255,.82)}
@media(max-width:800px){.hero-art{right:-38px!important;top:-12px!important;width:62%!important;height:58%!important;opacity:.27!important}}

/* v12: posición estable de la ilustración de portada */
.hero-cover > .hero-art{
  position:absolute!important;
  inset:auto -18px auto auto!important;
  top:-18px!important;
  left:auto!important;
  bottom:auto!important;
  width:min(42%,430px)!important;
  height:74%!important;
  margin:0!important;
  transform:none!important;
  opacity:.36!important;
  display:block!important;
}
.hero-cover > .hero-art svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  transform:none!important;
  object-fit:contain;
  object-position:100% 0;
}
@media(max-width:800px){
  .hero-cover > .hero-art{
    right:-38px!important;
    top:-12px!important;
    width:62%!important;
    height:58%!important;
    opacity:.27!important;
  }
}


/* Ajustes compactos: identificación y carrito */
.table-modal-card{width:min(390px,100%);padding:20px 22px;border-radius:20px;max-height:calc(100dvh - 24px);overflow-y:auto;scrollbar-width:thin}
.table-modal-card::-webkit-scrollbar{width:6px}.table-modal-card::-webkit-scrollbar-thumb{background:#c9c4bc;border-radius:99px}
.table-modal-card .app-modal-close{top:10px;right:10px;width:31px;height:31px;font-size:18px}
.table-modal-card .app-modal-icon{width:43px;height:43px;border-radius:14px;font-size:21px;margin-bottom:9px}
.table-modal-card h3{font-size:21px;margin-bottom:6px}
.table-modal-card>p{font-size:13px;line-height:1.35;margin-bottom:10px}
.table-customer-name{gap:5px;margin:10px 0 3px}.table-customer-name span{font-size:11px}.table-customer-name input{padding:10px 11px;border-radius:11px;font-size:13px}
.available-table-list{gap:7px;margin:11px 0}.available-table-btn{padding:9px 6px;border-radius:11px;font-size:12px}
.table-modal-card .modal-ok{padding:11px;border-radius:12px;font-size:13px}

.cart-drawer{width:min(390px,100%)}
.cart-head{padding:15px 17px 11px}.cart-head h3{font-size:23px;margin-top:2px}.cart-head small{font-size:11px}.cart-head button{width:33px;height:33px;font-size:21px}
.cart-items,.order-note,.tip-box,.cart-totals,.send-order,.order-help{margin-left:16px;margin-right:16px}
.cart-scroll{padding-bottom:8px}.cart-items{padding-top:6px}
.cart-row{grid-template-columns:22px 48px 1fr auto;gap:8px;padding:8px 0}.cart-row img{width:48px;height:48px;border-radius:11px}.cart-row b{font-size:13px}.cart-row span{font-size:11px;margin-top:2px}.cart-remove{width:21px!important;height:21px!important;font-size:15px}.qty{gap:5px}.qty button{width:27px;height:27px;border-radius:8px}.qty strong{font-size:12px}
.order-note{font-size:11px;gap:5px}.order-note textarea{min-height:48px;padding:8px 9px;border-radius:10px;font-size:12px}
.tip-box{margin-top:9px;padding:9px 10px;border-radius:13px}.tip-heading{margin-bottom:5px}.tip-heading b{font-size:12px}.tip-heading span{font-size:9px}.tip-options{gap:5px;margin-top:7px}.tip-choice,.custom-tip-option{min-height:34px;padding:5px 7px;font-size:10px;border-radius:9px}.tip-choice span,.custom-tip-input,.custom-tip-input input{font-size:10px}.custom-tip-input input{width:58px}.tip-none{min-height:29px;padding:4px 7px;font-size:10px}
.cart-fixed{padding-top:5px}.cart-totals{padding:5px 0}.cart-totals>div{padding:3px 0;font-size:12px}.cart-totals .cart-summary{padding-top:8px;font-size:17px}.send-order{padding:12px;font-size:14px;border-radius:12px}.order-help{font-size:10px;line-height:1.3;margin-top:7px;padding-bottom:8px!important}
@media(max-width:460px){.table-modal{padding:10px}.table-modal-card{padding:18px 16px}.available-table-list{grid-template-columns:repeat(3,1fr)}.cart-drawer{width:100%}.cart-row{grid-template-columns:21px 44px 1fr}.cart-row img{width:44px;height:44px}.cart-row .qty{grid-column:3}}


/* v14: categorías como pestañas, sin desplazamiento entre secciones */
.cat{transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.cat:hover{transform:translateY(-1px)}.cat:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:2px}.cat[hidden]{display:none!important}
.menu-main{min-height:420px}.section{display:none;margin-bottom:0;animation:categoryTabIn .24s ease both}.section.active{display:block}.section[hidden]{display:none!important}.product[hidden]{display:none!important}
@keyframes categoryTabIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.section{animation:none}.cat{transition:none}}

/* Seguimiento del pedido: permanece en su tarjeta al inicio y flota al hacer scroll */
.header-order-tracker.is-floating{
 position:fixed!important;
 top:18px!important;
 right:18px!important;
 z-index:70!important;
 width:min(370px,calc(100vw - 36px))!important;
 background:rgba(255,255,255,.97)!important;
 border:1px solid var(--line)!important;
 border-left:5px solid #d79a2b!important;
 box-shadow:0 18px 50px rgba(0,0,0,.18)!important;
 backdrop-filter:blur(12px)!important;
 padding:14px 15px!important;
 border-radius:18px!important;
 animation:trackerFloatIn .22s ease;
}
.header-order-tracker.is-floating[data-status="confirmed"]{border-left-color:#2a9d68!important}
.header-order-tracker.is-floating[data-status="preparing"]{border-left-color:#e46b35!important}
.header-order-tracker.is-floating[data-status="delivered"]{border-left-color:#2479c6!important}
.header-order-tracker.is-floating[data-status="cancelled"]{border-left-color:#c83f46!important}
@keyframes trackerFloatIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@media(max-width:600px){
 .header-order-tracker.is-floating{top:10px!important;right:10px!important;width:calc(100vw - 20px)!important}
}

/* v15: aviso persistente y seguimiento compacto que se pega al hacer scroll */
.info-card.showing-order{
 padding:0!important;
 background:transparent!important;
 border:0!important;
 box-shadow:none!important;
 backdrop-filter:none!important;
 display:block!important;
}
.header-order-tracker,
.order-tracker.header-order-tracker{
 position:relative!important;
 inset:auto!important;
 width:100%!important;
 min-height:0!important;
 display:grid;
 grid-template-columns:36px minmax(0,1fr) auto;
 gap:9px;
 align-items:center;
 padding:9px 11px!important;
 border-radius:14px!important;
 box-sizing:border-box;
 box-shadow:0 10px 28px rgba(0,0,0,.10)!important;
}
.header-order-tracker .tracker-icon{
 width:34px!important;
 height:34px!important;
 border-radius:10px!important;
 font-size:17px!important;
}
.header-order-tracker .tracker-copy{min-width:0}
.header-order-tracker small{font-size:10px!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-order-tracker strong{font-size:13px!important;line-height:1.15!important;margin:1px 0 0!important}
.header-order-tracker .tracker-copy>span{font-size:10px!important;line-height:1.2!important;margin-top:2px!important}
.header-order-tracker .tracker-close{position:static!important;align-self:center}
.header-order-tracker.is-floating{
 position:fixed!important;
 top:10px!important;
 right:12px!important;
 left:auto!important;
 width:min(350px,calc(100vw - 24px))!important;
 padding:9px 11px!important;
 border-radius:14px!important;
 z-index:70!important;
}
@media(max-width:600px){
 .header-order-tracker.is-floating{top:8px!important;right:8px!important;width:calc(100vw - 16px)!important}
 .header-order-tracker .tracker-copy>span{display:none!important}
}


/* v16: información del local persistente + seguimiento grande en header y compacto al flotar */
.category-wrap{z-index:40}
.hero-cover .info-card{position:relative!important;overflow:visible}
.info-card.showing-order{
 position:relative!important;
 min-height:155px!important;
 padding:20px!important;
 background:rgba(255,255,255,.78)!important;
 border:1px solid rgba(255,255,255,.9)!important;
 border-radius:24px!important;
 box-shadow:0 20px 50px rgba(31,25,20,.08)!important;
 backdrop-filter:blur(12px)!important;
 display:grid!important;
}
.info-card.showing-order #localInfoContent{display:grid!important;gap:13px!important}
.header-order-tracker,
.order-tracker.header-order-tracker{
 position:absolute!important;
 inset:0!important;
 transform:none!important;
 width:100%!important;
 height:100%!important;
 min-height:100%!important;
 display:grid!important;
 grid-template-columns:46px minmax(0,1fr) auto!important;
 gap:12px!important;
 align-items:center!important;
 padding:20px!important;
 border-radius:24px!important;
 background:rgba(255,255,255,.98)!important;
 border:1px solid var(--line)!important;
 border-left:5px solid #d79a2b!important;
 box-shadow:none!important;
 box-sizing:border-box!important;
 z-index:3!important;
}
.header-order-tracker .tracker-icon{width:44px!important;height:44px!important;border-radius:14px!important;font-size:22px!important}
.header-order-tracker small{font-size:11px!important}
.header-order-tracker strong{font-size:15px!important;line-height:1.25!important;margin:2px 0 3px!important}
.header-order-tracker .tracker-copy>span{display:block!important;font-size:12px!important;line-height:1.35!important;margin-top:0!important}
.header-order-tracker.is-floating{
 position:fixed!important;
 inset:auto 12px auto auto!important;
 top:8px!important;
 transform:none!important;
 width:min(350px,calc(100vw - 24px))!important;
 height:auto!important;
 min-height:0!important;
 grid-template-columns:36px minmax(0,1fr) auto!important;
 gap:9px!important;
 padding:9px 11px!important;
 border-radius:14px!important;
 background:rgba(255,255,255,.98)!important;
 box-shadow:0 14px 38px rgba(0,0,0,.18)!important;
 z-index:120!important;
}
.header-order-tracker.is-floating .tracker-icon{width:34px!important;height:34px!important;border-radius:10px!important;font-size:17px!important}
.header-order-tracker.is-floating small{font-size:10px!important}
.header-order-tracker.is-floating strong{font-size:13px!important;line-height:1.15!important;margin:1px 0 0!important}
.header-order-tracker.is-floating .tracker-copy>span{display:none!important}
@media(max-width:800px){
 .info-card.showing-order{min-height:125px!important;padding:15px!important;border-radius:19px!important}
 .header-order-tracker,.order-tracker.header-order-tracker{padding:15px!important;border-radius:19px!important;grid-template-columns:40px minmax(0,1fr) auto!important}
 .header-order-tracker .tracker-icon{width:38px!important;height:38px!important}
 .header-order-tracker.is-floating{inset:auto 8px auto auto!important;top:8px!important;width:calc(100vw - 16px)!important;padding:9px 11px!important;border-radius:14px!important;grid-template-columns:36px minmax(0,1fr) auto!important}
 .header-order-tracker.is-floating .tracker-icon{width:34px!important;height:34px!important}
}

/* v17: aviso estable, tracker natural en header y sticky real */
.topbar-order-tools{flex:1;display:flex;justify-content:flex-end;align-items:center;gap:12px;min-width:0}
.table-order-hint{width:min(620px,52vw);max-width:none;box-sizing:border-box}

/* Cuando hay seguimiento, la información del local se oculta sin conservar su altura. */
.info-card.showing-order{
 min-height:0!important;
 height:auto!important;
 padding:0!important;
 background:transparent!important;
 border:0!important;
 box-shadow:none!important;
 backdrop-filter:none!important;
 display:block!important;
}
.info-card.showing-order #localInfoContent{display:none!important}
.header-order-tracker,
.order-tracker.header-order-tracker{
 position:relative!important;
 inset:auto!important;
 width:100%!important;
 height:auto!important;
 min-height:0!important;
 grid-template-columns:44px minmax(0,1fr) auto!important;
 gap:12px!important;
 padding:15px 16px!important;
 border-radius:18px!important;
 background:rgba(255,255,255,.98)!important;
 border:1px solid var(--line)!important;
 border-left:5px solid #d79a2b!important;
 box-shadow:0 14px 35px rgba(31,25,20,.10)!important;
 z-index:3!important;
}
.header-order-tracker .tracker-icon{width:40px!important;height:40px!important;border-radius:12px!important;font-size:20px!important}
.header-order-tracker small{font-size:11px!important}
.header-order-tracker strong{font-size:15px!important;line-height:1.2!important;margin:2px 0!important}
.header-order-tracker .tracker-copy>span{display:block!important;font-size:12px!important;line-height:1.3!important}

/* Al salir del header se vuelve compacto y queda sobre categorías. */
.header-order-tracker.is-floating{
 position:fixed!important;
 top:10px!important;
 right:14px!important;
 left:auto!important;
 bottom:auto!important;
 width:min(370px,calc(100vw - 28px))!important;
 height:auto!important;
 min-height:0!important;
 grid-template-columns:34px minmax(0,1fr) auto!important;
 gap:9px!important;
 padding:8px 10px!important;
 border-radius:13px!important;
 box-shadow:0 16px 42px rgba(0,0,0,.22)!important;
 z-index:1000!important;
}
.header-order-tracker.is-floating .tracker-icon{width:32px!important;height:32px!important;border-radius:9px!important;font-size:16px!important}
.header-order-tracker.is-floating small{font-size:9px!important}
.header-order-tracker.is-floating strong{font-size:13px!important;line-height:1.1!important;margin:1px 0 0!important}
.header-order-tracker.is-floating .tracker-copy>span{display:none!important}
.category-wrap{z-index:40!important}

@media(max-width:800px){
 .topbar-order-tools{flex:0 1 auto}
 .table-order-hint{width:min(100%,430px);max-width:100%}
 .header-order-tracker.is-floating{top:8px!important;right:8px!important;width:calc(100vw - 16px)!important}
}

/* Barra de categorías */
.categories,
.category-tabs,
.categorias,
.categorias-scroll,
.categories-scroll {
    position: sticky;
    z-index: 1000;
}

/* Notificación flotante */
.notification-sticky-active {
    position: fixed !important;
    top: 10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 99999 !important;
}

/* Botón inferior Ver pedido */
.cart-bar,
.view-order-bar,
.ver-pedido,
.cart-summary,
#cartBar,
#viewOrderButton {
    position: fixed !important;
    z-index: 99998 !important;
    isolation: isolate;
}

/* v18: categorías, seguimiento flotante y carrito corregidos */
.category-wrap{z-index:30!important}
.categories,.category-tabs,.categorias,.categorias-scroll,.categories-scroll{position:relative!important;z-index:auto!important}
.cat[data-target="all"]{padding-left:18px;padding-right:18px}

/* El estado del pedido flota desde que aparece, sin reemplazar información del encabezado. */
.info-card.showing-order{display:block!important;min-height:0!important;padding:20px!important;background:rgba(255,255,255,.78)!important;border:1px solid rgba(255,255,255,.9)!important;border-radius:24px!important;box-shadow:0 20px 50px rgba(31,25,20,.08)!important;backdrop-filter:blur(12px)!important}
.info-card.showing-order #localInfoContent{display:grid!important;gap:13px!important}
.header-order-tracker,.order-tracker.header-order-tracker,.header-order-tracker.is-floating{position:fixed!important;inset:auto 18px 86px auto!important;width:min(370px,calc(100vw - 36px))!important;height:auto!important;min-height:0!important;grid-template-columns:40px minmax(0,1fr) auto!important;gap:10px!important;padding:11px 13px!important;border-radius:15px!important;background:rgba(255,255,255,.98)!important;box-shadow:0 16px 42px rgba(0,0,0,.20)!important;z-index:38!important}
.header-order-tracker .tracker-icon,.header-order-tracker.is-floating .tracker-icon{width:38px!important;height:38px!important;border-radius:11px!important;font-size:19px!important}
.header-order-tracker small,.header-order-tracker.is-floating small{font-size:10px!important}
.header-order-tracker strong,.header-order-tracker.is-floating strong{font-size:14px!important;line-height:1.15!important;margin:1px 0 2px!important}
.header-order-tracker .tracker-copy>span,.header-order-tracker.is-floating .tracker-copy>span{display:block!important;font-size:11px!important;line-height:1.25!important}

/* El botón inferior desaparece mientras el carrito está abierto. */
.cart-fab.drawer-open{opacity:0!important;visibility:hidden!important;pointer-events:none!important}

/* Evita que el total herede la posición fija de la barra Ver pedido. */
.cart-drawer .cart-summary{position:static!important;inset:auto!important;z-index:auto!important;isolation:auto!important}
.cart-fixed{position:relative!important;z-index:2!important;padding:8px 0 10px!important}
.cart-fixed .cart-totals{margin:0 22px!important;padding:4px 0 8px!important}
.cart-fixed .send-order{display:block!important;position:static!important;width:calc(100% - 44px)!important;margin:0 22px!important;box-sizing:border-box!important}
.cart-fixed .order-help{margin:8px 22px 0!important;padding:0!important}

@media(max-width:600px){
 .header-order-tracker,.order-tracker.header-order-tracker,.header-order-tracker.is-floating{inset:auto 10px 78px 10px!important;width:auto!important}
 .header-order-tracker .tracker-copy>span,.header-order-tracker.is-floating .tracker-copy>span{display:none!important}
 .cart-fixed .cart-totals{margin-left:18px!important;margin-right:18px!important}
 .cart-fixed .send-order{width:calc(100% - 36px)!important;margin-left:18px!important;margin-right:18px!important}
 .cart-fixed .order-help{margin-left:18px!important;margin-right:18px!important}
}


/* v19: destacados en Todos, notificación descartable y ayuda superior diferenciada */
.table-order-hint{color:#7a7a7a!important;background:rgba(245,245,243,.92)!important;border-color:#e5e3df!important}
.table-order-hint b{color:#555!important}
.header-order-tracker,.order-tracker.header-order-tracker,.header-order-tracker.is-floating{right:18px!important;left:auto!important;width:min(440px,calc(100vw - 36px))!important}
.header-order-tracker .tracker-close{display:grid!important;place-items:center!important;flex:0 0 auto!important}
@media(max-width:600px){
 .header-order-tracker,.order-tracker.header-order-tracker,.header-order-tracker.is-floating{right:10px!important;left:10px!important;width:auto!important}
}

/* v20: notificación flotante reconstruida y modal móvil corregido */
body.categories-all .menu-main{padding-top:36px!important}

/* Notificación compacta, independiente del encabezado y siempre visible al desplazarse. */
.info-card.showing-order{
 display:grid!important;
 min-height:0!important;
 padding:20px!important;
 background:rgba(255,255,255,.78)!important;
 border:1px solid rgba(255,255,255,.9)!important;
 border-radius:24px!important;
 box-shadow:0 20px 50px rgba(31,25,20,.08)!important;
 backdrop-filter:blur(12px)!important;
}
.info-card.showing-order #localInfoContent{display:grid!important}
.header-order-tracker,
.order-tracker.header-order-tracker,
.header-order-tracker.is-floating{
 position:fixed!important;
 top:18px!important;
 left:max(18px,calc((100vw - 1180px)/2 + 22px))!important;
 right:auto!important;
 bottom:auto!important;
 inset-block-end:auto!important;
 width:min(360px,calc(100vw - 36px))!important;
 height:auto!important;
 min-height:0!important;
 display:grid!important;
 grid-template-columns:38px minmax(0,1fr) 30px!important;
 align-items:center!important;
 gap:10px!important;
 padding:11px 10px 11px 12px!important;
 border:1px solid rgba(30,30,30,.10)!important;
 border-left:4px solid var(--accent)!important;
 border-radius:15px!important;
 background:rgba(255,255,255,.96)!important;
 box-shadow:0 15px 40px rgba(20,20,20,.18)!important;
 backdrop-filter:blur(14px)!important;
 transform:none!important;
 z-index:10020!important;
}
.header-order-tracker .tracker-icon,
.header-order-tracker.is-floating .tracker-icon{
 width:36px!important;
 height:36px!important;
 border-radius:11px!important;
 font-size:18px!important;
}
.header-order-tracker small,
.header-order-tracker.is-floating small{
 display:block!important;
 overflow:hidden!important;
 text-overflow:ellipsis!important;
 white-space:nowrap!important;
 font-size:10px!important;
 line-height:1.2!important;
 color:#777!important;
}
.header-order-tracker strong,
.header-order-tracker.is-floating strong{
 display:block!important;
 margin:2px 0 0!important;
 font-size:13px!important;
 line-height:1.2!important;
 color:#222!important;
}
.header-order-tracker .tracker-copy>span,
.header-order-tracker.is-floating .tracker-copy>span{display:none!important}
.header-order-tracker .tracker-close{
 width:28px!important;
 height:28px!important;
 border:0!important;
 border-radius:50%!important;
 background:#f0f0ee!important;
 color:#555!important;
 font-size:19px!important;
 line-height:1!important;
 cursor:pointer!important;
}

/* El modal de producto siempre queda sobre la barra del pedido. */
.product-modal{z-index:10050!important}
body.product-modal-open .cart-fab{opacity:0!important;visibility:hidden!important;pointer-events:none!important}

@media(max-width:650px){
 body.categories-all .menu-main{padding-top:36px!important}
 .header-order-tracker,
 .order-tracker.header-order-tracker,
 .header-order-tracker.is-floating{
  top:12px!important;
  left:12px!important;
  right:auto!important;
  width:min(335px,calc(100vw - 24px))!important;
 }
 .product-modal{padding:10px!important;align-items:center!important}
 .product-modal-card{max-height:calc(100dvh - 20px)!important;border-radius:22px!important}
 .product-modal-card>img{height:145px!important;min-height:145px!important}
 .product-modal-content{max-height:calc(100dvh - 185px)!important;padding:16px 17px 20px!important;padding-bottom:24px!important}
 .product-modal-content h3{font-size:23px!important;margin-top:7px!important}
 .product-modal-summary{font-size:15px!important;line-height:1.4!important}
 .product-modal-detail{line-height:1.5!important}
 .product-modal-bottom{position:relative!important;z-index:2!important;padding-bottom:2px!important}
}


/* v21: notificación fuera del encabezado, flotante real y sin recortes */
body > #orderTracker.header-order-tracker,
body > #orderTracker.header-order-tracker.is-floating {
  position: fixed !important;
  top: 16px !important;
  left: 16px !important;
  right: auto !important;
  bottom: auto !important;
  inset: 16px auto auto 16px !important;
  transform: none !important;
  width: min(315px, calc(100vw - 32px)) !important;
  min-width: 0 !important;
  height: auto !important;
  display: grid !important;
  grid-template-columns: 36px minmax(0, 1fr) 28px !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 10px 9px 10px 11px !important;
  margin: 0 !important;
  overflow: visible !important;
  border: 1px solid rgba(30, 30, 30, .10) !important;
  border-left: 4px solid var(--accent) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, .97) !important;
  box-shadow: 0 14px 35px rgba(0, 0, 0, .20) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  z-index: 100000 !important;
}
body > #orderTracker[hidden] { display: none !important; }
body > #orderTracker .tracker-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  font-size: 17px !important;
}
body > #orderTracker .tracker-copy {
  min-width: 0 !important;
  overflow: hidden !important;
}
body > #orderTracker .tracker-copy small {
  display: block !important;
  margin: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
  color: #777 !important;
}
body > #orderTracker .tracker-copy strong {
  display: block !important;
  margin: 2px 0 0 !important;
  font-size: 13px !important;
  line-height: 1.18 !important;
  color: #222 !important;
}
body > #orderTracker .tracker-close {
  width: 27px !important;
  height: 27px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #f1f1ef !important;
  color: #555 !important;
  font-size: 18px !important;
  line-height: 1 !important;
}
.info-card.showing-order #localInfoContent { display: grid !important; }
@media (max-width: 650px) {
  body > #orderTracker.header-order-tracker,
  body > #orderTracker.header-order-tracker.is-floating {
    top: 10px !important;
    left: 10px !important;
    inset: 10px auto auto 10px !important;
    width: min(300px, calc(100vw - 20px)) !important;
  }
}

/* v22 · Historial de pedidos desde la notificación */
body > #orderTracker.header-order-tracker{cursor:pointer!important;transition:transform .18s ease,box-shadow .18s ease!important}
body > #orderTracker.header-order-tracker:hover{transform:translateY(-2px)!important;box-shadow:0 20px 48px rgba(0,0,0,.23)!important}
body > #orderTracker.header-order-tracker:focus-visible{outline:3px solid rgba(255,107,78,.35)!important;outline-offset:3px!important}
body.orders-history-open{overflow:hidden}
.orders-history-modal{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(20,20,24,.52);backdrop-filter:blur(5px)}
.orders-history-modal.open{display:flex}
.orders-history-card{width:min(620px,100%);max-height:min(760px,calc(100dvh - 36px));display:flex;flex-direction:column;overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.orders-history-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 18px;border-bottom:1px solid #eee}
.orders-history-head small{display:block;color:#777;font-size:12px;margin-bottom:3px}
.orders-history-head h3{margin:0;font-size:25px}
.orders-history-head button{width:38px;height:38px;border:0;border-radius:50%;background:#f1f1f1;font-size:25px;line-height:1;cursor:pointer}
.orders-history-list{overflow:auto;padding:18px;display:grid;gap:14px}
.orders-history-empty{padding:34px 20px;text-align:center;color:#777;background:#f7f7f7;border-radius:16px}
.history-order{border:1px solid #eadcae;border-left:5px solid #d79a2b;border-radius:17px;padding:16px;background:#fff9e8;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.history-order[data-status="pending"]{background:#fff9e8;border-color:#eadcae;border-left-color:#d79a2b}.history-order[data-status="confirmed"]{background:#eef9f3;border-color:#cce8d8;border-left-color:#3a8f5b}.history-order[data-status="preparing"]{background:#fff2e7;border-color:#f0d5bc;border-left-color:#e0782f}.history-order[data-status="delivered"]{background:#edf6ff;border-color:#cbdff1;border-left-color:#2479c6}.history-order[data-status="cancelled"]{background:#fff0f1;border-color:#edced1;border-left-color:#c83f46}
.history-order-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:11px;border-bottom:1px solid #eee}
.history-order-top small{display:block;color:#777;margin-bottom:5px}.history-order-top strong{display:flex;align-items:center;gap:7px;font-size:16px}.history-order-top time{color:#888;font-size:12px;white-space:nowrap}
.history-order-name{font-size:13px;color:#666;margin:11px 0 3px}
.history-order-items{display:grid;gap:8px;padding:12px 0}.history-order-items>div{display:flex;justify-content:space-between;gap:15px;font-size:14px}.history-order-items p{margin:0;color:#888;font-size:13px}
.history-order-total{display:flex;justify-content:space-between;align-items:center;padding-top:11px;border-top:1px solid #eee;font-size:16px}.history-order-total b{font-size:18px}
@media(max-width:640px){.orders-history-modal{align-items:flex-end;padding:0}.orders-history-card{width:100%;max-height:88dvh;border-radius:24px 24px 0 0}.orders-history-head{padding:19px 18px 15px}.orders-history-head h3{font-size:22px}.orders-history-list{padding:13px}.history-order{padding:14px}.history-order-top{gap:8px}.history-order-top time{font-size:11px}.history-order-items>div{font-size:13px}}

/* v23 · Notificación flotante del último evento de pedidos */
.order-notifications{
 position:fixed;top:14px;left:14px;z-index:100000;
 width:min(330px,calc(100vw - 28px));display:flex;flex-direction:column;gap:9px;
 pointer-events:none;
}
.order-notification{
 pointer-events:auto;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;
 padding:10px 9px 10px 11px;border:1px solid rgba(30,30,30,.1);border-left:4px solid #d79a2b;
 border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 14px 35px rgba(0,0,0,.2);
 backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer;
 animation:orderNotificationIn .25s ease both;transition:transform .2s ease,opacity .25s ease,box-shadow .2s ease;
}
.order-notification[data-status="confirmed"]{border-left-color:#2a9d68}.order-notification[data-status="preparing"]{border-left-color:#e46b35}
.order-notification.changed{animation:orderNotificationPulse .55s ease}.order-notification:hover{transform:translateX(3px);box-shadow:0 18px 44px rgba(0,0,0,.23)}
.order-notification .tracker-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#f4efe6;font-size:17px}
.order-notification .tracker-copy{min-width:0}.order-notification small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.15;color:#777}
.order-notification strong{display:block;margin-top:2px;font-size:13px;line-height:1.18;color:#222}
@keyframes orderNotificationIn{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
@keyframes orderNotificationPulse{0%,100%{transform:none}45%{transform:translateX(5px) scale(1.015)}}
@media(max-width:650px){.order-notifications{top:10px;left:10px;width:min(310px,calc(100vw - 20px));gap:7px}.order-notification{padding:9px 8px 9px 10px}}

/* v24 · Estados visuales silenciosos para la cola de pedidos */
.order-notification{
 animation:none!important;
 overflow:hidden;
 background:#fff!important;
 border-color:#e8eeeb!important;
 border-left-color:#cbd8d2!important;
 transition:background-color .45s ease,border-color .45s ease,box-shadow .25s ease,transform .25s ease,opacity .4s ease!important;
}
.order-notification[data-status="pending"]{background:#fff!important;border-left-color:#cbd8d2!important}
.order-notification[data-status="confirmed"]{background:#f1faf6!important;border-left-color:#8dcbb2!important}
.order-notification[data-status="preparing"]{background:#dff4eb!important;border-left-color:#43a981!important}
.order-notification[data-status="delivered"]{background:#bce7d6!important;border-left-color:#187b5b!important}
.order-notification[data-status="cancelled"]{background:#f3f3f3!important;border-left-color:#9a9a9a!important}
.order-notification .tracker-icon{background:rgba(255,255,255,.68)!important;box-shadow:inset 0 0 0 1px rgba(20,80,60,.06)}
.order-notification.entering{animation:orderNotificationIn .28s ease both!important}
.order-notification.changed{animation:orderNotificationStateChange .68s ease both!important;box-shadow:0 20px 48px rgba(21,112,82,.24)!important}
.order-notification.leaving{pointer-events:none;animation:orderNotificationLeave .46s cubic-bezier(.4,0,.2,1) both!important}
@keyframes orderNotificationStateChange{0%{transform:none}38%{transform:translateX(7px) scale(1.018)}100%{transform:none}}
@keyframes orderNotificationLeave{0%{opacity:1;transform:none;max-height:80px;margin:0}70%{opacity:0;transform:translateY(-24px)}100%{opacity:0;transform:translateY(-34px);max-height:0;margin-top:-9px;padding-top:0;padding-bottom:0;border-width:0}}
@media (prefers-reduced-motion:reduce){.order-notification,.order-notification.entering,.order-notification.changed,.order-notification.leaving{animation:none!important;transition:none!important}}

/* v26 · Confirmación visual al entregar un pedido */
.delivery-celebration{position:fixed;inset:0;z-index:160;display:grid;place-items:center;padding:20px;pointer-events:none;opacity:0;visibility:hidden}
.delivery-celebration.show{visibility:visible;animation:deliveryCelebration 1.9s ease both}
.delivery-celebration-card{display:grid;justify-items:center;gap:5px;min-width:210px;padding:22px 28px;border:1px solid rgba(255,255,255,.65);border-radius:25px;background:rgba(255,255,255,.94);box-shadow:0 26px 80px rgba(12,70,51,.27);backdrop-filter:blur(16px);text-align:center}
.delivery-hand{display:grid;place-items:center;width:82px;height:82px;border-radius:50%;background:linear-gradient(145deg,#effbf6,#bce7d6);font-size:48px;box-shadow:0 12px 30px rgba(24,123,91,.22)}
.delivery-celebration strong{font-size:20px;color:#155c46}.delivery-celebration small{font-size:12px;color:#65756e}
@keyframes deliveryCelebration{0%{opacity:0;transform:scale(.82)}18%,72%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.06)}}
@media(max-width:650px){.delivery-celebration-card{min-width:190px;padding:20px 24px}.delivery-hand{width:72px;height:72px;font-size:42px}}
@media(prefers-reduced-motion:reduce){.delivery-celebration.show{animation:none;opacity:1}.delivery-celebration-card{transform:none}}

/* v28 · acceso alternativo al seguimiento cuando se cierran las notificaciones */
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.orders-status-backup{display:inline-flex;align-items:center;gap:7px;margin-left:8px;padding:8px 11px;border:1px solid rgba(25,25,25,.12);border-radius:999px;background:rgba(255,255,255,.92);color:#292929;box-shadow:0 7px 20px rgba(0,0,0,.08);font:inherit;font-size:11px;cursor:pointer;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.orders-status-backup[hidden]{display:none!important}.orders-status-backup span{font-size:14px}.orders-status-backup b{font-weight:800}.orders-status-backup:hover{transform:translateY(-1px);background:#fff;box-shadow:0 10px 25px rgba(0,0,0,.12)}
@media(max-width:720px){.topbar{align-items:flex-start}.brand{flex-wrap:wrap}.orders-status-backup{order:3;margin:5px 0 0 0;padding:7px 10px;font-size:10px}.orders-status-backup b{max-width:150px;white-space:normal;line-height:1.15}}


/* v29 · acceso alternativo destacado al seguimiento */
.orders-status-backup{position:relative;overflow:hidden;gap:9px!important;margin-left:12px!important;padding:10px 15px!important;border:1px solid color-mix(in srgb,var(--accent) 34%,#fff)!important;border-radius:14px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,#fff),#fff)!important;color:color-mix(in srgb,var(--accent) 72%,#1f2420)!important;box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 16%,transparent)!important;font-size:12px!important}
.orders-status-backup::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent)}
.orders-status-backup span{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--accent) 13%,#fff);font-size:15px!important}
.orders-status-backup b{font-weight:900!important;letter-spacing:-.01em}.orders-status-backup:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--accent) 52%,#fff)!important;box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 22%,transparent)!important}
@media(max-width:720px){.orders-status-backup{width:auto;max-width:220px;margin:6px 0 0!important;padding:9px 12px!important;border-radius:12px!important}.orders-status-backup b{max-width:158px!important}}

/* Menue v32: seguimiento, ayuda móvil y capas de modales */
.table-modal{z-index:20050!important}
.table-modal-card{z-index:20051}

/*
 * Tarjetas de producto uniformes.
 * La foto rellena un marco fijo sin deformarse y el texto largo no cambia
 * la altura de la tarjeta.
 */
.product {
    height: 220px;
    min-height: 220px;
    align-items: stretch;
}

.product-img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: 194px;
    object-fit: cover;
    object-position: center;
}

.product-body {
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.product h4,
.product p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
}

.product h4 {
    -webkit-line-clamp: 2;
}

.product p {
    -webkit-line-clamp: 2;
}

@media (max-width: 800px) {
    .product {
        height: 230px;
        min-height: 230px;
    }

    .product-img {
        max-height: 204px;
    }
}

@media (max-width: 430px) {
    .product {
        height: 220px;
        min-height: 220px;
    }

    .product-img {
        max-height: 200px;
    }
}
.app-modal{z-index:20100!important}
.orders-history-modal{z-index:20000!important}
.view-order-bar,.cart-fab{z-index:8000!important}

.orders-history-summary{padding:16px 18px 0;background:#fff}
.orders-summary-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.orders-summary-identity>div{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 13px;border:1px solid #eceae6;border-radius:15px;background:#faf9f7}
.orders-summary-identity>div>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:color-mix(in srgb,var(--accent) 12%,#fff);font-size:17px}
.orders-summary-identity small{display:block;margin-bottom:2px;color:#85817a;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.orders-summary-identity strong{display:block;overflow:hidden;color:#2b2a28;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.orders-summary-statuses{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;padding:10px 0 2px}
.orders-summary-statuses span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #ebe8e2;border-radius:999px;background:#fff;font-size:11px;color:#5e5b55}
.orders-summary-statuses span i{font-style:normal}.orders-summary-statuses span b{font-size:13px;color:#252421}
.orders-summary-statuses .all-finished{color:#34764e;background:#f2faf5;border-color:#d9edde}

@media(max-width:720px){
 .topbar{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start!important;gap:9px!important}
 .brand{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center!important;min-width:0}
 .brand>div:nth-child(2){min-width:0}
 .orders-status-backup{grid-column:2;grid-row:1;margin:0!important;align-self:center;max-width:170px!important;padding:8px 10px!important}
 .orders-status-backup span{width:24px;height:24px;font-size:13px!important}
 .orders-status-backup b{max-width:120px!important;font-size:10px!important;line-height:1.15}
 .topbar-order-tools{grid-column:1/-1;width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start!important;gap:8px!important}
 .table-order-hint{position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;grid-column:1;width:100%!important;max-width:none!important;min-width:0;padding:9px 29px 9px 11px!important;font-size:11px!important}
 .table-chip{grid-column:2;grid-row:1;align-self:start}
 .hero-cover{margin-top:12px!important}
 .orders-summary-identity{grid-template-columns:1fr}
}
@media(max-width:430px){
 .orders-status-backup{max-width:146px!important}
 .orders-status-backup b{max-width:96px!important}
 .topbar-order-tools{grid-template-columns:minmax(0,1fr) auto}
 .table-order-hint span{display:block}
}


/* Menue v33: controles móviles y carrito contextual */
.cart-fab[hidden]{display:none!important}
@media(max-width:720px){
 .orders-status-backup{justify-self:end!important;margin-left:auto!important;margin-right:0!important}
}

/* Menue v34: modal de seguimiento más compacto y visible en móvil */
.orders-history-card{min-height:0}
.orders-history-head{flex:0 0 auto;padding:16px 18px 13px;gap:12px}
.orders-history-head small{font-size:10px;margin-bottom:1px}
.orders-history-head h3{font-size:20px;line-height:1.1}
.orders-history-head button{width:34px;height:34px;font-size:21px}
.orders-history-summary{flex:0 0 auto;padding:10px 14px 0}
.orders-summary-identity{gap:8px}
.orders-summary-identity>div{gap:8px;padding:8px 10px;border-radius:12px}
.orders-summary-identity>div>span{width:28px;height:28px;border-radius:9px;font-size:14px}
.orders-summary-identity small{font-size:8px;margin-bottom:1px}
.orders-summary-identity strong{font-size:12px}
.orders-summary-statuses{gap:5px;margin-top:7px;padding:7px 0 1px}
.orders-summary-statuses span{gap:4px;padding:5px 8px;font-size:9px}
.orders-summary-statuses span b{font-size:11px}
.orders-history-list{min-height:0;padding:12px 14px 15px;gap:10px}
.history-order{padding:12px;border-radius:14px}
.history-order-top{gap:8px;padding-bottom:8px}
.history-order-top small{margin-bottom:3px;font-size:10px}
.history-order-top strong{gap:5px;font-size:13px}
.history-order-top time{font-size:10px}
.history-order-name{font-size:11px;margin:8px 0 2px}
.history-order-items{gap:6px;padding:9px 0}
.history-order-items>div{gap:10px;font-size:12px}
.history-order-items p{font-size:11px}
.history-order-total{padding-top:8px;font-size:13px}
.history-order-total b{font-size:15px}

@media(max-width:640px){
 .orders-history-modal{align-items:stretch;padding:0}
 .orders-history-card{width:100%;height:100dvh;max-height:100dvh;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
 .orders-history-head{padding:10px 12px 8px}
 .orders-history-head small{font-size:8px}
 .orders-history-head h3{font-size:17px}
 .orders-history-head button{width:31px;height:31px;font-size:19px}
 .orders-history-summary{padding:7px 10px 0}
 .orders-summary-identity{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .orders-summary-identity>div{padding:6px 8px;gap:6px;border-radius:10px}
 .orders-summary-identity>div>span{width:24px;height:24px;border-radius:8px;font-size:12px}
 .orders-summary-identity small{font-size:7px}
 .orders-summary-identity strong{font-size:10px}
 .orders-summary-statuses{gap:4px;margin-top:5px;padding:5px 0 1px}
 .orders-summary-statuses span{padding:4px 6px;font-size:8px}
 .orders-summary-statuses span b{font-size:9px}
 .orders-history-list{padding:8px 10px 12px;gap:8px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .history-order{padding:10px;border-left-width:4px;border-radius:12px}
 .history-order-top{padding-bottom:7px}
 .history-order-top small{font-size:9px}
 .history-order-top strong{font-size:12px}
 .history-order-top time{font-size:9px}
 .history-order-name{font-size:10px;margin-top:7px}
 .history-order-items{gap:5px;padding:7px 0}
 .history-order-items>div{font-size:11px}
 .history-order-items p{font-size:10px}
 .history-order-total{padding-top:7px;font-size:12px}
 .history-order-total b{font-size:14px}
 .orders-history-empty{padding:22px 14px;font-size:12px}
}

/* Modal de detalle de producto 10% más compacto. */
.product-modal-card {
    width: min(738px, 86.4vw);
    max-height: 74vh;
}

.product-modal-card > img {
    min-height: 387px;
}

.product-modal-content {
    padding: 25px;
}

.product-modal-content h3 {
    font-size: 27px;
}

.product-modal-summary {
    font-size: 15.5px;
}

.product-modal-detail {
    font-size: 14.5px;
}

.product-modal-bottom > strong {
    font-size: 22px;
}

@media (max-width: 650px) {
    .product-modal-card {
        width: 90vw !important;
        max-height: calc(90dvh - 18px) !important;
    }

    .product-modal-card > img {
        height: 131px !important;
        min-height: 131px !important;
    }

    .product-modal-content {
        max-height: calc(90dvh - 149px) !important;
        padding: 14px 15px 18px !important;
    }

    .product-modal-content h3 {
        font-size: 21px !important;
    }

    .product-modal-summary {
        font-size: 14px !important;
    }

    .product-modal-detail {
        font-size: 13.5px;
    }

    .product-modal-bottom > strong {
        font-size: 20px;
    }
}


/* v53: navegación visible para categorías horizontales */
.category-nav{
 display:grid!important;
 grid-template-columns:42px minmax(0,1fr) 42px!important;
 align-items:center!important;
 gap:8px!important;
 position:relative!important;
}
.category-nav .categories{
 width:100%!important;
 min-width:0!important;
 padding:13px 2px!important;
 scroll-behavior:smooth;
 scroll-snap-type:x proximity;
}
.category-nav .cat{scroll-snap-align:start}
.category-arrow{
 width:38px;
 height:38px;
 border:1px solid var(--line);
 border-radius:50%;
 background:rgba(255,255,255,.96);
 color:var(--ink);
 display:grid;
 place-items:center;
 padding:0;
 font:700 29px/1 Arial;
 cursor:pointer;
 box-shadow:0 5px 16px rgba(0,0,0,.08);
 transition:opacity .18s ease,transform .18s ease,background .18s ease;
 z-index:2;
}
.category-arrow:hover{transform:scale(1.05);background:#fff}
.category-arrow:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:2px}
.category-arrow:disabled{opacity:.22;cursor:default;transform:none;box-shadow:none}
.category-arrow[hidden]{display:none!important}
@media(max-width:560px){
 .category-wrap .shell{padding-left:8px!important;padding-right:8px!important}
 .category-nav{grid-template-columns:34px minmax(0,1fr) 34px!important;gap:4px!important}
 .category-arrow{width:32px;height:32px;font-size:25px}
 .category-nav .categories{padding-top:11px!important;padding-bottom:11px!important}
}

/* v54 · barra de categorías estable durante el scroll vertical */
.category-wrap{
 position:sticky!important;
 top:0!important;
 z-index:120!important;
 min-height:65px;
 background:var(--page-bg2,#fbfaf7)!important;
 -webkit-backdrop-filter:none!important;
 backdrop-filter:none!important;
 isolation:isolate;
 transform:translateZ(0);
 -webkit-transform:translateZ(0);
 backface-visibility:hidden;
 -webkit-backface-visibility:hidden;
 box-shadow:0 1px 0 var(--line);
}
.category-nav{
 grid-template-columns:42px minmax(0,1fr) 42px!important;
 min-width:0!important;
 overflow:visible!important;
}
.category-nav>#categoryPrev{grid-column:1!important;grid-row:1!important}
.category-nav>#categoryScroller{grid-column:2!important;grid-row:1!important}
.category-nav>#categoryNext{grid-column:3!important;grid-row:1!important}
.category-nav .categories{
 position:relative!important;
 z-index:1!important;
 min-width:0!important;
 overflow-x:auto!important;
 overflow-y:hidden!important;
 overscroll-behavior-x:contain;
 -webkit-overflow-scrolling:touch;
 transform:translateZ(0);
 -webkit-transform:translateZ(0);
}
.category-arrow{
 position:relative!important;
 z-index:2!important;
 flex:0 0 auto!important;
}
.category-arrow.is-unneeded{
 visibility:hidden!important;
 opacity:0!important;
 pointer-events:none!important;
}
@media(max-width:560px){
 .category-wrap{min-height:55px}
 .category-nav{grid-template-columns:34px minmax(0,1fr) 34px!important}
}

/* v55 · el carrito siempre queda sobre la barra sticky de categorías */
body.cart-open{overflow:hidden!important}
.drawer-backdrop{z-index:8990!important}
.cart-drawer{z-index:9000!important;isolation:isolate}
body.cart-open .category-wrap{z-index:30!important;pointer-events:none!important}
body.cart-open .cart-drawer{pointer-events:auto!important}
body.cart-open .drawer-backdrop{pointer-events:auto!important}

/* v56 · estilo Dark configurable por local */
body[data-theme="dark"]{
 --ink:#f4f1e9;
 --muted:#aaa9a2;
 --line:#343630;
 --paper:#0f100e;
 --card:#1a1b18;
 color-scheme:dark;
 background:#0f100e;
 color:#f4f1e9;
}
body[data-theme="dark"] .hero{
 background:
  radial-gradient(circle at 12% -15%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 38%),
  radial-gradient(circle at 88% 5%,color-mix(in srgb,var(--accent2) 11%,transparent),transparent 31%),
  linear-gradient(145deg,#161714,#10110f 58%,#0d0e0c);
 border-bottom-color:var(--line);
}
body[data-theme="dark"] .brand h1,
body[data-theme="dark"] .section h3,
body[data-theme="dark"] .product h4,
body[data-theme="dark"] .price,
body[data-theme="dark"] .cart-head h3,
body[data-theme="dark"] .product-modal-content h3,
body[data-theme="dark"] .product-modal-bottom>strong,
body[data-theme="dark"] .app-modal h3,
body[data-theme="dark"] .table-modal-card h3,
body[data-theme="dark"] .orders-history-head h3{
 color:#f4f1e9;
}
body[data-theme="dark"] .brand span,
body[data-theme="dark"] .section-head span,
body[data-theme="dark"] .product p,
body[data-theme="dark"] .footer,
body[data-theme="dark"] .cart-head small,
body[data-theme="dark"] .cart-row span,
body[data-theme="dark"] .order-help,
body[data-theme="dark"] .cart-empty,
body[data-theme="dark"] .product-modal-summary,
body[data-theme="dark"] .product-modal-detail,
body[data-theme="dark"] .app-modal p,
body[data-theme="dark"] .info-row span,
body[data-theme="dark"] .info-row .info-value{
 color:var(--muted);
}
body[data-theme="dark"] .search,
body[data-theme="dark"] .icon-btn,
body[data-theme="dark"] .eyebrow,
body[data-theme="dark"] .table-chip,
body[data-theme="dark"] .cat,
body[data-theme="dark"] .category-arrow,
body[data-theme="dark"] .product-qty,
body[data-theme="dark"] .product-qty button,
body[data-theme="dark"] .qty button,
body[data-theme="dark"] .tip-choice,
body[data-theme="dark"] .custom-tip-option,
body[data-theme="dark"] .available-table-btn,
body[data-theme="dark"] .web-order-fields input,
body[data-theme="dark"] .order-note textarea,
body[data-theme="dark"] .table-input input,
body[data-theme="dark"] .table-customer-name input{
 background:#1b1c19;
 border-color:var(--line);
 color:#f4f1e9;
}
body[data-theme="dark"] input::placeholder,
body[data-theme="dark"] textarea::placeholder{
 color:#777a72;
 opacity:1;
}
body[data-theme="dark"] .search{
 box-shadow:0 11px 34px rgba(0,0,0,.22);
}
body[data-theme="light"] .search:focus-within{
 border-color:var(--cover-focus,var(--accent));
 box-shadow:none;
}
body[data-theme="dark"] .search:focus-within{
 border-width:2px;
 border-color:var(--cover-focus,var(--accent));
 box-shadow:none;
}

/* v82 · ayuda del resumen básico más legible */
.traditional-order-help{font-size:13px!important}
@media(max-width:600px){.traditional-order-help{font-size:11px!important}}

/* v83 · vista previa del llamado al mesero en locales con pedidos */
.waiter-call-fab{
 position:fixed;
 left:22px;
 bottom:22px;
 z-index:37;
 min-height:52px;
 display:flex;
 align-items:center;
 gap:9px;
 padding:9px 16px 9px 9px;
 border:1px solid color-mix(in srgb,var(--cover-focus,var(--accent)) 68%,#fff);
 border-radius:999px;
 background:rgba(255,255,255,.96);
 color:#20211e;
 box-shadow:0 12px 34px rgba(0,0,0,.16);
 font:800 13px/1 Arial,sans-serif;
 cursor:pointer;
 backdrop-filter:blur(12px);
 transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.waiter-call-fab:hover{transform:translateY(-2px)}
body:has(#cartButton:not([hidden])) .waiter-call-fab{bottom:86px}
body.cart-open .waiter-call-fab{opacity:0;visibility:hidden;pointer-events:none}
.waiter-call-fab>span{
 width:34px;
 height:34px;
 display:grid;
 place-items:center;
 border-radius:50%;
 background:var(--cover-focus,var(--accent));
 color:#fff;
 font-size:16px;
}
.waiter-call-fab.is-requested{border-color:#7da66c;background:#f4f9f0;color:#36522e}
.waiter-call-fab.is-requested>span{background:#5f8b50}
body[data-theme="dark"] .waiter-call-fab{
 border-color:color-mix(in srgb,var(--cover-focus,var(--accent)) 72%,#fff);
 background:rgba(25,26,23,.96);
 color:#f5f3ed;
 box-shadow:0 12px 36px rgba(0,0,0,.32);
}
body[data-theme="dark"] .waiter-call-fab.is-requested{border-color:#6e9761;background:rgba(31,45,27,.96);color:#e7f4e1}
@media(max-width:600px){
 .waiter-call-fab{left:12px;bottom:12px;min-height:46px;padding:7px 13px 7px 7px;font-size:12px}
 .waiter-call-fab>span{width:32px;height:32px;font-size:15px}
 body:has(#cartButton:not([hidden])) .waiter-call-fab{bottom:76px}
}

/* v84 · confirmación real, flotantes en una fila y carrito Dark uniforme */
html{scrollbar-gutter:stable}
.waiter-confirm-modal{position:fixed;inset:0;z-index:12050;display:grid;place-items:center;padding:18px;background:rgba(15,15,15,.54);opacity:0;visibility:hidden;pointer-events:none;transition:.18s ease;backdrop-filter:blur(5px)}
.waiter-confirm-modal.open{opacity:1;visibility:visible;pointer-events:auto}
.waiter-confirm-card{position:relative;width:min(390px,100%);padding:25px;border:1px solid rgba(255,255,255,.82);border-radius:23px;background:#fff;color:#20211e;box-shadow:0 28px 80px rgba(0,0,0,.28);text-align:center}
.waiter-confirm-close{position:absolute;top:10px;right:10px;width:34px;height:34px;border:0;border-radius:50%;background:#eff0ec;color:#555;font-size:21px;cursor:pointer}
.waiter-confirm-icon{width:54px;height:54px;display:grid;place-items:center;margin:0 auto 12px;border-radius:18px;background:color-mix(in srgb,var(--cover-focus,var(--accent)) 16%,#fff);font-size:25px}
.waiter-confirm-card h3{margin:0 0 8px;font-size:23px}.waiter-confirm-card p{margin:0;color:#6d7069;font-size:13px;line-height:1.5}
.waiter-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:20px}.waiter-confirm-actions button{min-height:43px;border-radius:12px;font-weight:800;cursor:pointer}.waiter-confirm-cancel{border:1px solid #dcddd8;background:#fff;color:#3f413d}.waiter-confirm-send{border:1px solid var(--cover-focus,var(--accent));background:var(--cover-focus,var(--accent));color:#fff}.waiter-confirm-send:disabled{opacity:.55;cursor:wait}
body[data-plan="pro"]:has(#cartButton:not([hidden])) .waiter-call-fab{bottom:22px}
body[data-plan="pro"] #cartButton.view-order-bar{left:auto!important;right:22px!important;width:max-content!important;max-width:calc(100vw - 220px);justify-content:flex-start!important}
body[data-theme="dark"] .waiter-confirm-card{border-color:#3c3e38;background:#1a1b18;color:#f4f1e9}.waiter-confirm-card h3{color:inherit}body[data-theme="dark"] .waiter-confirm-card p{color:#b7b8b1}body[data-theme="dark"] .waiter-confirm-close{background:#292a26;color:#eee}body[data-theme="dark"] .waiter-confirm-cancel{border-color:#41433d;background:#242521;color:#eee}
body[data-theme="dark"] .cart-drawer,
body[data-theme="dark"] .cart-head,
body[data-theme="dark"] .cart-scroll,
body[data-theme="dark"] .cart-fixed{background:#171815!important;color:#f4f1e9!important}
body[data-theme="dark"] .cart-fixed{border-top-color:#30322d!important;box-shadow:0 -12px 28px rgba(0,0,0,.22)!important}
@media(max-width:600px){
 body[data-plan="pro"]:has(#cartButton:not([hidden])) .waiter-call-fab{bottom:12px}
 body[data-plan="pro"] #cartButton.view-order-bar{left:auto!important;right:12px!important;width:max-content!important;max-width:calc(100vw - 178px);gap:7px!important;padding:8px 11px!important;font-size:12px!important}
 body[data-plan="pro"] #cartButton.view-order-bar b{min-width:24px;height:24px;font-size:11px}
 body[data-plan="pro"] #cartButton.view-order-bar strong{margin-left:0!important;font-size:12px}
 .waiter-confirm-card{padding:22px 18px}.waiter-confirm-actions{grid-template-columns:1fr}
}
body[data-theme="dark"] .category-wrap{
 background:var(--page-bg2,#0f100e)!important;
 box-shadow:0 1px 0 var(--line),0 9px 24px rgba(0,0,0,.12);
}
body[data-theme="dark"] .cat{
 color:#d1cfc8;
}
body[data-theme="dark"] .cat:hover,
body[data-theme="dark"] .category-arrow:hover{
 background:#252620;
}
body[data-theme="dark"] .cat.active,
body[data-theme="dark"] .available-table-btn.active{
 background:#f4f1e9;
 border-color:#f4f1e9;
 color:#11120f;
}
body[data-theme="dark"] .category-arrow{
 box-shadow:0 7px 18px rgba(0,0,0,.25);
}
body[data-theme="dark"] .product{
 background:linear-gradient(145deg,#1d1e1a,#181916);
 border-color:#30322d;
 box-shadow:0 8px 24px rgba(0,0,0,.08);
}
body[data-theme="dark"] .product:hover{
 border-color:#44473f;
 box-shadow:0 20px 50px rgba(0,0,0,.28);
}
body[data-theme="dark"] .badge{
 background:color-mix(in srgb,var(--accent) 18%,#20211d);
 color:color-mix(in srgb,var(--accent) 72%,#fff);
}
body[data-theme="dark"] .add-btn,
body[data-theme="dark"] .primary-btn,
body[data-theme="dark"] .modal-ok{
 background:#f4f1e9;
 color:#11120f;
}
body[data-theme="dark"] .add-btn:hover,
body[data-theme="dark"] .primary-btn:hover,
body[data-theme="dark"] .modal-ok:hover{
 background:#fff;
}
body[data-theme="dark"] .cart-fab,
body[data-theme="dark"] .floating-wa{
 background:#f4f1e9;
 color:#11120f;
 box-shadow:0 17px 48px rgba(0,0,0,.38);
}
body[data-theme="dark"] .cart-fab b{
 color:#fff;
}
body[data-theme="dark"] .drawer-backdrop{
 background:rgba(0,0,0,.68);
}
body[data-theme="dark"] .cart-drawer,
body[data-theme="dark"] .product-modal-card,
body[data-theme="dark"] .app-modal-card,
body[data-theme="dark"] .table-modal-card,
body[data-theme="dark"] .orders-history-card{
 background:#171815;
 color:#f4f1e9;
 border-color:var(--line);
 box-shadow:-22px 0 70px rgba(0,0,0,.45);
}
body[data-theme="dark"] .cart-head,
body[data-theme="dark"] .cart-row,
body[data-theme="dark"] .product-modal-detail,
body[data-theme="dark"] .orders-history-head,
body[data-theme="dark"] .history-order-top,
body[data-theme="dark"] .history-order-total{
 border-color:var(--line);
}
body[data-theme="dark"] .cart-head button,
body[data-theme="dark"] .product-modal-close,
body[data-theme="dark"] .app-modal-close,
body[data-theme="dark"] .tracker-close,
body[data-theme="dark"] .orders-history-head button{
 background:#292a26;
 color:#e9e6de;
}
body[data-theme="dark"] .product-modal-close{
 box-shadow:0 8px 24px rgba(0,0,0,.3);
}
body[data-theme="dark"] .product-modal-card>img{
 background:#20211d;
}
body[data-theme="dark"] .tip-box{
 background:#141512;
 border-color:var(--line);
}
body[data-theme="dark"] .tip-none{
 color:var(--muted);
}
body[data-theme="dark"] .tip-none.active{
 background:#292a26;
 color:#f4f1e9;
}
body[data-theme="dark"] .modal-code{
 background:#22231f;
 border-color:#484a43;
 color:#f4f1e9;
}
body[data-theme="dark"] .app-modal-icon{
 background:color-mix(in srgb,var(--accent) 20%,#22231f);
 color:color-mix(in srgb,var(--accent) 74%,#fff);
}
body[data-theme="dark"] .table-order-hint{
 color:#aaa9a2!important;
 background:rgba(30,31,27,.94)!important;
 border-color:#3a3c36!important;
}
body[data-theme="dark"] .table-order-hint b{
 color:#efede6!important;
}
body[data-theme="dark"] .orders-status-backup{
 border-color:color-mix(in srgb,var(--accent) 35%,#363830)!important;
 background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 14%,#20211d),#20211d)!important;
 color:color-mix(in srgb,var(--accent) 64%,#fff)!important;
}
body[data-theme="dark"] .orders-status-backup span{
 background:color-mix(in srgb,var(--accent) 18%,#292a25);
}
body[data-theme="dark"] .info-card,
body[data-theme="dark"] .info-card.showing-order{
 background:rgba(22,23,20,.83)!important;
 border-color:rgba(255,255,255,.11)!important;
 color:#f4f1e9;
 box-shadow:0 20px 55px rgba(0,0,0,.28)!important;
}
body[data-theme="dark"] .hero-cover .info-card span,
body[data-theme="dark"] .hero-cover .info-row .info-value{
 color:#b3b3ac;
}
body[data-theme="dark"] .header-order-tracker,
body[data-theme="dark"] .order-tracker.header-order-tracker,
body[data-theme="dark"] .header-order-tracker.is-floating,
body[data-theme="dark"] > #orderTracker.header-order-tracker,
body[data-theme="dark"] > #orderTracker.header-order-tracker.is-floating{
 background:rgba(27,28,24,.98)!important;
 border-color:#3b3d36!important;
 color:#f4f1e9!important;
 box-shadow:0 17px 46px rgba(0,0,0,.42)!important;
}
body[data-theme="dark"] .header-order-tracker .tracker-copy>span,
body[data-theme="dark"] .order-tracker span{
 color:#aaa9a2!important;
}
body[data-theme="dark"] .order-notification{
 background:#1c1d1a!important;
 border-color:#393b35!important;
 color:#f4f1e9;
 box-shadow:0 13px 34px rgba(0,0,0,.38);
}
body[data-theme="dark"] .order-notification[data-status="pending"]{
 background:#1c1d1a!important;
 border-left-color:#73786f!important;
}
body[data-theme="dark"] .order-notification[data-status="confirmed"]{
 background:#17231e!important;
 border-left-color:#63b58f!important;
}
body[data-theme="dark"] .order-notification[data-status="preparing"]{
 background:#173128!important;
 border-left-color:#43a981!important;
}
body[data-theme="dark"] .order-notification[data-status="delivered"]{
 background:#153a2f!important;
 border-left-color:#42b58d!important;
}
body[data-theme="dark"] .order-notification[data-status="cancelled"]{
 background:#252623!important;
 border-left-color:#888b84!important;
}
body[data-theme="dark"] .order-notification .tracker-icon{
 background:rgba(255,255,255,.08)!important;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
body[data-theme="dark"] .order-notification strong{
 color:#f4f1e9;
}
body[data-theme="dark"] .order-notification small{
 color:#aaa9a2;
}
body[data-theme="dark"] .orders-history-summary{
 background:#171815;
}
body[data-theme="dark"] .orders-summary-identity>div{
 background:#1d1e1a;
 border-color:#343630;
}
body[data-theme="dark"] .orders-summary-identity>div>span{
 background:color-mix(in srgb,var(--accent) 18%,#252621);
}
body[data-theme="dark"] .orders-summary-identity small,
body[data-theme="dark"] .orders-summary-identity strong{
 color:#d8d5cd;
}
body[data-theme="dark"] .orders-summary-statuses span{
 background:#1d1e1a;
 border-color:#343630;
 color:#b8b6ae;
}
body[data-theme="dark"] .orders-summary-statuses span b{
 color:#f4f1e9;
}
body[data-theme="dark"] .orders-summary-statuses .all-finished{
 background:#17261f;
 border-color:#2e5944;
 color:#83caa5;
}
body[data-theme="dark"] .history-order{
 background:#1d1e1a;
 border-color:#343630;
 box-shadow:0 9px 27px rgba(0,0,0,.2);
}
body[data-theme="dark"] .history-order[data-status="pending"]{background:#282419;border-color:#4b4127;border-left-color:#b8912f}
body[data-theme="dark"] .history-order[data-status="confirmed"]{background:#17271f;border-color:#284735;border-left-color:#4d9a6a}
body[data-theme="dark"] .history-order[data-status="preparing"]{background:#2b2117;border-color:#513722;border-left-color:#c77b2c}
body[data-theme="dark"] .history-order[data-status="delivered"]{background:#172532;border-color:#29465e;border-left-color:#3b85c7}
body[data-theme="dark"] .history-order[data-status="cancelled"]{background:#2b1b1d;border-color:#553034;border-left-color:#b95860}
body[data-theme="dark"] .orders-history-empty{
 background:#20211d;
 color:var(--muted);
}
body[data-theme="dark"] .history-order-top small,
body[data-theme="dark"] .history-order-top time,
body[data-theme="dark"] .history-order-name,
body[data-theme="dark"] .history-order-items p{
 color:var(--muted);
}
body[data-theme="dark"] .no-tables{
 background:#22231f;
 color:var(--muted);
}
body[data-theme="dark"] .delivery-celebration-card{
 background:rgba(25,27,23,.96);
 border-color:rgba(255,255,255,.12);
 box-shadow:0 26px 80px rgba(0,0,0,.48);
}
body[data-theme="dark"] .delivery-hand{
 background:linear-gradient(145deg,#203f34,#174f3d);
}
body[data-theme="dark"] .delivery-celebration strong{
 color:#8ed8b7;
}
body[data-theme="dark"] .delivery-celebration small{
 color:#aeb4ae;
}
body[data-theme="dark"] .cart-remove{
 background:#292a26!important;
 color:#aaa9a2!important;
}
body[data-theme="dark"] .cart-remove:hover{
 background:#482729!important;
 color:#ffb6b6!important;
}
body[data-theme="dark"] .footer a{
 color:#f4f1e9;
}
body[data-theme="dark"] ::selection{
 background:color-mix(in srgb,var(--accent) 58%,transparent);
 color:#fff;
}

/* v57 · cabecera unificada, compacta y con redes sociales */
.hero{padding:16px 0 20px}
.hero-cover{
 position:relative!important;
 min-height:0!important;
 margin-top:0!important;
 padding:20px 22px 22px!important;
 display:block!important;
 border-radius:28px!important;
}
.hero-integrated-top{
 position:relative;
 z-index:4;
 display:flex;
 align-items:flex-start;
 justify-content:space-between;
 gap:18px;
 padding-bottom:20px;
 border-bottom:1px solid rgba(255,255,255,.16);
}
.hero-integrated-top .brand{min-width:0}
.hero-integrated-top .brand h1{color:#fff;font-size:20px;font-weight:800}
.hero-integrated-top .brand>div>span{color:rgba(255,255,255,.68)}
.hero-integrated-top .brand-mark{width:48px;height:48px;flex:0 0 48px;border:1px solid rgba(255,255,255,.24);box-shadow:0 10px 26px rgba(0,0,0,.16)}
.hero-integrated-top .table-order-hint{background:rgba(18,18,18,.35);border-color:rgba(255,255,255,.18);color:rgba(255,255,255,.78);box-shadow:none}
.hero-integrated-top .table-order-hint b{color:#fff}
.hero-integrated-top .table-order-hint button{color:rgba(255,255,255,.72)}
.hero-integrated-main{
 position:relative;
 z-index:3;
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(245px,330px);
 align-items:end;
 gap:28px;
 padding-top:24px;
}
.hero-integrated-main .hero-copy{max-width:680px}
.hero-integrated-main .hero-copy h2{margin:0 0 10px;font-size:clamp(32px,4.7vw,54px);line-height:.98}
.hero-integrated-main .hero-copy p{max-width:610px;margin:0;font-size:15px;line-height:1.5}
.venue-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.venue-socials:empty{display:none}
.venue-social{
 min-height:35px;
 display:inline-flex;
 align-items:center;
 gap:7px;
 padding:7px 11px;
 border:1px solid rgba(255,255,255,.22);
 border-radius:999px;
 background:rgba(12,12,12,.2);
 color:#fff;
 text-decoration:none;
 font-size:11px;
 font-weight:800;
 backdrop-filter:blur(8px);
}
.venue-social:hover{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.venue-social b{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.17);font-size:11px}
.hero-integrated-main .info-card{position:relative!important;z-index:3;align-self:end;padding:15px 16px;border-radius:19px;gap:9px}
.hero-integrated-main .info-card #localInfoContent{gap:9px}
.hero-integrated-main .info-row b{font-size:12px}
.hero-integrated-main .info-row span,.hero-integrated-main .info-row .info-value{font-size:11px}
.hero-cover>.hero-art{z-index:1!important;top:14px!important;right:8%!important;width:min(39%,390px)!important;height:72%!important;opacity:.24!important}
.search-area{padding-top:14px}
.search{border-radius:15px}
.search input{padding-top:13px;padding-bottom:13px}

@media(max-width:800px){
 .hero{padding:10px 0 14px}
 .hero-cover{padding:15px!important;border-radius:22px!important}
 .hero-integrated-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-bottom:13px}
 .hero-integrated-top .brand{display:grid!important;grid-template-columns:42px minmax(0,1fr);gap:10px!important}
 .hero-integrated-top .brand-mark{width:42px;height:42px;flex-basis:42px;border-radius:14px}
 .hero-integrated-top .brand h1{font-size:17px}
 .hero-integrated-top .brand>div>span{font-size:11px}
 .hero-integrated-top .orders-status-backup{grid-column:1/-1;justify-self:start!important}
 .hero-integrated-top .topbar-order-tools{grid-column:1/-1;width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start!important}
 .hero-integrated-top .table-order-hint{position:relative!important;inset:auto!important;width:100%!important;max-width:none!important}
 .hero-integrated-main{grid-template-columns:1fr;gap:14px;padding-top:17px}
 .hero-integrated-main .hero-copy h2{max-width:88%;font-size:32px;margin-bottom:8px}
 .hero-integrated-main .hero-copy p{max-width:92%;font-size:13px;line-height:1.42}
 .venue-socials{gap:6px;margin-top:12px}
 .venue-social{min-height:32px;padding:6px 9px;font-size:10px}
 .hero-integrated-main .info-card{display:block!important;width:100%;margin:0!important;padding:11px 12px!important;background:rgba(255,255,255,.88)!important}
 .hero-integrated-main .info-card #localInfoContent{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px!important}
 .hero-integrated-main .info-row{gap:7px}
 .hero-cover>.hero-art{top:56px!important;right:-30px!important;width:68%!important;height:46%!important;opacity:.18!important}
 .search-area{padding-top:10px}
}
@media(max-width:430px){
 .hero .shell{padding-left:10px;padding-right:10px}
 .hero-integrated-main .hero-copy h2{font-size:28px}
 .venue-social span{display:none}
 .venue-social{width:34px;height:34px;justify-content:center;padding:0}
 .venue-social b{background:transparent;font-size:13px}
 .hero-integrated-main .info-card #localInfoContent{grid-template-columns:1fr 1fr}
 .hero-integrated-main .info-row:nth-child(n+3){display:none}
}
body[data-theme="dark"] .hero-integrated-main .info-card{background:rgba(22,23,20,.86)!important}

/* v58 · iconos reales, título compacto y buscador móvil persistente */
.mobile-menu-search{display:none}
.venue-social b{background:transparent}
.venue-social svg{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.venue-social-facebook svg,.venue-social-tiktok svg{fill:currentColor;stroke:none}
.venue-social-instagram .social-dot{fill:currentColor;stroke:none}
.venue-social-whatsapp .social-line{fill:currentColor;stroke:none}
.hero-integrated-main .hero-copy h2{
 max-width:100%;
 font-size:clamp(27px,3.7vw,44px);
 line-height:1;
 white-space:nowrap;
}
.hero-integrated-top .brand h1{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:800px){
 .mobile-menu-search{
  position:fixed;
  z-index:12000;
  top:max(8px,env(safe-area-inset-top));
  left:68px;
  right:10px;
  height:44px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:14px;
  background:rgba(25,25,23,.94);
  color:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.2);
  backdrop-filter:blur(14px);
 }
 .mobile-menu-search svg{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
 .mobile-menu-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#fff;font-size:16px}
 .mobile-menu-search input::placeholder{color:rgba(255,255,255,.62)}
 .hero-integrated-top .brand>div:nth-child(2){display:none}
 .hero-integrated-top .brand{width:42px!important;grid-template-columns:42px!important}
 .hero-integrated-top{min-height:44px;grid-template-columns:42px minmax(0,1fr)}
 .hero-integrated-top .topbar-order-tools{margin-top:3px}
 .search-area{display:none}
 .category-wrap{top:60px}
 .hero-integrated-main .hero-copy h2{max-width:100%;font-size:clamp(20px,calc(37px - (var(--title-length,28) * .5px)),28px)!important;letter-spacing:-.035em;white-space:nowrap}
}
@media(max-width:430px){
 .hero-integrated-main .hero-copy h2{font-size:clamp(19px,calc(35px - (var(--title-length,28) * .46px)),26px)!important}
}

/* v59 · el buscador original se vuelve fijo al llegar arriba */
.search-sticky-anchor{display:block;width:1px;height:0;pointer-events:none}
@media(max-width:800px){
 .mobile-menu-search{display:none!important}
 .hero-integrated-top{min-height:0;grid-template-columns:minmax(0,1fr) auto}
 .hero-integrated-top .brand{width:auto!important;grid-template-columns:42px minmax(0,1fr)!important}
 .hero-integrated-top .brand>div:nth-child(2){display:block}
 .search-area{display:block!important;padding-top:10px}
 .search-area.is-mobile-sticky{
  position:fixed;
  z-index:12000;
  top:max(8px,env(safe-area-inset-top));
  left:10px;
  right:10px;
  padding:0;
 }
 .search-area.is-mobile-sticky .search{
  border-color:rgba(30,30,28,.12);
  box-shadow:0 10px 30px rgba(0,0,0,.18);
 }
 .category-wrap{top:0}
body.has-mobile-sticky-search .category-wrap{top:62px}
}

/* v60 · buscador y categorías forman una sola cabecera sticky */
.search-strip{background:linear-gradient(180deg,var(--page-bg2),rgba(251,250,247,.96));padding:0 0 12px}
.search-strip .search-area{padding-top:0}
.hero-cover,.hero-integrated-main,.hero-copy{touch-action:pan-y}
.hero-cover>.hero-art,.hero-cover>.hero-art *{pointer-events:none!important}
@media(max-width:800px){
 .search-sticky-anchor{display:none!important}
 .search-strip{
  position:sticky;
  top:0;
  z-index:80;
  padding:8px 0;
  background:rgba(251,250,247,.94);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(15px);
 }
 .search-strip .shell{padding-left:10px;padding-right:10px}
 .search-strip .search-area{display:block!important;position:static!important;inset:auto!important;padding:0!important}
 .search-strip .search{box-shadow:0 7px 22px rgba(0,0,0,.08)}
 .category-wrap,
 body.has-mobile-sticky-search .category-wrap{top:62px!important;z-index:70!important}
}
body[data-theme="dark"] .search-strip{background:rgba(15,16,14,.94)}

/* v61 · buscador y categorías dentro de una única tarjeta sticky */
.menu-sticky-card{
 position:sticky;
 top:0;
 z-index:120;
 overflow:visible;
 background:var(--page-bg2,#fbfaf7);
 border-bottom:1px solid var(--line);
 box-shadow:0 8px 24px rgba(0,0,0,.06);
 isolation:isolate;
}
.menu-sticky-card .search-strip{
 position:static!important;
 padding:8px 0 0!important;
 background:transparent!important;
 border:0!important;
 backdrop-filter:none!important;
}
.menu-sticky-card .search-area{
 display:block!important;
 position:static!important;
 inset:auto!important;
 padding:0!important;
}
.menu-sticky-card .category-wrap{
 position:static!important;
 top:auto!important;
 z-index:auto!important;
 min-height:0;
 background:transparent!important;
 border:0!important;
 box-shadow:none!important;
}
.menu-sticky-card .categories{padding-top:9px}
body[data-theme="dark"] .menu-sticky-card{background:var(--page-bg2,#0f100e);box-shadow:0 8px 24px rgba(0,0,0,.2)}
@media(max-width:800px){
 .menu-sticky-card .search-strip .shell{padding-left:8px;padding-right:8px}
}

/* v62 · datos del local en una sola línea junto al logo */
.hero-integrated-top{
 grid-template-columns:max-content minmax(0,1fr) auto!important;
 align-items:center!important;
}
.hero-integrated-top>.info-card{
 display:block!important;
 min-width:0;
 width:100%;
 margin:0!important;
 padding:8px 11px!important;
 border-radius:15px!important;
 background:rgba(255,255,255,.88)!important;
 color:var(--ink);
}
.hero-integrated-top>.info-card #localInfoContent{
 display:flex!important;
 align-items:center;
 flex-wrap:nowrap;
 gap:10px!important;
 min-width:0;
 overflow:hidden;
}
.hero-integrated-top>.info-card .info-row{
 min-width:0;
 flex:1 1 auto;
 align-items:center;
 gap:5px;
 white-space:nowrap;
}
.hero-integrated-top>.info-card .info-row>div{display:flex;align-items:center;gap:5px;min-width:0}
.hero-integrated-top>.info-card .info-row b{font-size:10px;flex:0 0 auto}
.hero-integrated-top>.info-card .info-row span,
.hero-integrated-top>.info-card .info-row .info-value{
 min-width:0;
 max-width:180px;
 overflow:hidden;
 text-overflow:ellipsis;
 color:var(--muted);
 font-size:10px;
}
.hero-integrated-main{grid-template-columns:minmax(0,1fr)!important}
.hero-integrated-main .hero-copy{max-width:760px}
body[data-theme="dark"] .hero-integrated-top>.info-card{background:rgba(22,23,20,.9)!important}
@media(max-width:800px){
 .hero-integrated-top{grid-template-columns:42px minmax(0,1fr)!important;gap:8px!important}
 .hero-integrated-top .brand{width:42px!important;grid-template-columns:42px!important}
 .hero-integrated-top .brand>div:nth-child(2){display:none!important}
 .hero-integrated-top>.info-card{grid-column:2;grid-row:1;padding:7px 8px!important}
 .hero-integrated-top>.info-card #localInfoContent{gap:7px!important}
 .hero-integrated-top>.info-card .info-row{gap:3px}
 .hero-integrated-top>.info-card .info-row>div{display:block;min-width:0}
 .hero-integrated-top>.info-card .info-row b{display:none}
 .hero-integrated-top>.info-card .info-row>span{font-size:11px;flex:0 0 auto}
 .hero-integrated-top>.info-card .info-row span,
 .hero-integrated-top>.info-card .info-row .info-value{display:block;max-width:105px;font-size:9px}
 .hero-integrated-top>.topbar-order-tools{grid-column:1/-1;grid-row:2}
}
@media(max-width:430px){
 .hero-integrated-top>.info-card .info-row span{max-width:86px}
}

/* v63 · información más legible, compacta y alineada a la derecha */
.hero-integrated-top>.info-card{
 justify-self:end!important;
 width:max-content!important;
 max-width:100%;
 margin-left:12px!important;
 padding:8px 10px!important;
}
.hero-integrated-top>.info-card #localInfoContent{
 justify-content:flex-end;
 gap:5px!important;
}
.hero-integrated-top>.info-card .info-row{
 flex:0 1 auto;
 gap:3px;
 padding-left:7px;
}
.hero-integrated-top>.info-card .info-row:first-child{padding-left:0}
.hero-integrated-top>.info-card .info-row+.info-row{border-left:1px solid color-mix(in srgb,var(--line) 75%,transparent)}
.hero-integrated-top>.info-card .info-row>div{gap:3px}
.hero-integrated-top>.info-card .info-row b{font-size:12px}
.hero-integrated-top>.info-card .info-row span,
.hero-integrated-top>.info-card .info-row .info-value{font-size:11px;max-width:210px}
@media(max-width:800px){
 .hero-integrated-top>.brand{grid-column:1;grid-row:1;position:relative;z-index:2}
 .hero-integrated-top>.info-card{
  grid-column:2;
  grid-row:1;
  justify-self:stretch!important;
  width:100%!important;
  max-width:100%;
  margin-left:0!important;
  overflow:hidden;
 }
 .hero-integrated-top>.info-card #localInfoContent{justify-content:flex-end;gap:3px!important}
 .hero-integrated-top>.info-card .info-row{padding-left:4px;gap:2px}
 .hero-integrated-top>.info-card .info-row>div{display:block}
 .hero-integrated-top>.info-card .info-row>span{font-size:12px}
 .hero-integrated-top>.info-card .info-row span,
 .hero-integrated-top>.info-card .info-row .info-value{font-size:11px;max-width:96px}
}
@media(max-width:430px){
 .hero-integrated-top>.info-card .info-row span,
 .hero-integrated-top>.info-card .info-row .info-value{max-width:72px;font-size:10px}
}

/* v64 · portada centrada, información a la derecha y móvil a todo el ancho */
.hero-integrated-top{
 grid-template-columns:max-content minmax(0,1fr)!important;
}
.hero-integrated-top>.brand{grid-column:1;grid-row:1}
.hero-integrated-top>.info-card{
 grid-column:2;
 grid-row:1;
 justify-self:end!important;
 margin-left:18px!important;
}
.hero-integrated-top>.topbar-order-tools{
 grid-column:1/-1;
 grid-row:2;
 justify-self:end;
}
.hero-integrated-main .hero-copy{
 width:100%;
 max-width:820px;
 margin-inline:auto;
 text-align:center;
}
.hero-integrated-main .hero-copy h2,
.hero-integrated-main .hero-copy p{margin-left:auto;margin-right:auto}
.hero-integrated-main .venue-socials{justify-content:center}
@media(max-width:800px){
 .hero{padding-top:0!important}
 .hero>.shell{
  width:100%!important;
  max-width:none!important;
  padding-left:0!important;
  padding-right:0!important;
 }
 .hero-cover{
  width:100%!important;
  margin:0!important;
  border-radius:0!important;
 }
 .hero-integrated-top{
  grid-template-columns:42px minmax(0,1fr)!important;
  padding-left:0;
  padding-right:0;
 }
 .hero-integrated-top>.info-card{
  grid-column:2;
  grid-row:1;
  justify-self:end!important;
  margin-left:8px!important;
 }
 .hero-integrated-main .hero-copy h2,
 .hero-integrated-main .hero-copy p{max-width:94%}
}

/* v65 · mayor contraste para los datos del local */
.hero-integrated-top>.info-card{
 background:rgba(255,255,255,.96)!important;
 border-color:rgba(255,255,255,.98)!important;
}
.hero-integrated-top>.info-card .info-row b{color:#171715!important;font-weight:800}
.hero-integrated-top>.info-card .info-row span,
.hero-integrated-top>.info-card .info-row .info-value{
 color:#3f403c!important;
 font-weight:650;
}
body[data-theme="dark"] .hero-integrated-top>.info-card{
 background:rgba(24,25,22,.96)!important;
 border-color:#454740!important;
}
body[data-theme="dark"] .hero-integrated-top>.info-card .info-row b{color:#fff!important}
body[data-theme="dark"] .hero-integrated-top>.info-card .info-row span,
body[data-theme="dark"] .hero-integrated-top>.info-card .info-row .info-value{color:#dedfd8!important}

/* v66 · aviso Pro debajo de la tarjeta de información */
.hero-integrated-top>.topbar-order-tools{
 grid-column:2!important;
 grid-row:2!important;
 justify-self:end!important;
 width:100%;
 max-width:720px;
 margin-top:5px;
}
.hero-integrated-top>.topbar-order-tools .table-order-hint{
 position:relative!important;
 inset:auto!important;
 width:max-content!important;
 max-width:100%!important;
 margin-left:auto;
}
@media(max-width:800px){
 .hero-integrated-top>.topbar-order-tools{
  grid-column:2!important;
  grid-row:2!important;
  width:100%!important;
  margin-top:4px!important;
 }
 .hero-integrated-top>.topbar-order-tools .table-order-hint{width:100%!important}
}

/* v67 · bloque derecho indivisible: información arriba y aviso Pro debajo */
.hero-integrated-top{
 display:grid!important;
 grid-template-columns:max-content minmax(0,1fr)!important;
 align-items:start!important;
}
.hero-integrated-top>.brand{
 grid-column:1!important;
 grid-row:1!important;
 align-self:start;
}
.hero-info-stack{
 grid-column:2!important;
 grid-row:1!important;
 justify-self:end!important;
 align-self:start;
 display:flex;
 flex-direction:column;
 align-items:stretch;
 gap:6px;
 width:max-content;
 max-width:calc(100% - 18px);
 min-width:0;
 margin-left:18px;
 position:relative;
 z-index:5;
}
.hero-info-stack>.info-card{
 position:relative!important;
 inset:auto!important;
 justify-self:auto!important;
 width:max-content!important;
 max-width:100%!important;
 align-self:flex-end;
 margin:0!important;
}
.hero-info-stack>.topbar-order-tools{
 position:relative!important;
 inset:auto!important;
 display:flex!important;
 flex-direction:column;
 align-items:stretch!important;
 width:100%!important;
 max-width:none!important;
 margin:0!important;
}
.hero-info-stack>.topbar-order-tools .table-order-hint{
 position:relative!important;
 inset:auto!important;
 display:block;
 width:100%!important;
 max-width:none!important;
 margin:0!important;
}
@media(max-width:800px){
 .hero-integrated-top{grid-template-columns:42px minmax(0,1fr)!important}
 .hero-info-stack{
  grid-column:2!important;
  grid-row:1!important;
  width:100%;
  max-width:calc(100% - 8px);
  margin-left:8px;
  gap:5px;
 }
 .hero-info-stack>.info-card{width:100%!important}
 .hero-info-stack>.topbar-order-tools{grid-column:auto!important;grid-row:auto!important}
}

/* v68 · datos en una fila y navegación visible para categorías extensas */
.hero-info-stack>.info-card{overflow:hidden}
.hero-info-stack>.info-card #localInfoContent{
 display:flex!important;
 flex-direction:row!important;
 flex-wrap:nowrap!important;
 align-items:center!important;
 justify-content:flex-end!important;
 gap:5px!important;
 width:max-content;
 max-width:100%;
}
.hero-info-stack>.info-card .info-row{
 display:flex!important;
 flex-direction:row!important;
 flex-wrap:nowrap!important;
 align-items:center!important;
 flex:0 1 auto!important;
 min-width:0!important;
 white-space:nowrap!important;
}
.hero-info-stack>.info-card .info-row>div{
 display:flex!important;
 flex-direction:row!important;
 flex-wrap:nowrap!important;
 align-items:center!important;
 min-width:0!important;
 gap:3px!important;
}
.menu-sticky-card .category-nav{
 display:grid!important;
 grid-template-columns:42px minmax(0,1fr) 42px!important;
 align-items:center!important;
 gap:6px!important;
}
.menu-sticky-card .category-nav>.categories{
 min-width:0!important;
 width:100%!important;
 overflow-x:auto!important;
 overflow-y:hidden!important;
}
.menu-sticky-card .category-arrow{
 display:grid!important;
 place-items:center!important;
 visibility:visible;
 width:38px;
 height:38px;
 border:1px solid var(--line);
 border-radius:50%;
 background:var(--card,#fff);
 color:var(--ink);
 font-size:27px;
 line-height:1;
 cursor:pointer;
}
.menu-sticky-card .category-arrow.is-unneeded{
 visibility:hidden!important;
 pointer-events:none!important;
}
@media(max-width:560px){
 .menu-sticky-card .category-nav{grid-template-columns:34px minmax(0,1fr) 34px!important;gap:4px!important}
 .menu-sticky-card .category-arrow{width:32px;height:32px;font-size:24px}
}

/* v69 · tooltip adaptable y datos móviles sin títulos */
.hero-info-stack>.topbar-order-tools{
 align-items:flex-end!important;
}
.hero-info-stack>.topbar-order-tools .table-order-hint{
 display:inline-block!important;
 align-self:flex-end!important;
 width:fit-content!important;
 max-width:min(100%,620px)!important;
 padding-right:36px!important;
 overflow:visible!important;
}
.hero-info-stack>.topbar-order-tools .table-order-hint[hidden]{display:none!important}
.hero-info-stack>.topbar-order-tools .table-order-hint>button{
 display:grid!important;
 place-items:center!important;
 position:absolute!important;
 top:50%!important;
 right:7px!important;
 transform:translateY(-50%)!important;
 z-index:10!important;
 width:25px!important;
 height:25px!important;
 padding:0!important;
 border:0!important;
 border-radius:50%!important;
 background:rgba(255,255,255,.12)!important;
 color:inherit!important;
 line-height:1!important;
 cursor:pointer!important;
 pointer-events:auto!important;
}
.hero-info-stack>.topbar-order-tools .table-order-hint>button:hover{background:rgba(255,255,255,.24)!important}
@media(max-width:800px){
 .hero-info-stack>.info-card .info-row b{display:none!important}
 .hero-info-stack>.info-card .info-row>div{gap:0!important}
 .hero-info-stack>.topbar-order-tools .table-order-hint{width:fit-content!important;max-width:100%!important}
}

/* v70 · información móvil compacta y desplegable */
.mobile-info-toggle{display:none}
@media(max-width:800px){
 .hero-info-stack>.info-card{
  min-height:44px;
  padding:9px 46px 9px 12px!important;
  overflow:visible!important;
 }
 .hero-info-stack>.info-card #localInfoContent{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:none!important;
 }
 #headerInfoCard:not(.is-expanded) #localInfoContent .info-row:not(:first-child){display:none!important}
 .hero-info-stack>.info-card .info-row{
  width:100%!important;
  white-space:normal!important;
 }
 .hero-info-stack>.info-card .info-row>span:first-child{
  flex:0 0 auto;
  font-size:15px!important;
 }
 .hero-info-stack>.info-card .info-row>div{
  min-width:0!important;
  white-space:normal!important;
 }
 .hero-info-stack>.info-card .info-row>div>span,
 .hero-info-stack>.info-card .info-row .info-value{
  font-size:13px!important;
  line-height:1.25!important;
  white-space:normal!important;
 }
 .mobile-info-toggle{
  display:grid;
  place-items:center;
  position:absolute;
  top:50%;
  right:8px;
  transform:translateY(-50%);
  z-index:4;
  width:30px;
  height:30px;
  padding:0;
  border:1px solid rgba(35,35,35,.16);
  border-radius:50%;
  background:rgba(255,255,255,.88);
  color:#242424;
  box-shadow:0 5px 14px rgba(0,0,0,.12);
  font-size:21px;
  font-weight:700;
  line-height:1;
  cursor:pointer;
 }
 #headerInfoCard.is-expanded .mobile-info-toggle{top:8px;transform:none}
 body[data-theme="dark"] .mobile-info-toggle{
  border-color:rgba(255,255,255,.2);
  background:rgba(30,31,28,.9);
  color:#fff;
 }
}

/* v71 · botón de mesa alineado a la derecha también en móvil */
@media(max-width:800px){
 .hero-info-stack>.topbar-order-tools .table-chip{
  align-self:flex-end!important;
  margin-left:auto!important;
  margin-right:0!important;
 }
}

/* v72 · aviso de mesa y botón en una misma fila */
.hero-info-stack>.topbar-order-tools:has(.table-chip){
 flex-direction:row!important;
 align-items:center!important;
 justify-content:flex-end!important;
 gap:8px!important;
}
.hero-info-stack>.topbar-order-tools:has(.table-chip) .table-order-hint{
 flex:0 1 auto!important;
 align-self:center!important;
 width:auto!important;
 min-width:0!important;
 margin:0!important;
}
.hero-info-stack>.topbar-order-tools:has(.table-chip) .table-chip{
 flex:0 0 auto!important;
 align-self:center!important;
 margin-left:0!important;
 margin-right:0!important;
}
@media(max-width:800px){
 .hero-info-stack>.topbar-order-tools:has(.table-chip) .table-order-hint{
  max-width:calc(100% - 104px)!important;
 }
}

/* v73 · misma altura compacta en las tarjetas Básico y Pro */
@media(max-width:800px){
 #headerInfoCard:not(.is-expanded){
  height:42px!important;
  min-height:42px!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
 }
}

/* v74 · ilustraciones temáticas abajo, junto al título */
.hero-cover>.hero-art{
 top:auto!important;
 right:3%!important;
 bottom:-12px!important;
 width:min(36%,360px)!important;
 height:58%!important;
 opacity:.36!important;
}
.hero-cover>.hero-art svg{
 object-position:100% 100%!important;
}
.hero-detail{
 fill:none;
 stroke:rgba(255,255,255,.28);
 stroke-width:2;
 stroke-linecap:round;
 stroke-linejoin:round;
}
.hero-detail path:first-child{stroke-dasharray:3 9}
.hero-detail circle{
 fill:rgba(255,255,255,.48);
 stroke:none;
 filter:drop-shadow(0 0 5px rgba(255,255,255,.22));
}
.hero-decor ellipse{stroke-dasharray:4 8}
.hero-decor .spark{filter:drop-shadow(0 0 7px rgba(255,255,255,.2))}
@media(max-width:800px){
 .hero-cover>.hero-art{
  top:auto!important;
  right:-22px!important;
  bottom:-6px!important;
  width:58%!important;
  height:47%!important;
  opacity:.29!important;
 }
}

/* v87 · identificación explícita de la carta demo con pedidos */
.demo-pro-label{
 position:relative;
 z-index:4;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:max-content;
 max-width:100%;
 margin:0 auto 11px;
 padding:7px 11px;
 border:1px solid rgba(255,255,255,.32);
 border-radius:999px;
 background:rgba(12,12,12,.28);
 color:#fff;
 font-size:10px;
 font-weight:900;
 letter-spacing:.09em;
 line-height:1;
 text-transform:uppercase;
 backdrop-filter:blur(8px);
}
@media(max-width:800px){
 .demo-pro-label{margin-bottom:9px;padding:6px 9px;font-size:9px}
}

/* Portadas Sushi y Tacos */
.hero-sushi{--hero1:#102c2d;--hero2:#b64f44}
.hero-tacos{--hero1:#26351c;--hero2:#7f9d3d}

/* v89 · evita el zoom automático de Safari al enfocar el buscador */
.search input{
 font-family:inherit;
 font-size:16px;
 font-weight:500;
 line-height:1.25;
}
@media(max-width:800px){
 .search input{font-size:16px!important}
}

/* v90 · buscador y categorías firmes mientras el teclado móvil está abierto */
.menu-sticky-placeholder{display:none}
@media(max-width:800px){
 body.search-sticky-locked{overflow-x:hidden}
 body.search-sticky-locked .menu-sticky-placeholder{display:block}
 body.search-sticky-locked .menu-sticky-card{
  position:fixed!important;
  top:var(--search-viewport-top,0px)!important;
  right:0!important;
  left:0!important;
  width:100%!important;
  z-index:20000!important;
  transform:translateZ(0);
 }
}

/* v91 · crédito de Menue más compacto al pie de la carta */
.footer{font-size:12px}
