:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#234039;background:#e8e7df;font-size:14px}*{box-sizing:border-box}body{margin:0;overflow:hidden}canvas{position:fixed;inset:0;width:100%;height:100%;touch-action:none}button,select,input{font:inherit}button,label.upload{cursor:pointer}button{border:1px solid #d7dfd6;background:#fffdf6;color:#26493e;border-radius:8px;padding:11px 13px;transition:.18s}button:hover{background:#e7eee4}header{position:fixed;left:0;right:0;top:0;height:90px;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#f4f3e7ed,#f4f3e700);pointer-events:none}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:#26493e;font-size:18px;font-weight:750;letter-spacing:2px;pointer-events:auto}.mark{font-size:35px;line-height:1}.brand small{display:block;font-size:8px;letter-spacing:2.2px;margin-top:4px}.topright{display:flex;align-items:center;gap:14px;pointer-events:auto}.live{font-size:10px;letter-spacing:1.5px;background:#faf8eddd;border-radius:30px;padding:10px}.topright button{background:#faf8eddf}#menu{display:none}aside{position:fixed;left:26px;top:106px;width:322px;bottom:100px;max-height:780px;overflow:auto;padding:28px 25px 15px;background:#fcfaf1f5;border:1px solid #fff9;border-radius:16px;box-shadow:0 12px 60px #18392d1a;backdrop-filter:blur(16px);scrollbar-width:thin}.eyebrow{font-size:9px;letter-spacing:1.8px;color:#778778;font-weight:700}h1{font-family:Georgia,serif;font-size:32px;line-height:1.08;font-weight:400;letter-spacing:-.6px;margin:15px 0}p{line-height:1.65}.intro{font-size:12px;color:#768176;margin-bottom:25px}.tabs{display:flex;border-bottom:1px solid #dce1d7;margin-bottom:23px}.tabs button{border:0;border-radius:0;background:none;flex:1;padding:12px 0;color:#829081;font-size:12px}.tabs .active{border-bottom:2px solid #365b45;color:#2f4b39;font-weight:700}.tabs span{background:#e6e9dc;padding:1px 5px;border-radius:4px;font-size:10px}.sectionlabel{font-size:9px;letter-spacing:1.8px;color:#829080;margin-bottom:12px}.roomgrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.room{padding:14px 10px;text-align:left;font-size:21px;background:#f7f6ed}.room b{display:block;font-size:11px;margin:8px 0 4px}.room small{font-size:7px;letter-spacing:1px;color:#869181}.room.active{background:#e7eddf;border-color:#a5b69b}.note{display:flex;gap:12px;margin:24px 0;font-size:11px}.note>span{background:#e9eddf;border-radius:100%;width:30px;height:30px;text-align:center;padding:5px;flex-shrink:0}.note b{font-size:11px}.note p{font-size:10px;color:#879080;margin:5px 0}.secondary{width:100%;background:#eef0e5;font-size:11px}footer{margin-top:26px;padding-top:16px;border-top:1px solid #e2e5d9;font-size:10px;color:#8b9586}footer span{float:right;font-size:7px;letter-spacing:1px}.upload{display:flex;flex-direction:column;text-align:center;border:1px dashed #a5b39c;padding:15px;border-radius:9px;background:#edf0e4;margin-bottom:16px}.upload>span{font-size:25px}.upload b{font-size:12px}.upload small{font-size:9px;color:#7e8975;margin-top:6px}select{width:100%;padding:9px;background:#fffdf5;border:1px solid #d6dece;border-radius:6px;color:#34513e;font-size:12px}.modebar{display:flex;gap:6px;margin:15px 0 5px}.modebar button{flex:1;font-size:11px}.modebar .active{background:#335a47;color:white}.tip,.fine{font-size:10px;color:#819078}.field{display:block;font-size:11px;margin:14px 0}.field output{float:right;color:#84917d}.field input{display:block;width:100%;margin:12px 0;accent-color:#456a4c}.field select{margin-top:7px}.buttonrow{display:flex;gap:7px;margin:15px 0}.buttonrow button{flex:1;font-size:10px}.restore{display:block;text-align:center;font-size:10px;padding:12px;cursor:pointer;text-decoration:underline}.fine{font-size:9px}#location{position:fixed;bottom:30px;left:32px;display:flex;align-items:center;gap:10px;background:#f9f8edeb;padding:13px 19px;border-radius:9px}#location b{font-size:12px}#location small{display:block;font-size:7px;letter-spacing:1px;margin-top:4px;color:#7a8b73}.dot{width:7px;height:7px;border-radius:100%;background:#6e9760}#joystick{position:fixed;bottom:100px;left:38px;width:100px;height:100px;border:1px solid #fff9;background:#f9f8ed55;border-radius:100%;touch-action:none;display:none}#knob{width:40px;height:40px;border-radius:100%;background:#f9f8edb9;position:absolute;left:29px;top:29px;border:1px solid #fff}#hint{position:fixed;bottom:37px;left:50%;transform:translateX(-50%);font-size:10px;background:#faf8ebda;border-radius:30px;padding:12px 20px;white-space:nowrap;color:#6d7b64}#hint span{margin:0 10px}.bottomright{position:fixed;right:28px;bottom:28px;display:flex;gap:8px}.bottomright button{background:#f9f8ede8}#edit{font-size:11px}#crosshair{position:fixed;top:50%;left:50%;color:#fff9;pointer-events:none;font-weight:200}#toast{position:fixed;top:100px;left:55%;transform:translateX(-50%);background:#254b3bea;color:white;padding:12px 22px;border-radius:8px;font-size:12px;opacity:0;pointer-events:none;transition:.3s;max-width:70%}#toast.show{opacity:1}dialog{max-width:470px;border:0;padding:32px;border-radius:16px;background:#fbf9ef;color:#2f4c3a;font-size:12px;box-shadow:0 20px 90px #0003}dialog::backdrop{background:#193a3066;backdrop-filter:blur(5px)}h2{font-family:Georgia,serif;font-size:30px;font-weight:400}#closehelp{float:right;border:0;background:none;font-size:22px;padding:0}.primary{background:#315b43;color:#fff;width:100%}@media(pointer:coarse){#joystick{display:block}#hint{display:none}}@media(max-width:700px){header{height:74px;padding:17px}.brand{font-size:14px}.brand small{font-size:6px}.mark{font-size:28px}.live{display:none}.topright{gap:7px}#menu{display:block}#help span{display:none}aside{top:80px;bottom:180px;left:12px;width:280px;padding:20px;display:none}aside.open{display:block}h1{font-size:27px}.intro{margin-bottom:15px}#location{left:15px;bottom:22px;padding:10px 13px}.bottomright{right:15px;bottom:22px}#edit{font-size:10px;padding:12px 9px}#joystick{left:25px;bottom:100px;width:95px;height:95px}#toast{left:50%;top:80px;max-width:90%;width:max-content}footer{margin-top:18px}}body.vr header,body.vr aside,body.vr #location,body.vr .bottomright,body.vr #hint,body.vr #joystick{display:none}
