.auth-shell{position:fixed;inset:0;z-index:1100;background:#0a0a0b;color:#f5f3ef;overflow:auto;padding:env(safe-area-inset-top) 24px calc(32px + env(safe-area-inset-bottom));font-family:-apple-system,"Helvetica Neue",Arial,sans-serif}.auth-open .ho-feedback__launcher{display:none}
.auth-shell[hidden]{display:none}.auth-wrap{width:min(100%,520px);margin:0 auto;padding-top:28px}.auth-top{display:flex;align-items:center;justify-content:space-between;min-height:52px}.auth-logo{width:148px;height:auto}.auth-close{min-width:44px;min-height:44px;color:#aaa69e;font-size:25px}
.auth-kicker{margin:58px 0 12px;color:#c9a227;font:600 11px/1.2 ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase}.auth-title{margin:0;font-size:clamp(2.2rem,10vw,3.5rem);line-height:.96;letter-spacing:-.04em}.auth-copy{color:#c7c4be;line-height:1.55;margin:18px 0 30px}
.auth-panel[hidden]{display:none}.auth-field{display:block;margin:20px 0}.auth-field span{display:block;color:#aaa69e;font:600 10px/1.2 ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}.auth-field input{width:100%;min-height:52px;padding:10px 2px;background:transparent;border:0;border-bottom:1px solid rgba(245,243,239,.2);border-radius:0;color:#f5f3ef;font:inherit}.auth-field input:focus{outline:0;border-color:#c9a227}.auth-button{position:relative;width:100%;min-height:54px;margin-top:14px;background:linear-gradient(115deg,#c79f25,#e1c65f 48%,#bf941c);color:#0a0a0b;border:0;font-weight:750;font-size:16px;overflow:hidden}.auth-button:disabled{cursor:wait}.auth-button__label{display:inline-block;transition:opacity .18s ease,transform .3s cubic-bezier(.22,1,.36,1)}.auth-button__spinner{position:absolute;top:50%;left:50%;width:19px;height:19px;margin:-10px 0 0 -10px;border:2px solid rgba(10,10,11,.25);border-top-color:#0a0a0b;border-radius:50%;opacity:0;transform:scale(.7);transition:opacity .18s ease,transform .25s ease}.auth-button[data-state=loading] .auth-button__label{opacity:0;transform:translateY(-8px)}.auth-button[data-state=loading] .auth-button__spinner{opacity:1;transform:scale(1);animation:authSpin .75s linear infinite}.auth-button[data-state=ready] .auth-button__label,.auth-button[data-state=confirmed] .auth-button__label{animation:authLabelIn .38s cubic-bezier(.22,1,.36,1) both}@keyframes authSpin{to{transform:rotate(360deg)}}@keyframes authLabelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.auth-link{display:block;margin:22px auto;color:#c9a227;text-decoration:underline;text-underline-offset:4px;background:none;border:0}.auth-status{min-height:24px;margin:12px 0 0;color:#c7c4be;font-size:14px;line-height:1.45}.auth-status:empty{min-height:0;margin-top:0}.auth-status[data-kind=error]{color:#eea28d}.auth-danger{margin-top:48px;padding-top:24px;border-top:1px solid rgba(245,243,239,.15)}.auth-danger button{min-height:48px;color:#eea28d;border:1px solid rgba(238,162,141,.45);background:none;padding:0 18px}
.auth-divider{display:flex;align-items:center;gap:14px;margin:26px 0;color:#77736d;font-size:12px;text-transform:uppercase;letter-spacing:.14em}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:rgba(245,243,239,.14)}.auth-oauth{display:grid;gap:10px}.auth-provider{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;width:100%;min-height:52px;padding:0 16px;border:1px solid rgba(245,243,239,.22);background:#151516;color:#f5f3ef;font:650 15px/1 -apple-system,"Helvetica Neue",Arial,sans-serif}.auth-provider span{grid-column:2}.provider-icon{grid-column:1;width:20px;height:20px;justify-self:center}.provider-icon--apple{width:18px;height:22px}.auth-provider:focus-visible,.auth-button:focus-visible{outline:2px solid #c9a227;outline-offset:3px}.booking-account .auth-button{margin:10px 0 0}.booking-account .auth-kicker{margin-top:30px}.booking-account .auth-oauth{grid-template-columns:1fr 1fr}
.booking-account [hidden]{display:none}.booking-authenticated{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;margin:18px 0 0;padding:22px;border:1px solid rgba(201,162,39,.36);background:linear-gradient(135deg,rgba(201,162,39,.1),rgba(245,243,239,.025) 58%);box-shadow:inset 0 1px rgba(245,243,239,.04)}.booking-authenticated__mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(225,198,95,.55);border-radius:50%;color:#e1c65f;background:rgba(201,162,39,.1)}.booking-authenticated__mark svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.booking-authenticated__eyebrow{margin:1px 0 7px;color:#c9a227;font:650 10px/1.2 ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase}.booking-authenticated__title{margin:0;color:#f5f3ef;font-size:20px;font-weight:720;letter-spacing:-.015em}.booking-authenticated__copy{max-width:430px;margin:8px 0 0;color:#c7c4be;font-size:14px;line-height:1.5}.booking-authenticated__email{margin:13px 0 0;padding-top:12px;border-top:1px solid rgba(245,243,239,.12);color:#aaa69e;font:500 11px/1.4 ui-monospace,monospace;letter-spacing:.04em;overflow-wrap:anywhere}
.booking-payment{position:relative;margin-top:34px;padding:24px;border:1px solid rgba(201,162,39,.28);background:rgba(245,243,239,.035);transition:opacity .35s ease,border-color .35s ease,background-color .35s ease}.booking-payment__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.booking-payment .auth-kicker{margin:0 0 8px}.booking-payment .auth-copy{margin:0 0 18px}.booking-payment__lock{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid rgba(201,162,39,.3);border-radius:50%;color:#c9a227}.booking-payment__lock svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.booking-payment__hint{margin:0 0 20px;color:#aaa69e;font-size:13px;line-height:1.45}.booking-payment.is-locked{opacity:.48;border-color:rgba(245,243,239,.12);background:rgba(245,243,239,.02)}.booking-payment.is-locked .terms,.booking-payment.is-locked .paypal,.booking-payment.is-locked .wallet-checkout{pointer-events:none;filter:grayscale(1)}.booking-payment:not(.is-locked) .booking-payment__lock,.booking-payment:not(.is-locked) .booking-payment__hint{display:none}
@media(max-width:560px){.booking-account .auth-oauth{grid-template-columns:1fr}.booking-payment{padding:20px}.booking-authenticated{grid-template-columns:1fr;padding:20px}.booking-authenticated__mark{width:40px;height:40px}}
.wallet-checkout{display:grid;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid rgba(245,243,239,.14)}.wallet-checkout[hidden],.apple-pay-button[hidden],.google-pay-button[hidden]{display:none}.wallet-checkout .paypal{margin-top:0}.wallet-checkout button:disabled,.wallet-checkout[data-payment-enabled="false"]{opacity:.42;cursor:not-allowed;pointer-events:none}.apple-pay-button{display:block;width:100%;height:48px;margin:0;border:0;border-radius:4px;background:#000;-webkit-appearance:-apple-pay-button;-apple-pay-button-type:buy;-apple-pay-button-style:black}.google-pay-button{width:100%;min-height:48px}.google-pay-button>div,.google-pay-button button{width:100%!important;min-height:48px!important}.wallet-checkout .demo-note{margin-top:2px}
@media(prefers-reduced-motion:reduce){.auth-shell *,.booking-account *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
