:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{color:#f4f6fa;font-synthesis:none;text-rendering:optimizelegibility;background:#05070b;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}#root{width:100%;height:100vh}.navigator{background:#05070b;width:100%;height:100vh;position:relative;overflow:hidden}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#05070bc7;border-bottom:1px solid #ffffff29;justify-content:center;align-items:center;width:100%;height:64px;display:flex;position:absolute;top:0;left:0}.brand{letter-spacing:.18em;font-size:15px;font-weight:600;position:absolute;left:28px}.mode-switch{background:#141820e6;border:1px solid #ffffff38;border-radius:999px;padding:4px;display:flex}.mode{color:#7f8795;background:0 0;border:0;border-radius:999px;min-width:125px;padding:9px 20px}.mode.active{color:#fff;background:#ffffff21}.moon-viewport{z-index:1;place-items:center;display:grid;position:absolute;inset:0}.moon-placeholder{aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#777d88 0%,#424852 38%,#242a33 72%,#11151c 100%);border-radius:50%;place-items:center;width:min(52vw,620px);display:grid;box-shadow:0 0 80px #aab4c81f,inset -45px -35px 80px #0000006b}.moon-placeholder span{color:#ffffff2e;letter-spacing:.3em;font-size:12px}.tool-launcher{z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c1017db;border:1px solid #ffffff26;border-radius:14px;width:230px;position:absolute;top:84px;left:20px;overflow:hidden;box-shadow:0 18px 50px #00000059}.tool-launcher.collapsed{border-radius:50%;width:52px;height:52px}.tool-launcher-title{color:#8f98a8;letter-spacing:.18em;padding:16px 18px;font-size:11px}.tool-launcher button:not(.hamburger){color:#e9edf3;text-align:left;background:0 0;border:0;border-top:1px solid #ffffff17;width:100%;padding:17px 18px;transition:background .16s;display:block}.tool-launcher button:not(.hamburger):hover{background:#ffffff14}.hamburger{background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:100%;height:100%;display:flex}.hamburger span{background:#e8edf5;border-radius:2px;width:20px;height:2px}.search-interface{z-index:25;scrollbar-width:none;flex-direction:column;align-items:flex-start;width:260px;max-height:calc(100vh - 142px);padding-bottom:6px;display:flex;position:absolute;top:84px;bottom:58px;left:88px;overflow:hidden auto}.search-interface::-webkit-scrollbar{display:none}.input-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c1017e0;border:1px solid #ffffff2b;border-radius:18px;width:260px;padding:16px;box-shadow:0 18px 50px #00000047}.card-label{color:#aab2c0;letter-spacing:.16em;margin-bottom:14px;font-size:11px;font-weight:600}.input-card label{color:#8f98a8;margin-bottom:10px;font-size:11px;display:block}.input-card input{color:#f3f5f8;background:#ffffff0f;border:1px solid #ffffff21;border-radius:8px;outline:none;width:100%;margin-top:6px;padding:9px 11px}.input-card input:focus{border-color:#8cb4ffbf}.input-card input::placeholder{color:#5e6674}.preset-button{color:#aeb6c4;text-align:left;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;width:100%;padding:9px 10px}.connector{border-left:2px dotted #fff6;flex-shrink:0;width:2px;height:20px;margin-left:32px}.compute-button{color:#fff;background:#5082d24d;border:1px solid #96beff80;border-radius:999px;flex-shrink:0;align-self:center;margin-top:12px;margin-bottom:2px;padding:10px 25px;transition:transform .16s,background .16s}.compute-button:hover{background:#5082d280;transform:translateY(-1px)}.output-panel{z-index:25;scrollbar-width:thin;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c1017e6;border:1px solid #ffffff26;border-radius:14px;width:310px;max-height:calc(100vh - 150px);position:absolute;top:84px;right:20px;overflow:hidden auto;box-shadow:0 18px 50px #00000059}.output-panel.closed{border-radius:50%;width:52px;height:52px;overflow:hidden}.output-header{color:#dfe4ec;letter-spacing:.15em;justify-content:space-between;align-items:center;padding:17px 18px;font-size:11px;font-weight:600;display:flex}.output-header button{color:#b5bdca;background:0 0;border:0;border-radius:50%;place-items:center;width:28px;height:28px;font-size:18px;line-height:1;display:grid}.output-section{border-top:1px solid #ffffff17}.output-section-header{color:#d9dee7;letter-spacing:.08em;background:0 0;border:0;justify-content:space-between;width:100%;padding:16px 18px;font-size:12px;display:flex}.output-section-header span:last-child{color:#8f98a8;font-size:15px}.output-content{color:#7f8999;max-height:180px;padding:15px 18px;font-size:12px;line-height:1.6;overflow-y:auto}.analysis-context{color:#747e8d;border-top:1px solid #ffffff17;flex-direction:column;gap:5px;padding:16px 18px;font-size:10px;display:flex}.analysis-context div{color:#9fa8b7;letter-spacing:.12em;margin-bottom:4px}.output-handle{color:#dce2ea;background:0 0;border:0;width:100%;height:100%}.placeholder-panel{z-index:25;color:#dce2e9;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c1017e0;border:1px solid #ffffff26;border-radius:18px;width:260px;padding:22px;position:absolute;top:94px;left:88px}.placeholder-panel span{letter-spacing:.16em;font-size:11px}.placeholder-panel p{color:#7f8999;margin:12px 0 0;font-size:12px;line-height:1.5}.bottom-controls{z-index:20;color:#aab4c3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.08em;background:#05070bc7;border-top:1px solid #ffffff1a;justify-content:center;align-items:center;gap:28px;width:100%;min-height:46px;font-size:10px;display:flex;position:absolute;bottom:0;left:0}.toolbar-group{align-items:center;height:46px;display:flex;position:relative}.bottom-control-button{color:#aab4c3;height:32px;font:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:0 10px;transition:background .18s,color .18s,border-color .18s}.bottom-control-button:hover,.bottom-control-button[aria-expanded=true]{color:#e8f4ff;background:#69b4dc1f;border-color:#69b4dc47}.bottom-control-button:focus-visible,.toolbar-popover button:focus-visible{outline-offset:3px;outline:2px solid #78c8ee}.toolbar-popover{z-index:30;color:#d5deea;letter-spacing:normal;text-align:left;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0f17f5;border:1px solid #96b4d238;border-radius:9px;flex-direction:column;gap:9px;width:230px;padding:14px;font-size:11px;line-height:1.5;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 12px 32px #0000006b}.toolbar-popover p{color:#aab6c6;margin:0}.toolbar-popover button{color:#dce8f5;min-height:32px;font:inherit;text-align:left;cursor:pointer;background:#ffffff0b;border:1px solid #96b4d22e;border-radius:5px;padding:7px 10px}.toolbar-popover button:hover{background:#69b4dc24;border-color:#69b4dc59}.toolbar-action-row{gap:7px;display:flex}.toolbar-action-row button{flex:1}.layers-popover{width:285px}.layer-status{border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:8px;display:flex}.layer-status-value{color:#9aa6b5;text-align:right;flex-shrink:0;font-size:10px}.layer-status-value.active{color:#82cba5}.layer-status-value.inactive{color:#e58f8f}.layer-status-value.deferred{color:#e0b779}.toolbar-popover .layer-note{color:#8290a2;margin-top:2px;font-size:10px}@media (width<=800px){.bottom-controls{justify-content:space-evenly;gap:5px}.bottom-control-button{padding:0 7px;font-size:9px}.toolbar-popover{width:min(230px,100vw - 24px)}.layers-popover{width:min(285px,100vw - 24px)}.brand{font-size:12px;left:16px}.mode-switch{transform:scale(.85)}.tool-launcher{left:14px}.search-interface,.placeholder-panel{left:76px}.output-panel{width:280px;right:14px}.moon-placeholder{width:65vw}}.field-error{color:#e58f8f;margin-top:-7px;margin-bottom:12px;font-size:10px;line-height:1.4}.input-card input[aria-invalid=true]{border-color:#dc6e6ecc}.api-error{color:#e58f8f;background:#4619198c;border:1px solid #dc6e6e40;border-radius:8px;width:260px;margin-top:10px;padding:9px 11px;font-size:11px;line-height:1.45}.calculation-status{z-index:40;color:#c5d8f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.04em;pointer-events:none;background:#0c1017e6;border:1px solid #96beff4d;border-radius:8px;padding:9px 13px;font-size:12px;position:absolute;bottom:62px;right:24px}.api-error-panel{z-index:25;color:#e58f8f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#231014f0;border:1px solid #dc6e6e59;border-radius:14px;width:310px;padding:16px 18px;font-size:12px;line-height:1.5;position:absolute;top:84px;right:20px;box-shadow:0 18px 50px #00000059}.timeline-interface{z-index:25;scrollbar-width:none;flex-direction:column;align-items:flex-start;width:300px;max-height:calc(100vh - 142px);padding-bottom:6px;display:flex;position:absolute;top:84px;bottom:58px;left:88px;overflow:hidden auto}.timeline-interface::-webkit-scrollbar{display:none}.timeline-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c1017e0;border:1px solid #ffffff2b;border-radius:18px;width:300px;padding:16px;box-shadow:0 18px 50px #00000047}.timeline-field-heading{color:#aab2c0;letter-spacing:.13em;margin-bottom:9px;font-size:10px;font-weight:600;display:block}.timeline-input-grid{grid-template-columns:1.2fr 1fr;gap:9px;display:grid}.timeline-card label:not(.timeline-field-heading){color:#8f98a8;min-width:0;font-size:10px;display:block}.timeline-card input,.timeline-step-select{box-sizing:border-box;color:#f3f5f8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff0f;border:1px solid #ffffff21;border-radius:8px;outline:none;width:100%;min-width:0;margin-top:6px;padding:9px 7px}.timeline-card input:focus,.timeline-step-select:focus{border-color:#8cb4ffbf}.timeline-step-select option{color:#f3f5f8;background:#151b26}.timeline-summary{background:#ffffff09;border:1px solid #ffffff17;border-radius:10px;flex-direction:column;gap:10px;margin-top:19px;padding:12px;display:flex}.timeline-summary div{flex-direction:column;gap:4px;display:flex}.timeline-summary span{color:#8993a3;letter-spacing:.12em;font-size:9px}.timeline-summary strong{color:#e9edf3;font-size:12px;font-weight:500}.timeline-error{color:#f09a9a;margin:12px 0 0;font-size:11px;line-height:1.5}.timeline-compute-button{letter-spacing:.08em;width:100%;margin-top:16px;padding:11px 12px;font-size:10px}.timeline-compute-button:disabled{cursor:wait;opacity:.6}@media (width<=700px){.timeline-interface{width:min(300px,100vw - 100px);left:76px}.timeline-card{box-sizing:border-box;width:100%}}.timeline-interface{max-height:none;top:84px;bottom:58px;overflow:hidden}.timeline-card{box-sizing:border-box;flex-direction:column;height:100%;max-height:100%;padding:13px;display:flex;overflow:hidden}.timeline-header{flex-shrink:0;justify-content:space-between;align-items:center;min-height:27px;display:flex}.timeline-header .card-label{margin-bottom:0}.timeline-close-button{color:#cbd2df;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff21;border-radius:50%;width:28px;height:28px;font-size:19px;line-height:1}.timeline-close-button:hover{background:#ffffff21}.timeline-form{flex-direction:column;flex:1;min-height:0;margin-top:8px;display:flex}.timeline-scroll-area{scrollbar-width:thin;scrollbar-color:#a0afc859 transparent;flex:1;min-height:0;padding:0 3px 12px 0;overflow:hidden auto}.timeline-scroll-area::-webkit-scrollbar{width:4px}.timeline-scroll-area::-webkit-scrollbar-thumb{background:#a0afc859;border-radius:4px}.timeline-coordinate-section{margin-top:7px;padding-bottom:5px}.timeline-coordinate-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.timeline-coordinate-grid label{color:#8f98a8;min-width:0;font-size:10px;display:block}.timeline-coordinate-grid input{box-sizing:border-box;color:#f3f5f8;background:#ffffff0f;border:1px solid #ffffff21;border-radius:8px;outline:none;width:100%;min-width:0;margin-top:6px;padding:9px 8px}.timeline-coordinate-grid input:focus{border-color:#8cb4ffbf}.timeline-coordinate-grid input[aria-invalid=true]{border-color:#dc6e6ecc}.timeline-coordinate-hint{color:#7f8999;margin:8px 0 0;font-size:9px;line-height:1.4}.timeline-field-error{color:#f09a9a;margin:5px 0 0;font-size:10px;line-height:1.4}.timeline-field-group{margin-top:13px}.timeline-summary{flex-direction:row;justify-content:space-between;gap:6px;margin-top:14px;padding:10px 7px}.timeline-summary div{text-align:center;flex:1;align-items:center;gap:5px;min-width:0}.timeline-summary span{letter-spacing:.07em;font-size:8px}.timeline-summary strong{font-size:11px}.timeline-submit-area{background:#0c1017f5;border-top:1px solid #ffffff14;flex-shrink:0;padding-top:10px}.timeline-compute-button{width:100%;margin:0}@media (height<=760px){.timeline-interface{top:72px;bottom:58px}.timeline-card{padding:10px}.timeline-field-group{margin-top:9px}.timeline-summary{margin-top:10px;padding:8px 5px}}.timeline-date-picker{flex-direction:column;gap:0;min-width:0;display:flex;position:relative}.timeline-date-input{box-sizing:border-box;color:#f3f5f8;background:#ffffff0f;border:1px solid #ffffff21;border-radius:8px;outline:none;justify-content:space-between;align-items:center;width:100%;min-width:0;margin-top:6px;padding:9px 7px;display:flex}.timeline-date-input:focus-within{border-color:#8cb4ffbf}.timeline-date-value{min-width:0;font-size:13px}.timeline-date-icon{color:#dce4ef;cursor:pointer;background:0 0;border:0;flex:0 0 22px;place-items:center;width:22px;height:22px;padding:2px;display:grid}.timeline-date-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.timeline-date-popover{z-index:50;box-sizing:border-box;color:#e8edf5;background:#151b26;border:1px solid #ffffff29;border-radius:6px;width:255px;padding:12px;position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-26%);box-shadow:0 5px 18px #00000073}.timeline-date-header{align-items:center;margin-bottom:12px;display:flex}.timeline-date-month-toggle{color:#f3f5f8;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:3px 0;font-size:14px;font-weight:600;display:flex}.timeline-date-month-toggle:hover{color:#8bbcff}.timeline-date-selectors{grid-template-columns:1fr 90px;gap:7px;margin-bottom:10px;display:grid}.timeline-date-selectors select{box-sizing:border-box;color:#f3f5f8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#202a39;border:1px solid #ffffff29;border-radius:5px;min-width:0;padding:6px;font-size:12px}.timeline-date-selectors option{color:#f3f5f8;background:#151b26}.timeline-date-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.timeline-date-weekday,.timeline-date-empty,.timeline-date-day{place-items:center;height:32px;display:grid}.timeline-date-weekday{color:#8f98a8;font-size:11px;font-weight:600}.timeline-date-day{color:#e8edf5;cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;font-size:12px}.timeline-date-day:hover:not(:disabled){background:#303e52}.timeline-date-day.selected{color:#fff;background:#3478d4;font-weight:600}.timeline-date-day:disabled{color:#596273;cursor:not-allowed}.timeline-date-footer{border-top:1px solid #ffffff1a;justify-content:space-between;margin-top:10px;padding-top:7px;display:flex}.timeline-date-footer button{color:#8bbcff;cursor:pointer;background:0 0;border:0;padding:5px 8px;font-size:12px}.timeline-date-footer button:hover{color:#c0dcff}.timeline-results-panel{z-index:24;color:#e8edf5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c1017eb;border:1px solid #ffffff24;border-radius:10px;flex-direction:column;gap:7px;padding:9px 12px;display:flex;position:absolute;bottom:58px;left:54px;right:54px}.timeline-results-track{grid-template-columns:58px minmax(0,1fr);align-items:center;gap:9px;min-height:13px;display:grid}.timeline-results-label{color:#aeb9c9;letter-spacing:1px;font-size:10px;font-weight:700}.timeline-results-bar{background:#555d69;border-radius:4px;height:9px;display:flex;overflow:hidden}.timeline-results-sample{flex:1 1 0;min-width:1px}.timeline-results-sample.visible.sun{background:#f2d34f}.timeline-results-sample.visible.earth{background:#419deb}.timeline-results-sample.blocked{background:#777f8b}.timeline-results-sample.unknown{background:repeating-linear-gradient(135deg,#a1aab7 0 2px,#343e4c 2px 4px)}.timeline-results-slider{align-items:center;min-width:0;display:flex}.timeline-results-slider input[type=range]{accent-color:#62b7ff;width:100%;min-width:0;margin:0;display:block}.timeline-results-boundaries{color:#8995a5;font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;margin-left:67px;font-size:10px;display:flex;position:relative}.timeline-results-boundaries>span:first-child{text-align:left}.timeline-results-boundaries>span:last-child{text-align:right}.timeline-results-time{color:#d6e1ef;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:175px;font-size:11px;position:absolute;left:calc(50% - 33.5px);transform:translate(-50%)}.timeline-results-playback{justify-content:center;align-items:center;gap:8px;display:flex}.timeline-results-playback button,.timeline-results-reopen{color:#e8edf5;cursor:pointer;background:#273344;border:1px solid #46566b;border-radius:5px;padding:4px 8px;font-size:11px}.timeline-results-playback button:disabled{opacity:.45;cursor:default}.timeline-results-location{color:#b8c4d4;text-align:center;font-variant-numeric:tabular-nums;font-size:10px}@media (width<=800px){.timeline-results-panel{padding:9px;bottom:54px;left:43px;right:43px}.timeline-results-boundaries{font-size:8px}.timeline-results-time{min-width:0;font-size:9px}.timeline-results-playback{flex-wrap:wrap}}.timeline-results-bar{position:relative}.timeline-results-transition-marker{z-index:3;pointer-events:none;cursor:default;background:#fff;width:2px;position:absolute;top:-2px;bottom:-2px;box-shadow:0 0 2px #000000e6}
