:root{--bg:#04060f;--glass:#0d1221a8;--glass-border:#ffffff17;--text:#e8edf8;--muted:#939cb5;--faint:#5d667f;--accent:#6ea8ff;--live:#3ddc84;--sim:#ffb347;--font-body:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:14px}#app,#app canvas{position:fixed;inset:0}#app canvas{cursor:grab;display:block}#app canvas:active{cursor:grabbing}.glass{background:var(--glass);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px)saturate(1.5);border-radius:16px;box-shadow:0 12px 40px #00000073}#brand{z-index:20;pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;top:20px;left:22px}#brand h1{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;background:linear-gradient(92deg,#fff 0%,#b9cdff 55%,#7d9dff 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:19px;font-weight:700}#brand .tagline{letter-spacing:.34em;text-transform:uppercase;color:var(--faint);margin-top:2px;font-size:10.5px}#clock{pointer-events:auto;border-radius:10px;align-items:center;gap:10px;margin-top:12px;padding:7px 12px;display:inline-flex}#clock .date{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px;font-weight:500}#clock .time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.badge{letter-spacing:.18em;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-size:9.5px;font-weight:600;display:inline-flex}.badge .dot{border-radius:50%;width:5px;height:5px}.badge.live{color:var(--live);background:#3ddc8414;border-color:#3ddc8459}.badge.live .dot{background:var(--live);animation:2s ease-in-out infinite pulse}.badge.sim{color:var(--sim);background:#ffb34714;border-color:#ffb34759}.badge.sim .dot{background:var(--sim)}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 #3ddc8480}50%{opacity:.6;box-shadow:0 0 0 5px #3ddc8400}}#timebar{z-index:20;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:3px;padding:6px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}#timebar button{appearance:none;color:var(--muted);font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;padding:6px 11px;font-size:11.5px;font-weight:500;transition:background .15s,color .15s}#timebar button:hover{color:var(--text);background:#ffffff12}#timebar button.active{color:#cfe0ff;background:#6ea8ff29;border-color:#6ea8ff73}#timebar .sep{background:#ffffff1a;width:1px;height:18px;margin:0 4px}#hints{z-index:15;color:var(--faint);letter-spacing:.02em;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11px;line-height:1.8;position:fixed;bottom:20px;left:22px}#hints b{color:var(--muted);font-weight:500}#credits{z-index:15;color:var(--faint);text-align:right;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:300px;font-size:10px;line-height:1.7;position:fixed;bottom:20px;right:22px}#credits a{color:var(--muted);pointer-events:auto;text-decoration:none}.body-label{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:#dfe6f5;cursor:pointer;-webkit-user-select:none;user-select:none;pointer-events:auto;white-space:nowrap;-webkit-backdrop-filter:blur(6px);background:#080c188c;border:1px solid #ffffff1f;border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:500;transition:border-color .18s,color .18s,background .18s,opacity .25s}.body-label:hover,.body-label.hot{border-color:var(--label-accent,var(--accent));color:#fff;background:#0a1020cc}.body-label.dwarf{color:var(--muted);padding:2px 7px;font-size:9px}#panel{z-index:30;flex-direction:column;width:348px;transition:transform .45s cubic-bezier(.22,1,.3,1);display:flex;position:fixed;top:18px;bottom:18px;right:18px;overflow:hidden;transform:translate(calc(100% + 30px))}#panel.open{transform:translate(0)}#panel .panel-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;padding:22px 22px 18px;overflow-y:auto}#panel .panel-scroll::-webkit-scrollbar{width:5px}#panel .panel-scroll::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:99px}#panel .close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;font-size:14px;line-height:1;transition:color .15s,background .15s;position:absolute;top:14px;right:14px}#panel .close:hover{color:#fff;background:#ffffff1f}#panel .kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:999px;align-items:center;gap:8px;padding:3px 9px;font-size:9.5px;font-weight:600;display:inline-flex}#panel h2{font-family:var(--font-display);letter-spacing:.02em;margin:12px 0 2px;font-size:30px;font-weight:700;line-height:1.05}#panel h2:after{content:"";background:linear-gradient(90deg, var(--accent), transparent);border-radius:3px;width:44px;height:3px;margin-top:10px;display:block}#panel .fun{color:#cdd7ec;border-left:2px solid var(--accent);background:#ffffff0b;border-radius:4px 10px 10px 4px;margin:16px 0 4px;padding:11px 14px;font-size:12.5px;line-height:1.6}#panel section h3{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);align-items:center;gap:7px;margin:22px 0 6px;font-size:10px;font-weight:600;display:flex}#panel section h3 .live-dot{background:var(--live);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}#panel section h3 .live-dot.paused{background:var(--sim);animation:none}.facts{margin:0}.facts .row{border-bottom:1px solid #ffffff0e;justify-content:space-between;align-items:baseline;gap:16px;padding:7.5px 0;display:flex}.facts .row:last-child{border-bottom:none}.facts dt{letter-spacing:.1em;text-transform:uppercase;color:var(--faint);flex-shrink:0;font-size:10.5px}.facts dd{text-align:right;color:var(--text);font-variant-numeric:tabular-nums;margin:0;font-size:12.5px;line-height:1.45}.facts.live-facts dd{color:color-mix(in srgb, var(--accent) 75%, #fff);font-weight:500}#loading{z-index:100;background:radial-gradient(1100px 700px at 65% 25%,#0b1228 0%,#04060f 60%);flex-direction:column;justify-content:center;align-items:center;gap:26px;transition:opacity .7s;display:flex;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}#loading .lg-title{font-family:var(--font-display);letter-spacing:.3em;text-transform:uppercase;background:linear-gradient(92deg,#fff,#8fb0ff);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:700}#loading .orbit-spinner{width:74px;height:74px;position:relative}#loading .orbit-spinner .ring{border:1px solid #ffffff24;border-radius:50%;position:absolute;inset:0}#loading .orbit-spinner .sun{background:radial-gradient(circle at 35% 35%,#ffe9b0,#ffb347 65%,#ff8e3c);border-radius:50%;width:14px;height:14px;margin:-7px;position:absolute;top:50%;left:50%;box-shadow:0 0 18px #ffb347cc}#loading .orbit-spinner .orbiter{animation:1.7s linear infinite orbit;position:absolute;inset:0}#loading .orbit-spinner .orbiter:after{content:"";background:#6ea8ff;border-radius:50%;width:7px;height:7px;margin-left:-3.5px;position:absolute;top:-3.5px;left:50%;box-shadow:0 0 10px #6ea8ffe6}@keyframes orbit{to{transform:rotate(360deg)}}#loading .bar{background:#ffffff17;border-radius:99px;width:220px;height:3px;overflow:hidden}#loading .bar .fill{background:linear-gradient(90deg,#6ea8ff,#9db7ff);border-radius:99px;width:0%;height:100%;transition:width .25s}#loading .status{letter-spacing:.22em;text-transform:uppercase;color:var(--faint);font-size:11px}@media (width<=640px){#panel{width:auto;max-height:52vh;inset:auto 10px 76px;transform:translateY(calc(100% + 90px))}#panel.open{transform:translateY(0)}#hints,#credits{display:none}#brand h1{font-size:15px}#timebar{max-width:calc(100vw - 16px);bottom:10px;overflow-x:auto}}
