/* MenuFlow V8 / Crazy Wings: transición de marca + selección de modalidad. */
.menu-v8{--brand-sun:#ffca32}
.menu-v8 .brand-logo{border-radius:9px;object-fit:contain;background:transparent;border:0}
.menu-v8 .header-mode-button{display:flex;gap:7px;align-items:center;justify-content:center;border:1px solid #f3e1cb;border-radius:13px;padding:12px 15px;background:#fff7eb;font-weight:800;color:#8e450d;cursor:pointer;white-space:nowrap}
.menu-v8 .header-mode-button:hover{background:#fff0d1}
.menu-v8 .header-mode-button b{font-weight:900;color:#b58350}
.menu-v8 .mode-ribbon{margin-top:20px;border:1px solid #f4e6d8;border-radius:17px;padding:12px 17px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}
.menu-v8 .mode-ribbon>div{display:flex;align-items:center;gap:12px;min-width:0}
.menu-v8 .mode-ribbon-icon{background:#fff2de;border-radius:12px;display:grid;place-items:center;width:42px;height:42px;font-size:24px;flex:none}
.menu-v8 .mode-ribbon strong,.menu-v8 .mode-ribbon small{display:block;line-height:1.45}
.menu-v8 .mode-ribbon small{color:#93867a;font-size:11px}
.menu-v8 .mode-ribbon button{border:0;background:#fff0df;color:#9e4b0a;padding:9px 14px;border-radius:10px;font-weight:800;white-space:nowrap}
.menu-v8 .welcome-top{margin-top:25px}
.page-loader{position:fixed;inset:0;background:linear-gradient(135deg,#ffd347,#ffbd23 51%,#ff9f0b);z-index:110;display:grid;place-items:center;text-align:center;padding:24px;color:#28201b;transition:opacity .32s,visibility .32s}
.page-loader.is-gone{opacity:0;visibility:hidden;pointer-events:none}
.loader-core{width:min(460px,100%);display:flex;align-items:center;flex-direction:column}
.loader-spark{font-size:11px;letter-spacing:2.2px;font-weight:950;color:#78420c}
.loader-logo{display:block;width:min(350px,80vw);max-height:245px;object-fit:contain;margin:16px 0 10px;filter:drop-shadow(0 11px 15px #99430030);animation:loader-appear .6s both}
.loader-core p{font-size:15px;font-weight:800;margin:8px 0 28px}
.loader-track{height:11px;border-radius:20px;background:#fff9;box-shadow:inset 0 1px 3px #0001;width:min(310px,80vw);overflow:hidden;padding:2px}
.loader-bar{height:100%;border-radius:20px;width:0;background:#26201b;animation:loading-progress var(--splash-duration, 3000ms) linear forwards;transition:width .2s ease}
.loader-core small{margin-top:11px;font-size:11px;color:#704109;letter-spacing:1px;font-weight:800}
@keyframes loading-progress{0%{width:3%}44%{width:52%}78%{width:86%}100%{width:100%}}
@keyframes loader-appear{from{opacity:0;transform:translateY(13px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
.mode-open{overflow:hidden}
.order-mode-screen{position:fixed;inset:0;z-index:105;display:grid;place-items:center;padding:18px}
.order-mode-screen.hidden{display:none!important}
.mode-shade{position:absolute;inset:0;background:#181008c7;backdrop-filter:blur(8px)}
.mode-dialog{position:relative;z-index:1;width:min(585px,100%);background:#fff;border-radius:29px;padding:34px 35px 29px;box-shadow:0 30px 95px #1c0e0855;max-height:calc(100dvh - 36px);overflow-y:auto}
.mode-topline{display:flex;gap:10px;align-items:center;border-bottom:1px solid #f2e9dc;padding-bottom:16px;margin-bottom:23px}
.mode-topline img{width:58px;height:51px;object-fit:contain}
.mode-topline span{font-size:11px;letter-spacing:1.3px;font-weight:900;color:#9b6a31}
.mode-eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:900;color:#d77113}
.mode-dialog h2{font-size:clamp(29px,5vw,43px);line-height:1.1;letter-spacing:-1.7px;margin:8px 0 9px}
.mode-dialog h2 em{color:#f18412;font-style:normal}
.mode-intro{color:#82766b;font-size:14px;line-height:1.55;margin:0 0 22px}
.mode-options{display:grid;gap:12px}
.mode-option{text-align:left;background:#fff;border:2px solid #f0e8de;border-radius:18px;padding:17px;display:flex;align-items:center;gap:16px;width:100%;cursor:pointer;transition:border-color .18s,background .18s,transform .18s}
.mode-option:hover,.mode-option:focus-visible{border-color:#f6a72b;background:#fff9ed;transform:translateY(-1px);outline:none}
.mode-icon{display:grid;place-items:center;font-size:30px;background:#fff0d7;border-radius:14px;width:64px;height:64px;flex:none}
.mode-icon.mode-home{background:#fff0e4}
.mode-option-text{display:flex;flex:1;flex-direction:column;gap:5px}
.mode-option-text strong{font-size:17px;color:#27211d}
.mode-option-text small{font-size:12px;line-height:1.5;color:#87796b}
.mode-chevron{font-size:24px;font-weight:800;color:#e99416}
.mode-help{margin-top:20px;background:#fff8ec;padding:12px;border-radius:12px;color:#98682d;font-size:11px;line-height:1.5;text-align:center}
.demo-loader-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;border-color:#f5d6a5;background:#fffbf3}
.demo-loader-card .hint{margin:8px 0 0;max-width:620px}
@media(max-width:900px){.menu-v8 .header-mode-button{margin-left:auto}.menu-v8 .header-mode-button span{max-width:80px;overflow:hidden;text-overflow:ellipsis}.menu-v8 .header-row{gap:9px}}
@media(max-width:600px){.menu-v8 .header-mode-button{padding:9px 9px;font-size:11px;border-radius:10px}.menu-v8 .header-mode-button b{display:none}.menu-v8 .header-mode-button span{max-width:74px}.menu-v8 .mode-ribbon{margin-top:13px;padding:9px 12px}.menu-v8 .mode-ribbon-icon{width:37px;height:37px;font-size:22px}.mode-dialog{padding:25px 21px;border-radius:24px}.mode-icon{width:52px;height:52px;font-size:25px}.mode-option{gap:12px;padding:13px}.mode-option-text strong{font-size:15px}.mode-option-text small{font-size:11px}.loader-logo{width:min(285px,80vw)}.demo-loader-card{flex-direction:column;align-items:start}}
@media(prefers-reduced-motion:reduce){.loader-logo,.loader-bar{animation:none}.loader-bar{width:88%}.page-loader,.mode-option{transition:none}}


/* V9 mejoras visuales */
.header-status-stack{display:flex;align-items:center;gap:12px;margin-left:auto}
.business-badge{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 22px rgba(0,0,0,.06)}
.business-badge strong{font-size:13px;color:#1d1d1d}.business-badge small{font-size:11px;color:#6d6258}
.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}
.business-badge[data-state="closing_soon"] .status-dot,.business-strip[data-state="closing_soon"] .business-main-badge{background:#f59e0b;color:#fff}
.business-badge[data-state="opening_soon"] .status-dot,.business-strip[data-state="opening_soon"] .business-main-badge{background:#3b82f6;color:#fff}
.business-badge[data-state="closed"] .status-dot,.business-strip[data-state="closed"] .business-main-badge{background:#ef4444;color:#fff;box-shadow:0 0 0 4px rgba(239,68,68,.12)}
.modern-cart{min-width:168px;padding:11px 14px;border-radius:18px;display:flex;align-items:center;gap:11px;justify-content:space-between;background:linear-gradient(135deg,#171717,#2d2d2d);box-shadow:0 10px 24px rgba(0,0,0,.18)}
.cart-icon-bubble{width:36px;height:36px;border-radius:12px;background:#fff;display:grid;place-items:center;color:#000;flex:none}
.cart-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05;flex:1}.cart-title{font-weight:800;font-size:14px}.cart-copy small{font-size:11px;color:#ece6de}
.modern-cart #cartCount{min-width:30px;height:30px;border-radius:999px;background:#ff8a00;color:#fff;display:grid;place-items:center;font-weight:800;padding:0 8px}
.business-strip{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:18px 0 24px;padding:16px 18px;border-radius:26px;background:linear-gradient(135deg,#fffaf0,#ffffff);border:1px solid rgba(255,138,0,.16);box-shadow:0 14px 34px rgba(0,0,0,.05)}
.business-main{display:flex;align-items:center;gap:14px}.business-main-badge{padding:8px 12px;border-radius:999px;background:#0f9f55;color:#fff;font-weight:800;font-size:12px}.business-main strong{display:block;font-size:15px}.business-main p{margin:3px 0 0;color:#72675b;font-size:13px}.business-clock{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;background:#fff8ec}.business-clock span{font-size:24px}.business-clock strong{display:block;font-size:14px}.business-clock small{font-size:12px;color:#7a6f64}
.mobile-dock{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;position:fixed;left:50%;transform:translateX(-50%);bottom:14px;width:min(520px,calc(100% - 18px));background:rgba(255,255,255,.94);backdrop-filter:blur(14px);padding:10px;border-radius:24px;box-shadow:0 18px 40px rgba(0,0,0,.14);z-index:40;border:1px solid rgba(0,0,0,.06)}
.mobile-dock a,.mobile-dock button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 8px;border:0;background:transparent;border-radius:18px;font-weight:700;color:#453d37;font-size:12px}.mobile-dock span{font-size:20px}.mobile-dock a:hover,.mobile-dock button:hover,.mobile-dock a.is-active{background:#fff3de;color:#ff8a00}
.mobile-dock .is-disabled{opacity:.45;pointer-events:none}
.floating-order-button{position:fixed;right:16px;bottom:98px;z-index:41;display:flex;align-items:center;gap:11px;border:none;border-radius:18px;padding:11px 14px;background:linear-gradient(135deg,#171717,#2d2d2d);color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.24)}
.floating-order-icon{width:40px;height:40px;border-radius:14px;background:#fff;display:grid;place-items:center;color:#000;flex:none}.floating-order-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}.floating-order-copy strong{font-size:14px}.floating-order-copy small{font-size:11px;color:#ece6de}.floating-order-count{min-width:32px;height:32px;border-radius:999px;background:#ff8a00;color:#fff;display:grid;place-items:center;font-weight:800;padding:0 8px}
.btn.wide + .btn.wide{margin-top:10px}
.is-disabled{opacity:.5;pointer-events:none}
.disabled-soft{opacity:.65}
@media (max-width: 900px){.header-status-stack{width:100%;justify-content:space-between;margin-left:0}.business-strip{flex-direction:column;align-items:stretch}.business-clock{justify-content:flex-start}}
@media (max-width: 640px){.modern-cart{display:none}.mobile-dock{display:grid}.site-header{padding-bottom:10px}.business-badge{display:none}.floating-order-button{display:flex}.header-location{display:none}.business-strip{padding:14px 14px 84px;margin-bottom:18px}.business-main{align-items:flex-start}.business-main-badge{font-size:11px}.mode-ribbon{margin-bottom:12px}}
@media (min-width: 641px){.mobile-dock{display:none}.floating-order-button{display:none}}
