:root{color:#fff4df;--cream:#fff6e6;--ink:#294039;--red:#ae493c;--gold:#e5bf7e;--muted:#727e6b;--hud:#13363ce8;--hud-border:#f5ecd025;font-synthesis:none;background:#102832;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:default;opacity:.55}a{color:inherit}[hidden],.hidden{display:none!important}.icon{vertical-align:middle;flex-shrink:0;width:22px;height:22px}#app,main{min-height:100svh}.world,#world-canvas,#world-fallback{width:100%;height:100%;display:block;position:fixed;inset:0}#world-canvas{touch-action:none;outline:none}.screen-vignette{pointer-events:none;z-index:1;position:fixed;inset:0;box-shadow:inset 0 -100px 100px #071b2830}.hud-header{z-index:4;pointer-events:none;justify-content:space-between;align-items:center;gap:24px;padding:22px 28px;display:flex;position:fixed;top:0;left:0;right:0}.hud-header>*{pointer-events:auto}.brand{text-shadow:0 2px 8px #09202b99;color:var(--cream);align-items:center;gap:11px;text-decoration:none;display:flex}.brand-mark{border:1px solid var(--hud-border);background:var(--hud);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:45px;height:45px;color:var(--gold);border-radius:15px;place-items:center;display:grid}.brand-mark .icon{width:28px;height:28px}.brand strong{letter-spacing:.4px;font-family:Georgia,AppleMyungjo,serif;font-size:18px;font-weight:400;display:block}.brand small{letter-spacing:1.7px;opacity:.65;margin-top:5px;font-size:8px;display:block}.header-right{align-items:center;gap:8px;display:flex}.round-btn{background:var(--hud);border:1px solid var(--hud-border);width:44px;height:44px;color:var(--cream);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:14px;place-items:center;transition:background .2s;display:inline-grid}.round-btn:hover{background:#34545a}.presence{background:var(--hud);border:1px solid var(--hud-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:28px;align-items:center;gap:8px;min-height:42px;padding:11px 14px;font-size:12px;display:flex}.live-dot{background:#cfe0a2;border-radius:50%;width:6px;height:6px;box-shadow:0 0 12px #cfe0a255}.season-clock{z-index:3;border:1px solid var(--hud-border);color:#eee2c5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#14363ccd;border-radius:26px;align-items:center;gap:9px;min-height:38px;padding:9px 13px;font-size:11px;display:flex;position:fixed;top:85px;left:29px}.season-clock .icon{width:15px;height:15px;color:var(--gold)}#countdown{font-variant-numeric:tabular-nums;font-family:Georgia,serif;font-size:14px}#event-date{color:#d9d8c5;font-size:10px}.connection-banner{color:#705630;text-align:center;z-index:8;background:#ffefcced;border:1px solid #d7c79e;border-radius:12px;max-width:min(500px,80%);padding:10px 16px;font-size:12px;line-height:1.5;position:fixed;top:89px;left:50%;transform:translate(-50%)}.welcome-note{z-index:3;border:1px solid var(--hud-border);background:linear-gradient(125deg,#173e43ee,#15343cdb);border-radius:18px;max-width:300px;padding:20px 22px;transition:opacity .25s,transform .25s;position:fixed;top:145px;left:28px;box-shadow:0 12px 40px #071e2b20}.eyebrow{color:#b99863;letter-spacing:1.8px;font-size:9px;font-weight:600}.welcome-note .eyebrow{color:#dfc48e;letter-spacing:1.6px;font-size:8px}.welcome-note h1{letter-spacing:-.3px;color:#fff0d0;margin:12px 0 9px;font-family:Georgia,AppleMyungjo,serif;font-size:20px;font-weight:400;line-height:1.6}.welcome-note p{color:#dbe2d5;margin:0 0 11px;font-size:13px;line-height:1.8}.welcome-note .small-btn{color:#f0dbad;background:#f0dfb415;border:1px solid #eeddb42a;min-height:40px;padding:8px 12px;font-size:12px}.welcome-note.exploring,.hero.finale-playing{opacity:0;pointer-events:none;transform:translateY(-8px)}.personal-progress{z-index:3;background:var(--hud);border:1px solid var(--hud-border);color:#f1dfb7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px;align-items:center;gap:9px;min-height:44px;padding:11px 15px;font-size:12px;display:flex;position:fixed;bottom:72px;left:28px}.personal-progress .icon{width:19px;height:19px}.personal-progress i{opacity:.45;padding:0 6px;font-style:normal}.location-tag{z-index:3;background:var(--hud);border:1px solid var(--hud-border);color:#ebdfc2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:30px;align-items:center;gap:8px;padding:10px 15px;font-size:12px;display:flex;position:fixed;top:30px;left:50%;transform:translate(-50%)}.location-tag .icon{width:15px;height:15px}.village-dock{z-index:4;background:var(--hud);border:1px solid var(--hud-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:20px;grid-template-columns:repeat(5,64px);gap:3px;padding:7px;display:grid;position:fixed;bottom:65px;right:28px;box-shadow:0 12px 35px #09202930}.village-dock button{color:#efe5cd;background:0 0;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:0;min-height:62px;font-size:11px;transition:background .2s;display:flex}.village-dock button .icon{color:#e0c28c;width:22px;height:22px}.context-action{z-index:4;pointer-events:none;flex-direction:column;align-items:center;gap:9px;width:max-content;max-width:360px;display:flex;position:fixed;bottom:78px;left:50%;transform:translate(-50%)}#nearby-hint{color:#f2ecd9;text-shadow:0 2px 6px #102735;text-align:center;font-size:11px;line-height:1.5}.interact-btn{pointer-events:auto;color:#2b453e;background:#eed5a5;border:1px solid #ecd5a56b;border-radius:13px;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:12px 17px;font-size:13px;font-weight:600;display:flex;box-shadow:0 8px 25px #08232a33}.interact-btn kbd{background:#fff8df91;border:1px solid #7f86673f;border-radius:7px;place-items:center;width:25px;height:25px;font:12px inherit;display:grid}.interact-btn .icon{width:17px;height:17px}.social-actions{z-index:3;flex-direction:column;gap:8px;display:flex;position:fixed;top:50%;right:28px;transform:translateY(-50%)}.social-actions .round-btn{background:#173d43b8}.world-footnote{z-index:2;color:#e1e4d3;text-shadow:0 2px 6px #152f37;justify-content:space-between;align-items:center;gap:20px;font-size:10px;display:flex;position:fixed;bottom:24px;left:28px;right:28px}.movement-pad{display:none}.toast{z-index:30;color:#344c40;background:#fff6e7;border:1px solid #d7c9aa;border-radius:14px;width:max-content;max-width:min(90%,480px);padding:13px 19px;font-size:13px;line-height:1.65;position:fixed;bottom:160px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #08233035}.finale-caption{z-index:7;color:#f6e8c8;text-align:center;background:#122f3aeb;border:1px solid #e3d3ab40;border-radius:16px;max-width:90%;padding:15px 23px;font-family:Georgia,AppleMyungjo,serif;font-size:17px;position:fixed;bottom:160px;left:50%;transform:translate(-50%)}dialog{width:min(540px,100% - 30px);max-height:calc(100svh - 48px);color:var(--ink);background:#fbf7ec;border:1px solid #e0d9c5;border-radius:24px;padding:0;box-shadow:0 28px 110px #061d3960}.dialog-head{z-index:1;background:#fbf7ec;border-bottom:1px solid #e7e1d2;justify-content:space-between;align-items:flex-start;gap:20px;padding:27px 28px 18px;display:flex;position:sticky;top:0}.dialog-head h2{margin:4px 0 5px;font-family:Gowun Batang,AppleMyungjo,Batang,Georgia,serif;font-size:25px;font-weight:700}.dialog-head .eyebrow{color:#9a7650;letter-spacing:1.8px;font-size:9px}.dialog-head .round-btn{color:#536255;background:0 0;border-color:#dedbce;flex-shrink:0;width:36px;height:36px}.intro{color:#657066;margin:0 0 22px;font-size:13px;line-height:1.8}.field{margin:22px 0}.field>label,.field>legend,.field-label{margin-bottom:12px;font-size:13px;font-weight:600;display:block}.field-label small{color:#778172;margin-left:7px;font-size:11px;font-weight:400}.shape-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.shape-option{color:#677565;background:#f1eee3;border:1px solid #0000;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:75px;font-size:10px;display:flex}.shape-option .icon{width:26px;height:26px}.color-grid{flex-wrap:wrap;gap:13px;display:flex}.color-option{color:#153c34;border:4px solid #fbf7ec;border-radius:50%;outline:1px solid #d6d6c8;place-items:center;width:36px;height:36px;display:grid}.color-option[aria-pressed=true]{outline:2px solid #3c6453}.color-option .icon{filter:drop-shadow(0 0 2px #fff);width:17px;height:17px}.ornament-preview{color:#f5ebd4;background:radial-gradient(circle at 30%,#376155,#24483f);border-radius:16px;justify-content:center;align-items:center;gap:20px;margin-bottom:23px;padding:20px;display:flex}.ornament-preview .preview-shape{background:#ffffff0c;border-radius:50%;place-items:center;width:64px;height:64px;display:grid}.ornament-preview .icon{filter:drop-shadow(0 4px 4px #051c1866);width:43px;height:43px}.ornament-preview strong{word-break:keep-all;text-wrap:balance;font-family:Gowun Batang,AppleMyungjo,Batang,serif;font-size:17px;font-weight:400;display:block}.ornament-preview small{color:#eee3c7b8;margin-top:6px;font-size:10px;display:block}.presets{flex-wrap:wrap;gap:7px;display:flex}.preset{color:#596b57;background:0 0;border:1px solid #d4d8c8;border-radius:18px;padding:9px 12px;font-size:11px}.preset[aria-pressed=true]{color:#294b36;background:#e6ecdc;border-color:#8a9d7f}.privacy-note{color:#7d715e;margin:12px 0 8px;font-size:11px;line-height:1.7}.text-input,textarea,select{color:#30483a;background:#fffdf6;border:1px solid #cdd0bf;border-radius:10px;width:100%;padding:12px;line-height:1.6}textarea{resize:vertical;min-height:88px;font-size:13px}.char-count{text-align:right;color:#778172;margin-top:5px;font-size:10px}.radio-row{flex-wrap:wrap;align-items:center;gap:18px;margin-top:10px;font-size:12px;display:flex}.radio-row label{align-items:center;gap:5px;min-height:30px;display:flex}input[type=radio],input[type=checkbox]{accent-color:#536e4d}.helper{color:#78806e;margin:10px 0;font-size:11px;line-height:1.75}.action{background:var(--red);color:#fff8eb;border-radius:12px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:49px;margin-top:22px;font-size:13px;font-weight:600;display:flex}.action:hover{background:#99382f}.form-error{color:#a33830;margin:10px 0;font-size:12px;line-height:1.7}.note-box{color:#746448;background:#f3eddd;border:1px solid #e1d7bd;border-radius:12px;margin:16px 0;padding:15px;font-size:12px;line-height:1.8}.empty-state{text-align:center;color:#76816e;padding:25px 12px;font-size:13px;line-height:1.9}.empty-state .icon{color:#b1b9a0;width:44px;height:44px;margin-bottom:12px}.ornament-card,.wish-card{background:#fffdf5;border:1px solid #e0e0cf;border-radius:14px;margin:12px 0;padding:18px}.ornament-row{align-items:center;gap:14px;display:flex}.ornament-icon{background:#eef0e4;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.ornament-icon .icon{width:30px;height:30px}.ornament-card strong{font-size:14px}.record-meta{color:#7b8271;font-size:11px;line-height:1.8}.card-actions{border-top:1px solid #ecebdf;flex-wrap:wrap;gap:4px;margin-top:13px;padding-top:9px;display:flex}.small-btn{color:#53674d;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:10px;font-size:11px;display:inline-flex}.small-btn .icon{width:15px;height:15px}.small-btn:hover{background:#edf0e4}.small-btn.danger{color:#a04437}.wish-card p{overflow-wrap:anywhere;margin:4px 0 14px;font-family:Gowun Batang,AppleMyungjo,Batang,serif;font-size:17px;line-height:1.9}.wish-footer{color:#838775;justify-content:space-between;align-items:center;font-size:10px;display:flex}.section-title{margin:24px 0 10px;font-family:Gowun Batang,AppleMyungjo,Batang,serif;font-size:19px}.about-copy{color:#66725f;font-size:13px;line-height:1.95}.about-copy h3{color:#364d37;margin:24px 0 8px;font-size:14px}.about-copy p{margin:0 0 14px}.about-copy a{text-underline-offset:4px}.journey-art{background:#214c48;border-radius:16px;width:100%;height:auto;margin:16px 0}.journey-steps{margin:15px 0;padding:0;list-style:none}.journey-steps li{color:#78806f;align-items:center;gap:12px;padding:11px 0;font-size:12px;display:flex}.journey-steps li.active{color:#335a3c;font-weight:600}.step-dot{background:#f1eddd;border:1px solid #a6ad95;border-radius:50%;width:9px;height:9px}.active .step-dot{background:#c89444;border-color:#c89444;box-shadow:0 0 0 4px #e8d2a944}.timezone-grid{grid-template-columns:1fr 1.4fr;gap:12px;display:grid}.timezone-grid label{color:#65745d;margin-bottom:7px;font-size:11px;display:block}.event-details{color:#78806c;font-size:12px;line-height:1.9}.restore-input{overflow-wrap:anywhere;min-height:76px;font-size:12px}.settings-row{border-bottom:1px solid #e3e2d6;justify-content:space-between;align-items:center;gap:15px;min-height:50px;font-size:12px;display:flex}.settings-row button{color:#4c6346;background:#e7ecde;border-radius:10px;padding:8px 12px}.status-pill{color:#5b7250;background:#e9eddd;border-radius:12px;margin:4px 0;padding:3px 8px;font-size:9px;display:inline-block}.success-star{color:#8e7040;background:#e9edda;border-radius:50%;place-items:center;width:76px;height:76px;margin:0 auto 20px;display:grid}.success-star .icon{width:38px;height:38px}.success-title{text-align:center;font-family:Gowun Batang,AppleMyungjo,Batang,serif;font-size:24px}.success-copy{text-align:center;color:#758069;margin:14px 0 24px;font-size:13px;line-height:1.9}.recovery-link{word-break:break-all;-webkit-user-select:all;user-select:all;background:#efeee2;border-radius:10px;padding:12px;font-family:monospace;font-size:10px}.loading-note{color:#8c917e;text-align:center;padding:30px;font-size:12px}.admin-list{overflow-wrap:anywhere;font-size:12px;line-height:1.8}.admin-item{border:1px solid #ddd;border-radius:10px;margin:10px 0;padding:12px}.hidden{display:none!important}dialog{background:#fbf6e9;border-color:#e3d7bd;width:min(470px,100% - 40px);max-height:calc(100svh - 110px);margin:auto 28px auto auto;box-shadow:0 24px 100px #061e3255}.dialog-head{background:#fbf6e9}.dialog-head h2{letter-spacing:-.3px;font-family:Georgia,AppleMyungjo,serif;font-size:24px;font-weight:400;line-height:1.5}.dialog-head .round-btn{border-radius:13px;width:44px;height:44px}.dialog-body{padding:23px 26px 28px}.intro{color:#64715e;font-size:14px;line-height:1.9}.helper,.privacy-note,.local-note{font-size:12px;line-height:1.8}.field>label,.field-label{font-size:14px}.small-btn{min-height:44px;font-size:12px}.action{min-height:50px;font-size:14px}.shape-option{min-height:78px;font-size:12px}.preset{min-height:40px;font-size:12px}.text-input,textarea,select{font-size:16px}.status-pill{font-size:11px}.record-meta{font-size:12px}.about-copy{font-size:14px;line-height:1.95}.about-copy h3{font-size:15px}.settings-row{min-height:59px;font-size:13px}.settings-row button{min-height:40px}.activity-illustration{color:#7d8658;background:#e9eddb;border:1px solid #dbe1cc;border-radius:28px;place-items:center;width:84px;height:84px;margin:0 auto 22px;display:grid}.activity-illustration>.icon{width:43px;height:43px}.local-note{color:#858872;border-top:1px solid #e0dece;margin-top:20px;padding-top:13px}.delivery-list,.map-destinations{margin:19px 0}.destination-row{color:#38533f;text-align:left;background:#fffdf4;border:1px solid #dedecb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:50px;margin:7px 0;padding:13px 14px;font-size:13px;display:flex}.destination-row small{color:#7e866e;margin-left:auto;font-size:11px}.destination-row .icon{color:#82906b;width:18px;height:18px}.destination-row span{align-items:center;gap:9px;display:flex}.destination-row:hover{background:#eef1df}.step-progress{justify-content:center;gap:20px;margin:25px 0;display:flex}.step-progress span{color:#969d84;border:1px solid #d2d6c0;border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.step-progress .done{color:#fff2cf;background:#587453;border-color:#587453}.aim-track{background:#e5e9d8;border:1px solid #d4d9c3;border-radius:15px;height:52px;margin:30px 13px;position:relative;overflow:visible}.aim-zone{background:#d6bb7c;border:1px solid #c4a76d;border-radius:10px;width:28%;position:absolute;top:4px;bottom:4px;left:36%}#aim-marker{color:#54765c;background:#fffdf0;border-radius:50%;place-items:center;width:33px;height:33px;display:grid;position:absolute;top:9px;transform:translate(-50%);box-shadow:0 3px 7px #69805230}#aim-range{accent-color:#5e7b58;width:100%;min-height:44px}.game-score{text-align:center;color:#738268;font-size:13px;line-height:1.7}.bell-keys{grid-template-columns:repeat(5,1fr);gap:8px;margin:25px 0;display:grid}.bell-keys button{color:#617458;background:#fffaf0;border:1px solid #dcd7c4;border-radius:28px 28px 13px 13px;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:102px;display:flex}.bell-keys button .icon{width:29px;height:29px;color:var(--bell-color)}.bell-keys button:active{background:#eeecd9;transform:translateY(3px)}.note-sequence{text-align:center;color:#647b55;background:#e8ecdd;border-radius:12px;min-height:50px;padding:15px;font-size:16px}.journal-heading{color:#faeac7;background:#294c40;border-radius:14px;justify-content:space-between;gap:12px;margin-bottom:20px;padding:17px 18px;font-size:13px;display:flex}.journal-heading span{align-items:center;gap:7px;display:flex}.journal-heading .icon{width:18px;height:18px}.stamp-grid{grid-template-columns:repeat(4,1fr);gap:9px;margin:20px 0;display:grid}.stamp{text-align:center;color:#a0a58e;background:#f3f2e4;border:1px dashed #cbd1bb;border-radius:50% 50% 40% 40%;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:85px;padding:8px;font-size:10px;display:flex}.stamp.earned{color:#6b7749;background:#e8edcd;border:1px solid #c4ce9c}.stamp>.icon{width:25px;height:25px}.star-note{color:#7e805b;align-items:center;gap:9px;margin:20px 0;font-size:12px;line-height:1.8;display:flex}.star-note .icon{width:18px;height:18px}.activity-list{margin:16px 0}.activity-card{color:#456043;text-align:left;background:#fffdf4;border:1px solid #dedecb;border-radius:14px;align-items:center;gap:13px;width:100%;min-height:86px;margin:10px 0;padding:15px;display:flex}.activity-card>span:nth-child(2){flex:1}.activity-card strong{font-size:14px;font-weight:600;line-height:1.5;display:block}.activity-card small{color:#859077;margin-top:4px;font-size:12px;line-height:1.7;display:block}.activity-icon{color:#8c9770;background:#edf0de;border-radius:13px;flex-shrink:0;place-items:center;width:45px;height:45px;display:grid}.activity-card>.icon{width:17px;height:17px}.activity-card:hover{background:#edf1df}.map-art{background:#e7eada;border:1px solid #d8ddc5;border-radius:17px;height:200px;margin:20px 0;position:relative;overflow:hidden}.map-path{background:#d3d9bb;display:block;position:absolute}.map-path.vertical{width:24px;height:100%;left:calc(50% - 12px)}.map-path.horizontal{width:100%;height:24px;top:calc(50% - 12px)}.map-tree{color:#fff0b8;background:#607f5f;border-radius:50%;place-items:center;width:64px;height:64px;display:grid;position:absolute;top:calc(50% - 32px);left:calc(50% - 32px)}.map-tree .icon{width:39px;height:39px}.map-house{color:#b18e64;position:absolute}.map-house .icon{width:33px;height:33px}.map-house-0{top:17%;left:18%}.map-house-1{top:17%;right:18%}.map-house-2{bottom:17%;left:18%}.map-house-3{bottom:17%;right:18%}.map-house-4{top:42%;left:5%}.map-house-5{top:42%;right:5%}@media (max-width:1050px){.location-tag{display:none}.context-action{bottom:150px}.village-dock{bottom:57px;right:22px}.personal-progress{bottom:68px;left:22px}.welcome-note{top:140px;left:22px}.hud-header{padding:20px 22px}.world-footnote{left:22px;right:22px}.season-clock{left:22px}}@media (max-width:600px){.hud-header{align-items:flex-start;gap:8px;padding:16px}.brand{gap:8px}.brand-mark{border-radius:13px;width:39px;height:39px}.brand strong{letter-spacing:0;font-size:14px}.brand small{letter-spacing:.9px;max-width:150px;font-size:5.5px}.brand-mark .icon{width:24px;height:24px}.header-right{gap:5px}.header-right .round-btn{border-radius:13px;width:39px;height:39px}.header-right .icon{width:19px;height:19px}.presence{gap:5px;max-width:81px;min-height:39px;padding:8px 9px;font-size:10px;line-height:1.5}.presence .live-dot{flex-shrink:0;width:4px;height:4px}.season-clock{gap:6px;min-height:34px;padding:8px 11px;top:67px;left:17px}.season-clock #event-date{display:none}.season-clock #countdown{font-size:13px}.connection-banner{width:max-content;max-width:90%;padding:8px 12px;font-size:11px;top:108px}.welcome-note{max-width:245px;padding:17px 18px;top:115px;left:17px}.welcome-note h1{margin:8px 0;font-size:19px}.welcome-note p{font-size:12px}.welcome-note .eyebrow{letter-spacing:1px;font-size:7px}.personal-progress{border-radius:24px;gap:5px;min-height:34px;padding:8px 10px;font-size:10px;inset:68px 16px auto auto}.personal-progress .icon{width:14px;height:14px}.personal-progress i{padding:0 3px}.village-dock{left:16px;right:16px;bottom:calc(23px + env(safe-area-inset-bottom));border-radius:19px;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:6px}.village-dock button{border-radius:12px;gap:6px;min-height:53px;font-size:10px}.village-dock button .icon{width:21px;height:21px}.context-action{bottom:calc(127px + env(safe-area-inset-bottom));align-items:flex-end;max-width:185px;left:auto;right:16px;transform:none}.interact-btn{gap:7px;max-width:185px;min-height:46px;padding:10px 12px;font-size:12px}.interact-btn kbd{display:none}#nearby-hint{text-align:right;max-width:160px;font-size:10px}.social-actions{top:auto;bottom:calc(204px + env(safe-area-inset-bottom));gap:7px;right:16px;transform:none}.social-actions .round-btn{border-radius:50%;width:38px;height:38px}.social-actions .icon{width:18px;height:18px}.movement-pad{left:16px;bottom:calc(117px + env(safe-area-inset-bottom));z-index:4;touch-action:none;grid-template-rows:repeat(2,44px);grid-template-columns:repeat(3,44px);gap:3px;display:grid;position:fixed}.movement-pad button{color:#f5e8c8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);touch-action:none;-webkit-user-select:none;user-select:none;background:#183f45b3;border:1px solid #f0e5c424;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.movement-pad button:active{color:#28463b;background:#e3c996cc}.movement-pad .icon{width:18px;height:18px}.pad-up{grid-area:1/2}.pad-left{grid-area:2/1;transform:rotate(-90deg)}.pad-down{grid-area:2/2;transform:rotate(180deg)}.pad-right{grid-area:2/3;transform:rotate(90deg)}.world-footnote{gap:10px;font-size:7px;bottom:7px;left:17px;right:17px}.world-footnote>span:first-child{white-space:nowrap;text-overflow:ellipsis;max-width:135px;overflow:hidden}.toast{bottom:calc(213px + env(safe-area-inset-bottom));max-width:90%;padding:11px 15px;font-size:12px}.finale-caption{bottom:calc(217px + env(safe-area-inset-bottom));width:90%;padding:12px 17px;font-size:14px}dialog{border-bottom:0;border-radius:23px 23px 0 0;width:100%;max-height:83svh;margin:auto 0 0}.dialog-head{padding:20px 21px 15px}.dialog-head h2{margin-top:5px;font-size:22px}.dialog-body{padding:20px 21px calc(27px + env(safe-area-inset-bottom))}.dialog-head .eyebrow{font-size:8px}.intro{font-size:13px}.bell-keys{gap:6px}.bell-keys button{min-height:90px}.stamp-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.stamp{min-height:78px;font-size:9px}.activity-card{gap:11px;padding:13px}.activity-card strong{font-size:13px}.activity-card small{font-size:11px}.destination-row{font-size:12px}.destination-row small{font-size:10px}.color-option{width:38px;height:38px}.shape-grid{gap:7px}.shape-option{font-size:11px}.timezone-grid{grid-template-columns:1fr 1.4fr;gap:9px}}@media (max-height:600px) and (min-width:601px){.welcome-note{padding:15px 18px;top:130px}.context-action{bottom:141px}.village-dock{bottom:48px}.world-footnote{bottom:15px}.personal-progress{bottom:54px}dialog{max-height:calc(100svh - 50px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.color-grid{gap:10px}.color-option{border-width:7px;width:44px;height:44px}.preset,.settings-row button{min-height:44px}@media (max-width:600px){.header-right .round-btn{width:44px;height:44px}.welcome-note{max-width:245px;padding:14px 16px}.welcome-note .eyebrow{display:none}.welcome-note h1{margin:0 0 8px;font-size:18px}.welcome-note p{margin-bottom:10px;font-size:11px;line-height:1.65}.welcome-note .small-btn{min-height:40px;padding:7px 10px;font-size:11px}.village-dock button{font-size:11px}.color-option{width:44px;height:44px}.stamp{font-size:10px}.activity-card small{font-size:12px}}.aim-mode{color:#6b7d60;align-items:center;gap:9px;min-height:44px;margin:12px 0;font-size:13px;display:flex}.aim-mode input{width:18px;height:18px}:root{--cream:#fff8e7;--ink:#3b2a22;--red:#a92928;--gold:#f3b737;--muted:#685443;--hud:#fff8e9;--hud-border:#513629;color:var(--ink);background:#e9f4fa}.world{background:#e8f3fa}.screen-vignette{box-shadow:inset 0 -28px 50px #385a6b18}#world-canvas:focus-visible,#world-fallback:focus-visible{outline-offset:-4px;outline:3px solid #a82e24}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #9c2d24}.brand{color:#38271f;text-shadow:none}.brand strong{letter-spacing:-.02em;font-family:inherit;font-size:17px;font-weight:800}.brand small{color:#684d39;opacity:1;letter-spacing:.08em;font-size:9px;font-weight:700}.brand-mark,.round-btn,.presence,.season-clock,.personal-progress,.location-tag{color:#3b2a22;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff8e9;border:2px solid #513629;box-shadow:0 3px #513629}.round-btn:hover,.social-actions .round-btn:hover{background:#ffe6ad}.presence{font-weight:700}.live-dot{box-shadow:none;background:#237547}.season-clock{color:#553526;min-height:44px;font-weight:700}.season-clock #event-date{color:#694a36}#countdown{font-family:inherit;font-weight:800}.welcome-note{color:#3b2a22;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff8e9;border:3px solid #513629;border-radius:20px;top:235px;box-shadow:0 5px #513629}.welcome-note .eyebrow,.eyebrow{color:#8b3d2d}.welcome-note h1{color:#35251d;font-family:inherit;font-weight:800;line-height:1.35}.welcome-note p{color:#604636}.welcome-note .small-btn{color:#fffaf0;background:#9d3028;border:2px solid #513629;min-height:44px;font-weight:700}.personal-progress,.location-tag{color:#523528;font-weight:700}.village-dock{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff8e9;border:3px solid #513629;border-radius:20px;gap:4px;padding:5px;bottom:24px;left:50%;right:auto;transform:translate(-50%);box-shadow:0 5px #513629}.village-dock button{color:#3b2a22;min-height:56px;font-weight:800}.village-dock button:hover{background:#ffebbd}.village-dock button[aria-label=장식\ 걸기]{color:#fff9ed;background:#b32f2b;border:2px solid #513629}.village-dock button[aria-label=장식\ 걸기]:hover{background:#922820}.context-action{bottom:108px}#nearby-hint{color:#3b2a22;text-shadow:none;background:#fff8e9eb;border:2px solid #513629;border-radius:12px;padding:5px 9px;font-weight:700}.interact-btn{color:#3b2a22;background:#ffd15d;border:2px solid #513629;font-weight:800;box-shadow:0 3px #513629}.interact-btn:hover{background:#ffe49b}.social-actions .round-btn{color:#3b2a22;background:#fff8e9;border:2px solid #513629}.world-footnote{color:#3b2a22;text-shadow:none;font-weight:700}.world-footnote strong{color:#8a281f;font-weight:800}#tree-stage-panel{z-index:3;color:#3b2a22;background:#fff8e9;border:3px solid #513629;border-radius:18px;width:min(260px,100vw - 32px);padding:13px 15px;font-size:12px;line-height:1.45;position:fixed;top:132px;left:28px;box-shadow:0 4px #513629}#tree-stage-name{color:#23613d;font-size:15px;font-weight:800}#tree-stage-copy{color:#624c3a;font-size:12px;line-height:1.5}#tree-stage-progress{accent-color:#2b7548;width:100%;height:10px}#music-panel{color:#3b2a22}.toast,.finale-caption{color:#3b2a22;text-shadow:none;background:#fff8e9;border:2px solid #513629;box-shadow:0 4px #513629}dialog{color:#3b2a22;background:#fff8e9;border:3px solid #513629;box-shadow:0 8px #513629,0 22px 80px #231b1745}.dialog-head h2{color:#3b2a22;font-family:inherit;font-weight:800;line-height:1.3}.dialog-head .round-btn{color:#3b2a22;background:#ffebbd;border:2px solid #513629}.intro,.helper,.privacy-note,.local-note{color:#5d4b3e}.shape-option{color:#453326;background:#f5ead2;border:2px solid #c7a77b;font-weight:700}.shape-option[aria-pressed=true]{color:#234b32;background:#dceacb;border-color:#376446;box-shadow:inset 0 0 0 1px #376446}.action{border:2px solid #513629;font-weight:800;box-shadow:0 3px #513629}.action.secondary{color:#254a31;background:#e2efd4}.ornament-preview{background:#2e6845;border:2px solid #513629}.ornament-preview strong{font-family:inherit;font-weight:800}textarea,select,.text-input{color:#3b2a22;border:2px solid #a68a6e}@media (max-width:600px){.hud-header{padding:12px}.brand strong{font-size:14px}.brand small{max-width:120px;font-size:7px}.brand-mark,.header-right .round-btn{width:44px;height:44px}.presence{max-width:82px;min-height:44px;padding:6px 8px}.season-clock{min-height:44px;top:64px;left:12px}.personal-progress{min-height:44px;top:64px;right:12px}#tree-stage-panel{width:min(220px,100vw - 24px);padding:9px 11px;top:116px;left:12px}#tree-stage-name{font-size:13px}#tree-stage-copy{font-size:11px}.welcome-note{max-width:220px;top:218px;left:12px}.village-dock{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:4px;transform:none}.village-dock button{gap:3px;min-height:50px;font-size:10px}.movement-pad{left:12px;bottom:calc(92px + env(safe-area-inset-bottom));gap:5px}.movement-pad button{color:#3b2a22;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff8e9;border:2px solid #513629;box-shadow:0 2px #513629}.movement-pad button:active{color:#3b2a22;background:#ffd15d}.context-action{right:12px;bottom:calc(103px + env(safe-area-inset-bottom))}.social-actions{right:12px;bottom:calc(205px + env(safe-area-inset-bottom))}.social-actions .round-btn{width:44px;height:44px}.world-footnote{display:none}dialog{border-radius:22px 22px 0 0;width:100%;max-height:85svh}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.world-loading{z-index:25;color:#3b2a22;text-align:center;background:#e8f3fa;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:fixed;inset:0}.world-loading strong{font-size:18px}.world-loading span{color:#604636;font-size:14px}#tree-stage-open{text-align:left;width:100%;min-height:44px;color:inherit;background:0 0;border:0;gap:4px;padding:0;display:grid}#tree-stage-progress{background:#e2d2ad;border:0;border-radius:8px;display:block;overflow:hidden}#tree-stage-progress::-webkit-progress-bar{background:#e2d2ad;border-radius:8px}#tree-stage-progress::-webkit-progress-value{background:#36794c;border-radius:8px}#tree-stage-progress::-moz-progress-bar{background:#36794c;border-radius:8px}.zoom-controls{z-index:4;gap:6px;display:flex;position:fixed;top:92px;right:28px}.zoom-controls button,.music-actions button{color:#3b2a22;background:#fff8e9;border:2px solid #513629;border-radius:12px;min-width:48px;min-height:44px;padding:8px 11px;font-size:12px;font-weight:700;box-shadow:0 3px #513629}.zoom-controls button:hover,.music-actions button:hover{background:#ffe6ad}.music-actions{flex-wrap:wrap;gap:9px;margin:12px 0;display:flex}#music-panel label{margin:12px 0 6px;font-size:13px;font-weight:700;display:block}#music-volume{accent-color:#287547;width:100%;min-height:44px}.music-credits summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.movement-pad .pad-left,.movement-pad .pad-down,.movement-pad .pad-right{transform:none}.movement-pad button span{font-size:14px;font-weight:800}@media (max-width:600px){.zoom-controls{flex-direction:column;gap:5px;top:116px;right:12px}.zoom-controls button{min-width:56px;min-height:44px}}.tree-stage-list{gap:8px;margin:18px 0;display:grid}.tree-stage-row{background:#f5ead2;border:2px solid #d3b78b;border-radius:13px;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;padding:9px 10px;display:grid}.tree-stage-row.is-current{background:#e1efd1;border-color:#39734c}.tree-stage-row>span{color:#fff8e9;background:#725039;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:800;display:grid}.tree-stage-row.is-current>span{background:#2c7044}.tree-stage-row strong,.tree-stage-row small{overflow-wrap:anywhere;display:block}.tree-stage-row strong{color:#3b2a22;font-size:13px;line-height:1.4}.tree-stage-row small{color:#624c3a;margin-top:2px;font-size:11px;line-height:1.45}@media (max-width:600px){dialog{width:100%;max-width:none}.welcome-note p{display:none}}.round-scoreboard{color:#254a31;text-align:center;background:#e2efd4;border:2px solid #4c6d48;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:6px;margin:16px 0 8px;padding:10px;font-size:12px;line-height:1.35;display:grid}.round-scoreboard strong{font-size:17px;font-weight:800}.round-result{color:#723527;font-weight:700;line-height:1.6}#manual-aim-controls input[type=range]{accent-color:#287547;width:100%;min-height:44px}#throw-snowball,#restart-snowball{min-height:48px}.journey-story{color:#483023}.journey-lead{color:#365c46;word-break:keep-all;margin:0 0 4px;font-size:17px;font-weight:800;line-height:1.45}.journey-note{color:#705444;margin:0 0 16px;font-size:13px}.journey-cards{gap:10px;margin:0 0 20px;padding:0;list-style:none;display:grid}.journey-card{background:#fffaf0;border:2px solid #795747;border-radius:17px;grid-template-columns:112px minmax(0,1fr);min-height:112px;display:grid;overflow:hidden}.journey-card.is-current{background:#fff1cc;border-color:#a63d32;box-shadow:0 3px #dcbf91}.journey-card-art{background:#dceee9;justify-content:center;align-items:end;padding:8px;display:flex;overflow:hidden}.journey-card:nth-child(2n) .journey-card-art{background:#f7dfbd}.journey-card-art img{object-fit:contain;filter:drop-shadow(0 2px #ffffff80);width:70%;max-height:94px}.journey-card-art img+img{z-index:1;width:42%;margin-left:-23%}.journey-card-text{min-width:0;padding:11px 12px}.journey-card-state{color:#a43b32;font-size:12px;font-weight:800}.journey-card h3{color:#3e3025;margin:2px 0;font-size:16px;line-height:1.3}.journey-card p{word-break:keep-all;margin:0;font-size:13px;line-height:1.45}.journey-card small{color:#725c4d;margin-top:4px;font-size:12px;display:block}.journey-settings{background:#fffaf0;border:2px solid #795747;border-radius:15px;margin:0 0 12px;padding:0 14px}.journey-settings summary{cursor:pointer;align-items:center;min-height:48px;font-weight:800;display:flex}.journey-settings summary:after{content:"+";margin-left:auto;font-size:21px}.journey-settings[open] summary:after{content:"−"}.journey-settings .timezone-grid{margin-bottom:10px}.journey-settings .event-details{margin-bottom:14px}.journey-preview{width:100%;min-height:48px}.activity-progress,.letter-panel{background:#fff7e4;border:2px solid #795747;border-radius:16px;margin:14px 0;padding:16px}.activity-progress-label{font-weight:800;line-height:1.5;display:block}.activity-progress-track{background:#e7d2aa;border-radius:99px;height:12px;margin-top:10px;overflow:hidden}.activity-progress-fill{border-radius:inherit;background:#47845a;height:100%;transition:width .25s;display:block}@media (prefers-reduced-motion:reduce){.activity-progress-fill{transition:none}}@media (max-width:400px){.journey-card{grid-template-columns:96px minmax(0,1fr)}.journey-card-art img{max-height:82px}}#rest-progress{z-index:25;left:50%;bottom:max(128px, calc(env(safe-area-inset-bottom) + 128px));width:min(360px,100% - 32px);margin:0;position:fixed;transform:translate(-50%);box-shadow:0 4px #765543}#rest-progress small{color:#654b3a;margin-top:8px;line-height:1.4;display:block}#rest-progress #leave-rest{min-height:44px;margin-top:8px}#rest-progress progress.activity-progress-track{appearance:none;border:0;width:100%;display:block}#rest-progress progress::-webkit-progress-bar{background:#e7d2aa;border-radius:99px}#rest-progress progress::-webkit-progress-value{background:#47845a;border-radius:99px}#rest-progress progress::-moz-progress-bar{background:#47845a;border-radius:99px}.letter-compose .letter-panel{background:#fff4d9;border-style:solid;box-shadow:inset 0 0 0 4px #fffaf0}.letter-compose .letter-panel strong{color:#944037;line-height:1.5}.letter-compose .letter-panel p{word-break:keep-all;margin:8px 0 0;line-height:1.6}@media (max-width:600px){#rest-progress{bottom:max(205px, calc(env(safe-area-inset-bottom) + 205px));padding:12px 14px}}.brand{background:#fff8e9;border-radius:12px;box-shadow:0 0 0 4px #fff8e9}#rest-progress{top:145px;bottom:auto}@media (max-width:600px){#rest-progress{top:220px;bottom:auto}}.letter-options summary{cursor:pointer;align-items:center;min-height:44px;font-weight:800;display:flex}@media (max-width:600px){body:has(#rest-progress) .toast{top:385px;bottom:auto}}@font-face{font-family:Santa Jua;src:url(/fonts/Jua-Regular.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{--snow-ink:#193d4b;--snow-muted:#365b68;--snow-surface:#f5fcffe6;--snow-solid:#f5fcff;--snow-line:#a5cbd6;--snow-mint:#d9f0eb;--snow-red:#a83037;--snow-shadow:0 5px 18px #1b495d33, inset 0 1px 0 #fff;--ink:var(--snow-ink);--red:var(--snow-red);--hud:var(--snow-surface);--hud-border:var(--snow-line);--cream:var(--snow-ink);color:var(--snow-ink)}.brand strong,.welcome-note h1,.dialog-head h2,.journey-card h3,.journey-lead,.success-title,#tree-stage-name,.world-loading strong{letter-spacing:0;font-family:Santa Jua,Apple SD Gothic Neo,sans-serif;font-weight:400}.brand,.brand-mark,.round-btn,.presence,.season-clock,.personal-progress,.location-tag,.welcome-note,#tree-stage-panel,.village-dock,#nearby-hint,.movement-pad button,.zoom-controls button,.social-actions .round-btn,.toast,.finale-caption{color:var(--snow-ink);background:var(--snow-surface);border:1px solid var(--snow-line);box-shadow:var(--snow-shadow);-webkit-backdrop-filter:blur(14px)saturate(120%);backdrop-filter:blur(14px)saturate(120%);text-shadow:none}.brand{border-radius:16px;padding:4px 9px 4px 4px}.brand-mark{background:#e2f5f5;box-shadow:inset 0 2px #fff}.brand strong,.brand small,#countdown,.personal-progress,.location-tag,#tree-stage-name{color:var(--snow-ink)}.brand small{opacity:1;letter-spacing:.7px}.welcome-note{border-radius:20px}.welcome-note h1,.welcome-note p,.welcome-note .eyebrow,.eyebrow,#tree-stage-copy{color:var(--snow-muted)}#tree-stage-panel{border-radius:18px}.village-dock{border-radius:20px}.village-dock button{color:var(--snow-ink);border-radius:14px}.village-dock button:hover,.round-btn:hover,.social-actions .round-btn:hover,.zoom-controls button:hover,.movement-pad button:active{background:#dff3f7}.village-dock button[aria-label=장식\ 걸기],.interact-btn,.action{color:#fff;background:var(--snow-red);border:1px solid #862a32;box-shadow:inset 0 1px #fff5,0 3px 8px #17415122}.village-dock button[aria-label=장식\ 걸기]:hover,.interact-btn:hover,.action:hover{background:#872730}.interact-btn kbd{color:var(--snow-ink);background:#fff}.world-footnote{color:#153c4b;text-shadow:0 1px 4px #fff,0 0 6px #fff}.world-footnote strong{color:#842b35}.live-dot{background:#268265;box-shadow:0 0 0 3px #bce6d9}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,#world-canvas:focus-visible,#world-fallback:focus-visible{outline-offset:3px;outline:3px solid #116280}dialog{color:var(--snow-ink);background:var(--snow-solid);border:1px solid #aad0dc;border-radius:24px;box-shadow:0 24px 70px #113b5066,inset 0 2px #fff}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#163b506e}.dialog-head{background:#f5fcff;border-color:#c5e1e8}.dialog-head h2,.field>label,.field>legend,.field-label{color:var(--snow-ink)}.dialog-head .round-btn{width:44px;height:44px;color:var(--snow-ink);border:1px solid var(--snow-line);background:#e3f4f8}.intro,.helper,.privacy-note,.local-note,.record-meta,.char-count,.field-label small,.empty-state,.journey-note,.journey-card small,.activity-card small,.destination-row small,#rest-progress small{color:var(--snow-muted)}.shape-option,.preset,.destination-row,.activity-card,.ornament-card,.wish-card,.note-box,.tree-stage-row,.journey-card,.journey-settings,.activity-progress,.letter-panel,.letter-compose .letter-panel,.bell-keys button{color:var(--snow-ink);background:#edf8fa;border:1px solid #b8d9e1;box-shadow:inset 0 1px #fff}.shape-option[aria-pressed=true],.preset[aria-pressed=true],.tree-stage-row.is-current,.journey-card.is-current{color:#164c49;background:#d9f0eb;border-color:#438b80;box-shadow:inset 0 0 0 1px #438b80}.journey-card-art,.journey-card:nth-child(2n) .journey-card-art{background:#dceff4}.journey-story,.journey-card h3,.tree-stage-row strong{color:var(--snow-ink)}.journey-card-state,.letter-compose .letter-panel strong,.form-error{color:#982f39}.journey-lead{color:#27685e}.journey-card small,.tree-stage-row small{color:var(--snow-muted)}.activity-card:hover,.destination-row:hover,.small-btn:hover{background:#daf0f4}.activity-icon,.activity-illustration,.ornament-icon,.note-sequence,.round-scoreboard{color:#24594f;background:#d9f0eb;border-color:#b4d9d6}.action.secondary,.music-actions button,.small-btn{color:var(--snow-ink);box-shadow:none;background:#dff2f5;border:1px solid #a9cfd9}.small-btn,.settings-row button,.preset,.radio-row label{min-height:44px}.text-input,textarea,select{color:var(--snow-ink);background:#fff;border:1px solid #88b7c6;font-size:16px}input[type=radio],input[type=checkbox],input[type=range],#music-volume,#tree-stage-progress{accent-color:#277c73}.activity-progress-track{background:#cbe3e9}#tree-stage-progress::-webkit-progress-bar{background:#cbe3e9}#rest-progress progress::-webkit-progress-bar{background:#cbe3e9}.activity-progress-fill{background:#287f72}#tree-stage-progress::-webkit-progress-value{background:#287f72}#rest-progress progress::-webkit-progress-value{background:#287f72}#tree-stage-progress::-moz-progress-bar{background:#287f72}#rest-progress progress::-moz-progress-bar{background:#287f72}.tree-stage-row>span,.tree-stage-row.is-current>span{color:#fff;background:#287f72}.world-loading{color:var(--snow-ink);background:#e4f3f8}.world-loading span{color:var(--snow-muted)}#rest-progress{width:min(270px,100% - 32px);box-shadow:var(--snow-shadow);inset:155px 20px auto auto;transform:none}@media (max-width:600px){.hud-header{padding-top:max(12px, env(safe-area-inset-top))}.brand small{font-size:9px}#tree-stage-panel{top:calc(116px + env(safe-area-inset-top));width:min(190px,100vw - 110px)}#tree-stage-copy{font-size:12px}.zoom-controls{top:calc(116px + env(safe-area-inset-top))}#rest-progress{top:calc(220px + env(safe-area-inset-top));width:min(195px,100vw - 24px);right:12px}dialog{max-height:min(85svh, calc(100svh - env(safe-area-inset-top)));border-radius:22px 22px 0 0}.dialog-body{padding-bottom:max(28px, env(safe-area-inset-bottom))}}@media (prefers-reduced-transparency:reduce){.brand,.brand-mark,.round-btn,.presence,.season-clock,.personal-progress,.location-tag,.welcome-note,#tree-stage-panel,.village-dock,#nearby-hint,.movement-pad button,.zoom-controls button,.social-actions .round-btn,.toast,.finale-caption{background:var(--snow-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--snow-surface:#f5fcff}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button,.presence,.season-clock,.personal-progress,.location-tag,#nearby-hint,.toast,.finale-caption,.journey-card-state,.activity-progress-label,.tree-stage-row strong{font-family:Santa Jua,Apple SD Gothic Neo,sans-serif;font-weight:400}.village-dock,#tree-stage-panel,.welcome-note,.dialog-head{background-image:radial-gradient(22px 5px at 18px 0,#fff 98%,#0000 100%);background-repeat:repeat-x;background-size:40px 9px}.map-art{background:#e6f4f7;border-color:#bddce4}.map-path{background:#c8e4e9}.map-tree{color:#fff;background:#4f8a7d}@media (max-width:600px){:is(body:has(#rest-progress) .zoom-controls,body:has(#rest-progress) .social-actions){visibility:hidden}}@media (max-height:500px) and (orientation:landscape){.hud-header{padding:8px 12px}.season-clock{top:64px;left:12px}.personal-progress{top:64px;bottom:auto;right:12px}#tree-stage-panel{width:190px;padding:8px 10px;top:112px;left:12px}.welcome-note{padding:8px 12px;top:212px;left:12px}.welcome-note p,.welcome-note .eyebrow{display:none}.welcome-note h1{margin:0 0 6px;font-size:16px}.zoom-controls{top:114px;right:12px}.social-actions{flex-direction:row;top:165px;bottom:auto;right:12px}.world-footnote{display:none}.village-dock{bottom:max(8px, env(safe-area-inset-bottom))}.village-dock button{min-height:46px}#rest-progress{width:190px;top:165px;right:12px}body:has(#rest-progress) .social-actions{visibility:hidden}}@media (max-height:500px) and (orientation:landscape) and (pointer:coarse){.movement-pad{left:12px;bottom:max(68px, env(safe-area-inset-bottom));z-index:4;touch-action:none;grid-template-rows:repeat(2,44px);grid-template-columns:repeat(3,44px);gap:4px;display:grid;position:fixed}.movement-pad button{touch-action:none;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.movement-pad .pad-up{grid-column:2}.movement-pad .pad-left{grid-area:2/1}.movement-pad .pad-down{grid-area:2/2}.movement-pad .pad-right{grid-area:2/3}}@media (max-height:500px) and (orientation:landscape){.personal-progress{left:auto}.social-actions{transform:none}.welcome-note:not(.exploring){z-index:8;width:min(260px,100vw - 400px);max-width:none;top:50%;left:50%;transform:translate(-50%,-50%)}#rest-progress{width:190px;top:110px;right:12px}:is(body:has(#rest-progress) .zoom-controls,body:has(#rest-progress) .social-actions){visibility:hidden}#rest-progress{padding:10px}#rest-progress .activity-progress-label{font-size:14px;line-height:1.3}#rest-progress small{margin-top:6px;font-size:12px;line-height:1.25}#rest-progress progress.activity-progress-track{height:8px;margin-top:6px}#rest-progress #leave-rest{min-height:44px;margin-top:6px}}.generated-icon{isolation:isolate;line-height:0;display:inline-block;position:relative;overflow:visible}.generated-icon-image{object-fit:contain;transform-origin:50%;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;transform:scale(1.35)}.generated-icon--close{transform:rotate(45deg)}.generated-icon--chevron{transform:rotate(-90deg)}:is(.preview-shape,.ornament-icon,.success-star) .generated-icon:before{content:"";transform-origin:50%;-webkit-mask:var(--icon-image) center / contain no-repeat;-webkit-mask:var(--icon-image) center / contain no-repeat;mask:var(--icon-image) center / contain no-repeat;background:currentColor;position:absolute;inset:0;transform:scale(1.35)}:is(.preview-shape,.ornament-icon,.success-star) .generated-icon-image{filter:grayscale();mix-blend-mode:multiply;opacity:.32;position:relative}
