:root{--bg:#000;--fg:rgba(230,255,230,0.92);--radar-green:rgba(51,242,51,0.95);--radar-green-dim:rgba(51,242,51,0.55);--radar-green-faint:rgba(51,242,51,0.35);--panel-bg:rgba(8,16,8,0.98);--panel-border:rgba(51,242,51,0.35);--mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ui:-apple-system,BlinkMacSystemFont,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body,html{height:100%}body{margin:0;font-family:var(--ui);background:var(--bg);color:var(--fg)}a{color:inherit;text-decoration:none}.main{height:100vh;height:100dvh;display:flex;overflow:hidden}@media (max-width:900px){.main{display:block;height:auto;min-height:100vh}}.hSplit{width:100%;height:100%}.hSplit,.hSplitLeft,.hSplitRight{display:flex;min-width:0;min-height:0}.hSplitLeft,.hSplitRight{overflow:hidden}.hSplitHandle{flex:0 0 auto;cursor:col-resize;background:linear-gradient(180deg,transparent,rgba(51,242,51,.12),transparent);border-left:1px solid rgba(51,242,51,.18);border-right:1px solid rgba(51,242,51,.18)}.hSplitHandle:hover{background:linear-gradient(180deg,transparent,rgba(51,242,51,.18),transparent)}.hSplitStack{display:grid;grid-gap:12px;gap:12px}.leftPane{height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column;min-height:0;flex:1 1 auto}@media (max-width:900px){.leftPane{height:auto;overflow:visible}}.radarPane{position:relative;overflow:hidden;background:#000;flex:1 1 auto;min-height:0}.vSplit{height:100%;display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.vSplitBottom,.vSplitTop{min-height:0;overflow:hidden}.vSplitHandle{flex:0 0 auto;cursor:row-resize;background:linear-gradient(90deg,transparent,rgba(51,242,51,.12),transparent);border-top:1px solid rgba(51,242,51,.18);border-bottom:1px solid rgba(51,242,51,.18)}.vSplitHandle:hover{background:linear-gradient(90deg,transparent,rgba(51,242,51,.18),transparent)}.radarFrame{position:relative;display:grid;place-items:start center;height:100%;padding:12px 12px 10px}.radarInner{position:relative;border:1px solid rgba(51,242,51,.25);isolation:isolate}.radarBgWrap{z-index:0}.radarBg,.radarBgWrap{position:absolute;inset:0}.radarBg{width:100%;height:100%;image-rendering:crisp-edges}.radarBgOverlay{position:absolute;inset:0;background:rgba(0,0,0,1);pointer-events:none}.radarCanvas{z-index:10}.radarCanvas,.radarCanvasTop{position:absolute;inset:0;width:100%;height:100%}.radarCanvasTop{z-index:20}.labelsLayer{pointer-events:none;z-index:30}.labelsLayer,.labelsSvg{position:absolute;inset:0}.labelsSvg{width:100%;height:100%}.acLabel{position:absolute;pointer-events:auto;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;background:rgba(0,0,0,.68);border:1px solid rgba(51,242,51,.28);padding:calc(4px * var(--ac-label-scale, 1)) calc(6px * var(--ac-label-scale, 1));font-family:var(--mono);font-size:calc(12px * var(--ac-label-scale, 1));line-height:calc(14px * var(--ac-label-scale, 1));color:rgba(51,242,51,.92);text-shadow:0 0 10px rgba(51,242,51,.1)}.acLabel:active{cursor:-webkit-grabbing;cursor:grabbing}.acLabelSelected{border-color:rgba(51,242,51,.75);box-shadow:0 0 12px rgba(51,242,51,.15)}.acLabelLine{white-space:pre}.acMarginBar{width:6ch;height:calc(3px * var(--ac-label-scale, 1));border-radius:2px;border:1px solid rgba(51,242,51,.95);background:rgba(51,242,51,.25);overflow:hidden;margin-top:calc(2px * var(--ac-label-scale, 1));margin-bottom:calc(2px * var(--ac-label-scale, 1))}.acMarginBarFill{height:100%;background:rgba(51,242,51,.95);border-radius:2px;transition:width .15s ease-out}.conflictsSvg{inset:0;width:100%;height:100%}.conflictLabel,.conflictsSvg{position:absolute;pointer-events:none}.conflictLabel{display:grid;place-items:center;background:rgba(51,242,51,.95);color:rgba(0,0,0,1);font-family:var(--mono);font-size:12px;font-weight:600;border-radius:2px}.staticLabelsLayer{position:absolute;inset:0;pointer-events:none;z-index:40}.staticLabel{position:absolute;pointer-events:auto;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;font-family:var(--mono);font-size:14px;line-height:18px;color:rgba(51,242,51,.92);text-shadow:-2px -2px 0 rgba(0,0,0,1),2px -2px 0 rgba(0,0,0,1),-2px 2px 0 rgba(0,0,0,1),2px 2px 0 rgba(0,0,0,1),0 0 6px rgba(0,0,0,.85)}.staticLabel:active{cursor:-webkit-grabbing;cursor:grabbing}.rightPane{background:radial-gradient(1200px 600px at 0 0,rgba(51,242,51,.08),transparent 55%),linear-gradient(180deg,rgba(8,16,8,.98),rgba(0,0,0,.98));height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column;min-height:0}@media (max-width:900px){.rightPane{height:auto;overflow:visible}}.scenarioRowLayout{display:grid;grid-template-columns:minmax(320px,540px) minmax(260px,1fr) minmax(160px,220px);grid-gap:14px;gap:14px;align-items:start}.scenarioPreviewBox{width:100%;aspect-ratio:16/9;overflow:hidden;background:rgba(0,0,0,.9)}.scenarioPanel,.scenarioPreviewBox{border:1px solid rgba(51,242,51,.18);border-radius:12px}.scenarioPanel{padding:12px;background:rgba(0,0,0,.35)}.scenarioPreviewImg{width:100%;height:100%;display:block}.scenarioTextCol{max-width:none;width:100%}.scenarioMainCol{grid-gap:10px;gap:10px}.scenarioMainCol,.scenarioScoresCol{display:grid;min-width:0;width:100%;height:100%;align-self:stretch}.scenarioScoresCol{grid-gap:6px;gap:6px;justify-items:stretch;align-content:start;font-family:var(--mono)}.scenarioScoreRow{display:flex;justify-content:space-between;gap:10px;opacity:.85;font-size:13px;line-height:16px;white-space:nowrap;padding:4px 6px}.scenarioScoreRowMe{opacity:1;color:rgba(140,255,140,.95);font-weight:800;background:rgba(51,242,51,.1);border:1px solid rgba(51,242,51,.2);border-radius:8px;padding:4px 6px}@media (max-width:860px){.scenarioRowLayout{grid-template-columns:1fr;align-items:stretch}.scenarioTextCol{max-width:none}.scenarioScoresCol{font-family:var(--mono)}}.controlPane{border-top:1px solid rgba(51,242,51,.22);padding:12px;overflow:hidden;display:grid;place-items:start stretch;flex:0 0 auto;height:100%;min-height:0}.controlPaneInner{width:100%}.rightPaneOpen .controlPane{flex:1 1 auto;height:100%;min-height:0;padding-top:14px}@media (max-width:900px){.controlPane{height:auto;min-height:0;overflow:visible}}.panel{flex-direction:column;flex:1 1 auto}.panel,.panelSection{padding:16px;display:flex;gap:14px;min-height:0;overflow-y:auto;overflow-x:hidden}.panelSection{flex-direction:column}.panelSectionTop{border-bottom:1px solid rgba(51,242,51,.18)}@media (max-width:900px){.panel,.panelSection{overflow:visible}}.h1{font-size:18px;letter-spacing:.06em;text-transform:uppercase;margin:0}.scenarioSelectTitle{font-size:26px}.scenarioSelectAirport,.scenarioSelectAirportCount,.scenarioSelectScenarioTitle{font-family:var(--mono)}.scenarioSelectAirport,.scenarioSelectAirportCount{font-size:16px}.scenarioSelectAirportCount{opacity:.78}.scenarioSelectScenarioTitle{font-size:18px}.scenarioSelect .smallNote{font-size:14px;line-height:1.45}.card{border:1px solid rgba(51,242,51,.22);background:rgba(0,0,0,.45);padding:12px}.row{display:flex;gap:10px;align-items:center}.label{opacity:.88;width:90px}.btn,.label,.value{font-family:var(--mono);font-size:12px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(0,0,0,.5);color:var(--fg);border:1px solid rgba(51,242,51,.35);padding:8px 10px;cursor:pointer}.btn:hover{border-color:rgba(51,242,51,.65)}.btn:disabled{opacity:.45;cursor:not-allowed}.btnPlay{font-size:16px;padding:10px 16px;border-width:2px;border-radius:12px}.btnSelected{border-color:rgba(120,220,255,.7);color:rgba(190,240,255,.95);box-shadow:0 0 16px rgba(80,200,255,.15)}.input{width:100%;background:rgba(0,0,0,.55);color:var(--fg);border:1px solid rgba(51,242,51,.25);padding:8px;font-family:var(--mono);font-size:12px}.smallNote{font-size:12px;opacity:.8;line-height:1.35}.loginPage{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 18px;position:relative;overflow:hidden;background:radial-gradient(circle at 10% 10%,rgba(76,110,255,.24),transparent 45%),radial-gradient(circle at 85% 20%,rgba(100,255,218,.12),transparent 40%),linear-gradient(160deg,#08121f,#0f1a2b 40%,#12172b)}.loginBackdrop{position:absolute;inset:-10%;background:linear-gradient(120deg,rgba(84,142,255,.18),rgba(58,196,255,.06));filter:blur(40px);opacity:.65;pointer-events:none}.loginCard{position:relative;z-index:1;width:min(720px,92vw);padding:28px 26px;border-radius:20px;border:1px solid rgba(120,220,255,.25);background:linear-gradient(145deg,rgba(16,28,48,.85),rgba(14,18,32,.85));box-shadow:0 30px 80px rgba(4,9,22,.45),0 0 40px rgba(80,200,255,.08);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.loginTitle{font-size:28px;letter-spacing:.5px}.loginSkip{color:rgba(160,220,255,.9);text-decoration:none;font-size:12px;letter-spacing:.2px}.loginSkip:hover{text-decoration:underline}.banner{position:absolute;left:12px;right:12px;top:12px;border:1px solid rgba(51,242,51,.45);background:rgba(0,0,0,.75);padding:10px 12px;font-family:var(--mono);font-size:12px}.clearanceCard{border:1px solid rgba(51,242,51,.22);background:rgba(0,0,0,.45);padding:12px;height:100%}.clearanceArea,.clearanceCard{display:flex;flex-direction:column;min-height:0}.clearanceArea{gap:14px;flex:1 1 auto}.clearanceAreaDisabled{opacity:.45}.clearanceCol{overflow:hidden;position:relative;z-index:1;height:100%}.clearanceArrowCol{overflow:visible;display:grid;place-items:stretch;position:relative;z-index:5;height:100%}.sideArrowSvg{display:block}.clearanceCenter{overflow:hidden;display:grid;place-items:center;height:100%}.clearanceTop{display:flex;flex-direction:column;gap:10px;align-items:center}.dialStack{position:relative;width:100%;height:100%}.dialOverlay{position:absolute;inset:18% 18%;display:flex;flex-direction:column;justify-content:center;gap:8px;pointer-events:auto;text-align:center}.dialOverlayTitle{font-family:var(--mono);font-size:13px;opacity:.85;letter-spacing:.02em}.dialOverlayChips{flex-wrap:wrap;gap:8px;align-items:center}.clearanceBottom,.dialOverlayChips{display:flex;justify-content:center}.clearanceBottom{align-items:stretch;flex:1 1 auto;min-height:0}.clearanceBottomInner{display:grid;grid-template-columns:var(--sideW,120px) auto var(--sideW,120px);align-items:stretch;justify-items:center;min-width:0;max-width:100%}.clearanceSide{display:grid;grid-gap:8px;gap:8px;align-items:stretch;height:100%;width:var(--sideW,120px)}.clearanceSideSpeed{grid-template-columns:var(--arrowW,22px) calc(var(--sideW, 120px) - var(--arrowW, 22px) - 6px);gap:6px;justify-content:start}.clearanceSideAlt{grid-template-columns:calc(var(--sideW, 120px) - var(--arrowW, 22px) - 6px) var(--arrowW,22px);gap:6px;justify-content:end}.clearanceList{height:100%;display:flex;flex-direction:column}.overlayBtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(51,242,51,.25);background:rgba(0,0,0,.35);color:rgba(51,242,51,.95);border-radius:12px;font-family:var(--mono);font-size:15px;line-height:20px;padding:4px 6px;cursor:pointer;display:grid;place-items:center;text-align:center}.overlayBtn:hover{border-color:rgba(51,242,51,.55)}.overlayBtn:disabled{opacity:.25;cursor:not-allowed}.overlayBtnOn{border-color:rgba(51,242,51,.95);border-width:2px;background:rgba(0,0,0,.85);font-weight:700}.overlayBtnTarget{background:rgba(51,242,51,.22)}.overlayBtnOn.overlayBtnTarget{background:rgba(51,242,51,.3)}.overlayBtnLine2{font-weight:900;opacity:.95}.headingDial{width:100%;height:100%;touch-action:none}.dialWrap{width:100%;height:100%;display:grid;grid-template-rows:auto 1fr;align-items:start;justify-items:center}.dialControls{width:100%;margin-top:10px}.chipsWrap{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}.overlayChip{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(0,0,0,.4);color:rgba(51,242,51,.95);border:1px solid rgba(51,242,51,.6);border-radius:10px;padding:7px 11px;font-family:var(--mono);font-size:13px;font-weight:700;cursor:pointer}.overlayChip:hover{border-color:rgba(51,242,51,.95)}.overlayChip:disabled{opacity:.35;cursor:not-allowed}.overlayChipOn{border-color:rgba(51,242,51,.95);border-width:2px}.sideArrowSvg{width:100%;height:100%;touch-action:none;overflow:visible}