*{margin:0;padding:0;box-sizing:border-box}body{overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;cursor:default}canvas{display:block;cursor:crosshair}canvas:hover{cursor:crosshair}body.edit-mode canvas{cursor:pointer}body.edit-mode canvas:hover{cursor:pointer}body.placing-spotlight canvas{cursor:crosshair}body.placing-spotlight canvas:hover{cursor:crosshair}#minimap{position:fixed;bottom:20px;right:20px;width:140px;height:140px;background:#000000b3;border:2px solid #fff;z-index:1000;border-radius:8px;transition:all .3s ease}#minimap.zoomed{width:600px;height:600px;bottom:50%;right:50%;transform:translate(50%,50%);z-index:2000;border:3px solid #ffeb9c}#settingsButton{position:fixed;bottom:20px;left:50%;transform:translate(-50%);width:50px;height:50px;background:#000000b3;border:2px solid rgba(255,255,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;cursor:pointer;z-index:2000;transition:all .3s ease}#settingsButton:hover{background:#000000e6;border-color:#fff9;transform:translate(-50%) scale(1.1)}#addButton{position:fixed;bottom:20px;right:20px;width:50px;height:50px;background:#000000b3;border:2px solid rgba(255,255,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;cursor:pointer;z-index:2000;transition:all .3s ease}#addButton:hover{background:#000000e6;border-color:#fff9;transform:scale(1.1)}#addMenu{position:fixed;bottom:90px;right:20px;background:#000000f2;border:2px solid rgba(255,255,255,.3);border-radius:12px;padding:20px;min-width:200px;z-index:2001;display:none;box-shadow:0 4px 20px #00000080}#addMenu.active{display:block}#addMenu .menu-item{padding:12px 20px;color:#fff;cursor:pointer;border-radius:6px;margin:5px 0;transition:background .2s;font-size:14px}#addMenu .menu-item:hover{background:#ffffff1a}#settingsMenu{position:fixed;bottom:90px;left:50%;transform:translate(-50%);background:#000000f2;border:2px solid rgba(255,255,255,.3);border-radius:12px;padding:20px;min-width:200px;z-index:2001;display:none;box-shadow:0 4px 20px #00000080}#settingsMenu.active{display:block}#settingsMenu .menu-item{padding:12px 20px;color:#fff;cursor:pointer;border-radius:6px;margin:5px 0;transition:background .2s;font-size:14px}#settingsMenu .menu-item:hover{background:#ffffff1a}#settingsMenu .menu-item.active{background:#4a90e24d;border-left:3px solid #4a90e2}#editModeUI{position:fixed;top:20px;left:20px;background:#000c;padding:15px;border-radius:8px;color:#fff;z-index:2000;display:none;font-size:14px}#editModeUI.active{display:block}#editModeUI button{margin:5px;padding:8px 15px;background:#4a90e2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}#editModeUI button:hover{background:#357abd}#editModeUI .info{margin:10px 0;padding:10px;background:#ffffff1a;border-radius:4px}#editGUIBar{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(180deg,#141414f2,#000000fa);border-top:2px solid rgba(74,144,226,.6);padding:15px 30px;z-index:2002;display:none;box-shadow:0 -4px 20px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#editGUIBar.active{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}#editGUIBar .gui-section{display:flex;align-items:center;gap:15px;flex:1;min-width:200px}#editGUIBar .gui-label{color:#4a90e2;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:1px;min-width:80px}#editGUIBar .gui-value{color:#fff;font-size:14px;font-family:Monaco,Menlo,Courier New,monospace;background:#ffffff1a;padding:6px 12px;border-radius:4px;border:1px solid rgba(255,255,255,.2)}#editGUIBar .gui-controls{display:flex;gap:10px;flex-wrap:wrap}#editGUIBar .gui-button{background:#4a90e24d;border:1px solid rgba(74,144,226,.5);color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:12px;transition:all .2s}#editGUIBar .gui-button:hover{background:#4a90e280;border-color:#4a90e2cc;transform:translateY(-1px)}#editGUIBar .object-name{font-size:16px;font-weight:600;color:#4a90e2;text-transform:uppercase;letter-spacing:1px}.mobile-controls{position:fixed;bottom:0;left:0;right:0;z-index:1500;pointer-events:none;touch-action:none}.mobile-controls{display:block}@media (hover: hover) and (pointer: fine){.mobile-controls{display:none}}@media (hover: none) and (pointer: coarse){.mobile-controls{display:block!important}}@media (max-width: 768px){.mobile-controls{display:block!important}}.virtual-joystick{position:fixed;bottom:30px;left:30px;width:120px;height:120px;pointer-events:auto;touch-action:none}.joystick-base{width:100%;height:100%;border-radius:50%;background:#0000004d;border:2px solid rgba(255,255,255,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute}.joystick-stick{width:50px;height:50px;border-radius:50%;background:#fffc;border:2px solid rgba(255,255,255,.9);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:transform .1s ease-out;box-shadow:0 2px 10px #0000004d}.joystick-stick.active{background:#fffffff2;box-shadow:0 4px 15px #ffffff80}.mobile-button{position:fixed;width:70px;height:70px;border-radius:50%;background:#0000004d;border:2px solid rgba(255,255,255,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:0 2px 10px #0000004d;transition:all .1s ease}.mobile-button:active{background:#fff6;transform:scale(.95);box-shadow:0 1px 5px #0003}.jump-button{bottom:30px;right:30px}body.edit-mode .mobile-controls{display:none!important}
