:root{--color-paper:oklch(97% .012 82);--color-paper-2:oklch(94% .014 82);--color-paper-3:oklch(90% .015 82);--color-surface:oklch(98.5% .008 82);--color-ink:oklch(18% .025 252);--color-ink-2:oklch(29% .024 250);--color-neutral:oklch(43% .018 245);--color-muted:oklch(52% .016 240);--color-rule:oklch(79% .018 82);--color-rule-2:oklch(86% .016 82);--color-navy:oklch(20% .043 251);--color-navy-raised:oklch(25% .047 251);--color-accent:oklch(69% .105 78);--color-accent-soft:oklch(91% .052 82);--color-accent-ink:oklch(18% .025 252);--color-focus:oklch(20% .043 251);--color-focus-outer:oklch(69% .105 78);--color-success:oklch(48% .105 155);--color-success-soft:oklch(94% .026 155);--color-error:oklch(52% .17 28);--color-overlay:oklch(12% .03 251/.72);--color-shadow:oklch(18% .025 252/.12);--font-display:"Cormorant Garamond", serif;--font-body:"Manrope", sans-serif;--font-mono:"Manrope", sans-serif;--text-xs:.72rem;--text-sm:.82rem;--text-base:1rem;--text-md:1.18rem;--text-lg:1.5rem;--text-xl:2rem;--text-2xl:2.7rem;--text-display:clamp(2.6rem, 5vw, 4.5rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1.25rem;--radius-round:999rem;--rule-thin:1px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500;--z-tooltip:600}*{box-sizing:border-box}html,body{background:var(--color-paper);min-width:320px;color:var(--color-ink);margin:0;overflow-x:clip}body{min-height:100dvh;font-family:var(--font-body);font-size:var(--text-base);line-height:1.55}button,input,select{font:inherit}button,select{cursor:pointer}button,a,input,select{-webkit-tap-highlight-color:transparent}button{white-space:nowrap}h1,h2,h3{overflow-wrap:anywhere;min-width:0}img{max-width:100%;display:block}:focus{outline:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--color-focus-outer)}button:disabled{cursor:not-allowed;opacity:.5}button:active{transform:translateY(1px)}.app-shell{min-height:100dvh}.skip-link{z-index:var(--z-tooltip);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--color-navy);color:var(--color-paper);transform:translateY(calc(-100% - var(--space-xl)));transition:transform var(--dur-short) var(--ease-out);position:fixed;inset-block-start:var(--space-md);inset-inline-start:var(--space-md)}.skip-link:focus{transform:none}.app-header{z-index:var(--z-sticky);background:var(--color-surface);border-block-end:var(--rule-thin) solid var(--color-rule-2);position:sticky;inset-block-start:0}.header-inner{min-height:4.5rem;padding-inline:clamp(var(--space-md), 4vw, var(--space-xl));align-items:center;gap:var(--space-md);grid-template-columns:1fr auto;max-width:100rem;margin-inline:auto;display:grid}.brand{appearance:none;color:var(--color-ink);align-items:center;gap:var(--space-sm);background:0 0;border:0;justify-self:start;padding:0;display:inline-flex}.brand-mark{border:var(--rule-thin) solid var(--color-accent);block-size:2.75rem;inline-size:2.5rem;color:var(--color-accent);font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);place-items:center;display:grid;position:relative}.brand-mark:before{content:"";inset:var(--space-2xs);border-inline-start:var(--rule-thin) solid var(--color-accent);border-block-end:var(--rule-thin) solid var(--color-accent);position:absolute}.brand-mark i{inline-size:var(--space-xs);block-size:var(--space-xs);border-radius:var(--radius-round);background:var(--color-accent);position:absolute;inset-block-start:46%;inset-inline-end:calc(var(--space-2xs) * -1)}.brand-copy{flex-direction:column;align-items:flex-start;line-height:1.08;display:flex}.brand-copy strong{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.025em}.brand-copy small{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.desktop-nav{align-self:stretch;align-items:stretch;gap:var(--space-lg);display:none}.nav-link{color:var(--color-neutral);padding-inline:var(--space-2xs);font-size:var(--text-sm);background:0 0;border:0;font-weight:600;position:relative}.nav-link:after{content:"";background:var(--color-accent);transform-origin:0;block-size:2px;transition:transform var(--dur-short) var(--ease-out);position:absolute;inset-block-end:0;inset-inline:0;transform:scaleX(0)}.nav-link[data-active=true]{color:var(--color-ink)}.nav-link[data-active=true]:after{transform:scaleX(1)}.header-actions{align-items:center;gap:var(--space-xs);justify-self:end;display:flex}.command-trigger,.staff-menu{border:var(--rule-thin) solid var(--color-rule-2);background:var(--color-surface);min-height:2.75rem;color:var(--color-ink);align-items:center;gap:var(--space-xs);border-radius:var(--radius-sm);padding-inline:var(--space-sm);display:none}.command-trigger span{font-size:var(--text-sm)}kbd{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);padding:var(--space-3xs) var(--space-2xs);background:var(--color-paper-2);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.staff-avatar{border-radius:var(--radius-round);background:var(--color-navy);block-size:2rem;inline-size:2rem;color:var(--color-paper);font-size:var(--text-xs);place-items:center;font-weight:700;display:grid}.staff-copy{flex-direction:column;align-items:flex-start;line-height:1.25;display:flex}.staff-copy strong{font-size:var(--text-xs)}.staff-copy small{color:var(--color-muted);font-size:.65rem}.mobile-menu-button{border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-sm);background:var(--color-surface);min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--color-ink);place-items:center;display:grid}.mobile-nav{padding:var(--space-sm) var(--space-md) var(--space-md);gap:var(--space-xs);background:var(--color-surface);border-block-start:var(--rule-thin) solid var(--color-rule-2);display:grid}.mobile-nav button{align-items:center;gap:var(--space-sm);border-radius:var(--radius-sm);min-height:2.75rem;color:var(--color-neutral);padding-inline:var(--space-sm);text-align:start;background:0 0;border:0;display:flex}.mobile-nav button[data-active=true]{background:var(--color-accent-soft);color:var(--color-ink)}.search-shell{background:var(--color-navy);color:var(--color-paper);padding:var(--space-xl) clamp(var(--space-md), 4vw, var(--space-xl)) var(--space-2xl)}.search-intro,.search-form,.search-meta{max-width:94rem;margin-inline:auto}.search-intro{gap:var(--space-lg);display:grid}.search-title-block{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.staff-context{margin:0 0 var(--space-xs);align-items:center;gap:var(--space-xs);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;display:inline-flex}.staff-context span{inline-size:var(--space-xs);block-size:var(--space-xs);background:var(--color-accent);transform:rotate(45deg)}.search-intro h1{max-width:15ch;font-family:var(--font-display);font-size:var(--text-display);letter-spacing:-.035em;overflow-wrap:anywhere;margin:0;font-style:normal;line-height:.94}.search-lede{max-width:55ch;color:var(--color-paper-3);margin:0}.search-form{gap:var(--space-sm);margin-block-start:var(--space-xl);display:grid}.field{align-content:end;gap:var(--space-xs);min-width:0;display:grid}.field label{font-size:var(--text-sm);color:inherit;font-weight:600}.field-control{align-items:center;gap:var(--space-xs);min-height:3.25rem;padding-inline:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);outline-offset:1px;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-neutral);outline:2px solid #0000;display:flex}.field-control:focus-within{outline-color:var(--color-focus);box-shadow:0 0 0 3px var(--color-focus-outer)}.field-control input,.field-control select{width:100%;min-width:0;color:var(--color-ink);background:0 0;border:0;outline:0}.field-control input::placeholder{color:var(--color-muted);opacity:1}.field-control select{appearance:none;background-image:none}.room-field{color:var(--color-paper)}.stepper{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);min-height:3.25rem;color:var(--color-ink);grid-template-columns:2.75rem 1fr 2.75rem;align-items:center;display:grid;overflow:clip}.stepper button{min-height:3.25rem;color:inherit;background:0 0;border:0;place-items:center;display:grid}.stepper output{text-align:center;font-variant-numeric:tabular-nums;font-weight:700}.search-button,.continue-button,.select-room,.module-heading>button,.empty-state button{justify-content:center;align-items:center;gap:var(--space-xs);border:var(--rule-thin) solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent);min-height:3.25rem;color:var(--color-accent-ink);padding-inline:var(--space-lg);transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out);font-weight:700;display:inline-flex}.search-button:active,.continue-button:active,.select-room:active,.module-heading>button:active,.empty-state button:active{transform:translateY(1px)}.search-meta{gap:var(--space-sm) var(--space-lg);color:var(--color-paper-3);font-size:var(--text-sm);flex-wrap:wrap;padding-block-start:var(--space-lg);display:flex}.search-meta span{align-items:center;gap:var(--space-xs);display:inline-flex}.search-meta svg{color:var(--color-accent)}.content-grid{max-width:100rem;padding:var(--space-lg) clamp(var(--space-md), 4vw, var(--space-xl)) var(--space-2xl);gap:var(--space-lg);margin-inline:auto;display:grid}.results{min-width:0}.results-heading{justify-content:space-between;align-items:end;gap:var(--space-md);padding-block:var(--space-sm) var(--space-lg);flex-wrap:wrap;display:flex}.results-heading h2{font-family:var(--font-display);font-size:var(--text-xl);margin:0;line-height:1.05}.results-heading p{margin:var(--space-2xs) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.results-heading select{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);min-height:2.75rem;color:var(--color-ink);padding-inline:var(--space-sm) var(--space-lg)}.demo-notice{margin:0 0 var(--space-md);align-items:center;gap:var(--space-xs);color:var(--color-neutral);font-size:var(--text-sm);display:flex}.hotel-list{gap:var(--space-md);display:grid}.hotel-card{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-md);min-width:0;display:grid;overflow:clip}.hotel-image{background:var(--color-paper-3);min-height:14rem;margin:0;position:relative}.hotel-image img{object-fit:cover;width:100%;height:100%}.hotel-image figcaption{align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);font-size:var(--text-xs);font-weight:700;display:inline-flex;position:absolute;inset-block-start:var(--space-sm);inset-inline-start:var(--space-sm)}.hotel-image figcaption svg{color:var(--color-accent)}.hotel-main{min-width:0;padding:var(--space-lg);gap:var(--space-lg);display:grid}.hotel-heading{justify-content:space-between;gap:var(--space-md);align-items:start;display:flex}.hotel-heading p{margin:0 0 var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.hotel-heading h3{max-width:28ch;font-family:var(--font-display);font-size:var(--text-lg);margin:0;line-height:1.08}.quiet-button{border:0;border-block-end:var(--rule-thin) solid var(--color-rule);min-height:2.75rem;color:var(--color-neutral);background:0 0;padding-inline:0}.room-row{border-block-start:var(--rule-thin) solid var(--color-rule-2);gap:var(--space-md);align-items:center;padding-block-start:var(--space-md);display:grid}.room-name{align-items:flex-start;gap:var(--space-sm);display:flex}.room-name span{flex-direction:column;display:flex}.room-name small{color:var(--color-muted);margin-block-start:var(--space-2xs)}.benefit-list{gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.benefit-list li{align-items:center;gap:var(--space-2xs);color:var(--color-neutral);font-size:var(--text-xs);display:inline-flex}.benefit-list svg{color:var(--color-success)}.rate-block{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-start;display:flex}.rate-block small{color:var(--color-muted)}.rate-block strong{font-family:var(--font-display);font-size:var(--text-lg);line-height:1.1}.rate-block span{color:var(--color-success);font-size:var(--text-xs);font-weight:700}.select-room{width:100%}.booking-summary{background:var(--color-navy);color:var(--color-paper);border-radius:var(--radius-md);padding:var(--space-lg);align-self:start}.summary-head{justify-content:space-between;align-items:start;gap:var(--space-md);display:flex}.summary-head p{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;margin:0}.summary-head h2{margin:var(--space-2xs) 0 0;font-family:var(--font-display);font-size:var(--text-xl)}.summary-head button{border:var(--rule-thin) solid var(--color-navy-raised);border-radius:var(--radius-sm);background:var(--color-navy-raised);min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--color-paper);place-items:center;display:grid}.booking-summary dl{margin:var(--space-lg) 0;display:grid}.booking-summary dl div{padding-block:var(--space-sm);gap:var(--space-sm);border-block-end:var(--rule-thin) solid var(--color-navy-raised);grid-template-columns:5.5rem 1fr;display:grid}.booking-summary dt{color:var(--color-paper-3);font-size:var(--text-xs)}.booking-summary dd{text-align:end;font-size:var(--text-sm);margin:0;font-weight:600}.booking-summary .summary-total{border:0;padding-block-start:var(--space-lg)}.summary-total dd{color:var(--color-accent);font-family:var(--font-display);font-size:var(--text-lg)}.continue-button{width:100%}.summary-note{margin:var(--space-sm) 0 0;justify-content:center;align-items:center;gap:var(--space-xs);color:var(--color-paper-3);font-size:var(--text-xs);display:flex}.empty-state{max-width:34rem;min-height:28rem;padding-block:var(--space-2xl);align-content:center;justify-items:start;display:grid}.empty-art{block-size:5rem;inline-size:5rem;color:var(--color-ink);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-round);place-items:center;display:grid;position:relative}.empty-art span{background:var(--color-accent);border-radius:var(--radius-round);block-size:1.2rem;inline-size:1.2rem;position:absolute;inset-block-start:0;inset-inline-end:0}.empty-state h2{margin:var(--space-lg) 0 var(--space-xs);font-family:var(--font-display);font-size:var(--text-2xl);line-height:1}.empty-state p{margin:0 0 var(--space-lg);color:var(--color-neutral);max-width:42ch}.module-page{max-width:94rem;min-height:calc(100dvh - 9rem);padding:var(--space-xl) clamp(var(--space-md), 4vw, var(--space-xl)) var(--space-2xl);margin-inline:auto}.module-heading{justify-content:space-between;align-items:end;gap:var(--space-lg);flex-wrap:wrap;margin-block-end:var(--space-xl);display:flex}.module-heading p{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;margin:0}.module-heading h1{margin:var(--space-2xs) 0;font-family:var(--font-display);font-size:var(--text-2xl);line-height:1}.module-heading span{color:var(--color-neutral)}.allotment-table,.reservation-list{border-block-start:var(--rule-thin) solid var(--color-rule);background:var(--color-surface)}.allotment-row{border-block-end:var(--rule-thin) solid var(--color-rule-2);grid-template-columns:minmax(12rem,2fr) repeat(7,minmax(3rem,.55fr));align-items:stretch;display:grid}.allotment-row>*{min-height:4.25rem;padding:var(--space-xs);border-inline-end:var(--rule-thin) solid var(--color-rule-2);text-align:center;font-variant-numeric:tabular-nums;place-items:center;display:grid}.allotment-row>:first-child{text-align:start;justify-items:start}.allotment-row small{color:var(--color-muted)}.allotment-row span[data-low=true]{color:var(--color-error);background:var(--color-paper-2);font-weight:700}.allotment-header{color:var(--color-muted);font-size:var(--text-xs)}.reservation-filter{gap:var(--space-sm);align-items:end;margin-block-end:var(--space-xl);display:grid}.reservation-filter .field-control{background:var(--color-surface)}.reservation-row{gap:var(--space-sm);padding:var(--space-md);border-block-end:var(--rule-thin) solid var(--color-rule-2);font-size:var(--text-sm);font-variant-numeric:tabular-nums;grid-template-columns:1fr 1.1fr 2fr 1fr 1fr 1fr;align-items:center;display:grid}.reservation-row-head{min-height:3rem;color:var(--color-muted);font-size:var(--text-xs)}.status{padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-round);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-xs);justify-self:start;font-weight:700}.status[data-pending=true]{background:var(--color-accent-soft);color:var(--color-ink-2)}.demo-caption{color:var(--color-muted);font-size:var(--text-xs)}.foot-line{min-height:4rem;margin-inline:clamp(var(--space-md), 4vw, var(--space-xl));padding-block:var(--space-md);gap:var(--space-xs);border-block-start:var(--rule-thin) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-xs);flex-direction:column;display:flex}.foot-line span:first-child{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-md);font-weight:700}.command-dialog{z-index:var(--z-modal);width:100%;max-width:none;height:100%;max-height:none;color:var(--color-ink);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0}.dialog-backdrop{background:var(--color-overlay);border:0;width:100%;height:100%;position:fixed;inset:0}.command-panel{z-index:var(--z-raised);width:min(100% - 2rem,38rem);margin:var(--space-3xl) auto 0;border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:0 1rem 3rem var(--color-shadow);animation:dialog-in var(--dur-short) var(--ease-out) both;position:relative;overflow:clip}.command-search{align-items:center;gap:var(--space-sm);min-height:4rem;padding-inline:var(--space-md);border-block-end:var(--rule-thin) solid var(--color-rule-2);display:flex}.command-search input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:0;flex:1}.command-results{padding:var(--space-sm)}.command-results>p{margin:var(--space-xs);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.command-results button{align-items:center;gap:var(--space-sm);border-radius:var(--radius-sm);width:100%;min-height:3rem;color:var(--color-ink);padding-inline:var(--space-sm);text-align:start;background:0 0;border:0;grid-template-columns:auto 1fr auto;display:grid}.command-results button small{color:var(--color-muted)}.reveal{animation:page-in var(--dur-long) var(--ease-out) both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dialog-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (hover:hover) and (pointer:fine){.nav-link:hover{color:var(--color-ink)}.command-trigger:hover,.staff-menu:hover,.mobile-menu-button:hover,.field-control:hover{background:var(--color-paper-2)}.search-button:hover,.continue-button:hover,.select-room:hover,.module-heading>button:hover,.empty-state button:hover{background:var(--color-accent-soft);transform:translateY(-1px)}.quiet-button:hover{color:var(--color-ink);border-block-end-color:var(--color-accent)}.command-results button:hover{background:var(--color-paper-2)}}@media (width>=40rem){.search-intro{grid-template-columns:minmax(0,1.1fr) minmax(16rem,.9fr);align-items:end}.search-lede{place-self:end}.search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.field-destination{grid-column:1/-1}.search-button{align-self:end}.hotel-card{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}.room-row{grid-template-columns:minmax(11rem,1fr) minmax(10rem,1.2fr)}.rate-block{align-items:flex-end}.select-room{width:auto}.reservation-filter{grid-template-columns:minmax(15rem,2fr) minmax(12rem,1fr) auto}.foot-line{flex-direction:row;justify-content:space-between;align-items:center}}@media (width>=60rem){.search-button{align-self:end}.header-inner{grid-template-columns:1fr auto 1fr}.desktop-nav{display:flex}.header-actions{gap:var(--space-sm)}.command-trigger,.staff-menu{display:inline-flex}.mobile-menu-button,.mobile-nav{display:none}.search-form{grid-template-columns:minmax(16rem,1.7fr) repeat(3,minmax(9.5rem,1fr)) minmax(7rem,.65fr) auto}.field-destination{grid-column:auto}.content-grid:has(.booking-summary){grid-template-columns:minmax(0,1fr) minmax(19rem,.34fr)}.booking-summary{position:sticky;inset-block-start:6rem}.room-row{grid-template-columns:minmax(10rem,1fr) minmax(13rem,1.5fr) auto auto}}@media (width>=78rem){.search-form{grid-template-columns:minmax(19rem,1.9fr) repeat(3,minmax(10rem,1fr)) minmax(8rem,.65fr) auto}}@media (width<=59.99rem){.allotment-table,.reservation-list{overflow-x:auto}.allotment-row{min-width:52rem}.reservation-row{min-width:56rem}}@media (pointer:coarse){button,.field-control,select{min-height:2.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.command-panel{opacity:1;transform:none}}.brand-button{background:0 0;border:0;justify-self:start;padding:0}.brand-button .brand{display:inline-flex}.nav-link{align-items:center;gap:var(--space-xs);display:inline-flex}.icon-button{border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-sm);min-width:2.75rem;min-height:2.75rem;color:var(--color-neutral);background:0 0;place-items:center;display:grid}.auth-page{min-height:100dvh;padding:var(--space-lg);background:var(--color-navy);place-items:center;display:grid}.auth-card{width:min(100%,29rem);padding:clamp(var(--space-lg), 5vw, var(--space-xl));border:var(--rule-thin) solid var(--color-navy-raised);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:0 1.5rem 4rem oklch(8% .025 251/.28)}.auth-card .brand{margin-block-end:var(--space-xl);display:inline-flex}.auth-card .eyebrow{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;margin:0}.auth-card h1{margin:var(--space-xs) 0;font-family:var(--font-display);font-size:var(--text-2xl);line-height:1}.auth-card>p:not(.eyebrow){color:var(--color-neutral)}.auth-card form{gap:var(--space-md);margin-block-start:var(--space-lg);display:grid}.auth-card label,.user-create label{gap:var(--space-xs);color:var(--color-neutral);font-size:var(--text-sm);font-weight:600;display:grid}.auth-card input,.user-create input,.user-create select{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;min-height:3.25rem;color:var(--color-ink);padding-inline:var(--space-sm)}.form-error{color:var(--color-error);font-size:var(--text-sm);margin:0}.loading-state{min-height:8rem;color:var(--color-neutral);background:linear-gradient(100deg, var(--color-paper-2), var(--color-surface), var(--color-paper-2));background-size:220% 100%;place-items:center;animation:1.4s linear infinite loading-sheen;display:grid}@keyframes loading-sheen{to{background-position-x:-220%}}.error-state{gap:var(--space-xs);margin-block:var(--space-md);padding:var(--space-md);border-inline-start:3px solid var(--color-error);background:var(--color-surface);color:var(--color-neutral);display:grid}.error-state strong{color:var(--color-error)}.error-state button{border:0;border-block-end:var(--rule-thin) solid currentColor;color:var(--color-ink);padding:var(--space-xs) 0;background:0 0;justify-self:start}.availability-badge{padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-round);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-xs);font-weight:700}.hotel-rate{justify-content:space-between;align-items:baseline;gap:var(--space-md);border-block-start:var(--rule-thin) solid var(--color-rule-2);padding-block-start:var(--space-md);display:flex}.hotel-rate span{color:var(--color-muted);font-size:var(--text-sm)}.hotel-rate strong{font-family:var(--font-display);font-size:var(--text-lg)}.room-options{gap:var(--space-sm);display:grid}.room-option{gap:var(--space-md);padding:var(--space-md);border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-sm);background:var(--color-paper);display:grid}.room-option h4{font-family:var(--font-display);font-size:var(--text-md);margin:0}.room-option p{margin:var(--space-2xs) 0 0;color:var(--color-muted);font-size:var(--text-xs)}.room-option>button,.user-row>button,.user-actions button,.password-reset>button{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);min-height:2.75rem;color:var(--color-ink);padding-inline:var(--space-sm);background:0 0}.detail-panel h3{margin:var(--space-lg) 0 var(--space-sm);color:var(--color-accent);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.daily-rates,.policy-list{margin:0;padding:0;list-style:none;display:grid}.daily-rates li{justify-content:space-between;gap:var(--space-md);padding-block:var(--space-xs);border-block-end:var(--rule-thin) solid var(--color-navy-raised);font-size:var(--text-sm);display:flex}.policy-list{gap:var(--space-sm)}.policy-list li{gap:var(--space-2xs);color:var(--color-paper-3);font-size:var(--text-xs);display:grid}.policy-list strong{color:var(--color-paper)}.user-create,.password-reset{gap:var(--space-md);padding:var(--space-lg);border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-md);background:var(--color-surface);margin-block-end:var(--space-xl);display:grid}.password-reset>div{display:grid}.password-reset>div span{color:var(--color-muted);font-size:var(--text-sm)}.password-reset label{gap:var(--space-xs);color:var(--color-neutral);font-size:var(--text-sm);display:grid}.password-reset input{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);min-height:3.25rem;padding-inline:var(--space-sm)}.user-list{border-block-start:var(--rule-thin) solid var(--color-rule);display:grid}.user-row{gap:var(--space-md);padding-block:var(--space-md);border-block-end:var(--rule-thin) solid var(--color-rule-2);align-items:center;display:grid}.user-row>div{display:grid}.user-row>div span{color:var(--color-muted);font-size:var(--text-sm)}.user-row select{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);min-height:2.75rem;padding-inline:var(--space-sm)}.user-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex!important}@media (width>=40rem){.room-option{grid-template-columns:minmax(12rem,1fr) auto auto;align-items:center}.user-create{grid-template-columns:repeat(2,minmax(0,1fr))}.password-reset{grid-template-columns:minmax(14rem,1fr) minmax(12rem,.7fr) auto auto;align-items:end}.user-create .search-button{align-self:end}.user-row{grid-template-columns:minmax(13rem,1fr) 8rem 8rem auto}.hotel-card:not(:has(.hotel-image)){grid-template-columns:1fr}}
