.light-rays-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; overflow: hidden; } .light-rays-container canvas { display: block; width: 100%; height: 100%; } .light-rays-controls { position: fixed; top: 16px; right: 16px; z-index: 9999; font-family: var(--font-mono, monospace); font-size: 12px; color: #fff; } .light-rays-controls-toggle { background: rgba(0, 0, 0, 0.8); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 4px; padding: 8px 12px; color: #fff; cursor: pointer; font-family: inherit; font-size: inherit; width: 100%; text-align: left; } .light-rays-controls-toggle:hover { background: rgba(0, 0, 0, 0.9); border-color: rgba(255, 255, 255, 0.3); } .light-rays-controls-panel { background: rgba(0, 0, 0, 0.85); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 4px; padding: 12px; margin-top: 4px; display: flex; flex-direction: column; gap: 10px; min-width: 240px; max-height: calc(100vh - 100px); overflow-y: auto; backdrop-filter: blur(8px); } .control-group { display: flex; flex-direction: column; gap: 4px; } .control-group label { color: rgba(255, 255, 255, 0.7); font-size: 11px; text-transform: uppercase; letter-spacing: 0.5px; } .control-group.checkbox { flex-direction: row; align-items: center; } .control-group.checkbox label { display: flex; align-items: center; gap: 8px; cursor: pointer; text-transform: none; } .control-group input[type="range"] { -webkit-appearance: none; appearance: none; width: 100%; height: 4px; background: rgba(255, 255, 255, 0.2); border-radius: 2px; outline: none; } .control-group input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 14px; height: 14px; background: #fff; border-radius: 50%; cursor: pointer; transition: transform 0.1s; } .control-group input[type="range"]::-webkit-slider-thumb:hover { transform: scale(1.1); } .control-group input[type="range"]::-moz-range-thumb { width: 14px; height: 14px; background: #fff; border-radius: 50%; cursor: pointer; border: none; } .control-group input[type="color"] { -webkit-appearance: none; appearance: none; width: 100%; height: 32px; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 4px; background: transparent; cursor: pointer; padding: 2px; } .control-group input[type="color"]::-webkit-color-swatch-wrapper { padding: 0; } .control-group input[type="color"]::-webkit-color-swatch { border: none; border-radius: 2px; } .control-group select { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 4px; padding: 6px 8px; color: #fff; font-family: inherit; font-size: inherit; cursor: pointer; outline: none; } .control-group select:hover { border-color: rgba(255, 255, 255, 0.3); } .control-group select option { background: #1a1a1a; color: #fff; } .control-group input[type="checkbox"] { width: 16px; height: 16px; accent-color: #fff; cursor: pointer; } .reset-button { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 4px; padding: 8px 12px; color: rgba(255, 255, 255, 0.7); cursor: pointer; font-family: inherit; font-size: inherit; margin-top: 4px; transition: all 0.15s; } .reset-button:hover { background: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.3); color: #fff; }