/* ASADERO NATION APP 251 — unified premium design system */
:root{--asn-bg:#050b17;--asn-deep:#070e20;--asn-navy:#101d35;--asn-surface:#14233b;--asn-panel:rgba(15,27,48,.85);--asn-panel2:rgba(20,37,65,.78);--asn-text:#f8fbff;--asn-muted:#b6c4da;--asn-yellow:#ffdf52;--asn-amber:#ffb42e;--asn-orange:#ff7b28;--asn-pink:#ef4aa8;--asn-stroke:rgba(255,211,83,.31);--asn-stroke-soft:rgba(194,213,251,.19);--asn-shadow:0 18px 48px rgba(0,0,0,.32);--asn-radius:22px;--asn-focus:#fff0a3;--bg:#050b17;--gold:#ffdf52;--gold2:#ffb42e;--text:#f8fbff;--muted:#b6c4da;--line:rgba(209,225,255,.17)}
html{color-scheme:dark}body{background:radial-gradient(ellipse 105% 560px at 52% -85px,rgba(27,62,113,.6),transparent 75%),radial-gradient(circle at 92% 32%,rgba(248,150,37,.08),transparent 29%),var(--asn-bg)!important;color:var(--asn-text)!important}body,button,input,select,textarea{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
/* Public sections, VIP, agent, store, locations, employment, contact, mission and reward components */
.section:not(.hero),.premiumBlock,.careersSection,#locations,#reservation,#careers,#vip,#nationExperience,#contactDirect,#daily,#menu,#drinkRecommendations,.vip-route-panel,.vipAccessCard,.vip-access-card{color:var(--asn-text)}
.section .head h2,.premiumBlock .head h2,.head h2,.section h2,.section h3,.feature-title,.vip-title,.agent-title{color:var(--asn-text);letter-spacing:-.025em;text-wrap:balance}
.section .head>span,.premiumBlock .head>span,.head>span{color:var(--asn-yellow);letter-spacing:.09em}
.section p,.premiumBlock p,.locCard p,.card p,.vipAccessCard p{color:var(--asn-muted)}
.card,.dailyCard,.quickCard,.locCard,.loc-card,.recoCard,.chefCard,.drinkCard,.serviceCard,.eventCard,.vipAccessCard,.vip-card,.vipCard,.reward-card,.rewardCard,.mission-card,.missionCard,.product-card,.productCard,.store-card,.storeCard,.careersCard,.career-card,.contact-card,.contactCard,.location-card,.locationCard,.premium-card,.premiumCard,.glass-card,.feature-card,.info-card,.route-card{background:linear-gradient(150deg,rgba(29,49,81,.89),rgba(9,19,36,.94))!important;border:1px solid var(--asn-stroke-soft)!important;box-shadow:var(--asn-shadow),inset 0 1px 0 rgba(255,255,255,.09);border-radius:var(--asn-radius);color:var(--asn-text);backdrop-filter:blur(16px)}
.dailyCard,.vipAccessCard,.rewardCard,.missionCard,.careersCard,.teamRecruitCard{border-color:var(--asn-stroke)!important}
.card:hover,.quickCard:hover,.locCard:hover,.rewardCard:hover,.productCard:hover{border-color:rgba(255,218,103,.52)!important}
.section,.premiumBlock{scroll-margin-top:94px}
/* Buttons and controls — do not alter business actions */
button,.goldBtn,.btn,.primaryBtn,.primary-btn,.ctaBtn,.cta-btn,.actionBtn,.pill-btn{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--asn-focus)!important;outline-offset:3px}
.goldBtn,.primaryBtn,.primary-btn,.ctaBtn,.cta-btn,.actionBtn,.action-btn,.vipAction,.asadero-action{background:linear-gradient(120deg,var(--asn-yellow),var(--asn-amber))!important;color:#091122!important;border:1px solid rgba(255,239,164,.7)!important;border-radius:14px!important;box-shadow:0 8px 24px rgba(255,171,40,.16);font-weight:800}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{max-width:100%;min-width:0;box-sizing:border-box;background-color:rgba(6,17,33,.9);border-color:rgba(205,225,255,.31);color:var(--asn-text)}
input::placeholder,textarea::placeholder{color:#9eaec8;opacity:1}select option{color:#fff;background:#101d35}label{color:#e6eefb}form{min-width:0}form>*{min-width:0}input[type=date],input[type=time],input[type=datetime-local]{min-width:0;width:100%;max-width:100%;color-scheme:dark}
/* Header remains in its approved structure */
.topbar,.siteHeader,#siteHeader{background:rgba(5,12,28,.9)!important;border-bottom:1px solid rgba(255,204,73,.24)!important;backdrop-filter:blur(18px)}
/* Dock: use 4 core links + overflow for existing services; native links remain intact */
.bottomNav{background:linear-gradient(155deg,rgba(11,23,44,.98),rgba(5,12,27,.99))!important;border:1px solid rgba(255,212,92,.23)!important;box-shadow:0 -12px 35px rgba(0,0,0,.33)!important;backdrop-filter:blur(18px)}
.bottomNav a,.bottomNav button{color:#e5edf9!important} .bottomNav a[aria-current=page],.bottomNav a:active{color:var(--asn-yellow)!important}
.bottomNav .asn-dock-icon{display:block;line-height:1;margin-bottom:3px}.bottomNav .asn-dock-icon svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}
.bottomNav small{font-size:10px!important;letter-spacing:.015em}
.bottomNav .asn-more-container{position:relative;display:flex;align-items:stretch;min-width:0}.bottomNav .asn-more-trigger{font:inherit;background:none;border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:55px;padding:5px 3px;color:#e5edf9;cursor:pointer}.bottomNav .asn-more-panel{position:fixed;z-index:210;bottom:calc(76px + env(safe-area-inset-bottom,0px));right:max(12px,env(safe-area-inset-right,0px));width:min(280px,calc(100vw - 24px));padding:10px;background:#101c32;border:1px solid rgba(255,215,94,.5);border-radius:18px;box-shadow:0 24px 55px #000a;display:none;grid-template-columns:1fr 1fr;gap:8px}.bottomNav .asn-more-panel[aria-hidden=false]{display:grid}.bottomNav .asn-more-panel a,.bottomNav .asn-more-panel button{min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;border:1px solid #41506c;background:#1a2a45!important;border-radius:12px;color:#fff!important;text-decoration:none;font-weight:650;font-size:13px}
/* Dialog/modal coordinated styling, without rewriting X actions */
[role=dialog],.modal-content,.modalContent,.modal-card,.modalCard,.order-modal-content,.menu-modal-content,.vip-route-panel,.experience-modal-content{color:#fff;background:linear-gradient(155deg,rgba(23,40,69,.98),rgba(6,15,31,.99));border-color:rgba(255,216,102,.3);box-shadow:0 24px 70px #0009}
[role=dialog] button[aria-label*=Close],[role=dialog] button[aria-label*=Cerrar],.modal-close,.modalClose{min-width:38px;min-height:38px;touch-action:manipulation}
/* Visual consistency for distinct pages and section-specific cards */
#vip,#locations,#reservation,#careers,#contactDirect,#nationExperience,#menu{background-image:linear-gradient(135deg,rgba(29,67,119,.08),transparent 50%)}
#resForm input,#resForm select,#resForm textarea,#vipForm input,#vipForm select,#vipForm textarea{border:1px solid #455976;border-radius:13px;padding:12px}
#resForm,#vipForm,.vipForm,.agentForm{min-width:0;max-width:100%}#resForm>*{min-width:0}
.locGrid,.quickGrid,.chefCarousel,.drinkRecoCarousel{min-width:0}
/* Dedicated location pages receive the same identity */
body.asn-premium-location,body.asn-premium-location main{background:var(--asn-bg);color:#fff}body.asn-premium-location .card,body.asn-premium-location article,body.asn-premium-location .location-hero{border-color:var(--asn-stroke-soft)}
@media(max-width:600px){.section,.premiumBlock{min-width:0}.bottomNav{max-width:100vw}.bottomNav a,.bottomNav button{min-width:0}.bottomNav .asn-more-trigger{min-width:47px}.card,.quickCard,.locCard,.rewardCard,.productCard{border-radius:16px}#resForm input,#resForm select{width:100%;min-width:0;max-width:100%}.bottomNav .asn-more-panel{bottom:calc(73px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.card,.quickCard,.locCard,.rewardCard,.productCard{transition:none!important;animation:none!important}}
