:root{color-scheme:dark;--bg:#101820;--panel:rgba(16,24,32,0.78);--panel-strong:rgba(13,21,29,0.94);--line:rgba(255,255,255,0.15);--text:#edf6f5;--muted:#9fb4b4;--accent:#58d0aa;--accent-2:#f0c35d;--danger:#ff766e;font-family:"Segoe UI","Noto Sans KR",system-ui,sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--text)}button,a{font:inherit}.alps-app{height:100%;display:grid;grid-template-rows:60px 1fr}.alps-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 18px;border-bottom:1px solid var(--line);background:rgba(11,16,22,0.96);box-shadow:0 10px 28px rgba(0,0,0,0.32);z-index:5}.brand{display:grid;gap:1px;min-width:0;color:inherit;text-decoration:none}.brand strong{font-size:18px;line-height:1.15}.brand span{color:var(--muted);font-size:12px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,255,255,0.17);border-radius:8px;background:rgba(255,255,255,0.08);color:var(--text);text-decoration:none;cursor:pointer}.btn:hover{border-color:rgba(255,255,255,0.34);background:rgba(255,255,255,0.13)}.btn.primary{border-color:transparent;background:var(--accent);color:#07120f;font-weight:900}.btn.small{min-height:34px;padding:7px 10px;font-size:12px}.alps-stage{position:relative;min-width:0;min-height:0;overflow:hidden;background:#0e171f}#alpsGame{display:block;width:100%;height:100%;touch-action:none;outline:none}.hud{position:absolute;top:14px;left:14px;right:14px;display:grid;grid-template-columns:repeat(5,minmax(112px,1fr));gap:8px;z-index:3;pointer-events:none}.hud-card,.route-panel,.compression-control,.message,.dialog{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 16px 34px rgba(0,0,0,0.28);backdrop-filter:blur(12px)}.hud-card{min-height:64px;padding:9px 11px}.hud-card span,.brief-grid span{display:block;color:var(--muted);font-size:11px;font-weight:760;line-height:1.2}.hud-card strong{display:block;margin-top:4px;font-size:21px;line-height:1.1;white-space:nowrap}.hud-card small{display:block;margin-top:4px;color:rgba(215,238,234,0.82);font-size:11px;font-weight:760;line-height:1.15;white-space:nowrap}.route-panel{position:absolute;left:14px;bottom:14px;z-index:3;width:min(520px,calc(100% - 28px));padding:12px;background:rgba(13,21,29,0.86)}.route-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.route-head strong{min-width:0;font-size:13px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-head span{flex:0 0 auto;color:var(--accent-2);font-size:12px;font-weight:900;white-space:nowrap}.route-bar{height:8px;margin-top:10px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,0.13)}.route-bar i{display:block;width:0%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.route-splits{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.route-splits span{padding:4px 7px;border:1px solid rgba(255,255,255,0.12);border-radius:999px;color:rgba(224,242,239,0.86);font-size:11px;font-weight:800}.route-splits span.done{border-color:rgba(88,208,170,0.42);color:#d9fff2;background:rgba(88,208,170,0.12)}.compression-control{position:absolute;left:14px;bottom:128px;z-index:6;width:min(260px,calc(100% - 28px));padding:9px 11px 10px;background:rgba(13,21,29,0.82);pointer-events:auto}.compression-control-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.compression-control-head span{min-width:0;color:var(--muted);font-size:11px;font-weight:850;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compression-control-head strong{flex:0 0 auto;color:#ffe6a4;font-size:13px;font-weight:950;line-height:1}.compression-control input{display:block;width:100%;accent-color:var(--accent-2)}.alps-stage.cockpit-mode .compression-control{left:18px;bottom:98px;width:min(238px,calc(100% - 36px));opacity:0.86}.control-assist-panel{position:absolute;left:14px;bottom:204px;z-index:6;display:grid;gap:7px;width:min(300px,calc(100% - 28px));padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:rgba(13,21,29,0.82);box-shadow:0 16px 34px rgba(0,0,0,0.28);backdrop-filter:blur(12px);pointer-events:auto}.control-assist-row{display:grid;grid-template-columns:minmax(86px,1fr) auto auto;align-items:center;gap:8px}.control-assist-row span{min-width:0;color:var(--muted);font-size:11px;font-weight:850;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.control-assist-row strong{min-width:58px;color:#ffe6a4;font-size:12px;font-weight:950;line-height:1;text-align:right;white-space:nowrap}.control-assist-buttons{display:inline-flex;align-items:center;gap:4px}.control-assist-buttons button{min-width:34px;min-height:27px;padding:3px 7px 4px;border:1px solid rgba(216,255,241,0.18);border-radius:6px;background:rgba(255,255,255,0.06);color:rgba(235,251,247,0.86);font-size:10px;font-weight:950;line-height:1}.control-assist-buttons button:hover,.control-assist-buttons button.active{border-color:rgba(240,195,93,0.64);background:rgba(240,195,93,0.16);color:#ffe6a4;box-shadow:0 0 8px rgba(240,195,93,0.16)}.alps-stage.cockpit-mode .control-assist-panel{left:18px;bottom:168px;width:min(278px,calc(100% - 36px));opacity:0.9}.message{position:absolute;left:50%;bottom:22px;z-index:4;max-width:min(520px,calc(100% - 32px));padding:10px 13px;color:#effaf6;font-size:13px;font-weight:850;line-height:1.28;text-align:center;transform:translateX(-50%)}.alps-stage.cockpit-mode .message{bottom:182px}.alps-stage.cockpit-mode .hud{display:none}.cockpit-overlay{position:absolute;inset:0;z-index:2;overflow:hidden;opacity:0;pointer-events:none;transition:opacity 0.22s ease;--ground-cue:0;--near-ground-grit:0;--sun-glare:0.2;--thermal-heat:0;--thermal-hud-veil:0;--compression-cue:0;--air-read-sink-cue:0;--air-read-lift-cue:0;--air-read-direct-cue:0;--relative-wind-angle:0deg;--relative-wind-flutter:0deg;--relative-wind-tension:1;--relative-wind-tail:1}.cockpit-overlay::before{content:"";position:absolute;inset:0;z-index:1;opacity:calc(var(--thermal-hud-veil,0) * 0.26 + var(--compression-cue,0) * 0.08 + var(--air-read-lift-cue,0) * 0.12 + var(--air-read-direct-cue,0) * 0.1);background:linear-gradient(180deg,rgba(104,230,173,calc(var(--air-read-lift-cue,0) * 0.12)),transparent 34%),linear-gradient(92deg,transparent 0%,rgba(255,118,110,calc(var(--air-read-direct-cue,0) * 0.14)) 48%,transparent 74%),radial-gradient(ellipse at 50% 48%,rgba(255,214,139,0.24),transparent 45%),linear-gradient(180deg,rgba(255,220,150,0.08),transparent 32%,rgba(117,230,190,0.06) 68%,transparent),linear-gradient(104deg,transparent 6%,rgba(255,225,139,calc(var(--compression-cue,0) * 0.13)) 28%,transparent 52%);filter:blur(0.9px);mix-blend-mode:screen}.cockpit-overlay::after{content:"";position:absolute;inset:0;z-index:1;opacity:calc(var(--near-ground-grit,0) * 0.18 + var(--sun-glare,0) * 0.04 + var(--compression-cue,0) * 0.025 + var(--air-read-sink-cue,0) * 0.13);background:linear-gradient(90deg,rgba(255,118,110,calc(var(--air-read-sink-cue,0) * 0.16)),transparent 22%,transparent 78%,rgba(255,188,84,calc(var(--air-read-sink-cue,0) * 0.12))),radial-gradient(ellipse at 50% 110%,rgba(31,25,17,calc(0.2 + var(--ground-cue,0) * 0.18)),transparent 44%),repeating-linear-gradient(7deg,transparent 0 64px,rgba(97,74,39,calc(var(--near-ground-grit,0) * 0.04)) 65px 66px,transparent 67px 124px);mix-blend-mode:overlay}.alps-stage.cockpit-mode .cockpit-overlay{opacity:1}.sun-glare,.ground-proximity,.canopy-glass{position:absolute;pointer-events:none}.sun-glare{inset:0;z-index:1;opacity:calc(var(--sun-glare,0) * 0.7 + var(--compression-cue,0) * 0.08);background:radial-gradient(circle at 18% 12%,rgba(255,244,178,0.42),rgba(255,209,116,0.12) 14%,transparent 28%),radial-gradient(ellipse at 78% 22%,rgba(172,236,255,0.06),transparent 26%);filter:blur(0.7px);mix-blend-mode:screen}.ground-proximity{inset:0;z-index:1;opacity:var(--ground-cue,0);background:radial-gradient(ellipse at 50% 100%,rgba(238,204,122,0.42),transparent 31%),radial-gradient(ellipse at 48% 86%,rgba(103,78,35,calc(var(--near-ground-grit,0) * 0.18)),transparent 38%),linear-gradient(0deg,rgba(31,26,17,0.34),rgba(67,50,22,0.1) 32%,transparent 58%);mix-blend-mode:multiply}.canopy-glass{inset:5% 7% 9%;z-index:3;border-radius:48% 48% 24% 24% / 44% 44% 16% 16%;opacity:calc(0.16 + var(--sun-glare,0) * 0.28);background:radial-gradient(ellipse at 74% 18%,rgba(255,255,255,0.022),transparent 17%),radial-gradient(ellipse at 26% 24%,rgba(162,231,246,0.018),transparent 21%),linear-gradient(180deg,rgba(219,248,255,0.018),transparent 20%,transparent 76%,rgba(4,16,18,calc(var(--ground-cue,0) * 0.018)));box-shadow:inset 0 0 22px rgba(161,220,232,0.04),inset 0 14px 34px rgba(255,255,255,0.012),inset 0 -18px 30px rgba(4,16,18,calc(0.012 + var(--ground-cue,0) * 0.016))}.canopy-yaw-string{position:absolute;left:50%;top:clamp(160px,32%,240px);z-index:5;width:128px;height:136px;pointer-events:none;transform:translateX(-50%)}.canopy-yaw-string::before{content:"";position:absolute;left:50%;bottom:0;z-index:2;width:10px;height:10px;border-radius:50%;background:rgba(244,198,88,0.92);box-shadow:0 0 12px rgba(244,198,88,0.64),0 0 0 3px rgba(244,198,88,0.14);transform:translate(-50%,50%)}.canopy-yaw-string::after{content:"";position:absolute;left:50%;bottom:8px;width:1px;height:118px;border-radius:999px;background:linear-gradient(180deg,rgba(209,243,255,0.18),rgba(209,243,255,0.06));box-shadow:0 0 8px rgba(57,220,255,0.14);transform:translateX(-50%)}.canopy-yaw-string i{position:absolute;left:50%;bottom:0;z-index:1;width:5px;height:120px;border-radius:999px;background:linear-gradient(180deg,rgba(255,248,186,0.98),rgba(255,189,73,0.94) 48%,rgba(255,234,145,0.76));box-shadow:0 0 0 1px rgba(34,20,0,0.58),0 0 14px rgba(255,203,88,0.92),0 0 22px rgba(53,232,197,0.24);filter:drop-shadow(0 2px 2px rgba(0,0,0,0.58));transform:translateX(-50%) rotate(calc(var(--relative-wind-angle,0deg) + var(--relative-wind-flutter,0deg))) scaleY(var(--relative-wind-tension,1));transform-origin:50% 100%}.canopy-yaw-string i::after{content:"";position:absolute;left:50%;top:-7px;width:11px;height:11px;border-radius:50%;background:rgba(255,232,145,0.95);box-shadow:0 0 0 1px rgba(42,26,0,0.44),0 0 12px rgba(255,207,91,0.68);transform:translateX(-50%) scale(var(--relative-wind-tail,1))}.visor-hud{position:absolute;left:50%;top:5%;z-index:6;width:min(520px,calc(100% - 44px));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;color:#d8fff1;text-shadow:0 0 12px rgba(88,208,170,0.78);transform:translateX(-50%)}.visor-hud div,.center-instrument,.flight-advice,.thermal-visor,.air-readout,.airflow-visor{border:1px solid rgba(109,255,212,0.42);border-radius:8px;background:linear-gradient(180deg,rgba(3,24,25,0.74),rgba(3,15,18,0.5));box-shadow:inset 0 0 16px rgba(88,208,170,0.12),inset 0 1px 0 rgba(226,255,248,0.14),0 10px 24px rgba(0,0,0,0.2)}.visor-hud div{min-width:0;padding:7px 10px;text-align:center}.visor-hud .metric-primary{border-color:rgba(255,226,142,0.72);background:linear-gradient(180deg,rgba(46,41,24,0.82),rgba(5,18,18,0.56));box-shadow:inset 0 0 22px rgba(240,195,93,0.17),0 0 24px rgba(240,195,93,0.22),0 10px 26px rgba(0,0,0,0.18)}.visor-hud .metric-tertiary{opacity:0.88}.alps-stage.compressed-cruise .visor-hud .metric-secondary,.alps-stage.compressed-cruise .visor-hud .metric-tertiary{border-color:rgba(255,226,142,0.68);background:linear-gradient(180deg,rgba(46,41,24,0.78),rgba(5,18,18,0.58));box-shadow:inset 0 0 20px rgba(240,195,93,0.14),0 0 22px rgba(240,195,93,0.18),0 10px 24px rgba(0,0,0,0.2);animation:compressedHudPulse 1.15s ease-in-out infinite}.alps-stage.compressed-cruise .visor-hud .metric-secondary b,.alps-stage.compressed-cruise .visor-hud .metric-tertiary b,.alps-stage.compressed-cruise .flight-advice.time b{color:#ffe4a0;text-shadow:0 0 12px rgba(240,195,93,0.76),0 0 24px rgba(63,227,194,0.22)}.alps-stage.compressed-cruise .canopy-glass{opacity:calc(0.2 + var(--sun-glare,0) * 0.28 + var(--compression-cue,0) * 0.08);animation:compressedCanopySweep 2.2s linear infinite}.visor-hud span,.center-instrument span,.flight-advice span,.flight-advice small,.thermal-visor span,.air-readout span,.air-readout small{display:block;color:rgba(214,255,244,0.76);font-size:11px;font-weight:850;line-height:1.15}.visor-hud b{display:block;margin-top:3px;color:#f7fff8;font-size:20px;line-height:1.08;white-space:nowrap}.visor-hud .metric-primary b{color:#ffe6a4;font-size:27px;text-shadow:0 0 16px rgba(240,195,93,0.88)}.flight-path-mark{position:absolute;left:50%;top:46%;z-index:3;width:88px;height:42px;--flight-path-x:0px;--flight-path-y:0px;--flight-path-roll:0deg;border-top:2px solid rgba(185,255,229,0.8);border-left:2px solid rgba(185,255,229,0.7);border-right:2px solid rgba(185,255,229,0.7);border-radius:50% 50% 0 0;filter:drop-shadow(0 0 8px rgba(88,208,170,0.8));transform:translate(calc(-50% + var(--flight-path-x)),calc(-50% + var(--flight-path-y))) rotate(var(--flight-path-roll));transition:transform 0.12s linear}.flight-path-mark::before,.flight-path-mark::after{content:"";position:absolute;top:21px;width:64px;height:2px;background:rgba(185,255,229,0.78)}.flight-path-mark::before{right:78px}.flight-path-mark::after{left:78px}.center-instruments{position:absolute;left:50%;top:45%;z-index:4;display:flex;align-items:center;justify-content:center;gap:clamp(130px,19vw,260px);pointer-events:none;transform:translate(-50%,-50%)}.center-instrument{width:172px;padding:8px 11px 9px;color:#d8fff1;text-align:center;text-shadow:0 0 12px rgba(88,208,170,0.82)}.center-instrument b{display:block;min-height:38px;margin-top:2px;font-size:27px;line-height:1.18}.center-instrument.speed .ground-speed{display:inline-block;max-width:100%;margin-top:1px;padding:2px 7px 3px;border:1px solid rgba(176,255,230,0.24);border-radius:6px;background:rgba(187,255,233,0.1);color:rgba(214,255,244,0.76);font-size:12px;font-weight:900;line-height:1.1;white-space:nowrap}.center-instrument.altitude{display:grid;grid-template-columns:minmax(64px,0.9fr) minmax(76px,1.1fr);grid-template-areas:"alt-label vario" "alt-value vario" "target vario" "msl msl";align-items:center;gap:3px 6px;width:166px;padding:6px 7px 7px;opacity:0.92}.center-instrument.altitude>span{grid-area:alt-label;font-size:10px;line-height:1.05;text-align:left}.center-instrument.altitude>b{grid-area:alt-value;min-height:24px;margin:0;font-size:20px;line-height:1.04;text-align:left}.center-instrument.altitude small.target-remaining,.center-instrument.altitude small.altitude-reference{display:inline-block;margin:0;padding:2px 4px 3px;border-radius:6px;font-size:11px;font-weight:900;line-height:1.05;text-align:center;white-space:nowrap}.center-instrument.altitude small.target-remaining{grid-area:target;border:1px solid rgba(255,226,128,0.38);background:rgba(255,196,78,0.12);color:#fff0b8}.center-instrument.altitude small.altitude-reference{grid-area:msl;border:1px solid rgba(176,255,230,0.24);background:rgba(187,255,233,0.08);color:rgba(240,255,252,0.98)}.center-instrument.altitude.warn{border-color:rgba(240,195,93,0.86);color:#ffe28a;box-shadow:inset 0 0 22px rgba(240,195,93,0.16),0 0 24px rgba(240,195,93,0.26)}.center-instrument.altitude.danger{border-color:rgba(255,83,83,0.94);color:#fff0f0;box-shadow:inset 0 0 24px rgba(255,83,83,0.2),0 0 26px rgba(255,45,45,0.34);animation:dangerPulse 0.48s ease-in-out infinite}.center-instrument.altitude.competition-focus .target-remaining{border-color:rgba(255,229,144,0.78);background:rgba(240,195,93,0.22);color:#fff6c6}.center-vario-panel{grid-area:vario;display:grid;grid-template-columns:minmax(0,1fr) 14px;grid-template-areas:"label gauge" "value gauge" "trend gauge";align-items:center;gap:0 4px;margin:0;padding:4px;border:1px solid rgba(184,255,235,0.26);border-radius:6px;background:linear-gradient(180deg,rgba(8,34,36,0.42),rgba(4,18,22,0.34));box-shadow:inset 0 0 10px rgba(88,208,170,0.1)}.center-vario-label{grid-area:label;font-size:9px;font-weight:900;line-height:1}.center-instrument .center-vario-value{grid-area:value;min-height:18px;margin-top:1px;font-size:16px;line-height:1.02;color:#e9fff8}.center-vario-panel small{grid-area:trend;display:none}.vario-gauge{grid-area:gauge;position:relative;width:12px;height:34px;overflow:hidden;border:1px solid rgba(226,255,248,0.24);border-radius:999px;background:linear-gradient(180deg,rgba(86,230,172,0.16),rgba(255,188,84,0.14)),repeating-linear-gradient(180deg,transparent 0 8px,rgba(226,255,248,0.15) 8px 9px,transparent 9px 14px);box-shadow:inset 0 0 12px rgba(0,0,0,0.22)}.vario-gauge::before{content:"";position:absolute;left:2px;right:2px;top:50%;z-index:2;height:2px;border-radius:999px;background:rgba(226,255,248,0.72);box-shadow:0 0 8px rgba(226,255,248,0.62);transform:translateY(-50%)}.vario-fill{position:absolute;left:50%;bottom:50%;z-index:1;width:8px;height:var(--vario-fill-size,0px);border-radius:999px;background:linear-gradient(180deg,rgba(112,255,180,0.9),rgba(88,214,161,0.4));box-shadow:0 0 11px rgba(86,230,172,0.62);opacity:0.82;transform:translateX(-50%)}.vario-needle{position:absolute;left:2px;right:2px;top:calc(50% - var(--vario-needle-offset,0px));z-index:3;height:3px;border-radius:999px;background:#f6fff8;box-shadow:0 0 9px rgba(246,255,248,0.86);transform:translateY(-50%)}.center-vario-panel.twitching .vario-needle{box-shadow:0 0 11px rgba(255,224,154,0.9),0 0 4px rgba(246,255,248,0.86)}.center-vario-panel.climb,.center-vario-panel.strong-climb,.center-vario-panel.thermal{border-color:rgba(112,255,180,0.72)}.center-vario-panel.climb .center-vario-value,.center-vario-panel.strong-climb .center-vario-value{color:#caffdc;text-shadow:0 0 15px rgba(86,230,172,0.84)}.center-vario-panel.twitching .center-vario-value{color:#ffe7a8;text-shadow:0 0 15px rgba(240,195,93,0.8)}.center-vario-panel.sink,.center-vario-panel.strong-sink{border-color:rgba(255,188,84,0.62)}.center-vario-panel.sink .center-vario-value,.center-vario-panel.strong-sink .center-vario-value{color:#ffd29c;text-shadow:0 0 15px rgba(255,146,84,0.78)}.flight-advice{position:absolute;left:18px;top:104px;z-index:4;width:min(230px,calc(100% - 36px));padding:8px 10px 9px;color:#d8fff1;text-shadow:0 0 10px rgba(88,208,170,0.56)}.flight-advice b{display:block;margin-top:3px;color:#ecfff8;font-size:18px;line-height:1.12}.flight-advice small{margin-top:4px;color:rgba(214,255,244,0.86)}.flight-advice.thermal{border-color:rgba(255,193,94,0.68);box-shadow:inset 0 0 22px rgba(255,166,70,0.13),0 0 22px rgba(255,166,70,0.18)}.flight-advice.thermal b,.flight-advice.time b,.thermal-visor.active b{color:#ffe09a}.flight-advice.caution{border-color:rgba(255,218,111,0.74)}.flight-advice.time{border-color:rgba(255,226,142,0.68);box-shadow:inset 0 0 20px rgba(240,195,93,0.12),0 0 20px rgba(240,195,93,0.16)}.flight-advice.urgent{border-color:rgba(255,83,83,0.94);box-shadow:inset 0 0 24px rgba(255,83,83,0.22),0 0 26px rgba(255,45,45,0.34);animation:dangerPulse 0.56s ease-in-out infinite}@keyframes compressedHudPulse{0%,100%{filter:brightness(1);transform:translateY(0)}50%{filter:brightness(1.1);transform:translateY(-1px)}}@keyframes compressedCanopySweep{0%{filter:brightness(1) saturate(1)}50%{filter:brightness(1.05) saturate(1.08)}100%{filter:brightness(1) saturate(1)}}.route-window{position:absolute;right:18px;top:104px;z-index:4;width:min(264px,calc(100% - 36px));padding:8px 9px 9px;border:1px solid rgba(109,255,212,0.36);border-radius:8px;background:linear-gradient(180deg,rgba(5,22,26,0.66),rgba(5,14,20,0.48));color:#d8fff1;text-shadow:0 0 10px rgba(88,208,170,0.56);box-shadow:inset 0 0 16px rgba(88,208,170,0.08),0 10px 22px rgba(0,0,0,0.18);pointer-events:auto}.route-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.route-title span{min-width:0;color:rgba(214,255,244,0.76);font-size:11px;font-weight:850;line-height:1.12;white-space:nowrap}.route-title b{color:#ffe6a4;font-size:13px;font-weight:950;line-height:1;white-space:nowrap}.route-map{display:block;width:100%;height:138px;margin-top:5px;overflow:visible}.route-path-remain,.route-path-done{fill:none;stroke-linecap:round;stroke-linejoin:round}.mini-hydro-line{fill:none;stroke:rgba(106,214,244,0.36);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(75,198,225,0.34))}.mini-hydro-line.river{stroke-width:1.9;stroke:rgba(94,203,236,0.44)}.mini-hydro-line.tributary{stroke:rgba(142,234,244,0.34);stroke-width:1.2;stroke-dasharray:2.2 2.4}.mini-hydro-lake{fill:rgba(64,195,222,0.25);stroke:rgba(176,245,255,0.42);stroke-width:0.9;filter:drop-shadow(0 0 5px rgba(69,210,232,0.24))}.mini-hydro-lake.glacial-lake{fill:rgba(141,232,230,0.26);stroke:rgba(218,255,255,0.48)}.mini-hydro-lake.reservoir{fill:rgba(47,168,201,0.24)}.mini-lift-cell{stroke:rgba(255,255,255,0.08);stroke-width:0.35;mix-blend-mode:screen;filter:drop-shadow(0 0 3px rgba(255,215,126,0.18))}.mini-lift-cell.sink{filter:drop-shadow(0 0 3px rgba(85,202,240,0.18))}.mini-lift-sign{fill:rgba(247,250,230,0.08);stroke:rgba(255,240,178,0.82);stroke-width:1.2;filter:drop-shadow(0 0 5px rgba(255,222,125,0.58))}.route-path-remain{stroke:rgba(216,255,241,0.32);stroke-width:3.2;stroke-dasharray:5 5}.route-path-done{stroke:rgba(240,195,93,0.88);stroke-width:4.4;filter:drop-shadow(0 0 5px rgba(240,195,93,0.62))}.route-target-radius{fill:rgba(240,195,93,0.08);stroke:rgba(240,195,93,0.54);stroke-width:1.4;stroke-dasharray:3 3}.route-point-dot{fill:rgba(8,32,34,0.94);stroke:rgba(216,255,241,0.78);stroke-width:1.8}.route-point-node.done .route-point-dot{fill:rgba(88,208,170,0.9);stroke:rgba(220,255,244,0.9)}.route-point-node.next .route-point-dot{fill:rgba(240,195,93,0.95);stroke:rgba(255,246,203,0.98);filter:drop-shadow(0 0 6px rgba(240,195,93,0.8))}.route-point-node.start .route-point-dot{fill:rgba(143,210,255,0.76)}.route-point-number,.route-point-label{text-anchor:middle;dominant-baseline:middle;pointer-events:none}.route-point-number{fill:rgba(2,18,18,0.92);font-size:7px;font-weight:950}.route-point-label{fill:rgba(232,255,248,0.9);font-size:9.5px;font-weight:900;paint-order:stroke;stroke:rgba(3,20,22,0.88);stroke-width:3px}.route-current-point{fill:#ffffff;stroke:rgba(88,208,170,0.92);stroke-width:2;filter:drop-shadow(0 0 6px rgba(88,208,170,0.8))}.route-heading-arrow{fill:#ffe6a4;stroke:rgba(2,16,15,0.72);stroke-width:1.1;filter:drop-shadow(0 0 7px rgba(240,195,93,0.82))}.route-legend{min-height:15px;margin-top:2px;color:rgba(214,255,244,0.8);font-size:11px;font-weight:850;line-height:1.18;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-lift-control{display:flex;align-items:center;gap:4px;margin-top:3px}.mini-lift-control span{min-width:0;margin-right:auto;color:rgba(214,255,244,0.74);font-size:9.5px;font-weight:900;line-height:1;white-space:nowrap}.mini-lift-control span b{color:#ffe6a4;font-size:10px}.mini-lift-control button{min-width:34px;padding:3px 5px 4px;border:1px solid rgba(216,255,241,0.18);border-radius:6px;background:rgba(255,255,255,0.06);color:rgba(235,251,247,0.82);font-size:9px;font-weight:950;line-height:1}.mini-lift-control button.active{border-color:rgba(240,195,93,0.64);background:rgba(240,195,93,0.16);color:#ffe6a4;box-shadow:0 0 8px rgba(240,195,93,0.18)}.mini-lift-legend{display:grid;grid-template-columns:auto minmax(44px,1fr) auto auto;align-items:center;gap:5px;margin-top:3px;color:rgba(214,255,244,0.68);font-size:8.5px;font-weight:900;line-height:1;text-transform:uppercase}.mini-lift-legend i{display:block;height:4px;border-radius:999px;background:linear-gradient(90deg,rgba(63,186,238,0.75),rgba(54,88,104,0.18),rgba(238,210,94,0.7),rgba(255,117,49,0.8))}.mini-lift-legend b{color:rgba(151,233,199,0.92);font-size:8.5px;font-weight:950;white-space:nowrap}.mini-lift-legend b.training{color:#ffe6a4}.mini-lift-legend.off{opacity:0.45}.thermal-visor{position:absolute;left:18px;top:192px;z-index:4;display:grid;width:min(218px,calc(100% - 36px));padding:7px 9px 8px;color:rgba(226,246,235,0.76);text-align:left;text-shadow:0 0 12px rgba(122,224,188,0.34);opacity:0.9}.thermal-visor.active{border-color:rgba(241,205,129,0.6);color:#f7f0cf;background:linear-gradient(180deg,rgba(52,48,29,0.58),rgba(9,22,21,0.42));box-shadow:inset 0 0 24px rgba(241,205,129,0.1),0 0 22px rgba(122,224,188,0.14)}.thermal-visor.twitching{border-color:rgba(255,215,126,0.76);animation:varioTwitchPulse 1.4s ease-in-out infinite}.thermal-visor b{display:block;margin-top:2px;color:#f7fbf0;font-size:24px;line-height:1}.thermal-visor i{display:block;height:7px;margin-top:8px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,0.13)}.thermal-visor em{display:block;width:var(--value,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,#7bd7bc,#e0c26d,#f4dd9b);box-shadow:0 0 10px rgba(224,194,109,0.36);transition:width 0.12s linear}.air-readout{position:absolute;left:18px;top:284px;z-index:4;width:min(230px,calc(100% - 36px));padding:8px 10px 9px;color:#d8fff1;text-shadow:0 0 10px rgba(88,208,170,0.52)}.air-readout b{display:block;margin-top:3px;color:#ecfff8;font-size:18px;line-height:1.12}.air-readout small{margin-top:4px;color:rgba(214,255,244,0.88);line-height:1.18}.air-read-bars{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.air-read-bars i{position:relative;height:7px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,0.12)}.air-read-bars em{display:block;width:var(--air-read-value,0%);height:100%;border-radius:inherit;transition:width 0.16s linear}.air-read-bars .lift em{background:linear-gradient(90deg,#68e6ad,#f0d16e);box-shadow:0 0 10px rgba(104,230,173,0.38)}.air-read-bars .sink em{background:linear-gradient(90deg,#f0c35d,#ff766e);box-shadow:0 0 10px rgba(255,118,110,0.34)}.air-read-cues{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.air-read-cues span{display:inline-flex;align-items:center;min-width:0;padding:3px 6px 4px;border:1px solid rgba(216,255,241,0.18);border-radius:999px;background:rgba(187,255,233,0.08);color:rgba(226,255,248,0.82);font-size:10px;font-weight:900;line-height:1.05;white-space:nowrap}.air-readout.climb,.air-readout.core{border-color:rgba(112,255,180,0.68);box-shadow:inset 0 0 22px rgba(86,230,172,0.12),0 0 22px rgba(86,230,172,0.14)}.air-readout.climb b,.air-readout.core b{color:#caffdc;text-shadow:0 0 14px rgba(86,230,172,0.78)}.air-readout.sink{border-color:rgba(255,188,84,0.72);box-shadow:inset 0 0 22px rgba(255,146,84,0.14),0 0 22px rgba(255,146,84,0.16)}.air-readout.sink b{color:#ffd29c;text-shadow:0 0 14px rgba(255,146,84,0.76)}.air-readout[data-visual-cue="direct-line-sink"],.air-readout[data-visual-cue="lee-side-sink"],.air-readout[data-visual-cue="between-cores"]{background:linear-gradient(90deg,rgba(255,118,110,0.14),transparent 36%),rgba(18,23,27,0.62)}.air-readout[data-visual-cue="shade-sink"]{border-color:rgba(135,184,255,0.62);background:linear-gradient(90deg,rgba(82,130,196,0.22),transparent 38%),rgba(12,21,31,0.68)}.air-readout[data-visual-cue="shade-sink"] b{color:#c7ddff;text-shadow:0 0 14px rgba(110,166,255,0.68)}.air-readout[data-visual-cue="sunlit-lift"],.air-readout[data-visual-cue="ridge-core"],.air-readout[data-visual-cue="ridge-signs"]{background:linear-gradient(90deg,rgba(104,230,173,0.13),transparent 42%),rgba(14,28,27,0.58)}.air-readout.danger{border-color:rgba(255,83,83,0.9);animation:dangerPulse 0.72s ease-in-out infinite}.stick-window{position:absolute;left:50%;right:auto;bottom:14px;z-index:5;width:154px;color:#d8fff1;text-shadow:0 0 10px rgba(88,208,170,0.56);pointer-events:auto;touch-action:none;user-select:none;transform:translateX(-50%)}.stick-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:10px;font-weight:900;line-height:1.1;text-transform:uppercase}.stick-title b{color:#ffe6a4;font-size:10px;text-transform:none;white-space:nowrap}.stick-coach{display:block;box-sizing:border-box;width:100%;margin:0 auto 6px;min-width:0;padding:5px 9px 6px;border:1px solid rgba(240,195,93,0.25);border-radius:999px;background:rgba(5,16,18,0.68);color:rgba(255,232,166,0.88);font-size:10px;font-weight:900;line-height:1.08;text-align:center;white-space:nowrap;opacity:0.76}.stick-gimbal{position:relative;width:112px;height:112px;margin:0 auto;border:1px solid rgba(216,255,241,0.48);border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(240,195,93,0.22) 0 3px,transparent 4px),radial-gradient(circle at 50% 50%,rgba(109,255,212,0.14),rgba(5,14,20,0.48) 62%),rgba(3,14,18,0.34);box-shadow:inset 0 0 18px rgba(88,208,170,0.18),0 0 0 1px rgba(240,195,93,0.12),0 12px 24px rgba(0,0,0,0.16);cursor:grab;touch-action:none}.stick-window.active-input .stick-gimbal,.stick-window.pointer-active .stick-gimbal{border-color:rgba(240,195,93,0.72);box-shadow:inset 0 0 20px rgba(88,208,170,0.2),0 0 18px rgba(240,195,93,0.16)}.stick-window.pointer-active .stick-gimbal{cursor:grabbing}.stick-gimbal::before,.stick-gimbal::after{content:"";position:absolute;background:rgba(216,255,241,0.3)}.stick-gimbal::before{left:50%;top:10px;bottom:10px;width:1px;transform:translateX(-50%)}.stick-gimbal::after{left:10px;right:10px;top:50%;height:1px;transform:translateY(-50%)}.stick-dot{position:absolute;left:50%;top:50%;z-index:2;width:20px;height:20px;border-radius:50%;background:#f0c35d;box-shadow:0 0 14px rgba(240,195,93,0.82),0 0 0 3px rgba(240,195,93,0.14);transform:translate(calc(-50% + var(--stick-x,0px)),calc(-50% + var(--stick-y,0px)));transition:transform 0.1s linear,box-shadow 0.12s ease}.stick-window.active-input .stick-dot,.stick-window.pointer-active .stick-dot{box-shadow:0 0 18px rgba(240,195,93,0.94),0 0 0 5px rgba(240,195,93,0.18)}.airflow-visor{position:absolute;right:18px;bottom:92px;z-index:4;width:min(340px,calc(100% - 64px));min-width:0;display:flex;align-items:center;justify-content:center;gap:12px;padding:9px 14px;border-radius:999px;color:#d7fff2;background:rgba(4,19,22,0.56);text-shadow:0 0 9px rgba(88,208,170,0.52)}.airflow-visor i{--wind-cardinal-radius:-28px;position:relative;flex:0 0 auto;width:72px;height:72px;overflow:hidden;border:1px solid rgba(216,255,241,0.62);border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(240,195,93,0.2) 0 7%,transparent 8%),radial-gradient(circle at 50% 50%,transparent 0 44%,rgba(216,255,241,0.16) 45% 49%,transparent 50%),linear-gradient(90deg,transparent 0 calc(50% - 1px),rgba(216,255,241,0.18) calc(50% - 1px) calc(50% + 1px),transparent calc(50% + 1px)),linear-gradient(0deg,transparent 0 calc(50% - 1px),rgba(216,255,241,0.18) calc(50% - 1px) calc(50% + 1px),transparent calc(50% + 1px)),conic-gradient(from 0deg,rgba(240,195,93,0.56) 0 3deg,transparent 3deg 42deg,rgba(216,255,241,0.32) 42deg 48deg,transparent 48deg 87deg,rgba(240,195,93,0.56) 87deg 93deg,transparent 93deg 132deg,rgba(216,255,241,0.32) 132deg 138deg,transparent 138deg 177deg,rgba(240,195,93,0.56) 177deg 183deg,transparent 183deg 222deg,rgba(216,255,241,0.32) 222deg 228deg,transparent 228deg 267deg,rgba(240,195,93,0.56) 267deg 273deg,transparent 273deg 312deg,rgba(216,255,241,0.32) 312deg 318deg,transparent 318deg 360deg),radial-gradient(circle at 50% 54%,rgba(2,31,34,0.94),rgba(2,13,17,0.72));box-shadow:inset 0 0 0 3px rgba(5,19,22,0.7),inset 0 0 18px rgba(109,255,212,0.22),0 0 16px rgba(109,255,212,0.3)}.airflow-visor i::before{content:"";position:absolute;left:50%;top:50%;z-index:1;width:8px;height:34px;border-radius:999px;background:linear-gradient(180deg,rgba(109,255,212,0),rgba(240,195,93,0.5));opacity:0.82;transform:translate(-50%,-50%) rotate(calc(var(--wind-angle,0deg) + var(--wind-wobble,0deg))) translateY(18px) translateX(var(--wind-side-shift,0px)) scaleY(var(--wind-scale,1));transform-origin:50% 50%}.airflow-visor i em,.airflow-visor i .wind-cardinal{position:absolute;left:50%;top:50%;z-index:3;color:rgba(216,255,241,0.86);font-size:10px;font-style:normal;font-weight:900;line-height:1;text-shadow:0 0 7px rgba(109,255,212,0.58)}.airflow-visor i em{transform:translate(-50%,-50%) rotate(var(--north-angle,0deg)) translateY(var(--wind-cardinal-radius,-28px)) rotate(var(--north-label-angle,0deg));transform-origin:50% 50%}.airflow-visor i .wind-cardinal{color:rgba(216,255,241,0.58);font-size:8.5px;transform-origin:50% 50%}.airflow-visor i .wind-cardinal.east{transform:translate(-50%,-50%) rotate(calc(var(--north-angle,0deg) + 90deg)) translateY(var(--wind-cardinal-radius,-28px)) rotate(calc(0deg - var(--north-angle,0deg) - 90deg))}.airflow-visor i .wind-cardinal.south{transform:translate(-50%,-50%) rotate(calc(var(--north-angle,0deg) + 180deg)) translateY(var(--wind-cardinal-radius,-28px)) rotate(calc(0deg - var(--north-angle,0deg) - 180deg))}.airflow-visor i .wind-cardinal.west{transform:translate(-50%,-50%) rotate(calc(var(--north-angle,0deg) + 270deg)) translateY(var(--wind-cardinal-radius,-28px)) rotate(calc(0deg - var(--north-angle,0deg) - 270deg))}.airflow-visor i::after{content:"";position:absolute;left:50%;top:50%;z-index:2;width:20px;height:42px;background:linear-gradient(180deg,#ffe99a 0%,#f0c35d 48%,rgba(109,255,212,0.78) 100%);clip-path:polygon(50% 0,91% 48%,64% 45%,64% 100%,36% 100%,36% 45%,9% 48%);filter:drop-shadow(0 0 9px rgba(240,195,93,0.84));transform:translate(-50%,-50%) rotate(calc(var(--wind-angle,0deg) + var(--wind-wobble,0deg))) translateY(var(--wind-drift,0px)) translateX(var(--wind-side-shift,0px)) scale(var(--wind-scale,1));transform-origin:50% 50%}.airflow-visor span{min-width:0;max-width:232px;overflow:hidden;font-size:12px;font-weight:850;line-height:1.16;white-space:nowrap;text-overflow:ellipsis}@keyframes dangerPulse{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.05);filter:brightness(1.3)}}@keyframes varioTwitchPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.16)}}.touch-controls{position:absolute;right:14px;bottom:14px;z-index:5;display:grid;grid-template-columns:repeat(9,48px);gap:8px}.touch-controls button{width:48px;height:48px;border:1px solid rgba(255,255,255,0.18);border-radius:8px;background:rgba(12,19,26,0.76);color:var(--text);font-size:18px;font-weight:900;touch-action:none}.touch-controls button.pressed{border-color:rgba(88,208,170,0.64);background:rgba(88,208,170,0.18)}.touch-controls button.pedal{border-color:rgba(255,220,132,0.22);color:#ffe6a4}.touch-controls button.airbrake-step,.touch-controls button.airbrake-hold{border-color:rgba(120,208,255,0.24);color:#cfefff;font-size:12px;letter-spacing:0}.touch-controls button.airbrake-hold{border-color:rgba(240,195,93,0.38);color:#ffe6a4}.modal{position:absolute;inset:0;z-index:10;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(4,8,12,0.54)}.modal.open{display:flex}.dialog{width:min(760px,100%);max-height:min(86vh,760px);overflow:auto;padding:22px;background:var(--panel-strong)}.mode-kicker{width:fit-content;margin-bottom:10px;padding:4px 8px;border:1px solid rgba(240,195,93,0.28);border-radius:999px;color:#ffe2a0;background:rgba(240,195,93,0.09);font-size:11px;font-weight:900}.dialog h1{margin:0;font-size:clamp(28px,5vw,48px);line-height:1}.lead{max-width:680px;margin:14px 0 18px;color:rgba(225,240,237,0.86);font-size:15px;font-weight:720;line-height:1.45}.brief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.brief-grid div{min-height:98px;padding:12px;border:1px solid rgba(255,255,255,0.13);border-radius:8px;background:rgba(255,255,255,0.05)}.brief-grid strong{display:block;margin-top:6px;font-size:18px;line-height:1.1}.brief-grid small{display:block;margin-top:8px;color:rgba(207,230,226,0.74);font-size:12px;font-weight:750;line-height:1.25}.cue-mode-control{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 4px;padding:8px;border:1px solid rgba(255,255,255,0.12);border-radius:8px;background:rgba(5,12,18,0.24)}.cue-mode-control span{margin-right:auto;color:rgba(214,255,244,0.78);font-size:11px;font-weight:900;line-height:1.1;text-transform:uppercase}.cue-mode-control button{min-width:78px;padding:7px 10px 8px;border:1px solid rgba(255,255,255,0.16);border-radius:8px;background:rgba(255,255,255,0.06);color:rgba(238,248,245,0.84);font-size:12px;font-weight:900}.cue-mode-control button.active{border-color:rgba(240,195,93,0.58);background:rgba(240,195,93,0.16);color:#ffe7a8}.debrief{display:grid;gap:12px;margin:16px 0 4px}.debrief-verdict{padding:10px 12px;border:1px solid rgba(240,195,93,0.28);border-radius:8px;color:#ffe2a0;background:rgba(240,195,93,0.08);font-size:13px;font-weight:850;line-height:1.32}.debrief-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.debrief-stats div,.debrief-row{padding:10px;border:1px solid rgba(255,255,255,0.12);border-radius:8px;background:rgba(255,255,255,0.045)}.debrief-stats span{display:block;color:var(--muted);font-size:10px;font-weight:850;line-height:1.15;text-transform:uppercase}.debrief-stats strong{display:block;margin-top:5px;color:#f6fff9;font-size:18px;line-height:1.1}.debrief-stats small{display:block;margin-top:6px;color:rgba(215,238,234,0.74);font-size:11px;font-weight:760;line-height:1.2}.debrief-graphs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.debrief-graphs svg{width:100%;height:88px;border:1px solid rgba(255,255,255,0.1);border-radius:8px;background:rgba(5,12,18,0.26)}.profile-grid{fill:none;stroke:rgba(255,255,255,0.1);stroke-width:1}.profile-altitude,.profile-vario{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:5}.profile-altitude{stroke:#58d0aa}.profile-vario{stroke:#f0c35d}.debrief-row strong{display:block;color:#f6fff9;font-size:12px;line-height:1.2}.debrief-row p{margin:6px 0 0;color:rgba(225,240,237,0.82);font-size:12px;font-weight:760;line-height:1.32}.result-save-state{margin-bottom:12px}.result-save-state.saved{border-color:rgba(88,208,170,0.46);background:rgba(88,208,170,0.1)}.result-save-state.training{border-color:rgba(240,195,93,0.42);background:rgba(240,195,93,0.08)}.result-save-state.warning{border-color:rgba(255,132,104,0.5);background:rgba(255,132,104,0.1)}.server-rank-state{margin-top:8px;color:rgba(225,240,237,0.82);font-size:12px;font-weight:760;line-height:1.32}.server-rank-state.synced{color:#93f0cd}.server-rank-state.warning{color:#ffd08a}.personal-best{margin-top:12px}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:16px}@media (max-width:820px){.alps-app{grid-template-rows:56px 1fr}.alps-topbar{padding:0 12px}.top-actions{gap:5px}.top-actions .btn.small{padding-inline:7px;white-space:nowrap}.hud{top:10px;left:10px;right:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.hud-card{min-height:54px;padding:8px}.hud-card strong{font-size:17px}.canopy-glass{inset:4% 5% 8%}.canopy-yaw-string{top:clamp(148px,31%,218px);height:118px;transform:translateX(-50%) scale(0.82);transform-origin:50% 0}.visor-hud{top:8px;left:8px;right:8px;width:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;transform:none}.visor-hud div{padding:6px 6px}.visor-hud span{font-size:9.5px;line-height:1.05}.visor-hud b,.visor-hud .metric-primary b{min-height:19px;font-size:16px;line-height:1.06}.flight-advice{top:82px;left:10px;width:min(178px,calc(50% - 16px));padding:6px 8px 7px}.flight-advice span,.flight-advice small{font-size:10px;line-height:1.08}.flight-advice b{font-size:14px;line-height:1.08}.route-window{top:auto;left:10px;right:auto;bottom:218px;width:min(250px,calc(100% - 130px));padding:6px 7px 7px;opacity:0.92}.route-title span{font-size:10px}.route-title b{font-size:11px}.route-map{height:92px;margin-top:3px}.mini-lift-control{gap:3px;margin-top:2px}.mini-lift-control span{font-size:8.5px}.mini-lift-control button{min-width:30px;padding:3px 4px;font-size:8px}.mini-lift-legend{gap:4px;font-size:7.5px}.route-point-label{font-size:8px;stroke-width:2.5px}.route-legend{font-size:10px;line-height:1.08}.thermal-visor{top:82px;left:auto;right:10px;width:min(164px,calc(50% - 16px));padding:6px 8px 7px}.thermal-visor b{font-size:17px}.air-readout{top:162px;left:10px;width:min(178px,calc(50% - 16px));padding:6px 8px 7px}.air-readout b{font-size:14px;line-height:1.08}.air-readout span,.air-readout small,.air-read-cues span{font-size:9.5px;line-height:1.08}.air-read-bars{gap:4px;margin-top:6px}.air-read-cues{gap:4px;margin-top:6px}.center-instruments{left:8px;right:8px;top:43%;width:auto;justify-content:space-between;gap:0;transform:none}.center-instrument{width:74px;padding:5px 6px;opacity:0.84}.center-instrument b{min-height:20px;font-size:16px}.center-instrument.speed .ground-speed{padding:1px 4px 2px;font-size:9.5px}.center-instrument.altitude{width:154px;grid-template-columns:minmax(58px,0.88fr) minmax(70px,1.12fr);gap:3px 5px;padding:5px 6px 6px}.center-instrument.altitude>b{min-height:19px;font-size:18px}.center-instrument.altitude small.target-remaining,.center-instrument.altitude small.altitude-reference{padding:3px 4px;font-size:10px;line-height:1.06}.center-vario-panel{grid-template-columns:minmax(0,1fr) 12px;padding:3px 4px}.center-instrument .center-vario-value{min-height:17px;font-size:15px}.vario-gauge{width:11px;height:30px}.flight-path-mark{width:72px;height:34px}.flight-path-mark::before,.flight-path-mark::after{top:17px;width:48px}.flight-path-mark::before{right:62px}.flight-path-mark::after{left:62px}.airflow-visor{display:none}.stick-window{left:50%;right:auto;bottom:108px;width:104px;transform:translateX(-50%)}.stick-title{gap:4px;margin-bottom:4px;font-size:8.5px}.stick-title b{font-size:8.5px}.stick-coach{display:none}.stick-gimbal{width:84px;height:84px}.stick-dot{width:16px;height:16px}.route-panel{left:10px;right:10px;bottom:76px;width:auto}.compression-control{left:10px;bottom:164px;width:min(210px,calc(100% - 130px));padding:7px 8px 8px}.compression-control-head span{font-size:9.5px}.compression-control-head strong{font-size:11px}.alps-stage.cockpit-mode .route-panel{display:none}.alps-stage.cockpit-mode .compression-control{left:10px;bottom:70px;width:min(190px,calc(100% - 130px))}.control-assist-panel,.alps-stage.cockpit-mode .control-assist-panel{left:10px;bottom:136px;width:min(230px,calc(100% - 116px));padding:8px}.control-assist-row{grid-template-columns:minmax(58px,1fr) auto;gap:5px}.control-assist-row span{font-size:10px}.control-assist-row strong{min-width:50px;font-size:10px}.control-assist-buttons{grid-column:1 / -1}.control-assist-buttons button{min-height:25px;padding-inline:6px}.message{bottom:12px;left:10px;right:10px;transform:none;max-width:none}.alps-stage.cockpit-mode .message{bottom:12px}.touch-controls{right:10px;bottom:104px;grid-template-columns:repeat(3,42px);gap:7px}.touch-controls button{width:42px;height:42px;font-size:16px}.brief-grid{grid-template-columns:1fr}.debrief-stats,.debrief-graphs{grid-template-columns:1fr}.dialog{padding:18px}}@media (max-width:520px){.alps-topbar{gap:8px;padding:0 10px}.brand span{display:none}.top-actions a.btn.small{display:none}}
