.obs-page{max-width:1320px;padding:3.5rem 2rem 5rem}.obs-eyebrow{font-family:var(--font-mono);color:var(--text-faint);margin:0;font-size:.8125rem}.obs-title{letter-spacing:-.035em;color:var(--text-strong);margin:.5rem 0 0;font-size:clamp(2rem,4.5vw,3.25rem);font-weight:600;line-height:1.05}.obs-sub{max-width:60ch;color:var(--text-secondary);margin:.875rem 0 0;font-size:1.0625rem;line-height:1.6}.obs-layout{grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);align-items:start;gap:2.5rem;margin-top:2.5rem;display:grid}.obs-system{aspect-ratio:1;width:100%;height:auto;display:block;overflow:visible}.obs-orbit{fill:none;stroke:var(--border-glass);stroke-width:1px;vector-effect:non-scaling-stroke;transition:stroke var(--transition-base)}.obs-orbit.is-selected{stroke:var(--border-glass-strong)}.obs-link{stroke:#8fb4ff;stroke-width:1px;stroke-dasharray:3 5;vector-effect:non-scaling-stroke;opacity:0;transition:opacity var(--transition-base)}.obs-link.is-visible{opacity:.8;animation:1.2s linear infinite signal}@keyframes signal{to{stroke-dashoffset:-16px}}.obs-body{cursor:pointer;outline:none}.obs-hit{fill:#0000}.obs-disc{transition:transform var(--transition-base);transform-box:fill-box;transform-origin:50%}.obs-rings{fill:none;stroke:#e6d3a3;stroke-opacity:.7;stroke-width:1.4px}.obs-label{font-family:var(--font-mono);text-anchor:middle;fill:var(--text-muted);opacity:0;transition:opacity var(--transition-base);pointer-events:none;font-size:11px}.obs-body:hover .obs-label,.obs-body:focus-visible .obs-label,.obs-body.is-selected .obs-label{opacity:1}.obs-body:hover .obs-disc,.obs-body:focus-visible .obs-disc,.obs-body.is-selected .obs-disc{transform:scale(1.35)}.obs-body:focus-visible .obs-hit{stroke:var(--text-strong);stroke-width:1px;vector-effect:non-scaling-stroke}.obs-corona{transform-box:fill-box;transform-origin:50%;animation:6s ease-in-out infinite alternate corona}@keyframes corona{0%{opacity:.75;transform:scale(.92)}to{opacity:1;transform:scale(1.08)}}.obs-controls{border-top:1px solid var(--border-hairline);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}.obs-date{min-width:11.5rem;font-family:var(--font-mono);color:var(--text-strong);font-size:.875rem}.obs-speeds{flex-wrap:wrap;gap:.375rem;display:flex}.obs-speed,.obs-today{font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border-glass);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);background:0 0;border-radius:999px;padding:.5rem .8rem;font-size:.75rem}.obs-speed:hover,.obs-today:hover{color:var(--text-strong);border-color:var(--border-glass-strong)}.obs-speed.is-active{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.obs-speed:disabled{opacity:.4;cursor:not-allowed}.obs-today{margin-left:auto}.obs-panel{background:color-mix(in srgb, var(--bg-card) 88%, transparent);border:1px solid var(--border-hairline);backdrop-filter:blur(6px);border-radius:14px;padding:1.75rem;position:sticky;top:88px}.obs-kind{font-family:var(--font-mono);color:var(--text-faint);margin:0;font-size:.75rem}.obs-name{letter-spacing:-.02em;color:var(--text-strong);margin:.375rem 0 0;font-size:1.75rem;font-weight:600}.obs-facts{gap:.625rem;margin:1.25rem 0 0;display:grid}.obs-facts div{border-bottom:1px solid var(--border-hairline);grid-template-columns:9.5rem minmax(0,1fr);gap:.75rem;padding-bottom:.625rem;display:grid}.obs-facts dt{color:var(--text-muted);font-size:.8125rem}.obs-facts dd{color:var(--text-primary);font-variant-numeric:tabular-nums;margin:0;font-size:.875rem}.obs-note{color:var(--text-secondary);margin:1.25rem 0 0;font-size:.9375rem;line-height:1.65}.obs-back{font-family:var(--font-mono);color:var(--text-muted);margin-top:1.5rem;font-size:.8125rem;text-decoration:none;display:inline-block}.obs-back:hover{color:var(--text-strong)}@media (width<=900px){.obs-layout{grid-template-columns:1fr}.obs-panel{position:static}}@media (width<=640px){.obs-page{padding:2rem 1.25rem 3.5rem}.obs-facts div{grid-template-columns:1fr;gap:.125rem}.obs-today{margin-left:0}}@media (prefers-reduced-motion:no-preference){.obs-sun{animation:1.1s cubic-bezier(.16,1,.3,1) both sun-ignite}@keyframes sun-ignite{0%{opacity:0;transform:scale(.2)}}.obs-orbit{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:1.3s cubic-bezier(.65,0,.35,1) forwards orbit-draw;animation-delay:calc(.35s + var(--i) * .11s)}@keyframes orbit-draw{to{stroke-dashoffset:0}}.obs-planet .obs-disc,.obs-planet .obs-rings{animation:.7s both planet-arrive;animation-delay:calc(1s + var(--i) * .12s)}@keyframes planet-arrive{0%{opacity:0;filter:blur(3px)}}}@media (prefers-reduced-motion:reduce){.obs-corona,.obs-link.is-visible{animation:none}}.obs-3d:not([hidden]){border:1px solid var(--border-hairline);isolation:isolate;background:#020308;border-radius:18px;height:clamp(440px,72vh,780px);display:block;position:relative;overflow:hidden;box-shadow:0 30px 80px -40px #000000e6}.obs3d-canvas{cursor:grab;touch-action:none;opacity:0;width:100%;height:100%;transition:opacity 1.2s;display:block}.obs-3d.is-ready .obs3d-canvas{opacity:1}.obs3d-canvas:active{cursor:grabbing}.obs3d-loading{font-family:var(--font-mono);color:var(--text-muted);pointer-events:none;place-items:center;margin:0;font-size:.8125rem;transition:opacity .6s;display:grid;position:absolute;inset:0}.obs-3d.is-ready .obs3d-loading{opacity:0}.obs3d-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.obs3d-label{font-family:var(--font-mono);color:var(--text-secondary);white-space:nowrap;cursor:pointer;pointer-events:auto;text-shadow:none;will-change:transform;transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast), opacity .4s ease;background:#06080e8c;border:1px solid #0000;border-radius:999px;align-items:center;gap:.4rem;padding:.2rem .55rem .2rem .4rem;font-size:.75rem;line-height:1.2;display:inline-flex;position:absolute;top:0;left:0}.obs3d-label.is-hidden{opacity:0;pointer-events:none}.obs3d-label:hover,.obs3d-label:focus-visible{color:var(--text-strong);border-color:var(--border-glass-strong);outline:none}.obs3d-label.is-selected{color:var(--text-strong);border-color:color-mix(in srgb, var(--c) 70%, transparent);background:#06080ecc}.obs3d-dot{background:var(--c);width:7px;height:7px;box-shadow:0 0 8px var(--c);border-radius:50%}.obs3d-tools{z-index:2;gap:.375rem;display:flex;position:absolute;top:.875rem;right:.875rem}.obs3d-tool{min-width:2.25rem;height:2.25rem;font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border-glass);cursor:pointer;backdrop-filter:blur(6px);text-shadow:none;background:#06080eb3;border-radius:999px;padding:0 .75rem;font-size:.8125rem}.obs3d-tool:hover,.obs3d-tool:focus-visible{color:var(--text-strong);border-color:var(--border-glass-strong)}.obs3d-hint{z-index:2;font-family:var(--font-mono);color:var(--text-muted);pointer-events:none;background:#06080e99;border-radius:999px;margin:0;padding:.3rem .65rem;font-size:.75rem;transition:opacity .6s;position:absolute;bottom:.75rem;left:.875rem}.obs-3d.is-engaged .obs3d-hint{opacity:0}@media (width<=640px){.obs-3d:not([hidden]){border-radius:14px;height:62vh;min-height:380px}.obs3d-hint{white-space:normal;right:.875rem}}.obs3d-scales{z-index:2;border:1px solid var(--border-glass);backdrop-filter:blur(6px);background:#06080eb8;border-radius:999px;gap:2px;padding:3px;display:flex;position:absolute;top:.875rem;left:.875rem}.obs3d-scale{font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;cursor:pointer;text-shadow:none;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:0;border-radius:999px;padding:.4rem .75rem;font-size:.75rem}.obs3d-scale:hover,.obs3d-scale:focus-visible{color:var(--text-strong)}.obs3d-scale[aria-pressed=true]{color:var(--text-on-primary);background:var(--color-primary)}.obs3d-tool--tour[aria-pressed=true]{color:#0a0c13;background:#6ee7b7;border-color:#6ee7b7}.obs3d-label--cosmic{color:var(--text-primary)}.obs3d-warp{z-index:1;pointer-events:none;opacity:0;background:radial-gradient(#ffffff59,#0000 22%),repeating-conic-gradient(#bed4ff47 0deg .6deg,#0000 .6deg 7deg);transition:opacity .45s,transform .9s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0;transform:scale(.6);-webkit-mask:radial-gradient(circle,#0000 8%,#000 70%);mask:radial-gradient(circle,#0000 8%,#000 70%)}.obs-3d.is-warping .obs3d-warp{opacity:1;transform:scale(1.6)}.obs3d-tour-caption{z-index:2;text-align:center;max-width:min(560px,100% - 2rem);color:var(--text-strong);border:1px solid var(--border-glass);backdrop-filter:blur(8px);text-shadow:none;background:#06080ec7;border-radius:12px;margin:0;padding:.6rem 1rem;font-size:.9375rem;line-height:1.45;animation:.5s tour-in;position:absolute;bottom:3rem;left:50%;transform:translate(-50%)}.obs3d-tour-caption[hidden]{display:none}@keyframes tour-in{0%{opacity:0;transform:translate(-50%,8px)}}.obs-controls.is-dormant{opacity:.4;pointer-events:none}@media (width<=760px){.obs3d-scales{scrollbar-width:none;justify-content:space-between;inset:auto .75rem .75rem;overflow-x:auto}.obs3d-scales::-webkit-scrollbar{display:none}.obs3d-hint{display:none}.obs3d-tour-caption{bottom:4rem}}@media (prefers-reduced-motion:reduce){.obs3d-warp{display:none}}
