/* Finn's Stargazer. A night page, so the whole thing is dark. */
.sk{background:#060b1c;color:#e8eefc;--gold:#f3b73f;--panel:#0e1630;--line:rgba(255,255,255,.1);--mute:#9fb0d4}
.sk h1,.sk h2,.sk h3,.sk h4{font-family:Lora,Georgia,serif;color:#fff;letter-spacing:-.01em}
.sk a{color:#ffd77a}
.sk .eyebrow{font:700 .72rem/1 Poppins,"Segoe UI",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#ffd77a;margin:0 0 10px}
.sk .eyebrow a{color:inherit}
.sk-hero{position:relative;overflow:hidden;padding:64px 0 34px;background:radial-gradient(120% 140% at 70% 120%,#2b2f6b 0%,#101a45 38%,#060b1c 75%)}
.sk-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(1.4px 1.4px at 8% 22%,#fff,transparent),radial-gradient(1px 1px at 17% 64%,#cfe0ff,transparent),radial-gradient(1.6px 1.6px at 29% 36%,#fff,transparent),radial-gradient(1px 1px at 41% 80%,#fff,transparent),radial-gradient(1.3px 1.3px at 52% 18%,#ffe9b0,transparent),radial-gradient(1px 1px at 63% 52%,#fff,transparent),radial-gradient(1.7px 1.7px at 74% 28%,#fff,transparent),radial-gradient(1px 1px at 83% 70%,#cfe0ff,transparent),radial-gradient(1.4px 1.4px at 91% 40%,#fff,transparent),radial-gradient(1px 1px at 96% 14%,#fff,transparent),radial-gradient(1px 1px at 35% 12%,#fff,transparent),radial-gradient(1.2px 1.2px at 58% 88%,#fff,transparent);opacity:.9}
.sk-hero .wrap{position:relative}
.sk-hero h1{font-size:clamp(2.6rem,7vw,4.6rem);line-height:1.02;margin:0 0 12px}
.sk-hero p.lead{font-size:1.2rem;max-width:40rem;margin:0;color:#dbe5ff}
.sk .wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 24px;box-sizing:border-box}
.sk .sk-hero h1,.sk h1{color:#fff!important}
.sk .eyebrow,.sk .eyebrow a{color:#ffd77a!important}
.sk .eyebrow a{text-decoration:none}
.sk p{color:inherit}
.sk-grid{display:grid;gap:22px;grid-template-columns:minmax(0,1fr);padding:22px 0 10px}
@media(min-width:1000px){.sk-grid{grid-template-columns:minmax(0,1fr) 370px;align-items:start}}
.sk-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:18px}
.skwrap{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#04060d;box-shadow:0 18px 50px rgba(0,0,0,.45)}
#sk{display:block;width:100%;touch-action:pan-y;cursor:grab}
.skwrap .when{position:absolute;left:14px;top:12px;z-index:2;font:700 .9rem/1 Poppins,"Segoe UI",sans-serif;background:rgba(6,11,28,.72);border:1px solid var(--line);border-radius:999px;padding:9px 14px;color:#fff;pointer-events:none}
.skwrap .zoom{position:absolute;right:12px;top:10px;z-index:2;display:flex;gap:6px}
.skwrap .zoom button{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:rgba(6,11,28,.72);color:#fff;font:700 1.2rem/1 Poppins,sans-serif;cursor:pointer}
.sk-bar{margin-top:14px;display:grid;gap:12px}
.sk-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.sk-row>b{font:700 .72rem/1 Poppins,"Segoe UI",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-right:4px}
.sk button.ch{font:600 .92rem/1 Poppins,"Segoe UI",sans-serif;padding:11px 16px;border-radius:999px;border:1.5px solid rgba(255,255,255,.22);background:transparent;color:#e8eefc;cursor:pointer}
.sk button.ch:hover{border-color:#ffd77a}
.sk button.ch.on,.sk button.ch[aria-pressed="true"]{background:#ffd77a;border-color:#ffd77a;color:#2a1a00}
.sk button.go{font:700 .95rem/1 Poppins,"Segoe UI",sans-serif;padding:13px 20px;border-radius:999px;border:0;background:var(--gold);color:#2a1a00;cursor:pointer}
.sk-time{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.sk-time output{font:700 1.15rem/1 Poppins,sans-serif;min-width:5.6em;color:#fff}
.sk input[type=range]{width:100%;accent-color:#ffd77a;height:32px}
.sk-scale{display:flex;justify-content:space-between;font-size:.78rem;color:var(--mute);margin-top:-6px;padding:0 4px}
.sk-hint{font-size:.95rem;color:var(--mute);margin:2px 0 0}
.sk-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px}
.sk-facts div{background:rgba(255,255,255,.05);border-radius:12px;padding:10px 12px}
.sk-facts b{display:block;font:700 .68rem/1 Poppins,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:5px}
.sk-facts span{font-weight:600;color:#fff}
.sk-facts div:nth-child(4){grid-column:1/-1}
.sk-note{margin:12px 0 0;font-size:.98rem;color:#dbe5ff}
.sk h3.sec{font-size:1.4rem;margin:26px 0 10px}
.sk-picks{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.pk{display:flex;gap:12px;align-items:center;text-align:left;padding:8px 14px 8px 8px;border-radius:16px;border:1.5px solid var(--line);background:var(--panel);color:#fff;cursor:pointer}
.pk:hover,.pk.on{border-color:#ffd77a}
.pk img{width:72px;height:54px;border-radius:10px;object-fit:cover;background:#0b1230}
.pk b{display:block;font:700 1rem/1.15 Poppins,sans-serif}
.pk small{color:var(--mute);font-size:.82rem}
.sk-planets{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.pl{display:grid;grid-template-columns:22px 1fr;gap:2px 12px;align-items:center;text-align:left;padding:12px 14px;border-radius:16px;border:1.5px solid var(--line);background:var(--panel);color:#fff;cursor:pointer}
.pl:hover{border-color:#ffd77a}
.pl i{grid-row:1/3;width:18px;height:18px;border-radius:50%;box-shadow:0 0 12px currentColor}
.pl b{font:700 1rem/1 Poppins,sans-serif}.pl span{color:var(--mute);font-size:.88rem;line-height:1.3}
.nopl{color:var(--mute);margin:0}
/* calendar */
.cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.cal-h b{font:700 1.05rem/1 Poppins,sans-serif;color:#fff}
.cal-h button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;color:#fff;font-size:1.1rem;cursor:pointer}
.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-g .dw{font:700 .7rem/1 Poppins,sans-serif;text-align:center;color:var(--mute);padding:4px 0}
.cal-g .dy{display:flex;flex-direction:column;align-items:center;gap:1px;padding:5px 0 4px;border-radius:10px;border:1.5px solid transparent;background:rgba(255,255,255,.04);color:#e8eefc;cursor:pointer;font:600 .8rem/1 Poppins,sans-serif;min-height:48px}
.cal-g .dy:hover{border-color:rgba(255,215,122,.6)}
.cal-g .dy.today span{color:#ffd77a}
.cal-g .dy.on{background:#ffd77a;color:#2a1a00;border-color:#ffd77a}
.cal-g .dy.on svg circle{stroke:#2a1a00}
.cal-g .dy.dark{box-shadow:inset 0 0 0 1px rgba(120,160,255,.45)}
.cal-leg{font-size:.82rem;color:var(--mute);margin:10px 0 0}
.cal-b{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
/* the painted card */
.sk-pc{margin-top:18px;padding:0;overflow:hidden}
.sk-pc .cimg img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.sk-pc .cbody{padding:16px 18px 20px}
.sk-pc .cs{font:700 .72rem/1.3 Poppins,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#ffd77a;margin:0 0 6px}
.sk-pc h3{font-size:1.9rem;margin:0}
.sk-pc .cn{font-style:italic;color:#c9d6f5;margin:2px 0 10px}
.sk-pc .up{background:rgba(243,183,63,.14);border:1px solid rgba(243,183,63,.4);border-radius:12px;padding:10px 12px;margin:0 0 12px;font-weight:600}
.sk-pc h4{font:700 .8rem/1 Poppins,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin:14px 0 4px}
.sk-pc p{margin:0;font-size:1.05rem;line-height:1.55}
.sk-pc p.up{margin-bottom:12px}
.sk-empty{color:var(--mute);text-align:center;padding:26px 16px}
.sk .credit{font-size:.88rem;color:var(--mute);margin:22px 0 40px;max-width:60rem}
.sk .links{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0 40px}
.sk .links a{display:inline-block;padding:12px 18px;border-radius:999px;border:1.5px solid rgba(255,215,122,.5);text-decoration:none;font-weight:600}
/* red flashlight mode */
.sk.red{filter:grayscale(1) sepia(1) hue-rotate(-52deg) saturate(7) brightness(.82)}
@media(prefers-reduced-motion:reduce){.sk *{scroll-behavior:auto!important}}

/* full-screen sky at the top, everything else below it */
.sk-full{position:relative;background:#04060d}
.sk-full .skwrap{border-radius:0;border:0;box-shadow:none}
.sk-full .skwrap .when{left:18px;top:16px;font-size:1rem;padding:11px 16px}
.sk-full .skwrap .zoom{right:18px;top:14px}
.sk-full .cue{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:3;font:700 .95rem/1 Poppins,"Segoe UI",sans-serif;color:#fff!important;background:rgba(6,11,28,.78);border:1.5px solid rgba(255,215,122,.7);border-radius:999px;padding:13px 22px;text-decoration:none;white-space:nowrap;animation:skbob 2.4s ease-in-out infinite}
.sk-full .drag{position:absolute;left:18px;bottom:26px;z-index:2;margin:0;font:600 .85rem/1 Poppins,sans-serif;color:rgba(255,255,255,.75);pointer-events:none}
@keyframes skbob{50%{transform:translateX(-50%) translateY(-5px)}}
@media(prefers-reduced-motion:reduce){.sk-full .cue{animation:none}}
@media(max-width:620px){.sk-full .drag{display:none}.sk-full .cue{left:auto;right:12px;bottom:26px;transform:none;animation:none;font-size:.8rem;padding:11px 14px;white-space:normal;max-width:150px;text-align:center;line-height:1.25}}
.sk-hero{padding-top:40px}
.skback{position:fixed;right:18px;bottom:22px;z-index:50;font:700 .92rem/1 Poppins,"Segoe UI",sans-serif;color:#2a1a00;background:#f3b73f;border:0;border-radius:999px;padding:14px 20px;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.45)}.skback[hidden]{display:none}
