@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);*,:after,:before{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;height:100%;margin:0;overflow:hidden;padding:0}.control-panel{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#040c28e0;border:1px solid #5082ff2e;border-radius:16px;box-shadow:0 4px 32px #0009,inset 0 0 0 1px #ffffff0a;display:flex;flex-direction:column;gap:14px;left:20px;max-height:calc(100vh - 40px);overflow-y:auto;padding:20px;position:absolute;top:20px;width:272px;z-index:10}.control-panel::-webkit-scrollbar{width:3px}.control-panel::-webkit-scrollbar-track{background:#0000}.control-panel::-webkit-scrollbar-thumb{background:#5082ff40;border-radius:2px}.panel-header{display:flex;flex-direction:column;gap:4px}.panel-logo{filter:drop-shadow(0 0 8px rgba(100,180,255,.5));font-size:22px;line-height:1;margin-bottom:2px}.panel-title{color:#fff;font-size:19px;font-weight:800;letter-spacing:-.4px;line-height:1.2;margin:0}.panel-subtitle{color:#8caadca6;font-size:11px;font-weight:400;line-height:1.5;margin:0}.panel-divider{background:linear-gradient(90deg,#0000,#5082ff40 40%,#5082ff40 60%,#0000);height:1px;margin:0 -4px}.panel-section{display:flex;flex-direction:column;gap:8px}.section-label{color:#78a0e68c;font-size:10px;font-weight:700;letter-spacing:.9px;margin:0;text-transform:uppercase}.section-row{align-items:center;display:flex;justify-content:space-between}.section-hint{color:#78a0dc66;font-size:10.5px;font-style:italic;margin:0}.select-wrapper{position:relative}.airport-select{appearance:none;-webkit-appearance:none;background:#0f2355bf;border:1px solid #5082ff38;border-radius:9px;color:#dde8ff;cursor:pointer;font-family:inherit;font-size:12.5px;line-height:1.4;outline:none;padding:9px 30px 9px 11px;transition:border-color .2s,box-shadow .2s;width:100%}.airport-select optgroup,.airport-select option{background:#0a1a3d;color:#dde8ff}.airport-select:hover{border-color:#5082ff66}.airport-select:focus{border-color:#5082ff99;box-shadow:0 0 0 3px #5082ff1a}.select-arrow{color:#5082ff99;font-size:11px;line-height:1;pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.toggle-btn{border:1px solid #0000;border-radius:20px;cursor:pointer;font-family:inherit;font-size:10.5px;font-weight:700;letter-spacing:.5px;padding:4px 13px;transition:all .2s}.toggle-btn.on{background:#00c86426;border-color:#00c8644d;color:#00e87a}.toggle-btn.on:hover{background:#00c86438}.toggle-btn.off{background:#dc3c3c1f;border-color:#dc3c3c40;color:#ff7070}.toggle-btn.off:hover{background:#dc3c3c33}.slider-group{display:flex;flex-direction:column;gap:6px}.slider-info{align-items:baseline;display:flex;justify-content:space-between}.slider-label{color:#8caadc80;font-size:11px}.slider-value{color:#00c8ffe6;font-size:12px;font-weight:600}.arc-slider{-webkit-appearance:none;appearance:none;background:#5082ff2e;border-radius:2px;cursor:pointer;height:4px;outline:none;width:100%}.arc-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#48f;border-radius:50%;box-shadow:0 0 8px #4488ff8c;cursor:pointer;height:14px;-webkit-transition:box-shadow .15s;transition:box-shadow .15s;width:14px}.arc-slider::-webkit-slider-thumb:hover{box-shadow:0 0 12px #48fc}.arc-slider::-moz-range-thumb{background:#48f;border:none;border-radius:50%;box-shadow:0 0 8px #4488ff8c;cursor:pointer;height:14px;width:14px}.slider-range{color:#8caadc59;display:flex;font-size:10px;justify-content:space-between}.legend-items{display:flex;flex-direction:column;gap:8px}.legend-item{align-items:center;color:#bed2f0cc;display:flex;font-size:12px;gap:10px}.legend-dot{border-radius:50%;flex-shrink:0;height:9px;width:9px}.gold-dot{background:gold;box-shadow:0 0 7px #ffd700a6}.blue-dot{background:#64beffbf;box-shadow:0 0 5px #64beff59}.legend-arc{background:linear-gradient(90deg,#00b4ffd9,#003cb44d);border-radius:1px;flex-shrink:0;height:2px;width:22px}.panel-stats{background:#0f235580;border:1px solid #5082ff1a;border-radius:10px;justify-content:space-around;padding:11px 8px}.panel-stats,.stat-item{align-items:center;display:flex}.stat-item{flex-direction:column;gap:3px}.stat-number{color:#fff;font-size:15px;font-weight:700;letter-spacing:-.3px;line-height:1}.stat-label{color:#8caadc80;font-size:9.5px;letter-spacing:.5px;text-align:center;text-transform:uppercase}.stat-divider{background:#5082ff26;height:28px;width:1px}.github-link{align-items:center;background:#141e3cb3;border:1px solid #5082ff2e;border-radius:9px;color:#bed2f5e0;display:inline-flex;font-family:inherit;font-size:12.5px;font-weight:500;gap:8px;justify-content:center;padding:9px 14px;text-decoration:none;transition:all .2s}.github-link:hover{background:#283c6ebf;border-color:#5082ff59;color:#fff}.info-card{animation:cardSlideUp .28s cubic-bezier(.22,1,.36,1) both;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#040c28eb;border:1px solid #5082ff38;border-radius:14px;bottom:24px;box-shadow:0 8px 32px #0000008c,inset 0 0 0 1px #ffffff0a;display:flex;flex-direction:column;gap:10px;left:20px;padding:16px;position:absolute;width:272px;z-index:10}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.info-card-header{align-items:center;display:flex;gap:10px}.info-iata{color:gold;font-size:24px;font-weight:800;letter-spacing:1.5px;line-height:1;text-shadow:0 0 16px #ffd70066}.info-rank-badge{background:#ffd7001a;border:1px solid #ffd70038;border-radius:20px;color:#ffd700d9;font-size:10.5px;font-weight:600;letter-spacing:.2px;padding:3px 10px}.info-name{color:#c8dafae6;font-size:13.5px;font-weight:500;line-height:1.3;margin:0}.info-coords{display:flex;gap:18px}.coord-item{display:flex;flex-direction:column;gap:2px}.coord-label{color:#5082ff99;font-size:9px;font-weight:700;letter-spacing:.9px;text-transform:uppercase}.coord-value{font-feature-settings:"tnum";color:#bed7ffe6;font-size:13px;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:.3px}.info-bc-note{border-top:1px solid #5082ff1a;color:#8caadc8c;font-size:11px;line-height:1.55;margin:0;padding-top:8px}.route-panel{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#040c28e0;border:1px solid #5082ff2e;border-radius:16px;box-shadow:0 4px 32px #0009,inset 0 0 0 1px #ffffff0a;gap:14px;padding:20px;position:absolute;right:20px;top:20px;width:272px;z-index:10}.route-header,.route-panel{display:flex;flex-direction:column}.route-header{gap:4px}.route-logo{color:gold;filter:drop-shadow(0 0 8px rgba(255,215,0,.45));font-size:20px;line-height:1}.route-title{color:#fff;font-size:17px;font-weight:800;letter-spacing:-.3px;line-height:1.2;margin:0}.route-subtitle{color:#8caadca6;font-size:11px;line-height:1.5;margin:0}.route-fields{align-items:flex-end;display:flex;gap:8px}.route-field{display:flex;flex:1 1;flex-direction:column;gap:6px}.route-input{background:#0f2355bf;border:1px solid #5082ff38;border-radius:9px;box-sizing:border-box;color:#dde8ff;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:1.5px;outline:none;padding:9px 11px;text-align:center;text-transform:uppercase;transition:border-color .2s,box-shadow .2s;width:100%}.route-input::placeholder{color:#78a0dc66;font-size:12px;font-weight:400;letter-spacing:.5px}.route-input:hover{border-color:#5082ff66}.route-input:focus{border-color:#5082ff99;box-shadow:0 0 0 3px #5082ff1a}.route-arrow-icon{color:#78a0e68c;font-size:15px;padding-bottom:9px}.route-modes{display:flex;gap:6px}.route-mode{background:#0f235580;border:1px solid #5082ff26;border-radius:8px;color:#96b4e6b3;cursor:pointer;flex:1 1;font-family:inherit;font-size:11px;font-weight:600;padding:7px 8px;transition:all .2s}.route-mode:hover{border-color:#5082ff59}.route-mode.active{background:#4488ff2e;border-color:#5082ff80;color:#9cc2ff}.route-btn{background:#4488ffd9;border:1px solid #78aaff80;border-radius:9px;color:#fff;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;letter-spacing:.3px;padding:10px 14px;transition:all .2s}.route-btn:hover:not(:disabled){background:#5898fff2;box-shadow:0 0 16px #48f6}.route-btn:disabled{cursor:default;opacity:.6}.route-result{animation:routeFadeIn .25s ease both;background:#0f235580;border:1px solid #5082ff26;border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:12px}@keyframes routeFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.route-path{color:gold;font-size:13.5px;font-weight:700;line-height:1.5;text-shadow:0 0 12px #ffd70040;word-break:break-word}.route-meta{color:#a0beebbf;display:flex;flex-wrap:wrap;font-size:11px;gap:6px 10px}.route-meta span{background:#5082ff1a;border-radius:5px;padding:2px 7px}.route-algo{letter-spacing:.5px;text-transform:uppercase}.route-error{background:#dc3c3c1a;border-color:#dc3c3c40}.route-error-title{color:#ff8080;font-size:12.5px;font-weight:700}.route-error-msg{color:#e6aaaacc;font-size:11.5px;line-height:1.45}.hover-tooltip{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#040c28f2;border:1px solid #5082ff4d;border-radius:8px;box-shadow:0 4px 16px #00000080;display:flex;gap:8px;opacity:0;padding:6px 11px;pointer-events:none;position:fixed;transform:translateY(3px);transition:opacity .12s ease,transform .12s ease;white-space:nowrap;z-index:100}.hover-tooltip.tooltip-visible{opacity:1;transform:translateY(0)}.tooltip-id{color:#fff;font-size:13px;font-weight:700;letter-spacing:.8px}.tooltip-hub{background:#ffd7001a;border:1px solid #ffd70038;border-radius:10px;color:gold;font-size:10px;font-weight:600;padding:1px 7px}.globe-container{background-color:#001;height:100vh;overflow:hidden;position:relative;width:100vw}
/*# sourceMappingURL=main.12afffdb.css.map*/