@font-face{font-family:Inter Local;src:url(/fonts/google/inter-400-latin.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Inter Local;src:url(/fonts/google/inter-600-latin.woff2)format("woff2");font-weight:600;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f0ede5;--secondary:#b5b8bd;--muted:#939aa5;--line:#e2e4ec42;--surface:#0f12198c;--control-line:#d5d3c975;--accent:#e7d8b9;--serif:"Times New Roman",Times,"Noto Serif KR",serif;--sans:"Inter Local",Pretendard,"Noto Sans KR",system-ui,sans-serif}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;background:#080c13}button,input,select{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}a{color:inherit}.experiment{isolation:isolate;width:100%;height:100svh;min-height:720px;position:relative;overflow:hidden}.copy{z-index:2;pointer-events:none;position:absolute;top:clamp(122px,17vh,170px);left:clamp(24px,3vw,48px)}.kicker{color:var(--secondary);letter-spacing:.18em;margin:0 0 22px 3px;font-size:.64rem}h1{font-family:var(--serif);letter-spacing:-.09em;margin:0;font-size:clamp(6.5rem,12vw,12.5rem);font-weight:400;line-height:.7}.statement{letter-spacing:-.045em;word-break:keep-all;margin:clamp(32px,6vh,66px) 0 0 5px;font-size:clamp(1.4rem,2.4vw,2.35rem);font-weight:400;line-height:1.23}.scene{z-index:1;isolation:isolate;width:100%;height:100%;position:absolute;inset:0}.level-switch{z-index:4;min-height:40px;color:var(--ink);border-radius:24px;align-items:center;display:flex;position:absolute;top:72px;left:50%;transform:translate(-50%)}.level-switch button{color:#bbc1cb;white-space:nowrap;cursor:pointer;background:0 0;border:0;min-height:40px;padding:8px 18px;font-size:13px}.level-switch button:first-child{border-radius:24px 0 0 24px}.level-switch button:last-child{border-radius:0 24px 24px 0}.level-switch button+button{border-left:1px solid var(--line)}.level-switch button:hover{color:var(--accent);background:#ffffff0c}.level-switch button[aria-pressed=true]{color:#f4ddb0}.level-switch :focus-visible{outline:1px solid var(--accent);outline-offset:2px}.scene-space{display:none}#eclipse-canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}#eclipse-canvas:focus-visible{outline-offset:-4px}.scene-label{pointer-events:none;white-space:nowrap;color:#d8d8d4;text-shadow:0 2px 8px #000;font-size:14px;position:absolute}.earth-label{transform:translate(-50%,12px)}.earth-hint{letter-spacing:.02em;text-align:center;color:#bfb7a8;font-size:11px;line-height:1.45;transition:opacity .25s;transform:translate(-50%,36px)}.shadow-label{color:#aba9a0;letter-spacing:.04em;font-size:13px;transform:translate(-50%,-50%)}.shadow-label.penumbra{color:#8f8d86}.sun-label{color:#efdbb7;transform:translate(-50%)}.sun-label.beside{transform:translateY(-50%)}.sun-hint{letter-spacing:.02em;text-align:center;color:#bfb7a8;font-size:11px;line-height:1.45;transition:opacity .25s;transform:translate(-50%)}.light-label{color:#d1bd99;font-size:12px;transform:translate(-50%,-130%)}.sun-direction{pointer-events:none;color:#dac7a3;white-space:nowrap;text-shadow:0 2px 8px #000;align-items:center;gap:7px;min-height:36px;padding:7px 11px;font-size:11px;display:flex;position:absolute;transform:translate(-50%,-50%)}.sun-direction svg{fill:none;stroke:currentColor;stroke-width:1.25px;width:18px;height:18px;transform:rotate(var(--direction,179.909deg))}.sun-direction[hidden],.scene-label[hidden]{display:none}.orbit-direction{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.orbit-direction .orbit-arc{fill:none;stroke:#c9cfd8;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.orbit-direction .orbit-head{fill:#c9cfd8;stroke:none}.orbit-direction[hidden]{display:none}.sight-line{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.sight-line .sight-shaft{fill:none;stroke:#e6ecf3;stroke-width:1.4px;stroke-linecap:round}.sight-line .sight-head{fill:#e6ecf3;stroke:none}.sight-line[hidden]{display:none}.orbit-direction-label{letter-spacing:.03em;color:#c9cfd8;font-size:11px;transform:translate(-50%)}.orbit-direction-label[data-side=above]{transform:translate(-50%,-100%)}.orbit-direction-label[data-side=right]{transform:translateY(-50%)}.orbit-direction-label[data-side=left]{transform:translate(-100%,-50%)}.orbit-direction.is-relocating,.orbit-direction-label.is-relocating{animation:.28s ease-out orbit-direction-in}@keyframes orbit-direction-in{0%{opacity:0}}.advanced-controls,.basic-controls{margin-top:18px}.advanced-controls[hidden],.basic-controls[hidden]{display:none}@media (width<=760px){.advanced-controls,.basic-controls{flex:100%;margin-top:12px}}.moon-handle{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;width:60px;height:60px;position:absolute;transform:translate(-50%,-50%);outline-offset:6px!important}.moon-handle.is-dragging{cursor:grabbing}.moon-handle.pointer-focus:focus-visible{outline:none}.moon-label{white-space:nowrap;text-shadow:0 2px 8px #000;font-size:14px;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)}.moon-handle.beside .moon-label,.moon-handle.label-aside .moon-label{left:calc(50% + var(--aside,50%) + 6px);top:50%;transform:translateY(-50%)}.moon-label span{color:#bcb8ae;opacity:.65;margin-left:5px;font-size:16px}.moon-hint{letter-spacing:.02em;text-align:center;white-space:nowrap;color:#bfb7a8;text-shadow:0 2px 8px #000;font-size:11px;line-height:1.45;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.moon-handle.hint-below .moon-hint{top:calc(100% + 34px);bottom:auto}.moon-hint[hidden]{display:none}.moon-screen{--screen-size:148px;width:var(--screen-size);height:calc(var(--screen-size) + 23px);z-index:3;pointer-events:none;margin:0;position:absolute}.moon-screen figcaption{color:#d0cec7;letter-spacing:.025em;justify-content:space-between;align-items:center;height:23px;padding:0 2px 7px;font-size:11px;display:flex}.moon-screen figcaption span:last-child{color:var(--muted);font-size:10px}.moon-screen-frame{aspect-ratio:1;background:#30333abd;border:1px solid #c4beb08c;border-radius:7px;width:100%;padding:5px;box-shadow:0 8px 28px #0005,inset 0 0 0 1px #f0e6d50d}#moon-screen-canvas{background:#080c13;border-radius:3px;width:100%;height:100%;display:block}.moon-screen-frame{position:relative}.moon-screen-note{white-space:nowrap;pointer-events:none;color:#d0cec7;letter-spacing:.025em;text-shadow:0 1px 2px #000c,0 0 4px #000c;font-size:10px;line-height:1;position:absolute;transform:translateY(-50%)}.moon-screen-note[data-side=left]{transform:translate(-100%,-50%)}.moon-screen-note[hidden],.moon-screen[hidden]{display:none}.render-status{text-align:center;max-width:320px;color:var(--secondary);font-size:14px;line-height:1.7;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.render-status[hidden]{display:none}.controls{border:0;flex-flow:wrap;justify-content:center;gap:8px;width:min(390px,100%);margin:0 auto 20px;padding:0;display:flex}.playback-control{width:min(280px,100%);min-width:0;min-height:44px;color:var(--ink);border-radius:24px;align-items:center;display:flex}.playback-control #play{min-width:0;min-height:44px;color:inherit;white-space:nowrap;background:0 0;border:0;border-radius:0 24px 24px 0;flex:1;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.playback-control #play:hover{background:#ffffff0c}.playback-speed{border-right:1px solid var(--line);color:var(--secondary);flex:none;align-items:center;gap:8px;padding:0 14px;font-size:12px;display:flex}.playback-speed select{min-width:82px;max-width:118px;min-height:30px;color:var(--accent);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;font-size:12px}.playback-speed option{color:var(--ink);background:#141b27}.playback-control :focus-visible{outline:1px solid var(--accent);outline-offset:2px}.time-readout{color:#9aa4b2;font-variant-numeric:tabular-nums;flex-wrap:wrap;flex:0 0 100%;justify-content:center;align-items:center;gap:4px 16px;min-width:0;margin:0;font-size:11px;line-height:1.7;display:flex}.time-readout p{margin:0}.time-readout output{color:#c7ced7;margin-left:8px}.date-trigger{min-height:28px;color:var(--secondary);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;display:inline-flex}.date-trigger:hover{color:var(--ink)}.date-trigger output{color:inherit;margin:0}.date-trigger:disabled{cursor:default;opacity:1;color:var(--secondary);text-decoration:none}.date-trigger:disabled span[aria-hidden]{visibility:hidden}input[type=range]{accent-color:var(--accent);cursor:pointer;height:22px}.phase-panel{z-index:3;pointer-events:none;background:0 0;border:0;width:min(720px,100% - 48px);padding:0;position:absolute;bottom:58px;left:50%;transform:translate(-50%)}.phase-panel .controls,.phase-panel .phase-track,.phase-panel .orbit-slider{pointer-events:auto}.phase-heading{color:var(--muted);letter-spacing:.025em;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;font-size:11px;display:flex}.phase-heading output{font-variant-numeric:tabular-nums;color:var(--secondary)}.phase-heading output span{color:#555e6b;margin:0 5px}.orbit-periods{color:#a0a9b6;font-variant-numeric:tabular-nums;margin:-3px 0 16px;font-size:11px}.orbit-periods span{color:#636c79;padding:0 7px}.phase-track{grid-template-columns:repeat(9,minmax(0,1fr));align-items:start;gap:6px;display:grid;position:relative}.phase-track:before{content:"";background:var(--line);z-index:-1;height:1px;position:absolute;top:24px;left:5%;right:5%}.phase-button{min-width:0;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:8px;padding:0;font-size:12px;display:flex}.phase-button canvas{aspect-ratio:1;outline-offset:0;background:#090d14;border-radius:50%;outline:1px solid #c3c4c515;width:min(100%,48px);height:auto;transition:outline .2s,outline-offset .2s}.phase-button:hover canvas{outline-offset:4px;outline:1px solid #eee0c599}.phase-button[aria-pressed=true] canvas{outline:1px solid var(--accent);outline-offset:5px;box-shadow:0 0 22px #d4b88a20}.phase-button[aria-pressed=true]{color:var(--accent)}.phase-button span{min-height:15px}.orbit-slider{--phase-progress:50%;appearance:none;opacity:.45;touch-action:none;cursor:ew-resize;background:0 0;border:0;width:100%;margin:10px 0 0;padding:0;transition:opacity .2s;display:block;height:22px!important}.orbit-slider::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--accent) var(--phase-progress),#d2d4da66 var(--phase-progress));border-radius:4px;height:4px}.orbit-slider::-webkit-slider-thumb{appearance:none;background:var(--accent);border:0;border-radius:50%;width:14px;height:14px;margin-top:-5px}.orbit-slider::-moz-range-track{background:#d2d4da66;border-radius:4px;height:4px}.orbit-slider::-moz-range-progress{background:var(--accent);border-radius:4px;height:4px}.orbit-slider::-moz-range-thumb{background:var(--accent);border:0;border-radius:50%;width:14px;height:14px}.orbit-slider:hover,.orbit-slider:focus-visible,.orbit-slider.is-dragging{opacity:1}.event-readout{min-height:18px;color:var(--accent);text-align:center;word-break:keep-all;margin:6px 0 0;font-size:12px;line-height:1.5}.event-readout[hidden]{visibility:hidden;display:block}.caption{z-index:2;border-top:1px solid var(--line);width:min(390px,33vw);color:var(--muted);letter-spacing:.13em;padding-top:11px;font-size:.56rem;position:absolute;bottom:32px;left:clamp(24px,3vw,48px)}.caption p{justify-content:space-between;margin:0;display:flex}.prompt{z-index:2;color:var(--muted);white-space:nowrap;align-items:center;gap:9px;margin:0;font-size:.65rem;display:flex;position:absolute;bottom:30px;left:58%;transform:translate(-50%)}.prompt>span:first-child{background:#fb6656;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #fb463715}.prompt .prompt-divider{width:auto;height:auto;box-shadow:none;color:#596272;background:0 0;border-radius:0}.experiment-footer{z-index:2;flex-direction:column;align-items:flex-end;display:flex;position:absolute;bottom:12px;right:clamp(24px,3vw,48px)}.index{color:var(--muted);letter-spacing:.13em;margin:0;font-size:.56rem}.about-trigger{min-height:30px;color:var(--secondary);font:12px var(--sans);background:0 0;border:0;padding:3px 0 0 8px}.about-trigger:hover{text-underline-offset:4px;text-decoration:underline}dialog{width:min(560px,100% - 32px);max-height:calc(100svh - 48px);color:var(--secondary);word-break:keep-all;background:#141b27;border:1px solid #6b717e;border-radius:16px;padding:26px;font-size:16px;line-height:1.75;overflow-y:auto;box-shadow:0 24px 90px #0009}dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#04080dc9}.dialog-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.dialog-heading h2{color:var(--ink);margin:0;font-size:20px;font-weight:500;line-height:1.5}.dialog-close{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);background:0 0;border-radius:50%;flex-shrink:0;font-size:24px}dialog h3{color:var(--ink);margin:24px 0 4px;font-size:16px;font-weight:500}dialog p{margin:12px 0}.time-dialog{width:min(420px,100% - 32px);font-size:14px}#date-form{margin-top:18px}#date-form label{color:var(--muted);justify-content:space-between;margin-bottom:6px;font-size:12px;display:flex}#date-input{box-sizing:border-box;border:1px solid var(--control-line);width:100%;min-width:0;color:var(--ink);font:14px var(--sans);font-variant-numeric:tabular-nums;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#080e17;border-radius:8px;padding:11px 12px;display:block}.date-actions{gap:8px;margin-top:10px;display:flex}.date-actions button{border:1px solid var(--control-line);min-height:38px;color:var(--ink);background:0 0;border-radius:20px;flex:1;padding:7px 12px;font-size:13px}.date-actions button[type=submit]{background:var(--accent);color:#191c24;border-color:var(--accent)}.eclipse-year{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin:24px 0 6px;padding-top:14px;display:flex}.eclipse-year button{width:40px;height:38px;color:var(--ink);background:0 0;border:0;border-radius:20px;font-size:24px}.eclipse-year input{border:0;border-bottom:1px solid var(--line);width:90px;color:var(--ink);font:16px var(--sans);text-align:center;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-variant-numeric:tabular-nums;background:0 0;padding:5px}.eclipse-list{margin:0;padding:0;list-style:none}.eclipse-date{width:100%;min-height:44px;color:var(--secondary);font:13px var(--sans);font-variant-numeric:tabular-nums;text-align:left;background:0 0;border:0;border-bottom:1px solid #99a7ba1c;justify-content:space-between;align-items:center;gap:12px;padding:10px 5px;display:flex}.eclipse-date span:last-child{color:var(--accent)}.eclipse-date:hover,.eclipse-year button:hover:not(:disabled),.date-actions button:hover{background:#cdd8eb14}.date-actions button[type=submit]:hover{background:#f0e5cc}.time-dialog .eclipse-list-note{color:var(--muted);text-align:center;margin:12px 0 0;font-size:10px}dialog a{text-underline-offset:4px}.credits,.source-links{font-size:13px}.credits{border-top:1px solid var(--line);padding-top:15px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.no-script{z-index:30;background:#141b27;padding:20px;position:fixed;bottom:20px;left:20px}.view-hint{display:none}#time-rate{margin:0}.date-trigger:hover{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.caption.sr-only,.prompt.sr-only{border:0;width:1px;height:1px;margin:-1px;padding:0;inset:auto;transform:none}@media (width>=761px) and (height<=850px){.view-hint{display:none}}@media (width<=760px){.moon-screen{--screen-size:116px}.experiment{height:auto;min-height:100svh;padding-bottom:66px}.copy{pointer-events:none;margin:103px 20px 0;position:relative;top:auto;left:auto}.kicker{margin-bottom:16px}h1{font-size:clamp(5.5rem,27vw,8.2rem)}.statement{margin-top:28px;font-size:1.4rem}.scene-space{pointer-events:none;height:340px;margin-top:2px;display:block}.level-switch{width:max-content;margin:8px auto 0;position:relative;top:auto;left:auto;transform:none}.sun-direction{padding:6px 8px;font-size:11px}.view-hint{display:none}.phase-panel{width:auto;margin:20px 20px 0;padding:0;position:relative;bottom:auto;left:auto;transform:none}.controls{margin-bottom:20px;padding:0}.time-readout{gap:0 9px;font-size:10px}.date-trigger{min-height:28px;padding:0}.playback-control #play{padding:10px 12px;font-size:12px}.playback-speed{padding:0 12px}.playback-speed select{font-size:11px}.phase-track{gap:5px}.phase-track:before{top:15px}.phase-button canvas{width:30px}.phase-button{gap:7px;font-size:10px}.phase-heading{letter-spacing:0;gap:5px;font-size:10px}.event-readout{font-size:12px}.experiment-footer{bottom:12px;right:20px}.index{display:none}}@media (width<=380px){.phase-panel{margin-inline:15px;padding:0}.phase-track{gap:4px}.phase-button canvas{width:27px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
