*{margin:0;padding:0;box-sizing:border-box}body{background:#000;font-family:Orbitron,Arial,Helvetica,sans-serif}.controls{position:absolute;top:10px;left:10px;background:#14141ed9;border-radius:14px;box-shadow:0 4px 24px #00000073,0 0 0 2px #222 inset;display:flex;flex-direction:column;border:1.5px solid #2e3a4a;width:580px;max-height:95vh;overflow-x:hidden;overflow-y:auto}.controls-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 12px;border-bottom:1px solid #2e3a4a;margin-bottom:0;width:100%;box-sizing:border-box;flex-shrink:0}.controls-title{color:#eaf6ff!important;font-size:1.2rem;font-weight:600;margin:0;text-shadow:0 1px 4px #000a}.collapse-btn{background:#23243a;border:1.5px solid #0ff;border-radius:6px;color:#0ff;cursor:pointer;font-size:1.2rem;font-weight:700;height:32px;width:32px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 0 8px #0ff44c,0 0 2px #00f inset}.collapse-btn:hover{background:#3a3b5a;border-color:#00f;box-shadow:0 0 12px #0ff,0 0 4px #00f inset;transform:scale(1.05)}.controls-content{padding:0 20px 16px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;overflow-x:hidden;transition:max-height .3s ease,opacity .3s ease;max-height:1000px;opacity:1;box-sizing:border-box}.controls.collapsed .controls-content{max-height:0;opacity:0;padding:0 20px;overflow:hidden}.controls,.controls *{color:#eaf6ff!important;box-sizing:border-box}.controls>*{max-width:100%;overflow-x:hidden}.controls label,.controls h3,.controls span{color:#eaf6ff!important;text-shadow:0 1px 4px #000a}.slider-value{color:#0ff!important;font-weight:700;text-shadow:0 1px 4px #000a;width:4ch;display:inline-block;text-align:right;font-variant-numeric:tabular-nums}button{padding:10px;border-radius:5px;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:#23243a;font-size:1rem;color:#e0e0e0;box-shadow:0 2px 8px #0000002e}button:hover{background-color:#3a3b5a;color:#fff}.controls .scene-controls>div,.controls .lightsaber-controls>div,.lighting-controls>div{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px;min-width:0;width:100%}.controls .scene-controls>div:last-child,.controls .lightsaber-controls>div:last-child{margin-bottom:0}.controls label{margin-left:0;font-size:1rem;font-weight:500;min-width:160px;flex-shrink:0}.controls input[type=range]{margin-left:0}.controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#0ff 60%,#00f);box-shadow:0 0 12px #0ff,0 0 2px #00f inset;border:2px solid #fff;cursor:pointer;transition:background .3s;margin-top:-7px}.controls input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#0ff 60%,#00f);box-shadow:0 0 12px #0ff,0 0 2px #00f inset;border:2px solid #fff;cursor:pointer;transition:background .3s}.controls input[type=range]::-ms-thumb{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#0ff 60%,#00f);box-shadow:0 0 12px #0ff,0 0 2px #00f inset;border:2px solid #fff;cursor:pointer;transition:background .3s;margin-top:0}.controls input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:#222c;box-shadow:0 0 4px #0ff88c,0 0 1px #00f inset}.controls input[type=range]::-ms-fill-lower{background:#0ff}.controls input[type=range]::-ms-fill-upper{background:#00f}.controls input[type=range]:focus{outline:none;box-shadow:0 0 8px #0ff,0 0 2px #00f inset}.lightsaber-controls>.toggle-switch-wrapper{width:auto;min-width:unset;max-width:unset;flex:none;margin-bottom:6px}.lightsaber-controls>div:not(.toggle-switch-wrapper){display:flex;align-items:center;gap:14px;margin-bottom:10px}.lightsaber-controls>div:last-child{margin-bottom:0}.switch-label-text{font-size:1.1rem;font-weight:600;color:#eaf6ff;text-shadow:0 1px 4px #000a;letter-spacing:1px}.controls .lightsaber-controls,.controls .scene-controls,.controls .lighting-controls{margin-bottom:32px}.controls .lighting-controls{margin-bottom:0}.scene-controls h3{margin-bottom:22px}.lighting-controls{display:flex;flex-direction:column;gap:12px}.controls .drag-controls>div{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:10px}.controls .drag-controls>div:last-child{margin-bottom:0}.controls .drag-controls{margin-bottom:32px}.drag-controls h3{margin-bottom:22px}.controls .photo-mode-controls>div{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:10px}.controls .photo-mode-controls>div:last-child{margin-bottom:0}.controls .photo-mode-controls{margin-bottom:32px;position:relative;background:#181c2aeb;border:1px solid #2ee0ff;border-radius:12px;z-index:2;padding:18px 20px}.photo-mode-controls h3{margin-bottom:22px}#photo-take-btn{background:#181c2a;border:1.5px solid #0ff;border-radius:8px;padding:8px 16px;cursor:pointer;display:flex;align-items:center;transition:background .2s,border-color .2s}#photo-take-btn:hover{background:#23243a;border-color:#00f}#photo-take-btn svg{display:block}select{background:#181c2a;color:#0ff;border:1.5px solid #0ff;border-radius:8px;padding:8px 12px;font-size:1rem;font-family:Orbitron,Arial,Helvetica,sans-serif;box-shadow:0 1px 8px #0ff44c,0 0 2px #00f inset;outline:none;transition:border-color .2s,box-shadow .2s;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}select:focus,select:hover{border-color:#00f;box-shadow:0 0 12px #0ff,0 0 4px #00f inset}select option{background:#181c2a;color:#0ff;font-family:Orbitron,Arial,Helvetica,sans-serif}input[type=checkbox]{width:20px;height:20px;accent-color:#0ff;background:#181c2a;border:2px solid #0ff;border-radius:6px;box-shadow:0 0 8px #0ff44c,0 0 2px #00f inset;transition:border-color .2s,box-shadow .2s;cursor:pointer}input[type=checkbox]:focus{outline:2px solid #00f;outline-offset:2px;border-color:#00f;box-shadow:0 0 12px #0ff,0 0 4px #00f inset}.slider{width:200px;margin-left:0;background:transparent;accent-color:#0ff;flex-shrink:0}.slider:focus{outline:none;box-shadow:0 0 8px #0ff,0 0 2px #00f inset}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#0ff 60%,#00f);box-shadow:0 0 12px #0ff,0 0 2px #00f inset;border:2px solid #fff;cursor:pointer;transition:background .3s;margin-top:-7px}.slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#0ff 60%,#00f);box-shadow:0 0 12px #0ff,0 0 2px #00f inset;border:2px solid #fff;cursor:pointer;transition:background .3s}.slider::-ms-thumb{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#0ff 60%,#00f);box-shadow:0 0 12px #0ff,0 0 2px #00f inset;border:2px solid #fff;cursor:pointer;transition:background .3s;margin-top:0}.slider::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:#222c;box-shadow:0 0 4px #0ff88c,0 0 1px #00f inset}.slider::-ms-fill-lower{background:#0ff}.slider::-ms-fill-upper{background:#00f}.slider-row{align-items:center;gap:24px;margin-bottom:10px}@media (max-width: 768px){.controls.mobile-ui{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;max-height:100vh;border-radius:0;margin:0;padding:0;background:#14141ed9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;overflow-y:auto;overflow-x:hidden}.controls.mobile-ui .controls-header{position:sticky;top:0;background:#14141ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1001;padding:20px;border-bottom:2px solid #2e3a4a;margin-bottom:0}.controls.mobile-ui .controls-title{font-size:1.5rem;font-weight:700}.controls.mobile-ui .collapse-btn{width:44px;height:44px;font-size:1.5rem;border-radius:6px;background:#23243a;border:2px solid #0ff;box-shadow:0 0 12px #0ff44c,0 0 4px #00f inset}.controls.mobile-ui .controls-content{padding:20px;gap:20px;max-height:none;transition:all .3s ease}.controls.mobile-ui.collapsed .controls-content{display:none}.controls.mobile-ui.collapsed{height:auto;min-height:auto;position:absolute;top:0;left:0;right:0;bottom:auto;width:100vw;background:#14141ed9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:0;box-shadow:none;z-index:1000;margin:0;padding:0}.controls.mobile-ui .scene-controls>div,.controls.mobile-ui .lightsaber-controls>div,.controls.mobile-ui .lighting-controls>div,.controls.mobile-ui .drag-controls>div,.controls.mobile-ui .photo-mode-controls>div{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:24px;padding:16px;background:#181c2a99;border-radius:12px;border:1px solid #2e3a4a}.controls.mobile-ui label{min-width:auto;font-size:1.1rem;font-weight:600;margin-bottom:8px;text-align:left}.controls.mobile-ui .slider{width:100%;height:8px;margin:12px 0}.controls.mobile-ui .slider-value{width:auto;min-width:60px;text-align:center;font-size:1.2rem;padding:8px 12px;background:#00ffff1a;border-radius:8px;border:1px solid #0ff}.controls.mobile-ui h3{font-size:1.3rem;margin-bottom:16px;text-align:center;color:#0ff!important;text-shadow:0 0 10px #0ff}.controls.mobile-ui button{padding:16px 24px;font-size:1.1rem;border-radius:12px;margin:8px 0}.controls.mobile-ui #photo-take-btn{width:auto;min-width:60px;height:60px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:8px auto}.controls.mobile-ui #photo-take-btn svg{width:32px;height:32px}.controls.mobile-ui select,.controls.mobile-ui input[type=color]{padding:12px;font-size:1.1rem;border-radius:8px;margin:8px 0}.controls.mobile-ui .toggle-switch-wrapper{display:flex;justify-content:center;align-items:center;gap:16px;margin:20px 0}.controls.mobile-ui .switch-label-text{font-size:1.4rem;font-weight:700}.controls.mobile-ui .photo-mode-controls{background:#181c2acc;border:2px solid #2ee0ff;padding:20px;border-radius:16px;margin:20px 0}.controls:not(.mobile-ui){display:none}}@media (min-width: 769px){.controls.mobile-ui{display:none}}:root{--blade-color: rgb(0, 135, 255)}:root{--switch-bg: #23242a;--switch-radius: 14px;--switch-shadow-light: #3a3a44;--switch-shadow-dark: #10121a;--switch-shadow-hover: #2e3a4a;--toggle-bg: linear-gradient(145deg, #4a5568 60%, #23243a 100%);--toggle-bg-on: linear-gradient(145deg, #7a8ca0 60%, #23243a 100%);--toggle-radius: 11px;--toggle-shadow-light: #5a6a7a;--toggle-shadow-dark: #23243a;--toggle-shadow-on: #7a8ca0;--led-off: grey;--led-on: radial-gradient(circle, #fff 60%, var(--blade-color) 100%);--led-shadow-off: 0 0 5px 1.2px rgba(0, 0, 0, .5);--led-shadow-on: 0 0 4px 1.5px white, 0 0 8px 3px var(--blade-color), 0 0 14px 6px var(--blade-color), 0 0 20px 10px rgba(0, 255, 255, .18)}.switch-container{position:relative;width:72px;height:28px;background:var(--switch-bg);border-radius:var(--switch-radius);box-shadow:inset -4px -4px 8px var(--switch-shadow-light),inset 4px 4px 8px var(--switch-shadow-dark)}.toggle-checkbox{display:none}.switch{position:absolute;top:50%;left:0;width:100%;height:100%;transform:translateY(-50%);border-radius:var(--switch-radius);overflow:hidden;cursor:pointer}.toggle{position:absolute;width:38px;height:22px;background:var(--toggle-bg);border-radius:var(--toggle-radius);top:3px;left:3px;box-shadow:-2px -2px 4px var(--toggle-shadow-light),2px 2px 4px var(--toggle-shadow-dark);transition:all .3s ease-in-out;display:flex;align-items:center;justify-content:flex-start;padding-left:5px}.led{width:5px;height:5px;background:var(--led-off);border-radius:50%;box-shadow:var(--led-shadow-off);transition:all .3s ease-in-out}.toggle-checkbox:checked+.switch .toggle{left:31px;background:var(--toggle-bg-on);box-shadow:-2px -2px 4px var(--toggle-shadow-light),2px 2px 4px var(--toggle-shadow-on)}.toggle-checkbox:checked+.switch .led{background:var(--led-on);box-shadow:var(--led-shadow-on)}.switch:hover .toggle{box-shadow:-2px -2px 6px var(--toggle-shadow-light),2px 2px 6px var(--switch-shadow-hover)}html,body{scrollbar-width:thin;scrollbar-color:#0ff #23243a}html::-webkit-scrollbar,body::-webkit-scrollbar{width:10px;background:#23243a;border-radius:8px}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#0ff 60%,#00f);border-radius:8px;box-shadow:0 0 8px #0ff,0 0 2px #00f inset;border:2px solid #181c2a}html::-webkit-scrollbar-thumb:hover,body::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#00f 60%,#0ff);box-shadow:0 0 12px #0ff,0 0 4px #00f inset}html::-webkit-scrollbar-corner,body::-webkit-scrollbar-corner{background:#23243a}
