.stage-frame[data-atmosphere=flight]{background:linear-gradient(180deg,rgba(8,18,28,.55),rgba(8,18,28,.78)),url(/games/drone-pilot-basics/cover.webp) 50% /cover no-repeat;color:#f4efe4}.stage-frame[data-atmosphere=flight] .stage-exit{background:#16324a;border-color:#d7b56d;color:#f4efe4}.dpb{position:absolute;inset:18px;display:grid;grid-template-columns:148px 1fr;grid-gap:0;gap:0;border-radius:16px;overflow:hidden;background:rgba(10,22,34,.82);border:1px solid rgba(215,181,109,.35);box-shadow:0 18px 40px rgba(0,0,0,.45)}.dpb-spine{background:linear-gradient(180deg,#123047,#0b1d2c);padding:12px 8px;display:flex;flex-direction:column;gap:8px;border-right:1px solid rgba(215,181,109,.3)}.dpb-spine h2{margin:0 0 6px;font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;color:#d7b56d;text-align:center}.dpb-tab{min-height:52px;border:1px solid #3d5d75;border-radius:10px;background:#1a3a52;color:#f4efe4;font:inherit;font-size:.8rem;line-height:1.15;padding:6px 8px;text-align:left}.dpb-tab:disabled{opacity:.45;cursor:not-allowed}.dpb-tab[data-on=true]{background:#d7b56d;color:#12202c;font-weight:800}.dpb-spine .stage-exit{position:static;width:100%;margin-top:4px}.dpb-page{overflow:auto;padding:16px 22px 18px;background:linear-gradient(180deg,rgba(244,239,228,.96),rgba(232,222,200,.94));color:#1b2430;overscroll-behavior:contain}.dpb-page h3{margin:0 0 8px;font-size:1.45rem}.dpb-page li,.dpb-page p{font-size:1.05rem;line-height:1.35}.dpb-page ul{margin:0 0 12px;padding-left:1.2rem}.dpb-item{margin:12px 0;padding:12px;border-radius:12px;background:#fffdf8;border:1px solid #d8c8a4}.dpb-item b{display:block;margin-bottom:8px}.dpb-choices{display:flex;flex-wrap:wrap;gap:8px}.dpb-choices button,.dpb-flybar button,.dpb-help button,.dpb-home button,.dpb-item button{min-height:52px;min-width:52px;padding:0 14px;border-radius:10px;border:1px solid #8a7040;background:#f3e6c8;color:#1b2430;font:inherit;font-weight:700}.dpb-choices button[data-on=true]{background:#16324a;color:#f4efe4;border-color:#16324a}.dpb-item input[type=text],.dpb-item textarea{width:100%;min-height:52px;border-radius:10px;border:1px solid #c4b08a;padding:10px 12px;font:inherit;box-sizing:border-box}.dpb-ok{color:#157347;font-weight:800}.dpb-miss{color:#b42318;font-weight:800}.dpb-home{position:absolute;inset:0;display:grid;grid-template-columns:1.1fr .9fr;padding:88px 48px 36px;grid-gap:28px;gap:28px;color:#f4efe4}.dpb-home h1{margin:0 0 10px;font-size:2.4rem;line-height:1.1;max-width:18ch}.dpb-home p{font-size:1.2rem;max-width:46ch}.dpb-faa-warn{margin:10px 0 12px;padding:10px 12px;border-radius:10px;background:rgba(138,31,22,.92);color:#fff;font-size:1.02rem!important;font-weight:800;line-height:1.35;max-width:48ch}.dpb-faa-warn a{color:#ffe08a;text-underline-offset:2px}.dpb-home img{width:100%;height:100%;object-fit:cover;border-radius:18px;border:2px solid rgba(215,181,109,.5)}.dpb-home .dpb-fire{display:block;width:100%;height:248px;margin:14px 0 0;object-fit:cover;object-position:center 42%;border-radius:12px;border:2px solid rgba(215,181,109,.7)}.dpb-links{display:grid;grid-gap:8px;gap:8px}.dpb-links a{min-height:52px;display:flex;align-items:center;padding:0 12px;border-radius:10px;background:#16324a;color:#f4efe4;text-decoration:none;font-weight:700}.dpb-vlos{position:relative;height:280px;border-radius:12px;background:#c5dff0;border:1px solid #9bb8c9;overflow:hidden}.dpb-vlos svg{position:absolute;inset:0;width:100%;height:100%}.dpb-vlos .dpb-token{transform:translate(-30%,-80%);min-width:72px;min-height:40px}.dpb-vlos .dpb-pilot{pointer-events:none;cursor:default}.dpb-vlos-ok,.dpb-vlos-warn{position:absolute;left:50%;top:10px;transform:translateX(-50%);z-index:3;max-width:90%;padding:6px 12px;border-radius:8px;font-weight:800;text-align:center;pointer-events:none}.dpb-vlos-warn{background:rgba(138,31,22,.92);color:#fff}.dpb-vlos-ok{background:rgba(15,36,52,.82);color:#9cffb0}.dpb-token{position:absolute;min-width:84px;min-height:52px;border-radius:999px;border:2px solid #16324a;background:#fff;font-weight:800;cursor:-webkit-grab;cursor:grab;z-index:2}.dpb-flybar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:8px 0}.dpb-flybar label{display:flex;flex-direction:column;gap:4px;font-weight:700}.dpb-flybar select{min-height:52px;min-width:220px;border-radius:10px;font:inherit}.dpb-flybar span{padding-bottom:14px;font-weight:700}.dpb-trainer{display:grid;grid-template-columns:128px 1fr 116px;grid-gap:8px;gap:8px;align-items:stretch;min-height:520px}.dpb-side{display:flex;flex-direction:column;justify-content:flex-end;gap:8px}.dpb-side-left{justify-content:space-between}.dpb-pre{flex-shrink:0;background:#0f2434;color:#f4efe4;border:1px solid #d7b56d;border-radius:12px;padding:6px;text-align:left}.dpb-pre b{display:block;color:#d7b56d;font-size:.86rem;margin-bottom:2px}.dpb-pre div,.dpb-pre p{margin:0 0 6px;font-size:.75rem;line-height:1.25;font-weight:700}.dpb-pre button{display:block;width:100%;margin:0 0 6px;min-height:44px;padding:6px 8px;border-radius:8px;border:1px solid #d7b56d;background:#f3e6c8;color:#1b2430;font:inherit;font-size:.75rem;font-weight:800;line-height:1.25;text-align:left;white-space:normal}.dpb-pre button:disabled{opacity:.5;cursor:not-allowed}.dpb-pre button[data-done=true]{opacity:1;cursor:default;background:#e5f6ea;border-color:#157347;color:#145c38}.dpb-pre-ok{color:#9cffb0}.dpb-pre-wait{color:#ffb4a8;animation:dpb-pulse .9s ease-in-out infinite}.dpb-pre-off{color:#d7c7a4}.dpb-sky{position:relative;border-radius:12px;overflow:hidden;background:#87b8d4 url(/games/drone-pilot-basics/village.webp) 0 0/100% 100% no-repeat;min-height:520px;perspective:700px}.dpb-drone{position:absolute;width:78px;height:78px;pointer-events:none;z-index:4;transform-style:preserve-3d}.dpb-drone[data-power=false]{filter:grayscale(.85) brightness(.72)}.dpb-drone svg{width:78px;height:78px;display:block;filter:drop-shadow(0 8px 4px rgba(0,0,0,.35))}.dpb-rotor{fill:rgba(214,226,236,.62);stroke:rgba(27,36,48,.4);stroke-width:.7;transform-box:fill-box;transform-origin:center;animation:dpb-spin .08s linear infinite;filter:blur(1.15px)}@keyframes dpb-spin{to{transform:rotate(1turn)}}.dpb-data{position:absolute;left:10px;right:10px;bottom:8px;display:flex;flex-wrap:wrap;gap:2px 14px;align-items:baseline;color:#9cffb0;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-weight:700;font-size:.95rem;line-height:1.35;text-shadow:0 1px 3px #04140a,0 0 8px rgba(0,0,0,.7);pointer-events:none}.dpb-data-goals{margin-top:0;color:#fff;font-size:.88rem}.dpb-gps-bad,.dpb-gps-search{color:#ffb0a4}.dpb-gps-search{animation:dpb-pulse .9s ease-in-out infinite}.dpb-gps-fix{color:#9cffb0}@keyframes dpb-pulse{50%{opacity:.35}}.dpb-stick-col{display:flex;flex-direction:column;align-items:center;gap:6px;padding-bottom:8px;color:#1b2430;font-weight:700;text-align:center}.dpb-stick-col small{font-size:.78rem;line-height:1.15}.dpb-stick{width:112px;height:112px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#2a3644,#121820);border:3px solid #d7b56d;position:relative;touch-action:none}.dpb-knob{position:absolute;width:36px;height:36px;margin:-18px;border-radius:50%;background:#d7b56d;border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.4)}.dpb-help{margin-top:16px;background:#0f2434;color:#f4efe4;border-radius:16px;padding:16px;border:1px solid #d7b56d}.dpb-help>b{display:block;color:#d7b56d;font-size:1.15rem;margin-bottom:6px}.dpb-help p{color:#f4efe4}.dpb-controller{position:relative;width:100%}.dpb-controller img{width:100%;height:auto;max-height:480px;object-fit:contain;display:block}.dpb-hot{position:absolute;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:3px solid rgba(215,181,109,.75);background:transparent;box-shadow:0 0 0 1px rgba(8,18,28,.35),0 0 10px rgba(215,181,109,.45)}.dpb-help button.dpb-hot,.dpb-hot{min-height:46px;min-width:46px;padding:0;background:transparent;background-color:transparent;color:transparent}.dpb-help button.dpb-hot:focus-visible,.dpb-help button.dpb-hot:hover,.dpb-help button.dpb-hot[data-on=true],.dpb-hot:focus-visible,.dpb-hot:hover,.dpb-hot[data-on=true]{z-index:7;background:transparent;background-color:transparent;border-color:#ffe08a;box-shadow:0 0 0 2px rgba(8,18,28,.45),0 0 12px 4px rgba(255,214,110,.95),0 0 28px 8px rgba(215,181,109,.55)}.dpb-tip{display:none;position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);width:max-content;max-width:320px;padding:8px 10px;border-radius:10px;background:rgba(255,250,236,.84);border:1px solid rgba(16,24,32,.28);box-shadow:0 6px 16px rgba(0,0,0,.18);font-size:1.02rem;font-weight:800;line-height:1.25;letter-spacing:0;text-align:left;white-space:normal;pointer-events:none;z-index:8}.dpb-help button.dpb-hot .dpb-tip,.dpb-help button.dpb-hot .dpb-tip b,.dpb-tip{color:#101820}.dpb-tip b{display:block;margin-bottom:2px;font-size:1.05rem}.dpb-tip[data-below=true]{bottom:auto;top:calc(100% + 10px)}.dpb-hot:focus-visible .dpb-tip,.dpb-hot:hover .dpb-tip{display:block}.dpb-key,.dpb-key-alt,.dpb-key-yaw,.dpb-rose,.dpb-rose>span{display:flex;align-items:center;justify-content:center;gap:6px}.dpb-key,.dpb-rose{flex-direction:column;margin-top:4px;font-size:.95rem}.dpb-key-yaw{gap:4px}.dpb-rose{display:grid;grid-template-columns:auto auto auto;grid-template-areas:". up ." "left mid right" ". down .";align-items:center;justify-items:center;grid-gap:2px 10px;gap:2px 10px;margin-top:4px;font-size:.95rem}.dpb-rose-up{grid-area:up;flex-direction:column;gap:0}.dpb-rose-left{grid-area:left}.dpb-rose-right{grid-area:right}.dpb-rose-down{grid-area:down;flex-direction:column;gap:0}.dpb-help button.dpb-hot .dpb-tip small,.dpb-rose small{display:block;color:#101820;font-size:.82rem;font-weight:800}.dpb-warn{z-index:6;background:rgba(140,22,22,.9);color:#fff;border-radius:10px}.dpb-callout,.dpb-warn{position:absolute;top:8px;left:50%;transform:translateX(-50%);max-width:92%;font-weight:800;font-size:.95rem;padding:8px 14px;text-align:center;pointer-events:none}.dpb-callout{z-index:7;background:rgba(15,36,52,.94);color:#ffe08a;border:1px solid #d7b56d;border-radius:10px}.dpb-pin,.dpb-rc{position:absolute;z-index:5;pointer-events:none;font-weight:800;font-size:.72rem;color:#fff;background:#16324a;border:2px solid #d7b56d;border-radius:8px;padding:1px 5px;text-shadow:none}.dpb-pin{transform:translate(-50%,-130%)}.dpb-rc{transform:translate(-160%,10%);background:#3d2a12}.dpb-airspace{position:absolute;width:28%;aspect-ratio:1;transform:translate(-50%,-50%);border:2px solid rgba(190,225,255,.9);border-radius:50%;background:rgba(186,220,255,.16);box-shadow:0 0 18px rgba(180,220,255,.25);pointer-events:none;z-index:1}.dpb-airspace span{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);width:max-content;max-width:190px;text-align:center;color:#f7fbff;font-weight:800;font-size:.72rem;line-height:1.25;text-shadow:0 1px 3px #041018;background:rgba(8,18,28,.62);border-radius:8px;padding:4px 6px}.dpb-scene-pop{position:absolute;inset:0;z-index:8;background:rgba(8,18,28,.78);display:grid;place-items:center;padding:18px}.dpb-scene-pop>div{background:#0f2434;color:#f4efe4;border:1px solid #d7b56d;border-radius:14px;padding:16px 18px;max-width:520px}.dpb-scene-pop b{display:block;font-size:1.25rem;color:#d7b56d;margin-bottom:8px}.dpb-ring{position:absolute;border:2px dashed rgba(255,214,110,.9);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 12px rgba(215,181,109,.35)}.dpb-tower{transform:translate(-50%,-100%);text-align:center;color:#fff;font-weight:800;font-size:.72rem;text-shadow:0 1px 3px #000}.dpb-cloud,.dpb-tower{position:absolute;pointer-events:none;z-index:2}.dpb-cloud{border-radius:46%;background:radial-gradient(ellipse at 18% 58%,rgba(255,255,255,.96),transparent 58%),radial-gradient(ellipse at 48% 42%,rgba(232,238,244,.94),transparent 62%),radial-gradient(ellipse at 78% 60%,rgba(205,214,224,.92),transparent 60%),linear-gradient(180deg,rgba(255,255,255,.35),rgba(176,188,200,.82));filter:blur(1.2px);box-shadow:0 14px 28px rgba(40,55,70,.28)}.dpb-ac{position:absolute;transform:translate(-50%,-50%);z-index:3;pointer-events:none;text-align:center}.dpb-ac-body{display:block;font-size:28px;line-height:1;color:#1b2430}.dpb-ac[data-kind=low] .dpb-ac-body{color:#8a1f16}.dpb-ac-tag{display:block;margin-top:2px;background:rgba(8,18,28,.82);color:#9cffb0;font-size:.7rem;font-weight:800;padding:2px 6px;border-radius:6px;white-space:nowrap}.dpb-ac[data-kind=low] .dpb-ac-tag{color:#ffd0c8}.dpb-ranges{inset:0;width:100%;height:100%;z-index:3}.dpb-range-lbl,.dpb-ranges{position:absolute;pointer-events:none}.dpb-range-lbl{transform:translate(-50%,-120%);background:rgba(8,18,28,.78);color:#9cffb0;font-size:.68rem;font-weight:800;padding:2px 6px;border-radius:6px;white-space:nowrap;z-index:5;max-width:240px;overflow:hidden;text-overflow:ellipsis}.dpb-flybar button[data-on=true]{background:#157347;color:#fff;border-color:#157347}.dpb-fix-wrap{display:grid;grid-template-columns:minmax(220px,1fr) minmax(300px,460px);grid-gap:8px 16px;gap:8px 16px;align-items:start}.dpb-fix-wrap h3{margin-top:0}.dpb-fix-col{min-width:0}.dpb-fix{position:relative;height:400px;border-radius:14px;overflow:hidden;border:2px solid #8aa4b8;background:linear-gradient(180deg,#16324a,#4e8eb8 46%,#d5e8f4 58%,#6d8f62 0)}.dpb-fix-status{position:absolute;z-index:6;top:0;left:0;right:0;margin:0;padding:6px 10px;background:rgba(8,22,34,.88);color:#fff;font-size:.86rem!important;font-weight:800;line-height:1.3;text-align:center}.dpb-fix-drone,.dpb-fix-sat{position:absolute;z-index:4;height:auto;transform:translate(-50%,-50%);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dpb-fix-sat{opacity:.4;filter:saturate(.65);transition:opacity .35s ease,filter .35s ease}.dpb-fix-sat[data-flip=true]{transform:translate(-50%,-50%) scaleX(-1)}.dpb-fix-sat[data-on=true]{opacity:1;filter:drop-shadow(0 0 8px rgba(255,214,110,.95)) saturate(1)}.dpb-fix-sat[data-wait=true]{opacity:.78;filter:saturate(.85);animation:dpb-sat-wait 1.8s ease-in-out infinite}.dpb-fix-drone{left:50%;top:47%;z-index:5;width:118px;animation:dpb-bob 2.6s ease-in-out infinite;filter:drop-shadow(0 8px 8px rgba(0,0,0,.28))}.dpb-sphere{position:absolute;z-index:2;border-radius:50%;border:2px solid transparent;box-sizing:border-box;transform:translate(-50%,-50%) scale(.12);opacity:0;pointer-events:none;transition:transform .75s ease,opacity .75s ease}.dpb-sphere[data-on=true]{transform:translate(-50%,-50%) scale(1);opacity:1}.dpb-sphere[data-n="1"]{border-color:rgba(255,208,90,.95);background:rgba(255,196,70,.1)}.dpb-sphere[data-n="2"]{border-color:rgba(120,214,255,.95);background:rgba(80,180,255,.1)}.dpb-sphere[data-n="3"]{border-color:rgba(255,156,120,.95);background:rgba(255,120,90,.09)}.dpb-sphere[data-n="4"]{border-color:rgba(198,164,255,.98);background:rgba(168,124,255,.1)}.dpb-cross{position:absolute;z-index:3;box-sizing:border-box;border-radius:50%;border:2.5px dashed rgba(255,248,214,.95);box-shadow:0 0 0 1px rgba(8,22,34,.28),inset 0 0 0 1px rgba(8,22,34,.2);opacity:0;pointer-events:none;transition:opacity .45s ease}.dpb-cross[data-on=true]{opacity:1}.dpb-xpt{position:absolute;z-index:6;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,90,70,.45);transform:scale(0);pointer-events:none;transition:transform .35s ease,opacity .35s ease,background .35s ease}.dpb-xpt[data-on=true]{transform:scale(1)}.dpb-xpt[data-out=true]{opacity:.45;background:#d5dde4;box-shadow:0 0 0 3px rgba(80,96,110,.35)}.dpb-xpt-true{background:#ffe08a;box-shadow:0 0 0 5px rgba(255,214,110,.55),0 0 12px #ffe08a}.dpb-fix-earth{position:absolute;left:0;right:0;bottom:0;z-index:1;height:42%}.dpb-fix-earth img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 60%}.dpb-fix-grid{position:absolute;inset:0;width:100%;height:100%}.dpb-fix-grid line{stroke:rgba(255,250,230,.5);stroke-width:.55}.dpb-fix-grid line.dpb-fix-axis{stroke:rgba(255,246,210,.95);stroke-width:1.15}.dpb-fix-plumb{position:absolute;z-index:4;left:50%;top:54%;width:2px;height:0;margin-left:-1px;background:linear-gradient(#fff6cc,rgba(255,236,160,.2));box-shadow:0 0 8px rgba(255,220,120,.85);transition:height .65s ease;pointer-events:none}.dpb-fix[data-lock=true] .dpb-fix-plumb{height:24%}.dpb-fix-dot{position:absolute;z-index:5;left:50%;top:78%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#fff8dc;box-shadow:0 0 0 5px rgba(255,226,130,.45),0 0 12px #ffe08a;transform:scale(0);transition:transform .3s ease .45s;pointer-events:none}.dpb-fix[data-lock=true] .dpb-fix-dot{transform:scale(1)}.dpb-fix-tag{position:absolute;z-index:6;padding:2px 6px;border-radius:6px;background:rgba(255,250,236,.88);color:#12202c;font-size:.78rem;font-weight:800;line-height:1.2;pointer-events:none}.dpb-fix-tag small{display:block;font-size:.68rem;font-weight:700;color:#3e5344}.dpb-fix-tag[data-on=true]{background:rgba(255,236,170,.95)}.dpb-fix-fuzz{color:#7b877e;letter-spacing:.06em;animation:dpb-static .18s steps(2) infinite}@keyframes dpb-static{50%{opacity:.35}}.dpb-fix-lat{left:3%;top:69%}.dpb-fix-lon{left:54%;top:84%}.dpb-fix-alt{left:70%;top:46%}@keyframes dpb-bob{50%{transform:translate(-50%,calc(-50% - 7px))}}@keyframes dpb-sat-wait{50%{opacity:.32}}@media (max-width:980px){.dpb-fix-wrap{grid-template-columns:1fr}}