:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#fff;--color-surface-soft:#f9fafb;--color-surface-elevated:#fff;--color-surface-elevated-hover:var(--color-surface-soft);--color-surface-inset:#eef1f5;--color-hairline:#e5e7eb;--color-control-track:#e5e7eb;--color-ink:#13151a;--color-body-muted:#6b7280;--color-on-primary:#fff;--color-on-ink-muted:#ffffffa3;--color-disabled:#c4c9cb;--color-primary:#006eff;--color-primary-hover:#005bed;--color-semantic-success:#32be81;--color-semantic-success-bg:#ecfdf5;--color-semantic-success-text:#059669;--color-semantic-error:#f33942;--color-semantic-error-hover:#e0343d;--color-semantic-error-bg:#fff5f7;--color-semantic-error-text:#f33942;--color-semantic-warning:#ffae00;--color-semantic-warning-bg:#fff9e3;--color-semantic-warning-text:#eb8e02;--color-semantic-info:var(--color-primary);--color-semantic-info-bg:#eff6ff;--color-semantic-neutral:var(--color-body-muted);--color-semantic-neutral-bg:#f3f4f6;--spacing-4:4px;--spacing-8:8px;--spacing-12:12px;--spacing-16:16px;--spacing-20:20px;--spacing-24:24px;--spacing-32:32px;--spacing-40:40px;--spacing-120:120px;--spacing-240:240px;--radius-none:0;--radius-6:6px;--radius-10:10px;--radius-12:12px;--radius-16:16px;--radius-20:20px;--radius-pill:9999px;--radius-full:50%;--font-text:"Pretendard Variable", "Pretendard", system-ui, -apple-system, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SFMono-Regular", Menlo, Monaco, monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--motion-instant:80ms;--motion-fast:.12s;--motion-normal:.2s;--motion-expand:.24s;--motion-slow:.32s;--ease-standard:ease;--ease-out-quad:cubic-bezier(.25, .46, .45, .94);--ease-out-expo:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--shadow-level-1:0 4px 12px #0f172a14;--shadow-level-2:0 8px 24px #0f172a1f;--shadow-level-3:0 16px 48px #0f172a2e;--modal-width-sm:400px;--modal-width-md:480px;--modal-width-lg:640px;--modal-width-xl:880px}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#111212;--color-surface-soft:#18191b;--color-surface-elevated:#27282d;--color-surface-elevated-hover:color-mix(in oklab, var(--color-surface-elevated) 93%, var(--color-body-muted) 7%);--color-surface-inset:#2b2c30;--color-hairline:#25272b;--color-control-track:#3e3e41;--color-ink:#e5e5e5;--color-body-muted:#959799;--color-disabled:#424347;--color-primary:#1c82ff;--color-primary-hover:#3791ff;--color-semantic-success:#34d399;--color-semantic-success-bg:#05966926;--color-semantic-success-text:var(--color-semantic-success);--color-semantic-error:#f74b53;--color-semantic-error-hover:#e3454c;--color-semantic-error-bg:#f74b5326;--color-semantic-error-text:var(--color-semantic-error);--color-semantic-warning:#fe9f19;--color-semantic-warning-bg:#fe9f1926;--color-semantic-warning-text:var(--color-semantic-warning);--color-semantic-info-bg:#006eff26;--color-semantic-neutral:#c7c9cb;--color-semantic-neutral-bg:#95979926;--shadow-level-1:0 4px 12px #0000004d;--shadow-level-2:0 8px 24px #00000073;--shadow-level-3:0 16px 48px #0009}.display-80sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-3px;font-size:80px;line-height:1.05}.display-56sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-1.8px;font-size:56px;line-height:1.1}.display-40sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-1px;font-size:40px;line-height:1.15}.display-28sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-.6px;font-size:28px;line-height:1.2}.title-24sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-.5px;font-size:24px;line-height:1.22}.title-22sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-.4px;font-size:22px;line-height:1.25}.title-20sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-.2px;font-size:20px;line-height:1.3}.title-18sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-.1px;font-size:18px;line-height:1.35}.title-16sb{font-family:var(--font-text);font-weight:var(--fw-semibold);letter-spacing:-.05px;font-size:16px;line-height:1.4}.body-18r{font-family:var(--font-text);font-weight:var(--fw-regular);letter-spacing:-.1px;font-size:18px;line-height:1.5}.body-16r{font-family:var(--font-text);font-weight:var(--fw-regular);letter-spacing:-.05px;font-size:16px;line-height:1.5}.body-15r{font-family:var(--font-text);font-weight:var(--fw-regular);letter-spacing:-.03px;font-size:15px;line-height:1.5}.body-14r{font-family:var(--font-text);font-weight:var(--fw-regular);letter-spacing:0;font-size:14px;line-height:1.5}.caption-13r{font-family:var(--font-text);font-weight:var(--fw-regular);letter-spacing:0;font-size:13px;line-height:1.4}.label-18m{font-family:var(--font-text);font-weight:var(--fw-medium);letter-spacing:-.16px;font-size:18px;line-height:1.2}.label-16m{font-family:var(--font-text);font-weight:var(--fw-medium);letter-spacing:-.16px;font-size:16px;line-height:1.2}.label-15m{font-family:var(--font-text);font-weight:var(--fw-medium);letter-spacing:-.16px;font-size:15px;line-height:1.2}.label-14m{font-family:var(--font-text);font-weight:var(--fw-medium);letter-spacing:-.16px;font-size:14px;line-height:1.2}.eyebrow-13m{font-family:var(--font-text);font-weight:var(--fw-medium);letter-spacing:.4px;font-size:13px;line-height:1.3}.mono-13r{font-family:var(--font-mono);font-weight:var(--fw-regular);letter-spacing:0;font-size:13px;line-height:1.5}*,:before,:after{box-sizing:border-box}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}:where(button,a,input,[tabindex]):focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}body{word-break:keep-all;text-wrap:pretty}h2,h3{text-wrap:balance}
*{margin:0;padding:0}html,body{height:100%}body{background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.app-shell{flex-direction:column;width:100vw;height:100dvh;display:flex}.muted{color:var(--color-body-muted)}.eyebrow{color:var(--color-body-muted);text-transform:uppercase}.tabular{font-variant-numeric:tabular-nums}.topbar{align-items:center;gap:var(--spacing-8);height:56px;padding:0 var(--spacing-16);border-bottom:1px solid var(--color-hairline);display:flex}.brand{text-overflow:ellipsis;white-space:nowrap;border-radius:var(--radius-6);min-width:0;overflow:hidden}.narrow-only{display:none}.topbar-link{align-items:center;gap:var(--spacing-4);color:var(--color-body-muted);text-decoration:none;display:inline-flex}.topbar .topbar-link{margin-left:auto}.topbar-link:hover{color:var(--color-ink)}a.brand,a.button,a.icon-button{color:inherit;text-decoration:none}.topbar-date{margin-left:auto;margin-right:var(--spacing-4);color:var(--color-body-muted);white-space:nowrap}.button{justify-content:center;align-items:center;gap:var(--spacing-8);height:48px;padding:0 var(--spacing-20);border-radius:var(--radius-10);white-space:nowrap;transition:background var(--motion-normal) var(--ease-in-out), transform var(--motion-fast) var(--ease-standard);border:1px solid #0000;display:inline-flex}.button:active:not(:disabled){transform:scale(.98)}.button-primary{background:var(--color-primary);color:var(--color-on-primary)}.button-primary:hover:not(:disabled){background:var(--color-primary-hover)}.button-primary:disabled{background:var(--color-disabled);cursor:not-allowed}.button-secondary{background:var(--color-surface-elevated);color:var(--color-ink)}.button-secondary:hover{background:var(--color-surface-elevated-hover)}.button-ghost{color:var(--color-ink)}.button-ghost:hover{background:var(--color-surface-elevated)}.button:disabled{cursor:not-allowed}.button-secondary:disabled,.button-ghost:disabled{color:var(--color-disabled)}.button-sm{height:32px;padding:0 var(--spacing-12)}.error-text{color:var(--color-semantic-error-text)}.topbar-action{align-items:center;gap:var(--spacing-4);height:44px;padding:0 var(--spacing-12);border-radius:var(--radius-10);color:var(--color-body-muted);white-space:nowrap;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);flex:none;text-decoration:none;display:inline-flex}.topbar-action:hover{background:var(--color-surface-elevated);color:var(--color-ink)}.icon-button{border-radius:var(--radius-10);width:44px;height:44px;color:var(--color-body-muted);transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);flex:none;place-items:center;display:grid}.icon-button:hover{background:var(--color-surface-elevated);color:var(--color-ink)}.actions{justify-content:flex-end;gap:var(--spacing-12);flex-wrap:wrap;display:flex}.toggle-group{padding:var(--spacing-4);border-radius:var(--radius-10);background:var(--color-surface-inset);flex:none;display:inline-flex}.toggle-item{border-radius:var(--radius-6);height:36px;color:var(--color-body-muted);font-weight:var(--fw-medium);transition:color var(--motion-normal) var(--ease-in-out), background var(--motion-normal) var(--ease-in-out);padding:0 14px}.toggle-item:hover{color:var(--color-ink)}.toggle-item[aria-pressed=true]{background:var(--color-canvas);color:var(--color-ink);box-shadow:0 1px 2px #00000014}.badge{height:24px;padding:0 var(--spacing-8);border-radius:var(--radius-pill);font-weight:var(--fw-medium);white-space:nowrap;align-items:center;display:inline-flex}.badge-success{background:var(--color-semantic-success-bg);color:var(--color-semantic-success-text)}.badge-warning{background:var(--color-semantic-warning-bg);color:var(--color-semantic-warning-text)}.badge-error{background:var(--color-semantic-error-bg);color:var(--color-semantic-error-text)}.stage{flex:1;min-height:0;position:relative}.stage .globe-wrap{background:var(--color-surface-soft);position:absolute;inset:0}.guess-pin{pointer-events:none}.guess-pin svg{transform-origin:50% 100%;filter:drop-shadow(0 4px 6px #00000073);animation:pin-drop var(--motion-slow) var(--ease-out-expo);display:block;overflow:visible}.guess-pin-body{fill:var(--color-primary);stroke:var(--color-on-primary);stroke-width:2px}.guess-pin-dot{fill:var(--color-on-primary)}@keyframes pin-drop{0%{opacity:0;transform:translateY(-28px)scale(.9)}60%{opacity:1;transform:translateY(0)scaleY(.92)}to{transform:translateY(0)scale(1)}}.scorebox{top:var(--spacing-16);left:var(--spacing-16);gap:var(--spacing-4);min-width:96px;padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-16);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-2);pointer-events:none;flex-direction:column;display:flex;position:absolute}.overlay{z-index:3;padding:var(--spacing-16);background:#00000080;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow-y:auto}.overlay-page{padding:var(--spacing-32) 0 0;background:var(--color-canvas);flex-direction:column;justify-content:flex-start;align-items:center}.overlay-page>*{flex-shrink:0}.overlay-page>.result{padding:0 var(--spacing-16)}.overlay-page>section{margin-bottom:var(--spacing-40)}.overlay-page>.site-footer{margin-top:auto}.modal{width:min(var(--modal-width-md), 100%);padding:var(--spacing-40) var(--spacing-32) var(--spacing-32);border-radius:var(--radius-20);background:var(--color-canvas);box-shadow:var(--shadow-level-3);text-align:center;flex-direction:column;align-items:center;display:flex}.modal .eyebrow,.modal h1{margin-bottom:var(--spacing-8)}.modal .button{margin-top:var(--spacing-32)}.modal .intro-archive-link{margin-top:var(--spacing-16)}.panel{gap:var(--spacing-12);width:min(var(--modal-width-lg), 100%);margin:calc(-1 * var(--spacing-20)) auto 0;padding:var(--spacing-24);border-radius:var(--radius-20) var(--radius-20) 0 0;background:var(--color-canvas);box-shadow:var(--shadow-level-3);flex-direction:column;display:flex;position:relative}.panel-head{justify-content:space-between;align-items:baseline;gap:var(--spacing-12);display:flex}.panel .actions{margin-top:var(--spacing-12)}.hint{padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-10);background:var(--color-surface-inset)}.hint b{font-weight:var(--fw-semibold);margin-right:var(--spacing-4)}.result-line{align-items:center;gap:var(--spacing-8);display:flex}.result{gap:var(--spacing-16);flex-direction:column;width:min(520px,100%);display:flex}.result h2{margin-top:var(--spacing-24)}.path-card{gap:var(--spacing-16);flex-direction:column;display:flex}.path-card-canvas{border-radius:var(--radius-16);width:100%;height:auto;display:block}.explore-button{align-self:stretch}.explore-page{padding-top:0}.path-card>.muted{text-align:right}.stops{gap:var(--spacing-8);flex-direction:column;list-style:none;display:flex}.stop{align-items:center;gap:var(--spacing-16);padding:var(--spacing-16);border-radius:var(--radius-16);background:var(--color-surface-soft);display:flex}.stop-num{width:16px;color:var(--color-body-muted);text-align:center;flex:none}.stop-body{flex:1;min-width:0}.account-bar{justify-content:space-between;align-items:center;gap:var(--spacing-12);display:flex}.account-who{align-items:center;gap:var(--spacing-8);min-width:0;display:inline-flex}.avatar{object-fit:cover;border-radius:50%;flex:none}.avatar-initial{background:var(--color-hairline);color:var(--color-ink);place-items:center;display:inline-grid}.account-bar b{color:var(--color-ink);font-weight:var(--fw-medium)}.account-bar-stack{flex-direction:column;align-items:stretch}.modal .account-bar{margin-top:var(--spacing-24);padding-top:var(--spacing-16);border-top:1px solid var(--color-hairline);text-align:left;align-self:stretch}.modal .account-bar-stack{text-align:center}.modal .account-bar-stack .actions{justify-content:center}.modal .account-bar .button{margin-top:0}.film{gap:var(--spacing-12);flex-direction:column;display:flex}.film-card{align-items:center;gap:var(--spacing-16);padding:var(--spacing-12);background:var(--color-surface-elevated);color:inherit;border-radius:12px;text-decoration:none;display:flex}.film-card:hover .film-link{text-decoration:underline}.film-poster{object-fit:cover;border-radius:6px;flex:none;width:64px;height:96px}.film-body{gap:var(--spacing-4);flex-direction:column;min-width:0;display:flex}.film-link{color:var(--color-primary)}.leaderboard{gap:var(--spacing-12);flex-direction:column;display:flex}.leaderboard-summary{align-items:center;gap:var(--spacing-8);display:flex}.badge-info{background:var(--color-semantic-info-bg);color:var(--color-semantic-info)}.board-rows{border-radius:var(--radius-16);background:var(--color-surface-soft);list-style:none;overflow:hidden}.board-row{align-items:center;gap:var(--spacing-16);min-height:48px;padding:0 var(--spacing-16);display:flex}.board-row+.board-row{border-top:1px solid var(--color-hairline)}.board-row.is-me{background:var(--color-surface-elevated)}.board-rank{width:24px;color:var(--color-body-muted);text-align:right;flex:none}.board-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.board-score{text-align:right;flex:none;min-width:48px}.page{flex-direction:column;height:100dvh;display:flex;overflow-y:auto}.page>*{flex-shrink:0}.page>.site-footer{margin-top:auto}.page>:nth-last-child(2){margin-bottom:var(--spacing-40)}.page-body{gap:var(--spacing-16);width:min(var(--modal-width-lg), 100%);padding:var(--spacing-32) var(--spacing-16) var(--spacing-40);flex-direction:column;margin:0 auto;display:flex}.page-body h2{margin-top:var(--spacing-24)}.archive-list{gap:var(--spacing-8);flex-direction:column;list-style:none;display:flex}.archive-row{align-items:center;gap:var(--spacing-16);padding:var(--spacing-16);border-radius:var(--radius-16);background:var(--color-surface-soft);color:var(--color-ink);transition:background var(--motion-fast) var(--ease-standard);text-decoration:none;display:flex}.archive-row:hover{background:var(--color-surface-elevated)}.archive-row>svg{color:var(--color-body-muted)}.archive-row-body{gap:var(--spacing-4);flex-direction:column;flex:1;min-width:0;display:flex}.page-body-wide{width:min(1200px,100%)}.archive-layout{gap:var(--spacing-24);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;display:grid}.archive-globe{top:var(--spacing-16);z-index:1;position:sticky}.archive-map{border-radius:var(--radius-16);height:calc(100dvh - 120px);min-height:420px;overflow:hidden}.archive-reset{left:var(--spacing-16);top:var(--spacing-16);box-shadow:var(--shadow-level-2);position:absolute}.archive-side{gap:var(--spacing-16);flex-direction:column;min-width:0;display:flex}.archive-side h2{margin-top:var(--spacing-16)}@media (max-width:900px){.archive-layout{grid-template-columns:1fr}.archive-globe{margin:0 calc(-1 * var(--spacing-16));padding:var(--spacing-8) var(--spacing-16);background:var(--color-canvas);top:0}.archive-map{height:42dvh;min-height:260px}}.archive-stops{gap:var(--spacing-8);flex-direction:column;list-style:none;display:flex}.archive-stop{gap:var(--spacing-8);width:100%;padding:var(--spacing-20);border-radius:var(--radius-16);background:var(--color-surface-soft);text-align:left;transition:background var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);flex-direction:column;display:flex}.archive-stop:hover{background:var(--color-surface-elevated)}.archive-stop.is-selected{background:var(--color-surface-elevated);box-shadow:inset 0 0 0 1px var(--color-primary)}.archive-stop-head{justify-content:space-between;align-items:center;gap:var(--spacing-12);display:flex}.legal section{gap:var(--spacing-8);flex-direction:column;display:flex}.legal h2{margin-top:var(--spacing-16)}.legal ul{gap:var(--spacing-4);padding-left:var(--spacing-20);color:var(--color-body-muted);flex-direction:column;display:flex}.legal p{color:var(--color-body-muted)}.about-cta{padding:var(--spacing-16);justify-content:center;display:flex}.site-footer{align-items:center;gap:var(--spacing-8);width:100%;margin-top:var(--spacing-40);padding:var(--spacing-24) var(--spacing-16) var(--spacing-32);border-top:1px solid var(--color-hairline);color:var(--color-body-muted);text-align:center;flex-direction:column;display:flex}.site-footer-meta{justify-content:center;gap:var(--spacing-8);flex-wrap:wrap;display:flex}.site-footer-links{justify-content:center;gap:var(--spacing-4) var(--spacing-16);flex-wrap:wrap;display:flex}.site-footer-links a,.site-footer-links button{color:var(--color-body-muted);font-size:inherit;text-decoration:none}.site-footer-links a:hover,.site-footer-links button:hover{color:var(--color-ink)}.site-footer-links .is-strong{color:var(--color-ink);font-weight:var(--fw-medium)}.review{width:min(880px,100%)}.review-index{gap:var(--spacing-4);padding:var(--spacing-16);border-radius:var(--radius-16);background:var(--color-surface-soft);flex-direction:column;display:flex}.review-index a{color:var(--color-ink);text-decoration:none}.review-theme{gap:var(--spacing-16);padding-top:var(--spacing-24);border-top:1px solid var(--color-hairline);scroll-margin-top:var(--spacing-16);flex-direction:column;display:flex}.review-theme-head{justify-content:space-between;align-items:flex-start;gap:var(--spacing-16);display:flex}.review-questions{gap:var(--spacing-8);flex-direction:column;list-style:none;display:flex}.review-question{gap:var(--spacing-8);padding:var(--spacing-20);border-radius:var(--radius-16);background:var(--color-surface-soft);flex-direction:column;display:flex}.review-fields{gap:var(--spacing-8) var(--spacing-12);grid-template-columns:48px 1fr;display:grid}.review-fields dt{color:var(--color-body-muted)}.review-source{display:block}.cookie-banner{left:50%;bottom:var(--spacing-16);z-index:20;gap:var(--spacing-12);width:min(var(--modal-width-md), calc(100vw - 32px));padding:var(--spacing-20);border-radius:var(--radius-16);background:var(--color-canvas);box-shadow:var(--shadow-level-3);flex-direction:column;display:flex;position:fixed;transform:translate(-50%)}.text-link{color:var(--color-primary);text-decoration:none}.text-link:hover{text-decoration:underline}.cookie-banner b{font-weight:var(--fw-semibold);margin-right:var(--spacing-4)}.button-md{height:40px;padding:0 var(--spacing-16)}button.topbar-link{align-self:flex-start}@media (max-width:480px){.wide-only{display:none}.topbar{gap:var(--spacing-4);padding:0 var(--spacing-12)}.topbar-action,.toggle-item{padding:0 var(--spacing-8)}.narrow-only{display:inline}.panel{padding:var(--spacing-20) var(--spacing-16) var(--spacing-16)}.panel .actions .button{flex:1}.modal{padding:var(--spacing-32) var(--spacing-24) var(--spacing-24)}}
