*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;overflow:hidden;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f2f5;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{padding:20px;text-align:center}.App-header{background-color:#282c34;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;margin-bottom:20px;padding:20px}h1{font-size:2rem;margin:0}main{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:800px;padding:20px}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#0f172acc;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalFadeIn .3s cubic-bezier(.2,.8,.2,1);background:#1e293b;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 20px 60px #0006;color:#f8fafc;max-width:500px;overflow:hidden;padding:20px 24px;position:relative;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content:before{background:linear-gradient(90deg,#6366f1,#8b5cf6);content:"";height:4px;left:0;position:absolute;right:0;top:0}.close-button{align-items:center;background:#ffffff1a;border:none;border-radius:50%;box-shadow:0 2px 4px #0003;color:#94a3b8;cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s ease;width:32px}.close-button:hover{background:#fff3;color:#f8fafc;transform:rotate(90deg)}h3{color:#f8fafc;font-size:1.4rem;font-weight:600;margin:0 0 16px;text-align:center}h4{color:#e2e8f0;font-size:1.1rem;font-weight:500;margin:0}.route-info{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;margin-bottom:16px;overflow:hidden;padding:12px 14px;position:relative}.airport-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;margin-bottom:8px}.airport-label{color:#94a3b8;flex-shrink:0;font-size:.75rem;font-weight:600;letter-spacing:.05em;min-width:35px;text-transform:uppercase}.airport-name{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;box-shadow:0 1px 2px #0003;color:#f8fafc;font-size:.85rem;font-weight:600;padding:4px 10px}.airport-connector{color:#64748b;font-size:.9rem;font-weight:600;margin:0 6px}.route-stats{display:flex;gap:12px;margin-top:10px}.stat-item{display:flex;flex:1 1;flex-direction:column;gap:4px}.stat-label{color:#94a3b8;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.stat-value{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;color:#f8fafc;font-size:.85rem;font-weight:600;padding:4px 8px;text-align:center}.delay-controls{background:#0000;border-radius:12px;padding:0}.delay-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.delay-badge{background:#ffffff1a;border-radius:12px;color:#cbd5e1;font-size:.8rem;font-weight:600;padding:4px 12px;transition:all .2s}.delay-badge.delay-low{background:#3b82f633;color:#93c5fd}.delay-badge.delay-medium{background:#f59e0b33;color:#fbbf24}.delay-badge.delay-high{background:#ef444433;color:#f87171}.delay-buttons{gap:12px;margin-bottom:12px}.delay-button,.delay-buttons{align-items:center;display:flex}.delay-button{background:#ffffff1a;border:2px solid #fff3;border-radius:50%;color:#6366f1;cursor:pointer;flex-shrink:0;font-size:1rem;font-weight:600;height:36px;justify-content:center;transition:all .2s;width:36px}.delay-button:hover:not(:disabled){background:#6366f133;border-color:#6366f166;transform:scale(1.05)}.delay-button:disabled{cursor:not-allowed;opacity:.5}.delay-slider{background:#ffffff0d;border-radius:2px;display:flex;flex:1 1;flex-direction:column;height:32px;justify-content:center;position:relative}.delay-progress{background:#6366f1;border-radius:2px;height:4px;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:width .3s ease}.delay-ticks{color:#64748b;display:flex;font-size:.75rem;justify-content:space-between;margin-top:20px;padding:0 2px;width:100%}.delay-tip{border-top:1px solid #ffffff1a;color:#94a3b8;font-size:.85rem;margin-top:20px;padding:10px 0;text-align:center}.delay-warning{align-items:center;color:#f87171;display:inline-flex;font-weight:500;gap:6px}.action-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:16px;opacity:1;transform:translateY(0);transition:all .3s ease}.action-buttons.skeleton{opacity:.6;pointer-events:none}.action-buttons.hidden{height:0;margin:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateY(20px)}.action-button{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease}.action-button.skeleton{animation:pulse 2s infinite;background:#ffffff1a!important;color:#ffffff80!important;cursor:not-allowed}.action-button svg{font-size:1rem}.expandable-options{margin:16px 0}.option-section{border:1px solid #ffffff1a;border-radius:8px;margin-bottom:8px;overflow:hidden}.option-header{align-items:center;background:#ffffff0d;border:none;color:#f8fafc;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:12px;padding:12px 16px;transition:all .2s ease;width:100%}.option-header:hover{background:#ffffff1a}.option-header.expanded{background:#6366f11a;border-bottom:1px solid #ffffff1a}.option-icon{color:#6366f1}.delay-icon,.distance-icon,.option-icon{font-size:1rem}.expand-arrow{font-size:.8rem;margin-left:auto;transition:transform .2s ease}.option-content{background:#ffffff05;padding:12px}.distance-controls{display:flex;gap:8px}.distance-option,.time-option{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;flex:1 1;min-width:0;padding:6px}.distance-option h4,.time-option h4{color:#f8fafc;font-size:.8rem;font-weight:600;margin:0 0 6px}.distance-input-group,.time-input-group{align-items:center;display:flex;gap:6px;margin-bottom:4px}.distance-input,.time-input{appearance:none;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#f8fafc;font-size:.8rem;max-width:80px;padding:4px 6px;width:100%}.distance-input::-webkit-inner-spin-button,.distance-input::-webkit-outer-spin-button,.time-input::-webkit-inner-spin-button,.time-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.distance-input:focus,.time-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f133;outline:none}.input-with-controls{align-items:center;display:flex;position:relative}.input-controls{display:flex;flex-direction:column;margin-left:2px}.input-arrow{align-items:center;background:#ffffff1a;border:1px solid #fff3;color:#94a3b8;cursor:pointer;display:flex;font-size:8px;height:12px;justify-content:center;padding:0;transition:all .2s ease;width:16px}.input-arrow.up{border-bottom:none;border-radius:2px 2px 0 0}.input-arrow.down{border-radius:0 0 2px 2px}.input-arrow:hover{background:#6366f133;border-color:#6366f166;color:#6366f1}.input-arrow:active{background:#6366f14d;transform:scale(.95)}.distance-unit,.time-unit{color:#94a3b8;font-size:.75rem;font-weight:500;min-width:25px}.distance-note,.time-note{color:#64748b;font-size:.7rem;font-style:italic;margin:0}.frequency-only-controls{margin:16px 0}.frequency-controls{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;margin:8px 0;padding:8px}.frequency-header{align-items:center;display:flex;gap:6px;margin-bottom:6px}.frequency-icon{color:#6366f1;font-size:1rem}.frequency-badge{background:#ffffff1a;border-radius:12px;color:#cbd5e1;font-size:.8rem;font-weight:600;margin-left:auto;padding:4px 12px;transition:all .2s}.frequency-badge.frequency-low{background:#3b82f633;color:#93c5fd}.frequency-badge.frequency-medium{background:#22c55e33;color:#86efac}.frequency-badge.frequency-high{background:#f59e0b33;color:#fbbf24}.frequency-badge.frequency-very{background:#ef444433;color:#f87171}.frequency-slider{margin:8px 0}.frequency-labels{color:#94a3b8;display:flex;font-size:.8rem;justify-content:space-between;margin-bottom:6px}.frequency-range{appearance:none;background:#fff3;border-radius:3px;height:6px;margin:10px 0;outline:none;width:100%}.frequency-range::-webkit-slider-thumb{-webkit-appearance:none;background:#6366f1;border-radius:50%;cursor:pointer;height:20px;-webkit-transition:all .2s;transition:all .2s;width:20px}.frequency-range::-webkit-slider-thumb:hover{box-shadow:0 0 0 4px #6366f14d;transform:scale(1.1)}.frequency-ticks{display:flex;height:16px;justify-content:space-between;margin-top:8px;position:relative}.frequency-ticks:before{background:#fff3;content:"";height:2px;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:1}.tick{background:#ffffff4d;border-radius:50%;cursor:pointer;height:12px;position:relative;transition:all .2s;width:12px;z-index:2}.tick.active{background:#6366f1;transform:scale(1.3)}.frequency-description{align-items:center;background:#6366f11a;border-radius:4px;color:#cbd5e1;display:flex;font-size:.75rem;gap:6px;margin-top:6px;padding:4px 8px}.description-icon{color:#38bdf8;font-size:.9rem}.time-controls{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;margin:24px 0;padding:16px}.time-controls h4{align-items:center;color:#4b5563;display:flex;font-size:1rem;gap:8px;margin-bottom:16px}.time-input-group{display:flex;flex-wrap:wrap;gap:16px}.time-input{flex:1 1;min-width:140px}.time-input label{align-items:center;color:#6b7280;display:block;display:flex;font-size:.85rem;font-weight:500;gap:6px;margin-bottom:8px}.time-picker{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:#1f2937;font-size:.95rem;padding:10px 12px;transition:all .2s;width:100%}.time-picker:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.time-picker::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.5)}.time-picker:disabled{background:#f3f4f6;cursor:not-allowed}.apply-button{background-color:#6366f1;color:#fff}.apply-button:hover{background-color:#4f46e5;box-shadow:0 4px 6px #0000004d;transform:translateY(-1px)}.cancel-button{background-color:#ffffff1a;color:#cbd5e1}.cancel-button:hover{background-color:#fff3;box-shadow:0 4px 6px #0000004d;transform:translateY(-1px)}@media (max-width:480px){.modal-content{padding:24px 16px}.airport-row{align-items:flex-start;flex-direction:column;gap:4px}.airport-connector{display:none}.distance-badge{display:inline-block;margin-top:8px;position:static}}.graph-canvas{background-color:#0f172a;background-image:linear-gradient(#cbd5e10d 1px,#0000 0),linear-gradient(90deg,#cbd5e10d 1px,#0000 0);background-position:-1px -1px;background-size:40px 40px;height:100%;overflow:hidden;position:relative;touch-action:none;width:100%}.routes-layer{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.custom-distance-bg{fill:#22c55ee6!important;stroke:#16a34a;stroke-width:2px}.custom-distance-text{fill:#fff!important;font-weight:700;text-shadow:0 0 6px #22c55ecc}.business-indicator{left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:5}.crow{animation:fly-around 3s linear infinite;color:#fbbf24;font-size:8px;opacity:.8;position:absolute}.crow-1{animation-delay:0s}.crow-2{animation-delay:.5s}.crow-3{animation-delay:1s}.crow-4{animation-delay:1.5s}.crow-5{animation-delay:2s}.crow-6{animation-delay:2.5s}@keyframes fly-around{0%{opacity:.8;transform:translate(0) rotate(0deg)}25%{opacity:1;transform:translate(15px,-10px) rotate(90deg)}50%{opacity:.8;transform:translateY(-20px) rotate(180deg)}75%{opacity:1;transform:translate(-15px,-10px) rotate(270deg)}to{opacity:.8;transform:translate(0) rotate(1turn)}}.moderate .crow{animation-duration:4s}.busy .crow{animation-duration:2.5s;font-size:10px}.very-busy .crow{animation-duration:1.5s;color:#f87171;font-size:12px}.delay-low{stroke:#60a5fa;stroke-dasharray:8,4;stroke-width:4px!important;animation:dash-animation 2s linear infinite;filter:drop-shadow(0 0 2px #60a5fa);opacity:.9}.delay-medium{stroke:#fbbf24;stroke-dasharray:6,3;stroke-width:5px!important;animation:dash-animation 1.5s linear infinite;filter:drop-shadow(0 0 3px #fbbf24);opacity:.9}.delay-high{stroke:#f87171;stroke-dasharray:4,2;stroke-width:6px!important;animation:dash-animation 1s linear infinite;filter:drop-shadow(0 0 4px #f87171);opacity:.95}@keyframes dash-animation{to{stroke-dashoffset:-12}}.route{stroke:#a0aec0;stroke-width:2;stroke-linecap:round;fill:none;pointer-events:none;transition:all .2s ease}.route.faded{stroke:#4a5568;opacity:.3}.route.highlighted.faded{stroke:#3b82f6;stroke-width:4;opacity:1}.route-label{fill:#f8fafc;stroke:none;text-shadow:0 0 4px #000c}.route-label,.route-label-bg{font-size:13px;font-weight:700;pointer-events:none;-webkit-user-select:none;user-select:none}.route-label-bg{fill:none;stroke-width:4;opacity:.9}.frequency-indicator{fill:#94a3b8;font-size:10px;font-weight:500;transition:all .3s ease}.frequency-text{fill:#94a3b8;font-size:12px;font-weight:600;pointer-events:none;text-shadow:0 0 3px #000000b3;-webkit-user-select:none;user-select:none}.frequency-low{color:#60a5fa}.frequency-medium{color:#fbbf24}.frequency-high{color:#4ade80;font-weight:600}.frequency-indicator.has-delay{animation:pulse-red 1.5s infinite}.frequency-indicator.has-delay .frequency-text.has-delay{fill:#f87171;font-size:13px;font-weight:700;text-shadow:0 0 4px #000c}.frequency-indicator.has-delay circle{fill:#ef4444;stroke:#fff;stroke-width:.5}.frequency-none{opacity:.5}.clickable-route:hover~.frequency-indicator{opacity:1;transform:scale(1.1)}.route.highlighted+.route-label-group .frequency-indicator{opacity:1;transform:scale(1.2)}.frequency-high .frequency-text{font-weight:700}@keyframes pulse-red{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}.route-label-bg{stroke:#0f172a;stroke-width:4px;stroke-linejoin:round;opacity:.7;paint-order:stroke}.clickable-route{stroke:#0000;stroke-width:20;cursor:pointer;pointer-events:all;transition:all .1s ease}.clickable-route:hover{stroke:#4299e133;stroke-width:24}.clickable-route:hover~.route{stroke:#60a5fa!important;stroke-width:8px!important;filter:drop-shadow(0 0 4px rgba(96,165,250,.8));opacity:1!important}.route.delayed{stroke:#d64550;stroke-width:7px;stroke-dasharray:8,6;opacity:.9}.route.highlighted.delayed{stroke:#ff6b6b;stroke-width:8px;stroke-dasharray:10,6;animation:dash 1s linear infinite;filter:drop-shadow(0 0 10px rgba(255,107,107,.6));opacity:1}.route.highlighted,.route.highlighted-reverse{stroke:#3b82f6;stroke-width:8px;stroke-dasharray:none;animation:pulse 1.5s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(59,130,246,.6));opacity:1}.route.highlighted-reverse.faded{stroke:#3b82f6;opacity:1}.airports-layer{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}.airport,.airports-layer .airport{pointer-events:auto}.airport{align-items:center;background:linear-gradient(135deg,#6b4eff,#4a6fa5);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;transition:all .5s ease-in-out;width:40px;z-index:20}.airport-icon{color:#fff;filter:drop-shadow(0 0 2px rgba(0,0,0,.5));height:24px;margin-right:0;width:24px}.airport:hover{box-shadow:0 4px 8px #0000004d;transform:scale(1.1)}.airport.highlighted{background-color:#4caf50;box-shadow:0 0 0 3px #4caf5080}.airport.selected{animation:pulse-gold 2s infinite;background:linear-gradient(135deg,gold,orange);box-shadow:0 0 0 4px #ffd70080,0 0 20px #ffd70080;transform:scale(1.1);z-index:30}@keyframes pulse-gold{0%{box-shadow:0 0 0 0 #ffd700b3}70%{box-shadow:0 0 0 10px #ffd70000}to{box-shadow:0 0 0 0 #ffd70000}}.airport.disabled{background-color:#757575!important;border-color:#9e9e9e!important;cursor:not-allowed;opacity:.3!important;transition:all .5s ease-in-out!important}.airport-tooltip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172af2;border:1px solid #334155;border-radius:8px;box-shadow:0 4px 20px #0000004d;color:#f8fafc;font-size:14px;max-width:280px;opacity:0;padding:12px;pointer-events:none;position:fixed;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease;z-index:1000}.airport-tooltip h4{align-items:center;color:#60a5fa;display:flex;font-size:16px;font-weight:600;gap:6px;margin:0 0 8px}.airport-tooltip h4 svg{color:#60a5fa;font-size:14px}.tooltip-details{display:flex;flex-direction:column;gap:4px}.tooltip-details div{align-items:center;display:flex;gap:6px;line-height:1.4;margin:4px 0}.code-badges{display:flex;gap:10px;margin:8px 0 12px}.code-badge{align-items:center;border-radius:6px;box-shadow:0 2px 4px #0000001a;display:inline-flex;flex-direction:column;font-size:12px;font-weight:600;min-width:60px;padding:6px 10px;text-transform:uppercase}.code-badge iata{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.code-badge icao{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff}.code-badge strong{font-size:10px;font-weight:500;margin-bottom:2px;opacity:.9}.code-value{font-size:14px;font-weight:700;letter-spacing:.5px}.tooltip-details strong{color:#94a3b8;display:inline-block;font-weight:500;min-width:70px}.airport-pulse{animation:pulse 2s infinite;background:#4caf5099;border-radius:50%;height:40px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:40px;z-index:-1}.reset-delays-button{background:#f44336;border:none;border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;position:absolute;right:20px;top:20px;transition:all .2s ease;z-index:1000}.reset-delays-button:hover{background:#d32f2f;box-shadow:0 4px 8px #0003;transform:translateY(-1px)}.reset-delays-button:active{box-shadow:0 1px 2px #0003;transform:translateY(1px)}.run-dijkstra-button{align-items:center;background:#4caf50;border:none;border-radius:4px;box-shadow:0 2px 5px #0003;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;position:absolute;right:150px;top:20px;transition:all .2s ease;z-index:100}.run-dijkstra-button:hover{background:#43a047;box-shadow:0 3px 6px #00000040;transform:translateY(-1px)}.run-dijkstra-button:active{box-shadow:0 1px 3px #0003;transform:translateY(0)}.airport .airport-icon{color:#fff;font-size:12px}.airport .airport-code{background:#000000b3;border-radius:4px;bottom:-18px;color:#fff;font-size:10px;left:50%;opacity:0;padding:2px 6px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .2s ease;white-space:nowrap}.airport:hover .airport-code{opacity:1}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.airport-enter{animation:popIn .3s ease-out forwards}.graph-canvas.edit-mode{cursor:crosshair}.graph-canvas.edit-mode .airport{background:linear-gradient(135deg,#ef4444,#dc2626);border:3px solid #ef4444;box-shadow:0 0 0 3px #ef44444d,0 4px 12px #00000026;cursor:pointer;transform:scale(1.05)}.graph-canvas.edit-mode .airport:hover{box-shadow:0 0 0 4px #ef444480,0 6px 16px #00000040;transform:scale(1.15)}.graph-canvas.edit-mode .route{filter:blur(1px);opacity:.3}.graph-canvas.edit-mode .frequency-indicator,.graph-canvas.edit-mode .route-label{opacity:.3}.graph-canvas.edge-draw-mode{cursor:crosshair}.graph-canvas.edge-draw-mode .airport{background:linear-gradient(135deg,#10b981,#059669);border:3px solid #10b981;box-shadow:0 0 0 3px #10b9814d,0 4px 12px #00000026;cursor:pointer;transform:scale(1.05)}.graph-canvas.edge-draw-mode .airport:hover{box-shadow:0 0 0 4px #10b98180,0 6px 16px #00000040;transform:scale(1.15)}.airport.selected-for-edge{animation:pulse-orange 1.5s infinite;background:linear-gradient(135deg,#f59e0b,#d97706)!important;border:3px solid #f59e0b!important;box-shadow:0 0 0 4px #f59e0b80,0 6px 16px #00000040!important}@keyframes pulse-orange{0%{box-shadow:0 0 0 0 #f59e0bb3}70%{box-shadow:0 0 0 10px #f59e0b00}to{box-shadow:0 0 0 0 #f59e0b00}}@media (max-width:768px){.airport{height:20px;width:20px}.airport .airport-icon{font-size:10px}.airport .airport-code{bottom:-16px;font-size:9px}}.tooltip{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#1e293bf2;border:1px solid #ffffff1a;border-radius:8px;box-shadow:0 4px 6px -1px #0003,0 2px 4px -1px #0000001a;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;margin-top:-10px;max-width:280px;opacity:0;padding:12px;pointer-events:none;position:fixed;transform:translate(-50%,-100%);transition:opacity .15s ease,transform .15s ease;z-index:1000}.tooltip:after{border-color:#1e293bf2 #0000 #0000;border-style:solid;border-width:6px 6px 0;bottom:-6px;content:"";left:50%;position:absolute;transform:translateX(-50%)}.tooltip-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;margin-bottom:8px;padding-bottom:8px}.tooltip-title{color:#fff;font-size:1rem;font-weight:600;margin:0}.tooltip-code{background:#ffffff1a;border-radius:4px;color:#94a3b8;font-size:.75rem;font-weight:500;margin-left:8px;padding:2px 6px}.tooltip-body{font-size:.85rem;line-height:1.5}.tooltip-row{display:flex;margin:4px 0}.tooltip-label{color:#94a3b8;font-weight:500;margin-right:8px;min-width:80px}.tooltip-value{color:#fff;flex:1 1;word-break:break-word}.tooltip-enter{opacity:0;transform:translate(-50%,-90%)}.tooltip-enter-active{transition:opacity .15s ease-out,transform .15s ease-out}.tooltip-enter-active,.tooltip-exit{opacity:1;transform:translate(-50%,-100%)}.tooltip-exit-active{opacity:0;transform:translate(-50%,-90%);transition:opacity .1s ease-in,transform .1s ease-in}.toast{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172af2;border:1px solid #334155;border-radius:8px;box-shadow:0 10px 25px #0003;display:flex;gap:12px;max-width:400px;min-width:300px;padding:16px;position:fixed;right:20px;top:20px;transition:all .3s ease-in-out;z-index:1000}.toast-show{opacity:1;transform:translateX(0)}.toast-hide{opacity:0;transform:translateX(100%)}.toast-icon{font-size:18px;font-weight:700;min-width:20px;text-align:center}.toast-message{color:#f8fafc;flex:1 1;font-size:14px;line-height:1.4}.toast-close{align-items:center;background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;padding:0;transition:color .2s ease;width:20px}.toast-close:hover{background:#ffffff1a;color:#f8fafc}.toast-success{border-left:4px solid #10b981}.toast-success .toast-icon{color:#10b981}.toast-error{border-left:4px solid #ef4444}.toast-error .toast-icon{color:#ef4444}.toast-warning{border-left:4px solid #f59e0b}.toast-warning .toast-icon{color:#f59e0b}.toast-info{border-left:4px solid #3b82f6}.toast-info .toast-icon{color:#3b82f6}.algorithm-selector{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 24px #00000026;margin-bottom:24px;padding:20px;width:100%}.algorithm-selector h3{color:#f8fafc;font-size:1.2rem;font-weight:700;letter-spacing:.5px;margin:0 0 16px;text-transform:uppercase}.required{color:#f87171;font-size:18px;font-weight:700;line-height:1;margin-left:4px}.algorithm-options{display:flex;flex-direction:column;gap:8px}.algorithm-option{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#3b82f626,#9333ea1a);border:2px solid #3b82f64d;border-radius:6px;box-shadow:0 2px 8px #3b82f633;cursor:pointer;display:flex;padding:8px 12px;position:relative;transition:all .3s ease}.algorithm-option:hover{background:#3b82f64d;border-color:#3b82f6cc}.algorithm-option input[type=radio]{accent-color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));margin-right:12px;transform:scale(1.1)}.algorithm-option span{color:#fff;font-size:14px;font-weight:600;position:relative;text-shadow:0 1px 2px #0000004d;z-index:1}.algorithm-option.unselected{opacity:.8}.instructions{background-color:#f8f9fa;border-left:4px solid #4caf50;border-radius:8px;box-sizing:border-box;color:#333;font-size:14px;line-height:1.6;margin-top:20px;padding:15px;text-align:left;width:100%}.instructions p{color:#2c3e50;font-weight:600;margin:0 0 10px}.instructions ol{display:flex;flex-direction:column;gap:8px;margin:0 0 10px 20px;padding:0}.instructions li{color:#495057;margin-bottom:6px}.instructions .note{border-top:1px dashed #dee2e6;color:#6c757d;font-size:13px;font-style:italic;margin:10px 0 0;padding-top:10px}.algorithm-settings-panel{background-color:#1e293b;border-right:1px solid #ffffff1a;box-shadow:2px 0 10px #0000004d;color:#f8fafc;height:100%;left:0;overflow-y:auto;padding:20px;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease-in-out;width:300px;z-index:1002}.algorithm-settings-panel.is-visible{transform:translateX(0)}.panel-header{align-items:center;border-bottom:1px solid #334155;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:10px}.panel-header h3{color:#60a5fa;font-size:1.2rem;font-weight:600;margin:0}.setting-item{margin-bottom:15px}.setting-item label{color:#94a3b8;display:block;font-size:14px;margin-bottom:5px}.setting-item input[type=range],.setting-item select{background-color:#1e293b;border:1px solid #334155;border-radius:4px;color:#f8fafc;margin-top:5px;padding:8px;width:100%}.setting-item input[type=range]{appearance:none;background:#334155;border-radius:2px;height:4px;margin:10px 0;padding:0}.setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#60a5fa;border-radius:50%;cursor:pointer;height:16px;width:16px}.setting-item input[type=checkbox]{cursor:pointer;height:16px;margin-right:10px;width:16px}.close-btn{background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;font-size:24px;line-height:1;padding:0 8px;position:absolute;right:10px;top:10px}.close-btn:hover{background-color:#334155}.panel-actions{border-bottom:1px solid #334155;border-top:1px solid #334155;margin:20px 0;padding:15px 0}.visualize-btn{border-radius:6px;transition:all .2s ease}.visualize-btn.need-two{cursor:not-allowed;position:relative}.visualize-btn.need-two:after{content:none}.visualize-btn.need-two:hover{box-shadow:none}.visualize-btn .no-entry-icon{background:#ff4d4f1f;border:2px solid #ff4d4f;border-radius:50%;display:inline-block;height:16px;margin-right:8px;position:relative;width:16px}.visualize-btn .no-entry-icon:after{background:#ff4d4f;border-radius:1px;content:"";height:2px;left:2px;position:absolute;right:2px;top:50%;transform:translateY(-50%)}.visualize-btn{align-items:center;background-color:#4a6cf7;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 15px;transition:all .2s ease-in-out;width:100%}.visualize-btn:hover{background-color:#3a5bd9;box-shadow:0 2px 8px #4a6cf74d;transform:translateY(-1px)}.visualize-btn:active{transform:translateY(0)}.progress-bar-container{margin:20px 0;opacity:.5;padding:15px 0;transition:opacity .3s ease}.progress-bar-container.active{opacity:1}.progress-bar-label{color:#94a3b8;font-size:.9rem;margin-bottom:8px}.progress-bar-outer{background-color:#334155;border-radius:5px;height:10px;overflow:hidden;width:100%}.progress-bar-inner{background:linear-gradient(90deg,#4a6cf7,#60a5fa);border-radius:5px;height:100%;transition:width .5s ease-in-out}.progress-bar-container.active .progress-bar-inner{animation:pulse 1.5s infinite;background:linear-gradient(90deg,#4a6cf7,#60a5fa);box-shadow:0 0 10px #4a6cf780}@keyframes pulse{0%{box-shadow:0 0 5px #4a6cf780}50%{box-shadow:0 0 15px #4a6cf7cc}to{box-shadow:0 0 5px #4a6cf780}}.progress-bar-text{color:#94a3b8;font-size:.8rem;margin-top:5px;text-align:right}.progress-bar-container.active .progress-bar-text{color:#60a5fa;font-weight:500}.visualize-section{border-top:1px solid #ffffff1a;margin:20px 0;padding:15px 0}.metrics-section{border-top:1px solid #ffffff1a;margin-top:20px;padding-top:15px}.metrics-section h4{color:#60a5fa;font-size:1.1rem;margin-bottom:15px}.metrics-grid{transition:opacity .16s ease}.metrics-grid.faded{opacity:.5}.metrics-grid.revealed{animation:metricsReveal .32s ease-out;position:relative}@keyframes metricsReveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.metrics-notice{background:#60a5fa1f;border:1px dashed #60a5fa59;border-radius:8px;color:#93c5fd;font-size:.88rem;margin-bottom:10px;padding:8px 10px}.metrics-notice.faded{filter:grayscale(15%);opacity:.6}.metrics-updated-badge{background:#10b981f2;border-radius:999px;bottom:-6px;box-shadow:0 4px 10px #0003;color:#06221a;font-size:.75rem;font-weight:800;padding:4px 10px;position:absolute;right:8px;transform:translateY(100%)}.sets-visualizer{background:#ffffff08;border:1px solid #ffffff0f;border-radius:8px;box-sizing:border-box;margin-bottom:14px;margin-top:8px;max-width:100%;overflow:hidden;padding:12px;width:100%}.sets-visualizer.faded{filter:grayscale(10%);opacity:.55}.sets-title{color:#60a5fa;font-size:1rem;margin:0 0 6px}.sets-subtitle{color:#94a3b8;font-size:.82rem;margin-bottom:10px}.sets-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.set-box{background:#0f172a80;border:1px solid #ffffff0f;border-radius:8px;min-width:0;padding:10px}.set-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.set-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:700;letter-spacing:.2px;padding:3px 8px}.set-badge.open{background:#3b82f633;border:1px solid #93c5fd59;color:#93c5fd}.set-badge.closed{background:#64748b40;border:1px solid #94a3b859;color:#cbd5e1}.set-count{color:#e2e8f0;font-size:.9rem;font-weight:800}.set-dots{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(10,1fr);overflow:hidden}.dot{border-radius:50%;display:inline-block;height:8px;width:8px}.dot.open{background:#3b82f6;box-shadow:0 0 6px #3b82f699}.dot.closed{background:#64748b}.astar-info-card{background:#eab308e6;border-radius:10px;box-shadow:0 8px 18px #00000040;box-sizing:border-box;color:#0f172a;margin-bottom:14px;margin-top:8px;max-width:100%;padding:12px 14px;transition:opacity .16s ease,background-color .16s ease;width:100%}.astar-title{font-size:1rem;font-weight:800;margin-bottom:6px}.astar-stats .row{align-items:center;display:flex;justify-content:space-between;padding:2px 0}.astar-stats .label{font-weight:700}.astar-stats .value{font-weight:800}.astar-info-card.faded{background:#eab3088c;opacity:.55}@media (max-width:560px){.sets-grid{grid-template-columns:1fr}}.metrics-locked{align-items:center;background:#0f172a73;border:1px dashed #60a5fa59;border-radius:8px;display:flex;justify-content:center;padding:20px 12px}.metrics-locked-pill{background:#1e3a8ab8;border:1px solid #60a5fa8c;border-radius:999px;box-shadow:0 6px 16px #02061759,inset 0 0 12px #60a5fa2e;color:#e2e8f0;font-weight:600;letter-spacing:.2px;padding:8px 14px;text-shadow:0 1px 2px #0006}.metrics-section h5{color:#94a3b8;font-size:.95rem;margin:15px 0 10px}.metrics-grid{grid-gap:12px;animation:fadeSlideIn .26s ease-out both;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:15px}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.metric-item{background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;overflow:hidden;padding:12px;position:relative;transition:all .2s ease}.metric-item.faded{filter:grayscale(15%);opacity:1;position:relative}.metric-item.faded:before{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:linear-gradient(180deg,#0f172a80,#0f172aa6);border-radius:6px;content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.metric-item.faded:after{background:#1e3a8aa6;border:1px solid #60a5fa73;border-radius:999px;box-shadow:0 4px 12px #02061759,inset 0 0 12px #60a5fa26;color:#e2e8f0;content:"⏳ Available after completion";font-size:.85rem;font-weight:600;left:50%;letter-spacing:.2px;padding:6px 12px;pointer-events:none;position:absolute;text-shadow:0 1px 2px #00000080;top:50%;transform:translate(-50%,-50%);z-index:2}.metric-item:hover{background:#ffffff0d;border-color:#60a5fa4d}.metric-label{color:#94a3b8;font-size:.8rem;margin-bottom:4px}.metric-value{color:#f8fafc;font-size:1.2rem;font-weight:600;margin:4px 0}.metric-description{color:#64748b;font-size:.7rem;font-style:italic}.metrics-legend{background:#0f172a80;border-radius:6px;margin-top:15px;padding:12px}.metrics-legend ul{margin:8px 0 0;padding-left:20px}.metrics-legend li{color:#94a3b8;font-size:.75rem;line-height:1.4;margin-bottom:6px}.metrics-legend strong{color:#f8fafc;font-weight:500}.algorithm-settings-panel::-webkit-scrollbar{width:8px}.algorithm-settings-panel::-webkit-scrollbar-track{background:#1e293b80;border-radius:4px}.algorithm-settings-panel::-webkit-scrollbar-thumb{background:#60a5fa;border-radius:4px}.algorithm-settings-panel::-webkit-scrollbar-thumb:hover{background:#3b82f6}.algorithm-settings-panel{scrollbar-color:#60a5fa #0f172a80;scrollbar-width:thin}@keyframes slideIn{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}.algorithm-settings-panel{animation:slideIn .3s ease-out forwards}@media (max-width:768px){.algorithm-settings-panel{left:250px;width:250px}}.grid-page{color:#f8fafc;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;height:100vh;overflow:hidden;position:relative;width:100%}.grid-page,.grid-page.algorithm-visualization{background-color:#0f172a}.panel-section.faded{opacity:.4;transition:opacity .3s ease}.panel-section.faded h3{color:#64748b}.panel-section.faded button{cursor:not-allowed;opacity:.5}.left-panel{background-color:#0f172a;border-right:1px solid #ffffff1a;box-shadow:2px 0 10px #0003;height:100%;overflow-y:auto;padding:20px;scrollbar-color:#64748b80 #0000;scrollbar-width:thin;width:300px;z-index:10}.left-panel::-webkit-scrollbar{height:6px;width:6px}.left-panel::-webkit-scrollbar-track{background:#0000;margin:8px 0}.left-panel::-webkit-scrollbar-thumb{background-color:#64748b80;border-radius:3px;-webkit-transition:background-color .2s;transition:background-color .2s}.left-panel::-webkit-scrollbar-thumb:hover{background-color:#94a3b8b3}.left-panel::-webkit-scrollbar-corner{background:#0000}.edit-mode-toggle{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#3b82f626,#9333ea1a);border:2px solid #3b82f64d;border-radius:8px;box-shadow:0 4px 12px #3b82f633;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:10px;overflow:hidden;padding:12px 16px;position:relative;text-shadow:0 1px 2px #0000004d;transition:all .3s ease;width:100%}.edit-mode-toggle:hover{background:#3b82f64d;border-color:#3b82f6cc}.edit-mode-toggle.active{background:#3b82f666;border-color:#3b82f6cc}.edit-mode-toggle.active:hover{background:#3b82f680;border-color:#3b82f6}.edit-mode-toggle.edge-mode{background:#3b82f626;border-color:#3b82f64d}.edit-mode-toggle.edge-mode:hover{background:#3b82f64d;border-color:#3b82f6cc}.edit-mode-toggle.edge-mode.active{background:#3b82f666;border-color:#3b82f6cc}.edit-mode-instructions{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;font-size:12px;margin-top:8px;padding:12px}.instruction{color:#fca5a5;margin:4px 0}.instruction.selected{background:#fbbf241a;border-left:3px solid #fbbf24;border-radius:4px;color:#fbbf24;font-weight:600;padding:4px 8px}.reset-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#3b82f626,#9333ea1a);border:2px solid #3b82f64d;border-radius:8px;box-shadow:0 4px 12px #3b82f633;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:16px;overflow:hidden;padding:12px 16px;position:relative;text-shadow:0 1px 2px #0000004d;transition:all .3s ease;width:100%}.reset-button:hover{background:#3b82f64d;border-color:#3b82f6cc}.reset-button:active{background:#3b82f666}.panel-header{border-bottom:1px solid #ffffff1a;margin-bottom:24px;padding-bottom:16px}.panel-header h2{color:#f8fafc;font-size:1.25rem;font-weight:600;margin:0}.panel-section{border-bottom:1px solid #ffffff0d;margin-bottom:24px;padding-bottom:16px}.panel-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.panel-section h3{color:#94a3b8;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0 0 12px;text-transform:uppercase}.info-row{font-size:.875rem;margin-bottom:8px}.info-row .highlight{color:#f8fafc}.selected-airports{background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;margin:12px 0;padding:8px}.path-details{animation:fadeIn .3s ease-in-out;background:#0f172acc;border:1px solid #ffffff1a;border-radius:8px;margin-top:1.5rem;padding:1rem}.path-details h4{color:#e2e8f0;font-size:.95rem;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.path-airports{background:#0003;border-radius:6px;flex-wrap:wrap;margin-bottom:1.25rem;padding:.75rem}.path-airport,.path-airports{align-items:center;display:flex;gap:.5rem}.path-airport{transition:all .2s ease}.path-airport:hover .airport-code{background:#3b82f6;transform:translateY(-1px)}.airport-code{background:#4a5aef33;border-radius:4px;font-size:.85rem;padding:.35rem .6rem;transition:all .2s ease;white-space:nowrap}.path-connector{color:#4b5563;font-weight:700;margin:0 .25rem;opacity:.7}.info-row{color:#cbd5e1;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:.5rem}.info-row:last-child{margin-bottom:0}.info-row span:first-child{color:#94a3b8}.info-row .highlight{color:#60a5fa;font-family:Fira Code,Courier New,monospace;font-weight:500}.high-frequency-alert{animation:fadeIn .3s ease-out;background:#eab3081a;border:1px solid #eab3084d;border-radius:8px;margin-bottom:1.5rem;padding:.75rem}.high-frequency-alert .alert-header{align-items:center;color:#fbbf24;display:flex;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.high-frequency-alert .alert-icon{font-size:1.1rem;margin-right:.5rem}.high-frequency-alert .alert-messages{display:flex;flex-direction:column;gap:.5rem}.high-frequency-alert .alert-message{align-items:center;background:#0000001a;border-radius:4px;color:#fef3c7;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.5rem;padding:.5rem}.high-frequency-alert .route-id{color:#fcd34d;font-family:Fira Code,Courier New,monospace;font-weight:600}.high-frequency-alert .alert-message>span:not(.route-id){opacity:.9}.high-frequency-alert .alert-message>span:not(:last-child):after{content:"•";margin-left:.5rem;opacity:.6}.high-frequency-alert .alert-message>span:last-child:after{display:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.selected-airport{background:#ffffff08;border:1px solid #ffffff0d;border-radius:4px;margin-bottom:6px;padding:8px}.selected-airport:last-child{margin-bottom:0}.airport-header{align-items:center;display:flex;margin-bottom:4px}.airport-index{margin-right:6px}.airport-code,.airport-index{color:#60a5fa;font-weight:600}.airport-code{font-family:Fira Code,Courier New,monospace;font-size:.9em}.airport-name{color:#94a3b8;font-size:.8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-airport{transition:all .3s ease}.selected-airport.skeleton{background:#ffffff05;border:1px dashed #ffffff1a;opacity:.6;transition:all .3s ease}.selected-airport.skeleton .airport-name{color:#64748b;font-style:italic}.selected-airport:not(.skeleton){background:#3b82f61a;border:1px solid #3b82f64d;transform:scale(1.02)}.path-info{border-top:1px solid #ffffff0d;margin-top:12px;padding-top:12px;transition:all .3s ease}.path-info.skeleton{opacity:.6}.path-info.skeleton .highlight{color:#64748b;font-style:italic}.path-info:not(.skeleton) .highlight{color:#60a5fa;font-weight:600}.instructions-list{list-style-type:none;margin:0;padding:0 0 0 16px}.instructions-list li{color:#94a3b8;font-size:.85rem;line-height:1.4;margin-bottom:6px}.main-content{display:flex;flex:1 1;flex-direction:column;height:100%;overflow:hidden;position:relative}.settings-panel-overlay{background-color:initial;cursor:pointer;position:fixed;width:300px;z-index:1001}.settings-panel-overlay,.star-grid-overlay{height:100%;left:0;pointer-events:none;top:0}.star-grid-overlay{position:absolute;width:100%;z-index:1}.grid-container{background:#0000;flex:1 1;overflow:hidden;position:relative;width:100%}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172acc;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:1000}.loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #3b82f64d;border-radius:50%;border-top-color:#3b82f6;height:40px;margin-bottom:16px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.error-message{background-color:#ef4444e6;border-radius:8px;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;color:#fff;left:50%;max-width:80%;padding:20px 30px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:1000}.error-message button{background-color:#fff;border:none;border-radius:4px;color:#dc2626;cursor:pointer;font-weight:600;margin-top:12px;padding:8px 16px;transition:all .2s ease}.error-message button:hover{background-color:#fecaca;transform:translateY(-1px)}.error-message button:active{transform:translateY(0)}.debug-info{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:#0f172acc;border:1px solid #ffffff1a;border-radius:6px;color:#94a3b8;font-family:Courier New,Courier,monospace;font-size:12px;left:10px;padding:8px 12px;pointer-events:none;position:absolute;top:10px;z-index:100}.debug-info div{margin:2px 0;white-space:nowrap}.watermark{bottom:10px;color:#fff3;font-size:12px;font-weight:500;pointer-events:none;position:fixed;right:10px;-webkit-user-select:none;user-select:none;z-index:100}@media (max-width:768px){.debug-info{padding:6px 10px}.debug-info,.watermark{font-size:10px}}
/*# sourceMappingURL=main.a316f671.css.map*/