/* FlightPulse: an operational aviation workspace. Existing controls retain their IDs and behavior. */
:root,:root[data-theme=dark]{--fp-ink:#071c2e;--fp-cyan:#56d8e9;--fp-blue:#246cfa;--fp-amber:#f8bb4b;--bg:#091725;--surface:#102434;--surface2:#132c3f;--surface3:#1b3b50;--border:#355369;--text:#edf6fc;--muted:#b9cddb;--dim:#9bb7ca;--accent:#64c9ff;--accent-text:#061d32;--accent-line:#408caf;--green:#52d1bc;--green-text:#052b28;--danger:#ffc17c;--soft-blue:#173b58;--soft-green:#133d3a;--soft-amber:#483b24;--shadow:0 16px 60px #0005;--aviation-shadow:none}
:root[data-theme=light]{--bg:#e8eef2;--surface:#fff;--surface2:#f1f5f8;--surface3:#dfe9f0;--border:#bdcdd9;--text:#102d43;--muted:#3f5c70;--dim:#516d80;--accent:#1557d6;--accent-text:#fff;--accent-line:#729ed5;--green:#006b61;--green-text:#fff;--danger:#8b4a0c;--soft-blue:#e5efff;--soft-green:#e1f3ee;--soft-amber:#fff0d5;--shadow:0 16px 60px #0c2d421a;--aviation-shadow:none}
body{font-family:var(--font);background:var(--bg);font-size:14px;letter-spacing:.02px}
main{max-width:1700px;padding:0 28px 0;margin:auto}
/* The masthead is deliberately different from the older rounded dashboard. */
.topbar{background:var(--fp-ink);color:#f4f9fd;min-height:76px;height:76px;padding:0 max(28px,calc((100vw - 1644px)/2));border:0;border-bottom:3px solid #1557d6;gap:24px;box-shadow:none}
.brand{color:#f4f9fd;letter-spacing:-1.2px;font-size:27px;gap:11px;flex-shrink:0}
.fp-brandmark{display:flex;align-items:center;justify-content:center;width:37px;height:39px;color:var(--fp-cyan);border-left:2px solid #53daeb;padding-left:3px}
.fp-brandmark svg{width:37px;height:37px;display:block}
.fp-wordmark{font-family:var(--display);font-weight:650;letter-spacing:-1.2px;white-space:nowrap}
.fp-wordmark>span{font-weight:400;color:var(--fp-cyan)}
.main-nav{gap:23px;align-self:stretch;align-items:stretch}
.main-nav a,.main-nav .nav-action{font-size:13px;font-weight:550;color:#c4d5e2;letter-spacing:.1px}
.topbar #feedback-button{color:#c4d5e2}
.main-nav a.active,.main-nav a:hover,.main-nav .nav-action:hover,.topbar #feedback-button:hover{color:#fff}
.main-nav a.active:after{height:3px;background:var(--fp-cyan);border-radius:0;bottom:12px}
.top-actions{gap:8px}
.topbar .language,.topbar .icon-button{color:#d5e5ef}
.topbar .language span{color:#a9c3d5}
.topbar .icon-button:hover,.topbar .language:hover{color:#fff;background:#193c54}
.topbar .separator{background:#31516a}
.topbar #account-button{border:1px solid #4a6d88;color:#fff;background:#173a54;border-radius:3px;min-height:36px;padding:7px 12px}
.topbar #account-button:hover{background:#245173;border-color:#77badf}
.topbar #account-button[data-authenticated=true]:before{background:#53dec3}
.intro{padding:24px 0 20px;align-items:center;gap:24px;border-bottom:1px solid var(--border);margin-bottom:20px}
.intro:before{display:none}
.eyebrow{font-family:var(--display);font-size:10px;letter-spacing:1.55px;font-weight:500;margin-bottom:8px;color:var(--muted)}
.tiny-line{display:none}
.intro h1{font-family:var(--display);font-size:29px;line-height:1.15;font-weight:500;letter-spacing:-1px}
.intro p{font-size:13px;line-height:1.6;margin-top:7px;color:var(--muted)}
.utc{padding:4px 0 4px 25px;border-left:1px solid var(--border);gap:3px;min-width:177px}
.utc-label{font-family:var(--display);font-size:9px;letter-spacing:1px}
.utc strong{font-size:26px;line-height:1.25;letter-spacing:.7px;font-weight:500}
.utc>span:last-child{font-size:11px}
/* Search and selected airport form one compact station header. */
.airport-toolbar{padding:0;margin:0 0 14px;gap:10px;flex-wrap:wrap}
.search-trigger{border-radius:3px;height:43px;min-width:320px;box-shadow:none;font-size:13px;border-color:var(--border);background:var(--surface)}
.search-trigger kbd{font-size:10px;border-radius:2px;background:var(--surface2);border:1px solid var(--border)}
.quick-airports{gap:0;border:1px solid var(--border);background:var(--surface);border-radius:3px;overflow:hidden}
.quick-airports button{height:41px;border:0;border-right:1px solid var(--border);border-radius:0;padding:0 17px;font-size:12px;letter-spacing:.7px;background:none}
.quick-airports button:last-child{border-right:0}
.quick-airports button.active{background:var(--fp-ink);color:#fff;box-shadow:inset 0 -3px var(--fp-cyan)}
.favorites-trigger{font-size:12px;padding:10px 0 10px 12px;color:var(--muted);min-height:41px}
.atc-directory-trigger{margin-left:auto}
#open-favorites{margin-left:5px}
.airport-hero{border-radius:3px;min-height:122px;padding:19px 23px;margin-bottom:0;border:1px solid var(--border);border-bottom:0;box-shadow:none;background:var(--surface);overflow:hidden}
.airport-hero:before{width:5px;background:var(--fp-blue);inset:0 auto 0 0}
.airport-hero:after{content:'';position:absolute;right:0;top:0;width:18%;height:100%;background:repeating-linear-gradient(135deg,transparent 0 16px,color-mix(in srgb,var(--accent) 5%,transparent) 16px 17px);pointer-events:none}
.airport-primary{gap:24px;min-width:0}
.airport-code{font-family:var(--display);font-size:62px;letter-spacing:-3px;font-weight:650;color:var(--text);padding-right:25px;border-right:1px solid var(--border);line-height:1.1}
.airport-copy{min-width:0}
.airport-copy h2{font-size:21px;line-height:1.35;font-weight:600;letter-spacing:-.45px;max-width:850px}
.airport-location{font-size:11px;line-height:1.5;color:var(--muted);margin-bottom:5px;gap:7px}
.country-tag{background:var(--fp-ink);color:#d7effb;border:0;border-radius:2px;font-size:10px;letter-spacing:.8px;padding:2px 6px;margin-left:4px}
.airport-meta{font-size:11px;line-height:1.5;margin-top:8px;gap:6px}
.airport-end{gap:13px;flex-shrink:0}
.airport-hero-controls{gap:6px}
.airport-end .large{border:1px solid var(--border);background:var(--surface2);border-radius:3px;width:34px;height:34px;color:var(--muted)}
.airport-end .large.selected{color:var(--accent);background:var(--soft-blue)}
.airport-end .text-link{font-size:11px}
.runway-art{display:none}
/* The working area has a clear console/radar split rather than equal floating cards. */
.workspace-grid{grid-template-columns:minmax(300px,.68fr) minmax(480px,1.65fr);gap:0;align-items:stretch;border:1px solid var(--border);border-top:3px solid var(--fp-blue);background:var(--surface);margin-bottom:0}
.workspace-grid>.panel{border:0;border-radius:0;box-shadow:none;min-width:0}
.radio-panel{border-right:1px solid var(--border);display:flex;flex-direction:column}
.map-panel{background:var(--surface)}
.panel{border-radius:3px;box-shadow:none;border-color:var(--border)}
.panel-heading{height:auto;min-height:58px;padding:13px 18px;border-bottom:1px solid var(--border);background:var(--surface2);gap:10px}
.panel-heading h2{font-size:14px;font-weight:650;letter-spacing:.1px;line-height:1.4}
.panel-heading h2 .icon{color:var(--accent);stroke-width:1.8}
.badge,.count-badge{border-radius:2px;font-size:10px;letter-spacing:.1px;font-weight:600}
.count-badge{background:var(--fp-ink);color:#d9f4ff;border:0;min-width:24px;text-align:center;padding:3px 6px}
.badge.neutral{background:var(--surface);color:var(--muted)}
.channel-tabs{padding:10px 14px;gap:3px;border-bottom:1px solid var(--border);background:var(--surface);scrollbar-width:thin}
.channel-tabs button{border-radius:2px;padding:8px 9px;font-size:11px;line-height:1.4}
.channel-tabs button.active{background:var(--fp-ink);color:#fff;box-shadow:inset 0 -2px var(--fp-cyan)}
.channel-tabs button:disabled{opacity:.58}
.channel-explanation{font-size:11px;padding:10px 17px;line-height:1.65;border-bottom:1px solid var(--border);margin:0;background:var(--surface2)}
#player-content{padding:19px 18px 0;min-height:350px;flex:1}
.station-title h3{font-family:var(--display);font-size:19px;font-weight:600;letter-spacing:-.5px}
.station-sub{font-size:11px;line-height:1.7;margin-top:5px}
.station-code{border-radius:2px;letter-spacing:1px;font-size:11px}
.radio-empty{padding:18px 0 16px}
.radio-empty h3{font-size:18px;font-weight:600;letter-spacing:-.3px}
.radio-empty p{font-size:13px;line-height:1.75;max-width:340px;margin-left:auto;margin-right:auto}
.radio-empty .empty-icon{border-radius:3px;width:48px;height:48px;background:var(--soft-blue);border-color:var(--accent-line);color:var(--accent)}
.play-stream,#radio .primary-button{background:var(--fp-amber);color:#142b3e;border:1px solid #e0a031;border-radius:3px;box-shadow:none;font-size:13px;min-height:43px}
.play-stream:hover,#radio .primary-button:hover{background:#ffcf73;border-color:#e0a031;color:#142b3e}
.player-splash{border-radius:3px;min-height:245px;background:#081f32;border-color:#274e69}
.radio-footer{padding:13px 17px;border-top:1px solid var(--border);margin-top:15px;font-size:10px;line-height:1.6;background:var(--surface2)}
.radio-footer button{font-size:11px}
.map-wrap{min-height:580px;border-radius:0}
.map-bottom{padding:11px 16px;background:var(--surface2);font-size:11px;border-top:1px solid var(--border);line-height:1.5}
.map-actions{gap:5px;flex-wrap:wrap;justify-content:flex-end}
.map-settings-trigger{border-radius:3px;background:var(--surface);font-size:12px;border-color:var(--accent-line);padding:8px 11px;min-height:36px;color:var(--accent)}
.map-settings-trigger:hover{background:var(--soft-blue)}
.map-actions .icon-button{border-radius:3px}
.map-caption,.map-center,.map-legend,.map-imagery-note,.map-route-legend{border-radius:2px;box-shadow:0 2px 7px #031b2a1c}
.map-caption{font-size:11px;padding:8px 10px;border-left:3px solid var(--green)}
.map-center{font-size:11px;min-height:33px;border:1px solid var(--border)}
.map-settings{border-radius:3px}
.map-settings-heading{border-radius:0}
/* Saved views become a utility drawer immediately under the working area. */
.personal-dashboard{margin:0 0 23px;border:1px solid var(--border);border-top:0;border-radius:0 0 3px 3px;background:var(--surface)}
.pd-details>summary{padding:12px 18px;min-height:51px;background:var(--surface2);border:0;gap:12px}
.pd-summary-title strong{font-size:13px;font-weight:600}
.pd-summary-title>svg{width:17px;height:17px}
.pd-summary-hint{font-size:11px}
.pd-summary-count,.pd-view-option,.pd-airport,.pd-text-button,.pd-remove,.pd-interest-fields input{border-radius:3px}
.pd-summary-count{font-size:11px;background:var(--surface)}
.pd-content{padding:18px}
.pd-view-option{font-size:12px}
/* Supporting information reads like a departure board and weather bulletin. */
.weather-panel{margin-top:22px;border-top:3px solid var(--green);border-radius:3px}
.weather-heading{padding:18px 20px;background:var(--surface);border-bottom:1px solid var(--border)}
.weather-heading h2{font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:-.4px}
.weather-heading h2>svg{color:var(--green)}
.weather-tools{gap:12px}
.weather-observed{font-size:11px;line-height:1.6}
.weather-metrics{background:var(--surface)}
.weather-metric strong{font-family:var(--display);font-size:29px;letter-spacing:-1.1px;font-weight:500;line-height:1.2}
.weather-metric>span,.weather-metric>small{font-size:11px}
.weather-metric-detail{font-family:var(--font);font-size:13px;line-height:1.6}
.weather-unit-select select{border-radius:3px;background:var(--surface2);border-color:var(--border);font-size:11px}
.weather-runway-wind>summary,.weather-advisories>summary,.weather-reports>summary,.weather-forecast>summary{font-size:12px;padding-top:13px;padding-bottom:13px;background:var(--surface2)}
.weather-source{background:var(--surface2);font-size:11px}
.flights-panel{margin-top:23px;border-top:3px solid var(--accent)}
.flights-panel .panel-heading{background:var(--surface)}
.flights-panel .panel-heading h2{font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:-.35px}
.flights-toolbar{background:var(--surface2);padding:0 20px;border-bottom:1px solid var(--border)}
.flight-tabs button{font-size:13px;padding:16px 0}
.flight-tabs button.active:after{height:3px;border-radius:0}
.fw-intro{background:var(--surface);padding:24px 20px}
.fw-copy h3{font-size:17px;font-weight:550;letter-spacing:-.35px}
.fw-copy p{font-size:13px;line-height:1.75}
.fw-copy small{font-size:11px;line-height:1.7}
.fw-load,.fw-close,.fw-links a{border-radius:3px}
.flight-table thead{background:var(--fp-ink);color:#d7e9f5}
.flight-table th{font-size:11px;letter-spacing:1px;font-weight:500;color:inherit;padding-top:14px;padding-bottom:14px}
.flight-table td{font-size:13px;padding-top:15px;padding-bottom:15px}
.flight-table tr:nth-child(even){background:var(--surface2)}
.flights-foot{background:var(--surface2);font-size:11px}
.airport-info-panel{border-top:3px solid var(--border);margin-top:23px}
.airport-reference-details>summary{padding:17px 20px;min-height:75px}
.airfield-summary-icon{border-radius:2px;background:var(--fp-ink);color:var(--fp-cyan)}
.airfield-reference-badge,.airfield-summary-code{border-radius:2px}
.airfield-summary-copy strong{font-family:var(--display);font-weight:500;font-size:17px;letter-spacing:-.35px}
.airfield-table thead{background:var(--surface2)}
.airfield-table td,.airfield-table th{font-size:12px}
.bottom-note{border-bottom:1px solid var(--border);padding:27px 0;gap:14px}
.bottom-note>span[data-icon]{border-radius:3px;background:var(--fp-ink);color:var(--fp-cyan);border:0}
.bottom-note strong{font-size:15px;font-weight:550}
.bottom-note p{font-size:12px}
.primary-button,.outline-button{border-radius:3px;box-shadow:none;font-size:13px;line-height:1.45}
.primary-button{background:var(--accent);color:var(--accent-text)}
.seo-airport-links{border-bottom:1px solid var(--border);font-family:var(--display);font-size:11px!important;padding:18px 0!important;gap:9px 18px!important}
.seo-airport-links a{color:var(--muted)}
.seo-airport-links a:hover{color:var(--accent)}
footer{min-height:93px;padding:22px 0;border:0;color:var(--muted);gap:20px}
footer .brand{color:var(--text);font-size:23px}
footer .fp-wordmark>span{color:var(--accent)}
footer>span{font-size:11px;line-height:1.6}
footer>div{font-size:11px;gap:22px}
footer .version{font-family:var(--display);font-size:11px;letter-spacing:.8px}
dialog{border-radius:5px;border-color:var(--border);box-shadow:var(--shadow)}
.dialog-top{border-top:3px solid var(--accent);border-bottom:1px solid var(--border);padding:19px 22px;margin-bottom:18px;background:var(--surface2)}
.dialog-top h2{font-family:var(--display);font-size:21px;font-weight:500}
.dialog-body input:not([type=checkbox]),.dialog-body select,.search-input-wrap{border-radius:3px}
.airport-result,.result-source-status{border-radius:3px}
.aw-account-dialog,.aw-feedback-item,.aw-notice,.aw-conflict{border-radius:4px}
.aw-dialog-heading{background:var(--surface2);border-top:3px solid var(--accent)}
.aw-dialog-heading h2{font-family:var(--display);font-weight:500}
.aw-identity,.aw-avatar,.aw-account-section,.aw-form-field input,.aw-form-field textarea,.aw-form-field select{border-radius:3px}
.skip:not(:focus-visible){clip-path:inset(50%)}
.skip:focus:not(:focus-visible){top:-60px}
@media(min-width:1450px){.map-wrap{min-height:620px}}
@media(max-width:1180px) and (min-width:901px){.topbar{padding:0 22px;gap:17px}.brand{font-size:24px;gap:7px}.fp-brandmark{width:31px}.main-nav{gap:16px}.main-nav a,.main-nav .nav-action{font-size:12px}.top-actions{gap:4px}.topbar #account-button{padding:7px 9px}.workspace-grid{grid-template-columns:minmax(285px,.7fr) minmax(430px,1.5fr)}.map-actions{gap:3px}.map-actions .badge{font-size:9px}.map-settings-trigger{font-size:11px;padding:7px 8px}.radio-footer{flex-wrap:wrap}.airport-end .text-link{max-width:180px}.airport-copy h2{font-size:20px}}
@media(max-width:900px){main{padding:0 20px}.topbar{height:auto;min-height:76px;padding:13px 20px 0;gap:10px;flex-wrap:wrap}.main-nav{order:3;flex-basis:100%;height:42px;margin:0;gap:24px;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.main-nav a,.main-nav .nav-action{font-size:12px;flex-shrink:0}.main-nav a.active:after{bottom:0}.top-actions{margin-left:auto}.intro{padding:22px 0 19px;margin-bottom:17px}.intro h1{font-size:27px}.workspace-grid{grid-template-columns:1fr}.radio-panel{border-right:0;border-bottom:1px solid var(--border)}.map-wrap{min-height:590px}#player-content{min-height:0;flex:1}.radio-empty{padding:10px 0 12px}.radio-empty .empty-icon{margin-bottom:9px}.radio-empty p{max-width:580px}.radio-footer{margin-top:8px}.station-title{margin-bottom:8px}.airport-hero{padding:18px 20px}.airport-copy h2{font-size:20px}.airport-code{font-size:54px}.airport-end .text-link{display:none}.airport-meta{font-size:10px}.search-trigger{min-width:270px;flex:1}.weather-metric strong{font-size:27px}.fw-intro{gap:16px}}
@media(max-width:650px){
 main{padding:0 12px}
 .topbar{padding:13px 14px 0;min-height:71px;gap:7px 0;border-bottom-width:2px}
 .brand{font-size:23px;gap:7px;letter-spacing:-1px}
 .fp-wordmark{letter-spacing:-1.1px}
 .fp-brandmark{width:28px;height:32px;padding-left:1px}
 .fp-brandmark svg{width:29px;height:30px}
 .top-actions{gap:4px}
 .topbar #account-button{padding:6px 8px;min-height:32px;font-size:12px}
 .topbar .language{font-size:11px;padding:7px 5px;gap:4px}
 .topbar .icon-button{width:29px;height:32px}
 .main-nav{height:41px;gap:21px;margin:1px 0 0;justify-content:flex-start}
 .main-nav a,.main-nav .nav-action{font-size:11px;line-height:1.3}
 .intro{padding:19px 0 16px;margin-bottom:15px;gap:12px;align-items:center}
 .intro h1{font-size:23px;letter-spacing:-.65px;line-height:1.18}
 .eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:7px;line-height:1.4}
 .intro p{font-size:12px;line-height:1.65;max-width:225px;margin-top:6px}
 .utc{min-width:112px;padding-left:12px;gap:3px;align-self:center}
 .utc strong{font-size:19px;letter-spacing:.25px}
 .utc-label{font-size:8px;letter-spacing:.5px}
 .utc>span:last-child{font-size:9px;max-width:100px}
 .airport-toolbar{gap:8px;margin-bottom:12px}
 .search-trigger{height:42px;min-width:0;font-size:12px;padding:0 11px}
 .favorites-trigger{font-size:0;min-height:40px;padding:9px 6px;flex-shrink:0}
 .favorites-trigger .icon{width:18px;height:18px}
 .atc-directory-trigger{margin-left:0}
 #open-favorites{margin-left:0}
 .quick-airports{order:3;width:100%;gap:0}
 .quick-airports button{height:35px;flex:1;padding:0 10px;font-size:11px}
 .airport-hero{padding:16px 15px;min-height:160px;align-items:flex-start;border-radius:3px}
 .airport-primary{gap:13px;align-items:flex-start}
 .airport-code{font-size:43px;letter-spacing:-2px;padding-right:13px;margin-top:5px;min-width:85px}
 .airport-copy h2{font-size:17px;line-height:1.35;letter-spacing:-.4px;padding-right:0}
 .airport-location{font-size:10px;line-height:1.5;gap:4px;margin-bottom:6px}
 .country-tag{font-size:9px;letter-spacing:.45px;padding:2px 5px;margin:0 0 0 3px;line-height:1.2}
 .airport-meta{font-size:10px;line-height:1.6;gap:4px;margin-top:8px}
 .airport-end{position:static;display:contents}
 .airport-hero-controls{position:absolute;left:15px;bottom:15px;gap:5px;z-index:2}
 .airport-end .large{width:31px;height:31px;border:1px solid var(--border);border-radius:3px;background:var(--surface2)}
 .airport-end .icon{width:15px;height:15px}
 .workspace-grid{gap:0;border-top-width:3px}
 .panel-heading{padding:12px 14px;min-height:56px}
 .panel-heading h2{font-size:14px}
 .panel-heading h2 .icon{width:18px;height:18px}
 .badge{font-size:9px;padding:4px 6px}
 .channel-tabs{padding:9px 11px;gap:3px}
 .channel-tabs button{font-size:11px;padding:8px 9px}
 .channel-explanation{font-size:11px;padding:10px 14px;line-height:1.6}
 #player-content{padding:17px 14px 0;min-height:0}
 .station-title h3{font-size:18px}
 .station-sub{font-size:11px}
 .station-code{font-size:10px;padding:4px 6px}
 .radio-empty{padding:11px 0 14px}
 .radio-empty p{font-size:13px;line-height:1.75;max-width:330px}
 .radio-empty h3{font-size:17px}
 .radio-empty .empty-icon{width:43px;height:43px;margin-bottom:12px}
 #radio .primary-button,.play-stream{font-size:12px;min-height:42px}
 .radio-footer{font-size:10px;line-height:1.55;gap:7px;padding:12px 14px;margin-top:4px;flex-wrap:wrap}
 .radio-footer button{font-size:11px;margin-left:auto}
 .map-wrap{min-height:620px}
 .map-panel .panel-heading{flex-wrap:wrap;gap:9px}
 .map-panel .panel-heading h2{flex:1}
 .map-actions{display:flex;flex-wrap:wrap;align-items:center;gap:5px;justify-content:flex-end;max-width:100%}
 .map-actions .badge{display:inline-flex;font-size:9px}
 .map-settings-trigger{font-size:12px;padding:8px 10px;min-height:36px;border-radius:3px}
 .map-actions .icon-button.small{width:30px;height:34px}
 .map-bottom{font-size:10px;padding:10px 12px;gap:8px}
 .map-caption{font-size:10px;max-width:calc(100% - 20px)}
 .personal-dashboard{margin:0 0 18px}
 .pd-details>summary{min-height:49px;padding:12px 14px;gap:8px;flex-wrap:wrap}
 .pd-summary-title strong{font-size:13px}
 .pd-summary-hint{font-size:10px;margin-left:25px;margin-top:-3px;line-height:1.5}
 .pd-summary-count{font-size:10px}
 .pd-content{padding:16px 14px}
 .weather-panel{margin-top:18px}
 .weather-heading{padding:15px 14px;gap:13px}
 .weather-heading h2{font-size:17px;line-height:1.4}
 .weather-tools{gap:10px}
 .weather-observed{font-size:11px;line-height:1.6}
 .weather-metric strong{font-size:26px}
 .weather-metric-detail{font-size:12px}
 .weather-unit-select select{font-size:11px}
 .weather-source{font-size:10px;line-height:1.7}
 .flights-panel{margin-top:18px}
 .flights-panel .panel-heading{padding:14px}
 .flights-panel .panel-heading h2{font-size:17px}
 .flights-toolbar{padding:0 14px}
 .flight-tabs{gap:24px}
 .flight-tabs button{font-size:12px;padding:14px 0}
 .fw-intro{padding:22px 14px;gap:13px}
 .fw-copy h3{font-size:16px;line-height:1.4}
 .fw-copy p{font-size:12px;line-height:1.8}
 .fw-copy small{font-size:10px;line-height:1.7}
 .fw-load{font-size:12px}
 .flights-foot{font-size:10px;padding:13px 14px}
 .airport-info-panel{margin-top:18px}
 .airport-reference-details>summary{padding:15px 14px;gap:9px}
 .airfield-summary-copy strong{font-size:16px}
 .airfield-summary-copy>span{font-size:11px}
 .airfield-reference-badge{font-size:10px}
 .bottom-note{padding:23px 0;gap:12px}
 .bottom-note strong{font-size:14px}
 .bottom-note p{font-size:12px;line-height:1.75;max-width:280px}
 .bottom-note button{font-size:12px;margin-left:0}
 .seo-airport-links{padding:16px 0!important;font-size:10px!important;gap:9px 15px!important}
 footer{padding:20px 0;gap:12px 18px;min-height:90px}
 footer .brand{font-size:22px}
 footer>span{font-size:10px;line-height:1.7;max-width:200px}
 footer>div{font-size:10px}
 .dialog-top{padding:17px 18px}
 .dialog-top h2{font-size:20px}
 .dialog-body{font-size:13px;line-height:1.8;padding:0 18px 20px}
 .dialog-body input:not([type=checkbox]),.dialog-body select{font-size:16px}
}
@media(max-width:370px){.brand{font-size:21px}.fp-brandmark{width:25px}.topbar{padding-left:11px;padding-right:11px}.top-actions{gap:2px}.topbar .language{padding-left:3px;padding-right:3px}.intro h1{font-size:21px}.intro p{font-size:11px}.utc{min-width:102px}.utc strong{font-size:17px}.map-actions .badge{font-size:8px}.map-settings-trigger{padding:7px 8px;font-size:11px}}
@media(pointer:coarse){.topbar .icon-button,.airport-end .large{min-height:38px;min-width:34px}.main-nav a,.main-nav .nav-action{min-height:42px}.channel-tabs button{min-height:38px}.map-actions .icon-button.small{min-width:35px;min-height:38px}}
@media(prefers-reduced-motion:reduce){.fp-brandmark *,button,a{animation:none!important;transition:none!important}}
@media(forced-colors:active){.topbar,.country-tag,.quick-airports button.active{background:Canvas;color:CanvasText}.fp-wordmark>span,.brand,.fp-brandmark{color:CanvasText}}
