/*
 * Página pública limpia: elimina las franjas superior e inferior que pueden
 * proceder de WordPress, del tema activo o de contenedores exteriores.
 */
html.gv-table-page{margin-top:0!important;padding:0!important;background:#101010!important;scroll-padding-top:0!important}
body.gv-table-page{margin:0!important;padding:0!important;background:#101010!important}
body.gv-table-page [data-gv-table-hidden="1"]{display:none!important}
body.gv-table-page [data-gv-table-brand-hidden="1"]{display:none!important}
body.gv-table-page [data-gv-table-compact="1"]{margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;min-height:0!important;height:auto!important}
body.gv-table-page [data-gv-table-menu-host="1"]{margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;min-height:0!important;height:auto!important}
body.gv-table-page #page,
body.gv-table-page .site,
body.gv-table-page .site-wrapper,
body.gv-table-page .page-wrapper,
body.gv-table-page .content-wrapper,
body.gv-table-page .main-content,
body.gv-table-page #content,
body.gv-table-page .site-content{margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;min-height:0!important}
body.gv-table-page .aiux-shell,
body.gv-table-page .aiux-card{min-height:0!important}
body.gv-table-page.gv-table-visitor [data-gv-table-hidden="1"],body.gv-table-page.gv-table-visitor [data-gv-table-brand-hidden="1"],body.gv-table-page.gv-table-visitor [data-gv-table-menu-host="1"],body.gv-table-page.gv-table-visitor [data-gv-table-menu-skin="1"]{display:none!important}
body.gv-table-page.gv-table-visitor #page,body.gv-table-page.gv-table-visitor .site,body.gv-table-page.gv-table-visitor .site-wrapper,body.gv-table-page.gv-table-visitor .page-wrapper,body.gv-table-page.gv-table-visitor .content-wrapper,body.gv-table-page.gv-table-visitor .main-content,body.gv-table-page.gv-table-visitor #content,body.gv-table-page.gv-table-visitor .site-content{padding-top:0!important;margin-top:0!important}
.aiux-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 28px;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#121212 0%,#0d0d0d 100%)}
.aiux-topbar-brand{display:flex;align-items:center;gap:12px;min-width:0}
.aiux-topbar-logo{width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#111;object-fit:cover;box-shadow:0 12px 28px rgba(0,0,0,.28)}
.aiux-topbar-brand-copy{display:flex;flex-direction:column;min-width:0}
.aiux-topbar-name{color:#fff;font-size:15px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.aiux-topbar-brand-copy small{color:#c9b08a;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.aiux-topbar-nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 10px;min-width:0}
.aiux-topbar-nav a,.aiux-topbar-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.02);color:#f2f2f2;text-decoration:none;font-size:14px;font-weight:700;transition:all .18s ease}
.aiux-topbar-nav a:hover,.aiux-topbar-action:hover{border-color:rgba(216,161,91,.42);background:rgba(216,161,91,.10);color:#fff;transform:translateY(-1px)}
.aiux-topbar-nav a.is-current{border-color:#d8a15b;background:rgba(216,161,91,.16);color:#fff;box-shadow:0 0 0 1px rgba(216,161,91,.16) inset}
.aiux-topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.aiux-topbar-action{background:rgba(216,161,91,.12);color:#f5d8af;border-color:rgba(216,161,91,.28)}

.aiux-shell{display:block;width:100%;min-height:100vh;margin:0!important;padding:0!important;background:#050505;font-family:"Montserrat",Abel,sans-serif;color:#fff;box-sizing:border-box}
.aiux-shell *{box-sizing:border-box}.aiux-shell button,.aiux-shell input,.aiux-shell select,.aiux-shell textarea{font-family:"Montserrat",Abel,sans-serif!important}.aiux-card{width:100%;max-width:none;margin:0!important;background:#101010;border:1px solid #303030;border-left:0;border-right:0;border-radius:0;box-shadow:none;overflow:hidden}
.aiux-header{display:flex;justify-content:space-between;gap:28px;padding:34px max(38px,calc((100% - 980px)/2)) 26px;background:linear-gradient(135deg,#050505 0%,#171717 58%,#3a210f 100%);color:#fff;border-bottom:1px solid #303030}
.aiux-brand{display:flex;align-items:flex-start;gap:20px;min-width:0}.aiux-brand-logo{display:block;width:92px;max-width:92px;height:92px;object-fit:contain;padding:8px;background:#0b0b0b;border:1px solid #3a3a3a;border-radius:18px;box-shadow:0 12px 34px rgba(0,0,0,.35)}.aiux-restaurant-contact{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;color:#c7c7c7;font-size:14px;line-height:1.5}.aiux-restaurant-contact a{color:#e4b879;text-decoration:none}.aiux-restaurant-contact a:hover{text-decoration:underline}
.aiux-header h1{margin:5px 0 10px;font-family:"Montserrat",serif;font-size:clamp(38px,5.4vw,60px);font-weight:600;line-height:.98;letter-spacing:-.035em;color:#fff}.aiux-header p{margin:0;max-width:650px;font-size:17px;line-height:1.6;color:#d7d7d7}.aiux-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#e4b879}
.aiux-progress-copy{white-space:nowrap;align-self:flex-start;padding:9px 13px;border:1px solid #4a4a4a;border-radius:999px;background:#161616;color:#fff;font-size:13px}.aiux-progress{height:7px;background:#242424}.aiux-progress span{display:block;height:100%;background:linear-gradient(90deg,#9a5a25,#e3b16c);transition:width .25s ease}
.aiux-change-context{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px max(38px,calc((100% - 980px)/2));background:#17120e;border-bottom:1px solid #4a321f;color:#fff}.aiux-change-context strong{font-family:"Montserrat",serif;font-size:21px;font-weight:600;letter-spacing:-.015em}.aiux-change-context span{color:#e4b879;font-size:14px;font-weight:700;text-align:right}.aiux-change-error{min-height:360px;padding:72px 38px;background:#101010;color:#fff;text-align:center}.aiux-change-error h2{margin:0 0 14px;font-family:"Montserrat",serif;font-size:clamp(34px,5vw,52px);font-weight:600;line-height:1.05}.aiux-change-error p{max-width:680px;margin:8px auto;color:#cfcfcf;font-size:16px;line-height:1.65}
.aiux-form{padding:36px 38px}.aiux-step{animation:aiuxFade .2s ease}.aiux-step[hidden]{display:none!important}@keyframes aiuxFade{from{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}
.aiux-step-heading{display:flex;align-items:flex-start;gap:15px;margin-bottom:28px}.aiux-step-number{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:50%;background:#9a5a25;color:#fff;font-weight:800;box-shadow:0 0 0 5px rgba(154,90,37,.18)}.aiux-step-heading h2{margin:0 0 6px;font-family:"Montserrat",serif;font-size:31px;font-weight:600;line-height:1.08;letter-spacing:-.025em;color:#fff}.aiux-step-heading p{margin:0;color:#bdbdbd;line-height:1.55}
.aiux-field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.aiux-field>span,.aiux-field>label,.aiux-field label{font-family:"Montserrat",Abel,sans-serif;font-weight:700;color:#f2f2f2}/* Normalización defensiva: evita que el tema de WordPress reduzca la altura y recorte el texto. */.aiux-form .aiux-field input:not([type="checkbox"]):not([type="radio"]),.aiux-form .aiux-field select{display:block!important;width:100%!important;height:54px!important;min-height:54px!important;max-height:none!important;margin:0!important;padding:0 16px!important;border:1px solid #464646!important;border-radius:14px!important;background:#181818!important;color:#fff!important;font-family:inherit!important;font-size:16px!important;font-weight:400!important;line-height:normal!important;box-sizing:border-box!important;outline:none!important;vertical-align:middle!important;color-scheme:dark}.aiux-form .aiux-field select{padding-right:44px!important;-webkit-appearance:auto!important;appearance:auto!important;overflow:visible!important;text-indent:0!important}.aiux-form .aiux-field textarea{display:block!important;width:100%!important;min-height:140px!important;height:auto!important;margin:0!important;padding:14px 16px!important;border:1px solid #464646!important;border-radius:14px!important;background:#181818!important;color:#fff!important;font-family:inherit!important;font-size:16px!important;font-weight:400!important;line-height:1.5!important;box-sizing:border-box!important;outline:none!important;resize:vertical}.aiux-form .aiux-field input::placeholder,.aiux-form .aiux-field textarea::placeholder{color:#8f8f8f;opacity:1}.aiux-form .aiux-field input:focus,.aiux-form .aiux-field select:focus,.aiux-form .aiux-field textarea:focus{border-color:#d8a15b!important;box-shadow:0 0 0 4px rgba(216,161,91,.16)!important}.aiux-field small{color:#a9a9a9;font-size:12px}.aiux-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.aiux-email-row{margin-top:18px}.aiux-email-match{min-height:22px;margin-top:8px;font-size:13px;line-height:1.45}.aiux-email-match.is-match{color:#9ee3b6}.aiux-email-match.is-mismatch{color:#ffb8b8}.aiux-email-row input.is-match{border-color:#3f8b5a!important;box-shadow:0 0 0 3px rgba(63,139,90,.14)!important}.aiux-email-row input.is-mismatch{border-color:#a74242!important;box-shadow:0 0 0 3px rgba(167,66,66,.16)!important}
.aiux-counter{display:flex;align-items:center;justify-content:center;gap:24px;padding:18px;border:1px solid #393939;border-radius:19px;background:#171717}.aiux-counter button{width:54px;height:54px;border:1px solid #c78b49;border-radius:50%;background:#9a5a25;color:#fff;font-size:31px;line-height:1;cursor:pointer}.aiux-counter div{text-align:center;min-width:125px}.aiux-counter strong{display:block;font-size:38px;line-height:1;color:#fff}.aiux-counter span{font-size:13px;color:#bdbdbd}.aiux-quick-guests{display:flex;justify-content:center;gap:9px;margin-top:11px;flex-wrap:wrap}.aiux-quick-guests button{border:1px solid #484848;background:#1b1b1b;color:#fff;border-radius:999px;padding:9px 15px;cursor:pointer}.aiux-quick-guests button:hover{border-color:#d8a15b;background:#282018}
.aiux-date-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch;margin:24px 0}.aiux-date-shortcut,.aiux-date-custom-card{min-height:82px;border:1px solid #474747;border-radius:16px;background:#181818;color:#fff;padding:15px;cursor:pointer;text-align:left;box-sizing:border-box;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.aiux-date-shortcut:hover,.aiux-date-custom-card:hover{border-color:#d8a15b;background:#241d16}.aiux-date-shortcut strong,.aiux-date-shortcut span,.aiux-date-custom-card strong{display:block}.aiux-date-shortcut span{font-size:12px;color:#aaa;margin-top:4px}.aiux-date-custom-card{display:flex;flex-direction:column;justify-content:center;gap:4px;margin:0}.aiux-date-custom-card strong{font-family:"Montserrat",Abel,sans-serif;font-size:14px;font-weight:700;color:#fff}.aiux-date-custom-card input[type="date"]{display:block!important;width:100%!important;height:auto!important;min-height:24px!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#aaa!important;font-family:inherit!important;font-size:12px!important;font-weight:500!important;line-height:1.35!important;cursor:pointer!important;color-scheme:dark}.aiux-date-custom-card input[type="date"]:focus{outline:none!important;box-shadow:none!important}.aiux-date-custom-card input[type="date"]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.9;filter:none}.aiux-date-custom-card.is-selected{border-color:#d8a15b!important;background:#2a2118!important;box-shadow:0 0 0 3px rgba(216,161,91,.12)}.aiux-date-custom-card.is-selected strong{color:#f0c48a}.aiux-date-custom-card.is-selected input[type="date"]{color:#f1d7b4!important}
.aiux-status{padding:14px 16px;border-radius:14px;background:#181818;color:#cfcfcf;border:1px solid #383838}.aiux-status.is-ok{background:#10251a;color:#b9f0cc;border-color:#285f3e}.aiux-status.is-bad{background:#2a1111;color:#ffb8b8;border-color:#6d2929}.aiux-status.is-checking{background:#181818;color:#d0d0d0}
.aiux-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.aiux-option-card{display:flex;gap:12px;padding:17px;border:1px solid #3b3b3b;border-radius:16px;cursor:pointer;background:#171717;color:#fff}.aiux-option-card:has(input:checked){border-color:#d8a15b;background:#261d14;box-shadow:0 0 0 3px rgba(216,161,91,.12)}.aiux-option-card input{margin-top:4px;accent-color:#d8a15b}.aiux-option-card strong,.aiux-option-card small{display:block}.aiux-option-card small{margin-top:4px;color:#aaa;line-height:1.45}
.aiux-conditional{margin-top:22px;padding:20px;border:1px dashed #68513a;border-radius:17px;background:#15120f}.aiux-conditional[hidden]{display:none!important}.aiux-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:17px}.aiux-check{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #3b3b3b;border-radius:14px;background:#171717;color:#eee;line-height:1.45}.aiux-check input{margin-top:4px;accent-color:#d8a15b}.aiux-consent{margin-top:13px}
.aiux-summary{display:grid;gap:11px}.aiux-summary-row{display:grid;grid-template-columns:160px 1fr;gap:15px;padding:15px 17px;border:1px solid #383838;border-radius:14px;background:#171717}.aiux-summary-row span{color:#aaa}.aiux-summary-row strong{color:#fff}.aiux-final-note{margin-top:20px;padding:16px;border-left:5px solid #d8a15b;border-radius:12px;background:#241b12;color:#f1d3aa}
.aiux-error{margin:19px 0 0;padding:14px 16px;border:1px solid #6d2929;border-radius:14px;background:#2a1111;color:#ffb8b8}.aiux-actions{display:flex;justify-content:space-between;gap:13px;margin-top:30px;padding-top:24px;border-top:1px solid #303030}.aiux-button{border:0;border-radius:999px;padding:15px 25px;font-family:"Montserrat",Abel,sans-serif;font-size:inherit;line-height:inherit;font-weight:800;cursor:pointer}.aiux-button-primary{margin-left:auto;background:#9a5a25;color:#fff;border:1px solid #c88a49}.aiux-button-primary:hover{background:#b56d2d}.aiux-button-secondary{background:#252525;color:#fff;border:1px solid #444}.aiux-button:disabled{opacity:.55;cursor:not-allowed}
.aiux-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.aiux-system-error,.aiux-notice .ai-res-pro-notice{width:min(980px,100%);margin:0 auto 18px;padding:16px;border-radius:14px}.aiux-system-error{border:1px solid #6d2929;background:#2a1111;color:#ffb8b8}.aiux-notice .ai-res-pro-ok{background:#10251a!important;color:#b9f0cc!important;border:1px solid #285f3e!important}.aiux-notice .ai-res-pro-error{background:#2a1111!important;color:#ffb8b8!important;border:1px solid #6d2929!important}
@media(max-width:980px){
.aiux-topbar{padding:14px 18px;flex-wrap:wrap;justify-content:flex-start}
.aiux-topbar-nav{order:3;width:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}
.aiux-topbar-nav::-webkit-scrollbar{height:6px}.aiux-topbar-nav::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:999px}
.aiux-topbar-actions{margin-left:auto}
}
@media(max-width:760px){
html,body{max-width:100%!important;overflow-x:hidden!important}
@supports (overflow:clip){html,body{overflow-x:clip!important}}
.aiux-shell{
    width:100vw!important;
    max-width:100vw!important;
    min-height:100dvh;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:0!important;
    background:#050505!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}
.aiux-card{
    width:100vw!important;
    max-width:100vw!important;
    min-height:100dvh;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}
.aiux-header{display:block;padding:25px 20px 20px}
.aiux-change-context{display:block;padding:14px 18px}
.aiux-change-context strong,.aiux-change-context span{display:block;text-align:left}
.aiux-change-context span{margin-top:5px;line-height:1.45}
.aiux-change-error{min-height:300px;padding:54px 20px}
.aiux-header h1{font-size:40px}
.aiux-progress-copy{display:inline-block;margin-top:17px}
.aiux-form{
    padding:24px 18px calc(132px + env(safe-area-inset-bottom, 0px))!important;
}
.aiux-card,
.aiux-shell{
    overflow:visible!important;
}
.aiux-two-columns,.aiux-option-grid,.aiux-check-grid,.aiux-date-grid{grid-template-columns:1fr}
.aiux-date-grid{margin-top:19px}
.aiux-summary-row{grid-template-columns:1fr;gap:5px}

/*
 * Barra móvil de navegación.
 * Se fuerza su visibilidad para neutralizar reglas globales de temas,
 * constructores y modos APP que puedan ocultar footer o botones.
 */
.aiux-actions{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100vw!important;
    min-height:0!important;
    margin:0!important;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom, 0px))!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    z-index:2147483000!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
    pointer-events:none!important;
}
.aiux-actions [hidden]{
    display:none!important;
}
.aiux-actions .aiux-button:not([hidden]){
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    align-items:center!important;
    justify-content:center!important;
    flex:1 1 0!important;
    min-width:0!important;
    min-height:52px!important;
    margin:0!important;
    padding:14px 16px!important;
    border-radius:999px!important;
    font-family:inherit!important;
    font-size:16px!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-align:center!important;
    white-space:normal!important;
    cursor:pointer!important;
    -webkit-appearance:none!important;
    appearance:none!important;
    pointer-events:auto!important;
}
.aiux-actions .aiux-button-primary:not([hidden]){
    background:#9a5a25!important;
    color:#fff!important;
    border:1px solid #c88a49!important;
}
.aiux-actions .aiux-button-secondary:not([hidden]){
    background:#252525!important;
    color:#fff!important;
    border:1px solid #555!important;
}
body.ai-res-pro-app-mode .aiux-actions,
body.gv-app-mode .aiux-actions{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
}
.aiux-button-primary{margin-left:0}
.aiux-step-heading h2{font-size:27px}
.aiux-counter{gap:16px}
.aiux-counter button{width:50px;height:50px}
.aiux-header p{font-size:15px}
}
@media(min-width:761px) and (max-width:1100px){.aiux-form{padding:32px}.aiux-header{padding:31px 32px 24px}}

/* ===== GastroViva TABLE 1.6.2: navegación depurada y flujo optimizado ===== */
.aiux-utility{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:46px;padding:9px max(20px,calc((100% - 980px)/2));background:#0b0b0b;border-bottom:1px solid #2e2e2e;font-size:13px}.aiux-utility a{color:#ddd;text-decoration:none;font-weight:700}.aiux-utility a:hover{color:#e4b879}.aiux-utility-links{display:flex;align-items:center;gap:16px}
.aiux-form{width:min(980px,100%);margin:0 auto!important}.aiux-step-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:min(980px,100%);margin:0 auto;padding:16px 38px 6px;background:#101010}.aiux-step-nav button{display:flex;align-items:center;gap:9px;min-width:0;padding:10px 8px;border:0;border-bottom:2px solid #333;background:transparent;color:#858585;text-align:left;cursor:pointer}.aiux-step-nav button span{display:grid;place-items:center;flex:0 0 27px;height:27px;border:1px solid #494949;border-radius:50%;font-size:12px;font-weight:800}.aiux-step-nav button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.aiux-step-nav button.is-current{color:#fff;border-bottom-color:#d8a15b}.aiux-step-nav button.is-current span{border-color:#d8a15b;background:#9a5a25;color:#fff}.aiux-step-nav button.is-complete:not(.is-current){color:#c8c8c8}.aiux-step-nav button.is-complete:not(.is-current) span{border-color:#526f5b;background:#183021;color:#aee4bf}.aiux-step-nav button:disabled{cursor:default;opacity:.55}.aiux-step-nav button:not(:disabled):focus-visible{outline:2px solid #e4b879;outline-offset:3px;border-radius:8px}
.aiux-label-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;font-weight:700;color:#f2f2f2}.aiux-help-button{display:inline-grid!important;place-items:center!important;flex:0 0 24px!important;width:24px!important;height:24px!important;min-height:24px!important;margin:0!important;padding:0!important;border:1px solid #5b5b5b!important;border-radius:50%!important;background:#1c1c1c!important;color:#d8a15b!important;font-size:13px!important;font-weight:800!important;line-height:1!important;cursor:pointer!important}.aiux-help-button:hover,.aiux-help-button[aria-expanded="true"]{border-color:#d8a15b!important;background:#2a2017!important;color:#f4ca91!important}.aiux-help-button:focus-visible{outline:3px solid rgba(216,161,91,.25)!important;outline-offset:2px!important}.aiux-help-text{margin:0 0 12px;padding:11px 13px;border-left:3px solid #b47a3d;border-radius:0 10px 10px 0;background:#211a14;color:#d8d0c7;font-size:13px;line-height:1.5}.aiux-help-text[hidden]{display:none!important}
.aiux-quick-guests button.is-selected,.aiux-date-shortcut.is-selected{border-color:#d8a15b!important;background:#2a2118!important;box-shadow:0 0 0 3px rgba(216,161,91,.12)}.aiux-date-shortcut.is-selected strong{color:#f0c48a}
.aiux-time-field{margin-top:22px}.aiux-time-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:2px}.aiux-time-chip{min-height:48px;padding:10px 8px;border:1px solid #494949;border-radius:13px;background:#181818;color:#f5f5f5;font:inherit;font-size:14px;font-weight:750;cursor:pointer}.aiux-time-chip:hover{border-color:#b47a3d;background:#221b15}.aiux-time-chip.is-selected{border-color:#d8a15b;background:#9a5a25;color:#fff;box-shadow:0 0 0 3px rgba(216,161,91,.14)}.aiux-time-chip:focus-visible{outline:3px solid rgba(216,161,91,.25);outline-offset:2px}.aiux-time-loading,.aiux-time-empty{grid-column:1/-1;display:block;padding:14px;border:1px dashed #444;border-radius:12px;color:#aaa;text-align:center}.aiux-time-select-fallback{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.aiux-binary-choice{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:12px 0 20px}.aiux-binary-choice label{display:flex;align-items:flex-start;gap:11px;padding:18px;border:1px solid #3b3b3b;border-radius:16px;background:#171717;color:#fff;cursor:pointer}.aiux-binary-choice label:has(input:checked){border-color:#d8a15b;background:#261d14;box-shadow:0 0 0 3px rgba(216,161,91,.12)}.aiux-binary-choice input{margin-top:4px;accent-color:#d8a15b}.aiux-binary-choice strong,.aiux-binary-choice small{display:block}.aiux-binary-choice small{margin-top:4px;color:#aaa;line-height:1.4}.aiux-special-question{margin-top:2px}.aiux-special-details{margin-top:8px;padding:18px;border:1px solid #393939;border-radius:17px;background:#131313}.aiux-special-details[hidden]{display:none!important}.aiux-special-prompt{margin:0 0 12px;color:#bdbdbd;font-size:13px}.aiux-special-details .aiux-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.aiux-email-row{margin-top:18px}.aiux-email-row input.is-match{border-color:#3f8b5a!important;box-shadow:0 0 0 3px rgba(63,139,90,.14)!important}.aiux-email-row input.is-mismatch{border-color:#a74242!important;box-shadow:0 0 0 3px rgba(167,66,66,.16)!important}
.aiux-summary{display:grid;gap:13px}.aiux-summary-card{overflow:hidden;border:1px solid #3a3a3a;border-radius:16px;background:#171717}.aiux-summary-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 16px;border-bottom:1px solid #303030;background:#141414}.aiux-summary-card-head strong{color:#e9c18b;font-size:14px}.aiux-summary-card-head button{border:0;background:transparent;color:#e4b879;font:inherit;font-size:13px;font-weight:800;text-decoration:underline;cursor:pointer}.aiux-summary-card-head button:focus-visible{outline:2px solid #e4b879;outline-offset:3px;border-radius:4px}.aiux-summary-card-body{padding:14px 16px}.aiux-summary-card-body p{margin:0;color:#f4f4f4;line-height:1.5}.aiux-summary-card-body p+p{margin-top:5px;color:#bbb}
.aiux-notice .ai-res-pro-ok{position:relative;padding:22px 22px 22px 64px!important;font-size:15px!important}.aiux-notice .ai-res-pro-ok:before{content:"✓";position:absolute;left:20px;top:16px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#285f3e;color:#fff;font-weight:900}.aiux-notice .ai-res-pro-ok:after{content:" Solicitud recibida. La mesa quedará confirmada cuando el restaurante te envíe la aprobación.";font-weight:500}

@media(max-width:760px){
.aiux-topbar{padding:12px 14px;gap:12px}
.aiux-topbar-brand{width:100%}
.aiux-topbar-logo{width:38px;height:38px}
.aiux-topbar-name{max-width:100%;font-size:14px}
.aiux-topbar-nav{gap:8px;width:100%;justify-content:flex-start}
.aiux-topbar-nav a,.aiux-topbar-action{min-height:36px;padding:0 12px;font-size:13px}
.aiux-topbar-actions{width:100%;justify-content:flex-start;gap:8px}
.aiux-utility{padding:9px 14px;min-height:44px}.aiux-utility-links{gap:11px}.aiux-return{white-space:nowrap}.aiux-header{padding-top:22px}.aiux-step-nav{width:100%;padding:10px 10px 4px}.aiux-step-nav button{justify-content:center;padding:9px 3px}.aiux-step-nav button small{display:none}.aiux-step-nav button span{flex-basis:30px;height:30px}.aiux-form{width:100%}.aiux-time-chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.aiux-binary-choice{grid-template-columns:1fr}.aiux-special-details .aiux-option-grid{grid-template-columns:1fr}.aiux-actions{background:rgba(15,15,15,.96)!important;border-top:1px solid #363636!important;box-shadow:0 -12px 32px rgba(0,0,0,.34)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}.aiux-actions .aiux-button:not([hidden]){min-height:54px!important}.aiux-help-button{width:28px!important;height:28px!important;flex-basis:28px!important}.aiux-label-row{justify-content:space-between}.aiux-summary-card-head{padding:13px 14px}.aiux-summary-card-body{padding:13px 14px}}
.aiux-success-state{width:min(760px,calc(100% - 32px));margin:clamp(36px,8vh,88px) auto;padding:clamp(28px,5vw,52px);border:1px solid #315c40;border-radius:24px;background:linear-gradient(145deg,#102117,#101010 70%);box-shadow:0 24px 70px rgba(0,0,0,.38);text-align:center}.aiux-success-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:50%;background:#285f3e;color:#fff;font-size:30px;font-weight:900;box-shadow:0 0 0 7px rgba(40,95,62,.16)}.aiux-success-state h1{margin:7px 0 12px;font-family:"Montserrat",sans-serif;font-size:clamp(34px,6vw,52px);line-height:1.02;color:#fff}.aiux-success-state>p{max-width:620px;margin:0 auto;color:#d7ded9;line-height:1.65}.aiux-success-clarity{margin:20px auto 0;padding:13px 15px;border:1px solid #315c40;border-radius:13px;background:#13271a;color:#bfe8cd}.aiux-success-actions{display:flex;justify-content:center;gap:12px;margin-top:24px}.aiux-success-actions .aiux-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.aiux-help-button{width:34px!important;height:34px!important;flex-basis:34px!important;touch-action:manipulation}.aiux-step-nav button{min-height:48px}
@media(max-width:760px){.aiux-actions{bottom:var(--aiux-keyboard-offset,0px)!important}.aiux-success-state{width:calc(100% - 24px);margin:28px auto;padding:28px 20px;border-radius:19px}.aiux-success-actions{display:grid;grid-template-columns:1fr}.aiux-success-actions .aiux-button{width:100%}.aiux-help-button{width:40px!important;height:40px!important;flex-basis:40px!important}}

/* ===== GastroViva TABLE 1.6.2: depuración visual ===== */
/* Una sola lectura del progreso: etiquetas pasivas + barra fina. */
.aiux-header{align-items:flex-start}
.aiux-step-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:min(980px,100%);margin:0 auto;padding:13px 38px 5px;background:#101010}
.aiux-step-nav>span{display:flex;align-items:center;justify-content:center;min-height:42px;padding:7px 8px;border-bottom:2px solid #333;color:#7f7f7f;font-size:12px;font-weight:700;line-height:1.25;text-align:center}
.aiux-step-nav>span.is-current{border-bottom-color:#d8a15b;color:#fff}
.aiux-step-nav>span.is-complete:not(.is-current){color:#b7c9bd;border-bottom-color:#486251}
.aiux-step-heading{gap:0}.aiux-step-heading>div{width:100%}
/* La cabecera ya no repite dirección/teléfono/mapa: esas acciones viven en el menú móvil universal. */
.aiux-restaurant-contact,.aiux-progress-copy,.aiux-quick-guests{display:none!important}
/* Los pocos signos de ayuda que quedan deben sentirse discretos. */
.aiux-help-button{width:30px!important;height:30px!important;min-height:30px!important;flex-basis:30px!important;font-size:12px!important}
@media(max-width:760px){
  .aiux-step-nav{padding:9px 10px 4px}
  .aiux-step-nav>span{min-height:45px;padding:6px 4px;font-size:10.5px;white-space:normal}
  .aiux-help-button{width:34px!important;height:34px!important;flex-basis:34px!important}
  .aiux-label-row{justify-content:flex-start;gap:8px}
}


.aiux-utility{display:none!important}

/* ===== GastroVIVA TABLE 1.7.4: menú no flotante, sutil y anclado bajo el logo ===== */
/* La navegación pública permanece unificada, pero ahora vive dentro del encabezado visual. */
.aiux-card{position:relative}
.aiux-topbar{display:none!important}
.aiux-brand{display:flex;align-items:flex-start;gap:20px;min-width:0}
.aiux-brand-side{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex:0 0 auto;position:relative}
.aiux-brand-copy{min-width:0;flex:1 1 auto}
.aiux-mobile-menu{position:relative;z-index:2147482000;width:100%}
.aiux-mobile-menu-toggle{
    position:static!important;
    z-index:auto!important;
    display:inline-grid!important;
    grid-template-columns:16px auto!important;
    grid-template-rows:repeat(3,4px)!important;
    column-gap:8px!important;
    align-items:center!important;
    min-width:92px!important;
    min-height:36px!important;
    margin:0!important;
    padding:8px 12px!important;
    border:1px solid rgba(228,184,121,.28)!important;
    border-radius:10px!important;
    background:rgba(255,255,255,.02)!important;
    color:#f1e2cc!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    font:inherit!important;
    cursor:pointer!important;
    -webkit-appearance:none!important;
    appearance:none!important;
}
.aiux-mobile-menu-toggle:hover{background:rgba(228,184,121,.08)!important;border-color:rgba(228,184,121,.42)!important;color:#fff!important}
.aiux-mobile-menu-toggle>span{grid-column:1;display:block;width:16px;height:1.5px;border-radius:999px;background:#e4b879;transition:transform .18s ease,opacity .18s ease}
.aiux-mobile-menu-toggle>span:nth-child(1){grid-row:1}
.aiux-mobile-menu-toggle>span:nth-child(2){grid-row:2}
.aiux-mobile-menu-toggle>span:nth-child(3){grid-row:3}
.aiux-mobile-menu-toggle>strong{grid-column:2;grid-row:1/4;align-self:center;font-size:11px;font-weight:800;letter-spacing:.16em}
.aiux-mobile-menu-toggle[aria-expanded="true"]>span:nth-child(1){transform:translateY(4px) rotate(45deg)}
.aiux-mobile-menu-toggle[aria-expanded="true"]>span:nth-child(2){opacity:0}
.aiux-mobile-menu-toggle[aria-expanded="true"]>span:nth-child(3){transform:translateY(-4px) rotate(-45deg)}
.aiux-mobile-menu-toggle:focus-visible{outline:3px solid rgba(228,184,121,.28)!important;outline-offset:2px!important}
.aiux-mobile-menu-panel{
    position:absolute!important;
    top:calc(100% + 10px)!important;
    left:0!important;
    right:auto!important;
    z-index:2147483001!important;
    width:min(300px,calc(100vw - 32px))!important;
    max-height:min(70dvh,520px)!important;
    overflow:auto!important;
    padding:14px!important;
    border:1px solid #38332c!important;
    border-radius:16px!important;
    background:#111!important;
    color:#fff!important;
    box-shadow:0 20px 50px rgba(0,0,0,.48)!important;
}
.aiux-mobile-menu-panel[hidden]{display:none!important}
.aiux-mobile-menu-heading{padding:7px 8px 12px;border-bottom:1px solid #2f2b26}
.aiux-mobile-menu-heading span,.aiux-mobile-menu-heading small{display:block}
.aiux-mobile-menu-heading span{font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff}
.aiux-mobile-menu-heading small{margin-top:3px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c9b08a}
.aiux-mobile-menu-nav{display:grid;gap:6px;padding:10px 0}
.aiux-mobile-menu-nav a,.aiux-mobile-menu-actions a{display:flex;align-items:center;min-height:46px;padding:10px 12px;border:1px solid transparent;border-radius:12px;color:#efefef!important;text-decoration:none!important;font-size:14px;font-weight:750;background:#191919}
.aiux-mobile-menu-nav a:hover,.aiux-mobile-menu-actions a:hover{border-color:rgba(216,161,91,.34);background:#211b15;color:#fff!important}
.aiux-mobile-menu-nav a.is-current{border-color:#d8a15b;background:#2a1f15;color:#fff!important}
.aiux-mobile-menu-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:10px;border-top:1px solid #2f2b26}
.aiux-mobile-menu-actions a{justify-content:center;background:#241c14;color:#f5d8af!important}
body.gv-table-page{padding-top:0!important}
body.gv-table-page header:not(.aiux-header),
body.gv-table-page .site-header,
body.gv-table-page #masthead,
body.gv-table-page .header-wrap,
body.gv-table-page .header-outer,
body.gv-table-page .fl-page-header-wrap,
body.gv-table-page .fl-page-header,
body.gv-table-page .fl-page-nav-wrap,
body.gv-table-page .fl-page-nav,
body.gv-table-page .main-header-bar,
body.gv-table-page .ast-primary-header-bar,
body.gv-table-page .page-header,
body.gv-table-page .entry-header,
body.gv-table-page .site-navigation,
body.gv-table-page .main-navigation,
body.gv-table-page .primary-navigation,
body.gv-table-page .wp-block-navigation{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important}
/* WordPress admin bar is intentionally preserved while theme chrome is removed. */
body.gv-table-page #wpadminbar{display:block!important;height:auto!important;min-height:0!important}
@media(max-width:480px){
    .aiux-brand-side{gap:10px}
    .aiux-mobile-menu-toggle{min-height:34px!important;padding:7px 11px!important;min-width:88px!important}
    .aiux-mobile-menu-toggle>strong{font-size:10.5px}
    .aiux-mobile-menu-panel{width:min(280px,calc(100vw - 24px))!important;max-height:min(68dvh,460px)!important}
}



/* ===== GastroVIVA TABLE 1.7.5: pantalla de confirmación limpia estilo app ===== */
html.gv-table-success-screen,
body.gv-table-success-screen{background:#050505!important;overflow-x:hidden!important}
body.gv-table-success-screen #wpadminbar,
body.gv-table-success-screen footer,
body.gv-table-success-screen #colophon,
body.gv-table-success-screen .site-footer,
body.gv-table-success-screen .footer,
body.gv-table-success-screen .footer-wrap,
body.gv-table-success-screen .footer-widgets,
body.gv-table-success-screen .widget-area,
body.gv-table-success-screen [data-gv-table-hidden="1"],
body.gv-table-success-screen .aiux-utility,
body.gv-table-success-screen .aiux-card,
body.gv-table-success-screen .aiux-mobile-menu,
body.gv-table-success-screen .aiux-progress,
body.gv-table-success-screen .aiux-step-nav{display:none!important}
body.gv-table-success-screen #page,
body.gv-table-success-screen .site,
body.gv-table-success-screen .site-wrapper,
body.gv-table-success-screen .page-wrapper,
body.gv-table-success-screen .content-wrapper,
body.gv-table-success-screen .main-content,
body.gv-table-success-screen #content,
body.gv-table-success-screen .site-content{margin:0!important;padding:0!important;min-height:100dvh!important;background:transparent!important}
body.gv-table-success-screen .aiux-shell{min-height:100dvh!important;display:grid!important;place-items:center!important;padding:16px!important}
body.gv-table-success-screen .aiux-success-state{width:min(760px,calc(100vw - 28px))!important;margin:0 auto!important}
@media(max-width:760px){
  body.gv-table-success-screen .aiux-shell{padding:12px!important}
  body.gv-table-success-screen .aiux-success-state{width:calc(100vw - 16px)!important;margin:0 auto!important}
}


/* ==========================================================
 * GastroVIVA Table 1.8.2 — Experiencia Natural oficial
 * Integrada desde Prueba Natural 0.3.2.
 * ========================================================== */
/*
         * EXPERIENCIA NATURAL OFICIAL.
         * No modifica datos, reservaciones, MASTER/CLIENT, configuración ni lógica.
         */

        /*
         * Solo desaparecen el header y menú PROPIOS de GastroVIVA Table.
         * El header y menú del tema quedan completamente en manos de WordPress/tema.
         */
        [data-aiux-root] .aiux-header,
        [data-aiux-root] .aiux-mobile-menu {
            display:none !important;
        }

        [data-aiux-root] {
            color:#171717 !important;
        }

        .aiux-shell[data-aiux-root] {
            min-height:auto !important;
            background:#ffffff !important;
            color:#171717 !important;
        }

        [data-aiux-root] .aiux-card,
        [data-aiux-root] .aiux-form,
        [data-aiux-root] .aiux-step-nav,
        [data-aiux-root] .aiux-actions,
        [data-aiux-root] .aiux-special-details,
        [data-aiux-root] .aiux-summary-card,
        [data-aiux-root] .aiux-summary-card-head,
        [data-aiux-root] .aiux-summary-card-body,
        [data-aiux-root] .aiux-consent,
        [data-aiux-root] .aiux-check,
        [data-aiux-root] .aiux-change-context,
        [data-aiux-root] .aiux-success-clarity,
        [data-aiux-root] .aiux-success-state {
            background:#ffffff !important;
            background-image:none !important;
            color:#171717 !important;
            box-shadow:none !important;
            border-color:#d8d8d8 !important;
        }

        [data-aiux-root] *,
        [data-aiux-root] h1,
        [data-aiux-root] h2,
        [data-aiux-root] h3,
        [data-aiux-root] p,
        [data-aiux-root] label,
        [data-aiux-root] span,
        [data-aiux-root] strong {
            color:#171717 !important;
        }

        [data-aiux-root] small,
        [data-aiux-root] .aiux-help-text,
        [data-aiux-root] .aiux-final-note {
            color:#666666 !important;
        }

        [data-aiux-root] .aiux-progress {
            background:#e8e8e8 !important;
        }

        [data-aiux-root] .aiux-progress span,
        [data-aiux-root] .aiux-step-number {
            background:#244f70 !important;
            color:#ffffff !important;
        }

        [data-aiux-root] .aiux-step-nav > span {
            color:#666666 !important;
            border-bottom-color:#d8d8d8 !important;
        }

        [data-aiux-root] .aiux-step-nav > span.is-current {
            color:#244f70 !important;
            border-bottom-color:#244f70 !important;
        }

        [data-aiux-root] input:not([type="checkbox"]):not([type="radio"]),
        [data-aiux-root] select,
        [data-aiux-root] textarea {
            background:#ffffff !important;
            color:#171717 !important;
            border-color:#bdbdbd !important;
            box-shadow:none !important;
            color-scheme:light !important;
        }

        [data-aiux-root] input::placeholder,
        [data-aiux-root] textarea::placeholder {
            color:#777777 !important;
            opacity:1 !important;
        }

        [data-aiux-root] input:focus,
        [data-aiux-root] select:focus,
        [data-aiux-root] textarea:focus {
            border-color:#244f70 !important;
            box-shadow:0 0 0 2px rgba(36,79,112,.12) !important;
            outline:none !important;
        }

        [data-aiux-root] .aiux-counter,
        [data-aiux-root] .aiux-option-card,
        [data-aiux-root] .aiux-date-shortcut,
        [data-aiux-root] .aiux-date-custom-card,
        [data-aiux-root] .aiux-time-chip,
        [data-aiux-root] .aiux-binary-choice label {
            background:#ffffff !important;
            color:#171717 !important;
            border-color:#d8d8d8 !important;
            box-shadow:none !important;
        }

        [data-aiux-root] .aiux-option-card:hover,
        [data-aiux-root] .aiux-date-shortcut:hover,
        [data-aiux-root] .aiux-time-chip:hover,
        [data-aiux-root] .aiux-binary-choice label:hover {
            background:#f5f7f9 !important;
            border-color:#8ca0af !important;
        }

        [data-aiux-root] .aiux-option-card:has(input:checked),
        [data-aiux-root] .aiux-date-shortcut.is-selected,
        [data-aiux-root] .aiux-time-chip.is-selected,
        [data-aiux-root] .aiux-binary-choice label:has(input:checked) {
            background:#eef3f6 !important;
            border-color:#244f70 !important;
        }

        /*
         * Color formal: azul petróleo solo en acciones y estados importantes.
         */
        [data-aiux-root] .aiux-counter button,
        [data-aiux-root] .aiux-button,
        [data-aiux-root] .aiux-button-primary {
            background:#244f70 !important;
            background-image:none !important;
            color:#ffffff !important;
            border-color:#244f70 !important;
            box-shadow:none !important;
        }

        [data-aiux-root] .aiux-counter button *,
        [data-aiux-root] .aiux-button *,
        [data-aiux-root] .aiux-button-primary * {
            color:#ffffff !important;
        }

        [data-aiux-root] .aiux-counter button:hover,
        [data-aiux-root] .aiux-button:hover,
        [data-aiux-root] .aiux-button-primary:hover {
            background:#193d58 !important;
            border-color:#193d58 !important;
        }

        [data-aiux-root] .aiux-button-secondary,
        [data-aiux-root] .aiux-help-button {
            background:#ffffff !important;
            color:#244f70 !important;
            border-color:#244f70 !important;
            box-shadow:none !important;
        }

        [data-aiux-root] .aiux-button-secondary *,
        [data-aiux-root] .aiux-help-button * {
            color:#244f70 !important;
        }

        [data-aiux-root] input[type="checkbox"],
        [data-aiux-root] input[type="radio"] {
            accent-color:#244f70 !important;
        }

        [data-aiux-root] .aiux-actions {
            border-top:1px solid #d8d8d8 !important;
            backdrop-filter:none !important;
            -webkit-backdrop-filter:none !important;
        }

        /*
         * 1.8.2 — integración de Prueba Natural 0.3.2: contraste de mensajes de disponibilidad.
         * La regla general de texto negro de la experiencia natural no debe imponerse
         * sobre cajas oscuras de estado.
         */
        [data-aiux-root] .aiux-status {
            color:#ffffff !important;
        }

        [data-aiux-root] .aiux-status *,
        [data-aiux-root] .aiux-status.is-ok *,
        [data-aiux-root] .aiux-status.is-bad *,
        [data-aiux-root] .aiux-status.is-checking * {
            color:inherit !important;
        }

        [data-aiux-root] .aiux-status.is-ok {
            background:#174c34 !important;
            color:#ffffff !important;
            border-color:#286d4d !important;
        }

        [data-aiux-root] .aiux-status.is-bad {
            background:#7a2e2e !important;
            color:#ffffff !important;
            border-color:#944040 !important;
        }

        [data-aiux-root] .aiux-status.is-checking {
            background:#eef3f6 !important;
            color:#244f70 !important;
            border-color:#b9c7d1 !important;
        }


/* ==========================================================
 * GastroVIVA Table 1.8.2 — Pulido móvil de la experiencia Natural
 * Corrige contraste, proporciones y solapamiento de acciones.
 * ========================================================== */

/* Aviso final: claro, sobrio y legible. */
[data-aiux-root] .aiux-final-note {
    margin-top:18px !important;
    padding:15px 17px !important;
    border:1px solid #e2d6c5 !important;
    border-left:4px solid #b78345 !important;
    border-radius:12px !important;
    background:#fbf7f1 !important;
    color:#4a3a28 !important;
    font-size:15px !important;
    line-height:1.55 !important;
    box-shadow:none !important;
}
[data-aiux-root] .aiux-final-note,
[data-aiux-root] .aiux-final-note * {
    color:#4a3a28 !important;
}
[data-aiux-root] .aiux-final-note strong {
    color:#2b2117 !important;
    font-weight:800 !important;
}

/* La barra de acciones Natural usa la paleta oficial, con suficiente especificidad
   para vencer las reglas heredadas de la versión oscura. */
[data-aiux-root] .aiux-actions .aiux-button-primary:not([hidden]) {
    background:#244f70 !important;
    background-image:none !important;
    border-color:#244f70 !important;
    color:#ffffff !important;
    box-shadow:none !important;
}
[data-aiux-root] .aiux-actions .aiux-button-primary:not([hidden]):hover,
[data-aiux-root] .aiux-actions .aiux-button-primary:not([hidden]):focus {
    background:#193d58 !important;
    border-color:#193d58 !important;
    color:#ffffff !important;
}
[data-aiux-root] .aiux-actions .aiux-button-secondary:not([hidden]) {
    background:#ffffff !important;
    border:1px solid #244f70 !important;
    color:#244f70 !important;
    box-shadow:none !important;
}
[data-aiux-root] .aiux-actions .aiux-button-secondary:not([hidden]):hover,
[data-aiux-root] .aiux-actions .aiux-button-secondary:not([hidden]):focus {
    background:#f2f6f8 !important;
    color:#193d58 !important;
    border-color:#193d58 !important;
}

@media(max-width:760px){
    /* En móvil las acciones dejan de flotar sobre el footer: forman parte del flujo. */
    [data-aiux-root] .aiux-form{
        padding:22px 18px 28px !important;
    }
    [data-aiux-root] .aiux-actions{
        position:static !important;
        left:auto !important;
        right:auto !important;
        bottom:auto !important;
        width:100% !important;
        margin:24px 0 0 !important;
        padding:18px 0 0 !important;
        background:#ffffff !important;
        border-top:1px solid #e4e4e4 !important;
        box-shadow:none !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
        transform:none !important;
        -webkit-transform:none !important;
        z-index:auto !important;
        pointer-events:auto !important;
        gap:10px !important;
    }
    [data-aiux-root] .aiux-actions .aiux-button:not([hidden]){
        min-height:50px !important;
        padding:12px 14px !important;
        border-radius:14px !important;
        font-size:15px !important;
        line-height:1.2 !important;
    }

    /* Consentimientos más compactos y proporcionales. */
    [data-aiux-root] .aiux-consent,
    [data-aiux-root] .aiux-check{
        gap:12px !important;
        margin-top:12px !important;
        padding:15px 16px !important;
        border:1px solid #d9d9d9 !important;
        border-radius:16px !important;
        background:#ffffff !important;
        font-size:15.5px !important;
        line-height:1.45 !important;
        font-weight:500 !important;
    }
    [data-aiux-root] .aiux-consent span,
    [data-aiux-root] .aiux-check span{
        color:#242424 !important;
        font-size:15.5px !important;
        line-height:1.45 !important;
        font-weight:500 !important;
    }
    [data-aiux-root] .aiux-consent input[type="checkbox"],
    [data-aiux-root] .aiux-check input[type="checkbox"]{
        flex:0 0 23px !important;
        width:23px !important;
        height:23px !important;
        margin:2px 0 0 !important;
    }

    [data-aiux-root] .aiux-final-note{
        margin-top:16px !important;
        padding:14px 15px !important;
        border-radius:12px !important;
        font-size:14.5px !important;
        line-height:1.5 !important;
    }
}


/* ==========================================================
 * GastroVIVA Table 1.8.4 — Campos Natural en las 3 pantallas
 * Corrige la precedencia de las reglas oscuras heredadas.
 * ========================================================== */
[data-aiux-root] .aiux-form .aiux-field input:not([type="checkbox"]):not([type="radio"]),
[data-aiux-root] .aiux-form .aiux-field select,
[data-aiux-root] .aiux-form .aiux-field textarea {
    background:#ffffff !important;
    background-image:none !important;
    color:#171717 !important;
    border-color:#bfc6cc !important;
    box-shadow:none !important;
    color-scheme:light !important;
    -webkit-text-fill-color:#171717 !important;
}

[data-aiux-root] .aiux-form .aiux-field input:not([type="checkbox"]):not([type="radio"])::placeholder,
[data-aiux-root] .aiux-form .aiux-field textarea::placeholder {
    color:#7b7f83 !important;
    -webkit-text-fill-color:#7b7f83 !important;
    opacity:1 !important;
}

[data-aiux-root] .aiux-form .aiux-field input:not([type="checkbox"]):not([type="radio"]):focus,
[data-aiux-root] .aiux-form .aiux-field select:focus,
[data-aiux-root] .aiux-form .aiux-field textarea:focus {
    background:#ffffff !important;
    color:#171717 !important;
    border-color:#244f70 !important;
    box-shadow:0 0 0 3px rgba(36,79,112,.12) !important;
    outline:none !important;
}

/* Chrome/Android: evita que autofill o el color-scheme oscuro vuelva a pintar el campo. */
[data-aiux-root] .aiux-form .aiux-field input:-webkit-autofill,
[data-aiux-root] .aiux-form .aiux-field input:-webkit-autofill:hover,
[data-aiux-root] .aiux-form .aiux-field input:-webkit-autofill:focus,
[data-aiux-root] .aiux-form .aiux-field textarea:-webkit-autofill,
[data-aiux-root] .aiux-form .aiux-field select:-webkit-autofill {
    -webkit-box-shadow:0 0 0 1000px #ffffff inset !important;
    box-shadow:0 0 0 1000px #ffffff inset !important;
    -webkit-text-fill-color:#171717 !important;
    caret-color:#171717 !important;
}

/* ==========================================================
 * GastroVIVA Table 1.8.5 — cuadrículas izquierda → derecha
 * Algunos temas WordPress añaden ::before/::after de clearfix.
 * Dentro de CSS Grid esos pseudo-elementos se convierten en
 * celdas invisibles y desplazan Hoy/Mañana/Otra fecha y horarios.
 * ========================================================== */
[data-aiux-root] .aiux-date-grid::before,
[data-aiux-root] .aiux-date-grid::after,
[data-aiux-root] .aiux-time-chips::before,
[data-aiux-root] .aiux-time-chips::after {
    content:none !important;
    display:none !important;
}

[data-aiux-root] .aiux-date-grid {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-flow:row !important;
    direction:ltr !important;
    align-items:stretch !important;
    justify-items:stretch !important;
}

[data-aiux-root] .aiux-date-grid > .aiux-date-shortcut,
[data-aiux-root] .aiux-date-grid > .aiux-date-custom-card {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    float:none !important;
    grid-column:auto !important;
    grid-row:auto !important;
    order:initial !important;
}

[data-aiux-root] .aiux-time-chips {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-auto-flow:row !important;
    direction:ltr !important;
    align-items:stretch !important;
    justify-items:stretch !important;
}

[data-aiux-root] .aiux-time-chips > .aiux-time-chip {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    float:none !important;
    grid-column:auto !important;
    grid-row:auto !important;
    order:initial !important;
}

@media(max-width:760px) {
    [data-aiux-root] .aiux-date-grid {
        grid-template-columns:1fr !important;
    }

    [data-aiux-root] .aiux-time-chips {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}


/* ==========================================================
 * GastroVIVA Table 1.8.6 — navegación de pasos izquierda → derecha
 * Algunos temas WordPress insertan ::before/::after de clearfix
 * en el NAV. En CSS Grid esos pseudo-elementos ocupan una celda,
 * desplazando "Fecha y mesa" y enviando "Confirmar" a otra fila.
 * ========================================================== */
[data-aiux-root] .aiux-step-nav::before,
[data-aiux-root] .aiux-step-nav::after {
    content:none !important;
    display:none !important;
}

[data-aiux-root] .aiux-step-nav {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-auto-flow:row !important;
    direction:ltr !important;
    width:min(980px,100%) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    float:none !important;
    clear:both !important;
}

[data-aiux-root] .aiux-step-nav > span {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    float:none !important;
    clear:none !important;
    grid-column:auto !important;
    grid-row:auto !important;
    order:initial !important;
    text-align:center !important;
    white-space:normal !important;
}

[data-aiux-root] .aiux-step-nav > span:nth-of-type(1){grid-column:1 !important;grid-row:1 !important}
[data-aiux-root] .aiux-step-nav > span:nth-of-type(2){grid-column:2 !important;grid-row:1 !important}
[data-aiux-root] .aiux-step-nav > span:nth-of-type(3){grid-column:3 !important;grid-row:1 !important}
[data-aiux-root] .aiux-step-nav > span:nth-of-type(4){grid-column:4 !important;grid-row:1 !important}

@media(max-width:760px){
    [data-aiux-root] .aiux-step-nav{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        width:100% !important;
    }
}


/* ==========================================================
 * GastroVIVA Table 1.8.8 — contraste de estados en email
 * El mismo clearfix/pseudo-elemento del tema que afectaba fechas,
 * horarios y navegación también puede convertirse en una celda
 * invisible dentro de .aiux-two-columns. Eso enviaba "Nombre" a
 * la columna derecha y "Apellidos" a la fila siguiente.
 * ========================================================== */
[data-aiux-root] .aiux-two-columns::before,
[data-aiux-root] .aiux-two-columns::after,
[data-aiux-root] .aiux-binary-choice::before,
[data-aiux-root] .aiux-binary-choice::after,
[data-aiux-root] .aiux-option-grid::before,
[data-aiux-root] .aiux-option-grid::after,
[data-aiux-root] .aiux-check-grid::before,
[data-aiux-root] .aiux-check-grid::after,
[data-aiux-root] .aiux-summary::before,
[data-aiux-root] .aiux-summary::after,
[data-aiux-root] .aiux-actions::before,
[data-aiux-root] .aiux-actions::after {
    content:none !important;
    display:none !important;
}

[data-aiux-root] .aiux-two-columns {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-flow:row !important;
    direction:ltr !important;
    align-items:start !important;
    justify-items:stretch !important;
}

[data-aiux-root] .aiux-two-columns > .aiux-field {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    float:none !important;
    clear:none !important;
    grid-column:auto !important;
    grid-row:auto !important;
    order:initial !important;
}

/* Orden semántico y visual exacto en escritorio. */
[data-aiux-root] .aiux-two-columns > .aiux-field:nth-child(1) {
    grid-column:1 !important;
    grid-row:1 !important;
}
[data-aiux-root] .aiux-two-columns > .aiux-field:nth-child(2) {
    grid-column:2 !important;
    grid-row:1 !important;
}

@media(max-width:760px) {
    [data-aiux-root] .aiux-two-columns {
        grid-template-columns:1fr !important;
    }
    [data-aiux-root] .aiux-two-columns > .aiux-field:nth-child(1) {
        grid-column:1 !important;
        grid-row:1 !important;
    }
    [data-aiux-root] .aiux-two-columns > .aiux-field:nth-child(2) {
        grid-column:1 !important;
        grid-row:2 !important;
    }
}

/* ==========================================================
 * GastroVIVA Table 1.8.9 — limpieza de franjas negras
 * La Experiencia Natural no debe heredar la altura de viewport
 * ni el fondo oscuro del diseño histórico. Se limita al shell
 * del formulario para conservar intacta la pantalla de éxito.
 * ========================================================== */
.aiux-shell.aiux-shell-form[data-aiux-root]{
    min-height:0 !important;
    height:auto !important;
    background:#ffffff !important;
    background-image:none !important;
    color:#171717 !important;
}
.aiux-shell.aiux-shell-form[data-aiux-root] > .aiux-card{
    min-height:0 !important;
    height:auto !important;
    background:#ffffff !important;
    background-image:none !important;
}
@media(max-width:760px){
    .aiux-shell.aiux-shell-form[data-aiux-root],
    .aiux-shell.aiux-shell-form[data-aiux-root] > .aiux-card{
        min-height:0 !important;
        height:auto !important;
    }
}



/* ==========================================================
 * GastroVIVA Table 1.8.10 — Hover universal verde / blanco
 * Todos los controles interactivos propios del formulario cambian a
 * fondo verde con texto blanco al pasar el puntero, sin afectar el tema.
 * ========================================================== */
[data-aiux-root] button:not(:disabled),
[data-aiux-root] a.aiux-button,
[data-aiux-root] .aiux-date-custom-card,
[data-aiux-root] .aiux-binary-choice label,
[data-aiux-root] .aiux-option-card {
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease !important;
}

[data-aiux-root] button:not(:disabled):hover,
[data-aiux-root] a.aiux-button:hover,
[data-aiux-root] .aiux-date-custom-card:hover,
[data-aiux-root] .aiux-binary-choice label:hover,
[data-aiux-root] .aiux-option-card:hover {
    background:#174c34 !important;
    background-image:none !important;
    border-color:#286d4d !important;
    color:#ffffff !important;
    box-shadow:0 0 0 3px rgba(23,76,52,.14) !important;
    transform:translateY(-1px);
}

[data-aiux-root] button:not(:disabled):hover *,
[data-aiux-root] a.aiux-button:hover *,
[data-aiux-root] .aiux-date-custom-card:hover *,
[data-aiux-root] .aiux-binary-choice label:hover *,
[data-aiux-root] .aiux-option-card:hover * {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}

[data-aiux-root] .aiux-date-custom-card:hover input[type="date"] {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}

[data-aiux-root] .aiux-date-custom-card:hover input[type="date"]::-webkit-calendar-picker-indicator {
    filter:invert(1) brightness(2) !important;
    opacity:1 !important;
}

/* El botón de ayuda mantiene forma circular, pero participa del mismo hover. */
[data-aiux-root] .aiux-help-button:not(:disabled):hover,
[data-aiux-root] .aiux-help-button[aria-expanded="true"]:hover {
    background:#174c34 !important;
    border-color:#286d4d !important;
    color:#ffffff !important;
}

/* Los enlaces que visualmente funcionan como botones usan el mismo lenguaje. */
[data-aiux-root] .aiux-mobile-menu-nav a:hover,
[data-aiux-root] .aiux-mobile-menu-actions a:hover,
[data-aiux-root] .aiux-topbar-nav a:hover,
[data-aiux-root] .aiux-topbar-action:hover {
    background:#174c34 !important;
    border-color:#286d4d !important;
    color:#ffffff !important;
}


/* ==========================================================
 * GastroVIVA Table 1.8.11 — Corrección selector "Otra fecha"
 * El input date conserva fondo transparente dentro de la tarjeta y
 * mantiene visible el icono nativo del calendario en estado normal y hover.
 * ========================================================== */
[data-aiux-root] .aiux-date-custom-card input[type="date"] {
    display:block !important;
    width:100% !important;
    min-height:24px !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-color:transparent !important;
    box-shadow:none !important;
    color:#171717 !important;
    -webkit-text-fill-color:#171717 !important;
    color-scheme:light !important;
    -webkit-appearance:auto !important;
    appearance:auto !important;
    cursor:pointer !important;
}

[data-aiux-root] .aiux-date-custom-card input[type="date"]:focus {
    outline:none !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

[data-aiux-root] .aiux-date-custom-card input[type="date"]::-webkit-calendar-picker-indicator {
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    cursor:pointer !important;
    filter:none !important;
}

[data-aiux-root] .aiux-date-custom-card:hover input[type="date"],
[data-aiux-root] .aiux-date-custom-card:focus-within input[type="date"] {
    background:transparent !important;
    background-color:transparent !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    color-scheme:dark !important;
}

[data-aiux-root] .aiux-date-custom-card:hover input[type="date"]::-webkit-calendar-picker-indicator,
[data-aiux-root] .aiux-date-custom-card:focus-within input[type="date"]::-webkit-calendar-picker-indicator {
    opacity:1 !important;
    filter:invert(1) brightness(2) !important;
}

[data-aiux-root] .aiux-date-custom-card:hover input[type="date"]::-webkit-datetime-edit,
[data-aiux-root] .aiux-date-custom-card:focus-within input[type="date"]::-webkit-datetime-edit,
[data-aiux-root] .aiux-date-custom-card:hover input[type="date"]::-webkit-datetime-edit-fields-wrapper,
[data-aiux-root] .aiux-date-custom-card:focus-within input[type="date"]::-webkit-datetime-edit-fields-wrapper {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    background:transparent !important;
}

/* ==========================================================
 * GastroVIVA Table 1.8.12 — Mensajes de validación verde/blanco
 * Unifica la caja de validación con el mensaje de disponibilidad.
 * ========================================================== */
[data-aiux-root] .aiux-error,
[data-aiux-root] .aiux-error[hidden="false"] {
    background:#174c34 !important;
    background-image:none !important;
    color:#ffffff !important;
    border:1px solid #286d4d !important;
    box-shadow:none !important;
}

[data-aiux-root] .aiux-error *,
[data-aiux-root] .aiux-error strong,
[data-aiux-root] .aiux-error span,
[data-aiux-root] .aiux-error p {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}

[data-aiux-root] .aiux-error::selection,
[data-aiux-root] .aiux-error *::selection {
    background:#ffffff !important;
    color:#174c34 !important;
    -webkit-text-fill-color:#174c34 !important;
}


/* ==========================================================
 * GastroVIVA Table 1.8.13 — Selección persistente verde / blanco
 * Los controles seleccionados conservan el mismo lenguaje visual del hover:
 * fondo verde, borde verde y texto blanco mientras permanezcan seleccionados.
 * ========================================================== */
[data-aiux-root] .aiux-date-shortcut.is-selected,
[data-aiux-root] .aiux-date-custom-card.is-selected,
[data-aiux-root] .aiux-time-chip.is-selected,
[data-aiux-root] .aiux-quick-guests button.is-selected,
[data-aiux-root] button[aria-pressed="true"],
[data-aiux-root] .aiux-binary-choice label:has(input:checked),
[data-aiux-root] .aiux-option-card:has(input:checked),
[data-aiux-root] .aiux-check:has(input:checked) {
    background:#174c34 !important;
    background-image:none !important;
    border-color:#286d4d !important;
    color:#ffffff !important;
    box-shadow:0 0 0 3px rgba(23,76,52,.14) !important;
}

[data-aiux-root] .aiux-date-shortcut.is-selected *,
[data-aiux-root] .aiux-date-custom-card.is-selected *,
[data-aiux-root] .aiux-time-chip.is-selected *,
[data-aiux-root] .aiux-quick-guests button.is-selected *,
[data-aiux-root] button[aria-pressed="true"] *,
[data-aiux-root] .aiux-binary-choice label:has(input:checked) *,
[data-aiux-root] .aiux-option-card:has(input:checked) *,
[data-aiux-root] .aiux-check:has(input:checked) * {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}

[data-aiux-root] .aiux-date-custom-card.is-selected input[type="date"] {
    background:transparent !important;
    background-color:transparent !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    color-scheme:dark !important;
}

[data-aiux-root] .aiux-date-custom-card.is-selected input[type="date"]::-webkit-calendar-picker-indicator {
    opacity:1 !important;
    filter:invert(1) brightness(2) !important;
}

[data-aiux-root] .aiux-binary-choice label:has(input:checked) input,
[data-aiux-root] .aiux-option-card:has(input:checked) input,
[data-aiux-root] .aiux-check:has(input:checked) input {
    accent-color:#ffffff !important;
}


/* ==========================================================
 * GastroVIVA Table 1.8.15 — "Tu visita": todos los bloques inferiores verdes
 * SOLO los paneles condicionales del paso 3 (Celebración, Alergia/Alimentación,
 * Accesibilidad y Otro detalle) usan fondo verde con textos blancos.
 * Las demás pestañas y componentes permanecen sin cambios.
 * ========================================================== */
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] {
    background:#174c34 !important;
    background-image:none !important;
    border-color:#286d4d !important;
    color:#ffffff !important;
    box-shadow:0 0 0 3px rgba(23,76,52,.10) !important;
}

[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] > *,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] label,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] span,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] strong,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] p {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}

/* Los campos permanecen claros y legibles dentro de cada bloque verde. */
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] input:not([type="checkbox"]):not([type="radio"]),
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] select,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] textarea {
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#171717 !important;
    -webkit-text-fill-color:#171717 !important;
    border-color:rgba(255,255,255,.88) !important;
    color-scheme:light !important;
}

[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] input::placeholder,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] textarea::placeholder {
    color:#6d6d6d !important;
    -webkit-text-fill-color:#6d6d6d !important;
    opacity:1 !important;
}

[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] input[type="checkbox"],
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] input[type="radio"] {
    accent-color:#ffffff !important;
}

/* Las tarjetas/checkboxes internas de Accesibilidad también quedan integradas al verde. */
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] .aiux-check,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] .aiux-consent {
    background:rgba(255,255,255,.08) !important;
    border-color:rgba(255,255,255,.34) !important;
    color:#ffffff !important;
}
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] .aiux-check:hover,
[data-aiux-root] [data-aiux-step="3"] [data-aiux-panel] .aiux-check:focus-within {
    background:rgba(255,255,255,.14) !important;
    border-color:#ffffff !important;
}

/* ==========================================================
 * GastroVIVA Table 1.9.0 / 1.9.1 — navegación condicionada
 * Pasos 1 y 2: Continuar permanece opaco e inoperante mientras
 * falte disponibilidad/horario o información requerida.
 * Paso 4: Confirmar reservación permanece bloqueado hasta que el
 * cliente confirme expresamente que revisó la información.
 * ========================================================== */
[data-aiux-root] .aiux-actions [data-aiux-next]:disabled,
[data-aiux-root] .aiux-actions [data-aiux-submit]:disabled {
    opacity:.45 !important;
    cursor:not-allowed !important;
    pointer-events:none !important;
}

[data-aiux-root] .aiux-final-confirmation {
    margin-top:22px !important;
}


/* ==========================================================
 * GastroVIVA Table 1.9.2 — confirmación final compacta y sutil
 * Ajuste exclusivamente visual de “Solicitud recibida”.
 * ========================================================== */
body.gv-table-success-screen .aiux-shell{
    min-height:100svh!important;
    min-height:100dvh!important;
    padding:12px!important;
}
body.gv-table-success-screen .aiux-success-state{
    width:min(620px,calc(100vw - 32px))!important;
    max-height:calc(100dvh - 24px)!important;
    margin:0 auto!important;
    padding:24px 26px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    border-radius:18px!important;
    border-color:#294735!important;
    background:linear-gradient(145deg,#102018,#101010 74%)!important;
    box-shadow:0 14px 38px rgba(0,0,0,.28)!important;
    scrollbar-width:thin;
}
body.gv-table-success-screen .aiux-success-icon{
    width:46px!important;
    height:46px!important;
    margin:0 auto 10px!important;
    font-size:23px!important;
    box-shadow:0 0 0 4px rgba(40,95,62,.12)!important;
}
body.gv-table-success-screen .aiux-success-state .aiux-eyebrow{
    font-size:11px!important;
    letter-spacing:.08em!important;
}
body.gv-table-success-screen .aiux-success-state h1{
    margin:5px 0 9px!important;
    font-size:clamp(28px,4.2vw,38px)!important;
    line-height:1.08!important;
}
body.gv-table-success-screen .aiux-success-state>p{
    max-width:540px!important;
    margin:0 auto!important;
    font-size:14.5px!important;
    line-height:1.48!important;
}
body.gv-table-success-screen .aiux-success-clarity{
    margin:13px auto 0!important;
    padding:10px 12px!important;
    border-radius:11px!important;
    font-size:13.5px!important;
    line-height:1.4!important;
}
body.gv-table-success-screen .aiux-success-actions{
    gap:10px!important;
    margin-top:16px!important;
}
body.gv-table-success-screen .aiux-success-actions .aiux-button{
    min-height:44px!important;
    padding:10px 16px!important;
    border-radius:12px!important;
    font-size:14px!important;
    line-height:1.2!important;
}

@media(max-width:760px){
    body.gv-table-success-screen .aiux-shell{
        padding:6px!important;
    }
    body.gv-table-success-screen .aiux-success-state{
        width:calc(100vw - 12px)!important;
        max-height:calc(100dvh - 12px)!important;
        padding:18px 16px!important;
        border-radius:15px!important;
    }
    body.gv-table-success-screen .aiux-success-icon{
        width:40px!important;
        height:40px!important;
        margin-bottom:8px!important;
        font-size:20px!important;
        box-shadow:0 0 0 3px rgba(40,95,62,.11)!important;
    }
    body.gv-table-success-screen .aiux-success-state h1{
        margin:4px 0 7px!important;
        font-size:27px!important;
    }
    body.gv-table-success-screen .aiux-success-state>p{
        font-size:13.5px!important;
        line-height:1.4!important;
    }
    body.gv-table-success-screen .aiux-success-clarity{
        margin-top:10px!important;
        padding:9px 10px!important;
        font-size:12.75px!important;
    }
    body.gv-table-success-screen .aiux-success-actions{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
        margin-top:12px!important;
    }
    body.gv-table-success-screen .aiux-success-actions .aiux-button{
        width:100%!important;
        min-height:42px!important;
        padding:8px 9px!important;
        font-size:12.75px!important;
    }
}

@media(max-width:420px){
    body.gv-table-success-screen .aiux-success-state{
        padding:15px 13px!important;
    }
    body.gv-table-success-screen .aiux-success-state h1{
        font-size:25px!important;
    }
}

@media(max-width:760px) and (max-height:700px){
    body.gv-table-success-screen .aiux-success-state{
        padding:13px 14px!important;
    }
    body.gv-table-success-screen .aiux-success-icon{
        width:36px!important;
        height:36px!important;
        margin-bottom:5px!important;
        font-size:18px!important;
    }
    body.gv-table-success-screen .aiux-success-state h1{
        margin:3px 0 5px!important;
        font-size:23px!important;
    }
    body.gv-table-success-screen .aiux-success-state>p{
        font-size:12.75px!important;
        line-height:1.34!important;
    }
    body.gv-table-success-screen .aiux-success-clarity{
        margin-top:8px!important;
        padding:7px 9px!important;
        font-size:12px!important;
    }
    body.gv-table-success-screen .aiux-success-actions{
        margin-top:9px!important;
    }
    body.gv-table-success-screen .aiux-success-actions .aiux-button{
        min-height:38px!important;
        padding:7px 8px!important;
        font-size:12px!important;
    }
}

/* ==========================================================
 * GastroVIVA Table 1.9.5 — “Tu visita” más simple y compacta
 * Reduce carga visual, texto y altura sin alterar la lógica de reserva.
 * ========================================================== */
[data-aiux-root] [data-aiux-step="3"].aiux-step-special .aiux-step-heading-compact{
    margin-bottom:14px!important;
}
[data-aiux-root] [data-aiux-step="3"].aiux-step-special .aiux-step-heading-compact h2{
    margin-bottom:4px!important;
}
[data-aiux-root] [data-aiux-step="3"].aiux-step-special .aiux-step-heading-compact p{
    font-size:14px!important;
    line-height:1.4!important;
}

[data-aiux-root] [data-aiux-step="3"] .aiux-binary-choice-compact{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    margin:0 0 12px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-binary-choice-compact label{
    position:relative!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:46px!important;
    padding:9px 12px!important;
    border-radius:13px!important;
    text-align:center!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-binary-choice-compact label input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-binary-choice-compact label:focus-within{
    outline:2px solid #244f70!important;
    outline-offset:2px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-binary-choice-compact strong{
    font-size:15px!important;
    line-height:1.2!important;
}

[data-aiux-root] [data-aiux-step="3"] .aiux-special-details-compact{
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-special-details-compact .aiux-special-prompt{
    margin:0 0 8px!important;
    font-size:13px!important;
    line-height:1.3!important;
    color:#555!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-option-grid-compact{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-option-card-compact{
    position:relative!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    padding:8px 10px!important;
    border-radius:12px!important;
    text-align:center!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-option-card-compact input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-option-card-compact:focus-within{
    outline:2px solid #244f70!important;
    outline-offset:2px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-option-card-compact strong{
    font-size:13px!important;
    line-height:1.2!important;
}

[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact{
    margin-top:12px!important;
    padding:14px!important;
    border-style:solid!important;
    border-radius:14px!important;
    box-shadow:none!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field{
    gap:5px!important;
    margin-bottom:10px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field:last-child{
    margin-bottom:0!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field > span,
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field > label,
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field label{
    font-size:13px!important;
    line-height:1.25!important;
    font-weight:700!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field small{
    font-size:11px!important;
    font-weight:500!important;
    opacity:.82!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field input:not([type="checkbox"]):not([type="radio"]),
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field select{
    height:44px!important;
    min-height:44px!important;
    padding:0 12px!important;
    border-radius:11px!important;
    font-size:14px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field textarea{
    min-height:72px!important;
    height:72px!important;
    padding:10px 12px!important;
    border-radius:11px!important;
    font-size:14px!important;
    line-height:1.35!important;
    resize:vertical!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-special-fields-row{
    display:grid!important;
    grid-template-columns:1.2fr .8fr!important;
    gap:10px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-special-fields-row .aiux-field{
    min-width:0!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-mini-check{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    width:auto!important;
    margin:0 0 10px!important;
    padding:5px 0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    color:#fff!important;
    font-size:13px!important;
    line-height:1.2!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-mini-check input{
    width:18px!important;
    height:18px!important;
    margin:0!important;
    accent-color:#fff!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-special-note{
    margin:7px 0 0!important;
    font-size:12px!important;
    line-height:1.35!important;
    opacity:.88!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-special-prompt-light{
    margin:0 0 8px!important;
    font-size:12px!important;
    line-height:1.3!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-check-grid-compact{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    margin-bottom:10px!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-check-compact{
    align-items:center!important;
    gap:7px!important;
    min-height:38px!important;
    margin:0!important;
    padding:7px 9px!important;
    border-radius:10px!important;
    font-size:12px!important;
    line-height:1.2!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-check-compact span{
    font-size:12px!important;
    line-height:1.2!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-check-compact input[type="checkbox"]{
    flex:0 0 17px!important;
    width:17px!important;
    height:17px!important;
    margin:0!important;
}
[data-aiux-root] [data-aiux-step="3"] .aiux-field-compact-input{
    margin-bottom:0!important;
}

@media(max-width:760px){
    [data-aiux-root] [data-aiux-step="3"].aiux-step-special .aiux-step-heading-compact{
        margin-bottom:10px!important;
    }
    [data-aiux-root] [data-aiux-step="3"].aiux-step-special .aiux-step-heading-compact h2{
        font-size:25px!important;
        line-height:1.05!important;
    }
    [data-aiux-root] [data-aiux-step="3"].aiux-step-special .aiux-step-heading-compact p{
        font-size:13px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-binary-choice-compact{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px!important;
        margin-bottom:10px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-binary-choice-compact label{
        min-height:42px!important;
        padding:7px 9px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-option-grid-compact{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-option-card-compact{
        min-height:40px!important;
        padding:7px 8px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact{
        margin-top:9px!important;
        padding:11px!important;
        border-radius:12px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-special-fields-row{
        grid-template-columns:1fr!important;
        gap:0!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field{
        margin-bottom:8px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field input:not([type="checkbox"]):not([type="radio"]),
    [data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field select{
        height:42px!important;
        min-height:42px!important;
        font-size:13px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-conditional-compact .aiux-field textarea{
        min-height:64px!important;
        height:64px!important;
        font-size:13px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-check-grid-compact{
        grid-template-columns:1fr 1fr!important;
        gap:6px!important;
    }
    [data-aiux-root] [data-aiux-step="3"] .aiux-check-compact{
        min-height:36px!important;
        padding:6px 8px!important;
    }
}

@media(max-width:390px){
    [data-aiux-root] [data-aiux-step="3"] .aiux-check-grid-compact{
        grid-template-columns:1fr!important;
    }
}


/* 1.9.8 — Nota informativa previa al botón Continuar del paso fecha/hora. */
[data-aiux-root] .aiux-continue-hint {
    margin: 18px 0 -12px;
    padding-top: 0;
    text-align: center;
    font-size: 16px;
    line-height: 1.45;
    color: #5f5f5f;
}

/* 1.9.15 — Reduce únicamente en 1px el aviso del paso de horario. */
[data-aiux-root] .aiux-continue-hint--schedule {
    font-size: 15px;
}

/* ==========================================================
 * GastroVIVA Table 1.9.12 — Icono de calendario con contraste
 * El icono de "Otra fecha" es negro sobre fondo blanco y blanco
 * sobre fondo verde (selección, hover o foco). Se aumenta levemente
 * su tamaño sin alterar la geometría de la tarjeta.
 * ========================================================== */
[data-aiux-root] .aiux-date-custom-card {
    position:relative !important;
}

/* Reserva espacio para que el texto de la fecha no invada el icono. */
[data-aiux-root] .aiux-date-custom-card input[type="date"] {
    padding-right:34px !important;
}

/* Icono propio, estable entre navegadores Chromium/WebKit. */
[data-aiux-root] .aiux-date-custom-card::after {
    content:"";
    position:absolute;
    right:15px;
    bottom:14px;
    width:20px;
    height:20px;
    pointer-events:none;
    background-color:#171717;
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2a1 1 0 0 1 1 1v1h8V3a1 1 0 1 1 2 0v1h1a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h1V3a1 1 0 0 1 1-1Zm12 8H5v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-9ZM6 6a1 1 0 0 0-1 1v1h14V7a1 1 0 0 0-1-1H6Z'/%3E%3C/svg%3E");
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-position:center;
    -webkit-mask-size:contain;
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2a1 1 0 0 1 1 1v1h8V3a1 1 0 1 1 2 0v1h1a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h1V3a1 1 0 0 1 1-1Zm12 8H5v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-9ZM6 6a1 1 0 0 0-1 1v1h14V7a1 1 0 0 0-1-1H6Z'/%3E%3C/svg%3E");
    mask-repeat:no-repeat;
    mask-position:center;
    mask-size:contain;
    transition:background-color .16s ease;
}

/* Fondo verde: icono blanco. */
[data-aiux-root] .aiux-date-custom-card.is-selected::after,
[data-aiux-root] .aiux-date-custom-card:hover::after,
[data-aiux-root] .aiux-date-custom-card:focus-within::after {
    background-color:#ffffff;
}

/* Oculta visualmente el icono nativo, pero conserva su zona clicable. */
[data-aiux-root] .aiux-date-custom-card input[type="date"]::-webkit-calendar-picker-indicator {
    width:20px !important;
    height:20px !important;
    opacity:0 !important;
    cursor:pointer !important;
}

/* ==========================================================
 * GastroVIVA Table 1.9.13 — Un solo icono de calendario, funcional
 * Se elimina el icono decorativo agregado en 1.9.12 y se conserva
 * únicamente el indicador nativo del input date, que abre el selector.
 * Negro sobre fondo blanco; blanco sobre fondo verde/hover/foco.
 * ========================================================== */
[data-aiux-root] .aiux-date-custom-card::after {
    content:none !important;
    display:none !important;
}

/* El indicador nativo vuelve al borde derecho de la tarjeta. */
[data-aiux-root] .aiux-date-custom-card input[type="date"] {
    padding-right:0 !important;
}

/* Estado normal: icono funcional negro, ligeramente mayor. */
[data-aiux-root] .aiux-date-custom-card input[type="date"]::-webkit-calendar-picker-indicator {
    display:block !important;
    width:21px !important;
    height:21px !important;
    min-width:21px !important;
    opacity:1 !important;
    filter:none !important;
    cursor:pointer !important;
}

/* Fondo verde (selección, hover o foco): el MISMO icono funcional en blanco. */
[data-aiux-root] .aiux-date-custom-card.is-selected input[type="date"]::-webkit-calendar-picker-indicator,
[data-aiux-root] .aiux-date-custom-card:hover input[type="date"]::-webkit-calendar-picker-indicator,
[data-aiux-root] .aiux-date-custom-card:focus-within input[type="date"]::-webkit-calendar-picker-indicator {
    opacity:1 !important;
    filter:invert(1) brightness(2) !important;
}


/* ==========================================================
 * GastroVIVA Table 1.9.14 — Icono funcional propio del calendario
 * Se oculta por completo el indicador nativo del input date para evitar
 * duplicados. El único icono visible es un botón real que abre el selector
 * de fecha mediante showPicker(). Negro sobre fondo blanco y blanco cuando
 * la tarjeta está verde/seleccionada, manteniendo contraste y funcionalidad.
 * ========================================================== */
[data-aiux-root] .aiux-date-custom-card {
    position:relative !important;
}

[data-aiux-root] .aiux-date-custom-card input[type="date"] {
    padding-right:44px !important;
}

/* Elimina el indicador nativo: evita el segundo icono negro. */
[data-aiux-root] .aiux-date-custom-card input[type="date"]::-webkit-calendar-picker-indicator {
    display:none !important;
    width:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
    opacity:0 !important;
    pointer-events:none !important;
}

[data-aiux-root] .aiux-date-picker-button {
    position:absolute !important;
    right:10px !important;
    bottom:9px !important;
    z-index:4 !important;
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    margin:0 !important;
    padding:6px !important;
    border:0 !important;
    border-radius:8px !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#171717 !important;
    cursor:pointer !important;
    display:grid !important;
    place-items:center !important;
    line-height:1 !important;
    -webkit-appearance:none !important;
    appearance:none !important;
}

[data-aiux-root] .aiux-date-picker-button span {
    display:block !important;
    width:22px !important;
    height:22px !important;
    background-color:currentColor !important;
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2a1 1 0 0 1 1 1v1h8V3a1 1 0 1 1 2 0v1h1a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h1V3a1 1 0 0 1 1-1Zm12 8H5v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-9ZM6 6a1 1 0 0 0-1 1v1h14V7a1 1 0 0 0-1-1H6Z'/%3E%3C/svg%3E") !important;
    -webkit-mask-repeat:no-repeat !important;
    -webkit-mask-position:center !important;
    -webkit-mask-size:contain !important;
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2a1 1 0 0 1 1 1v1h8V3a1 1 0 1 1 2 0v1h1a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h1V3a1 1 0 0 1 1-1Zm12 8H5v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-9ZM6 6a1 1 0 0 0-1 1v1h14V7a1 1 0 0 0-1-1H6Z'/%3E%3C/svg%3E") !important;
    mask-repeat:no-repeat !important;
    mask-position:center !important;
    mask-size:contain !important;
}

/* Fondo verde: el mismo botón funcional pasa a blanco. */
[data-aiux-root] .aiux-date-custom-card.is-selected .aiux-date-picker-button,
[data-aiux-root] .aiux-date-custom-card:hover .aiux-date-picker-button,
[data-aiux-root] .aiux-date-custom-card:focus-within .aiux-date-picker-button {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}

[data-aiux-root] .aiux-date-picker-button:focus-visible {
    outline:2px solid currentColor !important;
    outline-offset:1px !important;
}

/* 1.9.16: confirma visiblemente que la reservación pública no requiere cuenta. */
[data-aiux-root] .aiux-guest-access-note {
    display:inline-flex;
    align-items:center;
    margin:10px 0 0;
    padding:7px 12px;
    border:1px solid rgba(255,255,255,.45);
    border-radius:999px;
    background:rgba(255,255,255,.12);
    color:inherit;
    font-size:14px;
    font-weight:600;
    line-height:1.35;
}

@media (max-width: 640px) {
    [data-aiux-root] .aiux-guest-access-note {
        display:flex;
        width:100%;
        box-sizing:border-box;
        border-radius:12px;
    }
}
