body,html{color:#fff;background-color:#030508;width:100%;height:100%;margin:0;padding:0;font-family:Inter,sans-serif;overflow:hidden}#room-canvas{z-index:1;width:100vw;height:100vh;display:block;position:absolute;top:0;left:0}#ui-container{pointer-events:none;z-index:10;justify-content:space-between;align-items:flex-end;padding:30px;display:flex;position:absolute;inset:0}.lounge-nav{pointer-events:auto;z-index:100;position:absolute;top:30px;left:30px}.back-link{color:#8ab4f8;letter-spacing:1px;margin-bottom:10px;font-size:.9rem;text-decoration:none;transition:color .2s;display:inline-block}.back-link:hover{color:#fff}.lounge-title{letter-spacing:4px;text-shadow:0 0 20px #8ab4f880;margin:0;font-family:Outfit,sans-serif;font-size:2.5rem;font-weight:700}.lounge-subtitle{color:#a0c0ff;letter-spacing:2px;margin:5px 0 0;font-size:1rem}.inventory-panel,.controls-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;background:#0a0f19d9;border:1px solid #8ab4f84d;border-radius:16px;padding:24px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 10px 40px #0009,inset 0 0 20px #8ab4f81a}.inventory-panel:hover{border-color:#8ab4f899}.inventory-panel{width:260px}.panel-title{color:#8ab4f8;letter-spacing:1px;margin:0 0 8px;font-family:Outfit,sans-serif;font-size:1.4rem}.panel-desc{color:#aaa;margin-bottom:20px;font-size:.85rem}.item-list{flex-direction:column;gap:12px;display:flex}.inv-item{color:#fff;cursor:pointer;text-align:left;background:#141e3299;border:1px solid #8ab4f833;border-radius:10px;align-items:center;padding:14px 16px;font-family:Inter,sans-serif;font-size:.95rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);display:flex;box-shadow:0 4px 6px #0000004d}.inv-item:hover{text-shadow:0 0 8px #ffffff80;background:#8ab4f840;border-color:#8ab4f8cc;transform:translate(8px);box-shadow:0 6px 12px #0006,0 0 10px #8ab4f84d}.inv-item:active{transform:translate(4px)scale(.98)}.controls-panel{flex-direction:column;gap:12px;width:220px;display:flex}.action-btn{color:#fff;cursor:pointer;letter-spacing:.5px;background:linear-gradient(135deg,#2a3b5c 0%,#1e293b 100%);border:1px solid #8ab4f866;border-radius:10px;padding:14px;font-weight:600;transition:all .2s;box-shadow:0 4px 10px #00000080}.action-btn:hover{background:linear-gradient(135deg,#3f588c 0%,#2a3b5c 100%);border-color:#8ab4f8;transform:translateY(-2px);box-shadow:0 6px 15px #000000b3,0 0 15px #8ab4f866}.action-btn:active{transform:translateY(1px)}.action-btn.danger{background:linear-gradient(135deg,#5c2a2a 0%,#3b1e1e 100%);border-color:#f88a8a66}.action-btn.danger:hover{background:linear-gradient(135deg,#8c3f3f 0%,#5c2a2a 100%);border-color:#f88a8a;box-shadow:0 6px 15px #000000b3,0 0 15px #f88a8a66}.tips{color:#8ab4f8;background:#0000004d;border:1px solid #8ab4f826;border-radius:8px;margin-top:15px;padding:12px;font-size:.8rem}.tips p{margin:6px 0;line-height:1.4}#loading-screen{z-index:1000;pointer-events:auto;background:#030508;flex-direction:column;justify-content:center;align-items:center;transition:opacity .8s ease-in-out;display:flex;position:absolute;inset:0}#loading-screen p{color:#8ab4f8;letter-spacing:2px;text-shadow:0 0 10px #8ab4f880;font-family:Outfit,sans-serif;font-size:1.2rem}.spinner{border:3px solid #8ab4f81a;border-top-color:#8ab4f8;border-radius:50%;width:50px;height:50px;margin-bottom:25px;animation:1s cubic-bezier(.68,-.55,.265,1.55) infinite spin;box-shadow:0 0 20px #8ab4f833}@keyframes spin{to{transform:rotate(360deg)}}#crosshair{pointer-events:none;z-index:100;background-color:#fffc;border-radius:50%;width:6px;height:6px;transition:background-color .2s,transform .2s;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 5px #00000080}#crosshair.highlight{background-color:#8ab4f8;transform:translate(-50%,-50%)scale(1.5);box-shadow:0 0 10px #8ab4f8cc}#blocker{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:2000;pointer-events:auto;background-color:#0009;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}#instructions{text-align:center;color:#fff;cursor:pointer;font-family:Outfit,sans-serif}#instructions span{letter-spacing:2px;text-shadow:0 0 20px #8ab4f8cc;margin-bottom:20px;font-size:2.5rem;display:block}#instructions .keys{color:#a0c0ff;background:#8ab4f81a;border:1px solid #8ab4f84d;border-radius:8px;padding:10px 20px;font-family:Inter,sans-serif;font-size:1.1rem}#mode-toggle-container{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;pointer-events:auto;background:#0f172ab3;border:1px solid #8ab4f84d;border-radius:30px;align-items:center;gap:12px;padding:10px 20px;display:flex;position:absolute;top:40px;left:50%;transform:translate(-50%)}#mode-label{color:#fff;text-shadow:0 0 8px #8ab4f880;margin-top:2px;font-size:1.1rem;font-weight:600}.switch{width:50px;height:26px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:#3b3f5c;border-radius:34px;transition:all .3s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:4px;left:4px}input:checked+.slider{background-color:#8ab4f8;box-shadow:0 0 10px #8ab4f8cc}input:focus+.slider{box-shadow:0 0 1px #8ab4f8}input:checked+.slider:before{transform:translate(24px)}body.view-mode #crosshair{opacity:0;pointer-events:none;display:none!important}#virtual-cursor{pointer-events:none;z-index:9999;mix-blend-mode:screen;background:#fff;border-radius:50%;width:14px;height:14px;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px 4px #8ab4f8cc,0 0 25px 8px #8ab4f866}.pseudo-hover{text-shadow:0 0 8px #ffffff80!important;background:#8ab4f840!important;border-color:#8ab4f8cc!important;transform:translate(8px)!important;box-shadow:0 6px 12px #0006,0 0 10px #8ab4f84d!important}.action-btn.pseudo-hover{background:linear-gradient(135deg,#3f588c 0%,#2a3b5c 100%)!important;border-color:#8ab4f8!important;transform:translateY(-2px)!important;box-shadow:0 6px 15px #000000b3,0 0 15px #8ab4f866!important}.action-btn.danger.pseudo-hover{background:linear-gradient(135deg,#8c3f3f 0%,#5c2a2a 100%)!important;border-color:#f88a8a!important;box-shadow:0 6px 15px #000000b3,0 0 15px #f88a8a66!important}.switch .slider.pseudo-hover{box-shadow:0 0 5px #8ab4f8!important}
