/* Hallmark · macrostructure: Marquee Hero · tone: cinematic arcade · anchor hue: ember
 * Custom LumHub: existing fonts and shell, genuine LUM360 emblem, original ship illustration.
 * Pre-emit critique: P4 H4 E4 S5 R4 V4. */
.star-lum{--sl-night:oklch(13% .024 248);--sl-line:oklch(40% .03 235);--sl-light:oklch(96% .012 215);--sl-dim:oklch(78% .025 225);--sl-copper:oklch(83% .13 188);--sl-gold:oklch(83% .1 82);--sl-glass:oklch(30% .05 222);--sl-fire:oklch(86% .12 190);--sl-shadow:oklch(6% .02 250 / .55);padding-block:32px 64px}
.sl-poster{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--sl-night);color:var(--sl-light);border-radius:20px;overflow:hidden;min-height:460px}.sl-intro{padding:48px;position:relative;z-index:1}.sl-intro h1{font-size:clamp(4rem,8vw,7rem);font-weight:700;letter-spacing:-.065em;line-height:1.02}.sl-intro h1 span{display:block;color:var(--sl-gold);letter-spacing:.1em;margin-top:12px}.sl-tagline{font-family:var(--font-display);font-size:clamp(1.15rem,2.2vw,1.65rem);line-height:1.25;margin-top:28px;max-width:24ch;letter-spacing:-.035em}.sl-story{color:var(--sl-dim);font-size:.925rem;margin-top:20px;max-width:44ch;line-height:1.65}.sl-jump{display:inline-flex;align-items:center;min-height:44px;color:var(--sl-gold);font-size:.875rem;margin-top:20px;white-space:nowrap}.sl-art{position:relative;min-width:0;display:grid;place-items:center;isolation:isolate;overflow:hidden}.sl-core{width:min(45%,210px);height:auto;opacity:.18;position:absolute;left:18%;top:16%;transform:rotate(-25deg)}.sl-orbit{position:absolute;width:76%;aspect-ratio:1;border:1px solid var(--sl-line);border-radius:50%;transform:rotateX(52deg) rotateZ(-24deg)}.sl-orbit-two{width:110%;transform:rotateX(20deg) rotateZ(-24deg);opacity:.5}.sl-ship{position:relative;width:75%;max-width:360px;transform:rotate(-22deg);filter:drop-shadow(18px 24px 10px var(--sl-shadow));stroke:none}.sl-ship-hull{fill:var(--sl-light)}.sl-ship-accent{fill:var(--sl-copper)}.sl-ship-glass{fill:var(--sl-glass)}.sl-ship-fire{fill:none;stroke:var(--sl-fire);stroke-width:5;stroke-linecap:round}.sl-call-sign{position:absolute;bottom:36px;right:32px;color:var(--sl-dim);font:500 .75rem var(--font-display);letter-spacing:.15em;white-space:nowrap}
.sl-launch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;margin-top:40px;scroll-margin-top:24px}.sl-launch h2,.sl-controls h2,.sl-squad h2,.sl-notes h2{font-size:clamp(1.35rem,2.5vw,1.8rem);margin-bottom:20px}.sl-brief{padding-block:8px}.sl-brief>strong{font-family:var(--font-display);font-size:1.1rem;color:var(--color-accent);display:block;margin-bottom:12px}.sl-brief>p{color:var(--color-muted);max-width:42ch}.sl-brief .sl-fine{margin-top:20px}.sl-launch form{border:1px solid var(--color-rule);border-radius:14px;padding:28px;background:var(--color-surface);min-width:0}.sl-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sl-options label{font-size:.875rem;font-weight:600;display:block;margin-bottom:8px}.sl-options select{width:100%;min-width:0;min-height:46px;padding:10px 12px;background:var(--color-paper);color:var(--color-ink);border:1px solid var(--color-rule-strong);border-radius:6px}.sl-options select:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.sl-checks{display:flex;align-items:center;gap:8px 20px;flex-wrap:wrap;margin-block:16px 12px}.sl-checks label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.875rem;cursor:pointer}.sl-checks input{width:18px;height:18px;accent-color:var(--color-accent);flex:none}.sl-fine{font-size:.8rem;color:var(--color-muted);line-height:1.65}.sl-launch .button{margin-block:20px 12px;width:100%;font-weight:600}.sl-status{min-height:1.6em;margin-top:20px;color:var(--color-muted);font-size:.875rem}.sl-error{border:1px solid var(--color-error);color:var(--color-error);padding:12px 16px;border-radius:8px;margin-top:12px}
.sl-controls,.sl-squad{margin-top:40px;border-top:1px solid var(--color-rule);padding-top:28px}.sl-controls dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 40px}.sl-controls dl>div{min-width:0}.sl-controls dt{font-weight:600;font-size:.925rem}.sl-controls dd{margin:5px 0 0;color:var(--color-muted);font-size:.875rem}.sl-squad dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0}.sl-squad dt{font-family:var(--font-display);font-size:1.3rem;font-weight:600;letter-spacing:-.035em}.sl-squad dd{margin:8px 0 0;color:var(--color-muted);font-size:.875rem}.sl-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:40px;border-top:1px solid var(--color-rule);padding-top:28px}.sl-notes p{font-size:.875rem;color:var(--color-muted);line-height:1.65}.sl-notes .button,.sl-notes p+p{margin-top:16px}.sl-notes .button{font-size:.8rem;padding-inline:14px}
.sl-game-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;padding:0;margin:0;border:0;background:var(--sl-night);color:var(--sl-light);overflow:hidden}.sl-game-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}.sl-game-dialog::backdrop{background:var(--sl-night)}.sl-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px 10px;padding:6px 12px;border-bottom:1px solid var(--sl-line);background:var(--sl-night);font-family:var(--font-body)}.sl-toolbar strong{margin-right:auto;font-family:var(--font-display);font-size:1rem;letter-spacing:-.04em;white-space:nowrap}.sl-toolbar button{min-height:40px;padding:8px 12px;border:1px solid var(--sl-line);border-radius:6px;background:var(--sl-night);color:var(--sl-light);font-size:.8rem;white-space:nowrap}.sl-toolbar button:focus-visible{outline:3px solid var(--sl-gold);outline-offset:2px}.sl-toolbar button:active{transform:translateY(1px)}.sl-frame-slot{min-width:0;min-height:0}.sl-frame-slot iframe{display:block;width:100%;height:100%;border:0;background:var(--sl-night)}.sl-game-status{position:absolute;left:16px;right:16px;bottom:16px;padding:12px 16px;border:1px solid var(--sl-line);border-radius:6px;background:var(--sl-night);color:var(--sl-gold);font-size:.85rem;text-align:center;margin:0;max-width:none}.sl-confirm{width:min(460px,calc(100% - 32px));padding:28px;border:1px solid var(--color-rule);border-radius:14px;background:var(--color-surface);color:var(--color-ink)}.sl-confirm::backdrop{background:var(--sl-shadow)}.sl-confirm h2{font-size:1.65rem}.sl-confirm p{color:var(--color-muted);margin-top:16px}.sl-confirm>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:24px}html.star-lum-playing{overflow-y:hidden}
@media(hover:hover){.sl-toolbar button:hover{border-color:var(--sl-gold)}.star-lum .button:hover{filter:brightness(.96)}}
@media(max-width:900px){.sl-intro{padding:32px}.sl-poster{min-height:400px}.sl-launch{gap:28px}.sl-launch form{padding:22px}.sl-call-sign{right:24px;bottom:28px;font-size:.65rem}.sl-squad dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.star-lum{padding-top:24px}.sl-poster{grid-template-columns:minmax(0,1fr);position:relative;min-height:0}.sl-intro{padding:28px;z-index:1}.sl-intro h1{font-size:4.5rem;max-width:4ch}.sl-tagline{max-width:19ch;margin-top:24px;font-size:1.25rem}.sl-story{max-width:40ch;font-size:.875rem}.sl-art{position:absolute;right:-6%;top:0;width:58%;height:215px;z-index:0;opacity:.6}.sl-art .sl-core{display:none}.sl-art .sl-call-sign{display:none}.sl-ship{width:80%}.sl-launch{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:28px}.sl-launch h2{margin-bottom:16px}.sl-launch form{padding:20px}.sl-options{gap:12px}.sl-options label{font-size:.8rem}.sl-options select{font-size:.875rem;padding:10px 6px}.sl-checks{gap:4px 16px}.sl-controls,.sl-squad{margin-top:28px;padding-top:24px}.sl-controls dl{grid-template-columns:minmax(0,1fr);gap:16px}.sl-notes{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:28px}.sl-toolbar{padding:2px 6px;gap:2px}.sl-toolbar strong{font-size:.75rem;margin-left:4px}.sl-toolbar button{padding:6px 8px;font-size:.7rem;min-height:40px;border-color:transparent;background:transparent}.sl-game-status{font-size:.75rem;bottom:8px;left:8px;right:8px}.sl-squad dl{gap:20px}}
@media(prefers-reduced-motion:reduce){.sl-ship{transform:none}}
.sl-game-dialog{box-sizing:border-box;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
@media(pointer:coarse){.sl-toolbar button{min-height:44px}}
