@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}#seoul-view:disabled{cursor:default}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}.scene-space{display:none}.scene-label{pointer-events:none;white-space:nowrap;color:#d8d8d4;text-shadow:0 2px 8px #000;font-size:14px;position:absolute}.sun-label{color:#efdbb7;transform:translate(-50%)}.sun-direction{color:#dac7a3;white-space:nowrap;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#11172391;border:1px solid #b6a27a40;border-radius:20px;align-items:center;gap:7px;min-height:36px;padding:7px 11px;font-size:12px;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}.sun-direction:hover{border-color:#dcc9a3}.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{z-index:4;flex-direction:column;gap:10px;width:224px;display:flex;position:absolute;top:clamp(94px,12.6vh,130px);right:clamp(24px,3vw,48px)}.control{border:1px solid var(--control-line);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:25px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:42px;padding:10px 16px;font-size:14px;display:flex}.control:hover{background:#252b3780;border-color:#f1e3c5}.control svg{fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:18px;height:18px}.control .play-icon{fill:currentColor;stroke:none}.control .pause-icon{stroke-width:2.5px;display:none}#play[aria-pressed=true] .play-icon{display:none}#play[aria-pressed=true] .pause-icon{display:block}.speed-control{gap:8px;padding-inline:13px}.speed-control span{white-space:nowrap}.speed-control select{color:#e7d8b9;cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:0;min-width:0;max-width:118px;padding:0;font-size:12px}.speed-control option{color:#f0ede5;background:#141b27}.time-readout{color:#9aa4b2;text-align:right;pointer-events:none;font-variant-numeric:tabular-nums;font-size:11px;line-height:1.7}.time-readout p{margin:0}.time-readout output{color:#c7ced7;margin-left:8px}input[type=range]{accent-color:var(--accent);cursor:pointer;height:22px}.phase-panel{z-index:3;width:min(720px,100% - 48px);position:absolute;bottom:80px;left:50%;transform:translate(-50%)}.phase-heading{color:var(--muted);letter-spacing:.025em;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;font-size:12px;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{color:#bbb9b1;text-align:center;word-break:keep-all;min-height:20px;margin:9px 0 0;font-size:13px;line-height:1.5}.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}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}@media (width>=1600px){.phase-button canvas{width:56px}.phase-track:before{top:28px}}@media (width<=1100px) and (width>=761px){.controls{width:210px}}@media (width<=760px){.experiment{height:auto;min-height:100svh;padding-bottom:130px;overflow:hidden}.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:300px;margin-top:2px;display:block}.sun-direction{padding:6px 8px;font-size:11px}.controls{flex-flow:wrap;gap:7px;width:auto;margin:10px 20px 0;position:relative;top:auto;right:auto}.control{flex:1;gap:6px;min-width:0;padding:10px 12px;font-size:13px}.speed-control{flex-wrap:wrap;flex:1.5;justify-content:center;gap:2px}.speed-control select{max-width:100%;font-size:11px}.time-readout{flex:0 0 100%;justify-content:space-between;margin-top:3px;display:flex}.phase-panel{width:auto;margin:29px 20px 0;position:relative;bottom:auto;left:auto;transform:none}.phase-track{gap:5px}.phase-track:before{top:17px}.phase-button canvas{width:34px}.phase-button{font-size:11px}.phase-heading{letter-spacing:0;font-size:12px}.event-readout{min-height:40px;font-size:13px}.caption{width:calc(100% - 40px);bottom:67px;left:20px}.prompt{white-space:normal;max-width:calc(100% - 110px);line-height:1.5;bottom:22px;left:20px;transform:none}.experiment-footer{bottom:14px;right:20px}.index{display:none}}@media (width<=380px){.controls{gap:5px;margin-inline:15px}.control{padding-inline:10px;font-size:12px}.phase-panel{margin-inline:15px}.phase-track{gap:4px}.phase-button canvas{width:31px}.phase-heading{gap:4px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}#rotation-canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}.copy h1{font-size:clamp(6rem,10vw,11rem)}.day-track{justify-content:space-between;margin:24px 0 14px;display:flex}.day-track button{min-width:64px;min-height:48px;color:var(--ink);font-variant-numeric:tabular-nums;background:0 0;border:0;gap:7px;padding:6px;font-size:13px;display:grid}.day-track button span{color:var(--muted);font-size:11px}.day-track button:hover{color:var(--accent)}#observer-label{color:#f4d6a0;text-shadow:0 1px 2px #080c13,0 0 3px #080c13c9,0 2px 7px #080c1380;transform:translate(12px,-50%)}#north-label{color:#b7c5d9;font-size:12px;transform:translate(-50%,-130%)}@media (width>=761px){.phase-panel{width:min(640px,100% - 48px)}}@media (width<=760px){.copy h1{font-size:clamp(4.8rem,22vw,8rem)}.scene-space{height:320px}.statement{font-size:1.25rem}.day-track{margin-top:16px}}#sun-label{font-size:12px;transform:translate(-50%,14px)}.phase-panel .controls{flex-flow:wrap;justify-content:center;gap:8px;width:min(390px,100%);margin:0 auto 20px;display:flex;position:static}.phase-panel .controls .control{flex:145px;width:auto;min-width:0}.phase-panel .controls .speed-control{flex:1.4 190px}.phase-panel .time-readout{text-align:center;flex:0 0 100%;justify-content:center;gap:16px;margin: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}@media (width<=760px){.phase-panel .controls{margin:0 auto 20px}.phase-panel .controls .control{flex:110px}.phase-panel .controls .speed-control{flex:1.4 150px}.phase-panel .time-readout{flex-wrap:wrap;gap:10px}}.day-track{height:60px;margin:18px 7px 8px;display:block;position:relative}.day-track button{white-space:nowrap;min-width:0;padding:6px 0;position:absolute;top:0;transform:translate(-50%)}.day-track button:first-child{left:0}.day-track button:nth-child(2){left:25%}.day-track button:nth-child(3){left:50%}.day-track button:nth-child(4){left:75%}.day-track button:nth-child(5){left:100%}@media (width<=380px){.day-track button{font-size:11px}.day-track button span{font-size:9px}}#seoul-sky{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}#seoul-sky[hidden]{display:none}.ground-view #rotation-canvas{visibility:hidden}.ground-view .scene-label,.ground-view .copy .statement{display:none}.ground-view .copy h1{font-size:clamp(3rem,6vw,6rem)}.ground-view #scene-prompt{visibility:hidden}@media (width<=760px){.ground-view .copy .statement{display:block}.ground-view .copy h1{font-size:clamp(4.8rem,22vw,8rem)}}#east-label,#west-label{color:#e9d3a5;font-size:12px;transform:translate(-50%,-150%)}#east-label,#west-label,#north-label,#south-label,#ground-north-label{color:#f4e7cb;-webkit-text-stroke:1.6px #101217;paint-order:stroke fill;text-shadow:0 1px 2px #000b,0 2px 5px #0006;font-weight:600}@supports not (paint-order:stroke fill){#east-label,#west-label,#north-label,#south-label,#ground-north-label{-webkit-text-stroke:0;text-shadow:-1px -1px #101217,1px -1px #101217,-1px 1px #101217,1px 1px #101217,0 2px 4px #0008}}#south-label,#ground-north-label{font-size:12px;transform:translate(-50%,-150%)}.sun-direction{z-index:5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#fff0c9;cursor:pointer;pointer-events:auto;background:#eedebb4d;border:1px solid #fff4;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:48px;height:48px;transition:background .2s,box-shadow .2s;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 0 1px #fff3,0 3px 14px #0003}.sun-direction[hidden]{display:none}.sun-direction svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px;transform:rotate(var(--direction));filter:drop-shadow(0 1px 1px #0008)}.sun-direction span{letter-spacing:.05em;text-shadow:0 1px 2px #000c;font-size:9px}.sun-direction:hover{background:#eedebb6b;box-shadow:inset 0 1px #fff5,0 3px 18px #0004}.sun-direction:focus-visible{outline-offset:4px;outline:2px solid #f4ddb0}.cardinal-direction{pointer-events:none;cursor:default;color:#f0eadd;background:#dbe1e838;border-color:#ffffff30;width:36px;height:36px;padding:0;box-shadow:inset 0 1px #fff2,0 2px 8px #0003}.cardinal-direction svg{width:16px;height:16px}.cardinal-direction span{font-size:10px;font-weight:600}.copy h1{text-shadow:0 2px 18px #080c1366}.copy .kicker{text-shadow:0 1px 3px #080c13,0 0 10px #080c1380}
