#app{display:flex;height:100vh;overflow:hidden}#sidebar{flex:0 0 360px;display:flex;flex-direction:column;background:#13151a;overflow:hidden;transition:flex-basis .28s cubic-bezier(.4,0,.2,1),opacity .2s ease;position:relative}#sidebar.collapsed{flex:0 0 0px;opacity:0;pointer-events:none}.sidebar-collapse-btn{position:relative;z-index:5;flex:0 0 auto;width:14px;align-self:stretch;display:flex;align-items:center;justify-content:center;background:#13151a;border:none;border-left:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(255,255,255,.05);color:#3d4350;cursor:pointer;padding:0;transition:color .15s ease,background .15s ease}.sidebar-collapse-btn:hover{color:#6b7280;background:#1a1d24}.sidebar-collapse-btn svg{width:10px;height:10px;transition:transform .28s cubic-bezier(.4,0,.2,1)}.sidebar-collapse-btn.collapsed svg{transform:rotate(180deg)}#sidebar header{flex:0 0 auto;padding:1rem 1.25rem;background:#13151a;border-bottom:1px solid rgba(255,255,255,.06)}#sidebar header h1{font-size:.9375rem;font-weight:700;color:#e4e7ec;letter-spacing:.01em;margin:0;display:flex;align-items:center;gap:.5rem;flex-shrink:0}.header-icon{width:17px;height:17px;color:#3b82f6;flex-shrink:0}.sidebar-content{flex:1;overflow-y:auto;min-height:0;scrollbar-gutter:stable}.sidebar-content::-webkit-scrollbar{width:4px}.sidebar-content::-webkit-scrollbar-track{background:transparent}.sidebar-content::-webkit-scrollbar-thumb{background:#ffffff12;border-radius:2px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#ffffff21}#controls{padding:1.125rem 1.25rem .875rem}#info-panel{padding:.875rem 1.25rem 1.5rem;border-top:1px solid rgba(255,255,255,.05)}#info-panel.empty{display:flex;align-items:center;justify-content:center;text-align:center;color:#5a6070;padding-top:2.5rem}.placeholder-text{font-size:.8125rem;line-height:1.6;max-width:200px;color:#3d4350}#globe-container{flex:1;min-width:0;position:relative;overflow:hidden}.map-disclaimer{position:fixed;bottom:.5rem;right:.75rem;font-size:.6875rem;color:#ffffff47;pointer-events:none;z-index:10;letter-spacing:.01em}.module-status-bar{display:flex;align-items:center;gap:.75rem;padding:.4375rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.05);flex-wrap:wrap}.mod-dot{display:flex;align-items:center;gap:.3125rem;font-size:.6875rem;font-weight:500;letter-spacing:.02em;white-space:nowrap;transition:color .3s ease}.mod-dot:before{content:"";display:block;width:5px;height:5px;border-radius:50%;flex-shrink:0;transition:background-color .3s ease}.mod-loading{color:#4a5060}.mod-loading:before{background:#f59e0b;opacity:.6}.mod-ready{color:#6b7280}.mod-ready:before{background:#22c55e}.mod-error{color:#6b7280}.mod-error:before{background:#ef4444}.airport-inputs{display:flex;gap:.625rem;margin-bottom:1.125rem}.form-group{flex:1;display:flex;flex-direction:column;gap:.3125rem}.form-group label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#4a5060}.form-group input[type=text]{width:100%;padding:.5625rem .75rem;font-size:1rem;font-family:SF Mono,Fira Code,Consolas,monospace;letter-spacing:.12em;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08;color:#e4e7ec;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.form-group input[type=text]::placeholder{color:#2e3340;letter-spacing:.12em}.form-group input[type=text]:hover{border-color:#ffffff1c;background:#ffffff0a}.form-group input[type=text]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f;background:#ffffff0a;outline:none}.form-group input[type=text][aria-invalid=true]{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-message:empty{display:none}.error-message:not(:empty){color:#f87171;font-size:.6875rem;margin-top:.125rem}.sidebar-section{border-top:1px solid rgba(255,255,255,.05)}.section-toggle{display:flex;align-items:center;width:100%;padding:.6875rem 0;background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;gap:.5rem;transition:none}.section-toggle-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#4a5060;flex-shrink:0}.section-summary{flex:1;display:flex;flex-wrap:wrap;gap:.25rem;min-width:0;overflow:hidden}.section-toggle[aria-expanded=true] .section-summary{display:none}.section-tag{display:inline-block;background:#3b82f61a;color:#60a5fa;font-size:.5625rem;padding:.0625rem .375rem;border-radius:999px;font-weight:500;white-space:nowrap;letter-spacing:0}.section-chevron{width:13px;height:13px;color:#3d4350;flex-shrink:0;transition:transform .22s ease}.section-toggle[aria-expanded=true] .section-chevron{transform:rotate(180deg)}.section-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.section-body.open{grid-template-rows:1fr}.section-body-inner{overflow:hidden}.option-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.04);gap:.75rem}.option-row:last-child,.option-row--no-border{border-bottom:none}.option-row[hidden]{display:none}.option-text{font-size:.8125rem;color:#9ca3af;-webkit-user-select:none;user-select:none;flex:1;min-width:0}.option-row--section-header{border-bottom:none;padding-top:.25rem;padding-bottom:.125rem}.option-section-title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#4a5060}.wind-sub-option{padding-left:0}.toggle-switch{position:relative;display:inline-block;width:34px;height:19px;flex-shrink:0;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffff14;border-radius:10px;transition:background-color .18s ease}.toggle-slider:before{content:"";position:absolute;height:13px;width:13px;left:3px;bottom:3px;background:#555d6e;border-radius:50%;transition:transform .18s ease,background-color .18s ease}.toggle-switch input:checked+.toggle-slider{background:#2563eb}.toggle-switch input:checked+.toggle-slider:before{transform:translate(15px);background:#fff}.toggle-switch input:focus-visible+.toggle-slider{box-shadow:0 0 0 3px #3b82f638}.toggle-switch input:disabled+.toggle-slider{opacity:.4;cursor:not-allowed}.route-via-select,.aircraft-type-select,.etops-rating-select,.cruise-fl-select{padding:.3125rem 1.625rem .3125rem .5625rem;font-size:.8125rem;font-family:system-ui,-apple-system,sans-serif;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:#ffffff08;color:#e4e7ec;cursor:pointer;transition:border-color .18s ease;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%233d4350' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .4375rem center}.route-via-select:hover,.aircraft-type-select:hover,.etops-rating-select:hover,.cruise-fl-select:hover{border-color:#ffffff24}.route-via-select:focus,.aircraft-type-select:focus,.etops-rating-select:focus,.cruise-fl-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f;outline:none}.route-via-select option,.aircraft-type-select option,.etops-rating-select option,.cruise-fl-select option{background:#1a1d23;color:#e4e7ec}.aircraft-type-select,.etops-rating-select{max-width:160px}.cruise-fl-select{width:155px}.lat-input-group{display:flex;align-items:center;gap:.25rem}#max-latitude{width:52px;padding:.3125rem .4375rem;font-size:.8125rem;font-family:SF Mono,Fira Code,Consolas,monospace;text-align:center;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:#ffffff08;color:#e4e7ec;transition:border-color .18s ease,box-shadow .18s ease;-moz-appearance:textfield}#max-latitude::-webkit-outer-spin-button,#max-latitude::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#max-latitude::placeholder{color:#2e3340}#max-latitude:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f;outline:none}.input-suffix{font-size:.8125rem;color:#3d4350}.tas-input-group{display:flex;align-items:center}.tas-input-group input[type=number]{width:72px;padding:.3125rem .5rem;font-size:.8125rem;font-family:SF Mono,Fira Code,Consolas,monospace;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:#ffffff08;color:#e4e7ec;text-align:right;transition:border-color .18s ease,box-shadow .18s ease;-moz-appearance:textfield}.tas-input-group input[type=number]::-webkit-outer-spin-button,.tas-input-group input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tas-input-group input[type=number]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f;outline:none}.wind-freshness{align-items:center;gap:.375rem;padding:.25rem 0 .375rem;font-size:.75rem;color:#9ca3af}.wind-freshness:not([hidden]){display:flex}.freshness-dot{width:6px;height:6px;border-radius:50%;background:#555d6e;flex-shrink:0}.wind-fresh .freshness-dot{background:#22c55e}.wind-aging .freshness-dot{background:#eab308}.wind-stale .freshness-dot{background:#ef4444}.wind-fresh .freshness-text{color:#86efac}.wind-aging .freshness-text{color:#fde047}.wind-stale .freshness-text{color:#fca5a5}.country-selector-wrapper,.through-selector-wrapper,.fir-selector-wrapper{position:relative;padding-bottom:.5rem}.country-selector-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.4375rem .625rem;font-size:.8125rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#6b7280;cursor:pointer;transition:border-color .18s ease,background .18s ease;font-family:inherit}.country-selector-trigger:hover{border-color:#ffffff21;background:#ffffff0b}.country-selector-trigger .trigger-text{flex:1;text-align:left}.country-selector-trigger .trigger-icon{width:13px;height:13px;color:#3d4350;transition:transform .18s ease;flex-shrink:0}.country-selector-trigger[aria-expanded=true] .trigger-icon{transform:rotate(180deg)}.country-dropdown{position:fixed;z-index:1000;background:#1c1f27;border:1px solid rgba(255,255,255,.09);border-radius:10px;box-shadow:0 8px 28px #00000073;overflow:hidden}.country-dropdown input{width:100%;padding:.5rem .75rem;border:none;border-bottom:1px solid rgba(255,255,255,.06);background:#ffffff08;color:#e4e7ec;font-size:.8125rem;font-family:inherit;outline:none}.country-dropdown input::placeholder{color:#3d4350}.country-list,.fir-list{max-height:200px;overflow-y:auto;list-style:none;padding:.25rem 0;margin:0}.country-list li,.fir-list li{display:flex;justify-content:space-between;align-items:center;padding:.375rem .75rem;cursor:pointer;transition:background-color .1s ease;font-size:.8125rem}.country-list li:hover,.fir-list li:hover{background:#3b82f612}.country-list li[hidden],.fir-list li[hidden]{display:none}.country-name{color:#e4e7ec}.country-code{color:#3d4350;font-size:.6875rem;font-family:SF Mono,Fira Code,Consolas,monospace}.country-chips,.through-chips,.fir-chips{display:flex;flex-wrap:wrap;gap:.3125rem;margin-top:.4375rem}.country-chips:empty,.through-chips:empty{display:none}.country-chip,.through-chip,.fir-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .4375rem;border-radius:5px;font-size:.6875rem}.country-chip{background:#3b82f61a;border:1px solid rgba(59,130,246,.18);color:#93c5fd}.through-chip{background:#14b8a61a;border:1px solid rgba(20,184,166,.18);color:#5eead4}.chip-remove{background:none;border:none;color:inherit;font-size:.875rem;line-height:1;cursor:pointer;padding:0 0 0 .125rem;opacity:.55;transition:opacity .12s ease;font-family:inherit}.chip-remove:hover{opacity:1}.through-chip .chip-remove{color:#5eead4}.fir-chip{background:#a855f71a;border:1px solid rgba(168,85,247,.18);color:#c4b5fd}.fir-chip .chip-remove{color:#c4b5fd}.error-banner:empty{display:none}.error-banner:not(:empty){display:block;padding:.5rem .75rem;margin-bottom:.75rem;background:#ef444412;border:1px solid rgba(239,68,68,.18);border-radius:8px;color:#f87171;font-size:.8125rem;line-height:1.5}.latitude-warning{background:#f59e0b12;border:1px solid rgba(245,158,11,.18);border-left:2px solid #f59e0b;color:#fbbf24;padding:.5rem .75rem;border-radius:6px;margin-bottom:.75rem;font-size:.8125rem;line-height:1.5}.latitude-rerouted{background:#0ea5e912;border:1px solid rgba(14,165,233,.18);border-left:2px solid #0ea5e9;color:#7dd3fc;padding:.5rem .75rem;border-radius:6px;margin-bottom:.75rem;font-size:.8125rem;line-height:1.5}.constraint-warnings{background:#ef444412;border:1px solid rgba(239,68,68,.18);border-left:2px solid #ef4444;color:#fca5a5;padding:.5rem .75rem;border-radius:6px;margin-bottom:.75rem;font-size:.8125rem;line-height:1.5}.constraint-warnings ul{list-style:none;padding:0;margin:0}.constraint-warnings li:before{content:"⚠️"}.route-through-active{background:#14b8a612;border:1px solid rgba(20,184,166,.18);border-left:2px solid #14b8a6;color:#5eead4;padding:.5rem .75rem;border-radius:6px;margin-bottom:.75rem;font-size:.8125rem;line-height:1.5}.button-row{display:flex;gap:.5rem;padding-top:.875rem}.calculate-btn{flex:1;padding:.625rem;font-size:.8125rem;font-weight:600;color:#fff;background:#2563eb;border:1px solid rgba(59,130,246,.25);border-radius:8px;cursor:pointer;transition:background .18s ease,box-shadow .18s ease;font-family:inherit}.calculate-btn:hover{background:#3b82f6;box-shadow:0 2px 10px #3b82f633}.calculate-btn:active{background:#1d4ed8;box-shadow:none;transform:translateY(1px)}.calculate-btn:disabled{background:#3b82f61f;border-color:#3b82f614;color:#3b82f659;cursor:not-allowed;box-shadow:none}.calculate-btn .spinner{display:inline-block;width:13px;height:13px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle;margin-right:.4375rem}@keyframes spin{to{transform:rotate(360deg)}}.clear-btn{flex:0 0 auto;padding:.625rem .875rem;font-size:.8125rem;font-weight:500;color:#4a5060;background:transparent;border:1px solid rgba(255,255,255,.07);border-radius:8px;cursor:pointer;transition:all .18s ease;font-family:inherit}.clear-btn:hover:not(:disabled){background:#ffffff0a;color:#6b7280;border-color:#ffffff1c}.clear-btn:active:not(:disabled){background:#ffffff08}.clear-btn:disabled{opacity:.3;cursor:not-allowed}.map-overlay-buttons{position:fixed;top:.75rem;right:.75rem;z-index:10;display:flex;flex-direction:column;gap:.3125rem}.map-overlay-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#13151ae0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.07);border-radius:8px;color:#4a5060;cursor:pointer;transition:all .18s ease}.map-overlay-btn:hover{background:#1a1d24f5;color:#e4e7ec;border-color:#3b82f659}.map-overlay-btn svg{width:15px;height:15px}.map-overlay-btn.active{background:#3b82f621;border-color:#3b82f647;color:#3b82f6}.map-overlay-btn span{font-size:.875rem;font-weight:700}.map-overlay-divider{height:1px;background:#ffffff0d;margin:.0625rem 0}.help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:none;align-items:center;justify-content:center}.help-overlay.visible{display:flex}.help-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.help-modal{position:relative;max-width:520px;width:90%;max-height:85vh;overflow-y:auto;background:#1c1f27;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:1.5rem;z-index:1;box-shadow:0 24px 48px #00000073}.help-modal h2{font-size:1rem;font-weight:600;color:#e4e7ec;margin-bottom:1.25rem}.help-modal h3{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:.5rem;margin-top:1.25rem}.help-modal h3:first-of-type{margin-top:0}.help-modal p,.help-modal li{font-size:.8125rem;color:#9ca3af;line-height:1.6}.help-modal ol{padding-left:1.25rem;margin:0}.help-modal ol li{margin-bottom:.25rem}.help-codes{width:100%;border-collapse:collapse}.help-codes td{padding:.25rem .5rem;font-size:.8125rem}.help-codes td:first-child{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600;color:#3b82f6;letter-spacing:.1em}.help-codes td:last-child{color:#6b7280}.help-close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#4a5060;font-size:1.25rem;cursor:pointer;padding:.25rem;transition:color .15s ease}.help-close-btn:hover{color:#e4e7ec}.help-dismiss-btn{width:100%;margin-top:1.25rem;padding:.5625rem;font-size:.8125rem;font-weight:500;color:#4a5060;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:8px;cursor:pointer;transition:all .18s ease;font-family:inherit}.help-dismiss-btn:hover{background:#ffffff0f;color:#6b7280}.filter-panel{position:fixed;top:.75rem;right:3.25rem;z-index:10;width:215px;background:#13151af0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.07);border-radius:10px;box-shadow:0 8px 32px #0006;overflow:hidden}.filter-panel[hidden]{display:none}.filter-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid rgba(255,255,255,.05)}.filter-panel-title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060}.filter-panel-close{background:none;border:none;color:#4a5060;font-size:1rem;cursor:pointer;padding:0;line-height:1;transition:color .15s ease}.filter-panel-close:hover{color:#e4e7ec}.filter-panel-body{max-height:calc(100vh - 4rem);overflow-y:auto;padding:.25rem 0}.filter-group{padding:.125rem 0}.filter-group-title{font-size:.5625rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#3d4350;padding:.375rem .75rem .125rem}.filter-row{display:flex;align-items:center;justify-content:space-between;padding:.3125rem .75rem;transition:background-color .1s ease}.filter-row:hover{background:#ffffff05}.filter-label{font-size:.75rem;color:#9ca3af;-webkit-user-select:none;user-select:none}.filter-label--master{font-weight:600;color:#60a5fa;font-size:.75rem}.filter-group--master{padding:.25rem 0}.filter-divider{height:1px;background:#ffffff0a;margin:.125rem .75rem}.mode-tabs{display:flex;gap:2px;margin-bottom:12px;background:#ffffff0d;border-radius:8px;padding:2px}.mode-tab{flex:1;padding:6px 12px;border:none;background:transparent;color:#9ca3af;font-size:.8rem;font-weight:500;cursor:pointer;border-radius:6px;transition:all .15s ease;font-family:inherit}.mode-tab.active{background:#3b82f633;color:#60a5fa}.mode-tab:hover:not(.active){color:#d1d5db}.custom-route-panel label{font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.custom-route-textarea{width:100%;min-height:80px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#e4e7ec;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.8rem;padding:8px 10px;resize:vertical;line-height:1.5;margin-top:4px;box-sizing:border-box}.custom-route-textarea::placeholder{color:#6b7280}.custom-route-textarea:focus{outline:none;border-color:#3b82f680}.custom-route-errors{font-size:.75rem;color:#f87171;margin-top:4px;min-height:0}.custom-route-errors .custom-warning{color:#fbbf24}.custom-route-panel .button-row{margin-top:8px}.step-climb-profile{background:#0ea5e90d;border:1px solid rgba(14,165,233,.13);border-radius:8px;padding:.75rem;margin-bottom:.75rem;font-size:.8125rem}.step-climb-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-weight:600;color:#93c5fd;font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em}.step-climb-savings{color:#4ade80;font-weight:600}.step-climb-chart{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.6875rem;line-height:1.3;color:#9ca3af;overflow-x:auto;margin-bottom:.5rem}.step-climb-segments{font-size:.75rem;color:#d1d5db;line-height:1.6}.step-climb-jet{color:#fbbf24;font-size:.625rem;margin-left:.25rem}.step-climb-comparison{margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.05);font-size:.75rem;color:#9ca3af}.info-panel{transition:opacity .2s ease-in}.route-summary h2{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:.625rem;padding-bottom:.375rem;border-bottom:1px solid rgba(255,255,255,.04)}.route-summary h3{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:.375rem}.collapsible-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.collapsible-header span{color:#9ca3af;font-weight:600}.collapse-toggle{background:none;border:none;padding:.25rem;cursor:pointer;color:#4a5060;display:flex;align-items:center;justify-content:center;transition:color .2s ease,transform .2s ease;margin-left:.5rem}.collapse-toggle:hover{color:#6b7280}.collapse-toggle svg{transform:rotate(-90deg);transition:transform .2s ease}.collapse-toggle.expanded svg{transform:rotate(0)}.route-string-content,.waypoint-list-content{overflow:hidden;transition:max-height .3s ease,opacity .2s ease;max-height:2000px;opacity:1}.route-string-content.collapsed,.waypoint-list-content.collapsed{max-height:0;opacity:0;margin-bottom:0}.long-route-badge{display:inline-block;background:#7c3aed26;color:#a78bfa;font-size:.625rem;padding:.0625rem .4375rem;border-radius:999px;font-weight:600;margin-left:.5rem;vertical-align:middle;text-transform:uppercase;letter-spacing:.05em;border:1px solid rgba(124,58,237,.2)}.route-endpoints{display:flex;align-items:center;justify-content:center;gap:1.25rem;margin-bottom:.875rem;padding:.625rem .75rem;background:#ffffff08;border-radius:10px;border:1px solid rgba(255,255,255,.05)}.endpoint{text-align:center}.endpoint .label{display:block;font-size:.625rem;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:.125rem}.endpoint .icao{font-size:1.1875rem;font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:700;color:#e4e7ec;letter-spacing:.1em}.route-arrow{color:#3b82f6;font-size:1rem;opacity:.6}.route-string-section{margin-bottom:.875rem}.route-string-content{margin-top:.375rem}.route-string{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;padding:.5rem .625rem;cursor:pointer;transition:border-color .2s ease,background-color .2s ease;position:relative}.route-string:hover{border-color:#3b82f64d;background:#ffffff0a}.route-string code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.75rem;color:#9ca3af;word-break:break-all;line-height:1.7}.route-string.copied{border-color:#22c55e66;background:#22c55e0d}.route-string.copied:after{content:"Copied!";position:absolute;top:-1.5rem;right:.5rem;font-size:.6875rem;color:#22c55e;font-weight:600}.route-metadata{display:grid;grid-template-columns:1fr auto;gap:0;margin-bottom:1rem;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.04);overflow:hidden}.route-metadata dt,.route-metadata dd{padding:.375rem .625rem;margin:0;border-bottom:1px solid rgba(255,255,255,.03)}.route-metadata dt{font-size:.75rem;color:#6b7280;font-weight:400}.route-metadata dd{font-size:.75rem;color:#e4e7ec;font-weight:600;text-align:right;font-family:SF Mono,Fira Code,Consolas,monospace}.route-metadata dt:nth-of-type(2n),.route-metadata dd:nth-of-type(2n){background:#ffffff04}.route-metadata dt:last-of-type,.route-metadata dd:last-of-type{border-bottom:none}.flight-estimates{margin-bottom:1rem}.flight-estimates h3{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:.375rem}.aircraft-badge{display:inline-block;background:#3b82f61a;color:#60a5fa;font-size:.625rem;padding:.0625rem .4375rem;border-radius:999px;font-weight:600;margin-left:.5rem;vertical-align:middle;text-transform:none;letter-spacing:normal;border:1px solid rgba(59,130,246,.15)}.estimates-metadata{display:grid;grid-template-columns:1fr auto;gap:0;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.04);overflow:hidden;margin-bottom:.5rem}.estimates-metadata dt,.estimates-metadata dd{padding:.375rem .625rem;margin:0;border-bottom:1px solid rgba(255,255,255,.03)}.estimates-metadata dt{font-size:.75rem;color:#6b7280;font-weight:400}.estimates-metadata dd{font-size:.75rem;color:#e4e7ec;font-weight:600;text-align:right;font-family:SF Mono,Fira Code,Consolas,monospace}.estimates-metadata dt:last-of-type,.estimates-metadata dd:last-of-type{border-bottom:none}.range-warning{background:#f59e0b14;border:1px solid rgba(245,158,11,.2);border-left:3px solid #f59e0b;color:#fbbf24;padding:.4375rem .625rem;border-radius:6px;font-size:.75rem;line-height:1.5}.aircraft-specs{margin-bottom:1rem}.aircraft-specs h3{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin:0 0 .5rem}.specs-metadata{display:grid;grid-template-columns:1fr auto;gap:0;background:#11182766;border-radius:.375rem;overflow:hidden}.specs-metadata dt,.specs-metadata dd{padding:.375rem .625rem;margin:0;border-bottom:1px solid rgba(55,65,81,.3)}.specs-metadata dt{font-size:.75rem;color:#6b7280}.specs-metadata dd{font-size:.75rem;color:#e4e7ec;text-align:right;font-variant-numeric:tabular-nums;font-family:SF Mono,Fira Code,Consolas,monospace}.specs-metadata dt:last-of-type,.specs-metadata dd:last-of-type{border-bottom:none}.aircraft-specs-content.collapsed{display:none}.etops-analysis{margin-bottom:1rem}.etops-analysis h3{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:.375rem}.etops-badge{display:inline-block;background:#06b6d41a;color:#22d3ee;font-size:.625rem;padding:.0625rem .4375rem;border-radius:999px;font-weight:600;margin-left:.5rem;vertical-align:middle;text-transform:none;letter-spacing:normal;border:1px solid rgba(6,182,212,.15)}.etops-computing{font-size:.75rem;color:#4a5060;font-style:italic}.etops-metadata{display:grid;grid-template-columns:1fr auto;gap:0;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.04);overflow:hidden;margin-bottom:.5rem}.etops-metadata dt,.etops-metadata dd{padding:.375rem .625rem;margin:0;border-bottom:1px solid rgba(255,255,255,.03)}.etops-metadata dt{font-size:.75rem;color:#6b7280;font-weight:400}.etops-metadata dd{font-size:.75rem;color:#e4e7ec;font-weight:600;text-align:right;font-family:SF Mono,Fira Code,Consolas,monospace}.etops-metadata dt:last-of-type,.etops-metadata dd:last-of-type{border-bottom:none}.etops-warning{background:#f59e0b14;border:1px solid rgba(245,158,11,.2);border-left:3px solid #f59e0b;color:#fbbf24;padding:.4375rem .625rem;border-radius:6px;font-size:.75rem;line-height:1.5}.etops-rerouted{background:#06b6d40f;border:1px solid rgba(6,182,212,.15);border-left:3px solid #06b6d4;color:#a5f3fc;padding:.4375rem .625rem;margin-bottom:.75rem;font-size:.75rem;line-height:1.5;border-radius:6px}.country-avoidance-active{background:#22c55e0f;border:1px solid rgba(34,197,94,.15);border-left:3px solid #22c55e;color:#86efac;padding:.4375rem .625rem;border-radius:6px;margin-bottom:.75rem;font-size:.75rem;line-height:1.5}.diversion-airport-list{margin-top:.5rem}.diversion-airport-list h4{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:.25rem}.diversion-airport-list ol{list-style:none;padding:0;margin:0;background:#ffffff05;border-radius:6px;border:1px solid rgba(255,255,255,.04);overflow:hidden}.diversion-airport-list li{display:flex;align-items:baseline;justify-content:space-between;padding:.25rem .5rem;border-bottom:1px solid rgba(255,255,255,.03);font-size:.75rem}.diversion-airport-list li:last-child{border-bottom:none}.diversion-airport-list li:nth-child(2n){background:#ffffff04}.divert-icao{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600;color:#22d3ee;font-size:.6875rem}.divert-dist{color:#4a5060;font-size:.6875rem;white-space:nowrap}.waypoint-list{margin-top:.25rem}.waypoint-list h3{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;margin-bottom:0;display:flex;align-items:center;gap:.5rem}.wp-count-badge{display:inline-block;background:#ffffff0f;color:#6b7280;font-size:.5625rem;padding:.0625rem .375rem;border-radius:999px;font-weight:600;text-transform:none;letter-spacing:normal}.waypoint-list-content{margin-top:.375rem}.waypoint-list-content ol{list-style:none;padding:0;margin:0;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.04);overflow:hidden}.waypoint-list-content li{display:flex;align-items:baseline;gap:.375rem;padding:.3125rem .5rem;border-bottom:1px solid rgba(255,255,255,.025);font-size:.6875rem;transition:background-color .1s ease}.waypoint-list-content li:last-child{border-bottom:none}.waypoint-list-content li:nth-child(2n){background:#ffffff04}.waypoint-list-content li:hover{background:#3b82f60a}.wp-name{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600;color:#3b82f6;min-width:62px;font-size:.6875rem}.wp-coords{color:#6b7280;flex:1;font-size:.6875rem;font-family:SF Mono,Fira Code,Consolas,monospace}.wp-distance{color:#4a5060;font-size:.625rem;white-space:nowrap;font-family:SF Mono,Fira Code,Consolas,monospace}.export-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.06)}.export-section h3{margin-bottom:.5rem}.export-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.375rem}.export-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;padding:.5rem .375rem;border:1px solid rgba(255,255,255,.1);border-radius:4px;background:#ffffff0a;color:#c0c8d8;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.export-btn:hover{background:#ffffff14;border-color:#fff3;color:#e0e6f0}.export-btn:active{background:#ffffff1f}.export-format{font-size:.6875rem;font-weight:700;letter-spacing:.02em}.export-label{font-size:.625rem;font-weight:400;opacity:.6}.export-icon{font-size:.875rem}.etops-toast{position:fixed;top:0;left:340px;right:0;z-index:1000;padding:.625rem 1.25rem;font-size:.8125rem;font-weight:600;line-height:1.5;text-align:center;pointer-events:auto;animation:toast-slide-down .25s ease-out}.etops-toast[hidden]{display:none}.etops-toast.etops-toast--error{background:#7f1d1df2;border-bottom:2px solid #dc2626;color:#fecaca;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.etops-toast.etops-toast--success{background:#14532df2;border-bottom:2px solid #22c55e;color:#bbf7d0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.etops-toast .toast-dismiss{background:none;border:none;color:inherit;font-size:1.125rem;cursor:pointer;margin-left:1rem;opacity:.6;vertical-align:middle;transition:opacity .15s ease}.etops-toast .toast-dismiss:hover{opacity:1}@keyframes toast-slide-down{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.wind-routing-active{padding:.5rem .75rem;margin-bottom:.75rem;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:8px;font-size:.8125rem;line-height:1.5}.wind-banner-header{color:#93c5fd;font-weight:500;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.wind-banner-stats{color:#9ca3af;font-size:.75rem;margin-top:.25rem}.wind-banner-freshness{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;padding:.125rem .375rem;border-radius:4px;background:#ffffff0a}.wind-banner-freshness .freshness-dot{width:5px;height:5px;border-radius:50%;display:inline-block}.wind-banner-freshness.wind-fresh .freshness-dot{background:#22c55e}.wind-banner-freshness.wind-fresh{color:#86efac}.wind-banner-freshness.wind-aging .freshness-dot{background:#eab308}.wind-banner-freshness.wind-aging{color:#fde047}.wind-banner-freshness.wind-stale .freshness-dot{background:#ef4444}.wind-banner-freshness.wind-stale{color:#fca5a5}.wind-badge{display:inline-block;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:#3b82f61f;color:#93c5fd;padding:.125rem .375rem;border-radius:4px;vertical-align:middle}.secondary-value{color:#6b7280}.wp-wind{display:block;font-size:.6875rem;font-family:SF Mono,Fira Code,Consolas,monospace;color:#60a5fa;margin-top:.125rem;letter-spacing:.02em}.weather-section{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.04)}.weather-cards{display:flex;flex-direction:column;gap:.5rem}.metar-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:.625rem .75rem;font-size:.75rem}.metar-card.metar-loading{color:#4a5060;display:flex;align-items:center;gap:.5rem}.metar-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem}.metar-icao{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600;font-size:.8125rem;color:#e4e7ec;letter-spacing:.06em}.metar-category{font-size:.625rem;font-weight:700;letter-spacing:.08em;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase}.metar-cat-vfr{background:#22c55e26;color:#22c55e}.metar-cat-mvfr{background:#3b82f626;color:#3b82f6}.metar-cat-ifr{background:#ef444426;color:#ef4444}.metar-cat-lifr{background:#a855f726;color:#a855f7}.metar-cat-unknown{background:#6b728026;color:#6b7280}.metar-time{font-size:.6875rem;color:#4a5060;margin-left:auto}.metar-raw{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.6875rem;color:#9ca3af;word-break:break-all;line-height:1.4}.metar-unavailable{color:#4a5060;font-style:italic}.taf-card{margin-top:0;margin-bottom:.25rem}.taf-card.taf-hidden{display:none}.taf-toggle{display:flex;align-items:center;gap:.375rem;background:none;border:none;cursor:pointer;padding:.25rem .5rem;color:#6b7280;font-size:.6875rem;font-weight:600;letter-spacing:.04em;transition:color .15s}.taf-toggle:hover{color:#9ca3af}.taf-toggle-label{font-family:SF Mono,Fira Code,Consolas,monospace}.taf-chevron{transition:transform .15s}.taf-chevron.taf-expanded{transform:rotate(180deg)}.taf-raw{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.6875rem;color:#9ca3af;line-height:1.5;white-space:pre-wrap;word-break:break-word;padding:.5rem .75rem;margin:0;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:4px;max-height:300px;overflow-y:auto}.taf-raw.taf-collapsed{display:none}.alternate-card .taf-card{margin-top:.25rem}.alternate-card .taf-toggle{padding-left:.25rem}.alternates-section{margin-top:.75rem}.alternates-section h3{font-size:.8125rem;font-weight:600;color:#9ca3af;margin-bottom:.5rem}.alternates-cards{display:flex;flex-direction:column;gap:.5rem}.alternates-loading,.alternates-empty{color:#4a5060;font-size:.75rem;font-style:italic;padding:.5rem 0}.alternate-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:.625rem .75rem;font-size:.75rem}.alternate-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.alternate-icao{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600;font-size:.8125rem;color:#e4e7ec;letter-spacing:.06em}.alternate-iata{font-size:.6875rem;color:#6b7280}.alternate-type-badge{font-size:.5625rem;font-weight:700;letter-spacing:.08em;padding:.0625rem .3rem;border-radius:3px;text-transform:uppercase}.alternate-type-badge.type-large{background:#3b82f61f;color:#60a5fa}.alternate-type-badge.type-medium{background:#6b72801f;color:#9ca3af}.alternate-name{font-size:.6875rem;color:#9ca3af;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alternate-details{display:flex;gap:.75rem;font-size:.6875rem;color:#6b7280;margin-bottom:.25rem}.alternate-dist,.alternate-bearing{font-family:SF Mono,Fira Code,Consolas,monospace}.alternate-metar{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.625rem;color:#6b7280;word-break:break-all;line-height:1.3;margin-top:.25rem}.ofp-section{margin-bottom:1rem}.ofp-badge{display:inline-block;background:#eab3081f;color:#facc15;font-size:.625rem;padding:.0625rem .4375rem;border-radius:999px;font-weight:600;margin-left:.5rem;vertical-align:middle;text-transform:none;letter-spacing:normal;border:1px solid rgba(234,179,8,.2)}.ofp-flight-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.25rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;padding:.5rem .625rem;margin-bottom:.625rem;font-size:.6875rem;font-family:SF Mono,Fira Code,Consolas,monospace}.ofp-flight-header .ofp-label{color:#6b7280}.ofp-flight-header .ofp-value{color:#e4e7ec;font-weight:600}.ofp-weights-fuel{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.625rem}.ofp-weights,.ofp-fuel{background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:8px;overflow:hidden}.ofp-weights h4,.ofp-fuel h4{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;padding:.375rem .625rem;margin:0;border-bottom:1px solid rgba(255,255,255,.04)}.ofp-data-row{display:flex;justify-content:space-between;padding:.25rem .625rem;border-bottom:1px solid rgba(255,255,255,.025);font-size:.6875rem}.ofp-data-row:last-child{border-bottom:none}.ofp-data-row .ofp-dl{color:#6b7280}.ofp-data-row .ofp-dv{color:#e4e7ec;font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600}.ofp-limit-exceeded{color:#f87171!important}.ofp-fuel-warning{background:#ef444414;border:1px solid rgba(239,68,68,.2);border-left:3px solid #ef4444;color:#fca5a5;padding:.375rem .625rem;border-radius:6px;font-size:.6875rem;margin-top:.375rem}.ofp-weight-warning{background:#f59e0b14;border:1px solid rgba(245,158,11,.2);border-left:3px solid #f59e0b;color:#fbbf24;padding:.375rem .625rem;border-radius:6px;font-size:.6875rem;margin-top:.375rem}.ofp-fuel-total{border-top:1px solid rgba(255,255,255,.1);font-weight:700}.ofp-redispatch{background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:8px;overflow:hidden}.ofp-redispatch h4{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#4a5060;padding:.375rem .625rem;margin:0;border-bottom:1px solid rgba(255,255,255,.04)}.ofp-redispatch-summary{padding:.375rem .625rem;border-bottom:1px solid rgba(255,255,255,.025)}.redispatch-savings{color:#4ade80;font-weight:600;font-size:.75rem;font-family:SF Mono,Fira Code,Consolas,monospace}.ofp-navlog-wrapper{overflow-x:auto;margin-bottom:.5rem;border:1px solid rgba(255,255,255,.04);border-radius:8px}.ofp-navlog{width:100%;border-collapse:collapse;font-size:.625rem;font-family:SF Mono,Fira Code,Consolas,monospace;white-space:nowrap}.ofp-navlog thead{background:#ffffff0a;position:sticky;top:0}.ofp-navlog th{padding:.3125rem .375rem;text-align:right;font-weight:600;color:#4a5060;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.06)}.ofp-navlog th:first-child,.ofp-navlog td:first-child{text-align:left}.ofp-navlog th:nth-child(2),.ofp-navlog td:nth-child(2){text-align:left}.ofp-navlog td{padding:.25rem .375rem;text-align:right;color:#d1d5db;border-bottom:1px solid rgba(255,255,255,.02)}.ofp-navlog tbody tr:nth-child(2n){background:#ffffff04}.ofp-navlog tbody tr:hover{background:#3b82f60a}.ofp-fix{font-weight:600;color:#3b82f6!important;min-width:48px}.ofp-navlog .ofp-row-dep td,.ofp-navlog .ofp-row-arr td{color:#facc15;font-weight:600}.ofp-navlog .ofp-row-step td{background:#22c55e0f;border-left:2px solid #22c55e}.ofp-navlog .ofp-row-step .ofp-fix{color:#22c55e!important}.step-climb-summary{margin-top:.5rem;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:8px;padding:.5rem .625rem}.step-climb-summary h4{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#22c55e;margin:0 0 .375rem}.step-climb-step{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;border-bottom:1px solid rgba(255,255,255,.025);font-size:.6875rem;font-family:SF Mono,Fira Code,Consolas,monospace}.step-climb-step:last-child{border-bottom:none}.step-fix{color:#22c55e;font-weight:600;min-width:60px}.step-arrow{color:#9ca3af}.step-weight{color:#6b7280}.ofp-content.collapsed{display:none}@media(max-width:768px){#sidebar{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;width:100%;max-width:360px;flex:none;transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1)}#sidebar.mobile-open{transform:translate(0)}#sidebar.collapsed{flex:none;opacity:1;pointer-events:auto;transform:translate(-100%)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:49;background:#00000080;opacity:0;pointer-events:none;transition:opacity .28s ease}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}.sidebar-collapse-btn{position:fixed;top:.75rem;left:.75rem;z-index:51;width:40px;height:40px;border-radius:8px;background:#13151ae0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.07);align-self:auto}.sidebar-collapse-btn svg{width:14px;height:14px;transform:rotate(180deg)}#sidebar.mobile-open~.sidebar-collapse-btn svg{transform:rotate(0)}.toggle-switch{width:44px;height:24px}.toggle-slider:before{height:18px;width:18px;left:3px;bottom:3px}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.calculate-btn,.clear-btn{padding:.75rem;font-size:.875rem}.map-overlay-btn{width:40px;height:40px}.map-overlay-btn svg{width:16px;height:16px}.option-row{padding:.625rem 0;min-height:44px}.section-toggle{padding:.75rem 0;min-height:44px}.export-btn{padding:.625rem .75rem;min-height:44px}.country-selector-trigger{padding:.5625rem .75rem;min-height:44px}.filter-row{padding:.4375rem .75rem;min-height:44px}.filter-panel{right:.75rem;top:3.5rem;width:calc(100vw - 1.5rem);max-width:280px}.etops-toast{left:0}.ofp-weights-fuel{grid-template-columns:1fr}.ofp-navlog-wrapper{-webkit-overflow-scrolling:touch}.help-modal{width:95%;padding:1.25rem}.map-disclaimer{font-size:.625rem;right:.5rem;bottom:.375rem}.module-status-bar{padding:.375rem 1rem;gap:.5rem}}@media(max-width:480px){#sidebar{max-width:100%}.route-endpoints{gap:.75rem;padding:.5rem}.endpoint .icao{font-size:1rem}.ofp-flight-header{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.route-string code{font-size:.6875rem}}@media(hover:none)and (pointer:coarse){.map-overlay-btn{width:44px;height:44px}.country-list li,.fir-list li{padding:.5rem .75rem;min-height:44px}}
