:root{--ink:#273b35;--muted:#6b7a70;--paper:#fbfcf5;--line:#d7dfd0;--green:#426854;--gold:#e2b770;--shadow:0 12px 35px #435a4920;font-family:'DM Sans',sans-serif;color:var(--ink);background:#e6ecdf;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,#world:focus-visible{outline:3px solid #b67c32;outline-offset:3px}button{border:1px solid var(--line);background:#fffaf1;border-radius:9px;transition:background .18s,transform .18s}button:hover{background:#e8eee1}button:active{transform:translateY(1px)}#app{position:relative;height:100dvh;min-height:680px;overflow:hidden}#world{position:absolute;inset:0;outline:none}#world canvas{display:block;width:100%;height:100%;touch-action:none}header{position:absolute;top:24px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-size:13px;letter-spacing:2px;font-weight:800;pointer-events:auto}.brand svg{width:33px;height:33px}.brand small{display:block;font-weight:500;font-size:8px;letter-spacing:2.8px;margin-top:5px}.header-end{display:flex;align-items:center;gap:18px;pointer-events:auto}.training{font-size:9px;letter-spacing:1.7px;color:var(--muted)}.circle{width:31px;height:31px;border-radius:50%;background:#ffffffa0;font-size:17px}.intro{position:absolute;left:30px;top:94px;pointer-events:none}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.6px;color:var(--muted)}h1{font-family:'Manrope',sans-serif;font-size:39px;line-height:1.14;letter-spacing:-1.9px;font-weight:500;margin:12px 0 13px}.intro p{font-size:12px;line-height:1.6;color:var(--muted)}.panel{background:#fbfcf3ed;border:1px solid #fffffff0;box-shadow:var(--shadow);backdrop-filter:blur(14px);border-radius:18px}.panel-heading{display:flex;align-items:center;justify-content:space-between}h2{margin:0;font-size:13px;font-weight:700}.micro{font-size:10px;line-height:1.5;color:var(--muted);margin:5px 0 12px}.text-button{border:0;background:none;font-size:10px;color:var(--muted);padding:4px}.layer-panel{position:absolute;left:30px;top:287px;width:218px;padding:18px 15px 10px;max-height:calc(100dvh - 340px);overflow:auto;scrollbar-width:thin;scrollbar-color:#bdc9b5 transparent}.layer-row{display:flex;align-items:center;gap:9px;padding:6px 0;border-radius:6px}.layer-row.selected{background:#e7ecdf}.layer-row input{margin:0 1px 0 4px;width:13px;height:13px;accent-color:var(--green);cursor:pointer}.layer-row button{border:none;background:none;text-align:left;font-size:11px;flex:1;padding:2px 2px;border-radius:2px;display:flex;align-items:center;gap:9px}.layer-row button:hover{color:#152f25}.swatch{display:inline-block;width:21px;min-width:21px;height:10px;color:var(--swatch);border-top:2px solid currentColor;transform:translateY(4px)}.swatch.dash,.swatch.longdash{border-top-style:dashed}.swatch.hatch{background:repeating-linear-gradient(115deg,transparent,transparent 3px,currentColor 3px,currentColor 4px);height:6px;margin-bottom:4px}.swatch.fade{height:8px;border:0;background:linear-gradient(currentColor,transparent);opacity:.7}.swatch.none{border-top:2px dotted currentColor;opacity:.5}.layer-separator{font-size:8px;letter-spacing:1.4px;color:var(--muted);margin:12px 3px 5px}.switch-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:10px 3px 2px;border-top:1px solid var(--line);font-size:11px}.switch-row small{display:block;font-size:8px;color:var(--muted);margin-top:3px}.switch-row input{accent-color:var(--green);cursor:pointer}.view-switch{position:absolute;left:50%;transform:translateX(-50%);top:25px;background:#fffdf3d9;padding:5px;border:1px solid #fff;border-radius:12px;display:flex;box-shadow:0 4px 14px #56704c12}.view-switch button{border:0;background:transparent;font-size:11px;padding:9px 14px;white-space:nowrap}.view-switch button[aria-pressed=true]{background:var(--green);color:white;box-shadow:0 3px 7px #42685430}.flight-panel{position:absolute;right:30px;top:94px;width:245px;padding:20px}.live-dot{font-size:7px;letter-spacing:1px;color:var(--muted)}.live-dot:before{content:'';display:inline-block;width:5px;height:5px;background:#7f9c6a;border-radius:50%;margin-right:5px}.altitude{display:flex;align-items:baseline;gap:8px;margin:17px 0 12px}.altitude strong{font-family:'Manrope',sans-serif;font-size:40px;font-weight:500;letter-spacing:-2px;font-variant-numeric:tabular-nums}.altitude span{font-size:9px;letter-spacing:1px;color:var(--muted)}input[type=range]{accent-color:var(--green);width:100%;height:6px;cursor:ns-resize;margin:5px 0}.range-labels{display:flex;justify-content:space-between;font-size:7px;color:var(--muted);letter-spacing:1px;margin:7px 0 14px}.alt-steps{display:flex;gap:8px}.alt-steps button{width:50%;font-size:10px;padding:8px;background:#eff2e7}.readouts{display:flex;justify-content:space-between;font-size:9px;margin:13px 0;color:var(--muted)}.readouts b{font-weight:500;color:var(--ink)}.position-card{border:1px solid #d1ddc8;border-radius:9px;padding:12px;background:#eaf0e2;margin:12px 0}.position-card strong{display:block;font-size:22px;font-weight:500;margin:6px 0}.position-card #current-detail{font-size:10px;line-height:1.5;color:var(--muted)}#overlays{font-size:10px;font-weight:600;color:#8c512b;line-height:1.5}#overlays:not(:empty){border-top:1px solid #d0d8c7;padding-top:8px;margin-top:8px}.primary{width:100%;background:var(--green);color:white;border:0;font-size:11px;padding:11px}.primary:hover{background:#35563f}.primary.active{background:#be8f48}.flight-hint{text-align:center;margin:9px 0 12px;font-size:9px}.flight-options{border-top:1px solid var(--line);padding-top:11px;display:flex;gap:8px;justify-content:space-between}.flight-options label{font-size:9px;display:flex;gap:4px;align-items:center}.flight-options input{margin:0;width:11px;height:11px;accent-color:var(--green)}.inspector{position:absolute;bottom:45px;left:50%;transform:translateX(-50%);width:min(685px,calc(100vw - 565px));min-width:380px;display:grid;grid-template-columns:1.45fr 1fr;overflow:hidden}.inspector-main{padding:19px 21px 14px}.inspector-heading{display:flex;align-items:center;gap:11px}.inspector-heading h2{font-family:'Manrope',sans-serif;font-weight:600;font-size:21px;letter-spacing:-.6px;margin-top:4px}.inspector-heading .eyebrow{font-size:7px;letter-spacing:1.1px}.inspector-heading .circle{margin-left:auto;width:23px;height:23px;font-size:15px;display:none}.airspace-symbol{width:29px;height:29px;border:2px dashed #285dab;border-radius:50%;flex-shrink:0}.inspector-main p{font-size:11px;line-height:1.6;color:#5e7064;margin:13px 0}.limits{display:flex;gap:16px;flex-wrap:wrap;font-size:7px;color:var(--muted);letter-spacing:.6px}.limits b{font-size:10px;letter-spacing:0;font-weight:600;margin-left:4px;color:var(--ink)}.unit-note{width:100%;font-size:7px;letter-spacing:0;margin-top:-7px}.inspector-chart{border-left:1px solid var(--line);padding:22px 17px 14px;background:#edf1e58c}.inspector-chart>.eyebrow{font-size:7px}.inspector-chart strong{display:block;margin:12px 0;font-size:20px;font-family:monospace;letter-spacing:1px;color:#285dab;white-space:pre-wrap}.inspector-chart p{font-size:10px;line-height:1.6;color:var(--muted);margin:0 0 12px}.inspector-chart button{width:100%;font-size:9px;padding:9px;background:#fdfdf5;text-align:left}.inspector-chart button span{float:right}.inspector-tip{grid-column:1/-1;background:#e7eddf;border-top:1px solid var(--line);font-size:9px;line-height:1.5;padding:9px 20px;color:#59705c}.map-tools{position:absolute;right:30px;bottom:68px;display:flex;flex-direction:column;gap:6px}.map-tools button{width:34px;height:34px;border-radius:9px;background:#fbfcf3dd;font-size:18px;box-shadow:0 4px 12px #38554110}.compass{position:absolute;right:95px;bottom:75px;width:34px;text-align:center;color:#46634e}.compass span{display:block;font-size:30px;transform-origin:center}.compass b{font-size:9px}footer{position:absolute;left:30px;right:30px;bottom:16px;font-size:8px;letter-spacing:.6px;color:#6a7e6a;display:flex;justify-content:space-between;pointer-events:none}#labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.map-label{position:absolute;transform:translate(-50%,-100%);white-space:nowrap;border:none;background:#fcfff1df;box-shadow:0 3px 8px #324e3a18;font-size:8px;font-weight:700;letter-spacing:.7px;padding:5px 7px;border-radius:5px;pointer-events:auto;color:var(--label-color);transition:opacity .15s}.map-label span{display:block;font:10px monospace;letter-spacing:0;margin-top:4px}.map-label.selected{box-shadow:0 0 0 1.5px var(--label-color),0 4px 10px #365d391a}.map-label.dim{opacity:.3}.map-label[hidden]{display:none}#toast{position:absolute;bottom:285px;left:50%;transform:translateX(-50%);background:#304a3ced;color:#fff;padding:12px 20px;border-radius:12px;max-width:520px;font-size:12px;line-height:1.5;opacity:0;transition:opacity .2s;pointer-events:none;text-align:center}#toast.show{opacity:1}#loading,#error{position:absolute;inset:0;background:#e7eddf;z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column}#loading h2,#error h2{font-family:'Manrope';font-size:23px;font-weight:500}#loading p,#error p{font-size:13px;color:var(--muted)}#error[hidden]{display:none}.loading-plane{font-size:45px;margin:20px;color:var(--green);animation:float 2s ease-in-out infinite}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.mobile-toggle{display:none}dialog{max-width:790px;width:calc(100% - 36px);max-height:85dvh;overflow:auto;border:1px solid white;border-radius:22px;padding:30px 34px;background:#fbfcf3;color:var(--ink);box-shadow:0 30px 100px #253d4750}dialog::backdrop{background:#20382d70;backdrop-filter:blur(6px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center}.dialog-heading h2{font-size:25px;font-weight:500;letter-spacing:-.7px;margin-top:8px}dialog p{font-size:12px;line-height:1.8;color:#607064}dialog h3{font-size:13px;margin-top:21px}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px}.source-list{font-size:12px;line-height:2;list-style:none;padding:0}.source-list a{color:var(--green)}.source-note{font-size:10px!important;border-top:1px solid var(--line);padding-top:14px}body.placing #world{cursor:crosshair}body.chart .intro h1{font-size:30px}body.chart .intro p{display:none}body.chart .map-label{background:#fffdf1ba;border-radius:2px;padding:3px;box-shadow:none;font-size:9px}body.chart .map-label.selected{outline:1px solid var(--label-color)}@keyframes float{50%{transform:translateY(-10px)}}@media(min-width:1600px){.intro{top:110px}h1{font-size:47px}.layer-panel{top:330px;max-height:calc(100dvh - 385px)}.flight-panel{top:110px;width:265px}.inspector{width:710px}}@media(max-height:800px) and (min-width:901px){.intro{top:86px}h1{font-size:31px}.intro p{font-size:10px}.layer-panel{top:248px;max-height:calc(100dvh - 290px);padding-top:12px}.layer-row{padding:5px 0}.flight-panel{top:86px;padding:16px}.altitude{margin:10px 0}.flight-hint{display:none}.inspector-main{padding:14px 16px 12px}.inspector-main p{font-size:10px;margin:9px 0}.inspector-chart{padding:17px 14px 12px}.inspector-heading h2{font-size:19px}}@media(max-width:1100px) and (min-width:901px){header{left:20px;right:20px}.intro{left:20px}.layer-panel{left:20px;width:190px}.flight-panel{right:20px;width:220px}.inspector{width:calc(100vw - 470px);min-width:380px}.training{display:none}.inspector{grid-template-columns:1.3fr 1fr}}@media(max-width:900px){#app{min-height:700px}header{top:17px;left:18px;right:18px}.training{display:none}.brand{font-size:11px}.brand small{font-size:7px}.intro{top:77px;left:18px}.intro h1{font-size:28px}.intro p{font-size:10px}.intro .eyebrow{font-size:7px}.view-switch{top:76px;left:auto;right:18px;transform:none}.view-switch button{font-size:9px;padding:7px 10px}.flight-panel{top:130px;right:18px;width:185px;padding:13px;border-radius:14px}.altitude strong{font-size:31px}.altitude{margin:8px 0}.flight-panel h2{font-size:11px}.live-dot{display:none}.flight-hint{display:none}.flight-options{display:block}.flight-options label{margin-top:7px}.range-labels{font-size:6px}.position-card{padding:9px}.position-card strong{font-size:18px}.readouts{font-size:8px}.primary{font-size:9px;padding:9px}.layer-panel{display:none;top:242px;left:18px;max-height:calc(100dvh - 320px);z-index:10}.layer-panel.open{display:block}.mobile-toggle{display:block;position:absolute;left:18px;top:207px;font-size:10px;padding:9px 13px;background:#fffef2}.inspector{bottom:42px;width:calc(100vw - 36px);min-width:0;max-width:630px;grid-template-columns:1.4fr 1fr}.inspector-main{padding:13px 15px}.inspector-chart{padding:16px 13px}.inspector-main p{font-size:10px;margin:9px 0}.inspector-heading h2{font-size:19px}.inspector-heading .circle{display:block}.inspector-tip{font-size:8px;padding:7px 14px}.map-tools{right:18px;bottom:282px;flex-direction:row}.compass{right:18px;bottom:332px}.map-tools button{width:30px;height:30px}.inspector.collapsed .inspector-main p,.inspector.collapsed .limits,.inspector.collapsed .inspector-chart,.inspector.collapsed .inspector-tip{display:none}.inspector.collapsed{display:block}.inspector.collapsed .inspector-heading .circle{display:block}.inspector.collapsed .inspector-main{padding:10px 15px}footer{left:18px;right:18px;bottom:14px;font-size:7px}#gesture-hint{display:none}.map-label{font-size:7px;padding:4px}.guide-grid{grid-template-columns:1fr;gap:0}dialog{padding:22px}.dialog-heading h2{font-size:21px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.shelf-label{position:absolute;transform:translate(-50%,-50%);font:10px monospace;text-align:center;padding:2px 4px;background:#f2eed7c9;line-height:1.1}.shelf-label i{display:block;border-top:1px solid currentColor;margin:2px 0}.shelf-label[hidden]{display:none}.inspector-heading .circle{display:block}.inspector.collapsed .inspector-main p,.inspector.collapsed .limits,.inspector.collapsed .inspector-chart,.inspector.collapsed .inspector-tip{display:none}.inspector.collapsed{display:block;width:280px;min-width:0}.inspector.collapsed .inspector-main{padding:10px 15px}
#aircraft-label{position:absolute;transform:translateX(-50%);background:#edd3a0e8;color:#6f512e;font-size:7px;font-weight:700;letter-spacing:.6px;padding:3px 6px;border-radius:4px;white-space:nowrap}
.chart-source{position:absolute;left:30px;top:94px;width:218px;padding:17px;z-index:1}.chart-source[hidden],#chart-focus[hidden]{display:none}.chart-source h2{font-family:Manrope,sans-serif;font-size:25px;font-weight:500;letter-spacing:-.7px;margin:10px 0}.chart-source p{font-size:10px;line-height:1.6;color:var(--muted)}.chart-source .eyebrow{font-size:7px;letter-spacing:1px}.chart-edition{font-size:8px;letter-spacing:.6px;font-weight:700;margin:12px 0 8px}.chart-source a{font-size:10px;color:var(--green)}.chart .intro{display:none}.chart .layer-panel{top:365px;max-height:calc(100dvh - 410px)}.chart .layer-row input,.chart #all-layers,.chart .switch-row{display:none}.chart .layer-row{padding:5px 2px}.chart .flight-options label:has(#slice){display:none}.chart .inspector{bottom:45px}.chart footer{background:#fafcf0da;border-radius:5px;padding:4px 8px;bottom:10px}.chart-focus .layer-panel,.chart-focus .flight-panel,.chart-focus .inspector,.chart-focus #layers-toggle,.chart-focus .compass{display:none!important}.chart-focus .chart-source{top:auto;bottom:47px;width:230px;padding:10px 14px}.chart-focus .chart-source h2,.chart-focus .chart-source p,.chart-focus .chart-source a{display:none}.chart-focus .chart-edition{margin:5px 0 0}.chart header{background:#fafcf0e8;border-radius:12px;padding:8px 10px;left:20px;right:20px;top:16px}.chart .view-switch{top:25px;z-index:2}.chart .map-tools{z-index:3}.layer-row button{font-size:10px}.position-card strong{font-size:20px}.readouts{font-size:8px;gap:3px}.header-end .training{font-size:8px;letter-spacing:1px}@media(max-width:900px){.chart-source{left:18px;top:130px;width:calc(100vw - 238px);min-width:130px;padding:12px}.chart-source h2{font-size:20px}.chart-source p{font-size:9px}.chart-source .micro{display:none}.chart .view-switch{top:76px}.chart #layers-toggle{top:327px}.chart .layer-panel{top:370px;max-height:calc(100dvh - 420px)}.chart-focus .chart-source{bottom:47px;top:auto;width:210px}.chart-focus .map-tools{bottom:80px}.chart .header-end{margin-left:auto}.chart header{top:10px}.chart .brand{font-size:10px}#chart-focus{font-size:8px}.view-switch button{padding:7px 8px}}
.chart .inspector-main p,.chart .limits,.chart .inspector-tip,.chart .inspector-chart>.eyebrow,.chart .inspector-chart>strong,.chart .inspector-chart>p{display:none}.chart .inspector-chart{display:flex;align-items:center;padding:14px}.chart .inspector-chart button{margin:0}.chart .inspector-main{padding:14px 18px}.chart .inspector{max-width:630px}.position-card strong{font-size:20px}@media(max-width:900px){.chart-source{width:min(185px,calc(100vw - 238px))}.map-tools{left:18px;right:auto;bottom:280px}.compass{left:18px;right:auto;bottom:330px}.chart .map-tools{bottom:150px}.chart .compass{bottom:200px}.chart-focus .map-tools{bottom:80px}.chart #layers-toggle{top:327px}}
.chart-focus .map-tools{left:auto;right:18px;bottom:48px}

/* Compact, map-first interface. Applies to phones and short landscape tablets. */
.mobile-dock,.sheet-close{display:none}
@media(max-width:900px),(max-width:1100px) and (max-height:600px){
  #app{height:100dvh;min-height:0}
  header,.chart header{top:max(10px,env(safe-area-inset-top));left:12px;right:12px;padding:0;background:none}
  .brand,.chart .brand{font-size:10px;letter-spacing:1.4px}.brand svg{width:26px;height:26px}.brand small{font-size:6px}.header-end .training{display:none}
  #help{width:44px;height:44px;background:#fbfcf3ed}
  .intro,#layers-toggle,.compass,.chart .compass{display:none!important}
  .view-switch,.chart .view-switch{top:calc(60px + env(safe-area-inset-top));left:12px;right:12px;transform:none;width:max-content;max-width:calc(100% - 24px);z-index:4;padding:3px}
  .view-switch button{font-size:11px;min-height:40px;padding:8px 13px}
  #chart-focus{display:none!important}
  .mobile-dock{display:flex;position:absolute;left:10px;right:10px;bottom:calc(24px + env(safe-area-inset-bottom));gap:4px;z-index:12;background:#fbfcf3f5;padding:5px;border:1px solid white;border-radius:14px;box-shadow:var(--shadow)}
  .mobile-dock button{flex:1;min-width:0;min-height:44px;padding:6px 4px;border:0;background:transparent;font-size:11px;font-weight:600}
  .mobile-dock button[aria-expanded=true]{background:var(--green);color:white}
  .mobile-dock #clear-map{background:#e6eddd;font-size:10px}
  .mobile-dock .source-toggle{display:none}.chart .mobile-dock .source-toggle{display:block}
  #layer-panel,#flight-panel,#inspector,#chart-source{display:none!important}
  #layer-panel.mobile-open,#flight-panel.mobile-open,#inspector.mobile-open,#chart-source.mobile-open:not([hidden]){display:block!important;position:absolute;top:auto;left:10px;right:10px;bottom:calc(86px + env(safe-area-inset-bottom));width:auto;min-width:0;max-width:none;max-height:min(54dvh,calc(100dvh - 202px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));transform:none;z-index:11;overflow:auto;overscroll-behavior:contain;padding:14px 16px;border-radius:16px;background:#fbfcf3fa;scrollbar-width:thin}
  .sheet-close{display:block;position:sticky;top:0;float:right;margin:0 0 6px 10px;min-height:44px;padding:8px 12px;background:#eaf0e2;z-index:2;font-size:11px}
  .panel-heading{min-height:44px}.flight-panel h2{font-size:13px}.chart-source h2{font-size:23px}.chart-source .micro{display:block}
  .layer-row{padding:2px 0}.layer-row button{min-height:44px;font-size:12px}.layer-row input{width:20px;height:20px;margin-right:6px}.text-button{min-height:44px;padding:8px}
  .switch-row{min-height:48px}.switch-row input{width:20px;height:20px}
  .alt-steps button,.primary{min-height:44px;font-size:12px}.flight-options{display:flex}.flight-options label{font-size:11px;min-height:44px}.flight-options input{width:18px;height:18px}
  input[type=range]{height:28px;touch-action:pan-x}.altitude strong{font-size:34px}.range-labels{font-size:8px}.readouts{font-size:10px}
  .inspector-main,.chart .inspector-main{padding:0}.inspector-heading{min-height:44px}.inspector-heading .circle{width:44px;height:44px;font-size:22px}.inspector-chart,.chart .inspector-chart{border-left:0;border-top:1px solid var(--line);margin-top:14px;padding:12px 0;background:none}.inspector-chart button{min-height:44px;font-size:12px}.inspector-tip{margin:8px -16px -14px;font-size:10px;padding:12px 16px}.inspector-main p{font-size:12px}
  .map-tools,.chart .map-tools,.chart-focus .map-tools{left:auto;right:12px;bottom:calc(94px + env(safe-area-inset-bottom));top:auto;display:flex;flex-direction:column;gap:5px;z-index:5}.map-tools button{width:44px;height:44px}
  .mobile-panel-open .map-tools{display:none}
  footer,.chart footer{left:10px;right:10px;bottom:calc(5px + env(safe-area-inset-bottom));padding:2px 4px;font-size:7px;letter-spacing:0;justify-content:center;background:#fbfcf3d9;border-radius:4px}
  #toast{bottom:calc(92px + env(safe-area-inset-bottom));width:calc(100% - 96px);max-width:420px;font-size:11px;padding:10px;z-index:13}
  dialog{padding:18px;max-height:calc(100dvh - 24px)}#close-guide{min-width:44px;min-height:44px}.dialog-heading h2{font-size:20px}
}
@media(max-width:1100px) and (max-height:500px){
  .brand small{display:none}.view-switch,.chart .view-switch{top:max(10px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);right:auto}
  #layer-panel.mobile-open,#flight-panel.mobile-open,#inspector.mobile-open,#chart-source.mobile-open:not([hidden]){max-height:calc(100dvh - 150px - env(safe-area-inset-bottom));width:min(430px,calc(100vw - 80px));right:auto}
  .map-tools,.chart .map-tools{flex-direction:row}
}

/* A compact selector is the only new navigation; existing map panels stay unchanged. */
.example-picker{position:absolute;left:50%;top:82px;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:9px;background:#fbfcf3ed;border:1px solid white;border-radius:10px;padding:7px 10px;box-shadow:0 4px 14px #56704c12}
.example-picker label{font-size:7px;letter-spacing:.7px;color:var(--muted);white-space:nowrap}
.example-picker select{min-height:30px;max-width:230px;border:0;border-radius:5px;background:#eaf0e2;color:var(--ink);font-family:inherit;font-size:11px;padding:5px 7px;cursor:pointer}
.example-picker select:focus-visible{outline:2px solid var(--green);outline-offset:2px}
@media(max-width:900px),(max-width:1100px) and (max-height:600px){
  .example-picker{top:calc(115px + env(safe-area-inset-top));left:12px;right:12px;transform:none;width:max-content;max-width:calc(100% - 24px);padding:4px 8px;gap:8px}
  .example-picker label{font-size:7px}.example-picker select{min-height:40px;max-width:calc(100vw - 132px);font-size:11px}
}
@media(max-width:1100px) and (max-height:500px){.example-picker{top:calc(62px + env(safe-area-inset-top));left:12px}}

/* Reference overlays remain lines, with their explanatory text available in chart view. */
.chart .inspector.reference-info .inspector-main p,.chart .inspector.reference-info .inspector-tip{display:block}
.chart .inspector.reference-info .limits{display:flex}
#chart-highlight-note{position:absolute;left:50%;transform:translateX(-50%);top:132px;z-index:4;background:#fff9e9ed;color:#67583d;border:1px solid #e4d2aa;border-radius:7px;padding:6px 10px;font-size:8px;letter-spacing:.5px;pointer-events:none;text-align:center}
#chart-highlight-note[hidden]{display:none}
@media(max-width:900px),(max-width:1100px) and (max-height:600px){#chart-highlight-note{top:calc(171px + env(safe-area-inset-top));font-size:7px;width:max-content;max-width:calc(100vw - 24px);padding:4px 7px}}
@media(max-width:1100px) and (max-height:500px){#chart-highlight-note{top:115px;left:12px;transform:none}}

.inspector.reference-info .airspace-symbol{height:3px;border:0;border-top:3px solid;border-radius:0!important}

/* All-device panel minimization. The dock remains available to restore every panel. */
.panel-minimized{display:none!important}
.panels-cleared .intro{display:none!important}
@media(min-width:901px) and (min-height:601px),(min-width:1101px){
  .mobile-dock{display:flex;position:absolute;left:50%;transform:translateX(-50%);bottom:28px;gap:4px;z-index:12;background:#fbfcf3f5;padding:4px;border:1px solid white;border-radius:12px;box-shadow:var(--shadow);max-width:calc(100vw - 220px)}
  .mobile-dock button{min-height:36px;padding:7px 13px;border:0;background:transparent;font-size:11px;white-space:nowrap}
  .mobile-dock button[aria-expanded=true]{background:var(--green);color:white}
  .mobile-dock #clear-map{background:#e6eddd;font-size:10px}
  .mobile-dock .source-toggle{display:none}.chart .mobile-dock .source-toggle{display:block}
  .sheet-close{display:block;float:right;position:relative;z-index:2;min-height:30px;padding:5px 8px;margin:0 0 8px 8px;font-size:10px;background:#eaf0e2}
  .panel-heading{clear:both}
  .inspector,.chart .inspector{bottom:80px}
  .chart-focus .chart-source{bottom:80px}
  .layer-panel{max-height:calc(100dvh - 370px)}
  .chart .layer-panel{max-height:calc(100dvh - 445px)}
  .flight-panel{max-height:calc(100dvh - 182px);overflow:auto;scrollbar-width:thin}
  .inspector{max-height:calc(100dvh - 250px);overflow:auto;scrollbar-width:thin}
}

/* Lighting is a teaching control, never a live operational status. */
.lighting-controls{margin:12px 0 16px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lighting-heading{font-size:8px;letter-spacing:.8px;color:var(--muted);font-weight:700}.lighting-buttons{display:flex;gap:6px;margin:8px 0}.lighting-buttons button{flex:1;min-height:36px;font-size:11px}.lighting-buttons button[aria-pressed=true]{background:var(--green);color:white}.lighting-controls strong{display:block;font-size:10px;line-height:1.5}.lighting-controls p{font-size:9px;line-height:1.5;color:var(--muted);margin:6px 0}.lighting-controls .text-button{padding:7px 0;font-size:10px}.lighting-controls [hidden],.layer-row[hidden]{display:none!important}
.night:not(.chart) header .brand,.night:not(.chart) .training,.night:not(.chart) .intro,.night:not(.chart) footer,.night:not(.chart) .compass{color:#f0f2df}.night:not(.chart) .intro p,.night:not(.chart) .intro .eyebrow{color:#d5dfd5}.night:not(.chart) .map-label{background:#f8fbefed}.night:not(.chart) #aircraft-label{color:#f8f5dc}
.inspector-heading .circle{display:block;flex-shrink:0;min-width:30px;min-height:30px}
.chart .inspector.tower-info .inspector-main p,.chart .inspector.tower-info .inspector-tip{display:block}
.chart .inspector.tower-info .limits{display:flex}
#retry-chart[hidden],#tower-sources-note[hidden]{display:none!important}
@media(max-width:900px),(max-width:1100px) and (max-height:600px){.lighting-buttons button{min-height:44px}.lighting-controls p{font-size:11px}.lighting-controls strong{font-size:12px}}
