@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;450;500;550;600;650;700&family=Noto+Serif:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";:root{--ink:#344d40;--muted:#879080;--green:#47644f;--line:#e4e6da;--paper:#fafaf3;--serif:"Noto Serif",Georgia,serif}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:Be Vietnam Pro,sans-serif;font-size:13px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:default;opacity:.55}button:focus-visible{outline-offset:4px;outline:2px solid #b58255}a:focus-visible{outline-offset:4px;outline:2px solid #b58255}[role=button]:focus-visible{outline-offset:4px;outline:2px solid #b58255}a{color:inherit;text-decoration:none}header{border-bottom:1px solid var(--line);background:#fffff8;justify-content:space-between;align-items:center;gap:20px;height:87px;padding:0 34px;display:flex}.brand{font-family:var(--serif);letter-spacing:-1px;align-items:center;gap:12px;font-size:26px;line-height:1.25;display:flex}.brand-mark{border:1px solid #c1c9b2;border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.brand-sub{letter-spacing:1.7px;margin-top:5px;font:8px Be Vietnam Pro,sans-serif;display:block}.top-nav{color:#7a8273;align-items:center;gap:11px;font-size:11px;display:flex}.separator{color:#d2d6c6;margin:0 14px}.live-dot{background:#7a9868;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.header-right{align-items:center;gap:13px;display:flex}.icon-button{border-radius:50%;place-items:center;width:33px;height:33px;display:grid}.icon-button:hover{background:#edf0e3}.header-divider{background:var(--line);width:1px;height:29px;margin:0 8px}.profile-button{text-align:left;align-items:center;gap:10px;font-size:12px;display:flex}.profile-button small{color:var(--muted);margin-top:5px;font-size:9px;font-weight:400;display:block}.avatar-dot{color:#fff5de;width:34px;height:34px;font-family:var(--serif);border-radius:50%;place-items:center;font-size:18px;display:grid}.shell{min-height:calc(100vh - 87px);display:flex}.sidebar{border-right:1px solid var(--line);background:#f7f8ef;flex-direction:column;flex:0 0 225px;width:225px;padding:35px 22px 20px;display:flex}.sidebar-heading{letter-spacing:1.45px;color:#929883;margin-bottom:18px;padding:0 12px;font-size:8px;font-weight:600}.side-nav{gap:7px;display:grid}.side-nav button{text-align:left;color:#7a8270;border-radius:7px;align-items:center;gap:13px;padding:13px 12px;font-size:11px;display:flex}.side-nav button.active{color:#395a43;background:#e7ecdd;font-weight:600}.side-nav button:hover,.places-nav button:hover{background:#edf0e4}.count{background:#dbe3d0;border-radius:4px;margin-left:auto;padding:1px 5px;font-size:9px}.sidebar-line{background:var(--line);height:1px;margin:29px 11px}.places-nav{gap:0;display:grid}.places-nav button{text-align:left;color:#818775;border-radius:6px;align-items:center;gap:12px;padding:11px 13px;font-size:11px;display:flex}.place-dot{border:1px solid #b1baa4;border-radius:50%;width:5px;height:5px}.current .place-dot{background:#76916c;border-color:#76916c}.places-nav button.current{color:#3f634b}.place-count{color:#a2aa97;margin-left:auto;font-size:9px}.seed-card{background:#eef1e2;border:1px solid #dbe1cc;border-radius:8px;margin:32px 2px 24px;padding:19px 16px;position:relative;overflow:hidden}.seed-drawing{color:#cad6b4;font-family:Georgia;font-size:79px;line-height:1;position:absolute;top:28px;right:-10px;transform:rotate(20deg)}.seed-card .eyebrow{letter-spacing:1px;font-size:7px;position:relative}.seed-card h3{font:18px/1.6 var(--serif);color:#556b49;margin:13px 0;position:relative}.seed-card p{color:#8d967e;font-size:9px;line-height:1.8;position:relative}.seed-card button{border-top:1px solid #d9dfcb;align-items:center;gap:6px;width:100%;margin-top:14px;padding:15px 0 0;font-size:9px;display:flex;position:relative}.sidebar-bottom{color:#7e8974;flex-wrap:wrap;align-items:center;gap:7px;margin-top:auto;padding:12px 4px;font-size:9px;display:flex}.sidebar-bottom small{width:100%;font:italic 10px var(--serif);color:#a0a58f;margin-top:7px;padding-left:14px}main{flex:1;min-width:0;max-width:1900px;padding:32px 31px 0}.eyebrow{letter-spacing:1.7px;color:#8a967e;font-size:8px;font-weight:550}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px;display:flex}.page-heading h1{font:400 34px/1.35 var(--serif);letter-spacing:-1px;color:#38543f;margin:11px 0 10px}.page-heading p{color:#949b8a;margin:0;font-size:11px;line-height:1.8}.day-card{border:1px solid var(--line);background:#fffff7;border-radius:8px;flex-shrink:0;align-items:center;gap:11px;padding:13px 16px;font-size:10px;display:flex}.day-card>span{color:#ba9d64;font-size:27px}.day-card small{color:#a0a48d;margin-top:5px;font-size:8px;display:block}.world-layout{grid-template-columns:minmax(0,1fr) 277px;align-items:stretch;gap:20px;display:grid}.world{background:#edf0df;border:1px solid #dce2ce;border-radius:11px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.world-top{letter-spacing:1.3px;z-index:1;justify-content:space-between;align-items:center;padding:18px 20px;font-size:8px;display:flex}.world-top>span:first-child{align-items:center;gap:8px;display:flex}.world-mode{letter-spacing:0;color:#98a18c;font-size:8px}.world-mode span{margin:0 5px}.map-container{background:radial-gradient(#e5e9cf 0%,#edf0df 68%);flex:1;align-items:center;min-height:480px;display:flex;position:relative;overflow:hidden}.village-map{cursor:crosshair;filter:saturate(.85);width:100%;height:100%;min-height:480px;max-height:680px;transition:filter 1s;display:block}.village-map.night{filter:brightness(.69)saturate(.6)hue-rotate(15deg)}.place{cursor:pointer}.place:hover rect{stroke:#7c9169;stroke-width:2px}.place:hover{filter:brightness(1.05)}.villager{transition:transform 1s}.map-note{pointer-events:none;position:absolute;top:12px;left:23px}.map-note span{letter-spacing:1.1px;color:#99a08a;font-size:7px}.map-note p{font:italic 14px var(--serif);color:#879675;margin:7px 0}.map-controls{background:#fafbf0c9;border:1px solid #d5dcc6;border-radius:7px;display:grid;position:absolute;bottom:55px;right:17px;overflow:hidden}.map-controls button{place-items:center;width:32px;height:32px;display:grid}.map-controls button+button{border-top:1px solid #e0e5d3}.map-controls button:hover{background:#e3ead7}.compass{font-family:var(--serif);color:#9ba58a;font-size:11px;position:absolute;top:22px;right:30px}.compass span{font-size:27px;line-height:1;display:block}.map-instruction{color:#9aa18a;align-items:center;gap:3px;font-size:8px;display:flex;position:absolute;bottom:14px;left:21px}.map-instruction>span:last-child{margin-left:7px}.key{border:1px solid #d1d8bd;border-radius:3px;place-items:center;width:16px;height:16px;font:10px serif;display:grid}.world-bottom{background:#f9faeed9;border-top:1px solid #dce2cf;justify-content:space-between;align-items:center;height:60px;padding:0 21px;font-size:11px;display:flex}.world-bottom>span{align-items:center;gap:8px;display:flex}.world-bottom small{color:#a0a68f;border-left:1px solid #d9decd;margin-left:4px;padding-left:12px;font-size:8px}.world-bottom button{align-items:center;gap:9px;font-size:9px;display:flex}.chat-panel{border:1px solid var(--line);background:#fffff8;border-radius:11px;flex-direction:column;height:100%;min-height:600px;max-height:800px;display:flex;overflow:hidden}.chat-heading{align-items:center;gap:12px;padding:21px 18px;display:flex}.room-icon{width:36px;height:36px;font:22px var(--serif);color:#7d8d69;background:#f5f6e9;border:1px solid #e2e5d8;border-radius:50%;place-items:center;display:grid}.chat-heading h2{font:500 16px var(--serif);margin:0 0 6px}.chat-heading p{color:#9b9f8b;margin:0;font-size:8px}.room-presence{color:#8d977f;border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:0 18px 16px;font-size:8px;display:flex}.poll-label{color:#abb19f;margin-left:auto;font-size:7px}.chat-messages{scrollbar-width:thin;scrollbar-color:#d7deca transparent;flex:1;min-height:230px;max-height:550px;padding:20px 17px;overflow-y:auto}.welcome-note{text-align:center;color:#8f9c7b;padding:23px 0 28px}.welcome-note>svg{opacity:.7}.welcome-note p{font:italic 17px/1.6 var(--serif);margin:12px 0}.welcome-note small{color:#a9ae98;font-size:7px}.empty-chat{color:#a5ac98;text-align:center;padding:18px 12px;font-size:10px;line-height:1.9}.message{gap:9px;margin:19px 0;display:flex}.message-avatar{color:#fff7df;width:25px;height:25px;font:12px var(--serif);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.message>div{flex:1;min-width:0}.message-meta{align-items:center;gap:8px;font-size:8px;display:flex}.message-meta b{font-weight:500}.message time{color:#a3ac94;margin-left:auto;font-size:7px}.message p{color:#7f8c73;overflow-wrap:anywhere;white-space:pre-wrap;margin:6px 0;font-size:10px;line-height:1.9}.chat-form{background:#fbfcf5;border:1px solid #e2e6d7;border-radius:6px;align-items:center;margin:12px 13px 0;padding:4px 5px 4px 12px;display:flex}.chat-form input{color:#526849;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:9px 0;font-size:9px}.chat-form input::placeholder{color:#b0b69f}.chat-form button{background:#e8eddd;border-radius:4px;flex-shrink:0;place-items:center;width:29px;height:29px;display:grid}.chat-footnote{text-align:center;color:#b2b7a2;margin:13px 0 18px;font-size:7px}.garden-action{background:#f0f4e5;border-radius:5px;justify-content:center;align-items:center;gap:7px;margin:0 13px;padding:10px;font-size:9px;display:flex}.page-footer{color:#a7ae9a;justify-content:space-between;gap:15px;padding:21px 0 20px;font-size:8px;display:flex}.page-footer>span{letter-spacing:.3px}.page-footer i{color:#c3c9b6;margin:0 7px;font-style:normal}.page-footer button{align-items:center;gap:7px;font-size:8px;display:flex}.content-page{border:1px solid var(--line);background:#fffff8;border-radius:11px;min-height:600px;padding:32px}.content-intro{align-items:center;gap:16px;margin-bottom:25px;display:flex}.section-illustration{font:42px var(--serif);color:#b4bf9e}.content-intro h2{font:22px var(--serif);margin:0 0 10px}.content-intro p{color:#939d85;font-size:11px}.post-form{background:#f5f7ed;border:1px solid #e1e6d5;border-radius:8px;padding:20px}.post-form label{margin-bottom:12px;font-size:12px;display:block}.post-form textarea{resize:vertical;color:#6f7e61;background:0 0;border:0;outline:0;width:100%;min-height:90px;font-size:12px;line-height:1.9}.post-form>div{justify-content:space-between;align-items:center;display:flex}.post-form small{color:#9ca78c;font-size:9px}.primary{color:#fff9e9;background:#4d6b50;border:1px solid #4d6b50;border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:12px 17px;font-size:11px;transition:background .2s;display:inline-flex}.primary:hover{background:#3a583e}.posts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:25px;display:grid}.post-card{background:#faf9ee;border:1px solid #e8e5d4;border-radius:7px;padding:24px}.post-card>p{white-space:pre-wrap;overflow-wrap:anywhere;min-height:70px;font-size:13px;line-height:1.9}.post-card footer{color:#8c977e;border-top:1px solid #e7e5d6;justify-content:space-between;padding-top:15px;font-size:9px;display:flex}.post-card footer b{align-items:center;gap:7px;font-weight:500;display:flex}.post-card footer i{border-radius:50%;width:7px;height:7px}.empty-state{text-align:center;color:#a0ab8d;padding:60px 20px}.empty-state h3{font:20px var(--serif);color:#738466;margin-top:20px}.empty-state p{margin-bottom:20px;font-size:11px;line-height:1.9}.directory-summary{color:#8e997f;align-items:center;gap:27px;margin-bottom:27px;font-size:11px;display:flex}.directory-summary b{font:28px var(--serif);color:#4b694c;margin-right:5px}.directory-summary .primary{margin-left:auto}.people-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.person-card{text-align:center;background:#f6f8ed;border:1px solid #e4e8d9;border-radius:8px;padding:25px}.person-card svg{width:65px;height:74px;margin:auto;display:block}.person-card h3{font:18px var(--serif);overflow-wrap:anywhere;margin:9px 0 8px}.member-status{color:#94a282;font-size:8px}.person-card p{white-space:pre-wrap;overflow-wrap:anywhere;color:#839175;min-height:45px;font-size:11px;line-height:1.9}.person-card small{color:#a4ae97;font-size:8px}.rules{max-width:720px;margin:0 auto;padding:15px}.rules>h2{font:30px/1.5 var(--serif);margin:20px 0 32px}.rules article{border-bottom:1px solid var(--line);gap:25px;margin:25px 0;padding-bottom:24px;display:flex}.rules article>span{font:25px var(--serif);color:#b8c3a5}.rules h3{font:18px var(--serif);margin:0 0 10px}.rules p{color:#8a977b;margin:0;font-size:12px;line-height:1.9}.rules-note{background:#f0f4e6;border-radius:7px;align-items:flex-start;gap:13px;padding:18px;display:flex}.rules-note svg{color:#7b9469;flex-shrink:0}.rules-note p{font-size:10px}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:30;background:#233a2c66;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fffff5;border:1px solid #dce3cc;border-radius:13px;width:510px;max-width:100%;max-height:92vh;padding:36px;position:relative;overflow:auto;box-shadow:0 25px 100px #2133232b}.modal-close{position:absolute;top:15px;right:15px}.modal h2{font:27px/1.5 var(--serif);margin:14px 0 12px}.modal-intro{color:#919e80;margin-bottom:23px;font-size:11px;line-height:1.9}.modal form>label{margin:18px 0 10px;font-size:11px;display:block}.modal label>span{color:#a2ad93;font-size:9px}.avatar-picker{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.avatar-picker button{background:#f5f7ed;border:1px solid #e5e8d8;border-radius:7px;padding:10px 4px}.avatar-picker button.chosen{background:#e9f0dd;border-color:#6c8b60}.avatar-picker svg{width:100%;height:60px}.avatar-picker span{color:#97a286;font-size:8px}.modal input,.modal textarea{color:#627556;background:#f7f8ef;border:1px solid #dde4cf;border-radius:6px;outline:0;width:100%;padding:12px;font-size:11px}.modal input:focus,.modal textarea:focus{border-color:#8da278}.modal textarea{resize:vertical;min-height:75px;line-height:1.8}.privacy-note{color:#9ca78d;margin:15px 0 20px;font-size:9px;line-height:1.9}.full{width:100%}.signout{text-align:center;color:#a3ad94;margin-top:16px;font-size:9px;display:block}.signin-card{text-align:center;background:#f1f5e6;border:1px solid #e0e7d0;border-radius:8px;padding:25px}.signin-card svg{width:80px;height:85px}.signin-card h3{font:21px var(--serif)}.signin-card p{color:#8a9b78;font-size:11px;line-height:1.9}.signin-card>.primary{margin:10px 0 17px}.signin-card small{color:#a3af90;font-size:8px;display:block}.toast{color:#fff8e2;z-index:50;background:#3d5c44;border-radius:8px;align-items:center;gap:20px;max-width:90vw;padding:17px 20px;font-size:11px;line-height:1.7;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #30482d33}.toast button{color:inherit;padding:0}.error-banner{color:#9b744a;background:#f7eee1;border:1px solid #e7d2b7;border-radius:7px;justify-content:space-between;gap:12px;margin-bottom:15px;padding:13px;font-size:11px;display:flex}.error-banner button{text-decoration:underline}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.mobile-close,.mobile-chat-toggle{display:none}.evening .world{background:#d6dece}.evening .map-container{background:radial-gradient(#bdcabb,#d6dece)}.steam{animation:4s infinite steam}.firefly{animation:4s infinite alternate glow}@keyframes steam{0%{opacity:.3;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}@keyframes glow{0%{opacity:.2}to{opacity:1}}@media (min-width:1600px){main{padding:40px 40px 0}.page-heading{margin-bottom:33px}.page-heading h1{font-size:42px}.world-layout{grid-template-columns:minmax(0,1fr) 320px}.map-container,.village-map{min-height:580px}.chat-panel{min-height:700px}.sidebar{flex-basis:245px;width:245px;padding-top:45px}.sidebar-heading{font-size:9px}.side-nav button,.places-nav button{font-size:12px}}@media (max-width:1190px){.sidebar{flex-basis:185px;width:185px;padding:30px 12px 15px}main{padding:28px 20px 0}.world-layout{grid-template-columns:minmax(0,1fr) 245px;gap:14px}.day-card{display:none}.world-top{padding:16px 14px}.world-mode{display:none}.map-container,.village-map{min-height:440px}.chat-panel{min-height:550px}.map-note p{font-size:12px}.map-instruction{font-size:7px}.header-right{gap:7px}.top-nav{gap:8px;font-size:9px}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:950px){header{height:77px;padding:0 22px}.top-nav{display:none}.brand{font-size:24px}.brand-sub{font-size:7px}.sidebar{flex-basis:170px;width:170px}.sidebar-heading{letter-spacing:1px;font-size:7px}.side-nav button{gap:9px;font-size:10px}.places-nav button{font-size:10px}.world-layout{grid-template-columns:minmax(0,1fr)}.chat-panel{display:none}.chat-panel.mobile-open{z-index:25;width:320px;height:70vh;min-height:450px;max-height:700px;display:flex;position:fixed;bottom:75px;right:15px;box-shadow:0 10px 50px #33493144}.mobile-close{margin-left:auto;display:grid}.mobile-chat-toggle{color:#fff9e6;z-index:26;background:#4d6b50;border:1px solid #75856b;border-radius:30px;align-items:center;gap:10px;padding:13px 17px;font-size:11px;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 5px 20px #3d56342b}.map-container,.village-map{min-height:500px}.page-heading h1{font-size:30px}.page-footer>button{display:none}.seed-card{padding:17px 12px}.seed-card h3{font-size:16px}.content-page{padding:24px}.posts-grid{grid-template-columns:1fr}.directory-summary{gap:14px}}@media (max-width:650px){header{gap:10px;height:72px;padding:0 17px}.brand{gap:9px;font-size:23px}.brand-mark{width:34px;height:34px}.brand-sub{letter-spacing:1.1px;font-size:5.7px}.header-right{gap:4px}.header-right>.icon-button{width:28px;height:28px}.header-divider{display:none}.profile-button{gap:6px}.profile-button>.avatar-dot{width:29px;height:29px;font-size:15px}.profile-button>span:nth-child(2),.profile-button>svg{display:none}.shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);background:#f7f8ef;width:auto;padding:8px 11px;display:block;position:relative}.sidebar-heading,.places-nav,.sidebar-line,.seed-card,.sidebar-bottom{display:none}.side-nav{justify-content:space-between;gap:3px;display:flex}.side-nav button{white-space:nowrap;flex:1;justify-content:center;gap:6px;padding:11px 4px;font-size:8px}.side-nav svg{width:15px;height:15px}.side-nav .count{display:none}main{padding:25px 14px 60px}.page-heading{margin-bottom:20px;padding:0 5px}.page-heading .eyebrow{letter-spacing:1.2px;font-size:7px}.page-heading h1{margin:12px 0 9px;font-size:28px}.page-heading p{max-width:290px;font-size:10px;line-height:1.9}.world{border-radius:8px}.world-top{padding:16px;font-size:7px}.world-top .world-mode{font-size:7px;display:block}.map-container{align-items:center;min-height:450px}.village-map{flex:none;width:calc(100% + 175px);max-width:none;min-height:450px;margin:0 -87.5px}.map-note{top:6px;left:16px}.map-note span{font-size:6px}.map-note p{font-size:11px}.map-controls{bottom:53px;right:11px}.map-controls button{width:29px;height:29px}.compass{font-size:9px;top:15px;right:21px}.map-instruction{bottom:12px;left:14px}.world-bottom{height:56px;padding:0 14px;font-size:10px}.world-bottom small{margin-left:0;padding-left:8px;font-size:7px}.world-bottom button{gap:5px;font-size:8px}.page-footer{padding:19px 6px;font-size:7px}.content-page{min-height:500px;padding:22px 17px}.content-intro{gap:11px}.content-intro h2{font-size:19px}.content-intro p{font-size:10px}.post-form{padding:14px}.post-form textarea{font-size:11px}.post-form .primary{padding:10px 12px;font-size:9px}.post-form small{font-size:8px}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.person-card{padding:19px 10px}.person-card h3{font-size:16px}.person-card p{font-size:9px}.person-card small{font-size:7px}.directory-summary{flex-wrap:wrap;gap:14px;font-size:9px}.directory-summary .primary{padding:10px;font-size:8px}.directory-summary b{font-size:23px}.rules{padding:3px}.rules>h2{font-size:23px}.rules article{gap:16px}.rules h3{font-size:16px}.rules p{font-size:11px}.rules article>span{font-size:21px}.rules-note{gap:10px;padding:13px}.rules-note p{font-size:9px}.modal-backdrop{padding:14px}.modal{max-height:90vh;padding:29px 22px}.modal h2{font-size:24px}.modal .eyebrow{letter-spacing:1px;font-size:6px}.avatar-picker{gap:4px}.avatar-picker button{padding:8px 2px}.avatar-picker svg{height:48px}.avatar-picker span{font-size:7px}.modal-intro{font-size:10px}.mobile-chat-toggle{bottom:18px;right:16px}.chat-panel.mobile-open{width:auto;max-height:70vh;bottom:76px;left:12px;right:12px}.toast{width:max-content;padding:13px 15px;font-size:10px;bottom:80px}.empty-state{padding:35px 10px}.empty-state h3{font-size:18px}.empty-state p{font-size:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.scene-container{background:#e8eddc;height:570px;min-height:570px;display:block}.scene-host{position:absolute;inset:0;overflow:hidden}.scene-host>canvas{cursor:crosshair;touch-action:manipulation;width:100%;height:100%;display:block}.scene-labels{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.resident-tag{white-space:nowrap;pointer-events:auto;color:#3c5343;text-overflow:ellipsis;background:#fffdf0eb;border:1px solid #d0dbc0;border-radius:5px;max-width:190px;padding:5px 8px;font-size:11px;font-weight:600;line-height:1.3;position:absolute;top:0;left:0;overflow:hidden;box-shadow:0 2px 7px #31492c18}.resident-tag:hover{background:#fff9da;border-color:#aa9665}.resident-tag.is-me{color:#fff8e4;background:#3f614d;border-color:#3f614d}.resident-tag.is-sample{color:#797454;background:#fff8e9e6;border-style:dashed;font-size:10px;font-weight:450}.scene-place-tag{white-space:nowrap;pointer-events:auto;color:#536c4a;z-index:5;background:#f5f7e5eb;border:1px solid #d7dfc5;border-radius:15px;padding:6px 10px;font-size:10px;position:absolute;top:0;left:0}.scene-place-tag.selected{color:#f8f7df;background:#69805d;border-color:#7d926e}.scene-toolbar{z-index:5;pointer-events:none;justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;top:10px;left:14px;right:14px}.scene-toolbar button{pointer-events:auto}.scene-view-switch{background:#fffdefe8;border:1px solid #dbe2ce;border-radius:7px;padding:3px;display:flex;box-shadow:0 2px 8px #3449280a}.scene-view-switch button{color:#8b977c;border-radius:4px;padding:7px 11px;font-size:10px}.scene-view-switch button.chosen{color:#3d5d42;background:#dfe8cf;font-weight:550}.demo-toggle{color:#7e8c70;background:#fffdf0e8;border:1px solid #dbe2ce;border-radius:7px;align-items:center;gap:6px;padding:10px;font-size:9px;display:flex}.demo-toggle.chosen{color:#766044;background:#e8daba;border-color:#d5c398}.demo-scene-note{z-index:5;color:#8c7c53;pointer-events:none;background:#fffcdfdf;border:1px dashed #d6caa4;border-radius:4px;padding:7px 10px;font-size:8px;position:absolute;top:55px;left:17px}.map-controls,.map-instruction,.compass{z-index:5}.map-instruction{color:#6f805f;background:#f8fae5d9;border-radius:5px;padding:6px 8px}.compass{color:#8a987b;background:#fffdefad;border-radius:18px;padding:5px 7px;font-size:9px;top:73px}.resident-card{z-index:10;background:#fffff5f5;border:1px solid #d2ddc5;border-radius:8px;width:250px;max-width:calc(100% - 70px);padding:20px;position:absolute;bottom:55px;left:17px;box-shadow:0 6px 30px #2d412225}.resident-card h3{font:21px var(--serif);margin:12px 0 10px}.resident-card p{color:#87977a;overflow-wrap:anywhere;white-space:pre-wrap;font-size:11px;line-height:1.8}.resident-card small{color:#a1ab92;font-size:9px}.resident-card-close{color:#99a58b;font-size:24px;position:absolute;top:6px;right:10px}.resident-card .eyebrow{letter-spacing:1px;font-size:7px}.scene-loading{color:#859772;font:italic 20px var(--serif);background:#e8eddc;place-items:center;display:grid;position:absolute;inset:0}.scene-fallback{z-index:8;background:#fffdef;border-radius:5px;padding:8px;font-size:9px;position:absolute;bottom:45px;left:20px}@media (min-width:1600px){.scene-container{height:650px;min-height:650px}.resident-tag{font-size:12px}}@media (max-width:1190px){.scene-container{height:520px;min-height:520px}.scene-toolbar{left:10px;right:10px}.scene-view-switch button{padding:7px 8px;font-size:9px}.demo-toggle{padding:10px 7px;font-size:8px}.demo-toggle svg{width:11px}.demo-scene-note{max-width:85%;font-size:7px;line-height:1.6;left:12px}.resident-tag{max-width:150px;font-size:10px}.resident-tag.is-sample,.scene-place-tag{font-size:9px}}@media (max-width:650px){.scene-container{height:510px;min-height:510px}.scene-toolbar{top:9px;left:9px;right:9px}.scene-view-switch button{padding:8px 7px;font-size:8px}.demo-toggle{gap:4px;padding:10px 7px;font-size:7px}.resident-tag{max-width:140px;padding:4px 6px;font-size:9px}.resident-tag.is-sample{font-size:8px}.scene-place-tag{padding:5px 8px;font-size:8px}.scene-container .compass{top:65px;right:12px}.scene-container .map-instruction{padding:7px;font-size:7px;bottom:9px;left:10px;right:10px}.scene-container .map-instruction>.key{display:none}.scene-container .map-instruction>span:last-child{margin:0}.demo-scene-note{max-width:85%;font-size:6.5px;top:55px;left:12px}.resident-card{width:220px;padding:17px;bottom:51px;left:10px}.resident-card h3{font-size:18px}}.scene-host>svg{cursor:crosshair;touch-action:manipulation;width:100%;height:100%;display:block}.brand{letter-spacing:-.6px;font-size:22px}.brand-sub{letter-spacing:1.2px}@media (max-width:650px){.brand{letter-spacing:-.5px;font-size:18px}.brand-sub{letter-spacing:1px;font-size:5.6px}}.speech-bubble{pointer-events:none;color:#3e5444;overflow-wrap:anywhere;white-space:pre-wrap;text-align:center;filter:drop-shadow(0 1px 1px #21362209);background:#fffef5;border:1px solid #d2dac3;border-radius:12px;width:max-content;min-width:55px;max-width:min(240px,100% - 24px);padding:11px 14px;font-size:12px;font-weight:450;line-height:1.65;position:absolute;top:0;left:0;box-shadow:0 5px 18px #21362229}.speech-bubble[hidden]{display:none}.speech-bubble:after{content:"";bottom:-6px;left:calc(50% + var(--tail-offset,0px));background:inherit;border-bottom:1px solid #d2dac3;border-right:1px solid #d2dac3;width:10px;height:10px;position:absolute;transform:translate(-50%)rotate(45deg)}.speech-bubble.own-speech{color:#35573c;background:#ecf4df;border-color:#afc496}.speech-bubble.own-speech:after{border-color:#afc496}@media (max-width:650px){.speech-bubble{max-width:min(190px,100% - 24px);padding:9px 11px;font-size:10px;line-height:1.6}}.village-global-chat{z-index:9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#496345;background:#fffef1ec;border:1px solid #ced9bc;border-radius:8px;width:302px;max-width:calc(100% - 72px);position:absolute;bottom:51px;left:17px;overflow:hidden;box-shadow:0 4px 20px #30482a16}.global-chat-heading{background:#f0f4e3e8;border-bottom:1px solid #dee6ce;align-items:center;gap:7px;padding:9px 11px;display:flex}.global-chat-heading>svg{color:#789469;flex-shrink:0}.global-chat-heading h2{margin:0;font-size:11px;font-weight:600}.global-chat-scope{color:#9ba58b;margin-left:3px;font-size:8px}.global-chat-heading button{color:#879777;border-radius:3px;place-items:center;width:21px;height:19px;margin-left:auto;display:grid}.global-chat-heading button:hover{background:#dfe9cf}.global-chat-content{flex-direction:column;display:flex}.global-chat-log{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c9d6b8 transparent;height:120px;padding:7px 12px;overflow-y:auto}.global-chat-line{padding:5px 0}.global-chat-line>div{align-items:baseline;gap:8px;display:flex}.global-chat-line b{color:#627b52;overflow-wrap:anywhere;font-size:10px;font-weight:600}.global-chat-line time{color:#a3ae93;flex-shrink:0;margin-left:auto;font-size:7px}.global-chat-line p{color:#6e805f;white-space:pre-wrap;overflow-wrap:anywhere;margin:3px 0 0;font-size:11px;line-height:1.6}.global-chat-empty{color:#98a68b;text-align:center;margin:24px 0;font-size:10px;line-height:1.85}.global-chat-form{background:#fafded;border:1px solid #dce5cb;border-radius:5px;align-items:center;gap:5px;margin:4px 9px 9px;padding:4px 5px 4px 8px;display:flex}.global-chat-form input{color:#59704d;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:5px 0;font-size:10px}.global-chat-form input::placeholder{color:#a5b195}.global-chat-form button{color:#6f895b;background:#e6eed8;border-radius:3px;place-items:center;width:25px;height:25px;display:grid}.global-chat-form:focus-within{border-color:#8da674}.global-chat-error{color:#a56a43;margin:0;padding:3px 12px 6px;font-size:9px;line-height:1.6}.village-global-chat.is-collapsed{width:170px}.village-global-chat.is-collapsed .global-chat-heading{border-bottom:0}.scene-container:has(.village-global-chat) .resident-card{bottom:55px;left:auto;right:61px}@media (max-width:650px){.village-global-chat{width:255px;max-width:calc(100% - 60px);bottom:45px;left:10px}.global-chat-heading{padding:7px 9px}.global-chat-heading h2{font-size:10px}.global-chat-log{height:105px;padding:5px 10px}.global-chat-line b{font-size:9px}.global-chat-line p{font-size:10px}.global-chat-form input{font-size:9px}.global-chat-empty{margin:20px 0;font-size:9px}.village-global-chat.is-collapsed{width:160px}.scene-container:has(.village-global-chat) .resident-card{max-height:180px;inset:76px auto auto 10px;overflow:auto}}
