@charset "UTF-8";.topbar{position:relative;z-index:1000;flex-shrink:0;display:flex;align-items:center;justify-content:center;min-height:56px;box-sizing:border-box;padding:12px 16px;background:#fff;box-shadow:0 1px 3px #3f2e0429}.topbar-back{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(63,46,4,.16);border-radius:10px;background:#fff;color:#3f2e04;cursor:pointer;transition:background .18s ease,border-color .18s ease}.topbar-back:hover{background:#fdf3d6;border-color:#3f2e0452}.topbar-title{display:flex;align-items:center;color:#000}.menu-title-icon{flex-shrink:0;opacity:.72}.menu-title-label{font-size:.92rem;font-weight:800;letter-spacing:-.035em;word-break:keep-all}@media(max-width:360px){.menu-title-label{font-size:.79rem}}.report-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .2s ease}.report-modal-content{background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:14px;width:90%;max-width:480px;max-height:calc(100vh - 48px);max-height:calc(var(--app-h) - 48px);overflow-y:auto;padding:24px;box-shadow:0 20px 40px #0009;color:#fff;animation:slideUp .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.report-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.report-modal-header h2{margin:0;font-size:18px;font-weight:700;color:#fff}.close-btn{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ffffff1a;color:#fff}.report-modal-info-summary{background:#eab3081a;border:1px solid rgba(234,179,8,.3);padding:10px 14px;border-radius:8px;font-size:13px;color:#eab308;margin-bottom:16px}.survey-field{margin-bottom:16px;flex:1;min-width:0}.survey-row{display:flex;gap:12px}.survey-label{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:#cbd5e1}.survey-input{width:100%;box-sizing:border-box;padding:10px 12px;background:#00000040;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-family:inherit;font-size:13px;outline:none;transition:border-color .15s ease}.survey-input::placeholder{color:#64748b}.survey-input:focus{border-color:#eab308}.segmented-group{display:flex;gap:6px}.segmented-group.is-four .segmented-btn{padding:9px 2px;font-size:12px;letter-spacing:-.03em;white-space:nowrap}@media(max-width:360px){.segmented-group.is-four{flex-wrap:wrap}.segmented-group.is-four .segmented-btn{flex:1 1 calc(50% - 3px);font-size:12.5px}}.segmented-btn{flex:1;padding:9px 6px;background:#00000040;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#cbd5e1;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease}.segmented-btn:hover{border-color:#eab30880;color:#fff}.segmented-btn.active{background:#eab30826;border-color:#eab308;color:#fde047}.survey-slider-header{display:flex;align-items:center;justify-content:space-between}.survey-slider-value{font-size:15px;font-weight:800;color:#eab308;background:#eab3081f;border:1px solid rgba(234,179,8,.3);border-radius:6px;padding:2px 10px;min-width:46px;text-align:center}.survey-range{width:100%;margin:4px 0 6px;accent-color:#eab308;cursor:pointer}.survey-range-scale{display:flex;justify-content:space-between;font-size:11px;color:#64748b}.survey-input.invalid{border-color:#ef4444}.survey-error{margin:6px 0 0;font-size:11.5px;font-weight:600;color:#f87171}.survey-error-banner{background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:600;margin-bottom:12px}.survey-hint{margin:-10px 0 16px;font-size:11.5px;line-height:1.45;color:#94a3b8}.report-modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.btn-cancel{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#cbd5e1;padding:10px 18px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .15s ease}.btn-cancel:hover{background:#ffffff26;color:#fff}.btn-submit{background:linear-gradient(135deg,#eab308,#ca8a04);border:none;color:#000;padding:10px 22px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:700;transition:all .15s ease}.btn-submit:hover{filter:brightness(1.1);transform:translateY(-1px)}.survey-done{text-align:center;padding:8px 4px 20px}.survey-done-icon{width:56px;height:56px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#eab30824;color:#eab308}.survey-done-title{margin:0 0 8px;font-size:19px;font-weight:800;letter-spacing:-.02em;color:#f8fafc}.survey-done-desc{margin:0 auto;max-width:30em;font-size:13px;line-height:1.6;color:#cbd5e1}.survey-done-links{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.survey-link-card{display:flex;align-items:center;gap:11px;width:100%;padding:13px 15px;border:1px solid rgba(63,46,4,.08);border-radius:12px;background:#fffdf4;font:inherit;text-align:left;color:#3f2e04;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .14s ease}.survey-link-card:hover:not(.is-disabled):not(.is-band){background:#fdf3d6;border-color:#c8990c80}.survey-link-card.is-band{position:relative;overflow:hidden;border-color:transparent}.survey-link-card.is-band-status{background:#f5c518;color:#4b3705}.survey-link-card.is-band-join{background:#fcebbb;color:#5c4409}.survey-link-card.is-band .survey-link-text,.survey-link-card.is-band strong{color:inherit}.survey-link-card.is-band .survey-link-desc{opacity:.66}.survey-link-card.is-band .survey-link-inner>svg:first-child,.survey-link-card.is-band .survey-link-arrow{color:currentColor;opacity:.72}.survey-link-card.is-band:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;transition:opacity .26s ease;pointer-events:none}.survey-link-card.is-band:hover:after,.survey-link-card.is-band:focus-visible:after{opacity:.16}.survey-link-card.is-band:active:after{opacity:.06}.survey-link-card.is-band>*{position:relative;z-index:1}.survey-link-card:active:not(.is-disabled){transform:scale(.995)}.survey-link-inner{flex:1;min-width:0;display:flex;align-items:center;gap:11px}.survey-link-inner>svg:first-child{flex-shrink:0;color:#b3880a}.survey-link-text{min-width:0;display:flex;flex-direction:column;gap:2px;font-size:.76rem;color:#6b5008}.survey-link-card strong{font-size:.87rem;font-weight:800;letter-spacing:-.02em;color:#3f2e04}.survey-link-arrow{flex-shrink:0;color:#9a7b28}.survey-link-card.is-flying{width:auto;padding:0;border:none;background:none;cursor:default;overflow:visible}.survey-link-card.is-flying:after{display:none}.survey-link-card.is-flying .survey-link-inner{flex:0 0 auto}.survey-link-card.is-disabled{cursor:default;opacity:.62}@media(prefers-reduced-motion:reduce){.survey-link-card{transition:none}}.splash{--title-font: clamp(1rem, 5.5vw, 1.9rem);--title-w: calc(var(--title-font) * 8.7);--brand-gap: clamp(10px, 2vw, 18px);--logo-size: min(26vw, 128px);--ease: cubic-bezier(.65, 0, .35, 1);--dock-x: 18px;--dock-y: 16px;--dock-scale: .55;--dock-ms: 1s;--walk-delay: 1.6s;--walk-ms: 10s;--walk-dist: 45vw;position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:3000;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:44px;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.splash-exiting{pointer-events:none;animation:splashIrisOut .84s cubic-bezier(.4,0,.2,1) forwards}@keyframes splashIrisOut{0%{clip-path:circle(75% at 50% 50%);transform:scale(1)}to{clip-path:circle(0% at 50% 50%);transform:scale(.9)}}.splash-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;background:#fdf3d6;opacity:0;pointer-events:none;transition:opacity 1s ease}.splash-scene .splash-stage,.splash-exiting .splash-stage{opacity:1}.splash-stage-photo{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.07);transition:opacity 1.4s ease,transform 7s ease-out}.splash-scene .splash-stage-photo,.splash-exiting .splash-stage-photo{opacity:1;transform:scale(1)}.splash-stage-caption{position:absolute;left:50%;top:40%;z-index:2;margin:0;transform:translate(-50%);white-space:nowrap;font-size:clamp(1.1rem,4.8vw,1.55rem);font-weight:700;letter-spacing:-.02em;color:#3f2e04;padding:.42em 1.1em;border-radius:999px;background:#fffdf4;box-shadow:0 14px 36px #180f0061;opacity:0}.splash-scene .splash-stage-caption,.splash-exiting .splash-stage-caption{animation:captionShow var(--walk-ms) ease var(--walk-delay) both}@keyframes captionShow{0%{opacity:0}7%{opacity:1}30%{opacity:1}35%,to{opacity:0}}.splash-stage-walk{position:absolute;left:5%;bottom:6%;z-index:2;width:max-content}.splash-scene .splash-stage-walk,.splash-exiting .splash-stage-walk{animation:walkAcross var(--walk-ms) linear var(--walk-delay) both}@keyframes walkAcross{0%,12.5%{transform:translate(0)}50%,to{transform:translate(var(--walk-dist))}}.splash-stage-walker{display:block;height:clamp(120px,30vh,280px);height:clamp(120px,30svh,280px);width:auto;opacity:0;transition:opacity .7s ease}.splash-scene .splash-stage-walker,.splash-exiting .splash-stage-walker{opacity:1;transition-delay:var(--walk-delay)}.splash-stage-bubble{position:absolute;left:50%;top:52%;z-index:3;margin:0;padding:16px 26px;border-radius:20px;background:#fffdf4;color:#3f2e04;font-size:clamp(1.25rem,5.6vw,1.85rem);font-weight:800;letter-spacing:-.02em;white-space:nowrap;box-shadow:0 14px 36px #180f0061;opacity:0;transform:translate(-50%,-50%);transform-origin:center bottom}.splash-stage-bubble:after{content:"";position:absolute;left:56%;bottom:-45px;width:58px;height:46px;background:#fffdf4;clip-path:polygon(0 0,44% 0,100% 100%)}.splash-bubble-mark{padding:10px 36px;color:#dc2626;font-size:clamp(2.2rem,9vw,3.2rem);font-weight:900;line-height:1.1}.splash-scene .splash-bubble-mark,.splash-exiting .splash-bubble-mark{animation:bubbleMark var(--walk-ms) ease var(--walk-delay) both}@keyframes bubbleMark{0%,49.9%{opacity:0;transform:translate(-50%,-50%) translateY(10px) scale(.6)}53%{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1.16)}56%{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1)}72%{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1)}75%,to{opacity:0;transform:translate(-50%,-50%) translateY(-8px) scale(.94)}}.splash-scene .splash-bubble-text,.splash-exiting .splash-bubble-text{animation:bubbleText var(--walk-ms) ease var(--walk-delay) both}@keyframes bubbleText{0%,74.9%{opacity:0;transform:translate(-50%,-50%) translateY(10px) scale(.7)}78%{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1.08)}81%,to{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1)}}.splash-leaves{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden;transition:opacity .9s ease}.splash-scene .splash-leaves,.splash-exiting .splash-leaves{opacity:0}.splash-leaf{position:absolute;top:0;display:block;opacity:0;will-change:transform,opacity;animation:leafFall var(--duration) linear var(--delay) infinite}.splash-leaf svg{width:100%;height:100%;display:block;animation:leafSway calc(var(--duration) / 3) ease-in-out var(--delay) infinite alternate}@keyframes leafFall{0%{transform:translate3d(0,-14svh,0) rotate(var(--rot));opacity:0}12%{opacity:var(--op)}88%{opacity:var(--op)}to{transform:translate3d(var(--drift),110svh,0) rotate(calc(var(--rot) + var(--spin)));opacity:0}}@keyframes leafSway{0%{transform:translate(-9px) rotate(-14deg)}to{transform:translate(9px) rotate(14deg)}}.splash-brand{position:absolute;top:50%;left:50%;z-index:2;display:flex;align-items:center;gap:var(--brand-gap);transform:translate(-50%,-50%) translate(calc((var(--title-w) + var(--brand-gap) * 2 + 1px) / 2));transition:transform 1.1s var(--ease) .35s}.splash-revealing .splash-brand,.splash-docking .splash-brand,.splash-scene .splash-brand,.splash-exiting .splash-brand{transform:translate(-50%,-50%)}.splash-docking .splash-brand,.splash-scene .splash-brand,.splash-exiting .splash-brand{transform:translate(-50%,-50%) translate(calc(50% * var(--dock-scale) - 50vw + var(--dock-x)),calc(50% * var(--dock-scale) - var(--app-h) / 2 + var(--dock-y))) scale(var(--dock-scale));transition:transform var(--dock-ms) var(--ease) 0ms}.splash-docking .splash-title-line,.splash-scene .splash-title-line,.splash-exiting .splash-title-line{overflow:visible}.splash-logo{position:relative;flex-shrink:0;width:var(--logo-size);aspect-ratio:1 / 1}.splash-logo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.splash-emblem{opacity:1;transition:opacity .9s ease}.splash-symbol{opacity:1;transition:opacity .9s ease .25s}.splash-symbol-autumn{opacity:0;transition:opacity .9s ease .25s}.splash-revealing .splash-emblem,.splash-docking .splash-emblem,.splash-scene .splash-emblem,.splash-exiting .splash-emblem,.splash-revealing .splash-symbol,.splash-docking .splash-symbol,.splash-scene .splash-symbol,.splash-exiting .splash-symbol{opacity:0}.splash-revealing .splash-symbol-autumn,.splash-docking .splash-symbol-autumn,.splash-scene .splash-symbol-autumn,.splash-exiting .splash-symbol-autumn{opacity:1}.splash-rule{flex-shrink:0;width:1px;height:min(17vw,84px);background:#d4d4d0;transform:scaleY(0);transform-origin:top center;transition:transform .7s var(--ease) .6s}.splash-revealing .splash-rule,.splash-docking .splash-rule,.splash-scene .splash-rule,.splash-exiting .splash-rule{transform:scaleY(1)}.splash-title{width:max-content;flex-shrink:0}.splash-title-line{overflow:hidden}.splash-title-line>span{display:inline-block;transform:translateY(115%);transition:transform .9s var(--ease)}.splash-revealing .splash-title-line>span,.splash-docking .splash-title-line>span,.splash-scene .splash-title-line>span,.splash-exiting .splash-title-line>span{transform:translateY(0)}.splash-title-line:nth-child(1)>span{transition-delay:.62s}.splash-title-line:nth-child(2)>span{transition-delay:.73s}.splash-title-line:first-child{margin-bottom:6px}.splash-title-sub{font-size:clamp(.76rem,3vw,.95rem);font-weight:600;letter-spacing:.14em;color:#8a8a85}.splash-title-main{font-size:var(--title-font);font-weight:800;letter-spacing:-.035em;line-height:1.24;color:#0c2f5e;white-space:nowrap}.splash-hint{position:absolute;left:50%;top:50%;transform:translate(-50%,calc(var(--logo-size) / 2 + 30px));z-index:2;margin:0;font-size:.86rem;font-weight:600;letter-spacing:.01em;color:#6b7280;text-shadow:0 0 8px #fff,0 0 5px #fff,0 0 3px #fff;animation:splashHintPulse 1.9s ease-in-out infinite;transition:opacity .32s ease}.splash-revealing .splash-hint,.splash-docking .splash-hint,.splash-scene .splash-hint,.splash-exiting .splash-hint{opacity:0;animation:none}@keyframes splashHintPulse{0%,to{opacity:.4}50%{opacity:1}}@media(max-width:640px){.splash{--brand-gap: 10px;--logo-size: min(30vw, 120px);gap:38px}.splash-rule{height:min(20vw,82px)}}@media(prefers-reduced-motion:reduce){.splash,.splash-brand,.splash-rule,.splash-emblem,.splash-symbol,.splash-symbol-autumn,.splash-title-line>span,.splash-hint,.splash-stage,.splash-stage-photo,.splash-stage-walker,.splash-stage-walk,.splash-stage-caption,.splash-stage-bubble,.splash-bubble-mark,.splash-bubble-text{transition-duration:1ms;transition-delay:0ms;animation-duration:1ms;animation-delay:0ms}.splash-stage-photo{transform:none}.splash-hint{animation:none;opacity:.8}.splash-leaf,.splash-leaf svg{animation:none}}.menu-screen{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:2500;background:#fdf3d6;display:flex;flex-direction:column;overflow:hidden;animation:menuFadeIn .52s ease both}@keyframes menuFadeIn{0%{opacity:0}to{opacity:1}}.menu-brand{position:relative;z-index:2;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:10px 12px;min-height:52px;box-sizing:border-box;background:#fff;font-size:.78rem;font-weight:700;letter-spacing:.01em;color:#0c2f5e;pointer-events:none;animation:menuBrandIn .6s ease .12s both}.menu-brand-mark{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:30px;height:30px;object-fit:contain}.menu-brand-sub{position:absolute;left:50px;top:50%;transform:translateY(-50%);font-size:.72rem;font-weight:600;letter-spacing:.14em;color:#8a8a85;white-space:nowrap}.menu-brand-main{font-size:.92rem;font-weight:800;letter-spacing:-.035em;color:#0c2f5e}.menu-brand.is-morphing .menu-brand-mark,.menu-brand.is-morphing .menu-brand-sub,.menu-brand.is-morphing .menu-brand-main{opacity:0}@keyframes menuBrandIn{0%{opacity:0}to{opacity:1}}@media(max-width:360px){.menu-brand{padding:9px 12px;min-height:46px}.menu-brand-mark{left:10px;width:26px;height:26px}.menu-brand-sub{left:42px;font-size:.62rem}.menu-brand-main{font-size:.79rem}}.menu-bands{flex:1;min-height:0;display:flex;flex-direction:column}.menu-band{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;border:none;padding:0 24px;font:inherit;color:inherit;cursor:pointer;overflow:hidden;-webkit-tap-highlight-color:transparent;transform:translateY(24px);opacity:0;animation:bandIn .62s cubic-bezier(.22,1,.36,1) var(--enter-delay) both;transition:flex-grow .42s cubic-bezier(.22,1,.36,1)}@keyframes bandIn{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}.menu-band-1{background:#c8990c;color:#fffdf4}.menu-band-2{background:#f5c518;color:#4b3705}.menu-band-3{background:#fcebbb;color:#5c4409}.menu-band:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;transition:opacity .26s ease;pointer-events:none}.menu-band:hover:after,.menu-band:focus-visible:after{opacity:.16}.menu-band:focus-visible{outline:2px solid #7a5c11;outline-offset:-6px}.menu-band:active:after{opacity:.06}@media(hover:hover){.menu-bands:hover .menu-band:hover{flex-grow:1.35}}.menu-band-inner{position:relative;z-index:1;display:flex;align-items:center;gap:12px;transition:transform .32s cubic-bezier(.22,1,.36,1)}.menu-band:hover .menu-band-inner{transform:scale(1.04)}.menu-band:active .menu-band-inner{transform:scale(.99)}.menu-band-icon{flex-shrink:0;opacity:.72}.menu-band-text{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left}.menu-band-label{font-size:clamp(1.02rem,4.6vw,1.32rem);font-weight:800;letter-spacing:-.03em;word-break:keep-all}.menu-band-desc{font-size:clamp(.72rem,3vw,.82rem);font-weight:600;letter-spacing:-.01em;opacity:.66;word-break:keep-all}.menu-band.is-launching .menu-band-inner{visibility:hidden}.menu-band.is-pending .menu-band-desc{opacity:.95;animation:pendingNudge .42s ease}@keyframes pendingNudge{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.menu-screen.is-back{z-index:2600;background:transparent;animation:menuBackBgIn 1ms linear 1.59s both}@keyframes menuBackBgIn{0%{background-color:transparent}to{background-color:#fdf3d6}}.menu-screen.is-back .menu-brand{animation:none;opacity:1}.menu-screen.is-back .menu-band{animation:bandInFromLeft 1.15s cubic-bezier(.22,1,.36,1) var(--back-delay) both}.menu-screen.is-back .menu-band-inner{animation:bandTextIn .88s cubic-bezier(.22,1,.36,1) calc(var(--back-delay) + .24s) backwards}@keyframes bandInFromLeft{0%{opacity:1;transform:translate(-101%)}to{opacity:1;transform:translate(0)}}@keyframes bandTextIn{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.menu-screen,.menu-brand,.menu-band,.menu-band-inner,.menu-screen.is-back,.menu-screen.is-back .menu-brand,.menu-screen.is-back .menu-band,.menu-screen.is-back .menu-band-inner,.menu-band.is-pending .menu-band-desc{animation:none;transition:none;opacity:1;transform:none}.menu-screen.is-back{background:#fdf3d6}}.menu-screen.is-instant,.menu-screen.is-instant .menu-brand,.menu-screen.is-instant .menu-band{animation:none;opacity:1;transform:none}.menu-mascots{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;pointer-events:none;--mascot-hide: 39.3%;--mascot-hide-right: 27.4%;--mascot-h: clamp(129px, 22.4vh, 213px)}.menu-mascot{position:absolute;bottom:0;display:block;height:var(--mascot-h);width:auto;transform:translateY(100%);transition:transform .38s cubic-bezier(.4,0,.7,.4);touch-action:none;-webkit-tap-highlight-color:transparent}.menu-mascot-img{display:block;height:100%;width:auto;filter:drop-shadow(0 4px 8px rgba(70,48,4,.22));-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.menu-mascot-left{left:max(15%,calc(50% - 160px));margin-left:calc(var(--mascot-h) * -.1044)}.menu-mascot-right{right:max(15%,calc(50% - 160px));margin-right:calc(var(--mascot-h) * -.1117)}.menu-mascots.is-shown .menu-mascot{transform:translateY(var(--mascot-hide));transition:transform .64s cubic-bezier(.22,1,.36,1);pointer-events:auto;cursor:pointer}.menu-mascots.is-shown .menu-mascot-right{transform:translateY(var(--mascot-hide-right));transition-delay:.15s}.menu-mascot-img{transition:transform .14s ease}.menu-mascot.is-pressed .menu-mascot-img{transform:scale(.96)}@media(max-height:620px){.menu-mascots{--mascot-h: clamp(106px, 22.4vh, 168px)}}@media(prefers-reduced-motion:reduce){.menu-mascot,.menu-mascots.is-shown .menu-mascot{transform:translateY(var(--mascot-hide));opacity:0;transition:opacity .2s linear;transition-delay:0ms}.menu-mascot-right,.menu-mascots.is-shown .menu-mascot-right{transform:translateY(var(--mascot-hide-right));transition-delay:0ms}.menu-mascots.is-shown .menu-mascot{opacity:1}.menu-mascot-img,.menu-mascot.is-pressed .menu-mascot-img{animation:none;transition:none;transform:none}}.intro-screen{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:2500;display:flex;flex-direction:column;overflow:hidden;cursor:pointer;text-align:left;border:none;-webkit-tap-highlight-color:transparent;--intro-ink: #3f2e04;--intro-ink-soft: #6b5008;--intro-gold: #c8990c;--intro-card: #fffdf4;--intro-line: rgba(63, 46, 4, .12);--intro-body-size: clamp(1rem, 4.3vw, 1.14rem);--intro-body-lh: 1.72;background:#fdf3d6;color:var(--intro-ink);animation:introFadeIn .52s ease both}.intro-screen:focus-visible{outline:2px solid #7a5c11;outline-offset:-6px}@keyframes introFadeIn{0%{opacity:0}to{opacity:1}}.intro-body{flex:1;min-height:0;display:grid;grid-template:minmax(0,1fr) / minmax(0,1fr);overflow:hidden}.intro-slide{grid-area:1 / 1;position:relative;min-height:0;display:flex;flex-direction:column;background:#fdf3d6}.intro-slide-body{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;padding:18px;overflow-y:auto}.intro-slide.is-entering{z-index:2;animation:introSlideIn 1s cubic-bezier(.22,1,.36,1) both}.intro-slide.is-entering.is-back{animation-name:introSlideInBack}.intro-slide.is-leaving{z-index:1;pointer-events:none}@keyframes introSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes introSlideInBack{0%{transform:translate(-100%)}to{transform:translate(0)}}.intro-page{width:100%;max-width:560px;display:flex;flex-direction:column;align-items:center;gap:18px;animation:introIrisIn .62s cubic-bezier(.4,0,.2,1) both}.intro-page.is-out{animation:introIrisOut .64s cubic-bezier(.4,0,.2,1) forwards}@keyframes introIrisIn{0%{clip-path:circle(0% at 50% 50%);transform:scale(.9)}to{clip-path:circle(75% at 50% 50%);transform:scale(1)}}@keyframes introIrisOut{0%{clip-path:circle(75% at 50% 50%);transform:scale(1)}to{clip-path:circle(0% at 50% 50%);transform:scale(.9)}}.intro-page.is-slid,.intro-page.is-slid .intro-line,.intro-page.is-slid.is-speech .intro-text{animation:none;opacity:1;transform:none}.intro-art{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:100%}.intro-art img{max-width:100%;max-height:30vh;max-height:30svh;object-fit:contain;display:block;filter:drop-shadow(0 10px 18px rgba(63,46,4,.18))}.intro-art-mascot{max-height:26vh;max-height:26svh}.intro-art-photo{max-height:34vh;max-height:34svh;border-radius:16px;box-shadow:0 10px 24px #3f2e042e;filter:none}.intro-page.is-art-full{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;max-width:none;gap:0;padding:0;justify-content:flex-end;overflow:hidden}.intro-page.is-art-full .intro-art{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.intro-page.is-art-full .intro-art img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center 45%;border-radius:0;box-shadow:none;filter:none}.intro-page.is-art-full:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,#00000057,#0000 34%),linear-gradient(to top,#0000006b,#0000 38%),#0000001f}.intro-page.is-art-full .intro-text.is-float{position:absolute;z-index:2;width:min(74%,380px);padding:0;gap:18px;background:none;box-shadow:none;border-radius:0}.intro-page.is-art-full .intro-text.is-left{width:min(88%,420px);left:18px;top:48px;text-align:left}.intro-page.is-art-full .intro-text.is-right{width:min(94%,420px);right:18px;bottom:calc(var(--intro-footer-h, 52px) + 16px + env(safe-area-inset-bottom,0px));align-items:flex-end;text-align:right}.intro-page.is-art-full .intro-line{color:#fffffff0;text-shadow:0 2px 10px rgba(0,0,0,.75),0 0 26px rgba(0,0,0,.5)}.intro-page.is-art-full .intro-line.is-lead{color:#fff}.intro-page.is-art-full .intro-line.is-strong{color:#ffd873}.intro-page.is-art-full .intro-line.is-card{color:#241a06;text-shadow:none;line-height:2;filter:drop-shadow(0 6px 14px rgba(0,0,0,.32))}.intro-page.is-art-full .intro-text.is-left .intro-line.is-lead{font-size:clamp(.92rem,4.7vw,1.24rem)}.intro-page.is-art-full .intro-text.is-right .intro-line{font-size:clamp(.86rem,4.3vw,1.14rem)}.intro-page.is-art-full .intro-line.is-card .intro-card-text{-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:.55em .75em;border-radius:0;background:#fff}.intro-page.is-art-full .intro-line.is-card .intro-mark,.intro-page.is-art-full .intro-line.is-card.is-strong{color:var(--intro-gold)}.intro-text{width:100%;padding:24px 22px 26px;border-radius:20px;background:var(--intro-card);box-shadow:0 10px 24px #3f2e041f;display:flex;flex-direction:column;gap:12px}.intro-line{margin:0;font-size:var(--intro-body-size);font-weight:600;line-height:var(--intro-body-lh);letter-spacing:-.015em;color:var(--intro-ink);word-break:keep-all;opacity:0;animation:introLineIn .42s ease var(--line-delay, .16s) both}.intro-line.is-lead{font-size:clamp(1.16rem,5.2vw,1.36rem);font-weight:800;line-height:1.52;color:var(--intro-ink)}.intro-page:not(.is-speech):not(.is-art-full) .intro-line.is-lead{font-size:var(--intro-body-size);line-height:var(--intro-body-lh);font-weight:600}.intro-hi{font-size:1.28em}.intro-line.is-strong,.intro-mark{font-weight:800;color:var(--intro-gold)}.intro-page.is-art-full .intro-mark{color:#ffd873}.intro-page:not(.is-speech):not(.is-art-full) .intro-line.is-lead .intro-mark{font-size:1.12em;line-height:1}.intro-bold{font-weight:800}.intro-solo{display:block;text-align:center;font-size:1.04em;margin:.3em 0}.intro-solo .intro-menu{padding:.28em .85em;border-radius:0;font-weight:800;box-shadow:0 3px 10px #3f2e0429}.intro-solo .intro-key,.intro-solo .intro-menu-icon{color:inherit}.intro-solo .intro-menu[data-menu=survey]{background:#c8990c;color:#fffdf4}.intro-solo .intro-menu[data-menu=funding-status]{background:#f5c518;color:#4b3705}.intro-solo .intro-menu[data-menu=funding-join]{background:#fcebbb;color:#5c4409}.intro-key{font-weight:800;color:var(--intro-ink)}.intro-menu{display:inline-block;white-space:nowrap}.intro-menu-icon{width:1.02em;height:1.02em;margin-right:3px;vertical-align:-.16em;color:var(--intro-gold)}@keyframes introLineIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.intro-footer{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:14px;padding:14px 16px calc(16px + env(safe-area-inset-bottom,0px))}.intro-dots{display:flex;align-items:center;gap:7px}.intro-dot{width:8px;height:8px;padding:0;border:none;border-radius:9999px;background:#3f2e0438;cursor:pointer;transition:width .26s ease,background .26s ease}.intro-dot.is-on{width:22px;background:var(--intro-gold)}.intro-hint{display:inline-flex;align-items:center;gap:2px;font-size:.76rem;font-weight:700;letter-spacing:-.01em;color:#3f2e0480;animation:introHint 1.9s ease-in-out infinite}@keyframes introHint{0%,to{opacity:.55;transform:translate(0)}50%{opacity:1;transform:translate(3px)}}@media(max-width:380px){.intro-footer{flex-direction:column;gap:10px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}.intro-screen.is-morphing .intro-body{opacity:0;pointer-events:none;transition:opacity .52s ease}.intro-screen.is-morphing .intro-key,.intro-screen.is-morphing .intro-menu-icon{visibility:hidden}.intro-morph{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:2;display:flex;flex-direction:column;overflow:hidden}.intro-morph .menu-brand{visibility:hidden;animation:none}.intro-morph .menu-band{animation:none;opacity:1;transform:none;visibility:hidden;pointer-events:none}.intro-morph.is-sliding .menu-band{visibility:visible;animation:introBandIn 1s cubic-bezier(.22,1,.36,1) var(--band-delay, 0ms) both}@keyframes introBandIn{0%{transform:translate(102%)}to{transform:none}}.intro-morph .menu-band-label{visibility:hidden}.intro-morph.is-landed .menu-band-label{visibility:visible}.intro-morph .menu-band-icon,.intro-morph .menu-band-desc{opacity:0;transform:translateY(6px);transition:opacity .7s ease,transform .7s ease}.intro-morph.is-landed .menu-band-icon{opacity:.72;transform:none}.intro-morph.is-landed .menu-band-desc{opacity:.66;transform:none}.intro-fly{position:fixed;z-index:3;margin:0;white-space:nowrap;line-height:normal;pointer-events:none;will-change:transform,font-size;transition:transform 1.1s cubic-bezier(.22,1,.36,1) .26s,font-size 1.1s cubic-bezier(.22,1,.36,1) .26s,letter-spacing 1.1s cubic-bezier(.22,1,.36,1) .26s,font-weight 1.1s ease .26s,color .86s ease .38s}@media(prefers-reduced-motion:reduce){.intro-screen,.intro-page,.intro-line,.intro-hint,.intro-morph .menu-band{animation:none;opacity:1;transform:none}.intro-fly{transition:none}}.intro-page.is-speech{gap:0;max-width:600px}.intro-page.is-speech .intro-text{order:1;position:relative;border-radius:26px;padding:28px 26px 30px;gap:13px;animation:introBubbleIn .52s cubic-bezier(.34,1.4,.5,1) both}.intro-page.is-speech .intro-line{font-size:clamp(1.02rem,4.5vw,1.18rem);font-weight:600;line-height:1.72;color:var(--intro-ink)}.intro-page.is-speech .intro-line.is-lead{font-size:clamp(1.2rem,5.4vw,1.42rem);font-weight:800;line-height:1.5;text-align:center}.intro-page.is-speech .intro-art{order:2;margin-top:14px}.intro-page.is-speech .intro-text:after{content:"";position:absolute;left:50%;bottom:-18px;width:0;height:0;border-left:14px solid transparent;border-right:19px solid transparent;border-top:20px solid var(--intro-card);transform:translate(-50%);filter:drop-shadow(0 7px 5px rgba(63,46,4,.08))}.intro-art img.intro-art-greeting{width:min(100%,360px);height:auto;max-height:30vh;max-height:30svh;filter:drop-shadow(0 12px 16px rgba(63,46,4,.16))}@media(max-height:820px){.intro-slide-body{padding:14px}.intro-page{gap:14px}.intro-text{padding:16px 18px 18px;gap:9px}.intro-page.is-speech .intro-text{padding:24px 22px 26px}.intro-screen{--intro-body-lh: 1.6}.intro-solo{margin:.22em 0}}@media(max-height:720px){.intro-art img.intro-art-greeting{max-height:22vh;max-height:22svh}.intro-page.is-speech .intro-text{padding:24px 22px 26px}.intro-text{padding:14px 16px 16px;gap:8px}.intro-page{gap:14px}.intro-slide-body{padding:12px}.intro-screen{--intro-body-lh: 1.55}.intro-solo{margin:.2em 0}}@media(max-height:660px){.intro-slide-body{padding:10px}.intro-page{gap:11px}.intro-text{gap:7px}.intro-solo{margin:.14em 0}}@keyframes introBubbleIn{0%{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.intro-page.is-speech .intro-text{animation:none;opacity:1;transform:none}}.intro-screen{--intro-footer-h: 52px}.intro-slide.is-over-art .intro-footer{position:absolute;left:0;right:0;bottom:0;z-index:3}.intro-slide.is-over-art .intro-page.is-art-full{padding-bottom:calc(var(--intro-footer-h) + env(safe-area-inset-bottom,0px))}.intro-slide.is-over-art .intro-page.is-art-full:after{background:linear-gradient(to bottom,#3f2e0400 42%,#3f2e044d 76%,#3f2e048f)}.intro-slide.is-over-art .intro-dot{background:#ffffff73}.intro-slide.is-over-art .intro-dot.is-on{background:#ffd75e}.intro-slide.is-over-art .intro-hint{color:#fffffff0;text-shadow:0 1px 8px rgba(0,0,0,.45)}@media(max-width:380px){.intro-screen{--intro-footer-h: 84px}}.screen-wipe{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:4000;overflow:hidden;pointer-events:auto}.screen-wipe-collapse{pointer-events:none}.screen-wipe-circle{position:absolute;display:block;border-radius:50%;transform:scale(0);will-change:transform;animation:wipeExpand var(--wipe-expand) cubic-bezier(.4,0,.2,1) forwards}.screen-wipe-collapse .screen-wipe-circle{transform-origin:var(--collapse-ox) var(--collapse-oy);animation:wipeCollapse var(--wipe-collapse) cubic-bezier(.4,0,.2,1) forwards}@keyframes wipeExpand{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes wipeCollapse{0%{transform:scale(1)}to{transform:scale(0)}}.screen-wipe-group{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);will-change:transform;animation:wipeGroupDrift var(--wipe-drift) cubic-bezier(.4,0,.2,1) forwards}.screen-wipe-collapse .screen-wipe-group{animation:wipeGroupGather var(--wipe-collapse) cubic-bezier(.4,0,.2,1) forwards}@keyframes wipeGroupDrift{0%{transform:translate(-50%,-50%) translate(0) scale(1)}to{transform:translate(-50%,-50%) translate(var(--drift-x),var(--drift-y)) scale(1)}}@keyframes wipeGroupGather{0%{transform:translate(-50%,-50%) translate(var(--drift-x),var(--drift-y)) scale(1);opacity:1}to{transform:translate(-50%,-50%) translate(var(--drift-x),var(--drift-y)) scale(.25);opacity:0}}.brand-morph{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:2700;pointer-events:none}.brand-morph-mark-box{position:fixed;display:flex;align-items:center;justify-content:center;transition:transform .62s cubic-bezier(.22,1,.36,1)}.brand-morph-back{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border:1px solid rgba(63,46,4,.16);border-radius:10px;background:#fff;color:#3f2e04;transition:opacity .26s ease,transform .26s ease}.brand-morph-mark{position:relative;object-fit:contain;opacity:0;transform:scale(.7);transition:opacity .42s ease .14s,transform .52s cubic-bezier(.22,1,.36,1) .14s}.brand-morph.is-flying .brand-morph-back{opacity:0;transform:scale(.82)}.brand-morph.is-flying .brand-morph-mark{opacity:1;transform:scale(1)}.brand-morph-sub{position:fixed;white-space:nowrap;opacity:0;transform:translate(-6px);transition:opacity .46s ease .42s,transform .46s ease .42s}.brand-morph.is-flying .brand-morph-sub{opacity:1;transform:translate(0)}.brand-morph-out,.brand-morph-in{position:fixed;white-space:nowrap}.brand-morph-out{display:inline-block;opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.brand-morph.is-flying .brand-morph-out{opacity:0;transform:translateY(-4px)}.brand-morph-in{opacity:0;transform:translateY(4px);transition:opacity .46s ease .26s,transform .46s ease .26s}.brand-morph.is-flying .brand-morph-in{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.brand-morph{display:none}}.tour-layer{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:1800;pointer-events:auto;animation:tour-layer-in .35s ease both}@keyframes tour-layer-in{0%{opacity:0}to{opacity:1}}.tour-dim-full{position:absolute;top:0;right:0;bottom:0;left:0;background:#02060fc7;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.tour-spot{position:absolute;box-shadow:0 0 0 9999px #02060fc7,0 0 0 2px #eab308e6,0 0 24px 4px #eab30859;transition:top .42s cubic-bezier(.4,0,.2,1),left .42s cubic-bezier(.4,0,.2,1),width .42s cubic-bezier(.4,0,.2,1),height .42s cubic-bezier(.4,0,.2,1),border-radius .42s cubic-bezier(.4,0,.2,1)}.map-overlay,.leaflet-control-container{transition:opacity .35s ease,filter .35s ease}body.tour-dim-controls .map-overlay,body.tour-dim-controls .leaflet-control-container{opacity:.18;filter:saturate(.5)}@media(prefers-reduced-motion:reduce){.map-overlay,.leaflet-control-container{transition:none}}.tour-spot-pulse{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border:2px solid rgba(234,179,8,.75);animation:tour-pulse 1.9s ease-out infinite;pointer-events:none}@keyframes tour-pulse{0%{transform:scale(1);opacity:.85}70%{transform:scale(1.16);opacity:0}to{transform:scale(1.16);opacity:0}}@media(prefers-reduced-motion:reduce){.tour-spot,.tour-tip{transition:none}.tour-spot-pulse{animation:none;opacity:.6}}.tour-tip{position:fixed;width:min(360px,calc(100vw - 24px));box-sizing:border-box;padding:16px 18px 14px;border-radius:var(--radius-md, 14px);background:#0f172af5;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(234,179,8,.35);box-shadow:0 18px 44px -12px #000000bf;color:var(--text-main, #f8fafc);animation:tour-tip-in .32s cubic-bezier(.16,1,.3,1) both;transition:top .42s cubic-bezier(.4,0,.2,1),left .42s cubic-bezier(.4,0,.2,1),opacity .2s ease}.tour-tip.measuring{opacity:0;pointer-events:none}.tour-tip.place-center{top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes tour-tip-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tour-tip.place-center{animation:none}.tour-arrow{position:absolute;width:12px;height:12px;margin-left:-6px;background:#0f172af5;border:1px solid rgba(234,179,8,.35);transform:rotate(45deg)}.tour-tip.place-bottom .tour-arrow{top:-7px;border-right:none;border-bottom:none}.tour-tip.place-top .tour-arrow{bottom:-7px;border-left:none;border-top:none}.tour-tip-head{display:flex;align-items:center;gap:8px;margin-bottom:9px}.tour-tip-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;border-radius:8px;background:#eab30829;border:1px solid rgba(234,179,8,.3);color:var(--primary, #eab308)}.tour-tip-label{font-size:.72rem;font-weight:700;letter-spacing:.02em;color:var(--primary, #eab308)}.tour-tip-count{margin-left:auto;font-size:.72rem;font-weight:600;color:var(--text-muted, #94a3b8);font-variant-numeric:tabular-nums}.tour-tip-title{margin:0 0 6px;font-size:1rem;font-weight:700;line-height:1.35;color:#fff}.tour-tip-desc{margin:0;font-size:.83rem;line-height:1.6;color:var(--text-sub, #cbd5e1);word-break:keep-all}.tour-tip-note{margin:10px 0 0;padding:8px 10px;border-radius:var(--radius-sm, 8px);background:#94a3b81a;border:1px solid rgba(148,163,184,.18);font-size:.72rem;line-height:1.55;color:var(--text-muted, #94a3b8);word-break:keep-all}.tour-tip-foot{display:flex;align-items:center;gap:10px;margin-top:14px}.tour-dots{display:flex;align-items:center;gap:5px}.tour-dot{width:6px;height:6px;border-radius:999px;background:#94a3b859;transition:all .25s ease}.tour-dot.done{background:#eab30873}.tour-dot.on{width:18px;background:var(--primary, #eab308)}.tour-tip-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.tour-btn{display:inline-flex;align-items:center;gap:3px;padding:8px 14px;border-radius:var(--radius-sm, 8px);font-size:.82rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .18s ease}.tour-btn.primary{border:none;background:linear-gradient(135deg,#eab308,#ca8a04);color:#111;box-shadow:0 4px 14px #eab3084d}.tour-btn.primary:hover{transform:translateY(-1px);box-shadow:0 6px 18px #eab30873}.tour-btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.16);color:var(--text-muted, #94a3b8);padding:7px 11px}.tour-btn.ghost:hover{color:var(--text-main, #f8fafc);border-color:#ffffff4d}@media(max-width:640px){.tour-tip{padding:14px 15px 12px}.tour-tip-title{font-size:.95rem}.tour-tip-desc{font-size:.8rem}}.fund-screen{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:2500;display:flex;flex-direction:column;overflow:hidden;animation:fundFadeIn .42s ease both;--fund-deep: #c8990c;--fund-deep-dim: #b3880a;--fund-gold: #f5c518;--fund-card: #fffdf4;--fund-tile: #fdf3d6;--fund-ink: #3f2e04;--fund-ink-soft: #6b5008;--fund-bg: #fcebbb;--fund-text: var(--fund-ink);--fund-text-dim: rgba(63, 46, 4, .76);--fund-line: rgba(63, 46, 4, .16);--fund-rule: rgba(63, 46, 4, .4);--fund-accent: #8a6a08;--fund-shadow: none;background:var(--fund-bg);color:var(--fund-text)}@keyframes fundFadeIn{0%{opacity:0}to{opacity:1}}.fund-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:18px 18px 40px}.fund-body>*{max-width:640px;margin-left:auto;margin-right:auto}.fund-section{margin-bottom:30px}.fund-section-title{display:flex;align-items:center;justify-content:flex-start;gap:9px;text-align:left;margin:0 0 18px;font-size:1.42rem;font-weight:800;letter-spacing:-.035em;color:var(--fund-text);text-shadow:var(--fund-shadow)}.fund-section-title svg{color:var(--fund-accent)}.fund-section-title .center-title{padding-left:26px}.fund-section-title .center-title-icon{right:auto;left:0}.fund-section-lead{margin:-6px 0 16px;font-size:.88rem;line-height:1.6;color:var(--fund-text-dim);text-shadow:var(--fund-shadow)}.fund-notice-list{list-style:none;display:flex;flex-direction:column;border-bottom:1px solid var(--fund-line)}.fund-notice{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-top:1px solid var(--fund-line)}.fund-notice-num{flex-shrink:0;min-width:1.1em;font-size:2.2rem;font-weight:800;line-height:1;letter-spacing:-.04em;color:var(--fund-accent);text-shadow:var(--fund-shadow)}.fund-notice-title{margin:0 0 8px;font-size:1.3rem;font-weight:600;letter-spacing:-.035em;line-height:1.34;color:var(--fund-text);text-shadow:var(--fund-shadow);word-break:keep-all}.fund-notice-em{font-weight:900}.fund-notice-desc{margin:0;font-size:1rem;line-height:1.6;color:var(--fund-text-dim);text-shadow:var(--fund-shadow)}.fund-notice-figure{padding:18px 0;border-top:1px solid var(--fund-line)}.fund-notice-figure figure{margin:0}.fund-notice-figure img{display:block;width:auto;max-width:100%;max-height:440px;margin:0 auto;border-radius:12px;background:#3f2e040f}.fund-notice-figure figcaption{margin:12px 0 0;font-size:1rem;line-height:1.6;color:var(--fund-text-dim);text-shadow:var(--fund-shadow);word-break:keep-all}.fund-notice-figure figcaption strong{font-weight:800}.fund-figure-lead{margin:10px 0 0;font-size:1.3rem;font-weight:800;letter-spacing:-.035em;line-height:1.34;color:var(--fund-text);text-shadow:var(--fund-shadow);word-break:keep-all}.fund-notice-extra{margin-top:16px}.fund-notice-title+.fund-notice-extra{margin-top:0}.fund-notice-extra .fund-section-lead,.fund-notice-extra .fund-note p{font-size:1rem;line-height:1.6}.fund-notice-extra .fund-section-lead{margin:0 0 14px}.fund-promo-list{list-style:none;display:flex;flex-direction:column}.fund-promo-item{display:flex;align-items:center;gap:11px;padding:14px 0;border-top:1px solid var(--fund-line);font-size:1.04rem;font-weight:700;letter-spacing:-.02em;color:var(--fund-text);text-shadow:var(--fund-shadow);word-break:keep-all}.fund-promo-item svg{flex-shrink:0;color:var(--fund-accent)}.fund-rank-link{display:flex;align-items:center;gap:8px;width:100%;margin:4px 0 2px;padding:12px 14px;border:1px solid var(--fund-ink);border-radius:12px;background:transparent;color:var(--fund-ink);font:inherit;font-size:.96rem;font-weight:800;letter-spacing:-.02em;text-align:left;cursor:pointer;transition:background .18s ease,color .18s ease,transform .14s ease}.fund-rank-link-inner{display:flex;align-items:center;gap:8px;flex:1;min-width:0;font-size:.96rem;font-weight:800;letter-spacing:-.02em;text-align:left}.fund-rank-link.is-launching .fund-rank-link-inner{visibility:hidden}.fund-rank-link svg{flex-shrink:0}.fund-rank-link:hover{background:var(--fund-ink);color:#ffe89a}.fund-rank-link:active{transform:scale(.995)}.fund-note{margin-top:18px;display:flex;flex-direction:column;gap:8px}.fund-notice-extra .fund-note{margin-top:0;margin-bottom:14px}.fund-note p{margin:0;font-size:.85rem;line-height:1.62;color:var(--fund-text-dim);text-shadow:var(--fund-shadow)}.fund-apply{margin:0 auto;padding-top:0;text-align:left}.fund-apply-note{margin:0 0 10px;padding-left:1.1em;text-indent:-1.1em;font-size:1.06rem;font-weight:700;line-height:1.6;letter-spacing:-.02em;color:var(--fund-text);text-shadow:var(--fund-shadow);word-break:keep-all}.fund-apply-lead{margin:0 0 18px;font-size:.94rem;line-height:1.6;color:var(--fund-text-dim);text-shadow:var(--fund-shadow);word-break:keep-all}.fund-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:17px 18px;border:none;border-radius:14px;background:var(--fund-ink);color:#ffe89a;font:inherit;font-size:1.06rem;font-weight:800;letter-spacing:-.02em;text-decoration:none;cursor:pointer;transition:background .18s ease,transform .14s ease}.fund-cta:hover:not(:disabled){background:#5c4409}.fund-cta:active:not(:disabled){transform:scale(.99)}.fund-cta:disabled{background:#3f2e0424;color:#3f2e0499;cursor:not-allowed}@media(max-width:480px){.fund-body{padding:14px 12px 34px}}@media(prefers-reduced-motion:reduce){.fund-screen{animation:none}.fund-cta{transition:none}}.fs-screen{position:fixed;top:0;right:0;bottom:0;left:0;height:var(--app-h);z-index:2500;display:flex;flex-direction:column;overflow:hidden;--fs-bg: #f5c518;--fs-ink: #3f2e04;--fs-dim: rgba(63, 46, 4, .66);--fs-line: rgba(63, 46, 4, .28);--fs-accent: #6b5008;background:var(--fs-bg);color:var(--fs-ink);animation:fsFadeIn .42s ease both}@keyframes fsFadeIn{0%{opacity:0}to{opacity:1}}.fs-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:26px 20px calc(30px + env(safe-area-inset-bottom,0px))}.fs-body>*{max-width:560px;margin-left:auto;margin-right:auto}.fs-eyebrow{margin:0 0 10px;font-size:.72rem;font-weight:700;letter-spacing:.14em;color:var(--fs-accent)}.fs-title{margin:0 0 22px;font-size:clamp(1.24rem,5.6vw,1.6rem);font-weight:800;letter-spacing:-.035em;line-height:1.32;word-break:keep-all}.fs-rows{display:flex;flex-direction:column;border-bottom:1px solid var(--fs-line)}.fs-row{border-top:1px solid var(--fs-line);padding:22px 0 20px;opacity:0;transform:translateY(14px);animation:fsRowIn .62s cubic-bezier(.22,1,.36,1) var(--fs-delay, 0ms) both}@keyframes fsRowIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.fs-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px;font-size:clamp(3rem,15vw,4.5rem);font-weight:700;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}.fs-unit{font-size:.42em;font-weight:700;letter-spacing:-.02em}.fs-people{display:flex;flex-wrap:wrap;align-items:center;gap:3px;margin-left:12px;align-self:center}.fs-person{color:var(--fs-ink);opacity:.78}.fs-people-more{margin-left:2px;font-size:.8rem;font-weight:800;letter-spacing:-.02em}.fs-label{margin:0 0 10px;font-size:1.06rem;font-weight:800;letter-spacing:-.02em;color:var(--fs-ink)}.fs-sub{margin:12px 0 0;font-size:.74rem;font-weight:500;line-height:1.5;color:var(--fs-dim);word-break:keep-all}.fs-subtitle{margin:34px 0 14px;font-size:.98rem;font-weight:800;letter-spacing:-.03em}.fs-rank{margin-top:34px}.fs-rank-tabs{display:flex;gap:4px;margin:0 0 4px;border-bottom:1px solid rgba(63,46,4,.16)}.fs-rank-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:8px 14px;margin-bottom:-1px;border-bottom:2px solid transparent;font:inherit;font-size:.84rem;font-weight:700;letter-spacing:-.02em;color:var(--fs-dim);cursor:pointer;transition:color .18s ease,border-color .18s ease}.fs-rank-tab:hover{color:var(--fs-accent)}.fs-rank-tab.is-on{color:var(--fs-ink);border-bottom-color:var(--fs-ink)}.fs-rank-list{list-style:none;border-bottom:1px solid rgba(63,46,4,.16)}.fs-rank-empty{margin:0;padding:20px 0;border-top:1px solid rgba(63,46,4,.16);border-bottom:1px solid rgba(63,46,4,.16);font-size:.8rem;color:var(--fs-dim)}.fs-rank-item{display:flex;align-items:baseline;gap:12px;padding:12px 0;border-top:1px solid rgba(63,46,4,.16);font-size:.84rem}.fs-rank-num{flex-shrink:0;width:1.4em;font-size:.9rem;font-weight:800;letter-spacing:-.02em;color:var(--fs-accent)}.fs-rank-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.fs-rank-amount{flex-shrink:0;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.fs-rank-note{margin:12px 0 0;font-size:.72rem;line-height:1.55;color:var(--fs-dim);word-break:keep-all}.fs-empty{margin:18px 0 0;font-size:.78rem;line-height:1.6;color:var(--fs-dim);word-break:keep-all}.fs-updated{margin:26px 0 0;font-size:.7rem;color:#3f2e0485}.fs-inline-cta{margin-top:34px}.fs-cta{width:100%;display:flex;align-items:center;justify-content:center;padding:14px 18px;border:none;border-radius:12px;background:#fcebbb;color:#5c4409;font:inherit;cursor:pointer;transition:opacity .18s ease,transform .14s ease}.fs-cta-inner{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:800;letter-spacing:-.02em}.fs-cta.is-launching .fs-cta-inner{visibility:hidden}.fs-cta:hover{opacity:.86}.fs-cta:active{transform:scale(.99)}@media(max-width:380px){.fs-body{padding:22px 16px calc(26px + env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){.fs-screen,.fs-row{animation:none;opacity:1;transform:none}}:root{color-scheme:light;--bg-main: #090d16;--bg-card: rgba(15, 23, 42, .85);--bg-card-hover: rgba(30, 41, 59, .9);--bg-glass: rgba(15, 23, 42, .75);--border-glass: rgba(255, 255, 255, .1);--border-active: rgba(234, 179, 8, .5);--primary: #eab308;--primary-hover: #ca8a04;--primary-glow: rgba(234, 179, 8, .35);--secondary: #10b981;--secondary-hover: #059669;--accent: #f97316;--blue-buffer: #38bdf8;--text-main: #f8fafc;--text-muted: #94a3b8;--text-sub: #cbd5e1;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-full: 9999px;--shadow-main: 0 10px 30px -5px rgba(0, 0, 0, .6), 0 0 20px rgba(0, 0, 0, .4);--shadow-glow: 0 0 25px rgba(234, 179, 8, .3);--app-h: 100vh}@supports (height: 100svh){:root{--app-h: 100svh}}*{margin:0;padding:0;box-sizing:border-box;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}html{height:100%;overflow:hidden}body{background-color:#fff;color:var(--text-main);position:fixed;top:0;left:0;width:100%;height:var(--app-h);overflow:hidden;overscroll-behavior:none}#root{width:100%;height:100%;position:relative;display:flex;flex-direction:column}.glass-panel{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);box-shadow:var(--shadow-main)}.map-area{position:relative;flex:1;min-height:0;overflow:hidden}.map-overlay{--overlay-pad-x: 18px;--overlay-pad-y: 14px;position:absolute;top:0;left:0;right:0;max-height:100%;z-index:900;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:var(--overlay-pad-y) var(--overlay-pad-x) 0;pointer-events:none}.map-overlay>*{pointer-events:auto}.center-title{position:relative;display:inline-block}.center-title-icon{position:absolute;right:calc(100% + 9px);top:50%;transform:translateY(-50%)}.map-statusbar{position:absolute;top:var(--overlay-pad-y);right:var(--overlay-pad-x);z-index:1;display:flex}.map-stats{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.stat-chip{display:flex;align-items:center;gap:8px;background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-glass);box-shadow:var(--shadow-main);color:var(--text-main);padding:6px 14px;border-radius:var(--radius-full);font-size:.82rem;font-weight:500;white-space:nowrap}.stat-chip svg{flex-shrink:0}.stat-chip .chip-val{font-weight:700;color:var(--primary)}.btn-header-action{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;white-space:nowrap;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-header-action.primary{background:linear-gradient(135deg,#eab308,#ca8a04);color:#000;box-shadow:0 4px 14px #eab3084d}.btn-header-action.primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #eab30873}.btn-header-action.secondary{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-main);border:1px solid var(--border-glass);box-shadow:var(--shadow-main)}.btn-header-action.secondary:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.map-wrapper{width:100%;height:100%;position:absolute;top:0;left:0;background-color:#030712}.leaflet-container{width:100%;height:100%;background:#030712!important}.toolbar-container{align-self:flex-start;max-width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.demand-legend{display:flex;align-items:center;gap:7px;padding:5px 10px;border-radius:var(--radius-sm);background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-glass);box-shadow:var(--shadow-main);font-size:.67rem;color:var(--text-muted);white-space:nowrap}.demand-legend .legend-title{font-weight:700;color:var(--text-sub)}.demand-legend .legend-bar{width:64px;height:7px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.15);background:linear-gradient(90deg,#eab308,#e36d17,#dc2626)}.mode-selector{display:flex;background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-glass);padding:4px;border-radius:var(--radius-md);box-shadow:var(--shadow-main);gap:4px}.mode-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:600;color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease}.mode-btn.active{background:#eab3082e;color:var(--primary);border:1px solid var(--border-active)}.mode-btn:hover:not(.active){color:var(--text-main);background:#ffffff0d}.multi-action-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 16px;border-radius:var(--radius-md);animation:slideDown .25s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.multi-action-bar .count-badge{font-weight:700;color:var(--primary);background:#eab30826;padding:3px 10px;border-radius:6px;font-size:.82rem}.custom-tree-marker{display:flex;align-items:center;justify-content:center;cursor:pointer}.marker-inner{width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fef08a,#eab308 70%,#ca8a04);border:2px solid #ffffff;box-shadow:0 0 12px #eab308cc,0 2px 6px #00000080;position:relative;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.custom-tree-marker:hover .marker-inner{transform:scale(1.4)}.marker-pulse{position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border-radius:50%;border:1.5px solid #eab308;opacity:.6;animation:markerPulse 2s infinite ease-out;pointer-events:none}@keyframes markerPulse{0%{transform:scale(.9);opacity:.8}to{transform:scale(1.9);opacity:0}}.custom-tree-marker.selected .marker-inner{background:#38bdf8;border-color:#fff;box-shadow:0 0 16px #38bdf8}.custom-tree-marker.selected .marker-pulse{border-color:#38bdf8}.leaflet-popup-pane,.leaflet-popup{z-index:1005!important}.leaflet-popup-content-wrapper{background:#fff!important;color:#1e293b!important;border-radius:16px!important;box-shadow:0 12px 36px -4px #00000040,0 6px 16px -2px #00000026!important;padding:0!important;border:1px solid rgba(0,0,0,.08)!important;overflow:visible!important}.leaflet-popup-content{margin:0!important;line-height:1.4!important;width:auto!important}.leaflet-popup-tip{background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:none!important}.leaflet-popup-close-button{display:none!important}.tree-info-popup{width:268px;max-width:calc(100vw - 36px);max-height:calc(100vh - 120px);max-height:calc(var(--app-h) - 120px);overflow-y:auto;padding:16px 18px 18px;display:flex;flex-direction:column;box-sizing:border-box}.tree-info-popup::-webkit-scrollbar{width:5px}.tree-info-popup::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.popup-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:2px}.popup-header h3{font-size:13.5px;font-weight:600;color:#475569;margin:0;line-height:1.35;letter-spacing:-.01em}.popup-count{display:flex;align-items:baseline;gap:3px;margin-bottom:10px}.popup-count-num{font-size:30px;font-weight:800;line-height:1.1;color:#ca8a04;letter-spacing:-.02em}.popup-count-unit{font-size:15px;font-weight:700;color:#94a3b8}.popup-close-btn{background:none;border:none;cursor:pointer;color:#94a3b8;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.popup-close-btn:hover{background:#f1f5f9;color:#475569}.popup-body{display:flex;flex-direction:column}.popup-graph-container{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;min-height:40px;max-height:76px;overflow-y:auto}.popup-graph-container::-webkit-scrollbar{width:4px}.popup-graph-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.no-requests-text{font-size:11.5px;color:#94a3b8;width:100%;text-align:center;align-self:center;line-height:1.4}.more-requests-text{font-size:12px;color:#64748b;font-weight:700;align-self:flex-end}.popup-sub-action-btn{width:100%;padding:11px 12px;border:none;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-top:12px;transition:all .15s ease}.popup-sub-action-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.multi-select-popup{padding:10px;background:#fff;border-radius:12px}.multi-popup-action-btn{border:none;border-radius:6px;padding:8px 14px;font-weight:700;font-size:12px;cursor:pointer;transition:all .15s ease;display:flex;justify-content:center;align-items:center;white-space:nowrap}.multi-popup-action-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}@media(max-width:900px){.map-overlay{--overlay-pad-x: 14px;--overlay-pad-y: 12px;gap:6px}.map-stats{gap:5px}.stat-chip{padding:5px 11px;font-size:.76rem;gap:6px}.btn-header-action{padding:7px 13px;font-size:.8rem}}@media(max-width:640px){.map-overlay{--overlay-pad-x: 10px;--overlay-pad-y: 10px}.map-stats{gap:4px}.stat-chip{padding:5px 10px;font-size:.72rem;gap:5px}.btn-header-action{padding:7px 11px;font-size:.75rem}.mode-btn{padding:7px 11px;font-size:.76rem}.multi-action-bar{padding:8px 12px;gap:8px}}@media(max-width:360px){.stat-chip{padding:4px 9px;font-size:.68rem}}
