:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-paper:#0b2928;--color-paper-2:#153c35;--color-paper-3:#214e43;--color-ink:#f1ecd5;--color-ink-2:#d7dfc9;--color-muted:#b6c9b6;--color-accent:#ead9a5;--color-accent-2:#f3e6bf;--color-accent-ink:#273c2e;--color-focus:#f7d98b;--color-rule:#456052;--color-error:#efb9a6;--color-success:#bfd0ad;--color-night:#052726;--color-shade:#061e1b;--font-display:"Nanum Myeongjo", "AppleMyungjo", Georgia, serif;--font-body:"Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-display:clamp(2.5rem, 4.5vw, 4rem);--text-section:2rem;--text-title:1.25rem;--text-lead:1rem;--radius-card:24px;--radius-pill:999px;--tracking-display:-.025em;--display-weight:400;--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--ease-out:cubic-bezier(.16,1,.3,1);--ease-in:cubic-bezier(.7,0,.84,0);--ease-in-out:cubic-bezier(.65,0,.35,1);--container:1440px;--gutter:56px;--gap-columns:32px;--shadow-dialog:0 24px 80px color-mix(in srgb, var(--color-shade) 55%, transparent)}@layer base{*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight,700);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);max-width:52ch;line-height:1.45}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-slot]{background:var(--color-paper-2);position:relative;overflow:hidden}[data-slot]>img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-slot]>img{filter:sepia(.28)saturate(.94)contrast(1.06)brightness(.96)}}@font-face{font-family:Nanum Myeongjo;src:url(/fonts/nanum-myeongjo.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}html,body{-webkit-user-select:none;user-select:none;background:#061816;height:100%;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0}button:disabled{cursor:not-allowed;opacity:.55}button[aria-busy=true]{cursor:progress}:is(button:focus-visible,a:focus-visible,textarea:focus-visible){outline:2px solid var(--color-focus);outline-offset:4px}.forest-app{isolation:isolate;background:#061816;width:100%;height:100svh;min-height:560px;position:relative;overflow:clip}.world-stage{z-index:1;position:absolute;inset:0}.world-stage>div{width:100%;height:100%}.world-stage canvas{cursor:grab;display:block}.world-stage canvas:active{cursor:grabbing}.hud-chrome{top:max(16px, env(safe-area-inset-top));left:max(20px, env(safe-area-inset-left));right:max(20px, env(safe-area-inset-right));z-index:10;pointer-events:none;position:absolute}.hud-top{pointer-events:none;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand presence tools";align-items:center;gap:12px;display:grid}.hud-top-left{grid-area:brand}.hud-top-right{grid-area:tools;justify-content:flex-end}.hud-top-left,.hud-top-right{pointer-events:auto;flex-wrap:nowrap;align-items:center;gap:6px;display:flex}.brand-pill{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:44px;font-family:var(--font-display);color:var(--color-ink);white-space:nowrap;background:#0a1f1ac7;border:1px solid #b6c9b633;align-items:center;gap:8px;padding:0 14px;font-size:16px;text-decoration:none;display:inline-flex}.brand-flame{color:var(--color-accent)}.presence-cluster{pointer-events:auto;flex-wrap:wrap;grid-area:presence;align-items:center;gap:8px;min-width:0;display:inline-flex}.presence-badge,.nickname-badge{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:36px;color:var(--color-ink-2);white-space:nowrap;background:#0a1f1abd;border:1px solid #b6c9b629;align-items:center;gap:6px;padding:0 12px;font-size:12px;display:inline-flex}.nickname-badge{color:var(--color-accent)}.nickname-badge small{color:var(--color-ink);background:#ead9a529;border-radius:99px;padding:2px 6px;font-size:10px}.status-dot{background:#6bd69c;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #6bd69ccc}.status-dot.solo{box-shadow:none;background:#e5b869}.status-dot.reconnecting{background:#e08b56}.hud-pill-button,.hud-chip-button,.hud-icon-button{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:44px;color:var(--color-ink-2);white-space:nowrap;background:#0a1f1ac2;border:1px solid #b6c9b62e;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:12px;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.hud-icon-button{width:44px;padding:0}.hud-pill-button:hover:not(:disabled),.hud-chip-button:hover:not(:disabled),.hud-icon-button:hover:not(:disabled){color:var(--color-ink);background:#183e34e6;border-color:#ead9a566}.hud-pill-button.is-active{color:var(--color-accent);background:#214e43eb;border-color:#ead9a57a}.leave-pill{color:var(--color-accent)}.hud-toast-wrap{pointer-events:none;width:fit-content;max-width:100%;margin:12px auto 0;transition:opacity .18s;position:relative}.hud-toast-wrap.is-quiet{opacity:0;visibility:hidden}.hud-toast{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-ink-2);text-align:center;background:#091c18bd;border:1px solid #b6c9b62e;align-items:center;gap:8px;padding:8px 16px;font-size:13px;line-height:1.4;display:inline-flex}.hud-toast.is-warm{color:var(--color-ink);border-color:#ead9a573}.toast-icon{color:var(--color-accent);flex-shrink:0}.entry-overlay{z-index:9;pointer-events:none;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.entry-card{pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:center;width:min(440px,100%);animation:settle .36s var(--ease-out);background:#0a201bd1;border:1px solid #ead9a53d;border-radius:24px;padding:34px 28px 28px;box-shadow:0 24px 64px #020a0899}.entry-badge{border-radius:var(--radius-pill);color:var(--color-accent);background:#ead9a51f;align-items:center;gap:6px;margin-bottom:16px;padding:4px 12px;font-size:12px;display:inline-flex}.entry-card h1{max-width:none;color:var(--color-ink);font-size:clamp(2rem,4vw,2.75rem);line-height:1.36}.entry-copy{color:var(--color-ink-2);margin-top:14px;font-size:14px;line-height:1.75}.primary-button{border-radius:var(--radius-pill);background:var(--color-accent);min-height:52px;color:var(--color-accent-ink);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:12px 26px;font-size:15px;font-weight:600;line-height:1.4;text-decoration:none;transition:background-color .15s,transform .1s;display:inline-flex}.primary-button:hover:not(:disabled){background:var(--color-accent-2)}.primary-button:active:not(:disabled){transform:translateY(1px)}.enter-button{width:100%;margin-top:22px}.entry-footnote{color:var(--color-muted);margin-top:12px;font-size:12px}.hud-bottom-left{z-index:10;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:20px;left:20px}.joystick-row{align-items:center;gap:12px;display:flex}.virtual-joystick{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:none;cursor:pointer;background:#0a1f1ab8;border:1.5px solid #b6c9b642;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;display:none;position:relative}.virtual-joystick.is-active{background:#123129d9;border-color:#ead9a5a6}.joystick-knob{background:var(--color-accent);pointer-events:none;border-radius:50%;width:30px;height:30px;transition:transform 40ms linear;box-shadow:0 4px 12px #00000073}.counter-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-ink-2);background:#0a1f1abf;border:1px solid #b6c9b629;border-radius:16px;flex-direction:column;gap:4px;padding:10px 14px;font-size:12px;display:flex}.counter-line{justify-content:space-between;align-items:center;gap:12px;display:flex}.counter-box[hidden]{display:none}.counter-line strong{color:var(--color-accent);font-variant-numeric:tabular-nums;font-weight:600}.camera-reset-btn{min-height:44px;color:var(--color-ink-2);background:#ffffff0f;border-radius:8px;justify-content:center;align-items:center;gap:5px;margin-top:4px;padding:8px;font-size:11px;display:inline-flex}.camera-reset-btn:hover{color:var(--color-ink);background:#ead9a52e}.controls-caption{color:#d7dfc9b8;text-shadow:0 1px 3px #000c;font-size:11px}.hud-bottom-dock{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a1f1adb;border:1px solid #b6c9b638;border-radius:22px;grid-template-columns:1fr 1.6fr repeat(3,1fr);align-items:center;gap:8px;width:min(560px,100% - 24px);max-width:calc(100% - 24px);padding:8px 10px;display:grid;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #020a088c}.dock-btn{min-width:0;min-height:58px;color:var(--color-ink-2);white-space:nowrap;background:0 0;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 12px;font-size:11px;transition:background-color .15s,color .15s,transform .1s;display:inline-flex;position:relative}.dock-btn kbd{font-family:var(--font-body);color:var(--color-muted);opacity:.85;font-size:10px;font-weight:600;position:absolute;top:5px;left:7px}.dock-btn:hover:not(:disabled){color:var(--color-accent);background:#214e43d9}.dock-btn-primary{background:var(--color-accent);color:var(--color-accent-ink);min-width:114px;font-weight:600}.dock-btn-primary kbd{color:#142822a6}.dock-btn-primary:hover:not(:disabled){background:var(--color-accent-2);color:var(--color-accent-ink)}.ending-screen{z-index:15;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:settle .4s var(--ease-out);background:#061613e0;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:absolute;inset:0}.ending-screen h1{max-width:none;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.38}.ending-screen p{color:var(--color-ink-2);font-size:15px;line-height:1.9}.ending-moon{color:var(--color-accent)}.ending-actions{flex-direction:column;align-items:center;gap:10px;margin-top:8px;display:flex}.icon-button,.share-button{min-height:44px;color:var(--color-ink-2);background:0 0;justify-content:center;align-items:center;gap:6px;font-size:13px;display:inline-flex}.icon-button{border-radius:50%;width:44px;height:44px}.icon-button:hover,.share-button:hover{color:var(--color-accent)}.quiet-dialog{border-radius:var(--radius-card);background:var(--color-paper-2);width:min(460px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--color-ink);box-shadow:var(--shadow-dialog);border:1px solid #ead9a53d;padding:0;overflow:clip auto}.quiet-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#030c0ab8}.quiet-dialog[open]{animation:settle .28s var(--ease-out)}.dialog-inner{text-align:center;padding:32px 26px 26px;position:relative}.dialog-close{color:var(--color-muted);position:absolute;top:10px;right:10px}.dialog-symbol{color:var(--color-accent);margin-bottom:14px;display:inline-flex}.quiet-dialog h2{letter-spacing:-.03em;max-width:none;font-size:27px;line-height:1.45}.dialog-description{color:var(--color-ink-2);margin-top:8px;font-size:13px;line-height:1.7}.worry-dialog form{margin-top:18px}.worry-dialog textarea{resize:none;border:1px solid var(--color-rule);width:100%;min-height:112px;color:var(--color-ink);background:var(--color-paper);caret-color:var(--color-accent);-webkit-user-select:text;user-select:text;border-radius:12px;padding:14px;font-size:16px;line-height:1.75;display:block}.worry-dialog textarea::placeholder{color:var(--color-muted)}.input-meta{color:var(--color-muted);justify-content:space-between;align-items:flex-start;gap:8px;margin-top:8px;font-size:11px;line-height:1.5;display:flex}.input-meta>span:first-child{align-items:center;gap:4px;display:flex}.input-meta>span:last-child{font-variant-numeric:tabular-nums;flex-shrink:0}.burn-button{width:100%;min-height:50px;margin-top:18px}.skip-button{min-height:42px;color:var(--color-muted);background:0 0;margin-top:6px;font-size:12px}.skip-button:hover{color:var(--color-ink)}.about-description{color:var(--color-ink-2);margin-top:10px;font-size:14px;line-height:1.8}.about-facts{text-align:left;flex-direction:column;gap:16px;margin:22px 0;padding:0;list-style:none;display:flex}.about-facts li{color:var(--color-ink-2);align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;display:flex}.about-facts li>svg{color:var(--color-accent);flex-shrink:0;margin-top:2px}.about-facts small{color:var(--color-muted);margin-top:2px;font-size:11px;display:block}.about-dialog .primary-button{width:100%;min-height:48px;font-size:14px}.walk-routes{text-align:left;margin:20px 0}.walk-routes p{color:var(--color-ink-2);margin-bottom:8px;font-size:13px}.walk-routes button{width:100%;min-height:46px;color:var(--color-ink);text-align:left;background:0 0;border-bottom:1px solid #b6c9b629;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.walk-routes button span{flex:1}.walk-routes button:hover{background:#ead9a514}.noscript-note{text-align:center;width:100%;color:var(--color-ink);background:var(--color-paper-2);padding:24px;position:absolute;bottom:25%}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes settle{0%{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:960px){.hud-top{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"brand tools""presence presence";gap:8px}.hud-bottom-left{bottom:96px;left:14px}.controls-caption{display:none}}@media (max-width:640px){.hud-chrome{top:max(10px, env(safe-area-inset-top));left:max(10px, env(safe-area-inset-left));right:max(10px, env(safe-area-inset-right))}.hud-top{gap:8px}.hud-top-right{gap:4px}.brand-pill{justify-content:center;width:44px;padding:0}.brand-pill span,.hud-pill-button span{display:none}.hud-pill-button{width:44px;padding:0}.hud-toast-wrap{margin-top:10px}.hud-toast{padding:6px 12px;font-size:12px}.hud-bottom-left{bottom:88px;left:10px}.virtual-joystick{width:64px;height:64px}.joystick-knob{width:26px;height:26px}.counter-box{padding:7px 10px;font-size:11px}.hud-bottom-dock{gap:4px;padding:6px 8px;bottom:12px}.dock-btn{min-width:0;min-height:58px;padding:6px 2px;font-size:10px}.dock-btn span{white-space:normal;text-align:center;line-height:1.25}.dock-btn kbd{display:none}.dock-btn-primary{min-width:0}}@media (pointer:coarse){.hud-bottom-left:not(.is-seated) .virtual-joystick{display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
