*,:before,:after{box-sizing:border-box}html,body{width:100%;height:100%;max-height:100dvh;margin:0;overflow:hidden}body{background:#020617}.app-root{background:#020617;flex-direction:row;align-items:stretch;margin:0;display:flex;position:fixed;inset:0;overflow:hidden}.app-root--panel .main-stage{flex:1;min-width:0}.main-stage{flex:1;min-width:0;min-height:0;position:relative}.canvas{touch-action:none;position:absolute;inset:0}.top-bar{z-index:3;pointer-events:none;justify-content:center;padding:.65rem .75rem;font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex;position:absolute;top:0;left:0;right:0}.top-bar--finder{align-items:flex-start}.top-bar-pill{pointer-events:auto;-webkit-backdrop-filter:blur(12px);background:#0f172ad1;border:1px solid #94a3b847;border-radius:999px;max-width:calc(100vw - 1.5rem);padding:.5rem 1rem .55rem;box-shadow:0 10px 30px #00000073,inset 0 1px #ffffff0a}.top-bar-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem .85rem;display:flex}.top-bar-row--nav{border-top:1px solid #94a3b833;margin-top:.45rem;padding-top:.45rem}.top-bar-nav-hint{text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-right:.15rem;font-size:.68rem}.top-bar-axis{gap:.25rem;display:inline-flex}.top-bar-btn{appearance:none;color:#e2e8f0;cursor:pointer;font-variant-numeric:tabular-nums;background:#1e293bbf;border:1px solid #94a3b859;border-radius:6px;padding:.28rem .45rem;font-size:.68rem;font-weight:600;line-height:1}.top-bar-btn:hover{color:#f8fafc;background:#334155e6;border-color:#38bdf88c}.top-bar-btn:active{transform:scale(.97)}.top-bar-btn--primary{color:#38bdf8;background:#38bdf81f;border-color:#38bdf873;margin-left:.2rem;padding-inline:.65rem}.top-bar-btn--primary:hover{color:#e0f2fe;background:#38bdf838}.top-bar-btn--finder{color:#ddd6fe;background:#8b5cf626;border-color:#a78bfa73;margin-right:.15rem}.top-bar-btn--finder:hover{color:#f5f3ff;background:#8b5cf647;border-color:#c4b5fda6}.top-bar-btn--pause{color:#fde68a;background:#f59e0b24;border-color:#fbbf2473;min-width:3.4rem}.top-bar-btn--pause:hover{color:#fffbeb;background:#f59e0b3d;border-color:#fcd34da6}.top-bar-btn--play{color:#a7f3d0;background:#10b98124;border-color:#34d39980;min-width:3.4rem}.top-bar-btn--play:hover{color:#ecfdf5;background:#10b98142;border-color:#6ee7b7a6}.top-bar-slider--time:disabled{opacity:.5;cursor:not-allowed}@keyframes finder-shell-pop-in{0%{opacity:0;filter:blur(6px);transform:translateY(-14px)scale(.91)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes finder-shell-pop-out{0%{opacity:1;filter:blur();transform:translateY(0)scale(1)}to{opacity:0;filter:blur(4px);transform:translateY(-10px)scale(.94)}}@keyframes top-bar-pill-enter{0%{opacity:0;transform:translateY(-10px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes finder-card-rise{0%{opacity:0;transform:translateY(10px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.planet-finder-shell{pointer-events:auto;-webkit-backdrop-filter:blur(14px);transform-origin:50% 0;background:#0f172aeb;border:1px solid #94a3b847;border-radius:14px;width:min(100%,920px);max-width:calc(100vw - 1.25rem);overflow:hidden;box-shadow:0 16px 48px #0000008c,inset 0 1px #ffffff0a}.planet-finder-shell--pop-in{animation:.48s cubic-bezier(.22,1.15,.36,1) both finder-shell-pop-in}.planet-finder-shell--pop-out{animation:.32s cubic-bezier(.4,0,.85,1) forwards finder-shell-pop-out}.top-bar-pill--enter{transform-origin:50% 0;animation:.42s cubic-bezier(.25,1.2,.45,1) both top-bar-pill-enter}@media (prefers-reduced-motion:reduce){.planet-finder-shell--pop-in,.planet-finder-shell--pop-out,.top-bar-pill--enter,.planet-finder-card{opacity:1!important;filter:none!important;animation:none!important;transform:none!important}}.planet-finder-head{border-bottom:1px solid #94a3b826;padding:.75rem 1rem .5rem}.planet-finder-title{color:#f8fafc;letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.05rem;font-weight:650}.planet-finder-sub{color:#94a3b8;margin:0 0 .65rem;font-size:.78rem;line-height:1.4}.planet-finder-tabs{flex-wrap:wrap;gap:.35rem;margin-bottom:.55rem;display:flex}.planet-finder-tab{appearance:none;color:#94a3b8;cursor:pointer;background:#1e293ba6;border:1px solid #475569bf;border-radius:999px;padding:.32rem .75rem;font-family:inherit;font-size:.72rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.planet-finder-tab:hover{color:#e2e8f0;border-color:#38bdf873}.planet-finder-tab--active{color:#e0f2fe;background:#38bdf824;border-color:#38bdf88c}.planet-finder-tab:focus-visible{outline-offset:2px;outline:2px solid #38bdf8}.planet-finder-back{appearance:none;color:#e2e8f0;cursor:pointer;background:#1e293be6;border:1px solid #94a3b866;border-radius:8px;padding:.35rem .85rem;font-size:.78rem}.planet-finder-back:hover{color:#f8fafc;border-color:#38bdf8}.planet-finder-scroll{max-height:min(52vh,420px);padding:.65rem 1rem .85rem;overflow-y:auto}.planet-finder-section{margin-bottom:.85rem}.planet-finder-section:last-child{margin-bottom:0}.planet-finder-group-title{text-transform:uppercase;letter-spacing:.1em;color:#64748b;margin:0 0 .4rem;font-size:.65rem;font-weight:600}.planet-finder-chips{flex-wrap:wrap;gap:.4rem .5rem;display:flex}.planet-finder-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:.55rem .5rem;display:grid}.planet-finder-card{cursor:pointer;text-align:center;color:#e2e8f0;font:inherit;appearance:none;animation:.42s cubic-bezier(.25,1.1,.45,1) both finder-card-rise;animation-delay:calc(var(--finder-stagger,0) * 38ms);background:#1e293b8c;border:1px solid #475569a6;border-radius:10px;flex-direction:column;align-items:stretch;gap:.35rem;padding:.45rem .45rem .5rem;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.planet-finder-card:hover{background:#334155bf;border-color:#38bdf88c;box-shadow:0 6px 20px #00000059}.planet-finder-card:focus-visible{outline-offset:2px;outline:2px solid #38bdf8}.planet-finder-card-preview{aspect-ratio:1;pointer-events:none;background:#0b1220;border:1px solid #334155bf;border-radius:8px;width:100%;position:relative;overflow:hidden}.planet-finder-card-skeleton{background:linear-gradient(135deg,#1e293b 0%,#0f172a 50%,#1e293b 100%);position:absolute;inset:0}.planet-finder-card-label{color:#cbd5e1;padding:0 .1rem;font-size:.72rem;font-weight:600;line-height:1.2}.planet-finder-chip--solo{grid-column:1/-1;justify-self:start}.planet-finder-chip{appearance:none;color:#e2e8f0;cursor:pointer;background:#1e293ba6;border:1px solid #475569a6;border-radius:999px;padding:.38rem .7rem;font-size:.78rem}.planet-finder-chip:hover{color:#f8fafc;background:#334155d9;border-color:#38bdf88c}.top-bar-slider{accent-color:#38bdf8;cursor:pointer;width:min(200px,42vw);height:.35rem}.top-bar-time{flex-direction:column;gap:.15rem;min-width:min(220px,46vw);display:flex}.top-bar-slider--time{width:100%;min-width:0}.top-bar-time-ticks{color:#64748b;letter-spacing:.02em;-webkit-user-select:none;user-select:none;justify-content:space-between;padding:0 .05rem;font-size:.58rem;font-weight:500;display:flex}.top-bar-value{font-variant-numeric:tabular-nums;color:#38bdf8;text-align:center;white-space:nowrap;align-items:center;max-width:min(9.5rem,32vw);display:inline-flex}.top-bar-value-num{font-size:.82rem;font-weight:600;line-height:1.2}.top-bar-value-unit{color:#7dd3fc;letter-spacing:.02em;font-size:.68rem;font-weight:500}.top-bar-orbit{cursor:pointer;-webkit-user-select:none;user-select:none;color:#cbd5e1;border-left:1px solid #94a3b840;align-items:center;gap:.45rem;margin-left:.1rem;padding-left:.35rem;font-size:.78rem;display:inline-flex;position:relative}.top-bar-orbit-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.top-bar-orbit-input:focus-visible+.top-bar-orbit-ui{outline-offset:2px;outline:2px solid #38bdf8}.top-bar-orbit-ui{background:#1e293bf2;border:1px solid #94a3b859;border-radius:999px;flex-shrink:0;width:2.05rem;height:1.1rem;transition:background .15s,border-color .15s;position:relative}.top-bar-orbit-ui:after{content:"";background:#94a3b8;border-radius:50%;width:.78rem;height:.78rem;transition:transform .15s,background .15s;position:absolute;top:50%;left:.12rem;transform:translateY(-50%)}.top-bar-orbit-input:checked+.top-bar-orbit-ui{background:#38bdf833;border-color:#38bdf88c}.top-bar-orbit-input:checked+.top-bar-orbit-ui:after{background:#38bdf8;transform:translate(.95rem,-50%)}.top-bar-orbit-label{white-space:nowrap}.experimental-badge{z-index:2;pointer-events:none;letter-spacing:.04em;color:#a8b4c8;-webkit-backdrop-filter:blur(10px);background:#0f172ad1;border:1px solid #8b5cf659;border-radius:7px;max-width:min(100vw - 1.5rem,14rem);padding:.32rem .6rem;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:.62rem;font-weight:650;line-height:1.35;position:absolute;bottom:.75rem;left:.75rem;box-shadow:0 4px 16px #00000059}@media (max-width:520px){.experimental-badge{padding:.28rem .5rem;font-size:.58rem;bottom:3.35rem;left:.5rem}}.footer-brand{z-index:2;pointer-events:none;justify-content:center;padding:.5rem .75rem .75rem;font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex;position:absolute;bottom:0;left:0;right:0}.footer-brand-pill{letter-spacing:.02em;color:#94a3b8;-webkit-backdrop-filter:blur(10px);pointer-events:auto;background:#0f172ac7;border:1px solid #94a3b838;border-radius:999px;margin:0;padding:.4rem 1.1rem .45rem;font-size:.72rem;box-shadow:0 6px 20px #00000059}.footer-brand-pill--row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.footer-brand-text{margin:0}.footer-brand-copy{opacity:.45;-webkit-user-select:none;user-select:none;font-size:.85em}.footer-credits-btn{appearance:none;color:#7dd3fc;font-size:inherit;letter-spacing:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;border-radius:6px;margin:-.1rem -.25rem;padding:.1rem .25rem;font-family:inherit;text-decoration:underline}.footer-credits-btn:hover{color:#e0f2fe}.footer-credits-btn:focus-visible{outline-offset:2px;outline:2px solid #38bdf8}.credits-overlay{z-index:50;-webkit-backdrop-filter:blur(6px);pointer-events:auto;background:#020617b8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.credits-dialog{background:linear-gradient(#0f172a 0%,#020617 100%);border:1px solid #94a3b840;border-radius:14px;flex-direction:column;width:min(100%,520px);max-height:min(85vh,640px);display:flex;box-shadow:0 24px 80px #0000008c}.credits-dialog-head{border-bottom:1px solid #94a3b826;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1.1rem .65rem;display:flex}.credits-dialog-title{color:#f8fafc;letter-spacing:-.02em;margin:0;font-size:1.1rem;font-weight:650}.credits-dialog-close{appearance:none;color:#e2e8f0;cursor:pointer;background:#1e293be6;border:1px solid #94a3b866;border-radius:8px;flex-shrink:0;padding:.35rem .75rem;font-size:.78rem}.credits-dialog-close:hover{color:#fff;border-color:#38bdf8}.credits-dialog-body{color:#cbd5e1;padding:.85rem 1.1rem 1.15rem;font-size:.82rem;line-height:1.55;overflow-y:auto}.credits-block{margin-bottom:1.1rem}.credits-block:last-child{margin-bottom:0}.credits-block-title{text-transform:uppercase;letter-spacing:.08em;color:#38bdf8;margin:0 0 .45rem;font-size:.72rem;font-weight:600}.credits-block-list{margin:0;padding-left:1.15rem}.credits-block-list li{margin-bottom:.45rem}.credits-block-list li:last-child{margin-bottom:0}.planet-panel{z-index:4;background:linear-gradient(#0f172a 0%,#020617 100%);border-left:1px solid #94a3b833;flex-direction:column;flex-shrink:0;width:min(100%,420px);max-width:100%;display:flex;overflow:hidden;box-shadow:-12px 0 40px #00000073}.planet-panel-top{flex-shrink:0;justify-content:flex-end;align-items:center;gap:.5rem;padding:.75rem .9rem .55rem;display:flex}.planet-panel-close{appearance:none;color:#e2e8f0;cursor:pointer;letter-spacing:.02em;background:#0f172ae6;border:1px solid #94a3b859;border-radius:8px;padding:.45rem 1rem;font-size:.8rem;line-height:1.25}.planet-panel-close:hover{color:#f8fafc;border-color:#38bdf8}.planet-panel-preview-wrap{border:1px solid #33415599;border-radius:10px;flex-shrink:0;height:200px;margin:.15rem .75rem 0;overflow:hidden}.planet-preview-canvas{display:block;width:100%!important;height:100%!important}.planet-preview-canvas--finder{min-height:0}.planet-panel-body{color:#e2e8f0;flex:1;padding:.75rem 1.1rem 1.25rem;font-size:.88rem;line-height:1.55;overflow-y:auto}.planet-panel-title{letter-spacing:-.02em;color:#f8fafc;margin:0 0 .25rem;font-size:1.35rem;font-weight:650}.planet-panel-subtitle{color:#94a3b8;margin:0 0 1rem;font-size:.82rem}.planet-panel-section{margin-bottom:1.1rem}.planet-panel-h3{text-transform:uppercase;letter-spacing:.08em;color:#38bdf8;margin:0 0 .45rem;font-size:.72rem;font-weight:600}.planet-panel-temperature{color:#cbd5e1;margin:0}.planet-panel-stats{grid-template-columns:minmax(0,38%) 1fr;gap:.35rem .75rem;margin:0;display:grid}.planet-panel-stats dt{color:#94a3b8;margin:0;font-size:.78rem}.planet-panel-stats dd{color:#e2e8f0;margin:0;font-size:.8rem}.planet-panel-essay .planet-panel-para{color:#cbd5e1;margin:0 0 .85rem}.planet-panel-essay .planet-panel-para:last-child{margin-bottom:0}@media (max-width:768px){.app-root{flex-direction:column}.planet-panel{border-top:1px solid #94a3b833;border-left:none;width:100%;max-height:48vh;box-shadow:0 -12px 40px #00000073}.planet-panel-preview-wrap{height:160px}}
