dialog{color:#3e493c;background:#faf8ef;border:1px solid #fff9;border-radius:22px;width:min(440px,100% - 28px);max-height:calc(100dvh - 40px);padding:35px;overflow:auto;box-shadow:0 30px 100px #17251b55}dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#24322666}dialog h2{letter-spacing:-1px;margin:17px 0 19px;font:36px/1.12 Georgia,serif}dialog p{color:#8a907f;font-size:12px;line-height:1.8}dialog label{margin:17px 0;font-size:11px;font-weight:600;display:block}dialog input:not([type=checkbox]),dialog select{color:#394936;background:#fffdf6;border:1px solid #daddcc;border-radius:9px;width:100%;margin-top:8px;padding:13px;font-size:15px;display:block}dialog input[type=checkbox]{accent-color:#657e58;width:18px;height:18px}dialog .check-label{align-items:center;gap:9px;display:flex}dialog .modal-close{color:#8a927d;font-size:26px;position:absolute;top:11px;right:15px}.primary{color:#fff9e9;background:#596f50;border-radius:10px;justify-content:space-between;align-items:center;width:100%;margin-top:22px;padding:15px 18px;font-size:12px;display:flex}.primary:hover{background:#425b3b}.secondary{border:1px solid #cfd7c2;border-radius:9px;width:100%;margin-top:10px;padding:12px 17px;font-size:12px}.text-button{color:#879176;text-align:center;width:100%;padding:12px 0;font-size:11px;display:block}dialog small{color:#9a9c8c;text-align:center;font-size:9px;line-height:1.7;display:block}#welcome{text-align:center}#welcome label{text-align:left}.modal-symbol{color:#aaad77;margin-bottom:20px;font-size:54px;line-height:1.4}fieldset{border:0;margin:20px 0;padding:0}legend{margin-bottom:10px;font-size:11px;font-weight:600}.swatches{gap:12px;display:flex}.swatch{border:3px solid #faf8ef;border-radius:50%;outline:1px solid #0000;width:34px;height:34px}.swatch.chosen{outline-color:#6f8060}.account-section{border-top:1px solid #dce0d2;margin-top:25px;padding-top:10px}.form-note{font-size:10px!important}#toast{z-index:100;color:#fffbe9;text-align:center;background:#354b38;border-radius:12px;max-width:90vw;padding:13px 20px;font-size:12px;display:none;position:fixed;bottom:90px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #0002}#toast.visible{display:block}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.person-row{border-bottom:1px solid #e3e6d9;align-items:center;gap:12px;padding:12px 0;font-size:13px;display:flex}.person-row i{border-radius:9px;width:28px;height:28px}:root{color:#303b32;font-synthesis:none;--green:#526a55;--muted:#8a8d81;--border:#deded3;background:#eeeae1;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #c38a51}button:disabled{opacity:.55;cursor:wait}button{background:0 0;border:0}a{color:inherit;text-decoration:none}#app{flex-direction:column;height:100dvh;min-height:420px;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--border);background:#f7f6f0;flex:none;justify-content:space-between;align-items:center;height:80px;padding:0 32px;display:flex}.brand{letter-spacing:-1px;align-items:center;gap:12px;font-size:25px;font-weight:750;display:flex}.brand-mark{background:var(--green);color:#fcf5e2;text-align:center;border-radius:12px;width:37px;height:39px;font-family:Georgia,serif;font-size:39px;line-height:32px}.brand-mark span{color:#e8b271}.brand-note{letter-spacing:.2px;color:#858d7e;border-left:1px solid #d1d5c8;margin-left:10px;padding:8px 0 8px 18px;font-size:11px;font-weight:400}.top-actions{align-items:center;gap:24px;display:flex}.connection{color:#7c8579;font-size:11px}.connection:before,.live-label i{content:"";background:#8b997d;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.connection.offline{color:#ad6749}.profile-pill{background:#e9ece2;border-radius:30px;align-items:center;gap:9px;padding:10px 13px;font-size:12px;font-weight:600;display:flex}#profile-dot{background:#ce9674;border-radius:8px;width:22px;height:22px}main{flex:1;grid-template-columns:260px minmax(0,1fr) 290px;min-height:0;display:grid}.rooms-panel{background:#f5f4ed;flex-direction:column;padding:32px 23px 20px;display:flex;overflow:auto}.eyebrow{letter-spacing:1.7px;color:#90917f;font-size:9px;font-weight:700}h1{letter-spacing:-1.1px;margin:22px 0 14px;font-family:Georgia,serif;font-size:35px;font-weight:400;line-height:1.13}.intro{color:#8a8d80;margin:0 0 38px;font-size:11px;line-height:1.9}.section-label{justify-content:space-between;margin-bottom:13px;font-size:11px;font-weight:700;display:flex}.section-label>span:last-child{color:#929888;font-weight:400}.room-card{text-align:left;border:1px solid #0000;border-radius:13px;width:100%;margin-bottom:9px;padding:13px 11px;transition:background .2s;display:block}.room-card .room-art{background:linear-gradient(140deg,#c3af8d,#96734e);border-radius:8px;height:66px;margin-bottom:10px;position:relative;overflow:hidden}.room-art:before{content:"";background:#687c56;border-radius:8px 8px 4px 4px;width:70px;height:30px;position:absolute;bottom:10px;left:30px;box-shadow:65px 10px 0 -7px #a27952,7px 8px 0 -4px #3c4d35}.room-art:after{content:"";background:#d8d9b1;border:4px solid #786c51;width:37px;height:35px;position:absolute;top:7px;right:20px;box-shadow:inset 13px 0 #9bac97}.room-card.sage .room-art{background:linear-gradient(140deg,#aec0a9,#647c6a)}.room-card.midnight .room-art{background:linear-gradient(140deg,#65738a,#313b53)}.room-card.midnight .room-art:after{background:#e4c48d;box-shadow:inset 13px 0 #777795}.room-card strong{font-size:12px;font-weight:650;display:block}.room-card small{color:#8b927f;margin-top:5px;font-size:10px;display:block}.room-card.selected small{color:#657b56}.create-room{border:1px dashed #c8cebd;border-radius:9px;margin-top:7px;padding:13px;font-size:11px}.sidebar-bottom{align-items:center;gap:10px;margin-top:auto;padding-top:32px;display:flex}.sun-icon{color:#ad9a6d;font-size:26px}.sidebar-bottom p{font-size:9px;line-height:1.8}.sidebar-bottom span{color:#9a9c8e}.world{isolation:isolate;background:#c8c3ad;min-width:0;position:relative;overflow:hidden}#world{touch-action:none;width:100%;height:100%;display:block}.world-top{pointer-events:none;color:#fff9e7;text-shadow:0 1px 18px #263d3877;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:27px;left:26px;right:25px}.world-top button{pointer-events:auto}.live-label{letter-spacing:1.8px;font-size:8px;font-weight:650}.live-label i{background:#d5e9ad;margin-right:5px}.world-top h2{letter-spacing:-.6px;margin:10px 0 7px;font-family:Georgia,serif;font-size:28px;font-weight:400}.world-top p{opacity:.75;margin:0;font-size:10px}.people-pill{color:#fff8e7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff18;border:1px solid #ffffff40;border-radius:20px;padding:9px 13px;font-size:12px}.people-pill>span:first-child{margin-right:6px;font-size:14px}.scene-caption{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#696b50;white-space:nowrap;background:#f8f1dcdd;border:1px solid #fff3;border-radius:25px;align-items:center;gap:8px;padding:8px 13px;font-size:9px;display:flex;position:absolute;top:142px;left:50%;transform:translate(-50%)}.small-star{color:#8c936b;font-size:15px}.world-bottom{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;bottom:24px;left:22px;right:22px}.actions{pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf7ebed;border:1px solid #ffffff70;border-radius:17px;gap:4px;padding:7px;display:flex;box-shadow:0 8px 30px #24251926}.actions button{color:#626953;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:74px;height:57px;font-size:9px;display:flex}.actions span{font-size:20px;line-height:22px}.actions b{font-weight:400}.move-hint{color:#f7f2dd;flex-direction:column;align-items:center;gap:3px;display:flex;position:absolute;bottom:0;left:0}.move-hint span{gap:3px;display:flex}kbd{background:#3b4b3b22;border:1px solid #fff4;border-radius:4px;justify-content:center;align-items:center;width:19px;height:19px;font-size:9px;display:inline-flex}.move-hint small{opacity:.7;margin-top:4px;font-size:8px}.camera-controls{background:#f8f6e7df;border-radius:12px;flex-direction:column;padding:3px;display:flex;position:absolute;bottom:119px;right:18px;box-shadow:0 3px 20px #0001}.camera-controls button{width:33px;height:33px;font-size:18px}.camera-controls #quality{border-top:1px solid #cbd0c1;font-size:9px}#labels{pointer-events:none;position:absolute;inset:0}.avatar-label{text-align:center;white-space:nowrap;font-size:10px;position:absolute;transform:translate(-50%,-100%)}.avatar-label .name-tag{color:#fffbe8;background:#354838b3;border:1px solid #ffffff25;border-radius:6px;padding:4px 8px}.bubble{white-space:normal;overflow-wrap:anywhere;color:#354738;background:#fffdf3;border-radius:12px 12px 12px 3px;width:max-content;max-width:180px;margin-bottom:10px;padding:9px 12px;font-size:11px;display:none;box-shadow:0 3px 15px #0002}.loading{z-index:5;text-align:center;background:#dddccb;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.loading h2{font:28px Georgia}.loading p{color:#87917c;font-size:12px}.loader-orbit{color:#7c9478;font-size:55px;animation:8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading[hidden],.mobile-nav,#joystick{display:none}.chat-panel{background:#faf9f3;border-left:1px solid #dddcd0;flex-direction:column;min-height:0;display:flex}.chat-header{border-bottom:1px solid #e9e8df;justify-content:space-between;align-items:center;padding:28px 22px 21px;display:flex}.chat-header h2{margin:0 0 6px;font-size:14px;font-weight:650}.chat-header p{color:#9a9d8e;margin:0;font-size:10px}.icon-button{color:#8b9383;font-size:24px}#close-chat{display:none}#messages{scrollbar-width:thin;scrollbar-color:#c9cfbe transparent;flex:1;padding:22px 20px;overflow-y:auto}.chat-empty{text-align:center;color:#89917e;padding:55px 0;font:20px/1.5 Georgia,serif}.chat-empty span{color:#9fa38f;margin-top:18px;font:10px/1.8 sans-serif;display:block}.message{overflow-wrap:anywhere;margin-bottom:24px}.message-meta{align-items:center;gap:7px;margin-bottom:7px;font-size:10px;display:flex}.message-meta i{color:#6f805c;text-align:center;background:#e4e7dc;border-radius:8px;width:21px;height:21px;font-style:normal;line-height:21px;display:block}.message-meta strong{text-overflow:ellipsis;max-width:160px;font-weight:650;overflow:hidden}.message-meta time{color:#a4a796;margin-left:auto;font-size:8px}.message p{color:#757d6d;margin:0;padding-left:28px;font-size:12px;line-height:1.6}.message.mine p{color:#40583f}.chat-input-wrap{background:#eeefe7;border:1px solid #dfe2d5;border-radius:12px;gap:5px;padding:6px;display:flex}.chat-input-wrap input{background:0 0;border:0;outline:none;width:100%;min-width:0;padding:8px;font-size:11px}.chat-input-wrap button{color:#fff;background:#667d5e;border-radius:9px;flex:none;width:35px;font-size:21px}#chat-form{border-top:1px solid #e9e8df;padding:15px 16px 20px}#chat-form>small{text-align:center;color:#a4aa96;margin-top:10px;font-size:8px;display:block}@media (width>=1400px){main{grid-template-columns:285px minmax(0,1fr) 310px}.rooms-panel{padding-left:30px;padding-right:30px}}@media (width<=1150px){main{grid-template-columns:210px minmax(0,1fr) 250px}.rooms-panel{padding:25px 17px}.brand-note,.move-hint{display:none}.world-top{left:18px}.world-top h2{font-size:24px}.scene-caption{padding:7px 10px;font-size:8px}.intro{margin-bottom:22px}h1{font-size:30px}}@media (width<=900px){.topbar{height:64px;padding:0 18px}.brand{font-size:22px}.brand-mark{width:31px;height:33px;font-size:34px;line-height:27px}.connection{font-size:9px}.top-actions{gap:10px}main{display:block;position:relative}.world{width:100%;height:100%}.rooms-panel,.chat-panel{z-index:10;width:100%;display:none;position:absolute;inset:0}.rooms-panel.open,.chat-panel.open{display:flex}.rooms-panel{padding:22px 24px}h1{margin:14px 0 10px;font-size:33px}.intro{margin-bottom:20px}#room-list{grid-template-columns:1fr 1fr;gap:10px;display:grid}.room-card{margin:0}.room-card .room-art{height:85px}.sidebar-bottom{padding-top:20px}.mobile-nav{padding:7px 12px calc(7px + env(safe-area-inset-bottom));z-index:12;background:#f7f6ee;border-top:1px solid #dcded2;flex:none;justify-content:space-around;display:flex}.mobile-nav button{color:#909985;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:43px;padding:8px 20px;font-size:19px;display:flex;position:relative}.mobile-nav span{font-size:10px}.mobile-nav .active{color:#496242;background:#e5eadc}#unread{background:#bc785a;border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:9px}.world-top{top:20px;left:20px;right:20px}.world-top h2{font-size:27px}.world-top p{font-size:10px}.scene-caption{font-size:9px;top:120px}.world-bottom{justify-content:flex-end;bottom:22px;left:10px;right:16px}.actions{border-radius:14px;gap:0;padding:5px}.actions button{width:58px;height:52px;font-size:8px}.actions span{font-size:18px}.camera-controls{bottom:103px;right:18px}#joystick{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);touch-action:none;background:#f9f4df2a;border:1px solid #ffffff50;border-radius:50%;width:88px;height:88px;display:block;position:absolute;bottom:23px;left:20px}#joystick span{pointer-events:none;background:#fff9e7c9;border-radius:50%;width:36px;height:36px;position:absolute;top:25px;left:25px;box-shadow:0 3px 12px #0002}.chat-header{padding:20px 24px}#close-chat{display:block}#messages{padding:20px 24px}.message p{font-size:14px}.message-meta{font-size:12px}.chat-input-wrap input{font-size:16px}#chat-form{padding-bottom:16px}.profile-pill{padding:6px 9px}.profile-pill>span:last-child{display:none}#profile-name{text-overflow:ellipsis;white-space:nowrap;max-width:100px;overflow:hidden}.chat-panel{border:0}.topbar{padding-top:env(safe-area-inset-top);height:calc(64px + env(safe-area-inset-top))}}@media (width<=380px){.connection{display:none}.actions button{width:49px}#joystick{width:78px;height:78px;left:12px}#joystick span{top:20px;left:20px}.scene-caption{white-space:normal;text-align:center;width:240px}.world-top h2{font-size:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}:root{color:#eee6d4;--green:#7e9070;--border:#4a4032;--muted:#b5a78f;background:#241f19}#app{min-height:320px}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#24211beb;border-bottom:1px solid #5d4c35;gap:20px;height:58px;padding:0 20px;position:absolute;inset:0 0 auto}.brand{color:#f2e5cd;font-size:23px}.brand-mark{background:#657453}.brand-note{display:none}.header-tools{align-items:center;gap:5px;margin-right:auto;display:flex}.header-tools button{color:#d9cab1;border:1px solid #0000;border-radius:8px;align-items:center;gap:9px;padding:9px 12px;font-size:15px;display:flex}.header-tools button:hover{background:#40372c;border-color:#66543d}.header-tools button span{font-size:12px}.top-actions{gap:15px}.connection{color:#b3ad92}.profile-pill{color:#e7dac0;background:#3a352a}.profile-pill>span:last-child{margin-left:6px}main{width:100%;height:100%;min-height:0;display:block;position:relative}.world{background:#684025;width:100%;height:100%}.world-top{top:75px;left:auto;right:20px}.world-top>div{display:none}.people-pill{color:#eadbc1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2c271bd9;border-color:#8b735144}.scene-caption,.move-hint{display:none}.world-bottom{bottom:22px}.actions{color:#e7dac1;background:#2d281fde;border-color:#69563e;border-radius:13px;padding:4px}.actions button{color:#deceb2;width:73px;height:51px}.actions button:hover{background:#55442e}.actions span{font-size:19px}.camera-controls{color:#e6d6b9;background:#2d281fde;border:1px solid #69563e;bottom:25px;right:20px}.camera-controls #quality{border-top-color:#69563e}.avatar-label .name-tag{color:#e8dfc9;background:#25261cb3}.avatar-label.mine .name-tag{color:#4a4335;background:#f1e4c7}.bubble{color:#3f382c;background:#fff4dc;border:1px solid #615340}.rooms-panel,.chat-panel{z-index:15;color:#e5d9c0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#28231cf5;display:none;position:absolute;top:58px;bottom:0;box-shadow:0 12px 50px #0004}.rooms-panel{border-right:1px solid #574732;width:310px;padding:23px;left:0}.chat-panel{border-left:1px solid #574732;width:320px;right:0}.rooms-panel.open,.chat-panel.open{display:flex}.drawer-heading{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.drawer-heading h1{letter-spacing:0;margin:0;font-family:inherit;font-size:18px;font-weight:600}.drawer-heading button{color:#b7a68a;font-size:26px}.section-label{color:#ac9f85}.room-card{color:#e8dbc3}.room-card:hover{background:#3b3428}.room-card.selected{background:#49402d;border-color:#7e6943}.room-card small,.room-card.selected small{color:#b4a88d}.create-room{color:#d9c9ac;border-color:#6e5c40}.sidebar-bottom{display:none}.chat-header{border-color:#514330;padding:22px}.chat-header p{color:#ae9c80}.chat-header h2{font-size:15px}.chat-empty{color:#b1a082;font-size:20px}.message-meta i{color:#d2bd94;background:#514734}.message-meta strong{color:#e9ddc6}.message-meta time{color:#a99574}.message p,.message.mine p{color:#cbbda5}.chat-input-wrap{background:#352e23;border-color:#665238}.chat-input-wrap input{color:#e7dcc8}.chat-input-wrap input::placeholder{color:#9d8b6e}.chat-input-wrap button{background:#8b7650}.chat-panel #chat-form{border-color:#514330}.chat-panel #chat-form>small{color:#8e7e61}#close-chat{color:#b9a98d;display:block}.loading{color:#e3d4b5;background:#332b21}.loading p{color:#ba8}@media (width>=901px){:is(.world:has(+.chat-panel.open) .world-top,.world:has(+.chat-panel.open) .camera-controls){right:340px}.world:has(+.chat-panel.open) .world-bottom{right:340px}}@media (width<=900px){.topbar{height:calc(54px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0;gap:8px}.brand{gap:7px;font-size:19px}.brand-mark{width:27px;height:29px;font-size:29px;line-height:24px}.header-tools{gap:1px;margin-left:auto;margin-right:0}.header-tools #desktop-rooms,.header-tools #desktop-chat{display:none}.header-tools button{padding:7px;font-size:20px}.top-actions .connection{display:none}.top-actions{gap:0}.profile-pill{padding:6px 8px;font-size:10px}#profile-name{max-width:90px}#profile-dot{width:18px;height:18px}.mobile-nav{padding:5px 10px calc(5px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:20;background:#28231ced;border-color:#665039;position:absolute;bottom:0;left:0;right:0}.mobile-nav button{color:#b9a88a;min-height:38px}.mobile-nav .active{color:#f1dfba;background:#51452e}.world-top{top:calc(68px + env(safe-area-inset-top));left:auto;right:14px}.world-top h2{display:none}.world-bottom{bottom:calc(69px + env(safe-area-inset-bottom));left:110px;right:14px}.actions button{width:55px;height:48px}.camera-controls{bottom:calc(139px + env(safe-area-inset-bottom));right:15px}.camera-controls button{width:31px;height:31px}.rooms-panel,.chat-panel{inset:calc(54px + env(safe-area-inset-top)) 0 calc(49px + env(safe-area-inset-bottom));border:0;width:100%}.rooms-panel{padding:24px}.chat-panel{background:#28231c}#joystick{bottom:calc(69px + env(safe-area-inset-bottom));background:#30271955;border-color:#e3c58c66;left:17px}#joystick span{background:#f2d8aacc}.message p{font-size:14px}#messages{padding:20px}#room-list{grid-template-columns:1fr 1fr}#chat-form{padding-bottom:12px}.chat-input-wrap input{font-size:16px}}@media (width<=360px){.header-tools{display:none}.profile-pill #profile-name{max-width:75px}.top-actions{margin-left:auto}.actions button{width:47px}#joystick{width:74px;height:74px;left:11px}#joystick span{top:18px;left:18px}.world-bottom{left:90px;right:9px}}
