:root{--sky-void: #070b16;--sky-glass: rgba(13, 20, 38, .82);--sky-glass-edge: rgba(140, 165, 220, .22);--sky-ink: #e2e8f5;--sky-ink-dim: rgba(200, 212, 236, .72);--sky-ink-faint: rgba(178, 192, 220, .5);--sky-accent: #7aa7ff;--sky-gold: #ffd166;--sky-shadow: 0 14px 40px rgba(2, 6, 18, .55);--sky-round: 12px;--sky-gap: 14px}body.sky-app-page{margin:0;overflow:hidden;background:var(--sky-void);overscroll-behavior:none}body.sky-app-page main{margin:0}.sky-app{--sky-panel-w: 0px;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;color:var(--sky-ink);font-size:14px;-webkit-tap-highlight-color:transparent}.sky-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;background:var(--sky-void);cursor:grab;touch-action:none;opacity:0;transition:opacity .5s ease}.sky-app.is-ready .sky-canvas{opacity:1}.sky-status{position:absolute;inset:auto 0 50% 0;margin:0;text-align:center;color:var(--sky-ink-dim);font-size:.9rem}.sky-bar{position:absolute;inset:0 0 auto 0;display:flex;align-items:center;gap:10px;padding:10px var(--sky-gap);background:linear-gradient(180deg,#070b16eb,#070b1600);pointer-events:none;z-index:4}.sky-bar>*{pointer-events:auto}.sky-back{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--sky-glass-edge);background:var(--sky-glass);color:var(--sky-ink);text-decoration:none;font-size:1rem;flex:none}.sky-back:hover{border-color:var(--sky-accent);color:#fff}.sky-title{margin:0;font-size:1rem;font-weight:600;letter-spacing:.01em;white-space:nowrap;color:var(--sky-ink)}.sky-find{position:relative;margin-left:auto;width:min(320px,42vw)}.sky-find-input{width:100%;border:1px solid var(--sky-glass-edge);border-radius:999px;background:var(--sky-glass);color:var(--sky-ink);padding:7px 14px;font-size:.84rem;outline:none}.sky-find-input::placeholder{color:var(--sky-ink-faint)}.sky-find-input:focus{border-color:var(--sky-accent)}.sky-results{position:absolute;top:calc(100% + 6px);left:0;right:0;display:flex;flex-direction:column;border:1px solid var(--sky-glass-edge);border-radius:var(--sky-round);background:var(--sky-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--sky-shadow);overflow:hidden}.sky-result{border:0;background:none;color:var(--sky-ink);text-align:left;padding:8px 12px;font-size:.84rem;cursor:pointer}.sky-result:hover{background:#7aa7ff2e}.sky-chip{border:1px solid var(--sky-glass-edge);border-radius:999px;background:var(--sky-glass);color:var(--sky-ink-dim);padding:6px 13px;font-size:.78rem;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap}.sky-chip:hover{color:#fff;border-color:var(--sky-accent)}.sky-dock{position:absolute;top:58px;left:var(--sky-gap);width:236px;border:1px solid var(--sky-glass-edge);border-radius:var(--sky-round);background:var(--sky-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--sky-shadow);z-index:3;overflow:hidden}.sky-dock-toggle{width:100%;border:0;background:none;color:var(--sky-ink-dim);font-size:.74rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:10px 13px;text-align:left;cursor:pointer}.sky-dock-toggle:after{content:"▾";float:right;transition:transform .2s ease}.sky-dock.is-collapsed .sky-dock-toggle:after{transform:rotate(-90deg)}.sky-dock-body{display:grid;gap:12px;padding:0 13px 13px;max-height:60vh;overflow:hidden auto;transition:max-height .25s ease,opacity .2s ease,padding .25s ease}.sky-dock.is-collapsed .sky-dock-body{max-height:0;opacity:0;padding-block:0}.sky-field{display:grid;gap:5px}.sky-field>span{display:flex;justify-content:space-between;gap:8px;color:var(--sky-ink-dim);font-size:.78rem;font-weight:600}.sky-field b{color:var(--sky-ink);font-variant-numeric:tabular-nums;font-weight:600}.sky-dock select,.sky-dock input[type=range]{width:100%}.sky-app select{border:1px solid var(--sky-glass-edge);border-radius:8px;background:#080d1ae6;color:var(--sky-ink);padding:6px 8px;font-size:.82rem}.sky-app input[type=range]{accent-color:var(--sky-accent)}.sky-app input[type=checkbox]{accent-color:var(--sky-accent);margin:0}.sky-app button{font-family:inherit}.sky-toggles{display:grid;gap:7px}.sky-toggles label{display:flex;align-items:center;gap:8px;color:var(--sky-ink-dim);font-size:.8rem;cursor:pointer}.sky-dock-actions{display:flex;flex-wrap:wrap;gap:7px}.sky-dock-actions button,.sky-now{border:1px solid var(--sky-glass-edge);border-radius:999px;background:#080d1ab3;color:var(--sky-ink-dim);padding:5px 12px;font-size:.78rem;cursor:pointer;white-space:nowrap}.sky-dock-actions button:hover:not(:disabled),.sky-now:hover{color:#fff;border-color:var(--sky-accent)}.sky-dock-actions button:disabled{opacity:.5;cursor:progress}.sky-dock-meta{display:grid;gap:2px;margin:0;color:var(--sky-ink-faint);font-size:.72rem}.sky-app.has-overlay{--sky-panel-w: min(560px, 46vw)}.sky-panel{position:absolute;top:58px;right:calc(var(--sky-gap) + var(--sky-panel-w));width:234px;border:1px solid var(--sky-glass-edge);border-radius:var(--sky-round);background:var(--sky-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--sky-shadow);padding:12px 14px;z-index:3;transition:opacity .18s ease,transform .18s ease}.sky-panel.is-empty{opacity:0;transform:translateY(-6px);pointer-events:none}.sky-panel-name{font-weight:600;margin-bottom:8px;color:#fff}.sky-panel-rows{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:.8rem}.sky-panel-rows dt{color:var(--sky-ink-faint)}.sky-panel-rows dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.sky-panel-go{margin-top:10px;color:var(--sky-accent);font-size:.76rem;font-weight:600}.sky-zoom{position:absolute;right:calc(var(--sky-gap) + var(--sky-panel-w));bottom:124px;transition:right .28s cubic-bezier(.22,.68,.32,1);display:grid;gap:6px;z-index:3}.sky-zoom button{width:34px;height:34px;border:1px solid var(--sky-glass-edge);border-radius:9px;background:var(--sky-glass);color:var(--sky-ink);font-size:1rem;cursor:pointer}.sky-zoom button:hover{border-color:var(--sky-accent);color:#fff}.sky-legend{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;margin-top:2px;font-size:.68rem;color:var(--sky-ink-dim)}.sky-legend:empty{display:none}.sky-legend-item{display:inline-flex;align-items:center;gap:5px}.sky-legend-item i{width:10px;height:10px;border-radius:50%;display:inline-block}.sky-legend-bar{display:block;width:100%;height:8px;border-radius:4px}.sky-legend-ticks{display:flex;justify-content:space-between;width:100%;font-variant-numeric:tabular-nums}.sky-legend-ticks i{font-style:normal}.sky-legend-note{width:100%;color:var(--sky-ink-faint)}.sky-time{position:absolute;left:calc(50% - var(--sky-panel-w) / 2);bottom:16px;transform:translate(-50%);transition:left .28s cubic-bezier(.22,.68,.32,1);display:flex;align-items:center;gap:10px;padding:9px 13px;border:1px solid var(--sky-glass-edge);border-radius:999px;background:var(--sky-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--sky-shadow);z-index:3;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - var(--sky-panel-w) - 2 * var(--sky-gap))}.sky-play{border:1px solid var(--sky-accent);border-radius:999px;background:#7aa7ff2e;color:#fff;font-size:.8rem;font-weight:600;padding:6px 16px;cursor:pointer;white-space:nowrap;flex:none;min-width:7.5em}.sky-app.is-playing .sky-play{background:var(--sky-gold);border-color:var(--sky-gold);color:#171203}.sky-clock{flex:none}.sky-time-speed{display:flex;align-items:center;gap:8px;flex:none}.sky-time-speed input{width:74px;flex:none}.sky-time-speed b{color:var(--sky-ink-dim);font-size:.72rem;font-weight:600;white-space:nowrap;min-width:6.6em}.sky-time-scrub{width:168px;flex:none}.sky-when{color:var(--sky-ink);font-size:.76rem;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:13em;text-align:center}.sky-overlay,.sky-about{position:absolute;top:0;right:0;bottom:0;width:min(560px,46vw);display:flex;flex-direction:column;background:#fff;color:#212529;box-shadow:-18px 0 48px #02061280;transform:translate(101%);transition:transform .28s cubic-bezier(.22,.68,.32,1),visibility .28s;z-index:6;visibility:hidden}.sky-overlay.is-open,.sky-about.is-open{transform:none;visibility:visible}.sky-overlay-bar{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid #e9ecef;background:#fff;flex:none}.sky-overlay-bar h2{margin:0;font-size:1.05rem;font-weight:600;flex:1;min-width:0;overflow-wrap:anywhere}.sky-overlay-bar button{border:0;background:none;color:#868e96;font-size:1.5rem;line-height:1;padding:0 4px;cursor:pointer;flex:none}.sky-overlay-bar button:hover{color:#212529}.sky-overlay-body{flex:1;overflow:hidden auto;padding:16px 18px 28px;overscroll-behavior:contain}.sky-overlay-body .container{padding:0;max-width:none}.sky-overlay-body .obj-breadcrumb{margin-bottom:12px}.sky-overlay-body .obj-hero{margin-bottom:14px}.sky-overlay-body .obj-canvas{height:min(42vh,360px)}.sky-overlay-body .obj-hr{height:min(38vh,320px)}.sky-overlay-body .obj-finder{height:min(44vh,380px)}.sky-overlay-body .facts{grid-template-columns:minmax(0,1fr)}.sky-overlay-body .fact-rank-text{font-size:.66rem}.sky-overlay-busy{position:absolute;top:52px;right:0;bottom:0;left:0;display:none;place-items:center;background:#fff;color:#868e96;font-size:.85rem}.sky-overlay.is-busy .sky-overlay-busy{display:grid}.sky-prose h3{font-size:1rem;margin:18px 0 6px}.sky-prose p{line-height:1.6;color:#343a40}.sky-prose .lead{font-size:1.02rem}.sky-prose .sky-q{margin-bottom:2px}.sky-prose .container{margin:18px 0 0!important;max-width:none!important}.sky-app-page .utility-feedback-launcher{bottom:76px;z-index:5}.sky-app-page:has(.sky-app.has-overlay) .utility-feedback-launcher{display:none}@media (max-width: 900px){.sky-overlay,.sky-about{width:100%;top:auto;height:82dvh;border-radius:16px 16px 0 0;transform:translateY(101%);box-shadow:0 -18px 48px #02061280}.sky-app.has-overlay{--sky-panel-w: 0px}.sky-panel{display:none}.sky-zoom{bottom:152px}.sky-time{flex-wrap:wrap;justify-content:center;border-radius:var(--sky-round);left:var(--sky-gap);right:var(--sky-gap);transform:none;max-width:none}.sky-time-scrub{width:100%;order:5}.sky-when{min-width:0}}@media (max-width: 640px){.sky-title{display:none}.sky-find{width:auto;flex:1}.sky-dock{width:calc(100vw - 2 * var(--sky-gap));max-width:320px}.sky-time-speed b{min-width:0}}@media (prefers-reduced-motion: reduce){.sky-overlay,.sky-about,.sky-canvas,.sky-panel,.sky-dock-body{transition:none}}
