:root{--teal:#8fb2af;--teal-deep:#5f8a86;--teal-ink:#35504d;--paper:#fff8ec;--ink:#3c3730;--warm:#c96f4a}html,body{overscroll-behavior:none;height:100%;margin:0;font-family:Hiragino Sans,sans-serif;overflow:hidden}#app canvas{touch-action:none;display:block}#guide,#panel,#npc-dialog,#gallery-card,#car-area-card{background:var(--paper);z-index:10;width:min(420px,100vw - 32px);max-width:420px;color:var(--ink);border:none;border-radius:16px;padding:0 0 18px;animation:.45s cubic-bezier(.22,.9,.3,1.1) both card-in;position:fixed;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 14px 44px #2b2d4266,0 2px 10px #2b2d4240}#guide{text-align:center;top:20%}#panel,#npc-dialog{bottom:24px}#panel{width:min(344px,100vw - 40px);max-width:344px;animation-name:card-in-left;left:20px;right:auto;transform:none}@keyframes card-in-left{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){#panel{width:auto;max-width:none;bottom:12px;left:12px;right:12px}}#gallery-card{z-index:12;text-align:center;bottom:24px}#gallery-card[hidden]{display:none}#car-area-card{z-index:12;bottom:24px}#car-area-card[hidden]{display:none}#gallery-card-image{background:#fff;border-radius:18px;width:240px;max-width:70vw;margin:4px auto 10px;display:block}#guide h2,#panel h3,#npc-dialog h3,#gallery-card h3,#car-area-card h3{background:linear-gradient(135deg, var(--teal), var(--teal-deep));color:#fff;letter-spacing:.06em;margin:0 0 12px;padding:13px 22px;font-size:19px}#guide p,#panel p,#npc-dialog p,#car-area-card p{margin:4px 22px 12px;font-size:14.5px;line-height:1.75}.guide-touch-hint{display:none}.guide-phone-illustration{max-width:100%;height:auto;margin:0 auto 4px;display:block}@media (pointer:coarse){.guide-touch-hint{display:block}.guide-desktop-hint{display:none}}#guide-ok,#panel-close,#npc-dialog-close,#gallery-card-close,#car-area-card-close{background:linear-gradient(135deg, var(--teal), var(--teal-deep));color:#fff;cursor:pointer;border:none;border-radius:999px;margin:2px 22px 0;padding:9px 26px;font-size:15px;font-weight:700;box-shadow:0 4px 16px #5f8a8673}#guide-ok:hover,#panel-close:hover,#npc-dialog-close:hover,#gallery-card-close:hover,#car-area-card-close:hover{filter:brightness(1.07)}#panel .overtime-heading{margin-bottom:2px;font-size:15.5px;font-weight:700}#panel .overtime-footnote{color:#8a8478;font-size:11.5px}#panel .video-coming-soon{color:#8a8478}#panel .video-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}#panel-media{-webkit-overflow-scrolling:touch;max-height:40vh;margin:4px 22px 8px;overflow-y:auto}#panel-media[hidden]{display:none}#panel-media .media-list-title{color:var(--teal-ink);margin:12px 0 6px;font-size:14.5px;font-weight:700}#panel-media .media-list-title:first-child{margin-top:2px}.media-list-button{box-sizing:border-box;border:1.5px solid var(--teal);width:100%;min-height:40px;color:var(--teal-ink);text-align:left;cursor:pointer;background:#fff;border-radius:12px;margin:6px 0;padding:9px 14px;font-size:13.5px;font-weight:600;display:block}.media-list-button:hover{background:#8fb2af24}#avatar-picker{flex-wrap:wrap;justify-content:center;gap:10px;margin:2px 22px 14px;display:flex}.avatar-option{border:2px solid var(--teal);min-width:74px;color:var(--teal-ink);cursor:pointer;background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:5px 8px 6px;font-size:12.5px;font-weight:700;transition:transform .15s,box-shadow .15s;display:flex}.avatar-option-image{object-fit:contain;pointer-events:none;width:auto;height:66px}.avatar-option-label{pointer-events:none}.avatar-option.selected{border-color:var(--teal-deep);background:linear-gradient(135deg,#8fb2af2e,#5f8a862e);transform:scale(1.06);box-shadow:0 4px 14px #5f8a8673}.avatar-picker-fallback .avatar-option{border-radius:999px;flex-direction:row;min-width:0;padding:8px 14px}.avatar-picker-fallback .avatar-option-image{display:none}.avatar-picker-fallback .avatar-option.selected{background:linear-gradient(135deg, var(--teal), var(--teal-deep));color:#fff;transform:none}#view-toggle{z-index:10;background:var(--paper);color:var(--teal-ink);cursor:pointer;border:none;border-radius:999px;padding:9px 16px;font-size:13.5px;font-weight:700;position:fixed;top:70px;right:16px;box-shadow:0 4px 14px #2b2d424d}#view-toggle:hover{filter:brightness(1.04)}#view-toggle[hidden]{display:none}#npc-talk{z-index:10;background:var(--warm);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:13px 24px;font-size:16px;font-weight:700;animation:.25s ease-out both talk-in;position:fixed;bottom:96px;right:20px;box-shadow:0 6px 20px #c96f4a80}#npc-talk[hidden]{display:none}#npc-dialog{z-index:11}@keyframes talk-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}#tour-toggle{z-index:10;background:linear-gradient(135deg, var(--teal), var(--teal-deep));color:#fff;cursor:pointer;letter-spacing:.04em;border:none;border-radius:999px;padding:11px 20px;font-size:15px;font-weight:700;position:fixed;top:16px;right:16px;box-shadow:0 0 22px #8fb2afa6,0 4px 14px #2b2d4259}#tour-toggle:hover{filter:brightness(1.07)}#panel-link,#car-area-card-link{background:var(--warm);color:#fff;border-radius:999px;margin:0 22px 10px;padding:9px 22px;font-size:14.5px;font-weight:700;text-decoration:none;display:inline-block;box-shadow:0 4px 16px #c96f4a73}#panel-link:hover,#car-area-card-link:hover{filter:brightness(1.07)}#panel-link[hidden]{display:none}.qa-section{margin:0 22px 12px}.qa-section[hidden]{display:none}.qa-open{border:2px solid var(--teal);color:var(--teal-ink);cursor:pointer;background:#fff;border-radius:999px;padding:8px 20px;font-size:13.5px;font-weight:700}.qa-open:hover{filter:brightness(1.04)}.qa-open[hidden],.qa-form[hidden]{display:none}.qa-form input[type=text]{box-sizing:border-box;border:1px solid var(--teal);border-radius:10px;width:100%;margin-top:6px;padding:9px 12px;font-size:14px}.qa-note{color:#8a8478;margin:4px 0 8px;font-size:11.5px}.qa-form button[type=submit]{background:linear-gradient(135deg, var(--teal), var(--teal-deep));color:#fff;cursor:pointer;border:none;border-radius:999px;padding:8px 20px;font-size:14px;font-weight:700}.qa-form button[type=submit]:disabled{opacity:.6;cursor:wait}.qa-result[hidden]{display:none}.qa-result #panel-qa-answer,.qa-result #npc-dialog-qa-answer{font-size:14px;line-height:1.7}.qa-links{flex-wrap:wrap;gap:8px;margin:6px 0;display:flex}.qa-link-button{background:var(--warm);color:#fff;border-radius:999px;padding:7px 16px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.qa-link-button:hover{filter:brightness(1.07)}.qa-counter[hidden]{display:none}.qa-counter{color:#8a8478;margin:4px 0 0;font-size:12px}#minimap{z-index:9;cursor:pointer;border-radius:16px;width:140px;height:140px;position:fixed;top:16px;left:16px;box-shadow:0 6px 20px #2b2d4259}#minimap canvas{border-radius:16px;width:100%;height:100%;display:block}#minimap[hidden]{display:none}#minimap.enlarged{z-index:12;width:308px;height:308px;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 60px #2b2d4280}#presence-count{z-index:9;background:var(--paper);color:var(--teal-ink);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:700;animation:.25s ease-out both talk-in;position:fixed;top:164px;left:16px;box-shadow:0 4px 14px #2b2d424d}#presence-count[hidden]{display:none}#wave-button{z-index:10;background:var(--paper);cursor:pointer;border:none;border-radius:999px;width:52px;height:52px;font-size:26px;line-height:1;animation:.25s ease-out both talk-in;position:fixed;bottom:32px;right:20px;box-shadow:0 6px 20px #2b2d4259}#wave-button:hover{filter:brightness(1.05)}#wave-button:active{transform:scale(.92)}#wave-button[hidden]{display:none}@keyframes card-in{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}.fallback{max-width:640px;height:auto;margin:40px auto;padding:0 16px;overflow:auto}body:has(.fallback){overflow:auto}.faq-open-button{border:2px solid var(--teal);min-height:40px;color:var(--teal-ink);cursor:pointer;background:#fff;border-radius:999px;margin:0 22px 12px;padding:10px 20px;font-size:13.5px;font-weight:700}.faq-open-button:hover{filter:brightness(1.04)}.faq-open-button[hidden]{display:none}#faq-browser{background:var(--paper);z-index:20;width:min(460px,100vw - 32px);max-width:460px;max-height:70vh;color:var(--ink);border:none;border-radius:16px;flex-direction:column;animation:.35s cubic-bezier(.22,.9,.3,1.1) both card-in;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 14px 44px #2b2d4266,0 2px 10px #2b2d4240}#faq-browser[hidden]{display:none}#faq-browser h3{background:linear-gradient(135deg, var(--teal), var(--teal-deep));color:#fff;letter-spacing:.06em;margin:0;padding:13px 22px;font-size:18px}#faq-browser-close{color:#fff;cursor:pointer;background:#ffffff40;border:none;border-radius:999px;min-width:40px;min-height:40px;font-size:13px;font-weight:700;position:absolute;top:10px;right:14px}#faq-browser-close:hover{filter:brightness(1.1)}#faq-browser-body{-webkit-overflow-scrolling:touch;padding:4px 22px 18px;overflow-y:auto}.faq-section-title{color:var(--teal-ink);border-bottom:2px solid var(--teal);margin:16px 0 8px;padding-bottom:4px;font-size:14px;font-weight:700}.faq-section-title:first-child{margin-top:8px}.faq-item{border-bottom:1px solid #3c37301f}.faq-question{box-sizing:border-box;text-align:left;width:100%;min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:none;padding:10px 26px 10px 4px;font-size:14px;font-weight:600;position:relative}.faq-question:after{content:"+";color:var(--teal-deep);font-size:18px;font-weight:700;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.faq-question[aria-expanded=true]:after{content:"–"}.faq-answer{color:var(--ink);margin:0 0 12px;padding:0 4px;font-size:13.5px;line-height:1.7}.faq-answer[hidden]{display:none}
