:root{color-scheme:light;--ink: #162033;--muted: #63708a;--soft: rgba(22, 32, 51, .72);--line: rgba(42, 62, 96, .15);--glass: rgba(255, 255, 255, .78);--paper: #f8fbff;--radius: 16px;--shadow: 0 28px 90px rgba(56, 76, 116, .18);font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% 10%,rgba(165,180,252,.32),transparent 28rem),radial-gradient(circle at 12% 24%,rgba(125,211,252,.3),transparent 24rem),linear-gradient(180deg,#f8fbff,#eef6ff 54%,#fff8ef);color:var(--ink)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}.eyebrow,.world-card span,.back-link{font-family:IBM Plex Mono,monospace;font-size:.76rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.universe-page{min-height:100vh;padding:clamp(18px,3.4vw,44px) 24px 24px}.universe-stage{display:grid;width:min(1180px,100%);min-height:calc(100svh - clamp(60px,7vw,88px));margin:0 auto;grid-template-rows:auto minmax(420px,1fr);gap:14px}.universe-intro{display:grid;justify-items:center;text-align:center}.eyebrow{margin:0 0 8px;color:#7c3aed}h1,h2,h3{margin:0;font-family:Space Grotesk,system-ui,sans-serif;letter-spacing:0}.universe-intro h1{max-width:740px;font-size:clamp(2.45rem,5vw,4.8rem);line-height:.94}.universe-intro p:not(.eyebrow),.world-hero>p:not(.eyebrow),.world-card p{color:var(--soft);font-size:1.04rem;line-height:1.66}.universe-intro p:not(.eyebrow){margin:10px 0 0}.galaxy-card{position:relative;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,#ffffffe0,#f1f7ffc7),#f8fbff;box-shadow:var(--shadow)}.galaxy-card:before{content:"";position:absolute;top:9%;right:9%;bottom:9%;left:9%;pointer-events:none;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.4),transparent 68%);filter:blur(8px)}.galaxy-card canvas{cursor:grab}.galaxy-card canvas:active{cursor:grabbing}.planet-label{display:inline-flex;cursor:pointer;align-items:center;gap:7px;border:1px solid rgba(22,32,51,.13);border-radius:999px;background:#ffffffbd;color:var(--ink);padding:7px 10px;font-family:IBM Plex Mono,monospace;font-size:.7rem;font-weight:600;white-space:nowrap;opacity:.74;box-shadow:0 10px 28px #384c7421;transition:transform .18s ease,background .18s ease,opacity .18s ease}.planet-label[data-active=true],.planet-label:hover,.planet-label:focus-visible{background:#fff;opacity:1;transform:translateY(-2px)}.detail-page{min-height:100vh;padding:clamp(28px,5vw,64px) 24px 48px}.world-detail{width:min(1040px,100%);margin:0 auto}.back-link{display:inline-flex;margin-bottom:28px;color:var(--muted);text-decoration:none}.back-link:hover,.back-link:focus-visible{color:var(--ink)}.world-hero{border:1px solid var(--line);border-radius:28px;background:var(--glass);padding:clamp(26px,6vw,64px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.world-icon{display:grid;width:76px;height:76px;place-items:center;margin-bottom:24px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff,var(--accent) 38%,rgba(255,255,255,.4) 86%);color:#07152c;box-shadow:0 0 54px color-mix(in srgb,var(--accent),transparent 48%)}.world-hero h1{max-width:880px;font-size:clamp(3rem,7vw,6.6rem);line-height:.9}.world-hero>p:not(.eyebrow){max-width:760px;margin:24px 0 0;font-size:1.14rem}.world-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.world-card{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffc2;padding:22px;box-shadow:0 18px 52px #384c741f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.world-card span{display:inline-block;margin-bottom:18px;color:var(--accent)}.world-card h2{font-size:1.45rem;line-height:1.05}.world-card p{margin:12px 0 0}@media (max-width: 980px){.world-detail-grid{grid-template-columns:1fr}}@media (max-width: 640px){.universe-page,.detail-page{padding-inline:12px}.universe-stage{min-height:calc(100svh - 44px);grid-template-rows:auto minmax(390px,1fr);gap:12px}.universe-intro h1,.world-hero h1{font-size:clamp(2.35rem,11vw,3.4rem)}}
