:root{--bg:#f2f0fb;--panel:#ffffff;--panel2:#e7e4f6;--ink:#161a3d;--dim:#565d92;--line:#cfd0ea;--sun:#b85f00;--ion:#0a8578;--danger:#c8412f;--display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;--body:"Figtree","Segoe UI",system-ui,-apple-system,sans-serif;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg:#0f1533;--panel:#171f4a;--panel2:#222c66;--ink:#eceaff;--dim:#9aa3d6;--line:#2c3778;--sun:#ffb454;--ion:#5fd6c8;--danger:#ff7a6b}}:root[data-theme=dark]{--bg:#0f1533;--panel:#171f4a;--panel2:#222c66;--ink:#eceaff;--dim:#9aa3d6;--line:#2c3778;--sun:#ffb454;--ion:#5fd6c8;--danger:#ff7a6b}*,*:before,*:after{box-sizing:inherit}html{scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}.wrap{max-width:1080px;margin:0 auto;padding:0 20px}a{color:inherit}button,select,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--sun);outline-offset:3px;border-radius:4px}header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0}.brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:1.25rem;letter-spacing:-.01em;text-decoration:none}.brand svg{width:28px;height:28px}.right{display:flex;align-items:center;gap:18px}nav{display:flex;gap:18px;font-size:.95rem;color:var(--dim)}nav a{text-decoration:none}nav a:hover{color:var(--ink)}select{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:6px 12px;cursor:pointer}.status{margin:0 0 10px;font-size:.85rem;color:var(--dim);display:flex;gap:8px;align-items:center}.status i{width:8px;height:8px;border-radius:50%;background:var(--dim);display:inline-block}.status.live i{background:var(--ion)}.live{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0}.live div{padding:12px 14px;border-left:1px solid var(--line)}.live div:first-child{border-left:0;padding-left:0}.live dt{font-size:.8rem;color:var(--dim);margin:0}.live dd{margin:2px 0 0;font-family:var(--display);font-weight:600;font-size:1.25rem;font-variant-numeric:tabular-nums}.live small{font-family:var(--body);font-weight:400;font-size:.8rem;color:var(--dim);margin-left:4px}@media (max-width:700px){.live{grid-template-columns:1fr 1fr}.live div:nth-child(3){border-left:0;padding-left:0}.live div:nth-child(n+3){border-top:1px solid var(--line)}}.hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:36px;align-items:center;padding:44px 0 36px}.hero h1{font-family:var(--display);font-weight:700;font-size:clamp(2rem,4.6vw,3rem);line-height:1.06;letter-spacing:-.02em;margin:0 0 12px;font-variation-settings:"wdth" 90}.hero p.lead{color:var(--dim);margin:0 0 22px;max-width:46ch}.detail{border-left:3px solid var(--sun);padding:2px 0 2px 16px}.detail h2{font-family:var(--display);font-size:1.5rem;margin:0 0 2px;letter-spacing:-.01em}.detail .when{color:var(--dim);font-size:.9rem;margin:0 0 12px}.detail table{border-collapse:collapse;width:100%;font-size:.95rem}.detail td{padding:5px 0;vertical-align:top}.detail td:first-child{color:var(--dim);width:32%;padding-right:10px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;align-items:center}.btn{background:var(--sun);color:#1a1200;border:0;border-radius:999px;padding:10px 18px;font-weight:600}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn:hover{filter:brightness(1.06)}.note{font-size:.85rem;color:var(--dim)}.radar{width:100%;height:auto;display:block;max-width:520px;margin:0 auto}.radar .ring{fill:none;stroke:var(--line);stroke-width:1}.radar .moon{stroke:var(--dim);stroke-dasharray:3 4}.radar .lbl{fill:var(--dim);font-family:var(--body);font-size:10px}.radar .earth{fill:var(--ion)}.radar .rock{fill:var(--sun);cursor:pointer}.radar .rock:hover{opacity:.85}.radar .sel{fill:none;stroke:var(--ink);stroke-width:1.5}.radar .name{fill:var(--ink);font-family:var(--display);font-weight:600;font-size:11px}.sweep{transform-origin:200px 200px;animation:sweep 2.6s cubic-bezier(.3,.6,.4,1) 1 forwards;opacity:0}@keyframes sweep{0%{transform:rotate(0);opacity:.9}to{transform:rotate(360deg);opacity:0}}@media (prefers-reduced-motion:reduce){.sweep{display:none}}@media (max-width:820px){.hero{grid-template-columns:1fr;gap:24px;padding-top:28px}}section{padding:28px 0}section h2.title{font-family:var(--display);font-weight:650;font-size:1.6rem;letter-spacing:-.015em;margin:0 0 4px}section p.sub{margin:0 0 18px;color:var(--dim);max-width:64ch}.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px}.scroll{overflow-x:auto}.readout{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline;margin-bottom:10px}.readout strong{font-family:var(--display);font-size:1.6rem;font-variant-numeric:tabular-nums}.readout span{color:var(--dim)}input[type=range]{width:100%;accent-color:var(--sun);margin:10px 0 0}.kp text,.heat text{fill:var(--dim);font-family:var(--body);font-size:10px}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:.85rem;color:var(--dim);margin-top:8px}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}.stage{background:#0a0f2b;border-radius:14px;overflow:hidden;border:1px solid var(--line)}.stage canvas{display:block;width:100%;height:auto}.stagebar{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:14px}.globes{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.globe{margin:0;text-align:center}.globe canvas{width:100%;max-width:180px;height:auto;aspect-ratio:1;border-radius:50%;display:block;margin:0 auto 12px;background:transparent}.globe.earth canvas{box-shadow:0 0 22px 2px #50a0ff59}.globe h3{font-family:var(--display);font-size:1.15rem;margin:0 0 6px}.globe dl{margin:0;font-size:.85rem;text-align:center;display:grid;gap:4px;max-width:220px;margin-inline:auto}.globe dt{color:var(--dim);display:inline}.globe dd{margin:0;display:inline;font-variant-numeric:tabular-nums}.globe dl div{display:block}.credit{font-size:.8rem;color:var(--dim);margin:14px 0 0}@media (max-width:820px){.globes{grid-template-columns:1fr 1fr}}.deep{margin:28px 0 0;position:relative;border-radius:14px;overflow:hidden;background:#000}.deep img{display:block;width:100%;height:auto;max-height:460px;object-fit:cover}.deep figcaption{position:absolute;inset:auto 0 0;padding:44px 20px 16px;background:linear-gradient(to top,rgba(0,0,0,.85),transparent);color:#f2f0ff}.deep h3{font-family:var(--display);font-size:1.3rem;margin:0 0 2px}.deep p{margin:0;max-width:58ch;font-size:.95rem;opacity:.9}.deep small{display:block;margin-top:6px;opacity:.7}.scale{display:grid;gap:6px}.row{display:grid;grid-template-columns:150px 1fr 70px;gap:10px;align-items:center;background:none;border:0;padding:6px 8px;border-radius:8px;text-align:start;width:100%}.row:hover{background:var(--panel2)}.row[aria-pressed=true]{background:var(--panel2);outline:1px solid var(--sun)}.row .bar{height:12px;border-radius:6px;background:var(--ion);min-width:3px}.row[aria-pressed=true] .bar{background:var(--sun)}.row .r{font-variant-numeric:tabular-nums;text-align:end;color:var(--dim);font-size:.9rem}.row .n{font-size:.95rem}@media (max-width:520px){.row{grid-template-columns:110px 1fr 62px;gap:8px}.row .n{font-size:.85rem}}.letter{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--panel2);border-radius:20px;padding:26px}.letter h2{font-family:var(--display);font-size:1.5rem;margin:0 0 4px;letter-spacing:-.01em}.letter p{margin:0;color:var(--dim);max-width:44ch}.letter .f{display:flex;gap:8px;flex-wrap:wrap}.letter input{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:10px 16px;min-width:220px}footer{padding:26px 0 40px;color:var(--dim);font-size:.85rem;max-width:80ch}.masthead{--bg:#0f1533;--panel:#171f4a;--panel2:#222c66;--ink:#eceaff;--dim:#a4acdc;--line:#2f3a7c;--sun:#ffb454;--ion:#5fd6c8;--danger:#ff7a6b;position:relative;margin-top:12px;border-radius:26px;overflow:hidden;color:var(--ink);background:radial-gradient(900px 420px at 88% -8%,rgba(255,180,84,.16),transparent 62%),radial-gradient(760px 420px at -6% 105%,rgba(95,214,200,.13),transparent 60%),#0c112b;border:1px solid #2a3572}.masthead canvas.stars{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.mh{position:relative;padding:0 30px 34px}.ruler{position:absolute;left:0;right:0;bottom:0;height:14px;pointer-events:none;opacity:.7;background-image:linear-gradient(90deg,#8f99d6 1px,transparent 1px),linear-gradient(90deg,#c9d0ff 1px,transparent 1px);background-size:10px 6px,50px 12px;background-repeat:repeat-x;background-position:left bottom}@media (max-width:560px){.mh{padding:0 18px 30px}.chip{border-radius:18px}.chip span+span{flex-basis:100%;border-left:0;padding-left:34px;margin-top:-6px}}.brand .orbit{transform-origin:16px 16px;transform-box:view-box;animation:orbit 9s linear infinite}@keyframes orbit{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.brand .orbit{animation:none}}.chip{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 16px;padding:5px 14px 5px 6px;border:1px solid var(--line);border-radius:999px;background:#171f4a8c;font-size:.88rem;color:var(--dim)}.chip canvas{width:24px;height:24px;display:block}.chip span+span{padding-left:10px;border-left:1px solid var(--line)}.hero h1 .count{color:var(--sun);text-shadow:0 0 30px rgba(255,180,84,.5);font-variant-numeric:tabular-nums}.skyctl{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin-bottom:16px}.skyctl label{display:flex;align-items:center;gap:8px;color:var(--dim);font-size:.9rem}.skyctl select{max-width:200px}.skygrid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:22px;align-items:start}@media (max-width:860px){.skygrid{grid-template-columns:1fr}}.skystage{padding:14px;background:#070b22}.skystage canvas{max-width:640px;margin:0 auto}.sliderrow{display:grid;grid-template-columns:auto 1fr auto;gap:6px 12px;align-items:center;margin-top:12px}.sliderrow label{color:var(--dim);font-size:.9rem}.sliderrow strong{grid-column:1 / -1;font-family:var(--display);font-weight:600;font-variant-numeric:tabular-nums}.sliderrow input{margin:0}.evp h3{font-family:var(--display);font-size:1.05rem;margin:20px 0 8px;letter-spacing:-.005em}.evp h3:first-child{margin-top:0}.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:.95rem}.kv dt{color:var(--dim)}.kv dd{margin:0;font-variant-numeric:tabular-nums}.evp ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.evp li{font-size:.94rem;line-height:1.45}.evp li strong{font-weight:600}.evp li .rel{color:var(--dim);margin-inline-start:6px;font-size:.85rem}.evp li .sub2{display:block;color:var(--dim)}.note.warn{color:var(--sun)}.pdot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-inline-end:8px;vertical-align:0}.lrow,.rrow{display:grid;grid-template-columns:minmax(120px,190px) 1fr auto;gap:6px 14px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}.lrow{grid-template-areas:"name track stat" "sub sub sub"}.lwrap{width:100%}.lrow .lname{grid-area:name}.lrow .lwrap{grid-area:track;min-width:90px}.lrow .lstat{grid-area:stat}.lrow .lsub{grid-area:sub;color:var(--dim);font-size:.82rem}.lrow:last-child,.rrow:last-child{border-bottom:0}.lname,.rname{font-size:.95rem;display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap}.rname{line-height:1.25}.lname i{width:10px;height:10px;border-radius:50%;flex:none}.ltrack,.rtrack{position:relative;height:12px;border-radius:6px;background:var(--panel2);min-width:80px}.lfill,.rfill{position:absolute;inset:0 auto 0 0;width:0;border-radius:6px;background:#ffffff47}.ldot,.rdot{position:absolute;top:50%;left:0;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;box-shadow:0 0 10px currentColor}.lstat,.rstat{font-size:.9rem;font-variant-numeric:tabular-nums;color:var(--dim);min-width:86px;text-align:end}.lrow.done .lstat,.rrow.done .rstat{color:var(--ion)}.tag{font-size:.72rem;padding:1px 7px;border-radius:999px;border:1px solid var(--line);color:var(--dim)}.tag.on{color:var(--ion);border-color:var(--ion)}.cmpbar{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:14px}.clock{font-family:var(--display);font-weight:600;font-variant-numeric:tabular-nums}@media (max-width:520px){.lrow,.rrow{grid-template-columns:1fr auto;gap:4px 10px}.lrow{grid-template-areas:"name stat" "track track" "sub sub"}.rrow{grid-template-areas:"name stat" "track track"}.rrow .rname{grid-area:name}.rrow .rtrack{grid-area:track}.rrow .rstat{grid-area:stat}}.thread{margin:22px 0 0;text-align:center}.thread a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:11px 20px;font-size:.97rem;transition:border-color .15s,transform .15s}.thread a:hover{border-color:var(--sun);transform:translateY(-1px)}.thread a:after{content:"";width:8px;height:8px;border-right:2px solid var(--sun);border-bottom:2px solid var(--sun);transform:rotate(45deg);margin-top:-2px}.boardwrap{padding:14px 16px}.bhead{display:flex;align-items:center;gap:9px;font-family:var(--display);font-size:1.05rem;margin:4px 0 8px;letter-spacing:-.005em}.bhead.past{margin-top:22px;color:var(--dim)}.bhead .dot{width:9px;height:9px;border-radius:50%;background:var(--ion);box-shadow:0 0 #5fd6c8b3;animation:pulse 2.4s ease-out infinite}@keyframes pulse{70%{box-shadow:0 0 0 9px #5fd6c800}to{box-shadow:0 0 #5fd6c800}}@media (prefers-reduced-motion:reduce){.bhead .dot{animation:none}}table.board{width:100%;border-collapse:collapse;font-size:.92rem;min-width:560px}table.board th{text-align:start;font-weight:500;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);padding:0 12px 8px 0;border-bottom:1px solid var(--line);white-space:nowrap}table.board td{padding:10px 12px 10px 0;border-bottom:1px solid var(--line);vertical-align:top}table.board tr:last-child td{border-bottom:0}table.board .sub2{display:block;color:var(--dim);font-size:.8rem;margin-top:2px}table.board .bt{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}table.board .bm{font-weight:500}table.board .bl{color:var(--dim)}.chip2{display:inline-block;padding:2px 10px;border-radius:999px;border:1px solid var(--line);font-size:.8rem;white-space:nowrap}.chip2.ok{color:var(--ion);border-color:var(--ion)}.chip2.go{color:var(--sun);border-color:var(--sun)}.chip2.bad{color:var(--danger);border-color:var(--danger)}.ann{min-height:0;margin:0 0 12px;padding:0;color:var(--ink);font-size:.95rem;opacity:0}.ann.show{opacity:1;padding:12px 16px;border-inline-start:3px solid var(--sun);background:var(--panel2);border-radius:0 12px 12px 0;animation:annin .5s ease-out}@keyframes annin{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ann.show{animation:none}}table.nights{min-width:440px}table.nights tr.best td{background:var(--panel2)}table.nights tr.best td:first-child{border-radius:8px 0 0 8px}table.nights tr.best td:last-child{border-radius:0 8px 8px 0}.pick{margin:0 0 14px;font-family:var(--display);font-size:1.05rem;line-height:1.35}.srow{display:grid;grid-template-columns:minmax(120px,1.1fr) auto minmax(0,2.2fr) minmax(96px,auto);gap:6px 14px;align-items:center;width:100%;text-align:start;background:none;border:0;border-radius:10px;padding:9px 10px}.srow:hover{background:var(--panel2)}.srow[aria-pressed=true]{background:var(--panel2);outline:1px solid var(--sun)}.sname{font-size:.95rem}.sh{font-size:.85rem;color:var(--dim);font-variant-numeric:tabular-nums;white-space:nowrap}.strack{position:relative;height:14px;border-radius:7px;background:var(--panel2);overflow:visible}.srow[aria-pressed=true] .strack{background:#ffb45429}.sbar{position:absolute;inset:0 auto 0 0;border-radius:7px;background:var(--ion)}.srow[aria-pressed=true] .sbar{background:var(--sun)}.smark{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--sun);opacity:.75}.scmp{font-size:.88rem;color:var(--dim);text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.srow[aria-pressed=true] .scmp{color:var(--sun);font-weight:600}@media (max-width:640px){.srow{grid-template-columns:1fr auto;gap:4px 10px}.sname{grid-column:1}.sh{grid-column:2;text-align:end}.strack{grid-column:1 / -1}.scmp{grid-column:1 / -1;text-align:start}}@media (max-width:640px){.boardwrap{padding:12px 14px}table.board,table.board.nights{min-width:0;display:block}table.board thead{display:none}table.board tbody,table.board tr,table.board td{display:block;width:100%}table.board tr{padding:12px 0;border-bottom:1px solid var(--line)}table.board tr:last-child{border-bottom:0}table.board td{border:0;padding:1px 0}table.board .bt{font-size:.95rem}table.board .bm{font-size:1.05rem;font-weight:600;margin-top:2px}table.board .bv,table.board .bl{color:var(--dim);font-size:.9rem}table.board .bs{margin-top:7px}table.board td[data-l]{display:inline-block;width:auto;margin-inline-end:16px;color:var(--dim);font-size:.9rem}table.board td[data-l]:before{content:attr(data-l) " ";color:var(--dim);opacity:.75}table.nights tr.best td:first-child,table.nights tr.best td:last-child{border-radius:0}table.nights tr.best{background:var(--panel2);border-radius:10px;padding:12px 10px}table.nights tr.best td{background:none}}.mainnav{position:relative;display:flex;gap:2px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -4px 18px;padding:4px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;border:1px solid var(--line);border-radius:999px;background:#0c112b73;backdrop-filter:blur(6px)}.mainnav::-webkit-scrollbar{display:none}.mainnav a{position:relative;z-index:1;flex:none;scroll-snap-align:center;padding:8px 16px;border-radius:999px;color:var(--dim);font-size:.95rem;white-space:nowrap;transition:color .25s ease}.mainnav a:hover,.mainnav a[aria-current=page]{color:var(--ink)}.navpill{position:absolute;z-index:0;top:4px;left:0;height:calc(100% - 8px);width:0;border-radius:999px;background:linear-gradient(120deg,#5fd6c838,#ffb4542e);box-shadow:inset 0 0 0 1px #ffffff1a;transform:translate(0);transition:transform .38s cubic-bezier(.22,.7,.3,1),width .38s cubic-bezier(.22,.7,.3,1),opacity .25s;opacity:0;pointer-events:none}.mainnav.ready .navpill{opacity:1}@media (prefers-reduced-motion:reduce){.navpill{transition:none}}.pagehead{padding:36px 0 30px;max-width:760px}.pagehead h1{font-family:var(--display);font-weight:700;font-size:clamp(2rem,4.6vw,3rem);line-height:1.06;letter-spacing:-.02em;margin:0 0 12px}.pagehead .lead{color:var(--dim);margin:0 0 14px;font-size:1.05rem}.sum{margin:0;color:var(--ink);font-size:.98rem;line-height:1.6}.pagehead .sum{padding:12px 16px;border-inline-start:3px solid var(--ion);background:#5fd6c812;border-radius:0 12px 12px 0}.sum:empty,.pagehead .sum:empty{display:none}.sum time{color:var(--dim);font-size:.85rem}.front{padding-top:34px}.fpgrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:36px;align-items:start}@media (max-width:860px){.fpgrid{grid-template-columns:1fr;gap:26px}}.fpmain .title,.fpside .title{margin-top:26px}.fpmain .title:first-child,.fpside .title:first-child{margin-top:0}.headlines ul{list-style:none;margin:0;padding:0}.headlines li{padding:12px 0;border-bottom:1px solid var(--line)}.headlines li:last-child{border-bottom:0}.headlines a{text-decoration:none;font-weight:600;line-height:1.35;display:block}.headlines a:hover{color:var(--sun)}.headlines .src{display:block;color:var(--dim);font-size:.82rem;margin-top:3px}.bulletin a{display:block;text-decoration:none;padding:16px 18px;border-radius:14px;background:var(--panel);border:1px solid var(--line)}.bulletin a:hover{border-color:var(--sun)}.bulletin strong{display:block;font-family:var(--display);font-size:1.15rem;line-height:1.25;margin-bottom:4px}.bulletin span{color:var(--dim);font-size:.9rem}.cards{display:grid;gap:10px}.card{display:block;text-decoration:none;padding:14px 16px;border-radius:14px;background:var(--panel);border:1px solid var(--line);transition:border-color .15s,transform .15s}.card:hover{border-color:var(--sun);transform:translateY(-1px)}.card strong{display:block;font-family:var(--display);font-size:1.05rem;margin-bottom:3px}.card span{color:var(--dim);font-size:.9rem;line-height:1.45}.footnav{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 12px}.footnav a{color:var(--dim);text-decoration:none}.footnav a:hover{color:var(--ink)}.mapstage{padding:0;overflow:hidden;background:#070b22}.mapstage canvas{display:block;width:100%;height:auto}#issStats{margin-top:0;border-top:0}table.credits{min-width:520px}table.credits td:first-child{font-weight:600}table.credits a{text-decoration:none;border-bottom:1px solid var(--line)}table.credits a:hover{color:var(--sun)}#credits .title{margin-top:34px}#credits .title:first-child{margin-top:0}#credits .panel{padding:14px 16px}.auroragrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:26px;align-items:start}@media (max-width:820px){.auroragrid{grid-template-columns:1fr;gap:18px}}.polarstage{padding:0;background:#070b22;border-radius:50%;overflow:hidden;max-width:520px;margin-inline:auto}.polarstage canvas{display:block;width:100%;height:auto}.aurside .sum{padding:12px 16px;border-inline-start:3px solid var(--ion);background:#5fd6c812;border-radius:0 12px 12px 0}.aurside p strong{font-weight:600}.skytools{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 0}body.ar-open{overflow:hidden}.arwrap{position:fixed;inset:0;z-index:999;background:#04060f}.arwrap[hidden]{display:none}.arwrap video{position:absolute;left:0;top:0;width:2px;height:2px;opacity:.01;pointer-events:none}.arwrap canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.arhud{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:calc(14px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));pointer-events:none}.artop{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.arlook{background:#060a1e9e;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:8px 14px;font-size:.92rem;color:#eceaff;backdrop-filter:blur(6px);max-width:70vw}.arnote{margin:12px 0;align-self:flex-start;max-width:min(420px,80vw);background:#060a1e9e;border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:10px 14px;font-size:.88rem;color:#d7dcff}.arnote:empty{display:none}.arbottom{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.arbtn{pointer-events:auto;background:#060a1ea8;color:#eceaff;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:11px 20px;font-size:.95rem;backdrop-filter:blur(6px)}.arbtn:hover{border-color:var(--sun)}.arbtn[hidden]{display:none}.gamestart{padding:20px}.gbtns{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}#gStats,#gPlayed{margin:6px 0 0}#gPlayed:empty{display:none}.gpanel{pointer-events:auto;align-self:center;width:min(460px,94vw);margin:auto 0 10px;background:#060a1e8c;border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:10px 14px;backdrop-filter:blur(6px);text-align:center}.gpanel[hidden]{display:none}.gtarget{margin:0;font-family:var(--display);font-size:1.05rem;color:#fff}.gmeta{margin:3px 0 8px;font-size:.8rem;color:#b9c2f0}.gbars{position:relative;height:8px;border-radius:4px;background:#ffffff24;overflow:hidden}.gbar{position:absolute;inset:0 auto 0 0;background:var(--sun);transition:width .2s linear}.ghold{position:absolute;inset:auto 0 0;height:3px;width:0;background:#7dffc8;transition:width .1s linear}.ghint{margin:8px 0 0;font-size:.9rem;color:#ffd79a;min-height:1.1em}.gresult{margin-top:10px;text-align:start}.gresult pre{margin:0;font-family:inherit;font-size:.9rem;line-height:1.5;color:#eceaff;white-space:pre-wrap}#gShare{margin-top:10px}@media (orientation:landscape){.arnote{max-width:min(360px,38vw)}.gpanel{position:absolute;left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:min(330px,42vw);margin:0;padding:9px 12px;text-align:start}.gpanel .gtarget{font-size:1rem}.gpanel .gmeta{margin-bottom:6px}.gresult pre{font-size:.82rem}.arbottom{justify-content:flex-end}}
.photo{position:absolute;inset:0;z-index:5;pointer-events:auto;background:#04060fee;backdrop-filter:blur(10px);overflow-y:auto;-webkit-overflow-scrolling:touch}
.photo[hidden]{display:none}
.photoinner{min-height:100%;display:flex;flex-direction:column;gap:14px;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(20px + env(safe-area-inset-bottom,0px));max-width:560px;margin:0 auto}
.photoshot{position:relative;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:#05070f;box-shadow:0 18px 50px rgba(0,0,0,.55)}
.photoshot canvas{position:static!important;display:block;width:100%;height:auto;aspect-ratio:1/1;touch-action:auto}
.photobody h3{margin:0 0 4px;font-size:1.35rem;color:#f3f1ff}
.photolead{margin:0 0 10px;font-size:.84rem;color:#9aa3c4}
.photofacts{display:grid;grid-template-columns:1fr auto;gap:2px 14px;margin:0 0 12px;font-size:.92rem}
.photofacts>div{display:contents}
.photofacts dt{color:#9aa3c4;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.photofacts dd{margin:0;padding:3px 0;text-align:end;color:#eceaff;border-bottom:1px solid rgba(255,255,255,.06);font-variant-numeric:tabular-nums}
.photoinfo{margin:0 0 8px;font-size:.95rem;line-height:1.6;color:#dcd9f0}
.photocredit{margin:0;font-size:.78rem;color:#7c86a8}
.photonext{align-self:stretch;text-align:center;margin-top:auto;background:#1a2450e0;border-color:rgba(160,180,255,.45);font-size:1.02rem;padding:14px 20px}
.gflash{position:absolute;inset:0;z-index:6;background:#fff;opacity:0;pointer-events:none}
.gflash.on{animation:gflash .42s ease-out}
@keyframes gflash{0%{opacity:.92}100%{opacity:0}}
.gready{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#04060fe8;backdrop-filter:blur(8px);padding:20px}
.gready[hidden]{display:none}
.greadybox{width:min(420px,94vw);background:#080d20;border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:22px;text-align:center;display:flex;flex-direction:column;gap:12px}
.greadybox h3{margin:0;font-size:1.2rem;color:#f3f1ff}
.greadybox p{margin:0;font-size:.94rem;line-height:1.55;color:#c3c8e0}
.greadybtns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.greadybtns .arbtn:disabled{opacity:.5;border-color:rgba(120,230,170,.5)}
.greadynote{font-size:.82rem;color:#8b93b4}
.arbtn.primary{background:#1a2450;border-color:rgba(160,180,255,.5)}
.arlink{pointer-events:auto;background:none;border:0;color:#8b93b4;font-size:.86rem;text-decoration:underline;padding:4px}
body.photo-open .gpanel,body.photo-open .arbottom,body.photo-open .artop,body.photo-open .arnote{visibility:hidden}
@media (orientation:landscape) and (max-height:520px){
  .photoinner{max-width:none;flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:16px}
  .photoshot{flex:0 0 42%;max-width:42%}
  .photobody{flex:1 1 0;min-width:0}
  .photonext{flex:0 0 100%;margin-top:4px}
}
.ghero{border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#060a1a;margin-bottom:8px}
.ghero .gskywrap{position:relative;line-height:0;height:clamp(210px,46vw,330px)}
.ghero canvas#gHeroCv{display:block;width:100%;height:100%}
.ghero .gfade{position:absolute;inset:auto 0 -1px 0;height:56px;background:linear-gradient(180deg,rgba(6,10,26,0),#060a1a);pointer-events:none}
.gheroin{padding:0 18px 20px;display:flex;flex-direction:column;gap:10px;align-items:flex-start;margin-top:-26px;position:relative}
.gkick{margin:0;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;color:#9aa3c4}
.gcount{display:flex;flex-wrap:wrap;gap:6px}
.gchip{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.84rem;color:#eceaff;background:#121a3a;border:1px solid rgba(255,255,255,.16)}
.ghlead{margin:2px 0 4px;font-size:.96rem;line-height:1.5;color:#cdd2e8;max-width:46ch}
.ghero .gbtns{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.btn.gbig{position:relative;font-size:1.18rem;font-weight:800;letter-spacing:.01em;padding:17px 34px 17px 30px;border-radius:999px;color:#1a1000;background:linear-gradient(180deg,#ffd27a 0%,#ffb238 48%,#f28a12 100%);border:1px solid #ffe2a6;box-shadow:0 0 0 4px rgba(255,178,56,.22),0 10px 30px rgba(242,138,18,.55),inset 0 1px 0 rgba(255,255,255,.65);text-shadow:0 1px 0 rgba(255,255,255,.35);animation:gbigPulse 2.4s ease-in-out infinite}
.btn.gbig::after{content:'\25B6';font-size:.78em;margin-left:.6em;display:inline-block}
@keyframes gbigPulse{0%,100%{box-shadow:0 0 0 4px rgba(255,178,56,.22),0 10px 30px rgba(242,138,18,.55),inset 0 1px 0 rgba(255,255,255,.65)}50%{box-shadow:0 0 0 10px rgba(255,178,56,0),0 12px 40px rgba(242,138,18,.75),inset 0 1px 0 rgba(255,255,255,.65)}}
@media (prefers-reduced-motion:reduce){.btn.gbig{animation:none}}
.gbtns .gdmeta{flex:1 1 100%;text-align:center}
.gdmeta{margin:-2px 0 4px;font-size:.86rem;font-weight:600;color:#ffd69a;text-shadow:0 1px 3px rgba(0,0,0,.7)}
@media (max-width:560px){.gbtns .btn.gbig{flex:1 1 100%;width:100%}}
.btn.gbig:hover{filter:brightness(1.06);transform:translateY(-1px)}
.btn.gbig:active{transform:translateY(1px);filter:brightness(.97)}
.gheroin .note{margin:0}
.ghero .btn.ghost{color:#dfe3f5;border-color:rgba(200,210,255,.4);background:#0e1430a8}
.ghero .btn.ghost:hover{border-color:var(--sun)}
.glive{margin:0 0 22px;font-size:.78rem;color:#7c86a8}
.gprize{display:grid;grid-template-columns:190px 1fr;gap:18px;align-items:start;margin-bottom:26px}
.gprizeshot{border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#05070f}
.gprizeshot canvas{display:block;width:100%;height:auto;aspect-ratio:1/1}
.gprizetxt p{margin:0 0 8px;line-height:1.6}
.gprizenow{font-size:.88rem;color:var(--dim)}
.gprizenow strong{color:var(--ink)}
.gsteps{margin:0 0 16px;padding:0;list-style:none;counter-reset:gs;display:grid;gap:10px}
.gsteps li{counter-increment:gs;position:relative;padding:12px 14px 12px 50px;border-radius:12px;background:var(--panel);color:var(--ink);border:1px solid var(--line);line-height:1.55}
.gsteps li::before{content:counter(gs);position:absolute;left:14px;top:11px;width:24px;height:24px;border-radius:999px;display:grid;place-items:center;font-size:.82rem;font-weight:700;color:#1a1000;background:linear-gradient(180deg,#ffd27a,#f5a02a);border:1px solid #ffe2a6}
@media (max-width:560px){
  .gheroin{padding:0 14px 16px}
  .ghlead{font-size:.9rem}
  .gprize{grid-template-columns:1fr;gap:12px}
  .gprizeshot{max-width:240px}
}
.gkick{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.gwhere{font-size:.78rem;letter-spacing:.04em;text-transform:none;color:#8fa2e8;text-decoration:underline;text-underline-offset:2px}
.gwhere:hover{color:var(--sun)}

.photopip{position:absolute;right:3%;bottom:calc(5.3% + 10px);width:34%;padding:0;margin:0;border:1.5px solid rgba(255,255,255,.55);border-radius:12px;overflow:hidden;background:#05070f;box-shadow:0 8px 24px rgba(0,0,0,.6);cursor:pointer;display:block}
.photopip canvas{display:block;width:100%;height:auto;aspect-ratio:1/1}
.photopiplbl{position:absolute;left:0;right:0;top:0;padding:3px 6px;font:600 .72rem/1.3 system-ui,sans-serif;color:#fff;background:linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,0));text-align:left}
.photopiplbl::after{content:' \21C4';opacity:.85}
.photorig{margin:6px 0 0;font-size:.86rem;line-height:1.5;color:#cfd6f5}
.gbtns .gfmeta{flex:1 1 100%;margin:0;font-size:.82rem;line-height:1.45;color:#b9c2f0}
.gskip{margin-top:8px;padding:7px 16px;font-size:.88rem}
.gskip[hidden]{display:none}
.btn.gbig.done,.btn.gbig:disabled{animation:none;cursor:default;background:linear-gradient(180deg,#3a4270,#2a3158);color:#d8dcf5;border-color:rgba(160,180,255,.35);box-shadow:none;text-shadow:none;filter:none;transform:none}
.btn.gbig.done::after{content:none}
.gdmeta.wait{font-size:1rem;color:#ffe2b0}
.gclock{display:inline-block;margin-left:6px;font-family:var(--display);font-size:1.6rem;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#ffd27a;text-shadow:0 0 18px rgba(255,178,56,.45)}
.btn.ghost.now{background:linear-gradient(180deg,#ffd27a,#f28a12);color:#1a1000;border-color:#ffe2a6;font-weight:700;box-shadow:0 8px 24px rgba(242,138,18,.45)}
.lbwrap{padding:14px 16px}
.lbhead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.lbtabs{display:flex;gap:6px}
.lbtab{border:1px solid var(--line);background:transparent;border-radius:999px;padding:6px 14px;font-size:.9rem;color:var(--dim)}
.lbtab[aria-pressed=true]{background:var(--sun);border-color:var(--sun);color:#1a1200;font-weight:600}
.lbcount{font-size:.85rem;color:var(--dim)}
.lblist{list-style:none;margin:0;padding:0}
.lbrow{display:grid;grid-template-columns:2.2em 1fr auto;gap:4px 10px;align-items:center;padding:9px 6px;border-bottom:1px solid var(--line)}
.lbrow:last-child{border-bottom:0}
.lbrow.has{cursor:pointer}
.lbrow.has:hover{background:var(--panel2)}
.lbrow.you{background:rgba(255,180,84,.13);border-radius:10px}
.lbnum{font-family:var(--display);font-weight:700;color:var(--dim);text-align:center}
.lbrow:nth-child(1) .lbnum{color:#e0a100}.lbrow:nth-child(2) .lbnum{color:#9aa3b8}.lbrow:nth-child(3) .lbnum{color:#b87333}
.lbwho{min-width:0;overflow:hidden;text-overflow:ellipsis}
.lbwho em{font-style:normal;font-size:.78rem;color:var(--sun);margin-left:4px}
.lbanon{color:var(--dim)}
.lbcity{display:block;font-size:.8rem;color:var(--dim)}
.lbscore{font-family:var(--display);font-weight:700;font-variant-numeric:tabular-nums}
.lbcaps{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:4px}
.lbcap{font-size:.74rem;padding:1px 8px;border-radius:999px;border:1px solid var(--line);color:var(--dim)}
.lbshots{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
.lbshots:empty{display:none}
.lbshots figure{margin:0}
.lbshots canvas{width:100%;height:auto;aspect-ratio:1;border-radius:10px;display:block;background:#05070f}
.lbshots figcaption{font-size:.75rem;color:var(--dim);margin-top:3px}
.lbempty{padding:14px 6px;color:var(--dim)}
.lbforget{margin-top:10px;border:0;background:none;color:var(--dim);font-size:.8rem;text-decoration:underline;padding:0}
.lbmap{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#0a1030}
.lbmap canvas#lbMapCv{display:block;width:100%;height:auto;aspect-ratio:2/1}
.lbpop{position:absolute;left:0;top:0;display:flex;gap:8px;align-items:center;width:min(250px,64%);padding:6px;border-radius:12px;background:rgba(8,12,34,.92);border:1.5px solid #ffbe5a;color:#eceaff;box-shadow:0 8px 24px rgba(0,0,0,.5);opacity:0;transform:scale(.92);transition:opacity .35s,transform .35s;pointer-events:none}
.lbpop.sky{border-color:#5fd6c8}
.lbpop.on{opacity:1;transform:none}
.lbpop canvas{width:34%;height:auto;aspect-ratio:1;border-radius:8px;flex:none;background:#05070f}
.lbpoptx{display:flex;flex-direction:column;min-width:0;font-size:.78rem;line-height:1.3}
.lbpoptx strong{font-size:.84rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lbtag{align-self:flex-start;font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;padding:0 6px;border-radius:999px;background:#ffbe5a;color:#1a1000;margin-bottom:2px}
.lbpop.sky .lbtag{background:#5fd6c8}
@media (prefers-reduced-motion:reduce){.lbpop{transition:none}}
.lbshare{margin-top:10px;display:grid;gap:8px;text-align:start}
.lbshare .lbrank{margin:0;font-size:.9rem;color:#ffe2b0}
.lbshare input[type=text],.lbshare #lbName{background:#0c122e;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:9px 12px;pointer-events:auto}
.lbcb{font-size:.84rem;color:#d7dcff;display:flex;gap:8px;align-items:flex-start;pointer-events:auto}
.lbshare .arbtn{justify-self:start}
.lbfine{margin:0;font-size:.72rem;color:#9aa3d6;line-height:1.4}
@media (max-width:640px){.lbpop{position:relative;left:auto!important;top:auto!important;width:auto;margin:0;border-radius:0;border-width:1.5px 0 0;transform:none}.lbpop canvas{width:84px}.lbmap canvas#lbMapCv{aspect-ratio:auto;height:auto}}
.lbmap{margin-bottom:26px}
.arcal{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:min(440px,92vw);z-index:5;background:rgba(6,10,30,.9);border:1px solid rgba(95,214,200,.55);border-radius:16px;padding:12px 14px;color:#eceaff;backdrop-filter:blur(6px)}
.arcal[hidden]{display:none}
.arcal h3{margin:0 0 4px;font-size:1.02rem}
.arcal p{margin:0 0 6px;font-size:.88rem;line-height:1.45}
.arcalwarn{color:#ffd79a}.arcalwarn:empty{display:none}
.arcal8{color:#9fe7dd;margin:4px 0 8px}.arcal8 svg{display:block;width:140px;height:70px;margin:0 auto}
.arcalbar{height:6px;border-radius:3px;background:rgba(255,255,255,.15);overflow:hidden;margin-top:6px}.arcalbar span{display:block;height:100%;width:0;background:#5fd6c8;transition:width .2s}
.arcalbtns{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.arcalbtns [hidden]{display:none}
.arcalchip{position:absolute;left:50%;top:calc(64px + env(safe-area-inset-top,0px));transform:translateX(-50%);z-index:4;display:flex;gap:8px;align-items:center;max-width:94vw;padding:6px 8px 6px 14px;border-radius:999px;background:rgba(60,30,6,.88);border:1px solid #ffb454;color:#ffe2b0;font-size:.86rem}
.arcalchip[hidden]{display:none}
.arcalchip .arbtn{padding:6px 12px;font-size:.85rem}
.arlink{background:none;border:0;color:#b9c2f0;text-decoration:underline;font-size:.88rem;padding:6px}

.satgrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:860px){.satgrid{grid-template-columns:1fr}}
.satstage{position:relative;border-radius:18px;overflow:hidden;background:#04071a;border:1px solid var(--line)}
.satstage canvas{display:block;width:100%;height:auto;aspect-ratio:1/1;touch-action:none;cursor:grab}
.satstage canvas:active{cursor:grabbing}
.satzoom{position:absolute;right:10px;top:10px;display:flex;gap:6px}
.satzoom .arbtn{padding:6px 12px;min-width:38px}
.satstat{position:absolute;left:12px;bottom:8px;margin:0;font-size:.78rem;color:#b9c2f0;text-shadow:0 1px 3px #000}
.satside{padding:14px}
.satq{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:9px 14px;margin-bottom:10px}
.satchips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.satchip{border:1px solid var(--line);background:transparent;border-radius:999px;padding:5px 11px;font-size:.86rem;color:var(--ink);display:inline-flex;gap:5px;align-items:center}
.satchip b{font-weight:600;color:var(--dim);font-variant-numeric:tabular-nums}
.satchip.on{background:var(--sun);border-color:var(--sun);color:#1a1200}.satchip.on b{color:#3a2600}
.satchip.more{color:var(--dim)}
.satflag{font-size:1.05rem;line-height:1}
.satmega{display:flex;gap:8px;align-items:flex-start;font-size:.85rem;color:var(--dim);margin:4px 0 12px}
.sathead{font-family:var(--display);font-size:1.15rem;margin:6px 0 2px}
.satwhere{font-size:.85rem;color:var(--dim);margin:0 0 8px}
.satul{list-style:none;margin:0;padding:0;max-height:560px;overflow:auto}
.satrow{padding:9px 6px;border-bottom:1px solid var(--line);cursor:pointer;border-radius:8px}
.satrow:hover,.satrow.on{background:var(--panel2)}
.satname strong{font-weight:600}
.satkind{font-size:.75rem;color:var(--dim);margin-left:6px}
.satnext{font-size:.84rem;color:var(--dim);margin-top:2px}
.satmore:empty{display:none}
.satfacts{font-size:.82rem;color:var(--dim);margin:6px 0}
.satpasses{margin:4px 0 0;padding-left:1.2em;font-size:.84rem}
.satpasses li{margin:2px 0;color:var(--dim)}
.satpasses li.vis{color:var(--ink);font-weight:600}

/* ---- home: the sky map first, bigger, and a real invitation to look up */
.page-home .skystage{position:relative;padding:10px 10px 12px}
.page-home .skystage canvas{max-width:none;cursor:pointer}
.skyfs{position:absolute;right:12px;top:12px;width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(6,10,30,.7);color:#eceaff;font-size:1.15rem;line-height:1;display:grid;place-items:center;z-index:2}
.skyhint{margin:4px 4px 0;font-size:.8rem;color:#9aa3d6;text-align:center}
.skystage .sliderrow{margin:6px 4px 0;color:#d7dcff}
.skystage .sliderrow label{color:#b9c2f0}
.skystage .sliderrow .btn.ghost{color:#eceaff;border-color:rgba(255,255,255,.3)}
.skytip{position:absolute;z-index:3;min-width:180px;max-width:260px;padding:10px 12px;border-radius:12px;background:rgba(8,12,34,.94);border:1px solid #ffd27a;color:#eceaff;display:flex;flex-direction:column;gap:4px;box-shadow:0 8px 24px rgba(0,0,0,.5)}
.skytip[hidden]{display:none}
.skytip strong{font-family:var(--display);font-size:1.05rem}
.skytip span{font-size:.85rem;color:#c9d0ff}
.skytip .btn{margin-top:6px;padding:7px 14px;font-size:.9rem;align-self:flex-start}
.skystage.full{position:fixed;inset:0;z-index:900;border-radius:0;border:0;padding:calc(10px + env(safe-area-inset-top,0px)) 10px calc(12px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;justify-content:center;background:#050817;overflow:auto}
.skystage.full canvas{width:min(100%, calc(100vh - 150px));height:auto;margin:0 auto}
body.sky-full{overflow:hidden}
.arcta{position:relative;display:flex;align-items:center;gap:14px;width:100%;margin:14px 0 6px;padding:16px 18px;border-radius:18px;border:1px solid #ffe2a6;text-align:start;color:#1a1000;background:linear-gradient(135deg,#ffd27a 0%,#ffb238 55%,#f28a12 100%);box-shadow:0 0 0 4px rgba(255,178,56,.2),0 12px 32px rgba(242,138,18,.45);animation:gbigPulse 2.6s ease-in-out infinite}
.arcta:hover{filter:brightness(1.05)}
.arcta-ico{flex:none;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:rgba(26,16,0,.12)}
.arcta-tx{display:flex;flex-direction:column;gap:2px;min-width:0}
.arcta-tx strong{font-family:var(--display);font-size:1.2rem;line-height:1.2}
.arcta-tx small{font-size:.88rem;opacity:.85;line-height:1.35}
.arcta-go{margin-left:auto;font-size:2rem;line-height:1;font-weight:700}
@media (prefers-reduced-motion:reduce){.arcta{animation:none}}
.page-home #sky .skyctl{margin:10px 0 6px}
.page-home #sky p.sub{margin:4px 0 0;font-size:.9rem}
.arshoot{background:linear-gradient(180deg,#ffd27a,#f28a12)!important;color:#1a1000!important;border-color:#ffe2a6!important;font-weight:700}
@media (max-width:700px){
  .page-home .pagehead{padding:18px 0 14px}
  .page-home .pagehead h1{font-size:1.75rem;margin-bottom:6px}
  .page-home .pagehead .lead{display:none}
  .page-home .masthead .live dd{font-size:1.02rem}
  .page-home .masthead .live div{padding:8px 10px}
  .page-home #sky{padding-top:16px}
  .page-home .skystage:not(.full){margin:0 -14px;border-radius:14px;padding:6px 6px 10px}
}
.page-home .skygrid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}@media (max-width:860px){.page-home .skygrid{grid-template-columns:1fr}}
/* ---- the slideshow of catches on "Your sky" */
.snapshow{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;align-items:center;background:#070b22;border:1px solid var(--line);border-radius:18px;padding:14px;color:#eceaff}
@media (max-width:760px){.snapshow{grid-template-columns:1fr;padding:10px}}
.snapstage{position:relative;border-radius:14px;overflow:hidden;background:#05070f}
.snapstage canvas{display:block;width:100%;height:auto;aspect-ratio:1/1}
.snapstage.in canvas{animation:snapin .5s ease-out}
@keyframes snapin{from{opacity:.25;transform:scale(1.02)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.snapstage.in canvas{animation:none}}
.snaptag{position:absolute;left:10px;top:40px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:999px;background:#ffbe5a;color:#1a1000;font-weight:700}
.snaptag.sky{background:#5fd6c8}
.snaptag:empty{display:none}
.snapnav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:rgba(6,10,30,.65);color:#fff;font-size:1.6rem;line-height:1;display:grid;place-items:center}
.snapnav.prev{left:8px}.snapnav.next{right:8px}
.snapcap{display:flex;flex-direction:column;gap:6px;padding:4px 6px}
.snapcap strong{font-family:var(--display);font-size:1.35rem;line-height:1.2}
.snapcap span{color:#c9d0ff}
.snapdots{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.snapdots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25)}
.snapdots i.on{background:#ffbe5a}
.snapmore{color:#ffd27a;font-weight:600}
.phshare{margin-top:10px;display:grid;gap:8px}
.phshare[hidden]{display:none}
.phshareform{display:grid;gap:8px}
.phshareform[hidden]{display:none}
.phshareform input{background:#0c122e;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:9px 12px}
.phshare .arbtn{justify-self:start}
.phsharemsg{margin:0;font-size:.86rem;color:#ffe2b0}
.phsharemsg:empty{display:none}
@media (max-width:560px){.page-home .mapstage{margin:0 -14px}}
.page-home #sky .skysum{margin:10px 0 8px}
#issmore .thread{margin:0}
.cupstage,.iss3dstage{position:relative;background:#02030a}
.cupstage canvas{width:100%;aspect-ratio:16/10;touch-action:none;cursor:grab}
.iss3dstage canvas{width:100%;aspect-ratio:16/10;touch-action:none;cursor:grab}
.cupstage canvas:active,.iss3dstage canvas:active{cursor:grabbing}
.cupbtns{position:absolute;top:10px;inset-inline-end:10px;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.cupbtns .arbtn{padding:8px 14px;font-size:.85rem}
.cuphud{position:absolute;left:0;right:0;bottom:0;margin:0;padding:18px 14px 10px;font-size:.88rem;color:#eceaff;background:linear-gradient(transparent,#02030acc);pointer-events:none;font-variant-numeric:tabular-nums}
.cuphud:empty{display:none}
.iss3dgrid{display:grid;gap:14px}
.issfacts{padding:14px 16px}
.page-iss main>section{margin-bottom:34px}
@media (max-width:720px){.cupbtns{top:8px;inset-inline-end:8px}.cuphud{font-size:.8rem}}

.skywhere{margin:0 0 10px;font-size:1rem;font-weight:600;color:var(--dim);letter-spacing:.01em;display:flex;align-items:center;gap:7px}
.skywhere::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--ion);box-shadow:0 0 0 4px #5fd6c82e;flex:none}
.iss3dstage{background:#02030a center/cover no-repeat}
.iss3dstage canvas{aspect-ratio:16/10;cursor:default}
.iss3dstage.ready canvas{cursor:grab}
.m3labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.m3lab{position:absolute;left:0;top:0;visibility:hidden;pointer-events:auto;margin:0;padding:4px 9px 4px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:#060a1ecc;color:#eceaff;font-family:inherit;font-weight:500;font-size:.74rem;line-height:1.2;white-space:nowrap;cursor:pointer;translate:-50% calc(-100% - 7px);backdrop-filter:blur(4px)}
.m3lab::after{content:"";position:absolute;left:50%;bottom:-8px;width:1px;height:7px;background:rgba(255,255,255,.5)}
.m3lab:hover,.m3lab.on{border-color:var(--sun);color:#fff;background:#1a1440e6}
.m3cover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:radial-gradient(ellipse at center,#02030a33 0,#02030aa6 75%)}
.m3load{border:0;border-radius:999px;padding:14px 26px;font-family:inherit;font-weight:600;font-size:1rem;line-height:1.2;color:#1a1300;background:var(--sun);box-shadow:0 6px 24px #0008;cursor:pointer}
.m3load:disabled{opacity:.9;cursor:progress}
.m3prog{width:min(260px,60%);height:5px;border-radius:9px;background:#ffffff26;overflow:hidden}
.m3prog i{display:block;height:100%;width:0;background:var(--sun);transition:width .2s}
.m3tools{position:absolute;top:10px;inset-inline-end:10px;display:flex;gap:8px}
.m3tools .arbtn{padding:7px 13px;font-size:.82rem}
.m3tools .arbtn[aria-pressed="false"]{opacity:.6}
.m3info{position:absolute;left:12px;bottom:12px;max-width:min(360px,calc(100% - 24px));padding:12px 34px 12px 14px;border-radius:12px;background:#060a1ee6;color:#eceaff;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px)}
.m3info h3{margin:0 0 4px;font-size:1rem;color:#fff}
.m3info p{margin:0;font-size:.88rem;line-height:1.45;color:#cfd3f2}
.m3x{position:absolute;top:6px;inset-inline-end:6px;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#cfd3f2;font-size:1.2rem;line-height:1;cursor:pointer}
.issfacts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px 18px}
.issfacts div{display:flex;flex-direction:column;gap:2px}
.issfacts dt{font-size:.8rem}
.issfacts dd{font-weight:600}
@media (max-width:720px){.iss3dstage canvas{aspect-ratio:4/5}.m3lab{font-size:.68rem;padding:3px 7px}.m3tools{top:8px;inset-inline-end:8px}.issfacts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.m3cover[hidden],.m3tools[hidden],.m3info[hidden],.m3prog[hidden]{display:none}
/* ---- events */
.page-events main>#evRoot>section>section,.page-events #evView,.page-events #evOrgView,.page-events #evPanel{margin-bottom:34px}
.evfilt{margin:4px 0 14px;flex-wrap:wrap}
.evlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.evcard{display:flex;gap:14px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);text-decoration:none;transition:border-color .15s,transform .15s}
.evcard:hover{border-color:var(--sun);transform:translateY(-1px)}
.evthumb{flex:none;width:88px;height:88px;border-radius:10px;object-fit:cover;background:#0c1030}
.evnoimg{display:flex;align-items:center;justify-content:center;color:#f2a93b;font-size:1.8rem}
.evtxt{display:flex;flex-direction:column;gap:3px;min-width:0}
.evtxt strong{font-size:1.05rem;line-height:1.3}
.evwhen{font-size:.86rem;color:var(--sun);font-weight:600;margin:0}
.evwhen em{font-style:normal;color:var(--ion);margin-inline-start:4px}
.evwhere,.evorg{font-size:.88rem;color:var(--dim)}
.evok{color:var(--ion);font-weight:700;font-size:.85em}
.evpast .evcard{opacity:.72}
.evempty{padding:18px;border:1px dashed var(--line);border-radius:14px}
.evempty p{margin:0 0 6px}
.evsky{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.evsky li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.evsky .rel{color:var(--dim);font-size:.85rem}
.evsky .sub2{flex-basis:100%;color:var(--ink)}
.evsky-n{font-size:.82rem;font-weight:600;color:#fff;background:var(--ion);border-radius:999px;padding:2px 10px}
.evaddrow{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.evform{display:flex;flex-direction:column;gap:12px;margin-top:14px;max-width:760px}
.evform h2,.evform h3{margin:10px 0 0}
.evf{display:flex;flex-direction:column;gap:5px;font-size:.92rem;flex:1;min-width:0}
.evf>span{font-weight:600;color:var(--ink)}
.evf small{color:var(--dim)}
.evf input,.evf select,.evf textarea,.evform textarea,.evsheet textarea,#lvTxt{font:inherit;font-size:1rem;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);width:100%;box-sizing:border-box}
.evf textarea,#lvTxt{resize:vertical}
.evrow{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.evrow>.evf{min-width:160px}
.evpin{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.evhp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.evcheck{display:flex;gap:10px;align-items:flex-start;font-size:.92rem}
.evcheck input{margin-top:3px;width:18px;height:18px;flex:none}
.evdone{margin-top:14px}
.evback{margin:0 0 12px}
.evback a{color:var(--dim)}
.evv{max-width:820px}
.evposter{width:100%;max-height:560px;object-fit:contain;border-radius:14px;background:#0c1030;margin-bottom:14px}
.evh1{font-family:var(--display);font-size:clamp(1.7rem,4.5vw,2.6rem);line-height:1.12;margin:6px 0 8px}
.evby,.evplace{margin:4px 0;color:var(--dim)}
.evacts{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.evacts .btn{margin:0}
.evabout{margin:14px 0;line-height:1.6}
.evhere{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:16px 0}
.evhere p{margin:0}
.evnotes{margin:16px 0}
.evnotes h2,.evch h3,.evsec h2{font-size:1.15rem;margin:0 0 10px}
.evnotes ul,.evnotes-own{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.evnote{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;background:var(--panel2)}
.evnote.k-safety{background:#fff3df}
.evnote.k-urgent{background:#fde3df;border:1px solid var(--danger)}
.evnote.k-challenge{background:#dff5f2}
.evnico{font-size:1.2rem;line-height:1.3}
.evnote time{color:var(--dim);font-size:.85rem}
.evch{margin:16px 0}
.evchjoin{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.evchjoin .evf{max-width:200px}
.evchjoin #evChCode{font-size:1.4rem;letter-spacing:.3em;text-align:center}
.evsec{margin:26px 0}
.evprog{border-collapse:collapse;width:100%}
.evprog th{text-align:left;vertical-align:top;padding:8px 14px 8px 0;white-space:nowrap;color:var(--sun);font-variant-numeric:tabular-nums}
.evprog td{padding:8px 0;border-bottom:1px solid var(--line)}
.evvenue{max-width:100%;border-radius:12px;border:1px solid var(--line)}
.evsafe{padding:16px;border-radius:14px;background:#fff7ea;border:1px solid #f1d9ae}
.evsafe p{margin:0 0 8px}
.evsafe a{font-weight:700;color:var(--danger)}
.evsos{position:fixed;inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;border:0;border-radius:999px;padding:14px 22px;background:var(--danger);color:#fff;font:inherit;font-weight:700;box-shadow:0 8px 24px rgba(200,65,47,.45)}
.evsheet{position:fixed;inset:0;z-index:70;background:rgba(8,10,30,.6);display:flex;align-items:flex-end;justify-content:center}
.evsheet[hidden]{display:none}
.evsheet-in{background:var(--panel);color:var(--ink);width:min(560px,100%);border-radius:18px 18px 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom,0px));max-height:92vh;overflow:auto}
.evsheet-in h2{margin:0 0 14px;color:var(--danger)}
.evsheet-in h3{margin:12px 0 8px;font-size:1.05rem}
.evcall{display:block;text-align:center;padding:16px;border-radius:14px;background:var(--danger);color:#fff;font-weight:700;font-size:1.2rem;text-decoration:none}
.evsheet-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.evsos-send{background:var(--danger);color:#fff}
.evscreen{position:fixed;inset:0;z-index:80;background:radial-gradient(ellipse at 20% 20%,#1e2660,#0c1030 65%);color:#f4f2fb;display:grid;grid-template-columns:1.1fr 1fr;gap:4vw;padding:5vh 5vw;overflow:auto}
.evscreen-on{overflow:hidden}
.evscr-x{position:absolute;top:14px;right:18px;border:0;background:transparent;color:#bfc4e6;font-size:2rem;cursor:pointer}
.evscr-org{color:#f2a93b;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:0}
.evscreen h1{font-family:var(--display);font-size:clamp(2rem,4.2vw,4.4rem);line-height:1.05;margin:.3em 0}
.evscr-clock{font-size:clamp(1.6rem,3vw,3rem);font-variant-numeric:tabular-nums;color:#bfc4e6;margin:0 0 3vh}
.evscr-note .evnote{background:#ffffff14;color:#f4f2fb;font-size:clamp(1rem,1.6vw,1.5rem)}
.evscr-note .evnote time{color:#bfc4e6}
.evscr-code-l{margin:4vh 0 0;color:#bfc4e6;font-size:clamp(1rem,1.4vw,1.4rem)}
.evscr-code{font-family:var(--display);font-size:clamp(3rem,9vw,8rem);letter-spacing:.12em;line-height:1;margin:.1em 0;color:#f2a93b;font-variant-numeric:tabular-nums}
#lvCh .evscr-code{color:var(--sun);font-size:3.4rem}
.evscr-qr{width:min(24vh,220px);background:#fff;border-radius:10px;padding:8px}
.evscr-qr svg{display:block;width:100%;height:auto}
.evscr-url{color:#bfc4e6;font-size:.95rem}
.evscr-r h2{font-size:clamp(1.3rem,2.2vw,2.2rem);margin:0 0 2vh}
.evscr-board{list-style:none;margin:0;padding:0;display:grid;gap:1vh;font-size:clamp(1.1rem,2vw,2rem)}
.evscr-board .lbrow{display:flex;gap:16px;align-items:center;padding:.4em .7em;border-radius:12px;background:#ffffff12}
.evscr-board .lbnum{width:1.6em;color:#f2a93b;font-weight:700}
.evscr-board .lbwho{flex:1}
.evscr-board .lbscore{font-variant-numeric:tabular-nums;font-weight:700}
.evscr-here{color:#bfc4e6;margin-top:2vh}
.evphead{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.evst{font-size:.8rem;font-weight:600;border-radius:999px;padding:3px 10px;background:var(--panel2);color:var(--dim)}
.evst.st-ok,.evst.st-trusted{background:#dff5f2;color:var(--ion)}
.evst.st-pending,.evst.st-new{background:#fff0d6;color:var(--sun)}
.evst.st-rejected,.evst.st-blocked{background:#fde3df;color:var(--danger)}
.evptabs{margin:14px 0}
.evbadge{background:var(--danger);color:#fff;border-radius:999px;padding:0 7px;font-size:.8rem}
.evalertbar{background:var(--danger);color:#fff;border-radius:12px;padding:12px 16px;margin:10px 0;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-weight:600}
.evalertbar .btn{background:#fff;color:var(--danger);margin:0}
.evplist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.evplist li{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.evplist li p{margin:4px 0 0}
.evpbtns{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.evpbtns .btn{margin:0}
.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--dim);text-decoration:underline;cursor:pointer}
.linkbtn.warn{color:var(--danger)}
.evprow{display:grid;grid-template-columns:90px 1fr 1fr auto;gap:8px;margin-bottom:8px}
.evprow input{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:8px;min-width:0}
.evimgs{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.evimgbox{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px dashed var(--line);border-radius:12px}
.evimgbox>span{font-weight:600}
.evimgbox img{max-width:100%;max-height:220px;object-fit:contain;border-radius:8px;background:#0c1030}
.evpick{display:flex;flex-wrap:wrap;gap:8px}
.evpick label{display:flex;gap:6px;align-items:center;padding:6px 10px;border:1px solid var(--line);border-radius:999px;font-size:.9rem;background:var(--panel)}
.evpick small{color:var(--dim)}
.evalerts{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.evalerts li{padding:10px 12px;border-radius:10px;background:var(--panel2)}
.evalerts li.open{background:#fde3df;border:1px solid var(--danger)}
.evalerts .btn{margin:6px 0 0}
.evpout{margin-top:24px}
.gevent{margin:0 0 14px;text-align:left}
.gevent h2{margin:4px 0;font-size:1.3rem}
.gevrank{margin-top:10px}
@media (max-width:720px){.evlist{grid-template-columns:1fr}.evthumb{width:72px;height:72px}.evscreen{grid-template-columns:1fr}.evimgs{grid-template-columns:1fr}.evprow{grid-template-columns:70px 1fr auto}.evprow .pw{grid-column:2}}
.evchjoin{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:end}
.evchjoin .evf{max-width:none}
.evchjoin .btn{grid-column:1/-1;justify-self:start;margin:0}
.evprog th{width:1%}
.page-events a.btn{text-decoration:none;display:inline-block}
.evscr-code{font-size:min(9vw,15vh)}
.evscr-qr{width:min(20vh,200px)}
.evscr-code-l{margin-top:3vh}
.evform .evrow{align-items:flex-start}
