/* Aurora and night sky page: map fills the window with controls in a right sidebar (like Satellite); stacked on phones. */
:root{--ink-3:#666b72}
html,body{height:100%}
body{display:flex;flex-direction:column;overflow:hidden}
.foot{display:none}
.app{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 410px}
.stage{position:relative;min-width:0;min-height:0;overflow:hidden;background:#060b14;touch-action:none}
.stage canvas{display:block;cursor:grab}
.stage canvas:active{cursor:grabbing}
.msg{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:5}
.msg>div{max-width:420px;margin:20px;padding:18px 20px;border-radius:6px;background:#0d1014f0;border:1px solid #b8975a55;text-align:center;font-size:13px;color:#e8e2d4}
.msg[hidden]{display:none}
.au-ttl{position:absolute;left:10px;top:10px;z-index:4;max-width:calc(100% - 80px);padding:7px 11px;border-radius:5px;background:#0d1014e0;color:#f4efe5;border:1px solid #b8975a40;pointer-events:none;font:600 13px/1.35 Inter,system-ui,sans-serif}
.au-ttl b{display:block;font-weight:700}
.au-ttl small{display:block;font-weight:500;font-size:11px;color:#c9c3b6}
.au-ttl span{display:block;font:500 11px/1.4 var(--mono);color:#d9c49a;margin-top:2px}
.au-lg{position:absolute;left:10px;bottom:12px;z-index:4;width:min(320px,calc(100% - 20px));padding:8px 10px 6px;border-radius:5px;background:#0d1014e0;color:#e8e2d4;border:1px solid #ffffff1a;pointer-events:none;font:500 10.5px/1.2 Inter,system-ui,sans-serif}
.au-lg-bar{height:10px;border-radius:2px;border:1px solid #ffffff22}
.au-lg-tk{position:relative;height:14px;font-variant-numeric:tabular-nums}
.au-lg-tk span{position:absolute;top:2px;transform:translateX(-50%);color:#c9c3b6}
.au-lg-u{color:#c9c3b6;font-size:10px}
.au-zoom{position:absolute;right:10px;top:10px;z-index:4;display:flex;flex-direction:column;gap:4px}
.au-zoom button{width:34px;height:34px;border-radius:5px;border:1px solid #ffffff2a;background:#0d1014e0;color:#f4efe5;font-size:17px;cursor:pointer}
.au-zoom button:hover{border-color:var(--gold)}
.au-tip{position:absolute;z-index:6;max-width:260px;padding:8px 11px;border-radius:6px;background:#0d1014f5;color:#f4efe5;border:1px solid #b8975a66;font:500 12px/1.4 Inter,system-ui,sans-serif;pointer-events:none;box-shadow:0 10px 26px #0008}
.au-tip[hidden]{display:none}
.au-tip h4{margin:0;font:700 13px/1.25 Inter,system-ui,sans-serif;color:#fff}
.au-tip small{display:block;color:#b5afa1;font-size:11px}
.au-tip small b{color:#fff}
.au-tip dl{display:grid;grid-template-columns:auto auto;gap:1px 10px;margin:5px 0 0}
.au-tip dt{color:#b5afa1}.au-tip dd{margin:0;font-weight:600;color:#fff}
.side{min-width:0;min-height:0;overflow-y:auto;background:var(--bg);border-left:1px solid var(--line);scrollbar-width:thin}
.side-in{padding:18px 18px 28px;display:flex;flex-direction:column;gap:22px;min-width:0}
.side-in>section{min-width:0}
.label{font-size:9.5px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--ink-3);margin-bottom:9px}
.scanbox{background:linear-gradient(160deg,#0d1014,#0f1b24 60%,#12302a);color:#f4efe5;border-radius:6px;padding:15px 16px;border:1px solid #b8975a40}
.scanbox small{display:block;font-size:9.5px;font-weight:600;letter-spacing:.17em;color:var(--gold-soft);text-transform:uppercase}
.scanbox strong{display:block;font:500 22px/1.2 var(--mono);letter-spacing:-.02em;margin-top:5px;color:#9ff5c0}
.scanbox span{display:block;font-size:11.5px;color:#c4bfb2;margin-top:3px}
.au-head{margin:9px 0 0;font-size:12px;line-height:1.5;color:#e8e2d4}
.au-disc{margin:-8px 0 0;font-size:11.5px;line-height:1.55;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:4px;padding:9px 11px}
.domains,.plist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.domains{grid-template-columns:repeat(3,minmax(0,1fr))}
.dbtn,.pbtn{text-align:left;border:1px solid var(--line);background:var(--card);border-radius:4px;padding:8px 10px;cursor:pointer;font-size:12px;font-weight:500;color:var(--ink);line-height:1.25;min-width:0}
.dbtn small,.pbtn small{display:block;font-size:10.5px;font-weight:500;color:var(--ink-3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dbtn:hover,.pbtn:hover{border-color:var(--gold)}
.dbtn[aria-pressed="true"],.pbtn[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#f8f6f1;font-weight:600}
.dbtn[aria-pressed="true"] small,.pbtn[aria-pressed="true"] small{color:var(--gold-soft)}
.pbtn[data-l="view"]{grid-column:1/-1}
.time-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.time-head strong{font:500 24px/1 var(--mono);color:var(--ink);letter-spacing:-.04em;white-space:nowrap}
.time-head span{font:500 10.5px/1.45 var(--mono);color:var(--ink-3);text-align:right}
#hour{width:100%;margin:10px 0;accent-color:#2a9d6c}
.row{display:grid;grid-template-columns:44px 1fr 44px;gap:6px}
.cbtn{height:38px;border:1px solid var(--line);border-radius:4px;background:var(--card);color:var(--ink);font-size:12px;font-weight:500;cursor:pointer;min-width:0}
.cbtn:hover{border-color:var(--gold)}
.play{background:var(--navy);border-color:var(--navy);color:#f8f6f1;font-weight:600;letter-spacing:.06em}
.search{width:100%;height:38px;border:1px solid var(--line);border-radius:4px;padding:0 11px;font:inherit;font-size:12.5px;background:var(--card);margin-bottom:10px}
.search:focus{outline:none;border-color:var(--gold)}
.side .note{font-size:11px;line-height:1.6;color:var(--ink-3);margin:8px 0 0}
.side .note b{color:var(--ink-2)}
.au-apt-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.au-apt-h strong{font:700 18px var(--mono)}
.au-apt-h span{font-size:13px;font-weight:600;color:var(--ink-2)}
.au-apt-h em{flex-basis:100%;font-style:normal;font-size:11px;color:var(--ink-3)}
.au-line{margin:8px 0 10px;padding:9px 11px;border-radius:4px;background:#0d1014;color:#e9f7ee;font-size:13px;font-weight:600;line-height:1.45}
.au-dl{display:grid;grid-template-columns:minmax(0,118px) 1fr;gap:4px 10px;margin:0 0 10px;font-size:12px}
.au-dl dt{color:var(--ink-3)}
.au-dl dd{margin:0;font-weight:600;color:var(--ink)}
.au-dl small{font-weight:500;color:var(--ink-3)}
.au-tw{overflow-x:auto;border:1px solid var(--line);border-radius:4px;background:var(--card)}
.au-t{width:100%;border-collapse:collapse;font-size:11.5px;font-variant-numeric:tabular-nums}
.au-t th{position:sticky;top:0;background:var(--line-2);font-size:10px;font-weight:600;color:var(--ink-2);text-align:left;padding:5px 6px;white-space:nowrap}
.au-t td{padding:4px 6px;border-top:1px solid var(--line-2);white-space:nowrap}
.au-t td.m{font-family:var(--mono)}
.au-t td small{color:var(--ink-3)}
.au-t sup{font-size:8px;color:var(--ink-3)}
#hrTbl tbody tr{cursor:pointer}
#hrTbl tbody tr:hover{background:#b8975a14}
#hrTbl tr.sel{background:#b8975a2e}
.au-moon{font-style:normal;color:#8a6d3b}
.g0{color:var(--ink-3)}.g1{color:#3d7f63}.g2{color:#1f9a5c}.g3{color:#0b7a3c;background:#e1f4ec}
.au-fine{font-size:10.5px;line-height:1.5;color:var(--ink-3);margin:6px 0 0}
.au-best{display:flex;flex-direction:column;gap:5px}
.au-bb{display:grid;grid-template-columns:52px 1fr auto;grid-template-rows:auto auto;gap:0 8px;align-items:baseline;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:4px;padding:6px 9px;cursor:pointer;font:inherit}
.au-bb:hover{border-color:var(--gold)}
.au-bb b{font:700 12.5px var(--mono)}
.au-bb span{font-size:12px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.au-bb em{font-style:normal;font:700 13px var(--mono);grid-row:1/3;grid-column:3;align-self:center;padding:2px 6px;border-radius:3px}
.au-bb small{grid-column:2;font-size:10.5px;color:var(--ink-3)}
.au-sh{display:flex;justify-content:space-between;align-items:center}
.au-sh .label{margin:0}
.au-seg{display:inline-flex;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.au-seg button{border:0;background:var(--card);padding:5px 10px;font:600 11px Inter,system-ui,sans-serif;color:var(--ink-2);cursor:pointer}
.au-seg button[aria-pressed="true"]{background:var(--navy);color:#f8f6f1}
#space{margin-top:10px}
.au-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.au-tile{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:8px 10px}
.au-tile small{display:block;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.au-tile strong{display:block;font:600 21px/1.2 var(--mono);color:var(--ink);margin-top:3px}
.au-tile strong i{font-style:normal;font-size:11px;color:var(--ink-3);font-weight:500}
.au-tile span{display:block;font-size:10.5px;color:var(--ink-3);min-height:1.3em}
.au-tile p{margin:6px 0 0;font-size:11px;line-height:1.45;color:var(--ink-2)}
.au-sparks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:6px}
.au-sparks small{font-size:10px;color:var(--ink-3)}
.au-spark{display:block;width:100%;height:34px;background:#0d1014;border-radius:3px}
.au-spark path{fill:none;stroke-width:1.4}
.au-spark .z{stroke:#ffffff33;stroke-dasharray:2 2}
.au-g{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:10px;font-size:11.5px;color:var(--ink-2)}
.au-kp{display:block;width:100%;height:auto;background:var(--card);border:1px solid var(--line);border-radius:4px}
.au-kp text{font:500 8.5px Inter,system-ui,sans-serif;fill:var(--ink-3)}
.au-kp .gr{stroke:var(--line);stroke-width:.6}
.au-kp .g5{stroke:#e8892c;stroke-width:.8;stroke-dasharray:3 2}
.au-kp .d{stroke:var(--line);stroke-width:.6}
.au-kp .now{stroke:var(--ink);stroke-width:1}
.au-kp .nowt{fill:var(--ink);font-weight:600}
.au-quote{margin:8px 0 0;font-size:11.5px;line-height:1.5;color:var(--ink-2);font-style:italic}
.au-quote small{font-style:normal;color:var(--ink-3)}
.au-alert{margin-top:6px;padding:7px 10px;border-radius:4px;background:var(--card);border:1px solid var(--line);border-left:3px solid #e8892c}
.au-alert b{display:block;font-size:12px}
.au-alert small{display:block;font-size:10.5px;color:var(--ink-3)}
.au-alert p{margin:4px 0 0;font-size:11px;line-height:1.45;color:var(--ink-2)}
.au-27{display:flex;gap:2px;align-items:flex-end;height:58px;padding:4px;background:var(--card);border:1px solid var(--line);border-radius:4px}
.au-27 span{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;font:500 8.5px var(--mono);color:var(--ink-3);height:100%}
.au-27 i{display:block;width:70%;border-radius:1px 1px 0 0;margin-bottom:2px}
.au-det{border:1px solid var(--line);border-radius:4px;background:var(--card);padding:0 11px;margin-top:6px}
.au-det summary{cursor:pointer;padding:9px 0;font-size:12.5px;font-weight:600}
.au-det p,.au-det li{font-size:11.5px;line-height:1.55;color:var(--ink-2)}
.au-det ul{padding-left:18px;margin:4px 0 10px}
.au-det p{margin:4px 0 10px}
.au-all{max-height:420px;overflow:auto}
.au-all th[data-s]{cursor:pointer;text-decoration:underline dotted}
.au-all tbody tr{cursor:pointer}
.side button:focus-visible,.side a:focus-visible,.side input:focus-visible,.au-zoom button:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
@media(max-width:860px),(pointer:coarse){.cbtn{height:42px}.search{height:42px;font-size:16px}.dbtn,.pbtn{min-height:44px}}
@media(max-width:860px){
  html,body{height:auto}
  body{display:block;overflow:visible}
  .app{display:block}
  .stage{width:100%;height:62vh;height:62dvh;min-height:300px;border-bottom:1px solid var(--line)}
  .side{border-left:0;overflow:visible}
  .side-in{padding:16px 16px 28px}
  .au-ttl{max-width:calc(100% - 64px);font-size:12px}
  .au-lg{width:calc(100% - 20px)}
}
/* explainers (mf-help.js) */
.stage .mfh-mapq{left:auto;right:54px;top:10px;background:#0d1014e0;color:#f4efe5;border-color:#b8975a66}
.stage .mfh-mapq:hover,.stage .mfh-mapq:focus-visible{background:#0d1014}
.au-intro{padding:0 12px}
.au-intro>summary{padding:10px 0;font-size:13px}
.au-intro ul{columns:1;font-size:12px;padding-left:18px}
.au-explain{margin:8px 0 0;font-size:11px;color:var(--ink-3);line-height:2}
.au-gloss{margin:0;font-size:11.5px;line-height:1.5}
.au-gloss dt{font-weight:700;color:var(--ink);margin-top:7px}
.au-gloss dd{margin:1px 0 0;color:var(--ink-2)}
.au-t th .mk-q,.au-tile small .mk-q{transform:scale(.85)}
.au-fr{display:inline-flex;align-items:center;gap:4px;font-style:normal;font-weight:700;font-size:10.5px;padding:1px 6px;border-radius:3px;background:#e1f4ec;color:#0b7a3c}
.au-fr.shadow{background:#f3ead8;color:#7a5a1e}.au-fr.none{background:var(--line-2);color:var(--ink-3);font-weight:600}
