.airline-demo{--surface:#fff;--soft:#edf2ed;--danger:#86352d;--danger-bg:#fff3ef;color-scheme:light dark}.airline-demo main{max-width:960px}.intro-copy{padding:25px 0 14px}.intro-copy h1{font-size:clamp(36px,6vw,60px)}.demo-notice{border-left:3px solid var(--gold);background:var(--soft);padding:16px 20px;border-radius:0 10px 10px 0;font-size:14px;margin:16px 0 25px}.demo-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0}.demo-controls fieldset{display:flex;gap:18px;margin:0}.demo-controls legend{font-size:13px;color:var(--muted);margin-bottom:8px}.demo-controls label{display:flex;gap:8px;align-items:center}.screen{background:var(--surface);margin-bottom:25px}.screen h2:focus{outline:0}.section-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.pill{display:inline-block;background:var(--soft);border:1px solid var(--line);padding:5px 12px;border-radius:24px;font-size:12px}.route{display:flex;align-items:center;gap:35px;border-block:1px solid var(--line);padding:26px 0;margin:25px 0}.route strong{display:block;font:40px Georgia,serif}.route span{display:block;font-size:14px;color:var(--muted)}.route>span{font-size:26px;color:var(--gold)}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 30px;margin-bottom:28px}.booking-grid dt{text-transform:uppercase;letter-spacing:.07em;font-size:11px;color:var(--muted)}.booking-grid dd{font-size:16px}.handoff-card,.upgrade{border:1px solid var(--line);border-top:3px solid var(--gold);padding:24px;background:var(--soft);border-radius:10px;margin-bottom:24px}.handoff-card h3{font:28px Georgia,serif}.actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:24px}.text-button{background:none;color:var(--teal);text-decoration:underline;padding:10px 0}.text-button:hover{background:none}.airline-demo .field input{background:var(--surface);color:var(--ink)}.airline-demo .hint{margin-top:8px}.airline-demo .choices label{background:var(--soft)}.screen fieldset legend{font-weight:650;margin-bottom:18px}.stop{background:var(--danger-bg);border:1px solid var(--danger);border-left:4px solid var(--danger);color:var(--danger);padding:16px;border-radius:8px;margin-top:20px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.plan-grid h3{font-size:17px;margin:15px 0 8px}.plan-grid p{font-size:14px}.privacy{background:var(--surface)}.privacy p,.rules li{font-size:14px}.rules{background:var(--surface);padding:22px}.rules li{padding:7px 0}.airline-demo dialog{max-width:610px;width:calc(100% - 32px);max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:30px;background:var(--surface);color:var(--ink)}dialog::backdrop{background:rgba(10,26,31,.65)}.airline-demo button:disabled{opacity:.45;cursor:not-allowed}.airline-demo .site-header img{border-radius:6px}.airline-demo :focus-visible{outline:3px solid var(--gold);outline-offset:4px}.airline-demo input{color-scheme:light}.airline-demo .tag{color:var(--ink);background:var(--soft)}
@media(prefers-color-scheme:dark){.airline-demo:not([data-theme="light"]){--ink:#edf1ed;--teal:#9dd3c4;--gold:#cbb278;--paper:#10242c;--line:#3d555b;--muted:#bdcac9;--surface:#193039;--soft:#213e44;--danger:#ffc3b6;--danger-bg:#442e30}.airline-demo:not([data-theme="light"]) button:not(.secondary):not(.text-button){background:#9dd3c4;color:#10242c}.airline-demo:not([data-theme="light"]) .secondary{background:var(--soft);color:var(--ink);border-color:var(--line)}.airline-demo:not([data-theme="light"]) input{color-scheme:dark}.airline-demo:not([data-theme="light"]) .site-header img{background:#f7f4ef}.airline-demo:not([data-theme="light"]) a{color:var(--teal)}}
.airline-demo[data-theme="dark"]{--ink:#edf1ed;--teal:#9dd3c4;--gold:#cbb278;--paper:#10242c;--line:#3d555b;--muted:#bdcac9;--surface:#193039;--soft:#213e44;--danger:#ffc3b6;--danger-bg:#442e30}.airline-demo[data-theme="dark"] button:not(.secondary):not(.text-button){background:#9dd3c4;color:#10242c}.airline-demo[data-theme="dark"] .secondary{background:var(--soft);color:var(--ink);border-color:var(--line)}.airline-demo[data-theme="dark"] input{color-scheme:dark}.airline-demo[data-theme="dark"] .site-header img{background:#f7f4ef}.airline-demo[data-theme="dark"] a{color:var(--teal)}
@media(max-width:650px){.demo-controls{align-items:flex-start;gap:12px}.demo-controls>button{font-size:13px;padding:10px}.section-top{display:block}.route{gap:18px}.route strong{font-size:32px}.route div{flex:1;min-width:0}.route span{font-size:12px}.booking-grid,.plan-grid{grid-template-columns:1fr}.actions{flex-direction:column}.actions button{width:100%}.airline-demo dialog{padding:22px}.intro-copy{padding-top:5px}.booking-grid dd{overflow-wrap:anywhere}.demo-controls fieldset{gap:12px}}

.appearance{font-size:13px;color:var(--muted)}.appearance select{display:block;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:6px 10px}.demo-controls{flex-wrap:wrap}.screen h2{scroll-margin-top:20px}
.airline-demo .field select{background:var(--surface);color:var(--ink)}.demo-settings{margin:30px 0}.demo-settings summary{color:var(--muted);font-size:14px}.airline-demo #questionnaire{background:transparent}.airline-demo #questionnaire .card{background:var(--surface)}.airline-demo #questionnaire .leg,.airline-demo .vaccine-detail{background:var(--soft)}.airline-demo #generatedPlan{background:transparent}.airline-demo #generatedPlan .report-section{background:var(--surface)}.airline-demo #generatedPlan .advice-card,.airline-demo #generatedPlan .route-summary,.airline-demo #generatedPlan .report-readiness,.airline-demo #generatedPlan .report-sources,.airline-demo #generatedPlan .report-disclaimer{background:var(--soft)}.airline-demo #generatedPlan .vaccine-table td{background:var(--surface);color:var(--ink)}.airline-demo .report-readiness svg text{fill:var(--ink)}.airline-demo .report-sources a{overflow-wrap:anywhere}
.airline-demo .choices label:has(input:checked){background:var(--soft);outline:1px solid var(--teal)}.airline-demo .advice-card .reason{color:var(--teal)}

.blood-pressure-advice{grid-column:1 / -1}.blood-pressure-advice .report-list{font-size:14px}.blood-pressure-advice .report-list li{padding:6px 0}
