/* PASO 2 — Tarjetas completas sin fotos. Base mobile-first, sin tocar modales. */
.products {grid-template-columns:1fr;gap:24px;align-items:start}
.menu-card {
 --card-color:#ffc526;--card-ink:#231d18;
 border:1px solid #d9cbb4;border-radius:20px;overflow:hidden;background:#fffdf7;
 box-shadow:0 5px 0 #e6d8c0;min-width:0;
}
.menu-card[data-category-tone='sharing'] {--card-color:#af321c;--card-ink:white}
.menu-card[data-category-tone='food'] {--card-color:#ffdbb4}
.menu-card[data-category-tone='extras'] {--card-color:#efe4c9}
.menu-card[data-category-tone='drinks'] {--card-color:#d8edf1;--card-ink:#173c49}
.card-media {position:relative;aspect-ratio:4/3;width:100%;background:var(--card-color);display:grid;place-items:center;overflow:hidden}
.card-media::before,.card-media::after {content:'';position:absolute;width:68%;aspect-ratio:1;border:1px solid currentColor;opacity:.12;border-radius:50%;color:var(--card-ink);pointer-events:none}
.card-media::before {left:-24%;top:-42%}
.card-media::after {right:-25%;bottom:-50%}
.card-media img {display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.card-icon {font-size:clamp(5rem,21vw,7rem);line-height:1;filter:drop-shadow(0 9px 0 #231d1810);padding-bottom:12px}
.card-illustration-label {position:absolute;left:16px;bottom:15px;max-width:40%;font-size:.75rem;line-height:1.35;color:var(--card-ink)}
.card-price {position:absolute;right:14px;bottom:13px;display:inline-flex;align-items:center;min-height:50px;background:var(--ink);color:white;padding:10px 17px;border-radius:30px;font-size:1.55rem;font-weight:800;letter-spacing:-.04em;box-shadow:0 4px 0 #0002}
.card-tag {position:absolute;top:15px;left:15px;padding:7px 11px;border-radius:30px;font-size:.75rem;background:#fff5d9;color:#5f2516;font-weight:700}
.menu-card .card-body {padding:24px;gap:0}
.card-body .product-label {font-size:.75rem;font-weight:800;color:#87331b;letter-spacing:1.6px}
.card-body h3 {font-size:1.5rem;line-height:1.2;letter-spacing:-.035em;margin:10px 0 12px;min-height:1.2em}
.card-body .card-description {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:1rem;line-height:1.6;margin:0;color:var(--muted);min-height:3.2em}
.card-body .card-description.is-expanded {-webkit-line-clamp:unset;display:block}
.card-more {min-height:44px;align-self:start;margin:2px 0 8px;padding:8px 0;border:0;border-radius:0;background:transparent;color:#92341a;font-size:.875rem;text-decoration:underline;text-underline-offset:4px;font-weight:600;box-shadow:none}
.card-more:hover {background:transparent;box-shadow:none!important;transform:none!important}
.card-provisional {font-size:1rem;line-height:1.5;color:#87331b;margin:0 0 14px}
.card-actions {display:flex;flex-direction:column;gap:12px;margin-top:6px}
.card-actions>.customize-product {width:100%;border:1px solid #8f7d63;background:white;color:var(--ink);min-height:46px;font-size:1rem}
.card-purchase {display:flex;align-items:stretch;gap:12px}
.card-quantity {display:flex;align-items:center;flex-shrink:0;gap:0;background:#fff7e7;border:1px solid #bba98a;border-radius:12px;overflow:hidden}
.card-quantity button {min-height:48px;min-width:44px;width:44px;border:0;border-radius:0;background:transparent;color:var(--ink);font-size:1.3rem;padding:0;box-shadow:none!important}
.card-quantity output {width:28px;text-align:center;font-size:1rem;font-weight:700}
.card-purchase .add-product {flex:1;min-width:0;width:auto;margin:0;min-height:50px;font-size:1rem;padding:12px}
.card-feedback:empty {display:none}
.card-body .card-feedback {margin:14px 0 0;font-size:1rem;line-height:1.5;color:#87331b}
@media(min-width:640px) {.products{grid-template-columns:repeat(2,minmax(0,1fr))}.card-icon{font-size:6rem}.card-body h3{min-height:2.4em}}
@media(min-width:1040px) {.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:359px) {.menu-card .card-body{padding:18px}.card-purchase{gap:8px}.card-quantity button{min-width:44px}.card-quantity output{width:24px}.card-price{font-size:1.35rem;padding:10px 14px}}
@media(prefers-reduced-motion:reduce) {.menu-card,.card-icon{animation:none!important;transition:none!important;transform:none!important}}
