:root{--ink:#071a33;--navy:#102f57;--blue:#155eef;--blue-soft:#eaf2ff;--sky:#f5f8fc;--muted:#64748b;--line:#dbe4ee;--white:#ffffff;--success:#198754;--warning:#d97706;--danger:#c2413b;--shadow:0 20px 55px rgba(7,26,51,0.08)}*{box-sizing:border-box}html{background:var(--sky)}body{margin:0;min-height:100vh;background:radial-gradient(circle at 85% 0,rgba(21,94,239,.09),transparent 30rem),linear-gradient(180deg,#ffffff 0,var(--sky) 68%);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}.app-frame{min-height:100vh;display:flex;flex-direction:column}.topbar{min-height:74px;padding:0 clamp(22px,5vw,72px);display:flex;justify-content:space-between;gap:32px;border-bottom:1px solid rgba(219,228,238,.9);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:-webkit-sticky;position:sticky;top:0;z-index:10}.brand,.topbar{align-items:center}.brand{display:inline-flex;gap:11px;text-decoration:none;font-weight:850;letter-spacing:.13em;font-size:14px}.brand-logo{width:34px;height:34px;display:block;flex:0 0 auto;object-fit:contain}.topnav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:700;color:#52647d}.topnav a{text-decoration:none}.topnav a:hover{color:var(--blue)}.page-shell{width:min(1180px,calc(100% - 44px));margin:0 auto;padding:clamp(58px,8vw,104px) 0 80px;flex:1 1}.page-hero{max-width:900px;margin-bottom:52px}.card-label,.eyebrow{margin:0 0 14px;color:var(--blue);font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.page-hero h1{margin:0;max-width:850px;font-size:clamp(42px,7vw,72px);line-height:.98;letter-spacing:-.055em}.hero-copy{max-width:780px;margin:24px 0 0;color:#53627a;font-size:clamp(18px,2vw,21px);line-height:1.6}.grid-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.panel,.route-card{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:var(--shadow)}.route-card{padding:30px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.route-card:hover{transform:translateY(-3px);border-color:#b7cdf8;box-shadow:0 24px 66px rgba(7,26,51,.12)}.panel h2,.route-card h2{margin:0 0 12px;font-size:24px;letter-spacing:-.035em}.panel p,.route-card p{margin:0;color:var(--muted);line-height:1.65}.card-link{display:inline-block;margin-top:25px;color:var(--blue);font-weight:800;font-size:14px}.panel{padding:clamp(26px,4vw,38px)}.status-panel{margin-top:18px;display:grid;grid-template-columns:1.25fr .75fr;grid-gap:36px;gap:36px;align-items:center}.status-stack{padding:22px;border-radius:18px;background:#f7faff;border:1px solid #e1eafa}.status-row{display:flex;align-items:center;gap:11px;color:#334155}.status-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.status-dot-pending{background:var(--warning)}.status-dot-ready{background:var(--success);box-shadow:0 0 0 4px rgba(25,135,84,.11)}.status-dot-error{background:var(--danger)}.status-details{margin:20px 0 0;display:grid;grid-gap:12px;gap:12px}.status-details div{display:flex;justify-content:space-between;gap:24px;padding-top:12px;border-top:1px solid #e1eafa}.status-details dt{color:var(--muted)}.status-details dd{margin:0;font-weight:750}.placeholder-panel{max-width:780px}.placeholder-panel h2{font-size:clamp(28px,4vw,38px)}.footer{margin-top:auto;padding:24px clamp(22px,5vw,72px);border-top:1px solid var(--line);color:#738096;font-size:12px;display:flex;justify-content:space-between;gap:20px;background:rgba(255,255,255,.75)}@media (max-width:840px){.topnav{display:none}.grid-layout,.status-panel{grid-template-columns:1fr}.page-shell{width:min(100% - 32px,1180px)}.footer{flex-direction:column}}.auth-page{min-height:100vh;width:min(1080px,calc(100% - 32px));margin:0 auto;padding:clamp(48px,8vw,96px) 0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:clamp(36px,8vw,96px);gap:clamp(36px,8vw,96px);align-items:center}.auth-brand{max-width:620px;display:grid;grid-gap:24px;gap:24px}.auth-brand>.brand-logo{width:48px;height:48px}.access-panel h1,.auth-brand h1{margin:0;font-size:clamp(38px,6vw,66px);line-height:1;letter-spacing:-.05em}.access-panel>p:last-of-type,.auth-brand p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.65}.account-control{display:flex;align-items:center}.access-panel{max-width:760px}.access-actions{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:14px}@media (max-width:760px){.auth-page{grid-template-columns:1fr;align-items:start}}.admin-stack{display:grid;grid-gap:22px;gap:22px}.admin-agency{display:grid;grid-gap:28px;gap:28px}.admin-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.admin-block h3,.admin-heading h2,.seat-section h3{margin:0}.status-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.status-chips span{border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:#f8fafc;color:#475569;font-size:12px;font-weight:800}.status-chips .chip-warning{border-color:#fed7aa;background:#fff7ed;color:#9a3412}.status-chips .chip-ready{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.admin-block{border:1px solid var(--line);border-radius:18px;padding:22px;background:#fbfdff}.admin-block h3,.seat-section h3{margin-bottom:18px;font-size:18px}.admin-value{margin-bottom:14px!important;color:var(--ink)!important;font-weight:800}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:end}.form-grid.compact{grid-template-columns:1fr 1fr}.form-field{display:grid;grid-gap:7px;gap:7px;min-width:0}.form-field.grow{flex:1 1}.form-field span{color:#475569;font-size:12px;font-weight:800}.form-field input,.form-field select{width:100%;min-height:42px;border:1px solid #cbd5e1;border-radius:11px;padding:9px 11px;background:white;color:var(--ink);font:inherit}.form-actions{display:flex;align-items:end}button{min-height:42px;border:0;border-radius:11px;padding:9px 15px;background:var(--blue);color:white;font:inherit;font-weight:800;cursor:pointer}button:hover{filter:brightness(.95)}.button-secondary{min-height:34px;padding:6px 10px;background:white;color:#334155;border:1px solid #cbd5e1;font-size:12px}.button-row,.inline-form{display:flex;gap:10px;align-items:end}.inline-form.seat-assign{min-width:300px}.inline-form.seat-assign input{min-height:36px;border:1px solid #cbd5e1;border-radius:9px;padding:7px 9px}.inline-form.seat-assign button{min-height:36px;padding:7px 11px}.form-note{margin-top:12px!important;color:#738096!important;font-size:12px}.admin-details{margin:0;display:grid;grid-gap:10px;gap:10px}.admin-details.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-details div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #e8eef5}.admin-details dt{color:var(--muted)}.admin-details dd{margin:0;font-weight:800;text-align:right}.seat-section{display:grid;grid-gap:8px;gap:8px}.table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;min-width:680px}.admin-table td,.admin-table th{padding:13px 11px;border-bottom:1px solid #e8eef5;text-align:left;vertical-align:middle;font-size:13px}.admin-table th{color:#64748b;font-size:11px;letter-spacing:.08em;text-transform:uppercase}@media (max-width:840px){.admin-heading,.button-row,.inline-form{align-items:stretch;flex-direction:column}.status-chips{justify-content:flex-start}.admin-details.two-column,.admin-grid,.form-grid,.form-grid.compact{grid-template-columns:1fr}}.admin-action-row{margin-top:14px}.sabre-credential-form{margin-top:20px}