*{box-sizing:border-box}html,body,#app{color:#f6f2df;width:100%;height:100%;margin:0;font-family:Songti SC,Noto Serif SC,serif;overflow:hidden}canvas{touch-action:none;width:100%;height:100%;display:block}.top{pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:24px;left:24px;right:24px}.pill,.bottom{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:inherit;background:#283a30a8;border:1px solid #f9f5df66;border-radius:40px}.pill{pointer-events:auto;letter-spacing:.1em;padding:13px 20px}.pill span{opacity:.65;margin-left:12px;font-size:12px}button{cursor:pointer;font:inherit}.hint{text-shadow:0 2px 7px #000;white-space:nowrap;opacity:.8;font-size:13px;position:absolute;top:90px;left:50%;transform:translate(-50%)}.bottom{gap:3px;padding:7px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.bottom button{color:inherit;background:0 0;border:0;border-radius:50%;width:68px;height:60px;font-size:24px}.bottom button:hover,.bottom button.active{background:#fff3}.bottom small{margin-top:2px;font-size:12px;display:block}#panel{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#10180e55;place-items:center;display:grid;position:absolute;inset:0}#panel[hidden]{display:none}.panel-inner{text-align:center;width:300px;padding:35px;position:relative}.panel-inner h2{letter-spacing:.3em;font-size:20px;font-weight:400}.panel-inner p{color:#eee6cc;font-size:13px}.panel-inner button{color:inherit}#close{background:0 0;border:0;font-size:30px;position:absolute;top:0;right:0}#object{text-shadow:0 6px 20px #0008;cursor:pointer;font-size:90px}.practice,.sub{background:#27392c99;border:1px solid #eee8;border-radius:30px;padding:10px 22px}.sub{background:0 0;margin-left:6px}#toast{opacity:0;white-space:nowrap;background:#243529aa;border-radius:20px;padding:8px 16px;transition:opacity .3s;position:absolute;top:120px;left:50%;transform:translate(-50%)}#toast.show{opacity:1}@media (width<=600px){.top{top:15px;left:15px;right:15px}.pill{padding:10px 13px;font-size:12px}.bottom{bottom:18px}.bottom button{width:62px}.hint{font-size:11px;top:75px}}.extras{flex-direction:column;gap:10px;display:flex;position:absolute;top:90px;right:24px}.extras button,#room-close,#room-list button{color:#f6f2df;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2b4032c4;border:1px solid #dfdfc755;border-radius:25px;padding:11px 18px}#room-panel{z-index:5;color:#344439;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#e9e8dfee;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#room-panel[hidden]{display:none}#room-panel h2{letter-spacing:.2em;font-weight:400}#room-panel p{font-size:13px}#room-list{grid-template-columns:repeat(2,1fr);gap:15px;max-width:400px;margin:25px;display:grid}#object{touch-action:manipulation;width:240px;height:200px;display:block}.breathing{letter-spacing:.3em;font-size:24px;animation:12s infinite breathe;top:30%}@keyframes breathe{0%,to{opacity:.5;transform:translate(-50%)scale(.9)}40%{opacity:1;transform:translate(-50%)scale(1.15)}}button:focus-visible{outline-offset:3px;outline:2px solid #e8d49a}@media (width<=600px){.extras{top:90px;right:12px}.extras button{padding:9px 12px;font-size:12px}.hint{white-space:normal;text-align:center;max-width:75vw}.panel-inner{padding:25px 15px}.pill span{margin-left:5px}}@media (prefers-reduced-motion:reduce){.breathing{animation:none}}#settings-panel{z-index:6;color:#344439;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#e9e8dff2;place-items:center;display:grid;position:absolute;inset:0}#settings-panel[hidden]{display:none}.settings-inner{width:min(360px,88vw)}.settings-inner h2{letter-spacing:.2em;font-weight:400}.settings-inner label{margin:25px 0;display:block}.settings-inner input,.settings-inner select{width:100%;font:inherit;color:#344439;background:#f6f3e8;border:1px solid #71827155;border-radius:8px;margin-top:10px;padding:12px;display:block}.settings-inner p{color:#647264;font-size:12px}.settings-inner button{color:#eee8d2;background:#344c3c;border:0;border-radius:24px;padding:12px 25px}.extras{gap:7px}.extras button{padding:9px 15px;font-size:12px}.settings-inner a{color:#435e42}.settings-inner{max-height:90vh;padding:10px 0;overflow:auto}
