/* A flight layer that leaves the actual website scrollable and clickable. */
.df-world{position:fixed;inset:0;z-index:150;pointer-events:none;overflow:hidden;color:#ecf1ff;font-family:'Segoe UI',Arial,sans-serif;isolation:isolate}
.df-world[hidden]{display:none!important}.df-world button{font:inherit;color:inherit;cursor:pointer}.df-vignette{position:absolute;inset:0;box-shadow:inset 0 0 130px #41307d25;pointer-events:none}.df-aircraft{position:absolute;left:0;top:0;width:174px;height:135px;border:0!important;background:transparent!important;padding:0!important;pointer-events:auto;touch-action:none;cursor:grab!important;will-change:transform;filter:drop-shadow(0 0 10px #8462ea33);z-index:4;user-select:none;-webkit-user-select:none}.df-aircraft svg{display:block;width:100%;height:100%;overflow:visible;pointer-events:none}.df-aircraft:focus-visible{outline:2px dashed #c6a6ff;outline-offset:5px;border-radius:45%}.df-dragging .df-aircraft{cursor:grabbing!important;filter:drop-shadow(0 0 18px #a78bfa66)}.df-blades{transform-origin:var(--rx) var(--ry);animation:df-propeller .16s linear infinite;opacity:.58}.df-rotor:nth-of-type(even) .df-blades{animation-direction:reverse}.df-led{filter:drop-shadow(0 0 5px #a78bfa);animation:df-led 1.5s ease-in-out infinite alternate}.df-shadow{position:absolute;left:0;top:0;width:96px;height:22px;background:#020611;border-radius:50%;filter:blur(9px);will-change:transform;z-index:0}.df-particles{position:absolute;inset:0;z-index:1}.df-particle{position:absolute;height:4px;width:4px;border-radius:50%;box-shadow:0 0 10px currentColor;animation:df-trail .75s ease-out forwards}.df-target{position:absolute;top:0;left:0;width:30px;height:30px;border:1px solid #b395ff88;border-radius:50%;z-index:1}.df-target:before,.df-target:after{content:'';position:absolute;background:#d5c1ff}.df-target:before{width:1px;height:40px;left:14px;top:-6px}.df-target:after{height:1px;width:40px;top:14px;left:-6px}
.df-mission-banner{position:absolute;left:50%;top:104px;transform:translateX(-50%);max-width:calc(100% - 32px);display:flex;align-items:center;justify-content:center;gap:9px;padding:10px 17px;background:#111a30eb;border:1px solid #ad8dff42;box-shadow:0 6px 28px #05091633;border-radius:99px;font-size:11px;font-weight:550;white-space:nowrap;text-align:center;backdrop-filter:blur(16px);z-index:3}.df-live-dot{display:inline-block;width:6px;height:6px;flex:none;border-radius:50%;background:#82edb4;box-shadow:0 0 9px #82edb466}.df-waypoint{position:absolute;width:72px;height:72px;transform:translate(-50%,-50%);display:grid;place-items:center;transition:opacity .4s;color:#c3b2ff}.df-waypoint-ring{position:absolute;inset:0;border:1px dashed #b79bff88;border-radius:50%;background:radial-gradient(#a78bfa15,transparent 70%);animation:df-propeller 24s linear infinite}.df-waypoint-ring:before{content:'';position:absolute;inset:8px;border:1px solid #a78bfa25;border-radius:50%}.df-waypoint b{font:600 15px/1 'Segoe UI',sans-serif;text-shadow:0 2px 8px #000}.df-waypoint small{position:absolute;top:77px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.06em;background:#111a30bf;padding:2px 7px;border-radius:6px;color:#c9c0e8;white-space:nowrap}.df-waypoint.is-near .df-waypoint-ring{border:2px solid #e6c5ff;background:#ab81ff30;box-shadow:0 0 28px #a78bfa42}.df-waypoint.is-near small{color:#fff;background:#8952bc}.df-waypoint.is-captured{opacity:.4;color:#89efbe}.df-waypoint.is-captured .df-waypoint-ring{animation:none;border-color:#89efbe;border-style:solid}.df-waypoint.is-captured b{font-size:24px}
.df-hud{position:absolute;left:24px;bottom:24px;z-index:10;pointer-events:auto;width:308px;padding:16px;border:1px solid #9a7df85c;border-radius:20px;background:linear-gradient(135deg,#202c43f5,#171d35f5);box-shadow:0 18px 65px #0007,0 0 40px #8b5cf614;backdrop-filter:blur(22px);font-size:12px;line-height:1.45;outline:none}.df-hud:focus-visible{outline:1px solid #b194ff77;outline-offset:3px}.df-hud-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:12px}.df-flight-id{display:flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.11em;font-weight:750}.df-flight-id b{color:#b49bff;font-weight:500}.df-hud-head>div{display:flex;gap:5px}.df-mini{display:grid;place-items:center;width:27px;height:27px;border:1px solid #9b91bd26;border-radius:8px;background:#99a1cd08;font-size:19px!important;line-height:1}.df-mini:hover{background:#a78bfa2b}.df-telemetry{display:grid;grid-template-columns:repeat(3,1fr);padding-bottom:12px;gap:10px;border-bottom:1px solid #ac9bdd21}.df-telemetry>span{display:flex;flex-direction:column;gap:4px}.df-telemetry small{font-size:8px;letter-spacing:.09em;color:#a2adc8}.df-telemetry strong{font-size:21px;line-height:1.1;font-weight:600;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.df-telemetry em{font-size:9px;letter-spacing:0;font-style:normal;color:#929ebd;font-weight:400}.df-control-area{display:flex;align-items:center;gap:19px;margin-top:13px}.df-pad{display:grid;grid-template-columns:repeat(3,31px);grid-template-rows:repeat(3,29px);gap:3px;flex:none}.df-pad button{background:#a78bfa13;border:1px solid #a78bfa29;border-radius:8px;font-size:19px;line-height:1;touch-action:none;user-select:none}.df-pad button:nth-child(1){grid-column:2}.df-pad button:nth-child(2){grid-column:1;grid-row:2}.df-pad button:nth-child(3){grid-column:2;grid-row:2;font-size:9px;color:#b6a1ef;background:#a78bfa08}.df-pad button:nth-child(4){grid-column:3;grid-row:2}.df-pad button:nth-child(5){grid-column:2;grid-row:3}.df-pad button:hover,.df-pad button.is-held,.df-altitude button.is-held{background:#9b6cff66;box-shadow:0 0 12px #a78bfa33}.df-flight-tools{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.df-capture{display:flex;justify-content:center;align-items:center;gap:7px;min-height:38px;border-radius:10px;background:linear-gradient(110deg,#7867f4,#c14cd0);border:1px solid #d7bbff4a;font-size:11px!important;font-weight:600!important;box-shadow:0 5px 15px #8b5cf620}.df-capture svg{width:18px;height:18px}.df-capture:hover{filter:brightness(1.12)}.df-altitude{display:flex;gap:5px}.df-altitude button{display:flex;align-items:center;justify-content:center;gap:4px;background:#98a0c20d;border:1px solid #8f99c32e;border-radius:7px;min-height:30px;width:50%;font-size:15px;touch-action:none}.df-altitude span{font-size:9px;color:#c3c6dc}.df-key-hint{font-size:9px;line-height:1.8;color:#9ca9c5;margin:12px 0 8px!important}.df-key-hint kbd{font-family:inherit;font-size:9px;color:#d2c5ff;background:#a78bfa12;border-radius:3px;padding:2px 3px;white-space:nowrap}.df-follow{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:7px;border:1px solid #9b83d830;border-radius:8px;font-size:10px!important;background:#a78bfa0a}.df-follow[aria-pressed="true"]{background:#a78bfa33;border-color:#ba92ff99}.df-follow span{font-size:18px;line-height:1}.df-coordinates{font:9px/1.5 Consolas,monospace;color:#8a99b5;text-align:center;margin:8px 0 0;letter-spacing:.03em}.df-hud-bottom{display:flex;justify-content:space-between;gap:8px;margin-top:11px;padding-top:10px;border-top:1px solid #ac9bdd21}.df-hud-bottom button{padding:4px 5px;font-size:10px;background:none;color:#bbc5df;border-radius:5px}.df-hud-bottom button:hover{color:white;background:#a78bfa20}.df-flight-message{font-size:9px;line-height:1.6;color:#b4a4d7;margin:9px 0 0!important;min-height:28px}.df-camera-frame{position:absolute;inset:25px;opacity:0;transition:opacity .2s;z-index:2}.df-camera-frame i{position:absolute;width:65px;height:65px;border-color:#e1c8ff;border-style:solid;border-width:0}.df-camera-frame i:nth-child(1){top:0;left:0;border-left-width:2px;border-top-width:2px}.df-camera-frame i:nth-child(2){top:0;right:0;border-right-width:2px;border-top-width:2px}.df-camera-frame i:nth-child(3){bottom:0;left:0;border-left-width:2px;border-bottom-width:2px}.df-camera-frame i:nth-child(4){bottom:0;right:0;border-right-width:2px;border-bottom-width:2px}.df-camera-frame>span{position:absolute;top:12px;left:50%;transform:translateX(-50%);font:10px Consolas,monospace;letter-spacing:.15em;color:#e0d3ff}.df-capturing .df-camera-frame{opacity:1;animation:df-shutter .5s ease}.df-world[data-flight-state="landing"] .df-waypoints,.df-world[data-flight-state="takingoff"] .df-waypoints{opacity:.2}
@keyframes df-propeller{to{transform:rotate(360deg)}}@keyframes df-led{to{opacity:.5}}@keyframes df-trail{from{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(.1) translateY(24px)}}@keyframes df-shutter{0%{background:#ddd5ff28}100%{background:transparent}}
@media(max-width:600px){.df-aircraft{width:132px;height:102px}.df-hud{left:12px;bottom:12px;width:min(264px,calc(100% - 90px));padding:12px;border-radius:17px}.df-hud-head{margin-bottom:9px}.df-flight-id{font-size:9px;letter-spacing:.06em;gap:5px}.df-mini{width:25px;height:25px}.df-telemetry{gap:6px;padding-bottom:9px}.df-telemetry small{font-size:6px;letter-spacing:.03em}.df-telemetry strong{font-size:19px}.df-telemetry em{font-size:8px}.df-control-area{gap:9px;margin-top:9px}.df-pad{grid-template-columns:repeat(3,28px);grid-template-rows:repeat(3,27px);gap:2px}.df-pad button{border-radius:7px;font-size:18px}.df-flight-tools{gap:5px}.df-capture{min-height:35px;gap:5px;font-size:9px!important}.df-capture svg{width:16px;height:16px}.df-altitude{gap:4px}.df-altitude button{min-height:29px;font-size:16px}.df-altitude span{display:none}.df-hud-bottom{margin-top:7px;padding-top:7px}.df-hud-bottom button{font-size:9px}.df-flight-message{font-size:8px;min-height:24px;line-height:1.5;margin-top:5px!important}.df-mission-banner{top:91px;font-size:9px;padding:9px 12px;white-space:normal;width:max-content;max-width:calc(100% - 26px);gap:7px}.df-waypoint{width:58px;height:58px}.df-waypoint small{top:62px;font-size:8px}.df-camera-frame{inset:14px}.df-camera-frame i{width:40px;height:40px}.df-camera-frame>span{font-size:8px}.df-hud.is-compact .df-flight-message{max-height:38px;overflow:hidden}}
@media(max-height:530px){.df-hud{left:12px;bottom:12px;width:260px;padding:11px}.df-hud-details{display:none}.df-hud-head{margin-bottom:6px}.df-telemetry{padding-bottom:6px}.df-control-area{margin-top:6px}.df-hud-bottom{margin-top:5px;padding-top:5px}.df-flight-message{display:none}.df-mission-banner{top:85px}.df-pad{grid-template-columns:repeat(3,28px);grid-template-rows:repeat(3,25px)}.df-aircraft{width:132px;height:102px}}
@media(prefers-reduced-motion:reduce){.df-blades,.df-led,.df-waypoint-ring{animation:none!important}.df-particle{display:none}.df-camera-frame{transition:none}.df-capturing .df-camera-frame{animation:none!important}.df-world *{scroll-behavior:auto}}
