:root{--panel-bg:#161e34a3;--panel-border:#ffffff1f;--text:#fdf6ec;--muted:#fdf6eca3;--accent:#ff8a5b;--accent-2:#ffd58a;--navy:#1c2c47;color:var(--text);--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{background:#c9d6e3;width:100%;height:100%;margin:0;overflow:hidden}html{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}#root{height:100dvh}button,a{touch-action:manipulation}canvas{touch-action:none}.panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(14px)saturate(140%);border:1px solid var(--panel-border);z-index:20;color:var(--text);border-radius:16px;padding:14px 16px;position:fixed;box-shadow:0 10px 30px #080c1859}.hud-top{top:calc(16px + var(--sat));left:calc(16px + var(--sal));right:calc(16px + var(--sar));z-index:21;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:fixed}.hud-top>*{pointer-events:auto}.hud-top .panel{position:relative}.course{flex:none;width:min(300px,100vw - 32px);max-height:calc(100vh - 200px);overflow-y:auto}.eyebrow{color:var(--accent-2);font-size:12px;font-weight:700}.course-head{align-items:center;gap:8px;display:flex}.course-head .eyebrow{margin-right:auto}.fold-button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;margin:-4px -6px -4px 0;display:grid}.fold-button:hover,.side-head:hover .fold-icon{color:var(--text)}.fold-button:hover{background:#ffffff14}.fold-icon{flex:none;transition:transform .15s}[aria-expanded=false]>.fold-icon,[aria-expanded=false].fold-button .fold-icon{transform:rotate(-90deg)}.side-stack{pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;min-width:0;display:flex}.side-stack>*{pointer-events:auto}.side-panel{max-width:100%;padding:8px 10px}.side-head{width:100%;font:inherit;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:2px 4px;display:flex}.side-title{color:var(--text);font-size:13px;font-weight:800}.side-sub{align-items:center;gap:4px;margin-right:auto;font-size:12px;display:flex}.side-body{margin-top:8px}.avatar-mini{width:22px;height:22px;margin:-4px 0}.help-panel{width:300px}.help-list{gap:8px;margin:0;padding:0 4px 4px;display:grid}.help-row{grid-template-columns:112px 1fr;align-items:start;gap:10px;display:grid}.help-row dt{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.help-keys{align-items:center;gap:3px;display:inline-flex}.help-or{color:var(--muted);margin-right:1px;font-size:11px}kbd{min-width:22px;font:inherit;text-align:center;color:var(--text);background:#ffffff14;border:1px solid #ffffff38;border-bottom-width:2px;border-radius:6px;padding:1px 6px;font-size:11px;font-weight:700;line-height:18px;display:inline-block}.help-row dd{color:var(--text);margin:0;padding-top:1px;font-size:13px;font-weight:600}.help-row small{color:var(--muted);margin-top:1px;font-size:11px;font-weight:400;display:block}@media (hover:none),(pointer:coarse),(pointer:none),(width<=760px){.help-panel{display:none}}.link-button{font:inherit;color:var(--accent-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:12px;font-weight:700;text-decoration:underline}.mountain-tabs{scrollbar-width:none;gap:6px;margin:8px 0 0;display:flex;overflow-x:auto}.mountain-tab{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:#ffffff0a;border:1.5px solid #ffffff26;border-radius:10px;flex:1 0 auto;gap:1px;padding:6px 10px;display:grid}.mountain-tab:hover{border-color:#fff6}.mountain-tab.selected{border-color:var(--accent-2);cursor:default;background:#ffd58a24}.mountain-tab-name{font-size:14px;font-weight:700}.mountain-tab-meta{color:var(--muted);font-size:11px}.level{color:#b9eaa9;background:#8cd6802e;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:700}.level-보통{color:var(--accent-2);background:#ffd58a2e}.level-어려움{color:#ffadad;background:#ff787833}.course h1{margin:2px 0;font-size:20px}.course-meta{color:var(--muted);font-size:13px}.stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 0;display:grid}.stats div{background:#ffffff12;border-radius:8px;padding:6px 8px}.stats dt{color:var(--muted);font-size:11px}.stats dd{margin:2px 0 0;font-size:14px;font-weight:700}.sections{margin:12px 0 0;padding:0;font-size:13px;list-style:none}.sections li{color:var(--muted);justify-content:space-between;gap:8px;padding:5px 0 5px 18px;display:flex;position:relative}.sections li:before{content:"";background:0 0;border:2px solid #ffffff4d;border-radius:50%;width:8px;height:8px;margin-top:-4px;position:absolute;top:50%;left:3px}.sections li.done{color:#fdf6ec66}.sections li.done:before{background:#fdf6ec8c;border-color:#fdf6ec8c}.sections li.now{color:var(--text);font-weight:700}.sections li.now:before{border-color:var(--accent);background:var(--accent)}.sec-meta{white-space:nowrap;font-variant-numeric:tabular-nums}.progress{left:50%;bottom:calc(16px + var(--sab));width:min(460px,100vw - 32px);padding:12px 18px;transform:translate(-50%)}.hud-top .progress{position:fixed}.progress-main{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:10px;display:flex}.progress-label{letter-spacing:.04em;color:var(--muted);font-size:11px;font-weight:700;display:block}.progress-alt{font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1.1}.progress-alt small{color:var(--muted);margin-left:2px;font-size:14px;font-weight:700}.progress-next{text-align:right;min-width:0}.progress-next-name{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:800;line-height:1.2;display:block;overflow:hidden}.progress-next-dist{color:var(--accent-2);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.progress-row{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;margin-top:7px;font-size:11px;display:flex}.bar{background:#ffffff26;border-radius:99px;height:6px;position:relative;overflow:hidden}.bar-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), var(--accent));height:100%;box-shadow:0 0 10px #ffaa6e99}.tick{background:#ffffff73;width:2px;height:100%;margin-left:-1px;position:absolute;top:0}.tick.passed{background:#1c2c47b3}.hold-button{z-index:20;color:#fff;-webkit-user-select:none;user-select:none;touch-action:none;cursor:pointer;border:none;border-radius:50%;font-weight:800;transition:transform .1s;position:fixed}.hold-button.jump{right:calc(20px + var(--sar));bottom:calc(204px + var(--sab));background:var(--accent);width:76px;height:76px;font-size:16px;box-shadow:0 8px 24px #ff8a5b66,inset 0 0 0 1.5px #ffffff40}.hold-button:active{transform:scale(.92)}.stick-zone{z-index:18;touch-action:none;-webkit-user-select:none;user-select:none;width:50vw;height:56vh;position:fixed;bottom:0;left:0}.stick{left:calc(100px + var(--sal));bottom:calc(136px + var(--sab));-webkit-backdrop-filter:blur(6px);opacity:.5;pointer-events:none;background:#161e3461;border:1.5px solid #ffffff4d;border-radius:50%;width:144px;height:144px;margin:-72px 0 0 -72px;transition:opacity .15s;position:fixed}.stick.on{opacity:1}.stick-knob{background:#fdf6eceb;border-radius:50%;width:56px;height:56px;margin:-28px 0 0 -28px;position:absolute;top:50%;left:50%;box-shadow:0 4px 14px #00000059}@media (hover:hover) and (pointer:fine){.hold-button,.stick-zone{display:none}}.emote-dial{right:calc(32px + var(--sar));bottom:calc(204px + 76px + 14px + var(--sab));z-index:20;position:fixed}.emote-dial-toggle{-webkit-backdrop-filter:blur(6px);cursor:pointer;background:#161e349e;border:1.5px solid #ffffff4d;border-radius:50%;width:52px;height:52px;font-size:22px;line-height:1;transition:transform .1s;box-shadow:0 6px 18px #0000004d}.emote-dial-toggle:active{transform:scale(.92)}.emote-dial-toggle.on{background:var(--accent);border-color:#0000}.emote-dial-menu{-webkit-backdrop-filter:blur(10px);transform-origin:100% 100%;background:#161e34db;border-radius:18px;grid-template-columns:repeat(2,66px);gap:6px;padding:8px;animation:.16s ease-out emote-dial-in;display:grid;position:absolute;bottom:calc(100% + 10px);right:0;box-shadow:0 10px 28px #00000059}.emote-dial-item{color:#fdf6ec;white-space:nowrap;cursor:pointer;background:#ffffff14;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;height:56px;padding:0;font-size:10.5px;font-weight:700;display:flex}.emote-dial-item:active{background:#fff3}.emote-dial-icon{font-size:20px;line-height:1}@keyframes emote-dial-in{0%{opacity:0;transform:scale(.85)}}@media (width<=760px),(height<=500px){.emote-dial{bottom:calc(34px + 76px + 14px + var(--sab))}}@media (height<=500px){.emote-dial-menu{grid-template-columns:repeat(4,58px);bottom:0;right:calc(100% + 10px)}}@media (hover:hover) and (pointer:fine){.emote-dial{display:none}}@media (prefers-reduced-motion:reduce){.emote-dial-menu{animation:none}}.walk-button{left:calc(100px - 48px + var(--sal));bottom:calc(136px - 48px + var(--sab));z-index:20;color:#fff;width:96px;height:96px;font:inherit;-webkit-user-select:none;user-select:none;touch-action:manipulation;cursor:pointer;background:#2fa84f;border:2px solid #ffffff59;border-radius:50%;align-content:center;place-items:center;gap:2px;font-size:19px;font-weight:800;transition:transform .1s,background .15s;display:grid;position:fixed;box-shadow:0 10px 26px #2fa84f73,inset 0 0 0 1.5px #fff3}.walk-button:active{transform:scale(.93)}.walk-button.on{color:#1c2c47;background:#fdf6ec;border-color:#1c2c4726;box-shadow:0 10px 26px #0000004d}.walk-icon{width:30px;height:30px}@media (hover:hover) and (pointer:fine){.walk-button{left:auto;right:calc(16px + (168px - 96px) / 2 + var(--sar));bottom:calc(24px + 168px + 16px + var(--sab))}}.guide-finger-tap{animation:1.2s ease-in-out infinite guide-tap}@keyframes guide-tap{0%,to{transform:scale(1)}40%{transform:scale(.82)}}.touch-guide{z-index:21;pointer-events:none;background:radial-gradient(at 50% 70%,#0c122226,#0c122280);animation:.4s both guide-in;position:fixed;inset:0}.guide-item{flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed}.guide-item p,.guide-dismiss{color:#fdf6ec;text-align:center;white-space:nowrap;background:#161e34c7;border-radius:12px;margin:0;padding:7px 12px;font-size:14px;font-weight:700;line-height:1.4;box-shadow:0 6px 18px #0000004d}.guide-stick{left:calc(100px + var(--sal));bottom:calc(136px + var(--sab) - 22px);gap:60px;transform:translate(-50%)}.guide-look{right:calc(24px + var(--sar));bottom:46vh}.guide-jump{right:calc(20px + 76px + 12px + var(--sar));bottom:calc(204px + 20px + var(--sab))}.guide-dismiss{opacity:.85;font-size:13px;font-weight:600;position:fixed;top:64%;left:50%;transform:translate(-50%,-50%)}.guide-finger{background:#fdf6ecd9;border-radius:50%;width:44px;height:44px;position:relative;box-shadow:0 0 0 8px #fdf6ec38,0 4px 14px #00000059}.guide-finger-stick{animation:1.6s ease-in-out infinite guide-push}.guide-finger-look{animation:1.8s ease-in-out infinite guide-swipe}@keyframes guide-in{0%{opacity:0}}@keyframes guide-push{0%,15%{transform:translateY(0)}55%,75%{transform:translateY(-34px)}to{transform:translateY(0)}}@keyframes guide-swipe{0%,10%{opacity:0;transform:translate(30px)}25%{opacity:1}70%{opacity:1;transform:translate(-40px)}to{opacity:0;transform:translate(-40px)}}@media (width<=760px),(height<=500px){.guide-jump{bottom:calc(34px + 20px + var(--sab))}}@media (height<=500px){.guide-dismiss{top:50%}}@media (prefers-reduced-motion:reduce){.guide-finger{animation:none}}.overlay{z-index:30;background:#0c122273;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{text-align:center;width:min(380px,100%);padding:24px 20px 20px;position:static}.modal h2{margin:8px 0 4px;font-size:26px;font-weight:800}.modal-brand{letter-spacing:.18em;color:var(--accent-2);margin-bottom:4px;font-size:11px;font-weight:700}.summit-modal{background:radial-gradient(circle at 50% 30%, #ffb36b59, transparent 55%), var(--panel-bg);width:min(400px,100%);padding-top:20px;overflow:hidden}.badge-wrap{place-items:center;width:160px;height:140px;margin:6px auto 0;display:grid}.summit-stats{grid-template-columns:repeat(2,1fr)}.summit-stats dd{font-size:15px}.summit-best{color:var(--accent-2);background:#ffd58a29;border-radius:10px;margin:10px 0 0;padding:8px 12px;font-size:15px;font-weight:800}.modal-sub{color:var(--muted);margin:0;font-size:14px}.badge{filter:drop-shadow(0 8px 20px #ffaa6e73);width:128px;height:128px;animation:.6s cubic-bezier(.2,1.6,.4,1) pop}@keyframes pop{0%{opacity:0;transform:scale(.3)rotate(-20deg)}}.actions{gap:8px;margin-top:16px;display:flex}.photo-hint{color:var(--muted);text-align:center;margin:10px 0 0;font-size:14px;line-height:1.45}.btn{color:var(--text);font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:10px;flex:1;padding:12px;font-weight:700;text-decoration:none}.btn:hover{background:#ffffff24}.btn.primary{background:linear-gradient(135deg, #ffb36b, var(--accent));color:#2a1608;border-color:#0000}.photo-modal{width:min(720px,100%)}.photo-modal img{border-radius:12px;width:100%;margin-top:8px;display:block}.flash{pointer-events:none;background:#fff;animation:.5s ease-out forwards flash;position:fixed;inset:0}@keyframes flash{to{opacity:0}}.minimap{right:calc(16px + var(--sar));bottom:calc(24px + var(--sab));z-index:20;border:1px solid var(--panel-border);background:#4d6b3c;border-radius:14px;width:168px;height:168px;position:fixed;overflow:hidden;box-shadow:0 10px 30px #080c1859}.minimap-north{color:#fff;text-shadow:0 1px 2px #0009;font-size:11px;font-weight:800;position:absolute;top:4px;left:50%;transform:translate(-50%)}.sound-toggle{left:calc(16px + var(--sal));bottom:calc(24px + var(--sab));z-index:20;border:0;border:1px solid var(--panel-border);background:var(--panel-bg);-webkit-backdrop-filter:blur(14px);width:40px;height:40px;color:var(--text);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:fixed;box-shadow:0 6px 20px #080c184d}.sound-toggle[aria-pressed=false]{color:var(--muted)}@media (width<=960px){.minimap{width:120px;height:120px}}@media (width<=760px){.minimap{display:none}}@media (width>=761px) and (width<=960px) and (hover:hover) and (pointer:fine){.hud-top .progress{left:calc(242px + var(--sal));width:min(460px, calc(100vw - 242px - 16px - 132px - var(--sal) - var(--sar)));transform:none}}.together{left:calc(16px + var(--sal));bottom:calc(76px + var(--sab));gap:6px;width:210px;padding:10px 12px;display:grid}.together-status{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.dot{background:#b0b6bd;border-radius:50%;width:8px;height:8px}.dot.online{background:#2fa84f}.dot.connecting{background:var(--accent-2)}.together-name{justify-self:start;font-size:14px;text-decoration:none}.together-name input{width:100%;font:inherit;border:1.5px solid var(--accent-2);color:var(--text);background:#ffffff14;border-radius:6px;padding:3px 6px;font-size:16px}.emotes{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.emote-button{white-space:nowrap;cursor:pointer;background:#ffffff14;border:0;border-radius:10px;height:34px;padding:0;font-size:17px}.emote-button:hover{background:#ffffff29}.peer-label{color:#fff;white-space:nowrap;pointer-events:none;background:#161e34d1;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700;position:relative}.emote-bubble{color:#1c2c47;white-space:nowrap;background:#fff;border-radius:12px;padding:4px 8px;font-size:22px;font-weight:800;line-height:1;animation:.3s ease-out emote-pop;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 3px 10px #0003}.emote-bubble.mine{position:static;transform:none}@keyframes emote-pop{0%{transform:translate(-50%)scale(.4)}to{transform:translate(-50%)scale(1)}}.emote-bubble.mine{animation:none}.attribution{right:calc(8px + var(--sar));bottom:calc(4px + var(--sab));z-index:19;color:#ffffffb3;text-shadow:0 1px 2px #00000080;pointer-events:none;font-size:10px;position:fixed}.attribution a{color:inherit;pointer-events:auto}.arrival{z-index:25;width:min(640px,100vw - 32px);color:var(--text);text-align:center;text-shadow:0 2px 16px #080c18a6,0 1px 3px #080c1899;pointer-events:none;animation:4.8s ease-out forwards arrival;position:fixed;top:18vh;left:50%;transform:translate(-50%)}@keyframes arrival{0%{opacity:0;filter:blur(6px);letter-spacing:.24em}14%{opacity:1;filter:blur();letter-spacing:.06em}80%{opacity:1;filter:blur()}to{opacity:0;filter:blur(3px)}}.arrival-eyebrow{letter-spacing:.12em;color:var(--accent-2);font-size:12px;font-weight:700}.arrival-title{justify-content:center;align-items:center;gap:12px;margin-top:6px;font-size:clamp(28px,5vw,44px);font-weight:800;line-height:1.15;display:flex}.arrival-title:before,.arrival-title:after{content:"";background:linear-gradient(90deg, transparent, var(--accent-2));height:1px;box-shadow:none;flex:0 72px}.arrival-title:after{background:linear-gradient(90deg, var(--accent-2), transparent)}.arrival-icon{text-shadow:none;font-size:.8em}.arrival-note{margin-top:8px;font-size:15px;font-weight:600}.arrival-meta{color:var(--muted);margin-top:6px;font-size:12px}@media (prefers-reduced-motion:reduce){.arrival{animation-name:arrival-fade}@keyframes arrival-fade{0%,to{opacity:0}10%,85%{opacity:1}}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-12px)}}.landmark-label{border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(8px);color:var(--text);white-space:nowrap;pointer-events:none;background:#161e34b3;border-radius:999px;align-items:center;gap:6px;padding:6px 12px 6px 8px;font-size:14px;font-weight:800;display:flex;box-shadow:0 6px 18px #00000038}.landmark-icon{background:#ffffff1f;border-radius:50%;place-items:center;width:24px;height:24px;font-size:14px;display:grid}.avatar-bar{scrollbar-width:thin;scrollbar-color:#ffffff40 transparent;gap:6px;max-width:100%;display:flex;overflow-x:auto}.avatar-chip{font:inherit;color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;padding:8px 12px;font-size:14px;font-weight:700}.avatar-chip:hover{background:#ffffff0f}.avatar-chip.selected{color:#fff;background:var(--accent)}.avatar-chip:has(.avatar-thumb){background:#ffffff0d;padding:2px}.avatar-chip.selected:has(.avatar-thumb){border-color:var(--accent);background:#ff8a5b2e}.avatar-thumb{width:52px;height:52px;display:block}@media (hover:none),(pointer:coarse),(pointer:none){.together{display:none}}@media (height<=500px){.side-stack{display:none}.course{max-height:42vh}.hold-button.jump{bottom:calc(34px + var(--sab))}}@media (width<=760px){.hud-top{right:calc(64px + var(--sar));flex-direction:column;align-items:stretch;gap:8px}.side-stack{display:none}.course{width:auto;max-height:34vh}.hud-top .progress{width:auto;padding:10px 14px;position:relative;bottom:auto;left:auto;transform:none}.progress-main{margin-bottom:8px}.progress-alt{font-size:20px}.progress-next-name{font-size:15px}.progress-row{margin-top:6px;font-size:10px}.sound-toggle{left:auto;right:calc(16px + var(--sar));bottom:auto;top:calc(16px + var(--sat))}.hold-button.jump{bottom:calc(34px + var(--sab))}.attribution{left:calc(8px + var(--sal));right:calc(8px + var(--sar));bottom:calc(3px + var(--sab));text-align:right;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}.roam-vignette{z-index:19;pointer-events:none;background:radial-gradient(#0000 55%,#0c14208c 100%);transition:opacity .4s;position:fixed;inset:0}.roam-hint{z-index:24;border:1px solid var(--panel-border);background:var(--panel-bg);-webkit-backdrop-filter:blur(14px);color:var(--text);white-space:nowrap;pointer-events:none;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:700;animation:.35s ease-out toast-in;position:fixed;bottom:120px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000040}@keyframes hud-enter{0%{opacity:0;translate:var(--enter-from,0 -14px)}}.hud-enter .hud-top>*,.hud-enter .progress,.hud-enter .minimap,.hud-enter .together,.hud-enter .sound-toggle,.hud-enter .attribution{animation:.55s cubic-bezier(.2,.8,.2,1) both hud-enter}.hud-enter .hud-top>:nth-child(2){animation-delay:80ms}.hud-enter .hud-top>:nth-child(3){animation-delay:.16s}.hud-enter .progress{--enter-from:0 16px;animation-delay:.24s}.hud-enter .minimap{--enter-from:16px 0;animation-delay:.36s}.hud-enter .together,.hud-enter .sound-toggle{--enter-from:-16px 0;animation-delay:.36s}.hud-enter .attribution{--enter-from:0 0;animation-delay:.5s}@media (prefers-reduced-motion:reduce){.hud-enter *{animation:none!important}}.lobby{z-index:30;pointer-events:none;background:linear-gradient(90deg,#0e14268c,#0000 45%);animation:.35s ease-out both lobby-fade;position:fixed;inset:0}@keyframes lobby-fade{0%{opacity:0}}@keyframes lobby-in{0%{opacity:0;translate:var(--lobby-from,-18px 0)}}.lobby .panel{pointer-events:auto;position:relative}.lobby-panel{scrollbar-width:thin;scrollbar-color:#ffffff40 transparent;flex-direction:column;gap:14px;width:min(400px,100vw - 32px);padding:18px;animation:.45s cubic-bezier(.2,.8,.2,1) both lobby-in;display:flex;top:16px;bottom:76px;left:16px;overflow-y:auto;position:absolute!important}.lobby-panel>*{flex-shrink:0}.lobby-actions>*,.lobby-avatars,.lobby-sky,.lobby-control{min-width:0}.lobby-head h2{letter-spacing:-.01em;margin:2px 0 0;font-size:24px}.lobby-label{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:700}.lobby-label b{color:var(--text);margin-left:4px}.lobby-note{color:var(--muted);margin:0;font-size:13px}.lobby .mountain-tabs{margin:0}.lobby-courses{gap:8px;display:grid}.course-card,.segmented button{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:#ffffff0a;border:1.5px solid #ffffff24;border-radius:12px;display:grid}.course-card{gap:5px;width:100%;padding:11px 12px 10px;transition:border-color .15s,background .15s,transform .15s}.course-card:hover{border-color:#ffffff61;transform:translateY(-1px)}.course-card.selected{border-color:var(--accent);background:#ff8a5b21;box-shadow:0 0 0 3px #ff8a5b29}.course-card-top{align-items:center;gap:6px;display:flex}.course-card-name{font-size:15px;font-weight:800}.course-card-tag{color:var(--navy);background:var(--accent-2);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.course-card-route{color:var(--muted);font-size:12px}.course-card-profile{width:100%;height:34px;display:block}.course-card-profile path{fill:#ffd58a24;stroke:#ffd58ab3;stroke-width:1.3px;vector-effect:non-scaling-stroke}.course-card.selected .course-card-profile path{fill:#ff8a5b38;stroke:var(--accent)}.course-card-stats{color:var(--muted);flex-wrap:wrap;gap:2px 10px;font-size:12px;display:flex}.course-card-done{color:var(--accent-2);font-weight:700}.course-card-live{color:#9fe39a;font-weight:700}.segmented{grid-template-columns:1fr 1fr;gap:6px;display:grid}.segmented button{gap:1px;padding:9px 12px}.segmented button:hover{border-color:#ffffff61}.segmented button.selected{border-color:var(--accent-2);background:#ffd58a21}.segmented-title{font-size:14px;font-weight:800}.segmented-sub{color:var(--muted);align-items:center;gap:5px;font-size:11px;display:flex}.lobby-actions{pointer-events:auto;--lobby-from:18px 0;gap:10px;width:min(440px,100vw - 32px);animation:.45s cubic-bezier(.2,.8,.2,1) 80ms both lobby-in;display:grid;position:absolute;bottom:28px;right:16px}.lobby-avatars,.lobby-sky,.lobby-control{padding:10px 12px}.control-segmented .segmented-title{font-size:15px}.control-segmented .segmented-sub{font-size:12px}.sky-segmented{grid-template-columns:repeat(5,1fr);gap:8px}.sky-segmented button{text-align:center;border-radius:14px;justify-items:center;gap:6px;padding:5px 5px 7px;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s}.sky-segmented button:active{transform:scale(.96)}.sky-segmented button.selected{box-shadow:0 0 0 3px #ffd58a29}.sky-segmented .segmented-title{font-size:12px}.sky-swatch{aspect-ratio:5/3;background:var(--swatch);border-radius:9px;width:100%;transition:transform .2s;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff24}.sky-segmented button:hover .sky-swatch{transform:scale(1.04)}.sky-swatch:after{content:"";pointer-events:none;position:absolute;inset:0}.sky-swatch.dawn{--swatch:linear-gradient(180deg, #2f3d6e 0%, #8a9ccf 55%, #f1b48d 100%)}.sky-swatch.dawn:after{background:radial-gradient(circle at 50% 108%,#ffbe78e6 0,#ffbe7800 38%)}.sky-swatch.morning{--swatch:linear-gradient(180deg, #6aa7e6 0%, #b9d9f6 60%, #fde2b8 100%)}.sky-swatch.morning:after{background:radial-gradient(circle at 28% 78%,#fff3c4 0 11%,#fff3c400 13%)}.sky-swatch.day{--swatch:linear-gradient(180deg, #4a9ae6 0%, #a6d2f6 65%, #e6f3fc 100%)}.sky-swatch.day:after{background:radial-gradient(circle at 70% 26%,#fff8dc 0 12%,#fff8dc00 15%)}.sky-swatch.sunset{--swatch:linear-gradient(180deg, #3c3270 0%, #c95d6e 48%, #ffb15a 100%)}.sky-swatch.sunset:after{background:radial-gradient(circle at 50% 92%,#ffe3a0 0,#ffd27a 12%,#ffb45a00 30%)}.sky-swatch.night{--swatch:linear-gradient(180deg, #0b1130 0%, #222c57 100%)}.sky-swatch.night:after{background:radial-gradient(circle at 74% 30%,#e9eeff 0 9%,#e9eeff00 11%),radial-gradient(circle at 18% 24%,#fff 0 2%,#0000 3%),radial-gradient(circle at 38% 58%,#fff 0 2%,#0000 3%),radial-gradient(circle at 56% 20%,#fff 0 2%,#0000 3%),radial-gradient(circle at 30% 80%,#fff 0 1.5%,#0000 3%),radial-gradient(circle at 86% 66%,#fff 0 2%,#0000 3%)}.lobby-buttons{gap:8px;display:flex}.lobby-restart{flex:none;padding:14px 18px}.lobby-start{border-radius:14px;flex:1;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:18px;font-weight:800;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 10px 30px #ff8a5b59,inset 0 1px #fff6}.lobby-start:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 36px #ff8a5b73,inset 0 1px #fff6}.lobby-start:disabled{opacity:.5;cursor:default}.lobby-key{opacity:.7;border:1px solid #2a16084d;border-radius:6px;padding:1px 6px;font-size:11px;font-weight:700}@media (hover:none),(pointer:coarse),(pointer:none){.lobby-key{display:none}}@media (width<=760px){.lobby{background:linear-gradient(#0000 45%,#0e14268c);flex-direction:column;justify-content:flex-end;display:flex}.lobby-panel{--lobby-from:0 24px;border-bottom:0;border-radius:20px 20px 0 0;width:100%;max-height:38vh;top:auto;bottom:auto;left:auto;position:relative!important}.lobby-actions{width:100%;padding:8px calc(12px + var(--sar)) calc(14px + var(--sab)) calc(12px + var(--sal));background:var(--panel-bg);-webkit-backdrop-filter:blur(14px);--lobby-from:0 24px;position:relative;bottom:auto;right:auto}.lobby-avatars,.lobby-sky,.lobby-control{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}}@media (prefers-reduced-motion:reduce){.lobby,.lobby-panel,.lobby-actions{animation:none}.sky-segmented button,.sky-swatch{transition:none}}
