:root{color-scheme:dark;--bg:#03060b;--fg:#dbe0e8;--muted:#75808f;--line:rgba(171,188,212,.13);--accent:#e9c88d;--panel:rgba(12,17,25,.94);--range-track:rgba(171,188,212,.28);--range-thumb:#e2c58d;--range-halo:rgba(226,197,141,.10);--clock-scale:1;--clock-fit-scale:1;--clock-base-size:78px;font-family:"Segoe UI","Malgun Gothic",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);-webkit-user-select:none;user-select:none}body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);-webkit-user-select:none;user-select:none}body{color:var(--fg);-webkit-font-smoothing:antialiased}button{font:inherit}input{font:inherit}select{font:inherit}button{cursor:pointer;color:inherit}button{-webkit-tap-highlight-color:transparent}a{-webkit-tap-highlight-color:transparent}input{-webkit-tap-highlight-color:transparent}select{-webkit-tap-highlight-color:transparent}button{border:0}button:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:2px solid var(--accent);outline-offset:5px}a:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:2px solid var(--accent);outline-offset:5px}input:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:2px solid var(--accent);outline-offset:5px}select:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:2px solid var(--accent);outline-offset:5px}canvas:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:2px solid var(--accent);outline-offset:5px}button:disabled{opacity:.35;cursor:not-allowed}[hidden]{display:none!important}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}button svg{pointer-events:none}a{color:var(--accent);text-underline-offset:3px}button{touch-action:manipulation}
.brand{position:relative}.brand-copy{display:contents}.brand-help{position:absolute;inset:0;width:100%;height:100%;padding:0;background:transparent;border-radius:4px}
#starfield{position:fixed;inset:0;width:100%;height:100%;display:block;background:rgba(0,0,0,0)!important}
#planet-layer{position:fixed;inset:0;width:100%;height:100%;display:block;background:rgba(0,0,0,0)!important}
#universe{position:fixed;inset:0;width:100%;height:100%;display:block;background:rgba(0,0,0,0)!important}#planet-layer{opacity:1;transition:opacity 1.4s ease}#universe{opacity:1;transition:opacity 1.4s ease}#planet-layer.viewport-resizing{opacity:0;transition:none}#universe.viewport-resizing{opacity:0;transition:none}#starfield{pointer-events:none}#planet-layer{pointer-events:none}#universe{touch-action:none;cursor:grab}#universe.dragging{cursor:grabbing}.edge-shade{position:fixed;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgba(3,6,11,.32),transparent 29%,transparent 74%,rgba(3,6,11,.6))}
.masthead{position:absolute;top:23px;left:var(--solar-left-edge);right:38px;display:flex;align-items:center;justify-content:space-between;z-index:4}.brand{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0 8px;transform:none}.brand svg{width:40.4px;height:37.7px;transform:none;stroke:#939488;stroke-width:.9}.brand svg circle:not(.satellite){fill:var(--accent);stroke:none}.brand svg .satellite{fill:#b7c9dc;stroke:none}.brand h1{width:0;min-width:100%;font-size:18px;letter-spacing:2px;text-align-last:justify;white-space:nowrap;font-weight:500;margin:0;color:#e1dfd7}.brand p{grid-column:1/-1;white-space:nowrap;font-size:8px;letter-spacing:1.75px;color:#637080;margin:7px 0 0;transform:translateY(-4px)}.top-actions{display:flex;align-items:center;gap:8px}.top-actions,#view-controls{translate:5px 0}.icon-button{background:transparent;display:grid;place-items:center;width:38px;height:38px;color:#94a0af;border-radius:9px;transition:background .18s,color .18s}.icon-button:hover{background:rgba(165,183,204,.09);color:#e8d8ba}.icon-button[aria-expanded=true]{background:rgba(165,183,204,.09);color:#e8d8ba}
.music-control{position:relative;display:grid;place-items:center}.music-now{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);display:grid;grid-template-columns:14px 140px 14px;align-items:center;gap:3px;width:max-content;white-space:nowrap}.music-title{display:block;width:140px;overflow:hidden;text-overflow:ellipsis;color:#aeb8c4;font-size:10px;letter-spacing:.45px;text-align:center;text-shadow:0 1px 8px #000;pointer-events:none}.music-now button{display:grid;place-items:center;width:14px;height:16px;padding:0;background:transparent;color:#778493;font-size:11px;line-height:1}.music-now button:hover{color:#e8d8ba}.music-now button:disabled{opacity:.22}.music-control #music-toggle[aria-pressed=true]{background:rgba(165,183,204,.09);color:#e8d8ba}.music-control #music-toggle .music-on-mark{display:none}.music-control #music-toggle[aria-pressed=true] .music-on-mark{display:inline}.music-control #music-toggle[aria-pressed=true] .music-off-mark{display:none}
.clock-face{position:absolute;left:50%;transform:translateX(-50%);text-align:center;pointer-events:none;white-space:nowrap;z-index:2}.eyebrow{font-size:8px;letter-spacing:2.5px;color:#9d957f;font-weight:500;margin:0}.clock-face .eyebrow{font-size:9px;letter-spacing:3.6px;color:#8d918f;margin:0 0 4.5px}.wall-clock{font-size:calc(var(--clock-base-size)*var(--clock-scale)*var(--clock-fit-scale));line-height:1.08;font-weight:200;letter-spacing:-2px;color:#e9e8e5;text-shadow:0 0 28px rgba(224,226,244,.07)}.wall-clock .colon{color:#64717e;font-size:.8em;margin:0 3px;font-weight:200}.wall-clock #seconds{color:#bac4cf}.date-line{display:flex;position:relative;width:max-content;margin-left:auto;margin-right:auto;align-items:center;justify-content:center;gap:12px;letter-spacing:.7px;color:#929ba8;margin-top:12px}.date-divider{width:1px;height:8px;background:#414c58}.date-line button{pointer-events:auto;background:transparent;letter-spacing:1.5px;color:#aeb7c3;padding:4px}.date-line button:hover{color:var(--accent)}
.scene-status{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:1.5px;color:#747e8b;pointer-events:none;white-space:nowrap}.status-dot{display:inline-block;background:#a5cbb9;width:4px;height:4px;border-radius:50%;box-shadow:0 0 7px #8fbaa966}.tiny-dot{display:inline-block;background:#a5cbb9;width:4px;height:4px;border-radius:50%;box-shadow:0 0 7px #8fbaa966}.status-dot.simulated{background:var(--accent);box-shadow:0 0 7px #e9c88d66}.status-dot.paused{background:#8b94a2;box-shadow:none}.status-separator{margin:0 3px;color:#404b58}.scene-status time{color:#96a3b2;letter-spacing:1px;font-variant-numeric:tabular-nums}
.panel{position:absolute;z-index:8;border:1px solid var(--line);border-radius:15px}.settings-panel{right:40px;top:87px;width:278px;padding:0}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:17px}.panel h2{font-size:19px;font-weight:400;margin:8px 0 0}.close-button{background:transparent;font-size:26px;line-height:28px;width:32px;height:32px;border-radius:7px;color:#83909f}.close-button:hover{color:var(--fg);background:#ffffff09}.panel-heading .close-button{margin:-8px -10px 0 0}.setting-row{display:flex;align-items:center;justify-content:space-between;min-height:38px;font-size:12px;color:#c4cbd4}.setting-row small{font-size:10px;margin-left:6px;color:#6f7f90}.setting-row input[type=checkbox]{appearance:none;width:29px;height:16px;border-radius:20px;background:#313844;position:relative;cursor:pointer;margin:0;transition:background .15s}.setting-row input[type=checkbox]::before{content:"";position:absolute;width:10px;height:10px;top:3px;left:3px;background:#97a1ae;border-radius:50%;transition:transform .15s}.setting-row:has(input[type=checkbox]:disabled){opacity:.55}.setting-row input[type=checkbox]:disabled{cursor:not-allowed}.setting-row input[type=checkbox]:checked{background:#a28d64}.setting-row input[type=checkbox]:checked::before{transform:translateX(13px);background:#f8e9cc}.setting-range{border-top:1px solid var(--line);margin-top:14px;padding-top:19px}#overview-orbit-gap-control{border-top:0;margin-top:0}#orbit-brightness-control{border-top:0;margin-top:0;padding-top:5px}.range-heading{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#b7c1cd}.setting-range label{font-size:12px;color:#b7c1cd}.setting-range output{color:var(--accent);font-variant-numeric:tabular-nums}.setting-range .solar-range{margin:4px 0 1px}.range-title{display:inline-flex;align-items:center;gap:5px;min-width:0}.range-reset{position:relative;flex:0 0 auto;width:13px;height:13px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}.range-reset::before{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:#e9c88d;box-shadow:0 0 5px rgba(233,200,141,.32);transform:translate(-50%,-50%);transition:background .15s,box-shadow .15s,opacity .15s}.range-reset:disabled{cursor:default}.range-reset:disabled::before{background:#53606f;box-shadow:none;opacity:.72}.range-reset:not(:disabled):hover::before,.range-reset:not(:disabled):focus-visible::before{background:#f4d79d;box-shadow:0 0 7px rgba(233,200,141,.55)}.setting-row select{background:#151c26;border:1px solid var(--line);border-radius:6px;color:#c3cbd5;font-size:11px;padding:4px 8px}.text-button{background:#ffffff04;border:1px solid var(--line);color:#aeb9c7;font-size:11px;border-radius:7px;padding:10px}.text-button:hover{background:#ffffff0a}.full-width{width:100%;margin-top:14px}
.body-panel{left:38px;width:268px;--body-pad-top:18px;--body-pad-right:23px;--body-pad-bottom:25px;--body-pad-left:23px}.body-panel>.close-button{position:absolute;right:10px;top:10px}.body-panel h2{margin:11px 0 17px;font-size:25px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.body-panel h2>span{flex:0 1 auto;min-width:0;max-width:100%;word-break:keep-all;overflow-wrap:anywhere}.body-panel h2>span:last-child{font-size:10px;letter-spacing:2px;color:#8895a6}.body-scroll>p{font-size:11px;line-height:1.95;color:#a1adbc;word-break:keep-all}.body-stats{display:flex;gap:18px;margin-top:18px;padding-top:0;border-top:0}.body-stats>div{min-width:0;flex:1}.body-stats span{display:block;font-size:9px;color:#7c8897;margin-bottom:9px}.body-stats strong{font-size:18px;font-weight:400;color:#dac9a9;font-variant-numeric:tabular-nums;white-space:nowrap}.body-stats strong small{font-size:10px;color:#8d958f}.body-environment-stats{margin-top:15px;padding-top:0}.body-stats .body-stat-detail{margin:6px 0 0;font-size:9px;line-height:1.45;color:#718092;white-space:nowrap}
.body-size-control{margin-top:14px;padding-top:5px;border-top:0}.body-size-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#aab5c3}.body-size-heading output{color:var(--accent);font-variant-numeric:tabular-nums}.body-size-control>.solar-range{margin:3px 0 4px}.body-orbit-control{margin:0;padding-top:5px;border-top:0}.body-orbit-control .solar-range{margin:3px 0}.body-size-control>.text-button{width:100%;padding:8px}.body-size-control>p{margin:8px 0 0;font-size:8px;line-height:1.5;color:#7c8998;text-align:center}.body-size-control.locked{opacity:.55}.body-size-control input:disabled{cursor:not-allowed}.body-size-control button:disabled{cursor:not-allowed}
.body-option-row{margin-top:0;padding-top:0;border-top:0}.body-panel #sky-feature-display-control{margin-top:12px}.body-option-range{margin-top:5px}.body-option-range .solar-range{margin:3px 0 0}
.view-controls{position:absolute;right:38px;display:flex;flex-direction:column;z-index:4}.view-controls span{height:1px;background:var(--line);margin:7px 10px}.view-controls svg{width:18px;height:18px}
.playback{position:absolute;bottom:66px;left:50%;width:max-content;z-index:5}.playback-caption{display:flex;align-items:center;margin:0 14px 10px;font-size:10px;color:#a8acac;letter-spacing:.4px}.playback-caption>span:last-child{font-size:10px;color:#82775f;letter-spacing:1px}.playback-bar{display:flex;align-items:center;padding:7px 10px;border:1px solid rgba(164,178,196,.14);border-radius:12px}.play-button{display:grid;place-items:center;width:35px;height:34px;background:transparent;color:var(--accent);border-radius:7px}.play-button:hover{background:#e9c88d11}.play-button svg{width:18px;height:18px;stroke-width:1.6}.play-button #play-icon{fill:var(--accent);stroke:none;width:16px}.bar-divider{height:17px;width:1px;background:var(--line);flex-shrink:0;margin-inline:-3px}.speed-button{font-size:11px;font-weight:400;white-space:nowrap;background:transparent;padding:11px 14px;border-radius:7px;color:#98a4b5;transition:background .2s,color .2s}.speed-button span:not(.tiny-dot){color:#667386;font-size:9px}.speed-button.active{color:#e7cd9b}.speed-button.active span:not(.tiny-dot){color:#b09a74}.speed-button:hover{background:#ffffff09;color:#e2e6ec}.speed-button .tiny-dot{width:4px;height:4px;margin-right:7px;vertical-align:middle}.playback-bar>.icon-button{width:31px;height:32px}.playback-bar>.icon-button svg{width:17px;height:17px}
.footer{position:absolute;bottom:25px;left:var(--solar-left-edge);right:38px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:15px;z-index:4;pointer-events:none}.footer a,.footer button{pointer-events:auto}.signature{position:relative;transform:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:0;min-height:57px;font-size:9px;line-height:16px;letter-spacing:.85px;color:#637181;white-space:nowrap}.signature .credit-line{display:block}.signature .source-link{color:#718092}.signature .contact-email{color:#718092}.life-user-watermark{display:block;width:100%;height:100%;object-fit:contain}.planet-nav{pointer-events:auto;grid-column:2;display:flex;align-items:center;justify-content:center;gap:15px}.planet-nav button{font-size:11px;background:transparent;color:#8997a8;padding:7px 0;white-space:nowrap;display:flex;align-items:center;gap:6px}.planet-nav button.satellite{margin-left:-9px;font-size:11px;color:#758292}.planet-nav button.satellite::before{color:#4c5968;font-size:9px}.planet-nav button:hover{color:#e1cfaf}.planet-nav button.active{color:#e1cfaf}.planet-nav i{width:4px;height:4px;display:inline-block;border-radius:50%;background:var(--planet);opacity:.85}.ui{transition:opacity 1s ease,visibility 0s linear 0s}body.zen .ui:not(#body-panel){opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity 1s ease,visibility 0s linear 1s}.toast{position:fixed;bottom:183px;left:50%;transform:translateX(-50%);padding:11px 17px;border:1px solid var(--line);border-radius:9px;font-size:11px;color:#d5dce7;z-index:30;text-align:center;max-width:90vw}.ui-fade{opacity:0;transition:opacity 1s ease!important}.ui-fade.ui-fade-visible{opacity:1}@starting-style{.ui-fade.ui-fade-visible{opacity:0}}.ui-fade.ui-fade-closing{pointer-events:none!important}
.modal{border:1px solid #38404c;border-radius:17px;color:#adb8c8;max-width:570px;width:calc(100% - 36px);max-height:85vh;line-height:1.8;font-size:12px;scrollbar-width:thin}.modal h2{font-weight:400;font-size:24px;letter-spacing:-.5px;color:#e7d5b5;margin:9px 0 22px}.modal h3{font-size:13px;font-weight:500;color:#e4e7ed;margin:24px 0 8px}.modal p{word-break:keep-all;margin:10px 0}.modal strong{color:#d7e0ed;font-weight:500}.modal b{color:#d7e0ed;font-weight:500}.modal .modal-note{font-size:10px;color:#717f90;border-top:1px solid var(--line);padding-top:18px;margin-top:25px}.shortcuts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;font-size:11px}kbd{font-family:inherit;font-size:10px;background:#ffffff07;border:1px solid var(--line);border-radius:4px;padding:3px 6px;color:#c4cbd5}
/* Help shortcut guide and CSS mouse controls. */
.shortcut-note{margin:0;color:#8d99aa;font-size:12px;line-height:1.6}.shortcut-guide{display:grid;grid-template-columns:1fr;gap:16px;margin-top:16px}.shortcut-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px}.shortcut-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;color:#aeb8c7;text-align:left}.shortcut-item>span:last-child{min-width:0;line-height:1.45;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}.shortcut-item kbd{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:24px;box-sizing:border-box;white-space:nowrap}.shortcut-symbol{position:relative;display:block;width:14px;height:14px;color:#eef2f7;flex:none;transform:scale(.595)}.shortcut-symbol::before,.shortcut-symbol::after,.shortcut-symbol i{content:"";position:absolute;left:0;top:6px;width:14px;height:2px;border-radius:1px;background:currentColor}.shortcut-symbol-plus::after{transform:rotate(90deg)}.shortcut-symbol-plus i{display:none}.shortcut-symbol-asterisk::before{transform:rotate(30deg)}.shortcut-symbol-asterisk::after{transform:rotate(90deg)}.shortcut-symbol-asterisk i{transform:rotate(150deg)}.shortcut-item kbd.shortcut-arrows{font-family:"Segoe UI Symbol","Noto Sans Symbols 2",sans-serif;font-size:13px;font-weight:700;line-height:1;color:#eef2f7;letter-spacing:1px;text-shadow:0 0 5px rgba(229,237,247,.22)}.shortcut-mouse-row{grid-template-columns:repeat(4,minmax(0,1fr));min-height:34px}.shortcut-mouse-row .shortcut-item{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:8px}.shortcut-mouse-row .mouse-control-icon,.shortcut-mouse-row .mouse-wheel-zoom-icon{justify-self:center}.mouse-control-icon{--mouse-line:#718094;--mouse-active:#f4f6f8;position:relative;display:inline-block;flex:0 0 20px;width:20px;height:29px;border:1.3px solid var(--mouse-line);border-radius:10px 10px 8px 8px;box-sizing:border-box;background:rgba(255,255,255,.012)}.mouse-control-icon::before{content:"";position:absolute;left:50%;top:0;width:1px;height:10px;background:var(--mouse-line);transform:translateX(-50%);z-index:2}.mouse-control-icon::after{content:"";position:absolute;left:50%;top:4px;width:3px;height:6px;border:1px solid var(--mouse-line);border-radius:3px;box-sizing:border-box;transform:translateX(-50%);background:#0a1019;z-index:3}.mouse-control-icon i{position:absolute;display:block;box-sizing:border-box}.mouse-left-click i,.mouse-right-click i{top:1px;width:8px;height:9px;background:var(--mouse-active);opacity:.92}.mouse-left-click i{left:1px;border-radius:8px 0 2px 0}.mouse-right-click i{right:1px;border-radius:0 8px 0 2px}.mouse-middle-click::after{background:var(--mouse-active);border-color:var(--mouse-active);box-shadow:0 0 5px rgba(255,255,255,.32)}.mouse-wheel-zoom-icon{display:block;width:34px;height:32px;object-fit:contain;filter:drop-shadow(0 0 2px rgba(229,237,247,.12))}
.shortcut-symbol{scale:.9;color:#c4cbd5}
@media(max-width:520px){.shortcut-guide{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.shortcut-row{display:contents}.shortcut-item{gap:6px}.shortcut-mouse-row{min-height:32px}.shortcut-item kbd{min-width:38px;padding-inline:4px}}
/* End help shortcut guide. */
.loading{position:fixed;inset:0;z-index:100;background:#03060b;display:flex;flex-direction:column;gap:23px;align-items:center;justify-content:center;font-size:11px;letter-spacing:2px;color:#bfb296;transition:opacity .4s}.loading.done{opacity:0;pointer-events:none}.loading.done.opening{pointer-events:none;cursor:wait}.loading-orbit{height:55px;width:90px;overflow:visible}.loading-orbit ellipse{fill:none;stroke:#b9a06c44;stroke-width:1}.loading-orbit .loading-sun{fill:#f1b45f;filter:drop-shadow(0 0 12px #ef9f4277)}.loading-orbit .loading-planet{fill:#bfd6e9}.fatal-error{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#080e19;padding:30px;text-align:center;z-index:200}.fatal-error h2{font-weight:400;color:#dfcba9}.fatal-error p{color:#a5b2c3;max-width:500px;font-size:13px;line-height:1.8}
@media(min-width:1800px){.wall-clock{--clock-base-size:88px}.playback{bottom:82px}.footer{bottom:33px}.planet-nav{gap:20px}}
@media(max-width:1050px){.footer{right:30px}.planet-nav{gap:12px}.brand h1{width:auto;min-width:0;font-size:15px;letter-spacing:2px}.brand svg{width:33.2px}.masthead{right:26px;top:25px}.body-panel{left:23px;width:248px}.view-controls{right:22px}.settings-panel{right:27px}.clock-face{top:76px}}
@media(max-width:680px){.masthead{top:19px;right:17px}.brand{gap:7px}.brand h1{font-size:13px;letter-spacing:2px}.brand svg{width:27.8px;height:26.9px}.top-actions{gap:1px}.icon-button{width:33px;height:33px}.top-actions svg{width:19px;height:19px}.clock-face{top:82px}.clock-face .eyebrow{font-size:7px;letter-spacing:2.6px}.wall-clock{--clock-base-size:60px;letter-spacing:-2px}.wall-clock .colon{margin:0 1px}.date-line{gap:8px;margin-top:9px;letter-spacing:.1px}.scene-status{font-size:7px;gap:6px;letter-spacing:1px}.scene-status time{letter-spacing:.6px}.view-controls{right:10px;top:48%;gap:2px}.view-controls .icon-button{width:29px;height:29px}.view-controls span{margin:4px 9px}.playback{bottom:92px}.playback-bar{padding:6px 6px;gap:4px;border-radius:11px;justify-content:center}.speed-button{font-size:10px}.speed-button span:not(.tiny-dot){font-size:8px}.speed-button .tiny-dot{display:none}.play-button{width:27px;min-width:27px}.playback-bar>.icon-button{width:26px;min-width:26px}.playback-caption{margin:0 10px 9px;font-size:9px}.playback-caption>span:last-child{font-size:9px}.footer{bottom:24px;right:20px;display:block}.signature{display:none}.planet-nav{gap:17px;overflow-x:auto;scrollbar-width:none;padding:4px 0 13px}.planet-nav::-webkit-scrollbar{display:none}.planet-nav button{font-size:11px;gap:5px;padding:5px 0}.planet-nav i{width:3px;height:3px}.settings-panel{right:16px;top:61px;width:264px;padding:0;max-height:none;overflow:hidden}.body-panel{left:11px;bottom:204px;width:230px;--body-pad-top:18px;--body-pad-right:20px;--body-pad-bottom:20px;--body-pad-left:20px}.body-panel h2{font-size:22px;margin-bottom:11px}.body-scroll>p{font-size:10px}.body-stats{margin-top:12px;padding-top:0}.body-stats strong{font-size:16px}.toast{bottom:209px;width:max-content;font-size:10px;max-width:calc(100% - 35px)}.modal{padding:29px 24px 23px;max-height:85dvh}.modal h2{font-size:22px}.modal p{font-size:11px}body.zen .clock-face{top:68px}}
@media(max-width:680px){.music-now{top:calc(100% + 3px);grid-template-columns:14px 120px 14px}.music-title{width:120px;font-size:9px}}
@media(max-width:1024px){.playback{width:max-content;max-width:calc(100% - 28px)}}
@media(max-width:365px){.speed-button{padding:10px 5px}.speed-button span:not(.tiny-dot){font-size:7px}.playback-bar{gap:3px}.playback{width:max-content;max-width:calc(100% - 20px)}.planet-nav{gap:14px}.wall-clock{--clock-base-size:54px}}
@media(max-height:630px) and (min-width:681px){.masthead{top:16px}.clock-face{top:17px}.wall-clock{--clock-base-size:54px}.date-line{margin-top:5px}.playback{bottom:42px}.playback-caption{display:none}.footer{bottom:12px}.body-panel{bottom:120px;left:18px;width:226px;--body-pad-top:18px;--body-pad-right:19px;--body-pad-bottom:19px;--body-pad-left:19px}.body-scroll>p{font-size:10px}.body-stats{margin-top:13px;padding-top:0}.settings-panel{top:60px;max-height:none;overflow:hidden}.view-controls{right:15px}.modal{max-height:90vh}body.zen .clock-face{top:17px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.loading{transition:none}}

/* Override inline canvas hover/drag cursors throughout idle viewing mode. */
body.zen:not(.pointer-awake){cursor:none!important}
body.zen:not(.pointer-awake) *{cursor:none!important}

/* Compact, scrollable speed group keeps every control reachable on narrow screens. */.speed-button{flex-shrink:0}
@media(max-width:680px){.speed-button{padding:11px 6px}.playback-caption{gap:8px}.playback-caption>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playback-caption>span:last-child{flex-shrink:0}}

/* Camera observation controls share the existing buttons and color tokens. */
.view-controls output{font-size:9px;color:#9ba7b8;text-align:center;padding:8px 0;min-width:38px;font-variant-numeric:tabular-nums}
.focus-button{margin-top:10px;border:1px solid var(--line);border-radius:8px;padding:11px 9px;color:var(--accent)}


@media(max-width:680px){.body-panel{max-height:calc(100dvh - 275px);overflow-y:hidden}}
@media(max-height:630px) and (min-width:681px){.body-panel{max-height:calc(100dvh - 190px);overflow-y:hidden}}

/* Shared contact identity in the version signature and settings. */
.contact-email{color:inherit;text-decoration:none;letter-spacing:.2px;white-space:nowrap}.contact-email:hover{color:var(--accent);text-decoration:underline}.support-heading{display:flex;justify-content:center;align-items:center;gap:9px;margin:3px 0 5px;color:#d8c7a4;font-size:11px}.coffee-cup{position:relative;display:inline-block;flex:0 0 auto;width:18px;height:12px;border:2px solid #d9c18f;border-radius:50% 50% 7px 7px/28% 28% 62% 62%;box-sizing:border-box;background:radial-gradient(ellipse at 50% 1px,rgba(217,193,143,.22) 0 40%,transparent 44%)}.coffee-cup:before{content:"";position:absolute;top:2px;right:-7px;width:6px;height:7px;border:2px solid #d9c18f;border-left:0;border-radius:0 6px 6px 0;box-sizing:border-box}.coffee-cup:after{content:"";position:absolute;top:-8px;left:4px;width:2px;height:6px;border-radius:50%;background:rgba(226,210,179,.72);box-shadow:5px 1px 0 rgba(226,210,179,.52);transform:skewX(-15deg)}.support-copy{display:block;margin:0 0 8px;color:#96a2b1;font-size:10px;text-align:center}.support-options{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:5px;margin:0 0 9px;font-size:11px}.support-link{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:0 9px;border:1px solid rgba(218,193,143,.22);border-radius:999px;background:rgba(218,193,143,.035);color:#d9c18f;text-decoration:none;font-size:11px;letter-spacing:.25px;white-space:nowrap;transition:color .25s ease,border-color .25s ease,background .25s ease}.support-link:hover{border-color:rgba(240,216,168,.5);background:rgba(218,193,143,.09);color:#f0d8a8}.social-links{display:flex;justify-content:center;align-items:center;gap:7px;margin:0 0 9px}.social-link{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(164,178,196,.18);border-radius:50%;background:rgba(255,255,255,.025);color:#8f9baa;transition:color .25s ease,border-color .25s ease,background .25s ease}.social-link:hover{color:#eed39f;border-color:rgba(238,211,159,.42);background:rgba(218,193,143,.08)}.social-link svg{width:14px;height:14px;fill:currentColor}.social-link:first-child svg path{fill:#0e141e}.support-credit{display:block;text-align:center}.support-identity{display:block;text-align:center}.support-credit{margin-top:2px}.support-identity{margin-top:2px}.support-qr-dialog{max-width:320px;--card-padding:28px 28px 26px;text-align:center}.support-qr-dialog h2{margin:3px 0 16px}.support-qr-dialog img{display:block;width:min(240px,70vw);height:auto;margin:0 auto 14px;border-radius:10px;box-shadow:0 8px 30px #0006}.kakao-pay-open{justify-content:center;min-width:150px;min-height:34px;margin:0 auto 10px;padding:0 18px}
.site-policy-links{display:grid;gap:0;margin-top:0;font-size:8px;letter-spacing:.75px}.site-policy-row{display:flex;gap:8px}.site-policy-links a{color:#647282;text-decoration:none;transition:color .2s ease}.site-policy-links a:hover,.site-policy-links a:focus-visible:where(html:not([data-focus-input="pointer"]) *){color:var(--accent)}
.desktop-ad-rail{position:fixed;right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:40;display:flex;width:234px;align-items:flex-end;gap:0;transform:translateX(202px);transition:transform .55s cubic-bezier(.22,.8,.28,1)}.desktop-ad-rail.is-open{transform:translateX(0)}.desktop-ad-toggle{position:relative;z-index:2;display:grid;flex:0 0 33px;width:33px;height:58px;margin-right:-1px;padding:5px 0;place-content:center;gap:3px;border:1px solid rgba(171,188,212,.15);border-right:0;border-radius:9px 0 0 9px;background:rgba(3,6,11,.94);color:#aeb8c5;font-size:8px;letter-spacing:1px;backdrop-filter:blur(12px);transition:border-color .25s ease,color .25s ease,background .25s ease}.desktop-ad-toggle::after{content:"";position:absolute;top:-1px;right:-2px;bottom:-1px;width:3px;background:inherit}.desktop-ad-toggle:hover,.desktop-ad-toggle[aria-expanded=true]{border-color:rgba(216,197,159,.34);background:rgba(7,11,17,.96);color:#dbc18d}.desktop-ad-arrow{font-family:Arial,sans-serif;font-size:18px;line-height:12px;transition:transform .45s cubic-bezier(.22,.8,.28,1)}.desktop-ad-rail:not(.is-open) .desktop-ad-arrow{transform:rotate(180deg)}.desktop-ad-panel{position:relative;flex:0 0 202px;width:202px;padding:0;border:1px solid rgba(171,188,212,.15);border-radius:11px 11px 11px 0;background:rgba(3,6,11,.94);box-shadow:0 18px 42px rgba(0,0,0,.52);overflow:hidden;backdrop-filter:blur(12px)}.desktop-ad-rail .adsbygoogle{display:block;width:200px;height:200px;background:transparent}.desktop-ad-preview{display:grid;width:200px;height:200px;place-content:center;gap:8px;border:0;background:radial-gradient(circle at 50% 42%,rgba(216,197,159,.055),transparent 58%);color:#8b96a5;text-align:center}.desktop-ad-preview strong{color:#b8a783;font-size:11px;letter-spacing:2.5px}.desktop-ad-preview span{font-size:9px;letter-spacing:1.2px}.desktop-ad-rail[hidden],.desktop-ad-rail .adsbygoogle[hidden],.desktop-ad-preview[hidden]{display:none!important}
.cookie-consent{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));z-index:80;display:grid;width:max-content;max-width:calc(100vw - 48px);grid-template-columns:minmax(0,max-content) auto;align-items:center;gap:18px;padding:12px 14px;border:1px solid rgba(171,188,212,.2);border-radius:11px;background:rgba(4,8,14,.9);box-shadow:0 16px 42px rgba(0,0,0,.48);color:#9eabb9;transform:translateX(-50%);backdrop-filter:blur(14px)}.cookie-consent[hidden]{display:none!important}.cookie-consent p{display:flex;min-width:0;max-width:540px;align-items:baseline;gap:11px;margin:0;font-size:10px;line-height:1.55;letter-spacing:.15px}.cookie-consent p span{min-width:0;overflow-wrap:anywhere}.cookie-consent strong{flex:0 0 auto;color:#dcc28e;font-size:11px;font-weight:500}.cookie-consent-actions{display:flex;align-items:center;gap:7px}.cookie-consent a,.cookie-consent button{padding:7px 10px;border:1px solid rgba(171,188,212,.18);border-radius:7px;background:transparent;color:#93a0af;font-size:9px;line-height:1;white-space:nowrap}.cookie-consent a:hover,.cookie-consent button:hover{border-color:rgba(216,197,159,.35);color:#dec797}.cookie-consent button.primary{border-color:rgba(216,197,159,.35);color:#dec797}
/* Consent controls share the existing card surface; reserve space for X. */
.cookie-consent{grid-template-columns:minmax(0,1fr) auto}
.cookie-consent-copy{min-width:0;max-width:540px}
.cookie-consent p.cookie-choice-note{display:block;margin-top:5px;font-size:9px;line-height:1.55;color:#93a0af;overflow-wrap:anywhere}
.cookie-consent button.cookie-consent-close{position:static;display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;margin:0;padding:0;border:0;background:transparent;font-size:22px;line-height:1}
.cookie-consent button.cookie-consent-close:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:1px solid currentColor;outline-offset:0}
.cookie-consent-actions button,.cookie-consent-actions a{min-height:32px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:760px){.cookie-consent{bottom:max(14px,env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 28px);grid-template-columns:minmax(0,1fr);gap:10px}.cookie-consent p{align-items:flex-start;flex-direction:column;gap:3px}.cookie-consent-actions{justify-content:flex-end}}
@media(max-width:1599px),(max-height:719px),(pointer:coarse){.desktop-ad-rail{display:none!important}}

.help-interaction{color:var(--muted);font-size:11px;line-height:1.9}.help-interaction>span{margin:0 7px;color:var(--muted)}

/* Keep the navigation centered independently of the signature/action widths. */
body.zen .ui.zen-awake:not(#body-panel),body.zen #clock-face.zen-awake .scene-status.ui{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transition:opacity 1s ease,visibility 0s linear 0s}
body.zen .panel.ui:not([hidden]){z-index:12}body.zen .panel.ui:not(#body-panel):not([hidden]){opacity:1!important;visibility:visible!important;pointer-events:auto!important;transition:opacity 1s ease,visibility 0s linear 0s}
@media(min-width:681px) and (max-width:1050px){.signature{position:absolute;left:0;bottom:32px;display:flex;width:max-content;overflow:visible;visibility:visible}}
@media(min-width:1051px) and (max-width:1280px){.signature{position:absolute;left:0;bottom:0;display:flex;width:max-content;overflow:visible;visibility:visible}}
@media(max-width:680px){.planet-nav{justify-content:safe center}}

/* One viewport toolbar, reused unchanged in zen. Its idle owner controls
   opacity, pointer targets, keyboard access and aria-hidden together. */
body.zen button{visibility:hidden!important;pointer-events:none!important}
body.zen input{visibility:hidden!important;pointer-events:none!important}
body.zen select{visibility:hidden!important;pointer-events:none!important}
body.zen a{visibility:hidden!important;pointer-events:none!important}
body.zen .ui:not(#body-panel) :is(button,input,select,a){visibility:inherit!important}
body.zen :is(.ui,#clock-face).zen-awake :is(button,input,select,a){visibility:visible!important;pointer-events:auto!important}
body.zen .panel:not([hidden]) :is(button,input,select,a){visibility:visible!important;pointer-events:auto!important}
.view-controls.ui-fade{transition:opacity 1s ease,visibility 0s linear 0s!important}
body.zen .view-controls{display:flex!important;z-index:10;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1s ease,visibility 0s linear 1s!important}
body.zen .view-controls.zen-awake{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transition:opacity 1s ease,visibility 0s linear 0s!important}
body.zen .view-controls button{visibility:inherit!important}
body.zen .view-controls.zen-awake button{pointer-events:auto!important}
body.zen dialog[open] :is(button,input,select,a){visibility:visible!important;pointer-events:auto!important}
body.zen #body-panel :is(button,input,select,a){visibility:visible!important;pointer-events:auto!important}
.settings-panel{max-height:none;overflow:hidden;--settings-height-limit:calc(100dvh - 100px)}.settings-scroll{box-sizing:border-box;overflow-x:hidden;overflow-y:auto;padding:23px;scrollbar-width:none;overscroll-behavior:contain}.settings-scroll::-webkit-scrollbar{display:none}
.settings-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px}.settings-consent,.settings-reset{width:100%;min-width:0;margin:0}.preset-dialog.reset-defaults-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0}.preset-actions.reset-defaults-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.reset-defaults-actions #reset-defaults-yes{color:var(--accent);border-color:#bd9a5b66;background:#bd9a5b15}

/* Bookmarks belong structurally to the viewport toolbar beneath Home. */
.view-controls{align-items:center;top:50%;transform:translateY(-50%);--tool-size:32px;--tool-width:50px;--preset-size:19px;--preset-hit:29px;--tool-gap:5px;gap:var(--tool-gap);max-height:calc(100dvh - 24px);overflow-y:auto;overflow-x:hidden;scrollbar-width:none;padding:6px;width:var(--tool-width)}
.view-controls::-webkit-scrollbar{display:none}
#travel-controls{right:auto;left:calc(var(--solar-left-edge) - (var(--tool-width) - var(--tool-size))/2)}

.travel-controls .icon-button{position:relative;padding:0;min-width:0;grid-template-columns:minmax(0,1fr);border:0;border-radius:9px;transition:background .18s,color .18s,opacity .18s}
.travel-controls .icon-button[data-limit="true"]{color:var(--accent);opacity:.35;background:transparent}
.travel-controls [data-travel="faster"],.travel-controls [data-travel="slower"],.travel-controls [data-travel="closer"],.travel-controls [data-travel="farther"]{touch-action:none;-webkit-touch-callout:none}
.travel-controls .scroll-cue{width:11px;height:7px;top:50%;bottom:auto;opacity:1;transform:translate(-50%,-50%);filter:none;background:currentColor;clip-path:polygon(evenodd,0 0,100% 0,50% 100%,0 0,18% 14%,50% 76%,82% 14%,18% 14%)}
.travel-controls [data-active="true"] .scroll-cue{background:var(--accent);clip-path:polygon(0 0,100% 0,50% 100%)}
.travel-controls .scroll-cue-up{transform:translate(-50%,-50%) rotate(180deg)}
.travel-controls .range-reset{opacity:calc(.5 + .5 * var(--reset-light,1));transition:opacity .15s,border-color .18s,background .18s}
.travel-controls .range-reset::before{width:6px;height:6px;opacity:var(--reset-light,1)}
.travel-controls .range-reset::after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;border:1px solid currentColor;border-radius:50%;transform:translate(-50%,-50%);opacity:.5;pointer-events:none}
.travel-controls .range-reset:disabled::before{opacity:0;box-shadow:none}
.travel-plus::before,.travel-plus::after,.travel-minus::before{content:"";position:absolute;left:50%;top:50%;width:10px;height:1.4px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%)}
.travel-plus::after{transform:translate(-50%,-50%) rotate(90deg)}

.view-controls .icon-button{flex:0 0 var(--tool-size);width:var(--tool-size);height:var(--tool-size);margin:0}
.view-controls #zoom-value{padding:0;min-width:0;font-size:10px;line-height:1;margin-bottom:5px}
.camera-presets{display:flex;position:static;flex-direction:column;align-items:center;gap:var(--tool-gap);margin:0;width:100%}
.camera-presets .camera-preset{position:relative;display:grid;place-items:center;isolation:isolate;width:var(--preset-hit);height:var(--preset-hit);min-width:var(--preset-hit);padding:0;border:none;background:transparent;font-size:10px;font-variant-numeric:tabular-nums;color:var(--muted)}
.camera-preset::before{content:"";position:absolute;inset:calc((var(--preset-hit) - var(--preset-size))/2);border:1px dashed var(--line);border-radius:50%;background:rgba(9,14,23,.64);z-index:-1}
.camera-preset:hover::before{border-color:var(--accent);background:rgba(185,150,97,.16)}
.camera-preset.saved{color:var(--accent)}
.camera-preset.saved::before{border-style:solid;border-color:rgba(225,199,150,.45);background:rgba(185,150,97,.12)}
.camera-preset.saved::after{content:"";position:absolute;right:6px;bottom:6px;width:3px;height:3px;border-radius:50%;background:var(--accent)}
.view-controls .rotate-button{border:1px solid transparent}
.view-controls .rotate-button[aria-pressed=true]{color:var(--accent);background:rgba(185,150,97,.15);border-color:rgba(225,199,150,.45)}
.rotation-mode-toggle .rotation-icon{display:none}
.rotation-mode-toggle[data-mode=random] .rotation-icon-random,.rotation-mode-toggle[data-mode=left] .rotation-icon-left,.rotation-mode-toggle[data-mode=right] .rotation-icon-right{display:block}
.rotation-mode-toggle[aria-pressed=false]{color:rgba(154,167,184,.72)}
.camera-mode-toggle{border:1px solid transparent}
.camera-mode-toggle .mode-icon{display:none}
.camera-mode-toggle[data-mode=normal] .mode-icon-normal,.camera-mode-toggle[data-mode=actual] .mode-icon-actual{display:block}
.camera-mode-toggle[aria-pressed=true]{color:var(--accent);background:rgba(185,150,97,.15);border-color:rgba(225,199,150,.45)}
#zen-toggle{margin-top:0;border:1px solid var(--line)}
@media(max-width:680px){.view-controls{--tool-size:29px;--tool-width:43px;--preset-size:16.5px;--preset-hit:27px;--tool-gap:3px}.view-controls svg{width:16px;height:16px}}
@media(max-height:480px){.view-controls{--tool-size:27px;--preset-hit:23px;--preset-size:17px;--tool-gap:1px}}
.timezone-readout{font-size:10px;letter-spacing:.7px;color:#9aabc0;white-space:nowrap}
.preset-dialog{position:fixed;inset:auto;margin:0;box-sizing:border-box;width:286px;max-width:calc(100vw - 16px);padding:16px;border:1px solid var(--line);border-radius:12px;color:var(--fg)}
.preset-dialog::backdrop{background:transparent}
.preset-dialog h2{margin:0 0 9px;font-weight:500;font-size:13px;line-height:1.5;color:#e8dac3}
.preset-dialog p{margin:0 0 17px;font-size:11px;line-height:1.7;color:var(--muted)}
.preset-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.preset-actions button{min-height:36px;padding:8px 4px;border-radius:7px;border:1px solid var(--line);background:#ffffff05;color:#b9c5d4;font-size:11px}
.preset-actions #preset-apply{color:var(--accent);border-color:#bd9a5b66;background:#bd9a5b15}
.preset-actions #preset-save{color:var(--accent);border-color:#bd9a5b66;background:#bd9a5b15}
.preset-actions #preset-delete{color:#efb29c;border-color:#a06d594f;background:#9b574a1a}
.preset-actions button:not(:disabled):hover{background:#ffffff12}
.preset-actions button:disabled{opacity:.32;cursor:not-allowed}
.mode-toggle[aria-pressed=true]{color:var(--accent);border-color:#bd9a5b66;background:#bd9a5b15}
@media(max-width:680px){.timezone-readout{font-size:9px}}


/* A permanent ninth toolbar control must not overlap playback on short phones. */
@media(max-width:680px) and (max-height:700px){.view-controls{top:calc(50% - 28px)}}

/* Keep the date and active-region label readable beneath the clock. */
.date-line{font-size:13px;margin-top:3px}
.date-line .timezone-readout{font-size:inherit}
.date-line button{font-size:12px}
@media(max-width:680px){.date-line{font-size:12px}.date-line button{font-size:11px}}
@media(max-height:630px) and (min-width:681px){.date-line{font-size:12px}}

.language-control{position:relative;display:grid;place-items:center}.language-control:has(.language-menu:not([hidden]))::after{content:"";position:absolute;top:100%;left:0;width:100%;height:6px}
.toast{margin-bottom:-20px}
.language-menu{display:flex;flex-direction:column;position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);height:min(318px,calc(100vh - 95px));max-height:min(318px,calc(100vh - 95px));padding:0;overflow:hidden;border:1px solid rgba(171,188,212,.17);border-radius:12px;z-index:20}
.language-list{position:relative;flex:1;min-height:0}
.language-scroll{height:100%;overflow-x:hidden;overflow-y:auto;padding:6px;scrollbar-width:none;overscroll-behavior:contain}.language-scroll::-webkit-scrollbar{display:none}
.language-menu button{display:flex;gap:8px;align-items:center;width:100%;min-height:34px;padding:7px 8px;border-radius:7px;background:transparent;color:#909cab;text-align:left}
.language-menu button:hover{background:rgba(165,183,204,.10);color:#e8d8ba}
.language-menu button:focus-visible:where(html:not([data-focus-input="pointer"]) *){background:rgba(165,183,204,.10);color:#e8d8ba}
.language-menu button[aria-checked=true]{background:rgba(205,175,121,.12);color:#e7cd9b}
.language-menu .language-auto{flex:none;width:calc(100% - 12px);margin:6px 6px 4px;border-bottom:1px solid rgba(171,188,212,.12);border-radius:7px 7px 3px 3px}
.language-menu strong{font-size:11px;font-weight:500;letter-spacing:.8px}
.language-menu button span{font-size:11px;white-space:nowrap}
.language-scroll button span{white-space:nowrap;line-height:1.25}.language-scroll button[data-language="do"] span{white-space:pre-line}
.language-menu.can-scroll-up>.language-list>.scroll-cue-up,.language-menu.can-scroll-down>.language-list>.scroll-cue-down{opacity:1}
@media(max-width:680px){.language-menu{left:0;transform:none;width:max-content}}
.language-menu.opening-menu{width:max-content;min-width:0;max-width:calc(100vw - 32px);height:auto;max-height:none;padding:6px}
.language-menu.opening-menu button{display:block;padding:9px 12px;font-size:11px;white-space:normal}
@media(max-width:680px){.language-menu.opening-menu{left:auto;right:0;transform:none}}

/* Consolidated component layer. Former version overlays now have one owner. */
.clock-face{top:56px}
body.zen .clock-face{top:56px}
.playback-caption{justify-content:flex-end}
.playback-bar{gap:7px;padding-left:8px;padding-right:8px;background:transparent;border-color:rgba(164,178,196,.18);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.speed-control{display:flex;align-items:center;gap:8px;min-width:305px}
.solar-range{appearance:none;-webkit-appearance:none;width:100%;height:20px;padding:0;background:transparent;cursor:pointer;margin:0}
.solar-range::-webkit-slider-runnable-track{height:2px;background:var(--range-track);border-radius:2px}
.solar-range::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border:0;border-radius:50%;background:var(--range-thumb);margin-top:-5px;box-shadow:0 0 0 3px var(--range-halo)}
.solar-range::-moz-range-track{height:2px;background:var(--range-track);border:0;border-radius:2px}
.solar-range::-moz-range-progress{height:2px;background:var(--range-track);border:0;border-radius:2px}
.solar-range::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:var(--range-thumb);box-shadow:0 0 0 3px var(--range-halo)}
.solar-range:disabled{opacity:.42;cursor:not-allowed}
.speed-control .solar-range{width:238px}.speed-control>.range-reset{margin-left:-4px}.body-size-control .range-reset:disabled{cursor:default}
#overview-orbit-gap-control{padding-top:11px}
.speed-mode-button{min-width:42px;padding:7px 9px;border-radius:6px;background:transparent;color:#8b96a5;font-size:11px;border:1px solid rgba(171,188,212,.10)}
.speed-mode-button:hover{background:rgba(205,175,121,.18);color:#f0d8a7}
.speed-mode-button.active{color:#ead09d;border-color:rgba(171,188,212,.12)}
.speed-mode-button:not(.active):hover{background:#ffffff09;color:#c9d1dc}
.playback{transform:translateX(-50%) scale(.9);transform-origin:50% 100%}
.signature{font-variant-numeric:tabular-nums}
.modal-note{font-variant-numeric:tabular-nums}
:root{--clock-font:"Aptos Display","Segoe UI Light","Segoe UI",Arial,sans-serif}
.wall-clock{font-family:var(--clock-font);font-variant-numeric:tabular-nums lining-nums;display:inline-flex;align-items:center;position:relative;pointer-events:auto;cursor:pointer}
body.zen .clock-face .eyebrow{color:#8d918f}
.wall-clock .colon{margin-left:10px;margin-right:10px;position:static;top:auto;align-self:center;line-height:1;transform:translateY(-.02em)}
body.zen #timezone-button{display:inline-block!important;visibility:visible!important;opacity:1!important}
.wall-clock #seconds-group:not([hidden]){display:inline-flex;align-items:center}
.wall-clock .ampm{position:absolute;left:100%;bottom:calc(.16em + 10px);font-family:"Segoe UI",Arial,sans-serif;font-size:.16em;font-weight:400;letter-spacing:1.4px;color:#8f9aa7;margin-left:12px;cursor:pointer}
.speed-button.active{background:transparent}
.speed-mode-button.active{background:transparent}
#live-button{display:inline-flex;align-items:center;padding-left:8px}#live-button .tiny-dot{flex-shrink:0}#live-button span:not(.tiny-dot){font-size:12px}
#zen-toggle{background:transparent;border-color:transparent}
#zen-toggle[aria-pressed=true]{background:transparent;border-color:transparent}

/* Shared card surface and scrolling behavior. */
.modal{overflow:hidden;padding:0;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:12;margin:0}
.modal::backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.modal-scroll{box-sizing:border-box;max-height:85vh;overflow-x:hidden;overflow-y:auto;padding:var(--card-padding,34px 34px 26px);scrollbar-width:none;overscroll-behavior:contain}
.modal-scroll::-webkit-scrollbar{display:none}
.modal>.close-button{position:absolute;right:13px;top:12px;z-index:4}
.modal>form>.close-button{position:absolute;right:13px;top:12px;z-index:4}
.modal>.close-button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:#9eabba;line-height:1}
.modal>form>.close-button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:#9eabba;line-height:1}
.modal>.close-button:hover{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:#9eabba;line-height:1}
.modal>form>.close-button:hover{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:#9eabba;line-height:1}
.modal>.close-button:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:1px solid rgba(233,200,141,.72);outline-offset:3px;border-radius:50%;background:transparent}
.modal>form>.close-button:focus-visible:where(html:not([data-focus-input="pointer"]) *){outline:1px solid rgba(233,200,141,.72);outline-offset:3px;border-radius:50%;background:transparent}
.scroll-cue{position:absolute;left:50%;z-index:3;width:13px;height:9px;background:center/100% 100% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 11'%3E%3Cpath d='M1 1H14L7.5 10Z' fill='%23e3c58d' stroke='%23e3c58d' stroke-width='1.4' stroke-linejoin='round'/%3E%3C/svg%3E");transform:translateX(-50%);font-size:0;line-height:0;opacity:0;filter:drop-shadow(0 0 5px rgba(227,197,141,.3));transition:opacity .16s;pointer-events:none}
.scroll-cue::before{content:"";position:absolute;width:28px;height:28px;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid transparent;border-radius:50%;transition:border-color .16s;background:transparent;box-sizing:border-box}
.scroll-cue.scroll-cue-enabled{pointer-events:auto;cursor:pointer}
.scroll-cue-enabled:hover::before,.scroll-cue-enabled:focus-visible::before{border-color:rgba(227,197,141,.8)}
.scroll-cue:focus-visible{outline:none}
.scroll-cue-up{top:11px;transform:translateX(-50%) rotate(180deg)}.scroll-cue-down{bottom:10px}
.can-scroll-up>.scroll-cue-up{opacity:1}
.can-scroll-down>.scroll-cue-down{opacity:1}

/* Language, release-history and selected-body components. */
.language-toggle{width:44px;font-size:11px;font-weight:500;letter-spacing:1px;color:#94a0af}
.source-link{color:inherit;text-decoration:none;white-space:nowrap}.source-link:hover{color:var(--accent);text-decoration:underline}
.release-notes-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin:-5px 0 8px;padding:10px 1px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;color:#c8d0da;font-size:11px;letter-spacing:.3px;text-align:left}
.release-notes-toggle:hover{color:var(--accent)}
.release-notes-toggle-mark{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border:1px solid rgba(171,188,212,.18);border-radius:50%;background:transparent;color:#94a0af;transition:color .18s,border-color .18s,background .18s}
.release-notes-toggle-mark::before{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:6px solid currentColor;transform:translateY(1px)}
.release-notes-toggle:hover .release-notes-toggle-mark{color:var(--accent);border-color:rgba(225,199,150,.42);background:rgba(185,150,97,.11)}
.release-notes-toggle[aria-expanded=true] .release-notes-toggle-mark{color:var(--accent);border-color:rgba(225,199,150,.42);background:rgba(185,150,97,.11)}
.release-notes-panel{margin:0 0 19px;padding:4px 0 17px;border-bottom:1px solid var(--line);background:transparent;animation:release-notes-in .24s ease both}
.release-notes-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:31px}
.release-notes-heading{display:flex;align-items:baseline;gap:7px;min-width:0}
.modal .release-notes-heading h3{margin:0;color:var(--accent);font-size:13px;font-variant-numeric:tabular-nums}
.release-notes-heading small{color:#7f8997;font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}
.step-navigation{display:flex;align-items:center;gap:6px}
.step-navigation button{position:relative;width:29px;height:28px;padding:0;border:1px solid rgba(171,188,212,.14);border-radius:7px;background:transparent;color:#aab5c2;font-size:0;line-height:0}
.step-navigation button::before{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform-origin:center}
.step-navigation .step-previous::before{transform:translate(-42%,-50%) rotate(135deg)}
.step-navigation .step-next::before{transform:translate(-58%,-50%) rotate(-45deg)}
.step-navigation button:not(:disabled):hover{border-color:rgba(233,200,141,.35);color:var(--accent);background:rgba(233,200,141,.035)}
.step-navigation button:disabled{opacity:.24}
#release-notes-position{min-width:37px;color:#727e8c;font-size:9px;text-align:center;font-variant-numeric:tabular-nums}
.eclipse-control{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;margin-top:8px;padding:7px 8px;border:1px solid var(--line);border-radius:7px;color:#9da9b8}
.eclipse-control>span{flex:none;width:100%;min-width:0;font-size:10px;letter-spacing:.25px;text-align:center;white-space:nowrap}.eclipse-navigation{flex:none;gap:4px}.eclipse-navigation button{width:27px;height:26px}.eclipse-navigation output{min-width:76px;color:#96a3b2;font-size:9px;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}
.eclipse-control .event-heading{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:4px;width:100%;font-size:10px;line-height:1.25;text-align:center;overflow-wrap:anywhere}.event-heading>span{grid-column:2;min-width:0}.event-heading .range-reset{grid-column:3;justify-self:start}.alignment-control .eclipse-navigation{flex:none}
.alignment-control output.space-alignment{color:#e7bd70!important;text-shadow:0 0 8px rgba(231,189,112,.24)}
.alignment-control output.sky-alignment{color:#96a3b2!important}
.release-notes-list{display:grid;gap:6px;min-height:82px;margin:9px 0 0;padding:0;list-style:none;color:#aeb9c8;font-size:11px;line-height:1.55}
.release-notes-list li{position:relative;padding-left:13px;word-break:keep-all}
.release-notes-list li::before{content:"";position:absolute;left:1px;top:.7em;width:3px;height:3px;border-radius:50%;background:rgba(233,200,141,.72);box-shadow:0 0 6px rgba(233,200,141,.24)}
/* Release archive link. */
.release-notes-all{display:flex;align-items:center;justify-content:center;min-height:82px;margin:9px 0 0;border:1px solid rgba(225,199,150,.22);border-radius:9px;background:rgba(185,150,97,.07);color:var(--accent);font-size:11px;letter-spacing:.15px;text-align:center;text-decoration:none;transition:border-color .18s,background .18s,color .18s}
.release-notes-all:hover,.release-notes-all:focus-visible:where(html:not([data-focus-input="pointer"]) *){border-color:rgba(225,199,150,.48);background:rgba(185,150,97,.13);color:#f0d9ad}
.release-notes-all[hidden]{display:none}
/* End release archive link. */
.help-overview{margin:8px 0 0;padding:2px 0 19px;border-bottom:1px solid var(--line);background:transparent}
.modal .help-overview h3{margin:10px 0 9px;color:var(--accent);font-size:14px;letter-spacing:.1px}
.modal .help-overview h4{margin:17px 0 8px;color:#e4e7ed;font-size:12px;font-weight:500}
.help-overview p{line-height:1.75}
.help-overview [data-i18n="helpIntroPurpose"],.help-overview [data-i18n="helpIntroExperience"],.help-feature-list li{white-space:pre-line}
.help-feature-list{display:grid;gap:7px;margin:0;padding:0;list-style:none;color:#aeb9c8;font-size:11px;line-height:1.65}
.help-feature-list li{position:relative;padding-left:13px;word-break:keep-all}
.help-feature-list li::before{content:"";position:absolute;left:1px;top:.72em;width:3px;height:3px;border-radius:50%;background:rgba(233,200,141,.72);box-shadow:0 0 6px rgba(233,200,141,.24)}
.help-learning-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:17px 0 0}.help-learning-links a{display:flex;min-height:34px;align-items:center;justify-content:center;padding:6px 9px;border:1px solid rgba(171,188,212,.16);border-radius:8px;background:rgba(255,255,255,.018);color:#9da9b8;text-decoration:none;font-size:9px;letter-spacing:1px;text-align:center;transition:border-color .2s,background .2s,color .2s}.help-learning-links a:hover,.help-learning-links a:focus-visible{border-color:rgba(232,199,131,.34);background:rgba(232,199,131,.055);color:var(--accent)}
@keyframes release-notes-in{from{opacity:0}to{opacity:1}}
.body-panel{position:fixed;top:87px;bottom:auto!important;transform:none!important;transform-origin:top left;max-height:calc(100dvh - var(--body-panel-top,120px) - 16px);overflow-y:hidden;scrollbar-width:none;overscroll-behavior:contain}
.body-panel::-webkit-scrollbar{display:none}
#clock-font{width:102px;min-width:0}
label[for="clock-font"]{white-space:nowrap}
html[lang="ja"] .body-panel{width:286px;--body-pad-right:28px}
html[lang="ja"] .body-scroll>p{word-break:normal;overflow-wrap:anywhere;line-break:strict}
.planet-nav button.satellite::before{content:'-'}

@media(min-width:1800px){.clock-face{top:70px}body.zen .clock-face{top:70px}}
@media(max-width:760px){.speed-control{min-width:218px;gap:6px}.speed-control .solar-range{width:158px}.playback-bar{max-width:calc(100vw - 18px)}.wall-clock .colon{margin-left:6px;margin-right:6px}.wall-clock .ampm{margin-left:8px}}
@media(max-width:680px){#live-button span:not(.tiny-dot){font-size:11px}.language-toggle{width:39px;font-size:10px;letter-spacing:.7px}.modal-scroll{padding:var(--card-padding,29px 24px 23px)}.settings-panel{--settings-height-limit:calc(100dvh - 80px)}.settings-scroll{padding:21px}.release-notes-header{gap:7px}.release-notes-heading{gap:5px}.release-notes-heading small{font-size:9px}.release-notes-list{font-size:10px;min-height:78px}html[lang="ja"] .body-panel{width:min(242px,calc(100vw - 62px));--body-pad-right:24px}}
@media(max-height:630px) and (min-width:681px){.settings-panel{--settings-height-limit:calc(100vh - 75px)}}
/* Common card surface and independent scrolling content. */
:root{--card-background:linear-gradient(145deg,hsla(215 37% 11.76%/.46),hsla(220 45% 7.84%/.46));--card-border:rgba(193,215,236,.12);--card-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 18px 54px rgba(0,0,0,.07);--card-filter:blur(6px) saturate(1.04)}
.card-surface,.toast.card-surface{border-color:var(--card-border);background:var(--card-background);box-shadow:var(--card-shadow);backdrop-filter:var(--card-filter);-webkit-backdrop-filter:var(--card-filter)}
.card-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain}
.card-scroll::-webkit-scrollbar{display:none}
.card-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.settings-panel.card-surface{display:flex;flex-direction:column;max-height:var(--settings-height-limit);overflow:hidden}
.settings-panel>.panel-heading{flex:none;margin:0;padding:23px 23px 17px}
.settings-scroll.card-scroll{padding-top:0}
.body-panel.card-surface{display:flex;flex-direction:column;padding:0;overflow:hidden}
.body-panel>.close-button{z-index:4}
.body-panel.sky-feature .body-stats,.body-panel.sky-feature #body-size-control,.body-panel.sky-feature #ring-tour-button,.body-panel.sky-feature #eclipse-control,.body-panel.sky-feature #alignment-control,.body-panel.sky-feature #body-card-options{display:none!important}
#body-category{display:block;min-height:16px;line-height:16px;padding-right:24px}
.body-scroll{padding:var(--body-pad-top) var(--body-pad-right) var(--body-pad-bottom) var(--body-pad-left)}
.support-qr-dialog .modal-scroll img{max-width:100%}
@media(max-width:360px){.support-options{gap:4px}.support-options .support-link{padding:0 6px;letter-spacing:0}}
.guestbook-dialog{width:min(656px,calc(100% - 36px));max-width:656px;height:85vh;max-height:85vh}.guestbook-dialog[open]{display:block}.guestbook-dialog-scroll{height:100%;overflow-x:hidden;overflow-y:auto;padding:0 30px 26px;scrollbar-width:thin;scrollbar-color:rgba(171,188,212,.3) transparent;overscroll-behavior:contain}.guestbook-dialog-scroll::-webkit-scrollbar{width:7px}.guestbook-dialog-scroll::-webkit-scrollbar-thumb{border-radius:8px;background:rgba(171,188,212,.3)}.guestbook-app{min-width:0}.guestbook-sticky-header{position:sticky;z-index:3;top:0;display:flow-root;padding-top:28px;background:transparent}.guestbook-app h2{margin:2px 42px 8px 0;font-size:23px}.guestbook-eyebrow{margin:0 42px 8px 0!important;color:#c9aa72;font-size:10px!important;letter-spacing:2.2px;text-transform:uppercase}.guestbook-lead{margin:0 0 20px!important;color:#aeb8c8;line-height:1.75}.guest-form{position:relative;display:grid;gap:13px;padding:18px;border:1px solid var(--line);border-radius:14px;background:rgba(5,10,17,.34)}.guest-form label{display:grid;gap:5px;color:#8e9bac;font-size:11px}.guest-form input,.guest-form textarea{width:100%;max-width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#050b13;color:var(--fg);font:inherit;user-select:text;-webkit-user-select:text}.guest-form textarea{min-height:76px;resize:vertical}.guestbook-dialog .guest-form textarea.guest-autogrow{height:auto;min-height:37px;max-height:180px;overflow-y:hidden;resize:none}.guest-form label.guest-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.guest-form-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#8491a1;font-size:10px}.guest-form button,.guest-actions button{padding:7px 13px;border:1px solid var(--line);border-radius:8px;background:rgba(10,18,28,.6);color:var(--accent);font:inherit}.guest-note{margin:0!important;color:#788596;font-size:9px!important;line-height:1.65}.guest-form-footer+.guest-note{margin-top:-6px!important}.guest-status{min-height:18px;margin:13px 0 0!important;color:#cbb17d;font-size:10px!important}.guest-entry{padding:19px 0;border-bottom:1px solid var(--line)}.guest-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 13px;color:#7e8b9c;font-size:10px}.guest-meta strong{color:#d7dee8;font-size:12px;font-weight:500;overflow-wrap:anywhere}.guest-meta time{margin-left:auto}.guest-message{margin:10px 0!important;color:#aeb9c8;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}.guest-badge{color:var(--accent);font-size:8px;letter-spacing:1px}.guest-actions{display:flex;gap:8px}.guest-actions button{padding:4px 10px;font-size:10px}.guest-actions [aria-pressed=true]{color:#f1b0a3}.guest-replies{--guest-reply-section-gap:20px;margin-top:var(--guest-reply-section-gap);padding:0 0 0 15px;border-left:1px solid var(--line)}.guest-replies>div>.guest-entry:first-child{padding-top:0}.guest-replies .guest-pagination:empty{display:none}.guest-reply-form{margin-top:var(--guest-reply-section-gap);padding:14px}.guest-reply-form[hidden]{display:none}.guest-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin:22px 0 4px}.guest-pagination .page-number{min-width:22px;padding:4px;border:0;background:transparent;color:#8793a3}.guest-pagination .page-number:hover{color:#d7dee8}.guest-pagination .page-number[aria-current="page"]{color:var(--accent);opacity:1}.guest-pagination .page-ellipsis{padding:4px 1px;color:#778393}.guest-pagination .page-arrow{position:relative;width:28px;height:28px;padding:0;border:0;background:transparent}.guest-pagination .page-arrow::before{position:absolute;left:50%;top:50%;width:14px;height:11px;content:"";background:center/100% 100% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='11' viewBox='0 0 15 11'%3E%3Cpath d='M1 1H14L7.5 10Z' fill='%23e3c58d' stroke='%23e3c58d' stroke-width='1.4' stroke-linejoin='round'/%3E%3C/svg%3E")}.guest-pagination .page-arrow-left::before{transform:translate(-50%,-50%) rotate(90deg)}.guest-pagination .page-arrow-right::before{transform:translate(-50%,-50%) rotate(-90deg)}.guest-pagination .page-arrow:disabled{opacity:.28}.guestbook-dialog>.close-button{background:transparent;border:1px solid rgba(193,215,236,.1);border-radius:50%}
.site-policy-dialog{width:min(820px,calc(100% - 36px));max-width:820px;height:min(82dvh,760px);max-height:82dvh}.site-policy-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}.site-policy-tabs{display:flex;align-items:center;justify-content:center;gap:7px;min-height:53px;padding:10px 52px 9px;border-bottom:1px solid rgba(193,215,236,.1)}.site-policy-tab{min-width:82px;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#7f8b9a;font-size:10px;letter-spacing:1.2px;transition:color .2s,border-color .2s,background .2s}.site-policy-tab:hover{color:#d6dce6;background:rgba(255,255,255,.025)}.site-policy-tab[aria-selected=true]{border-color:rgba(232,199,131,.22);background:rgba(232,199,131,.06);color:#e8c783}.site-policy-frame{display:block;width:100%;height:100%;min-height:0;border:0;background:transparent;color-scheme:dark}.site-policy-dialog>.close-button{background:rgba(5,10,17,.72);border:1px solid rgba(193,215,236,.1);border-radius:50%;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
@media(max-width:680px){.guestbook-dialog{width:calc(100% - 24px);height:85dvh;max-height:85dvh}.guestbook-dialog-scroll{padding:0 18px 20px}.guestbook-sticky-header{padding-top:25px}.guest-form{padding:14px}.guest-form-footer{align-items:flex-start;flex-direction:column}.guest-meta time{width:100%;margin-left:0}.guest-replies{padding-left:10px}.site-policy-dialog{width:calc(100% - 24px);height:86dvh;max-height:86dvh}.site-policy-tabs{justify-content:flex-start;gap:3px;min-height:49px;padding:8px 45px 7px 12px}.site-policy-tab{min-width:0;padding:8px 9px;font-size:9px;letter-spacing:.8px}}
.life-user-coin{position:relative;display:block;width:74.4px;height:84px;margin:9.6px auto 0;padding:0;border:0;border-radius:50%;background:transparent;perspective:504px;opacity:1;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.life-user-coin-canvas,.life-user-coin-face,.life-user-coin-side{filter:brightness(.8)}.life-user-coin:hover,.life-user-coin:focus-visible{opacity:1}.life-user-coin:focus-visible{outline:1px solid var(--accent);outline-offset:3.2px}.life-user-coin.is-dragging{cursor:grabbing}.life-user-coin-rotor{position:absolute;left:0;top:4.8px;display:block;width:74.4px;height:74.4px;transform-style:preserve-3d;will-change:transform}.life-user-coin-canvas{position:absolute;left:0;top:-4.8px;z-index:4;display:block;width:74.4px;height:84px;opacity:0;pointer-events:none}.life-user-coin.is-webgl .life-user-coin-canvas{opacity:1}.life-user-coin.is-webgl .life-user-coin-side,.life-user-coin.is-webgl .life-user-coin-face{display:none}.life-user-coin-side{position:absolute;left:50%;top:1.2px;z-index:3;display:block;width:6px;height:72px;border-radius:999px;background:linear-gradient(90deg,#756048 0%,#9b805e 18%,#d3bb91 36%,#fff0cc 50%,#cdb184 66%,#987957 82%,#6b533d 100%);box-shadow:0 0 1.2px rgba(250,235,204,.52),inset 0 1.2px 0 rgba(255,250,232,.58),inset 0 -1.2px 0 rgba(92,69,44,.48);transform:translateX(-50%) rotateY(90deg);backface-visibility:visible;pointer-events:none}.life-user-coin-face{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#080b0f;backface-visibility:hidden;-webkit-backface-visibility:hidden;isolation:isolate}.life-user-coin-face::after{position:absolute;inset:1.2px;z-index:2;box-sizing:border-box;border:2.4px solid #e5d3b0;border-radius:50%;content:"";box-shadow:inset 0 0 0 .66px rgba(255,248,226,.8),0 0 0 .54px rgba(128,101,67,.7),0 0 1.2px rgba(246,228,193,.42);pointer-events:none}.life-user-coin-front{transform:translateZ(3px)}.life-user-coin-back{transform:rotateY(180deg) translateZ(3px)}.life-user-coin-front img,.life-user-coin-back img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;clip-path:circle(45.5% at 50% 50%);pointer-events:none}.admin-dialog{width:min(410px,calc(100% - 32px));padding:24px;border:1px solid var(--line);border-radius:18px;background:#09111c;color:var(--fg)}.admin-dialog::backdrop{background:rgba(0,0,0,.65)}.admin-dialog h2{margin:0 0 20px}.admin-dialog .guest-form{border:0;padding:0}.admin-dialog p{margin:0;color:#f1b0a3}.admin-dialog button{cursor:pointer;padding:8px 16px;border:1px solid var(--line);border-radius:9px;background:rgba(10,18,28,.6);color:var(--accent);font:inherit}
@media(max-width:680px){.settings-panel>.panel-heading{padding:21px 21px 17px}}
.signature .scale-note-primary{white-space:pre}

/* The UFO cursor fades while the opening owns the camera. */
body.travel-cursor-active #universe,body.travel-cursor-active .loading.opening{cursor:var(--travel-cursor)!important}
body.travel-cursor-tracked #universe,body.travel-cursor-tracked .loading.opening{cursor:none!important}
#travel-cursor{position:fixed;left:0;top:0;width:32px;height:32px;background:center/contain no-repeat;pointer-events:none;z-index:201;opacity:0;will-change:transform,opacity}

/* Retain native control focus without promoting mouse input on shortcuts. */
html[data-focus-input="pointer"] :focus{outline:none}

.timezone-readout[aria-disabled="true"]{opacity:.35;cursor:not-allowed}

/* The constellation master follows the same single-toggle language as rotation. */
#constellations-toggle svg{width:15px;height:15px;fill:none}
#constellations-toggle[aria-pressed=true]{color:var(--accent)}
#constellations-toggle[aria-pressed=true] svg{fill:currentColor}

#planet-layer.solar-composited{visibility:hidden!important}
.rotation-control{position:relative;touch-action:manipulation;-webkit-touch-callout:none;user-select:none}
.rotation-choices{position:fixed;inset:auto;margin:0;display:flex;flex-direction:row-reverse;gap:var(--tool-gap);padding:4px;border:1px solid var(--card-border);border-radius:10px;background:transparent}
.rotation-choices[hidden],.rotation-choices button[hidden]{display:none}

.rotation-choices.ui-fade{transition:opacity .5s ease!important}

/* Shared card control typography; informational text keeps its own hierarchy. */
.body-panel{--card-control-font-size:12px}
.body-panel .body-size-heading,.body-panel .text-button,.body-panel .region-view-button,.body-panel .body-option-row,.body-panel .event-heading{font-size:var(--card-control-font-size)}

/* The body list shares card scroll cues and retains native touch scrolling. */
.footer{grid-template-columns:minmax(0,1fr) minmax(0,max-content) minmax(0,1fr)}
.planet-nav{position:relative;min-width:0;max-width:calc(100vw - 76px);padding:0 24px;overflow:visible;display:block}
.planet-nav-list{display:flex;align-items:center;justify-content:safe center;gap:inherit;column-gap:15px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;max-width:100%}
.planet-nav-list::-webkit-scrollbar{display:none}
.planet-nav-list>button{flex-shrink:0}
.planet-nav>.scroll-cue{top:50%;bottom:auto}
.planet-nav>.scroll-cue-up{left:6px;transform:translate(-50%,-50%) rotate(90deg)}
.planet-nav>.scroll-cue-down{left:auto;right:6px;transform:translate(50%,-50%) rotate(-90deg)}
@media(min-width:1800px){.planet-nav-list{column-gap:20px}}
@media(max-width:1050px){.planet-nav-list{column-gap:12px}.planet-nav{max-width:calc(100vw - 60px)}}
@media(max-width:680px){.planet-nav{max-width:100%}.planet-nav-list{column-gap:17px;padding:4px 0}}
@media(max-width:365px){.planet-nav-list{column-gap:14px}}
.guestbook-view-all{display:block;width:max-content;margin:18px auto 2px;color:#8d99a8;font-size:10px;letter-spacing:.08em}.guestbook-view-all:hover{color:var(--accent)}.guest-author-admin{color:var(--accent)!important}.guestbook-title-row{display:flex;align-items:center;gap:11px;margin:0 0 20px}.guestbook-title-row h2{margin:2px 0 0}.guestbook-support-icons{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-left:auto}.guestbook-support-icon{display:grid;place-items:center;height:28px;border-radius:5px;outline:1px solid transparent;outline-offset:2px;transition:outline-color .2s ease}.guestbook-support-icon:hover,.guestbook-support-icon:focus-visible{outline-color:rgba(218,193,143,.42)}.guestbook-support-icon img{display:block;max-width:100%;max-height:100%;object-fit:contain}.guestbook-coffee{width:22px}.guestbook-coffee img{width:auto;height:20px;max-width:none;max-height:none}.guestbook-kakaopay{width:48px}.guestbook-wechat{width:25px;margin-left:4px}.guest-admin-identity{display:inline-flex;width:max-content;min-height:34px;align-items:center;padding:7px 13px;border:1px solid rgba(218,193,143,.38);border-radius:9px;background:rgba(10,18,28,.48);color:var(--accent)!important;font-size:11px;line-height:1}.guest-admin-identity[hidden]{display:none}
.guestbook-dialog-scroll{scrollbar-width:none}.guestbook-dialog-scroll::-webkit-scrollbar{display:none}
.guestbook-visitor-summary{margin:0 42px 6px 0!important;color:var(--accent);font-size:11px!important;letter-spacing:.08em;line-height:1.35}.guestbook-visitor-summary strong{font-weight:500;font-variant-numeric:tabular-nums}.guestbook-admin-key{position:absolute;z-index:4;right:52px;top:13px;display:grid;width:32px;height:32px;padding:6px;place-items:center;border:0;background:transparent;color:#9eabba;line-height:0}.guestbook-admin-key svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.guestbook-admin-key:hover,.guestbook-admin-key:focus-visible{color:var(--accent)}.guestbook-admin-name{position:absolute;z-index:4;right:92px;top:24px;max-width:180px;color:#9aa6b5;font-size:8px;letter-spacing:.08em;line-height:1;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.guestbook-admin-name:hover,.guestbook-admin-name:focus-visible{color:var(--accent)}.guestbook-confirm-dialog{max-width:410px}.guestbook-confirm-dialog p{line-height:1.7}.guestbook-confirm-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px}.guestbook-confirm-actions button:last-child{border-color:#bd9a5b66;background:#bd9a5b15;color:var(--accent)}
.guest-compose-form{--guest-label-width:72px;--guest-action-width:68px;--guest-field-gap:14px}.guest-compose-form .guest-field-row{display:grid;grid-template-columns:var(--guest-label-width) minmax(0,1fr) var(--guest-action-width);gap:var(--guest-field-gap);align-items:stretch;min-width:0}.guest-compose-form .guest-field-caption{display:flex;align-items:center;justify-content:center;padding:9px 10px;border:1px solid var(--line);border-radius:9px;color:#aab5c4;text-align:center}.guest-compose-form .guest-message-row>.guest-field-caption{align-self:start}.guest-compose-form .guest-name-row>input{min-width:0}.guest-compose-form .guest-country{align-self:center;min-width:0;color:#96a2b1;font-size:10px;line-height:1.45;overflow-wrap:anywhere}.guest-compose-form .guest-message-control{position:relative;display:block;grid-column:2;min-width:0}.guest-compose-form .guest-message-control textarea{display:block;box-sizing:border-box;padding-bottom:27px}.guest-compose-form .guest-message-count{position:absolute;right:12px;bottom:8px;color:#788596;font-size:10px;font-variant-numeric:tabular-nums;pointer-events:none}.guest-compose-form .guest-message-row>button{align-self:end;min-height:38px}.guest-compose-form .guest-form-footer{display:block;margin-left:calc(var(--guest-label-width) + var(--guest-field-gap));margin-right:calc(var(--guest-action-width) + var(--guest-field-gap));text-align:right}.guest-compose-form .guest-form-footer .guest-note{margin:0!important}.guest-compose-form .guest-name-row>.guest-admin-identity{align-self:center;grid-column:2}.guest-compose-form .guest-name-row>input[hidden]{display:none}@media(max-width:520px){.guest-compose-form{--guest-label-width:60px;--guest-action-width:56px;--guest-field-gap:9px}.guest-compose-form .guest-field-row{grid-template-columns:var(--guest-label-width) minmax(0,1fr) var(--guest-action-width)}.guest-compose-form .guest-field-caption{padding:8px 6px}.guest-compose-form .guest-country{font-size:9px}.guest-compose-form .guest-form-footer{align-items:start}.guest-compose-form .guest-form-footer .guest-note{line-height:1.5}.guest-compose-form .guest-form-footer button{padding-right:10px;padding-left:10px}}
.guestbook-dialog .guest-form textarea.guest-autogrow{max-height:none}
.guest-compose-form{padding:0;border:0;border-radius:0;background:transparent}
.guest-compose-form .guest-message-action{grid-column:3;align-self:stretch;display:flex;min-width:0;flex-direction:column;justify-content:flex-end;gap:8px}.guest-compose-form .guest-message-action .guest-message-count{position:static;display:block;text-align:center}.guest-compose-form .guest-message-action>button{width:100%;min-height:38px;background:transparent}.guest-compose-form .guest-message-control textarea{padding-bottom:10px}.guest-compose-form .guest-form-footer{margin-right:0;margin-left:0;text-align:center}.guestbook-app>.guest-status{text-align:center}
.guest-compose-form .guest-field-caption{align-self:start;box-sizing:border-box}.guest-compose-form .guest-country{text-align:center}.guest-compose-form .guest-message-action>button{white-space:nowrap;word-break:keep-all}@media(max-width:520px){.guest-compose-form{--guest-label-width:59px;--guest-action-width:55px}.guest-compose-form .guest-field-caption{padding-right:5px;padding-left:5px}.guest-compose-form .guest-message-action>button{padding-right:4px;padding-left:4px;font-size:10px;line-height:1.2}}
[data-guestbook-root]>[data-guest-status]{text-align:center}
.guest-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px}.guest-action-replies{position:relative;display:inline-block;width:13px;height:10px;border:1px solid currentColor;border-radius:4px}.guest-action-replies::after{position:absolute;left:2px;bottom:-4px;width:4px;height:4px;border-left:1px solid currentColor;border-bottom:1px solid currentColor;content:"";transform:skewY(-35deg)}

/* Shared top edge for guide, guestbook and the body/constellation card. */
:root{--content-card-top:7.5dvh}
#help-dialog,#guestbook-dialog{top:var(--content-card-top);transform:translateX(-50%)}
.body-panel{top:var(--content-card-top)}

/* Shared horizontal offset for planet and constellation cards. */
.body-panel{margin-left:-11px}

/* Keep guestbook entries below the translucent fixed header without changing its card material. */
.guestbook-dialog[open]{display:flex;flex-direction:column}
.guestbook-app{display:flex;height:100%;min-height:0;flex-direction:column}
.guestbook-sticky-header{position:relative;flex:none;padding:28px 30px 0}
.guestbook-dialog-scroll{flex:1;min-height:0;height:auto;padding:0 30px 26px}
@media(max-width:680px){.guestbook-sticky-header{padding:25px 18px 0}.guestbook-dialog-scroll{padding:0 18px 20px}}

/* Shared CSS travel icons, including the tracked scene cursor. */
.ufo-icon{position:relative;display:inline-block;width:26px;height:18px;flex:none;pointer-events:none}
.ufo-icon i{position:absolute;display:block;box-sizing:border-box}
.ufo-dome{left:7px;top:2px;width:12px;height:12px;border:1.3px solid currentColor;border-radius:50%;clip-path:inset(0 0 50% 0)}
.ufo-hull{left:0;top:8px;width:26px;height:4px;background:currentColor;clip-path:polygon(0 75%,12% 40%,28% 14%,50% 0,72% 14%,88% 40%,100% 75%,76% 93%,50% 100%,24% 93%)}
.ufo-icon::after{content:"";position:absolute;left:0;top:11px;width:26px;height:4px;background:currentColor;clip-path:polygon(0 0,29% 69%,29% 100%,12% 52%,0 8%,100% 8%,88% 52%,71% 100%,71% 69%,100% 0)}
.ufo-keel{left:9px;top:13px;width:8px;height:2px;border-radius:50%;background:currentColor}
#opening-toggle .ufo-icon{transform:translateY(-2.3px) scale(calc(24 / 26));transform-origin:center}
#opening-toggle .ufo-icon::before{content:"";position:absolute;left:11px;top:18px;width:4px;height:5px;background:currentColor;opacity:.72;filter:blur(.45px);clip-path:polygon(24% 0,76% 0,64% 100%,36% 100%)}
#opening-toggle .ufo-keel::before,#opening-toggle .ufo-keel::after{content:"";position:absolute;top:5px;width:4px;height:5px;background:currentColor;opacity:.62;filter:blur(.55px);clip-path:polygon(22% 0,78% 0,62% 100%,38% 100%)}
#opening-toggle .ufo-keel::before{left:-4px;transform:rotate(27deg)}
#opening-toggle .ufo-keel::after{right:-4px;transform:rotate(-27deg)}
.warp-icon{display:inline-block;position:relative;width:24px;height:24px;pointer-events:none}
.warp-icon i{position:absolute;left:11px;top:10px;width:1.5px;height:5px;background:currentColor;border-radius:2px;transform:rotate(calc(var(--ray)*45deg)) translateY(-8px);transform-origin:50% 2px}
.warp-icon i:nth-child(even){height:4px}
#travel-cursor{display:flex;align-items:center;justify-content:center;color:#d9e6f3}
#travel-cursor .ufo-icon{transform:scale(1.15)}

.view-controls .ufo-icon,.view-controls .warp-icon{margin:0;background:transparent}
.view-controls .ufo-icon{height:18px}
.view-controls .warp-icon{height:24px}

#travel-controls .ufo-icon{transform:scale(calc(21 / 26));transform-origin:center}
#travel-controls .warp-icon{transform:scale(calc(19 / 24));transform-origin:center}

/* State changes dim smoothly while disabled input remains blocked immediately. */
#travel-controls .icon-button{transition:background .25s ease,color .35s ease,opacity .4s ease}
#travel-controls .range-reset::before,#travel-controls .range-reset::after{transition:opacity .4s ease,background .35s ease,box-shadow .35s ease}
@media(prefers-reduced-motion:reduce){#travel-controls .icon-button,#travel-controls .range-reset::before,#travel-controls .range-reset::after{transition:none}}
