:root{--void:#06060c;--line:#1a1a28;--line-2:#262638;--dim:#5a5a75;--text:#b8b8d0;--text-bright:#e8e8f5;--red:#ff2d3e;--red-soft:#ff5c7a;--sun:#ffb04d;--sun-core:#ffd98a;--moon:#9fb4e0;--moon-core:#d6e2ff}*{box-sizing:border-box;margin:0;padding:0}html,body{overscroll-behavior:none}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}body{color:var(--text);background:#04040a;min-height:100vh;padding:24px 16px 50px;font-family:JetBrains Mono,Fira Code,monospace;font-size:13px}.sky{z-index:0;background:#04040a;transition:background 2s linear;position:fixed;inset:0;overflow:hidden}.stage-wrap{z-index:2;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);place-items:start center;display:grid;position:fixed;inset:0;overflow:hidden}.phone{transform-origin:top;will-change:transform;background:0 0;width:392px;position:relative}.stars{pointer-events:none;z-index:1;position:absolute;inset:0}.star{background:#c8d0e8;border-radius:50%;position:absolute}@keyframes tw{0%,to{opacity:.2}50%{opacity:.85}}.hdr{z-index:4;justify-content:space-between;align-items:center;padding:14px 18px 0;display:flex;position:relative}.brand{align-items:center;gap:10px;display:flex}.brand-mark{background:var(--red);width:28px;height:28px;color:var(--void);border-radius:5px;justify-content:center;align-items:center;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.brand-text{letter-spacing:-.5px;color:var(--text-bright);font-size:19px;font-weight:700}.brand-text .a{color:var(--red)}.header-actions{gap:6px;display:flex}.icon-btn{border:1px solid var(--line);color:var(--text);cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;width:32px;height:32px;font-family:inherit;font-size:14px;transition:color .15s,border-color .15s,box-shadow .15s,transform 80ms;display:inline-flex}.icon-btn:hover{border-color:var(--red);color:var(--red);box-shadow:0 0 12px #ff2d3e40}.icon-btn:active{transform:scale(.95)}.meta-bar{z-index:4;color:var(--dim);text-transform:uppercase;letter-spacing:1.5px;justify-content:space-between;align-items:center;padding:8px 18px 0;font-family:inherit;font-size:9px;display:flex;position:relative}.status-dot{background:var(--red);width:6px;height:6px;box-shadow:0 0 8px var(--red);vertical-align:middle;border-radius:50%;margin-right:6px;animation:2s ease-in-out infinite statusPulse;display:inline-block}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.4}}.modes{z-index:4;border:1px solid var(--line-2);gap:0;margin:14px 18px 0;display:flex;position:relative}.mode-btn{border:none;border-right:1px solid var(--line-2);color:var(--dim);letter-spacing:2px;cursor:pointer;text-transform:uppercase;background:0 0;flex:1;padding:9px 0;font-family:inherit;font-size:10px;transition:background .2s,color .2s}.mode-btn:last-child{border-right:none}.mode-btn:hover{color:var(--text)}.mode-btn.active{background:var(--red);color:var(--void);font-weight:700}.instrument{z-index:3;width:340px;height:340px;margin:14px auto 6px;position:relative}.instrument svg{width:100%;height:100%;display:block;overflow:visible}.orbit-body{transition:opacity .4s}.core{text-align:center;z-index:4;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.core .now{letter-spacing:-2px;color:var(--text-bright);font-size:46px;font-weight:200;line-height:1}.core .now .mer{color:var(--red);vertical-align:top;margin-left:2px;font-size:15px}.core .solar{letter-spacing:2px;color:var(--dim);text-transform:uppercase;margin-top:6px;font-size:9px}.core .here{letter-spacing:2px;color:var(--red-soft);text-transform:uppercase;border:1px solid var(--line);cursor:pointer;pointer-events:auto;background:0 0;margin-top:10px;padding:3px 8px;font-family:inherit;font-size:8px;transition:color .15s,border-color .15s;position:relative}.core .here:hover,.core .here:focus-visible{color:var(--red);border-color:var(--red);outline:none}@keyframes corePulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.07)}}.core .here:after{content:"";border:1px solid var(--red);opacity:.4;animation:3s ease-in-out infinite corePulse;position:absolute;inset:-4px}.second-city{z-index:3;border-top:1px dashed var(--line);text-align:center;justify-content:center;align-items:center;width:320px;min-height:34px;margin:-2px auto 4px;padding-top:8px;font-family:inherit;display:flex;position:relative}.second-city-add{border:1px solid var(--line-2);color:var(--dim);letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:5px;padding:6px 14px;font-family:inherit;font-size:9px;transition:color .15s,border-color .15s,box-shadow .15s}.second-city-add:hover{color:var(--moon);border-color:var(--moon);box-shadow:0 0 12px #9fb4e033}.second-city-add:focus-visible{outline:2px solid var(--moon);outline-offset:2px}.second-city-readout{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:2px 4px;font-family:inherit;display:flex}.second-city-label{letter-spacing:2px;text-transform:uppercase;color:var(--moon);font-size:8px}.second-city-label:before{content:"// ";color:var(--red)}.second-city-name{letter-spacing:1px;text-transform:uppercase;color:var(--text-bright);font-size:14px;transition:color .15s}.second-city-readout:hover .second-city-name{color:var(--moon-core)}.second-city-readout:focus-visible{outline:2px solid var(--moon);outline-offset:2px}.second-city-coord{letter-spacing:1px;color:var(--dim);font-variant-numeric:tabular-nums;font-size:10px}.second-city-clear{color:var(--dim);cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:14px;line-height:1;transition:color .15s;position:absolute;top:8px;right:0}.second-city-clear:hover{color:var(--red)}.second-city-clear:focus-visible{outline:1px solid var(--line-2);outline-offset:2px}.phase{z-index:4;text-align:center;margin-top:2px;position:relative}.phase .big{color:var(--sun);letter-spacing:1px;font-size:13px}.phase .small{color:var(--dim);letter-spacing:1px;margin-top:3px;font-size:10px}.foot{left:0;right:0;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:4;text-align:center;color:var(--dim);letter-spacing:.5px;pointer-events:none;font-size:10px;position:fixed}.foot .a{color:var(--red)}.meta-place{cursor:default}.meta-sys.demo{color:var(--red)}.places-view{z-index:200;color:var(--text);padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:#04040a;flex-direction:column;display:none;position:fixed;inset:0;overflow:hidden}.places-view.open{display:flex}.places-view-header{border-bottom:1px solid var(--line);flex:none;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;padding:14px 16px 12px;display:grid}.places-view-title{text-transform:uppercase;letter-spacing:2px;color:var(--text-bright);text-align:center;font-family:inherit;font-size:12px;font-weight:700}.places-view-title:before{content:"// ";color:var(--red)}.places-view-icon-btn{border:1px solid var(--line);color:var(--text);cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;width:36px;height:36px;font-family:inherit;font-size:18px;transition:color .15s,border-color .15s,box-shadow .15s,transform 80ms;display:inline-flex}.places-view-icon-btn:hover{color:var(--red);border-color:var(--red);box-shadow:0 0 12px #ff2d3e40}.places-view-icon-btn:active{transform:scale(.95)}.places-view-search{border-bottom:1px solid var(--line);flex:none;padding:16px}.places-view-search input{border:1px solid var(--line);width:100%;color:var(--text-bright);background:#0a0a14;border-radius:5px;outline:none;padding:11px 12px;font-family:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}.places-view-search input::placeholder{color:var(--dim)}.places-view-search input:focus{border-color:var(--red);box-shadow:0 0 12px #ff2d3e2e}.places-view-current{border-bottom:1px solid var(--line);flex:none;padding:12px 16px}.places-view-current-label{text-transform:uppercase;letter-spacing:2px;color:var(--dim);margin-bottom:4px;font-size:9px}.places-view-current-value{color:var(--text);font-size:13px}.places-view-current-value b{color:var(--text-bright);font-weight:700}.places-view-coord{color:var(--dim);letter-spacing:1px;margin-top:2px;font-size:10px;display:block}.places-view-results{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex:3 1 0;padding:6px 16px 8px;overflow-y:auto}.places-view-results::-webkit-scrollbar{display:none}.places-view-saved{border-top:1px solid var(--line);flex-direction:column;flex:2 1 0;min-height:116px;display:flex}.places-view-section-title{color:var(--red);text-transform:uppercase;letter-spacing:2px;flex:none;padding:12px 16px 8px;font-family:inherit;font-size:9px;font-weight:700}.places-view-section-title:before{content:"// ";opacity:.7}.places-view-saved-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex:1 1 0;padding:0 16px 14px;overflow-y:auto}.places-view-saved-list::-webkit-scrollbar{display:none}.places-view-saved-row{border:1px solid var(--line);background:#14141f80;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding:10px 13px;display:flex}.places-view-saved-main{text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:none;flex:1;padding:0;font-family:inherit}.places-view-saved-name{color:var(--text-bright);font-size:14px}.places-view-saved-region{color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;font-size:10px}.places-view-delete{border:1px solid var(--red);color:var(--red);text-transform:uppercase;letter-spacing:1px;cursor:pointer;background:0 0;border-radius:5px;flex:none;padding:5px 11px;font-family:inherit;font-size:10px;transition:background .15s,color .15s}.places-view-delete:hover{background:var(--red);color:#fff}.places-view-status{color:var(--dim);text-transform:uppercase;letter-spacing:1.5px;padding:14px 4px;font-size:11px}.places-view-status.error{color:var(--red)}.places-view-status.hint{color:#3a3a55}.places-view-result{text-align:left;border:1px solid var(--line);width:100%;color:var(--text);cursor:pointer;background:#14141f80;border-radius:9px;margin-bottom:4px;padding:12px 13px;font-family:inherit;transition:background .12s,border-color .12s;display:block}.places-view-result:hover{border-color:var(--red);background:#1c1c28b3}.places-view-result-name{color:var(--text-bright);margin-bottom:3px;font-size:15px}.places-view-result-name b{color:var(--text-bright);font-weight:700}.places-view-result-coord{color:var(--dim);letter-spacing:.5px;font-variant-numeric:tabular-nums;font-size:10px}.settings-view-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex:auto;padding:0 16px 32px;overflow-y:auto}.settings-view-body::-webkit-scrollbar{display:none}.settings-section{border-top:1px solid var(--line);padding:14px 0}.settings-section:first-child{border-top:none;padding-top:4px}.settings-section-title{color:var(--red);text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;font-family:inherit;font-size:9px;font-weight:700}.settings-section-title:before{content:"// ";opacity:.7}.settings-chip-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.settings-chip-row:last-child{margin-bottom:0}.settings-chip{border:1px solid var(--line);color:var(--dim);text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;background:#14141f;border-radius:6px;flex:60px;padding:8px 12px;font-family:inherit;font-size:11px;transition:background .15s,border-color .15s,color .15s}.settings-chip:hover{color:var(--text-bright);background:#1c1c28}.settings-chip:focus-visible{outline:2px solid var(--red);outline-offset:-2px}.settings-chip.active{border-color:var(--red);color:var(--red);background:#ff2d3e2e;font-weight:700}.settings-note{color:#3a3a55;text-transform:uppercase;letter-spacing:1px;margin-top:8px;font-family:inherit;font-size:10px;line-height:1.5}.settings-reset{border:1px solid var(--fail);width:100%;color:var(--fail);text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;background:#ff336614;border-radius:6px;padding:12px 16px;font-family:inherit;font-size:11px;font-weight:700;transition:background .15s}.settings-reset:hover{background:#ff336626}.settings-reset:focus-visible{outline:2px solid var(--fail);outline-offset:2px}.settings-update-check{border:1px solid var(--red);width:100%;color:var(--red);text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;background:#ff2d3e14;border-radius:6px;padding:12px 16px;font-family:inherit;font-size:11px;font-weight:700;transition:background .15s,opacity .15s}.settings-update-check:hover:not(:disabled){background:#ff2d3e2e}.settings-update-check:focus-visible{outline:2px solid var(--red);outline-offset:2px}.settings-update-check:disabled{opacity:.6;cursor:default}.settings-update-note{color:var(--dim);text-transform:uppercase;letter-spacing:1px;text-align:center;margin-top:8px;font-family:inherit;font-size:10px;line-height:1.5}.settings-chip-glyph{vertical-align:-1px;margin-right:6px;font-size:13px;line-height:1;display:inline-block}.update-banner{z-index:5;border:1px solid var(--line);background:#0a0a14;border-radius:10px;margin:0 18px;padding:12px 14px;position:relative;overflow:hidden}.update-banner:before{content:"";background:var(--red);height:2px;position:absolute;top:0;left:0;right:0}.update-banner-label{text-transform:uppercase;letter-spacing:1.5px;color:var(--red);padding-right:24px;font-family:inherit;font-size:9px;font-weight:700}.update-banner-body{color:var(--dim);padding-top:4px;padding-bottom:10px;font-size:12px;line-height:1.4}.update-banner-refresh{border:1px solid var(--red);color:var(--red);text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;background:#ff2d3e14;border-radius:6px;padding:8px 18px;font-family:inherit;font-size:11px;font-weight:700;transition:background .15s}.update-banner-refresh:hover{background:#ff2d3e2e}.update-banner-refresh:focus-visible{outline:2px solid var(--red);outline-offset:2px}.update-banner-dismiss{color:#3a3a55;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-family:inherit;font-size:16px;line-height:1;transition:color .15s;position:absolute;top:8px;right:10px}.update-banner-dismiss:hover{color:var(--dim)}.update-banner-dismiss:focus-visible{outline:1px solid var(--line-2);outline-offset:2px}:root.theme-night{--void:#02020a;--line:#14141f;--line-2:#1c1c28;--text:#6e6e80;--text-bright:#9090a8;--dim:#44445a}:root.theme-night body{background:#02020a}:root.theme-light{--void:#0f0f18;--line:#2a2a40;--line-2:#36365a;--text:#c8c8e0;--text-bright:#f0f0ff;--dim:#7c7c95}:root.theme-light body{background:#0a0a14}@media (prefers-color-scheme:light){:root.theme-auto{--void:#0f0f18;--line:#2a2a40;--line-2:#36365a;--text:#c8c8e0;--text-bright:#f0f0ff;--dim:#7c7c95}:root.theme-auto body{background:#0a0a14}}:root.anim-reduce .star{animation-duration:12s!important}:root.anim-reduce .core .here:after{animation:none!important}:root.anim-reduce .sky{transition:background .6s linear!important}:root.anim-reduce .orbit-body{transition:opacity .4s!important}:root.anim-off .star,:root.anim-off .core .here:after,:root.anim-off .status-dot{animation:none!important}:root.anim-off .sky,:root.anim-off .orbit-body,:root.anim-off .icon-btn,:root.anim-off .mode-btn,:root.anim-off .settings-chip,:root.anim-off .settings-reset,:root.anim-off .settings-update-check,:root.anim-off .places-view,:root.anim-off .second-city-add,:root.anim-off .second-city-readout,:root.anim-off .second-city-name,:root.anim-off .second-city-clear{transition:none!important}@media (prefers-reduced-motion:reduce){:root.anim-on .star{animation-duration:12s!important}:root.anim-on .core .here:after{animation:none!important}:root.anim-on .sky{transition:background .6s linear!important}}
