:root{--cream:#f6f1e8;--stone:#ebe4d8;--pine:#1b1916;--pine-d:#0e0d0b;--ember:#9a7634;--ember-d:#7d5f27;--gold:#c9a35a;--gold-l:#e0c07e;--black:#0e0d0b;
 --ink:#2a2621;--muted:#776d61;--wood:#5c4330;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--cream);color:var(--ink);font:300 16px/1.7 var(--sans);overflow-x:hidden}
img{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}
h1{font-size:clamp(3.2rem,10vw,7.5rem);letter-spacing:.01em}
h2{font-size:clamp(2.1rem,5vw,3.4rem);margin-bottom:1.2rem}
h3{font-size:1.55rem;margin-bottom:.4rem}
em{font-style:italic;color:var(--ember)}
.eyebrow{font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ember);margin-bottom:1rem;font-weight:500}
.small{font-size:.82rem;color:var(--muted)}
.container{max-width:1120px;margin:0 auto;padding:0 22px}
section{padding:90px 0}
.proto-banner{position:fixed;bottom:0;left:0;z-index:40;background:#2a2621d9;color:#f6f1e8;font-size:.68rem;padding:4px 10px;border-top-right-radius:8px}
/* nav */
.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px 22px;
 background:rgba(14,13,11,.92);backdrop-filter:blur(10px);border-bottom:1px solid #c9a35a33;color:#efe6d2;transform:translateY(-100%);transition:transform .5s}
.nav.show{transform:none}
.brand{display:block;width:132px;height:43px}.brand img{object-fit:contain}
.hero-logo{width:min(560px,86vw);margin:0 auto;filter:drop-shadow(0 4px 18px #0008)}.hero-logo img{height:auto}
.nav nav{display:flex;gap:22px;align-items:center}
.nav nav a:not(.btn-sm){display:none;text-decoration:none;font-size:.8rem;letter-spacing:.08em}
.btn-sm{border:1px solid var(--ember);background:var(--ember);color:#fff;padding:6px 14px;border-radius:40px;font:500 .78rem var(--sans);cursor:pointer;text-decoration:none}
.btn-sm.ghost{background:none;color:var(--ember)}
.cart-btn{display:none}
@media(min-width:960px){.nav nav a:not(.btn-sm){display:inline}.cart-btn{display:inline-block}}
.btn{display:inline-block;background:var(--ember);color:#fff;border:1px solid var(--ember);padding:13px 26px;border-radius:40px;font:500 .9rem var(--sans);
 text-decoration:none;cursor:pointer;transition:.25s}
.btn:hover{background:var(--ember-d)}
.btn.ghost{background:none;color:var(--ember)}
.btn.ghost-light{background:rgba(255,255,255,.08);border-color:#fff;color:#fff;backdrop-filter:blur(4px)}
.btn.wa{background:var(--pine);border-color:var(--pine)}
.btn.wa:hover{background:var(--pine-d)}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn.full{width:100%}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:1.6rem}
/* intro */
.intro{height:260vh;position:relative;padding:0}
.stage{position:sticky;top:0;height:100vh;overflow:hidden;background:#1c1713}
.hero-pic{position:absolute;inset:0;transform:scale(1.35);transform-origin:50% 45%;will-change:transform}
.hero-pic img{object-position:50% 42%}
@media(max-width:700px){.hero-pic img{object-position:42% 50%}}
.shade{position:absolute;inset:0;background:radial-gradient(ellipse 70% 55% at 50% 48%,#120e0b99,#120e0b40 70%),linear-gradient(180deg,#120e0bb3,#120e0b4d 45%,#120e0bcc);opacity:1}
.peaks{position:absolute;left:0;right:0;bottom:0;width:100%;height:55vh;will-change:transform}
.peaks .p1{fill:#1b1916}.peaks .p2{fill:#f6f1e8}
.hero-copy{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;color:#fff;padding:0 22px}
.hero-copy .eyebrow{color:var(--gold-l)}
.hero-copy .lead{font-family:var(--serif);font-size:clamp(1.3rem,3vw,1.9rem);margin-top:.6rem}
.hero-copy em{color:var(--gold-l)}
.hero-copy .cta{justify-content:center}
.scroll-hint{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:#fff;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;opacity:.8;z-index:2}
.scroll-hint:after{content:"";display:block;width:1px;height:34px;background:#fff;margin:8px auto 0;animation:drip 1.8s infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.intro-text{text-align:center;max-width:720px}
/* fade */
.fade{opacity:0;transform:translateY(28px);transition:opacity .9s,transform .9s}
.fade.in{opacity:1;transform:none}
.reduced .fade{opacity:1;transform:none}
.reduced .intro{height:auto}.reduced .stage{position:relative}.reduced .hero-pic{transform:none}.reduced .peaks{display:none}
/* carta */
.carta{background:var(--stone)}
.sec-head{text-align:center;max-width:700px;margin:0 auto 34px}
.tag{display:inline-block;font:500 .62rem var(--sans);letter-spacing:.12em;text-transform:uppercase;background:#fff;color:var(--ember);border:1px solid #b5562f55;border-radius:20px;padding:1px 8px;vertical-align:middle}
.cat-tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:30px}
.cat-tabs button{border:1px solid #0002;background:transparent;border-radius:30px;padding:7px 16px;font:400 .85rem var(--sans);cursor:pointer}
.cat-tabs button.on{background:var(--pine);color:#fff;border-color:var(--pine)}
.cat{margin-bottom:40px}
.cat h3{font-size:2rem;border-bottom:1px solid #0002;padding-bottom:8px;margin-bottom:16px}
.dishes{display:grid;gap:14px}
@media(min-width:760px){.dishes{grid-template-columns:1fr 1fr}}
.dish{background:var(--cream);border-radius:14px;padding:18px 18px 16px;display:flex;gap:14px;justify-content:space-between;align-items:flex-start}
.dish h4{font:500 1.35rem var(--serif)}
.dish p{font-size:.85rem;color:var(--muted)}
.dish .side{text-align:right;flex-shrink:0}
.price{font:500 1.2rem var(--serif);display:block;margin-bottom:6px}
.add{border:1px solid var(--ember);color:var(--ember);background:none;border-radius:30px;padding:5px 14px;font:500 .78rem var(--sans);cursor:pointer;transition:.2s}
.add:hover,.add.done{background:var(--ember);color:#fff}
/* como */
.steps{display:grid;gap:18px;margin-bottom:40px}
@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}}
.step{border-top:2px solid var(--ember);padding-top:18px}
.step span{font:italic 2.6rem var(--serif);color:var(--ember)}
.wide{border-radius:18px;overflow:hidden;aspect-ratio:16/7}
/* reparto */
.two{display:grid;gap:40px;align-items:center}
@media(min-width:860px){.two{grid-template-columns:1fr 1fr}}
.tall{border-radius:18px;overflow:hidden;aspect-ratio:4/3}
.zones{list-style:none;margin:10px 0 14px}
.zones li{display:flex;justify-content:space-between;border-bottom:1px dashed #0003;padding:10px 0}
.zones b{font-weight:500}
/* horarios */
.horarios{background:var(--pine);color:#efe9dd}
.horarios em,.horarios .eyebrow{color:var(--gold-l)}
.horarios .small{color:#cfc6b6}
table{width:100%;border-collapse:collapse;margin-bottom:12px;font-size:.92rem}
th{text-align:left;font:500 .72rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-l);padding:8px 6px}
td{padding:12px 6px;border-top:1px solid #ffffff22}
/* reservar */
form{background:#fff;border-radius:18px;padding:26px;box-shadow:0 20px 50px -30px #0005;display:grid;gap:14px}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
form .row label:first-child{grid-column:1/-1}
@media(min-width:560px){form .row{grid-template-columns:1.4fr 1fr .8fr}form .row label:first-child{grid-column:auto}}
label{display:grid;gap:4px;font-size:.78rem;font-weight:500;letter-spacing:.04em;color:var(--muted)}
input,select,textarea{font:400 1rem var(--sans);color:var(--ink);border:1px solid #0002;border-radius:10px;padding:10px 12px;background:var(--cream);width:100%}
.invalid{border-color:#c0392b;background:#fdf0ee}
.err{color:#c0392b;font-size:.85rem;min-height:1em}
.ok{background:#e8f0ea;border:1px solid var(--pine);color:var(--pine-d);border-radius:12px;padding:14px;font-size:.92rem}
/* contacto */
.contacto{text-align:center;background:var(--stone)}
.contacto .cta{justify-content:center}
footer{padding:28px 22px 40px;text-align:center;font-size:.78rem;color:var(--muted)}
/* drawer */
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(400px,100%);background:var(--cream);z-index:70;transform:translateX(100%);transition:transform .45s cubic-bezier(.2,.8,.2,1);
 display:flex;flex-direction:column;padding:22px;gap:14px;box-shadow:-20px 0 50px -20px #0006}
.drawer.open{transform:none}
.drawer-head{display:flex;justify-content:space-between;align-items:center}
.drawer-head button{font-size:2rem;background:none;border:0;cursor:pointer;line-height:1}
.mode{display:flex;gap:16px;font-size:.9rem}
.mode label{display:flex;flex-direction:row;align-items:center;gap:6px;font-size:.9rem;color:var(--ink)}
.mode input{width:auto}
.lines{list-style:none}
.lines li{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border-bottom:1px solid #0001;padding:10px 0;font-size:.9rem}
.lines .empty{display:block;color:var(--muted);text-align:center;padding:40px 0;border:0}
.qty{display:flex;align-items:center;gap:6px}
.qty button{width:26px;height:26px;border-radius:50%;border:1px solid #0003;background:none;cursor:pointer}
.totals p{display:flex;justify-content:space-between;font-size:.92rem}
.totals .total{font:500 1.5rem var(--serif);border-top:1px solid #0002;padding-top:8px;margin-top:6px}
.backdrop{position:fixed;inset:0;background:#0006;z-index:60;opacity:0;pointer-events:none;transition:.3s}
.backdrop.open{opacity:1;pointer-events:auto}
.fab{position:fixed;right:16px;bottom:16px;z-index:45;background:var(--pine);color:#fff;border:0;border-radius:40px;padding:12px 18px;font:500 .9rem var(--sans);
 box-shadow:0 10px 30px -10px #0008;cursor:pointer;transform:translateY(140%);transition:transform .4s}
.fab.show{transform:none}
@media(min-width:960px){.fab{display:none}}
.bump{animation:bump .4s}
@keyframes bump{50%{transform:scale(1.15)}}

/* paleta del logo: negro + dorado */
.nav nav a:not(.btn-sm){color:#efe6d2}
.btn,.btn-sm{background:linear-gradient(180deg,var(--gold-l),var(--gold));border-color:var(--gold);color:var(--black)}
.btn:hover{background:var(--gold);filter:brightness(1.06)}
.btn.ghost,.btn-sm.ghost{background:none;color:var(--ember);border-color:var(--ember)}
.nav .btn-sm.ghost{color:var(--gold-l);border-color:var(--gold)}
.btn.ghost-light{background:rgba(0,0,0,.25);border-color:var(--gold-l);color:var(--gold-l)}
.btn.wa{background:var(--black);border-color:var(--black);color:var(--gold-l)}
.btn.wa:hover{background:#2a2621}
.add{border-color:var(--ember);color:var(--ember)}
.add:hover,.add.done{background:var(--gold);border-color:var(--gold);color:var(--black)}
.cat-tabs button.on{background:var(--black);border-color:var(--black);color:var(--gold-l)}
.step{border-top-color:var(--gold)}
.hero-logo{width:min(760px,92vw);filter:drop-shadow(0 6px 24px #000c)}
.contacto{background:var(--black);color:#efe6d2}.contacto em,.contacto .eyebrow{color:var(--gold-l)}.contacto .small{color:#b9ae9b}
.contacto .btn.ghost{color:var(--gold-l);border-color:var(--gold)}
.contacto .btn.wa{border-color:var(--gold);}
footer{background:var(--black);color:#9b917f;padding-top:10px}footer a{color:#cdbf9f}
.foot-logo{width:min(320px,70vw);height:auto;margin:0 auto 14px;border-radius:6px}
.fab{background:var(--black);color:var(--gold-l);border:1px solid var(--gold)}
.ok{background:#f5eedd;border-color:var(--gold);color:#4a3a1a}
.tag{color:var(--ember)}

/* tarjetas de plato con foto */
.dishes{display:grid;gap:16px;grid-template-columns:1fr}
.dish{display:grid;grid-template-columns:112px 1fr;gap:0;padding:0;overflow:hidden;background:#fff;border:1px solid #0000000d;
 box-shadow:0 14px 34px -26px #000a;transition:transform .35s,box-shadow .35s;align-items:stretch}
.dish-img{display:block;background:#1b1916;overflow:hidden}
.dish-img img{aspect-ratio:1/1;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.dish-body{padding:14px 14px 12px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}
.dish h4{font:500 1.3rem/1.1 var(--serif)}
.dish .side{display:flex;justify-content:space-between;align-items:center;text-align:left}
.dish .price{margin:0;font-size:1.05rem;color:var(--muted)}
@media(min-width:620px){.dishes{grid-template-columns:1fr 1fr}}
@media(min-width:900px){
 .dishes{grid-template-columns:repeat(3,1fr);gap:22px}
 .dish{grid-template-columns:1fr;border-radius:16px}
 .dish-img img{aspect-ratio:4/3}
 .dish-body{padding:16px 18px 16px}
 .dish:hover{transform:translateY(-4px);box-shadow:0 24px 44px -26px #000c}
 .dish:hover .dish-img img{transform:scale(1.06)}
}
.lines li{grid-template-columns:48px 1fr auto auto}
.lines .thumb{width:48px;height:48px;border-radius:8px;object-fit:cover}
.img-note{font-size:.72rem;color:var(--muted);text-align:center;margin-top:-18px;margin-bottom:26px}

.dish .price small{font-size:.72rem;color:var(--muted);letter-spacing:.02em}
.dish .nota{margin:3px 0 0;font-size:.8rem;color:var(--muted)}
.dish .side{gap:10px;flex-wrap:wrap}
.lines .unit{display:block;font-size:.72rem;color:var(--muted)}
.warn{color:#a4432b;font-weight:500;margin:10px 0}

/* logo de la barra: palabra «Casa MANTES» sin deformar, centrada en vertical */
.brand{display:flex;align-items:center;width:auto;height:46px;padding:0;line-height:0}
.brand img{height:100%;width:auto;display:block;object-fit:contain}
@media(max-width:600px){.brand{height:40px}.nav{padding:10px 16px}}
.hint{color:var(--gold-d,#8a6a2b);font-weight:500;margin:10px 0}
.zones li{justify-content:flex-start}

/* notas, insignias y menús burguer destacados */
.cat-note{margin:-6px 0 16px;color:var(--muted);font-size:.92rem}
.badge{display:inline-block;background:linear-gradient(180deg,var(--gold-l),var(--gold));color:var(--black);font:600 .66rem var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:30px;margin-bottom:6px}
.pill{display:inline-block;margin:1rem 0 0;padding:7px 16px;border:1px solid var(--gold);border-radius:40px;color:var(--gold-l);background:#0e0d0bb3;backdrop-filter:blur(4px);font:500 .82rem var(--sans);text-decoration:none;letter-spacing:.03em;transition:background .3s}
.pill:hover{background:#0e0d0be6}
.burguers{background:radial-gradient(120% 90% at 50% 0,#1d1a15,var(--black));color:#efe6d2;padding:72px 0 80px;border-top:1px solid #c9a35a55;border-bottom:1px solid #c9a35a55}
.burguers .sec-head{text-align:center}.burguers h2{color:#fff}.burguers h2 em{color:var(--gold-l)}.burguers .eyebrow{color:var(--gold)}.burguers .small{color:#cdbf9f}
.feat-grid{display:grid;gap:22px;grid-template-columns:1fr;max-width:920px;margin:34px auto 0}
.feat-card{background:#16140f;border:1px solid #c9a35a66;border-radius:18px;overflow:hidden;box-shadow:0 26px 50px -28px #000}
.feat-img{display:block;overflow:hidden}.feat-img img{aspect-ratio:4/3;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.feat-card:hover .feat-img img{transform:scale(1.05)}
.feat-body{padding:18px 20px 20px}
.feat-body h3{font:500 1.9rem/1.1 var(--serif);color:#fff;margin:4px 0 6px}
.feat-d{color:var(--gold-l);font-size:1rem;margin:0}.feat-s{color:#a99d85;font-size:.82rem;margin:4px 0 14px}
.feat-foot{display:flex;justify-content:space-between;align-items:center;gap:12px}
.feat-price{font:500 1.7rem var(--serif);color:var(--gold-l)}
.feat-foot .add{border:0;background:linear-gradient(180deg,var(--gold-l),var(--gold));color:var(--black);padding:10px 18px;border-radius:40px;font:600 .85rem var(--sans);cursor:pointer}
@media(min-width:700px){.feat-grid{grid-template-columns:1fr 1fr}}
.solo-msg{background:#fbeede;border:1px solid #c9a35a;border-radius:12px;padding:12px 14px;margin:10px 0;font-size:.85rem;color:#4a3410}
.solo-msg p{margin:0 0 8px}.solo-msg .btn-sm{cursor:pointer}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:90;display:flex;gap:12px;align-items:center;max-width:min(92vw,520px);background:#0e0d0b;color:#efe6d2;border:1px solid var(--gold);border-radius:14px;padding:12px 14px;font-size:.88rem;box-shadow:0 18px 40px -10px #000}
.toast[hidden]{display:none}.toast .btn-sm{flex:none;cursor:pointer}

/* drawer con desplazamiento + formulario de pedido */
.drawer{gap:10px}
.drawer-scroll{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:12px;padding-right:2px;margin-right:-2px;-webkit-overflow-scrolling:touch}
.drawer-foot{border-top:1px solid #0002;padding-top:10px}.drawer-foot .small{margin:8px 0 0}
.ck{display:grid;gap:10px;border-top:1px solid #0002;padding-top:12px}.ck h4{font:500 1.3rem var(--serif);margin:0}
.ck label{font-size:.76rem}.ck input,.ck select,.ck textarea{padding:9px 11px;font-size:.95rem}
.ck em{font-style:normal;color:var(--muted);font-weight:400}
.ck-rep{display:grid;gap:10px}.ck-rep[hidden],#ckBebida[hidden]{display:none}
.ck-when{display:grid;grid-template-columns:1.3fr 1fr;gap:10px}
.fe{color:#c0392b;font-size:.76rem;font-weight:400;letter-spacing:0;min-height:0}.fe:empty{display:none}
.ck .invalid{border-color:#c0392b;background:#fff4f2}
.foot-hours{margin:10px 0 0;color:var(--gold-l);font-size:.85rem;letter-spacing:.04em}
.horarios td[colspan]{text-align:center;opacity:.8}
@media(max-width:380px){.ck-when{grid-template-columns:1fr}}

.dish .desc{margin:4px 0 0;font-size:.84rem;line-height:1.35;color:var(--ink);opacity:.85}
.feat-i{color:#d9ccb0;font-size:.92rem;line-height:1.4;margin:2px 0 8px}

/* modal de burguers */
.modal{position:fixed;inset:0;z-index:95;background:#000a;display:flex;align-items:flex-end;justify-content:center}
.modal[hidden]{display:none}
body.md-open{overflow:hidden}
.modal-card{position:relative;width:min(560px,100%);max-height:92vh;display:flex;flex-direction:column;background:#14120e;color:#efe6d2;border:1px solid #c9a35a88;border-radius:20px 20px 0 0;box-shadow:0 -20px 60px #000}
.md-scroll{overflow-y:auto;padding:22px 20px 8px;display:grid;gap:14px;-webkit-overflow-scrolling:touch}
.md-scroll h3{font:500 1.9rem/1.1 var(--serif);color:#fff;margin:0;padding-right:36px}
.md-sub{margin:-8px 0 0;color:var(--gold-l)}.md-d{margin:-6px 0 0;color:#cdbf9f;font-size:.88rem}
.md-x{position:absolute;right:12px;top:8px;background:none;border:0;color:#efe6d2;font-size:2rem;cursor:pointer;line-height:1;z-index:2}
.modal fieldset{border:0;border-top:1px solid #c9a35a44;padding:10px 0 0;margin:0;min-width:0}
.modal legend{font:600 .72rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);padding-right:10px}
.opts{display:grid;grid-template-columns:1fr;gap:2px}
@media(min-width:520px){.opts{grid-template-columns:1fr 1fr}}
.opt{display:flex;flex-direction:row;align-items:center;gap:10px;padding:9px 4px;font-size:.92rem;letter-spacing:0;color:#efe6d2;cursor:pointer;font-weight:400}
.opt input{position:absolute;opacity:0;width:0;height:0}
.opt .box{flex:none;width:20px;height:20px;border:1.5px solid var(--gold);border-radius:6px;display:grid;place-items:center;transition:.2s}
.opt input:checked+.box{background:var(--gold)}
.opt input:checked+.box::after{content:"✓";color:#14120e;font-size:.8rem;font-weight:700}
.opt input:focus-visible+.box{outline:2px solid var(--gold-l);outline-offset:2px}
.opt .ot{flex:1}
.pp{font-style:normal;font-size:.78rem;color:var(--gold-l);white-space:nowrap}
.mdt{color:#cdbf9f;font-size:.78rem}.mdt em{font-style:normal;opacity:.7;font-weight:400}
.modal input[name=t],.modal input[name=b]{background:#0e0d0b;color:#efe6d2;border-color:#c9a35a66}
.modal .fe{color:#ff8a78}.modal input.invalid{border-color:#ff8a78;background:#2a1612}
.md-note{margin:0;font-size:.78rem;color:#a99d85}
.md-foot{display:flex;gap:10px;padding:12px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #c9a35a44}
.md-foot .btn{padding:12px 10px;text-align:center}.md-foot .btn.ghost{flex:.6;color:var(--gold-l);border-color:var(--gold)}
.md-foot .btn:not(.ghost){flex:1.4}
@media(min-width:700px){.modal{align-items:center}.modal-card{border-radius:20px;max-height:88vh}}
.lines .mods{display:block;font-size:.72rem;color:#7a5f22;line-height:1.3;margin-top:2px}
.dish .desc{margin:4px 0 0;font-size:.84rem;line-height:1.35;color:var(--ink);opacity:.85}
.feat-i{color:#d9ccb0;font-size:.92rem;line-height:1.4;margin:2px 0 8px}

/* confirmación en la web */
#done{position:fixed;inset:0;z-index:99;background:radial-gradient(120% 90% at 50% 0,#1d1a15,#0a0908);overflow-y:auto;display:flex;justify-content:center;align-items:flex-start;padding:28px 16px}
#done[hidden]{display:none}
.done-card{width:min(520px,100%);margin:auto;background:#14120e;border:1px solid #c9a35a99;border-radius:22px;padding:30px 24px 26px;text-align:center;color:#efe6d2;box-shadow:0 30px 70px -20px #000;animation:donein .6s cubic-bezier(.2,.8,.2,1) both}
@keyframes donein{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.done-ico{width:64px;height:64px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;font-size:2rem;color:#14120e;background:linear-gradient(180deg,var(--gold-l),var(--gold));box-shadow:0 0 0 8px #c9a35a22}
.done-card .eyebrow{color:var(--gold);margin:0}
.done-card h2{font:500 2.3rem/1.1 var(--serif);color:#fff;margin:6px 0 8px}
.done-num{margin:0 0 16px;color:#cdbf9f}.done-num b{color:var(--gold-l);letter-spacing:.06em;font-weight:600}
.done-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;text-align:left;margin:0 0 14px;padding:14px 0;border-top:1px solid #c9a35a44;border-bottom:1px solid #c9a35a44;font-size:.9rem}
.done-dl dt{color:#a99d85}.done-dl dd{margin:0;color:#efe6d2}
.done-lines{list-style:none;margin:0 0 10px;padding:0;text-align:left;font-size:.9rem}
.done-lines li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px dashed #c9a35a33}
.done-lines small{display:block;color:#a99d85;font-size:.74rem;line-height:1.3}.done-lines b{font-weight:500;white-space:nowrap}
.done-total{display:flex;justify-content:space-between;align-items:baseline;font:500 1.5rem var(--serif);margin:6px 0 16px}.done-total b{color:var(--gold-l);font-weight:500;text-align:right}.done-total small{font:400 .72rem var(--sans);color:#a99d85;display:block}
.done-note{font:italic 1.25rem var(--serif);color:var(--gold-l);margin:8px 0 12px}
.done-proto{font-size:.74rem;color:#a99d85;margin:0 0 14px}
.drawer-foot .err{margin:0 0 8px}

/* ventana de pedidos: banner dorado/negro, botones cerrados, encargo de arroces */
.ped-banner{display:flex;gap:14px;align-items:flex-start;text-align:left;max-width:720px;margin:22px auto 0;padding:14px 18px;color:#efe6d2;border:1px solid var(--gold);border-radius:14px;
 background:linear-gradient(135deg,#0e0d0b 0%,#1f1a11 100%);box-shadow:0 16px 36px -22px #000,inset 0 0 0 3px #0e0d0b,inset 0 0 0 4px #c9a35a33}
.ped-banner .pb-ico{flex:none;width:30px;height:30px;border-radius:50%;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font-size:.8rem;margin-top:2px}
.ped-banner .pb-ico.on{background:linear-gradient(180deg,var(--gold-l),var(--gold));color:var(--black)}
.pb-t{font:500 1.18rem/1.25 var(--serif);color:#efe6d2}.pb-t b{color:var(--gold-l);font-weight:600;letter-spacing:.03em}
.pb-s{margin-top:4px;font-size:.78rem;line-height:1.4;color:#b9ae9b}.pb-s a{color:var(--gold-l)}
.ped-banner[data-estado=cerrado]{border-color:var(--gold-l)}
.drawer .ped-banner{margin:0;padding:11px 13px;gap:10px}.drawer .pb-t{font-size:1.02rem}.drawer .ped-banner .pb-ico{width:24px;height:24px}
.sec-head .ped-banner{margin-top:18px}.carta .sec-head,.burguers .sec-head{text-align:center}.carta .sec-head .ped-banner{margin-left:auto;margin-right:auto}
.add:disabled,.feat-foot .add:disabled{opacity:1;cursor:not-allowed;background:#e5ded0;border:1px solid #0002;color:#8b8172}
.feat-foot .add:disabled{background:#2a2621;border-color:#c9a35a44;color:#a99d85}
.dish.cerrado .dish-img img,.feat-card.cerrado .feat-img img{filter:grayscale(.75) brightness(.8)}
.dish.cerrado .price{opacity:.6}
.encargo-tag{display:inline-block;margin:6px 0 0;padding:3px 10px;border:1px solid var(--gold);border-radius:30px;background:#0e0d0b;color:var(--gold-l)!important;font:500 .7rem/1.3 var(--sans)!important;letter-spacing:.03em}
.lines li.blocked{opacity:.75;background:repeating-linear-gradient(135deg,transparent 0 8px,#c9a35a14 8px 16px)}
.lines .nodisp{display:block;font-size:.72rem;color:#9b3a2c;font-weight:500;margin-top:2px}
.enc-msg{background:#0e0d0b;color:#e0c07e;border:1px solid var(--gold);border-radius:12px;padding:10px 13px;font-weight:300}.enc-msg b{font-weight:600}
#dbgAhora{position:fixed;left:0;bottom:22px;z-index:41;background:#c9a35a;color:#0e0d0b;font:600 .62rem/1.2 var(--sans);padding:3px 9px;border-top-right-radius:8px;pointer-events:none}

/* ---- Pago inmediato con tarjeta (pantalla de pago: simulada en el prototipo, SumUp Payment Widget en producción) ---- */
#pay{position:fixed;inset:0;z-index:98;background:radial-gradient(120% 90% at 50% 0,#1d1a15,#0a0908);overflow-y:auto;display:flex;justify-content:center;align-items:flex-start;padding:22px 14px}
#pay[hidden]{display:none}
.pay-card{width:min(480px,100%);margin:auto;background:#14120e;border:1px solid #c9a35a99;border-radius:22px;padding:20px 18px 18px;color:#efe6d2;box-shadow:0 30px 70px -20px #000;animation:donein .5s cubic-bezier(.2,.8,.2,1) both;text-align:left}
.pay-top{display:flex;align-items:center;gap:8px;font-size:.78rem;letter-spacing:.06em;color:#cdbf9f;border-bottom:1px solid #c9a35a33;padding-bottom:10px;margin-bottom:12px}
.pay-top em{margin-left:auto;font-style:normal;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-l);border:1px solid #c9a35a77;border-radius:20px;padding:2px 9px}
.pay-card .eyebrow{color:var(--gold);margin:0 0 2px;font-size:.66rem}
.pay-card h2{font:500 1.9rem/1.1 var(--serif);color:#fff;margin:0 0 10px}
.pay-sum{background:#0e0d0b;border:1px solid #c9a35a44;border-radius:14px;padding:6px 14px 12px;margin-bottom:12px}
.pay-lines{list-style:none;margin:0;padding:0;font-size:.84rem;max-height:112px;overflow-y:auto}
.pay-lines li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dashed #c9a35a33}.pay-lines b{font-weight:500;white-space:nowrap}
.pay-total{display:flex;justify-content:space-between;align-items:baseline;margin:8px 0 0;font:500 1.15rem var(--serif);color:#cdbf9f}.pay-total b{font:500 1.9rem var(--serif);color:var(--gold-l)}

.pay-simtag{font-size:.74rem;color:#e0c07e;background:#c9a35a1a;border:1px dashed #c9a35a77;border-radius:10px;padding:7px 10px;margin:0 0 10px;line-height:1.35}
.pay-form{display:grid;gap:9px;background:none;border-radius:0;padding:0;box-shadow:none}.pay-form label{display:grid;gap:3px;font-size:.74rem;color:#cdbf9f;letter-spacing:.03em}
.pay-form input{background:#0e0d0b;color:#efe6d2;border:1px solid #c9a35a66;border-radius:10px;padding:10px 12px;font:400 1rem var(--sans);width:100%}
.pay-form input:focus{outline:2px solid var(--gold);outline-offset:1px}
.pay-form input::placeholder{color:#6f6657}
.pay-form input.invalid{border-color:#ff8a78;background:#2a1612}.pay-form .fe{color:#ff8a78}
.pay-row{display:grid;grid-template-columns:1.2fr 1fr;gap:9px}
.pay-test{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.7rem;color:#a99d85}
.pay-test button{background:none;border:1px solid #c9a35a66;color:var(--gold-l);border-radius:20px;padding:3px 10px;font:500 .7rem var(--sans);cursor:pointer}
.pay-test button:hover{background:#c9a35a22}
#payGo{margin-top:2px;padding:14px 16px;font-size:1rem}
.pay-cancel{display:block;margin:12px auto 0;background:none;border:0;color:#a99d85;font:400 .82rem var(--sans);text-decoration:underline;cursor:pointer}
.pay-fine{font-size:.72rem;color:#a99d85;margin:8px 0 0;text-align:center}
.pay-widget-wrap{position:relative}.pay-widget{background:#fff;border-radius:14px;padding:10px;min-height:120px;color:#222}
.pay-loading{color:#776d61;text-align:center;padding:30px 0;font-size:.9rem}
.pay-busy{position:absolute;inset:0;background:#14120ee6;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.pay-busy[hidden]{display:none}
.pay-state{text-align:center;padding:14px 4px 6px}
.pay-state h2{margin:12px 0 6px}.pay-state p{margin:0 0 8px;color:#cdbf9f;font-size:.92rem}
.pay-state .pay-amount{font:500 2.4rem var(--serif);color:var(--gold-l);margin:2px 0 8px}
.pay-spin{width:58px;height:58px;margin:8px auto;border-radius:50%;border:4px solid #c9a35a33;border-top-color:var(--gold-l);animation:payspin 1s linear infinite}
@keyframes payspin{to{transform:rotate(360deg)}}
.pay-state.good .done-ico{margin-top:6px}
.pay-ko{width:64px;height:64px;margin:6px auto 0;border-radius:50%;display:grid;place-items:center;font:600 2rem var(--sans);color:#fff;background:#b3382c;box-shadow:0 0 0 8px #b3382c33}
.pay-why{color:#ffb4a8!important;font-size:1rem!important}
.pay-note{font-size:.82rem!important;color:#a99d85!important;margin-bottom:14px!important}.pay-note b{color:#efe6d2;font-weight:500}
.pay-state .btn{margin-top:2px}
.done-paid{display:inline-flex;align-items:center;gap:7px;margin:0 0 14px;padding:6px 16px;border-radius:30px;background:#c9a35a22;border:1px solid var(--gold);color:var(--gold-l);font:600 .85rem var(--sans);letter-spacing:.04em}
@media(prefers-reduced-motion:reduce){.pay-spin{animation-duration:2.5s}}

/* ---- Forma de pago (selector en el pedido) ---- */
.pm{border:1px solid #0002;border-radius:12px;padding:10px 12px 12px;display:grid;gap:8px;margin:0;min-width:0}
.pm legend{font:500 1.3rem var(--serif);padding:0 6px}
.ck .pm-opt{display:flex;flex-direction:row;align-items:flex-start;gap:10px;padding:10px 11px;border:1px solid #0002;border-radius:10px;cursor:pointer;font-size:.9rem;color:var(--ink);background:#fff}
.ck .pm-opt input{width:auto;padding:0;margin:3px 0 0;accent-color:#b8923f;flex:none}
.pm-opt span{display:grid;gap:2px}.pm-opt b{font-weight:600;font-size:.92rem}.pm-opt small{color:var(--muted);font-size:.78rem;line-height:1.35;font-weight:400}
.ck .pm-opt:has(input:checked){border-color:var(--gold);background:#fbf5e6;box-shadow:0 0 0 1px var(--gold) inset}
.ck .pm-opt:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}
.pm-cash{display:grid;gap:5px}.pm-cash[hidden]{display:none}
.pm-eur{display:flex;align-items:center;gap:6px}.pm-eur input{flex:1}.pm-eur i{font-style:normal;font-weight:600}
.done-pend{display:inline-flex;gap:6px;align-items:center;margin:2px 0 10px;padding:6px 14px;border:1px solid var(--gold);border-radius:999px;color:var(--gold-l);font-size:.85rem;background:#d4af6a14}
