:root{color-scheme:light;--oxblood: #480f1a;--oxblood-dark: #2c0810;--midnight: #0f1d2d;--midnight-deep: #08111d;--gold: #c59a4b;--gold-light: #d2a252;--sand: #f1e9dc;--cream: #f7f3eb;--cream-dark: #eadfcd;--surface: #fffdf8;--surface-warm: #fffaf1;--ink: #15110f;--muted: #6f665b;--rule: #d8c8ad;--display: "Cinzel", Georgia, serif;--body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--body);color:var(--ink);background:var(--cream);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-width:320px;min-height:100%;scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold-light);outline-offset:3px}h1,h2,h3,p{margin-top:0}.page-shell,.landing-page{min-height:100vh;background:var(--cream)}.landing-page{color-scheme:dark;--oxblood: #d2a252;--oxblood-dark: #f0d49a;--midnight: #08111d;--midnight-deep: #070d15;--gold: #d2a252;--gold-light: #f0d49a;--sand: #1f1b17;--cream: #0d1622;--cream-dark: #151e2b;--surface: #121c2a;--surface-warm: #0a121d;--ink: #f4ecdf;--muted: #c4b8a9;--rule: #3a3128;--filled-accent: #4a101a;--filled-accent-text: #f7f3eb;--filled-accent-hover-bg: #121c2a;--filled-accent-hover-text: #d2a252;color:var(--ink)}.landing-page .brand,.landing-page .top-stripe,.landing-page .app-hero h1{color:var(--ink)}.landing-page .button{min-height:auto;padding:1rem 2.5rem;border-width:2px;font-size:.8rem;font-weight:600;letter-spacing:.25em}.landing-page .button-primary{border-color:var(--filled-accent);background:var(--filled-accent);color:var(--filled-accent-text)}.landing-page .button-primary:hover{background:var(--filled-accent-hover-bg);color:var(--filled-accent-hover-text)}.top-stripe{padding:.5rem 1rem;border-bottom:3px double var(--gold);background:var(--midnight);color:var(--cream);text-align:center;font-size:.75rem;font-weight:500;letter-spacing:.25em;text-transform:uppercase}.site-header,.admin-header{width:min(1200px,calc(100% - 2rem));min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:2rem;margin:0 auto;border-bottom:1px solid var(--rule)}.brand{display:inline-flex;align-items:center;gap:.85rem;color:var(--midnight);text-decoration:none}.brand img{display:block;flex:0 0 auto}.brand-copy{display:block;font-family:var(--display);font-size:1.15rem;font-weight:700;letter-spacing:.16em;line-height:1;text-transform:uppercase}.brand-copy small{display:block;margin-top:.28rem;color:var(--muted);font-family:var(--body);font-size:.5rem;font-weight:700;letter-spacing:.28em}.site-header nav{display:flex;align-items:center;gap:1.7rem}.site-header nav a,.admin-user button{color:var(--oxblood);text-decoration:none;font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.site-header nav a:hover{color:var(--gold)}.app-hero{min-height:min(760px,calc(100vh - 126px));display:grid;place-items:center;padding:clamp(5rem,11vw,9rem) 1.5rem;background:linear-gradient(180deg,#070d153d,#070d15c7),radial-gradient(circle at 50% 32%,#480f1a3d,#070d1561 58%,#070d15e0),var(--hero-image) center center / cover no-repeat,var(--midnight-deep);color:var(--cream);text-align:center}.hero-content{width:min(920px,100%)}.eyebrow{margin-bottom:1rem;color:var(--gold-light);font-size:.75rem;font-weight:800;letter-spacing:.32em;text-transform:uppercase}.eyebrow.dark{color:var(--oxblood)}.app-hero h1{max-width:980px;margin:0 auto;color:var(--cream);font-family:var(--display);font-size:clamp(3.3rem,10vw,7.8rem);font-weight:600;letter-spacing:.035em;line-height:.9;text-shadow:0 2px 24px rgba(0,0,0,.42);text-transform:uppercase}.hero-copy{max-width:720px;margin:1.7rem auto 0;color:#f7f3ebdb;font-size:clamp(1.05rem,2vw,1.3rem)}.button-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem;margin-top:2rem}.button-row.left{justify-content:flex-start}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1rem;border:1px solid var(--gold);border-radius:0;cursor:pointer;font-size:.72rem;font-weight:800;letter-spacing:.15em;line-height:1.2;text-decoration:none;text-transform:uppercase}.button:disabled{cursor:wait;opacity:.58}.button-primary{background:var(--gold-light);color:var(--midnight-deep)}.button-primary:hover{background:var(--cream)}.button-secondary{border-color:#f7f3ebb8;background:#07111e5c;color:var(--cream)}.button-secondary:hover{border-color:var(--gold-light);color:var(--gold-light)}.button-dark{background:var(--oxblood);color:var(--cream)}.button-dark:hover{background:var(--midnight)}.button-outline{border-color:var(--oxblood);background:transparent;color:var(--oxblood)}.button-outline:hover{background:var(--sand)}.content-page,.guide-fallback,.narrow-page,.admin-main{width:min(1120px,calc(100% - 2rem));margin:0 auto}.page-intro{max-width:760px}.page-intro h1,.guide-ticket h1,.panel h1,.admin-intro h1{margin-bottom:1rem;color:var(--midnight);font-family:var(--display);font-size:clamp(2.35rem,7vw,4.8rem);font-weight:600;letter-spacing:.025em;line-height:.98;text-transform:uppercase}.page-intro>p,.admin-intro>p:last-child{color:var(--muted);font-size:1.05rem}.site-footer{padding:3.25rem 1rem;border-top:3px double var(--gold);background:var(--midnight);color:#f7f3ebbf;text-align:center}.footer-kicker{color:var(--gold-light);font-size:.7rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase}.footer-brandline{margin:.65rem 0 1rem;color:var(--cream);font-family:var(--display);font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase}.site-footer nav{display:flex;justify-content:center;gap:1.25rem;margin-bottom:1.25rem}.site-footer nav a{color:var(--cream);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.site-footer p:not(.footer-brandline){max-width:760px;margin:.38rem auto;font-size:.76rem}.narrow-page{max-width:680px;padding:clamp(4rem,10vw,8rem) 0}.panel{padding:clamp(1.6rem,5vw,2.6rem);border:1px solid var(--rule);background:var(--surface);box-shadow:0 24px 70px #0f1d2d1c}.panel h1{font-size:clamp(2.2rem,7vw,3.8rem)}.panel>p:not(.eyebrow){color:var(--muted)}.signin-form{display:grid;gap:.75rem;margin-top:1.7rem}.signin-form label,.search-field span,.large-search span{color:var(--midnight);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.signin-form input,.search-field input,.large-search input{width:100%;min-height:50px;border:1px solid var(--rule);border-radius:0;background:#fff;color:var(--ink);padding:.75rem .9rem}.form-message{margin:1rem 0 0;color:var(--oxblood)!important;font-weight:700}.text-link{color:var(--oxblood);font-weight:800;text-underline-offset:.22rem}.status-panel .button{margin-top:1rem}.content-page{padding:clamp(4rem,9vw,7rem) 0}.page-intro{margin-bottom:3rem}.large-search{display:grid;gap:.55rem;margin-top:2rem}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.guide-card{min-height:230px;display:flex;flex-direction:column;padding:1.5rem;border:1px solid var(--rule);background:var(--surface);color:inherit;text-decoration:none;transition:border-color .16s ease,transform .16s ease}.guide-card:hover{transform:translateY(-3px);border-color:var(--gold)}.airport-code{color:var(--gold);font-family:var(--display);font-size:1.25rem;font-weight:700;letter-spacing:.08em}.guide-card h2{margin:2.1rem 0 .2rem;color:var(--midnight);font-family:var(--display);font-size:1.4rem;line-height:1.1}.guide-card p{color:var(--muted)}.card-action{margin-top:auto;color:var(--oxblood);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.guide-fallback{padding:clamp(4rem,10vw,8rem) 0}.guide-ticket{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);border:1px solid var(--rule);background:var(--surface);box-shadow:0 28px 80px #0f1d2d1f}.ticket-code{min-height:480px;display:grid;place-items:center;border-right:3px double var(--gold);background:linear-gradient(180deg,#480f1ad1,#08111df0),url(https://media.layover.tips/site/home/briefing-room-hero-2026-05-20.jpg) center / cover;color:var(--cream);font-family:var(--display);font-size:clamp(3.2rem,9vw,6.2rem);font-weight:700;letter-spacing:.08em;writing-mode:vertical-rl;transform:rotate(180deg)}.ticket-copy{align-self:center;padding:clamp(2rem,6vw,4rem)}.ticket-copy>p:not(.eyebrow,.route-note){color:var(--muted)}.guide-location{margin-top:-.5rem;color:var(--oxblood)!important;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.route-note{margin:2rem 0 0;color:var(--muted);font-size:.75rem}code{overflow-wrap:anywhere;color:var(--oxblood);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.admin-shell{min-height:100vh;background:#f4efe6}.admin-header{width:100%;padding:0 1.5rem;background:var(--surface)}.admin-user{display:flex;align-items:center;gap:1rem;color:var(--muted);font-size:.78rem}.admin-user button,.guide-row button,.guide-row a{min-height:36px;padding:.45rem .7rem;border:1px solid var(--rule);border-radius:0;background:transparent;color:var(--oxblood);cursor:pointer;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.admin-user button:hover,.guide-row button:hover,.guide-row a:hover{border-color:var(--gold)}.admin-main{padding:3.5rem 0 5rem}.admin-intro h1{font-size:clamp(2.4rem,6vw,4.4rem)}.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}.status-card{position:relative;min-height:160px;padding:1.25rem;border:1px solid var(--rule);background:var(--surface)}.status-dot{width:9px;height:9px;margin-bottom:1.5rem;border-radius:50%;background:var(--warm-gray, #8d857a);box-shadow:0 0 0 4px #8d857a1f}.status-dot.ready{background:#377d5b;box-shadow:0 0 0 4px #377d5b1f}.status-card p{margin-bottom:.2rem;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.status-card strong{display:block;color:var(--midnight);font-size:1rem}.status-card>span{display:block;margin-top:.4rem;color:var(--oxblood);font-size:.68rem;font-weight:700}.admin-section{margin-top:3.5rem;padding:1.5rem;border:1px solid var(--rule);background:var(--surface)}.admin-section-heading{display:grid;grid-template-columns:1fr minmax(260px,380px);gap:2rem;align-items:end;padding-bottom:1.5rem;border-bottom:1px solid var(--rule)}.admin-section-heading h2{margin:0;color:var(--midnight);font-family:var(--display);font-size:2rem;letter-spacing:.04em;text-transform:uppercase}.admin-section-heading .eyebrow{margin-bottom:.45rem}.search-field{display:grid;gap:.4rem}.guide-table{display:grid}.guide-row{display:grid;grid-template-columns:68px minmax(150px,1fr) minmax(180px,1.4fr) auto;gap:1rem;align-items:center;min-height:76px;border-bottom:1px solid var(--rule)}.guide-name{display:grid}.guide-name strong{color:var(--midnight)}.guide-name span{color:var(--muted);font-size:.76rem}.row-actions{display:flex;gap:.4rem}.empty-state,.table-note{color:var(--muted)}.empty-state{padding:2rem 0}.table-note{margin:1rem 0 0;font-size:.74rem}.prose-panel p{font-size:1rem}@media(max-width:900px){.guide-grid,.status-grid{grid-template-columns:repeat(2,1fr)}.admin-section-heading{grid-template-columns:1fr}.guide-row{grid-template-columns:58px 1fr auto}.guide-row code{display:none}}@media(max-width:680px){.top-stripe{font-size:.62rem;letter-spacing:.16em}.site-header,.admin-header{min-height:74px}.site-header{gap:.75rem}.site-header nav{gap:.6rem}.site-header nav a{font-size:.62rem;letter-spacing:.1em;text-align:right}.brand img{width:45px;height:auto}.brand-copy{font-size:.9rem;letter-spacing:.1em}.brand-copy small{font-size:.44rem;letter-spacing:.18em}.app-hero{min-height:650px;padding-top:5.5rem;align-items:start}.app-hero h1{font-size:clamp(3rem,15vw,4.7rem)}.guide-grid,.status-grid,.guide-ticket{grid-template-columns:1fr}.ticket-code{min-height:150px;border-right:0;border-bottom:3px double var(--gold);writing-mode:horizontal-tb;transform:none}.button-row.left .button{width:100%}.admin-header{align-items:center;padding:0 1rem}.admin-user span{display:none}.admin-main{padding-top:2.5rem}.admin-section{padding:1rem}.guide-row{grid-template-columns:48px minmax(0,1fr);padding:.8rem 0}.row-actions{grid-column:1 / -1;padding-left:48px}.guide-row button,.guide-row a{flex:1;text-align:center}.site-footer nav{flex-wrap:wrap}}
