*{margin:0;padding:0;box-sizing:border-box;}
html,body{height:100%;}
body{background:#000;overflow:hidden;}

#settings-btn{position:fixed;top:14px;right:14px;z-index:20;background:rgba(255,255,255,0.1);border:none;color:rgba(255,255,255,0.6);font-size:18px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s;}
#settings-btn:hover{background:rgba(255,255,255,0.22);}
#settings-panel{position:fixed;top:0;right:-320px;width:300px;height:100%;z-index:19;background:rgba(0,0,0,0.88);backdrop-filter:blur(8px);overflow-y:auto;padding:60px 20px 80px;transition:right 0.3s ease;font-family:sans-serif;}
#settings-panel.open{right:0;}
.sp-title{color:rgba(255,255,255,0.6);font-size:12px;letter-spacing:2px;margin-bottom:20px;}
.sp-section{color:rgba(255,255,255,0.25);font-size:10px;letter-spacing:1px;margin:18px 0 10px;border-top:1px solid rgba(255,255,255,0.08);padding-top:14px;}
.sp-row{margin-bottom:12px;}
.sp-label{display:flex;justify-content:space-between;color:rgba(255,255,255,0.45);font-size:11px;margin-bottom:5px;}
.sp-label span{color:rgba(255,255,255,0.85);}
.sp-row input[type=range]{width:100%;accent-color:rgba(255,255,255,0.5);cursor:pointer;height:4px;}
.sp-row select{width:100%;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);color:#fff;padding:5px 8px;border-radius:4px;font-size:12px;cursor:pointer;}
.sp-row select option{background:#1a1a1a;color:#fff;}
#sp-reset{margin-top:20px;width:100%;padding:8px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.2);color:rgba(255,255,255,0.6);font-size:12px;border-radius:4px;cursor:pointer;letter-spacing:1px;}
#sp-reset:hover{background:rgba(255,255,255,0.16);color:#fff;}
