:root{ --bg:#0f1723; --card:#0b1220; --muted:#94a3b8; --accent:#06b6d4; --white:#e6eef6; --panel:#071126; } *{box-sizing:border-box;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;} body{margin:0;background:linear-gradient(180deg,#071024 0%, #071225 100%);color:var(--white);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;} .page, .room-page{width:100%;max-width:980px} .card{background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));padding:22px;border-radius:12px;box-shadow:0 8px 30px rgba(2,6,23,0.6)} h1,h2,h3{margin:0 0 8px 0} .muted{color:var(--muted);font-size:13px} .small{font-size:12px} .form-row{display:flex;gap:8px;margin-top:12px} .form-row input{flex:1;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);background:transparent;color:var(--white)} button{padding:10px 12px;border-radius:8px;border:0;background:var(--accent);color:#042028;cursor:pointer} button.secondary{background:transparent;border:1px solid rgba(255,255,255,0.06);color:var(--white)} .primary{background:var(--accent);color:#022} .secondary{background:transparent;border:1px solid rgba(255,255,255,0.06);color:var(--white)} hr{border:none;height:1px;background:rgba(255,255,255,0.03);margin:16px 0;border-radius:2px} .room-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px} .main-grid{display:grid;grid-template-columns:1fr 360px;gap:12px} .panel{background:var(--panel);padding:14px;border-radius:10px;min-height:160px} .controls{display:flex;gap:8px;align-items:center;margin-top:8px} .status{margin-top:12px} .playlist-item{padding:10px;border-radius:8px;margin-bottom:8px;background:linear-gradient(90deg, rgba(255,255,255,0.01), rgba(255,255,255,0.0));cursor:pointer} .playlist-item:hover{background:rgba(255,255,255,0.05);} .playlist-item .title{font-weight:600} .footer{margin-top:18px;text-align:center} .progress-bar{background:rgba(255,255,255,0.05);border-radius:6px;height:10px;overflow:hidden} #progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#0ea5a6);width:0%} #notifications-container { position: fixed; top: 20px; right: 20px; z-index: 1000; display: flex; flex-direction: column; gap: 10px; } .notification { background-color: var(--accent); color: var(--card); padding: 12px 18px; border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.2); opacity: 1; transition: opacity 0.5s ease-out; font-weight: 500; }