
    :root {
      --bg: #090d16;
      --panel: #0f172a;
      --border: #1e293b;
      --accent: #0284c7;
      --accent-hover: #0369a1;
      --danger: #ef4444;
      --success: #22c55e;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
      -webkit-tap-highlight-color: transparent !important;
      outline: none;
    }

    body {
      background: var(--bg);
      color: #f1f5f9;
      min-height: 100vh;
      display: flex;
      flex-direction: column;
    }

    header {
      background: var(--panel);
      border-bottom: 1px solid var(--border);
      padding: 15px 25px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 10px;
    }

    .avatar { width: 40px; height: 40px; border-radius: 50%; border: 2px solid var(--accent); }
    .app-container { display: flex; flex: 1; flex-direction: row; }
    aside { width: 280px; background: #0c1222; border-right: 1px solid var(--border); padding: 20px; display: flex; flex-direction: column; gap: 15px; }
    main { flex: 1; padding: 25px; overflow-y: auto; max-width: 1400px; margin: 0 auto; width: 100%; }

    .nav-link-radio { background: linear-gradient(135deg, #a855f7, #6366f1); color: white; border: none; padding: 12px; border-radius: 8px; cursor: pointer; font-weight: bold; text-align: center; text-decoration: none; display: block; margin-top: 10px; }

    .tabs { display: flex; gap: 8px; border-bottom: 1px solid var(--border); margin-bottom: 25px; overflow-x: auto; padding-bottom: 5px; }
    .tab-btn { background: none; border: none; color: #94a3b8; padding: 10px 18px; font-weight: bold; cursor: pointer; border-radius: 8px; white-space: nowrap; }
    .tab-btn.active { background: var(--accent); color: white; }
    .tab-content { display: none; }
    .tab-content.active { display: block; }

    .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
    .card { background: var(--panel); border: 1px solid var(--border); padding: 25px; border-radius: 12px; display: flex; flex-direction: column; gap: 15px; }

    label { font-size: 0.85rem; font-weight: 600; color: #94a3b8; text-transform: uppercase; }
    select, input, textarea { background: #060911; border: 1px solid #334155; color: white; padding: 12px; border-radius: 8px; width: 100%; }

    .switch-group { display: flex; align-items: center; justify-content: space-between; background: #060911; padding: 12px; border-radius: 8px; border: 1px solid #1e293b; }
    .switch { position: relative; width: 44px; height: 24px; display: inline-block; }
    .switch input { opacity: 0; width: 0; height: 0; }
    .slider { position: absolute; cursor: pointer; top:0; left:0; right:0; bottom:0; background-color: #334155; transition: .3s; border-radius: 34px; }
    .slider:before { position: absolute; content: ""; height: 16px; width: 16px; left: 4px; bottom: 4px; background-color: white; transition: .3s; border-radius: 50%; }
    input:checked + .slider { background-color: var(--success); }
    input:checked + .slider:before { transform: translateX(20px); }

    button { cursor: pointer; }
    button:active { transform: scale(0.97); }
    button.btn-primary { background: var(--accent); color: white; border: none; padding: 12px; border-radius: 8px; font-weight: bold; }
    button.btn-danger { background: var(--danger); color: white; border: none; padding: 12px; border-radius: 8px; font-weight: bold; }

    .invite-banner { background: #854d0e; color: #fef08a; padding: 12px; border-radius: 8px; display: none; justify-content: space-between; align-items: center; margin-bottom: 15px; }

    .neon-player { background: linear-gradient(145deg, #111827, #0f172a); border: 1px solid #3730a3; border-radius: 16px; padding: 25px; text-align: center; box-shadow: 0 0 20px rgba(99, 102, 241, 0.15); }
    
    .vinyl {
      width: 120px; height: 120px; border-radius: 50%;
      background: radial-gradient(circle, #4f46e5 10%, #1e1b4b 70%);
      margin: 0 auto; display: flex; align-items: center; justify-content: center;
      font-size: 2.5rem; box-shadow: 0 0 15px rgba(99, 102, 241, 0.4);
      transition: transform 0.3s ease;
    }
    .vinyl.playing { animation: spin 8s linear infinite; }
    @keyframes spin { 100% { transform: rotate(360deg); } }

    .player-controls { display: flex; justify-content: center; gap: 12px; margin-top: 15px; }
    .btn-ctrl { background: #1e1b4b; border: 1px solid #4338ca; width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; color: white; }
    .btn-ctrl:hover { background: #312e81; }

    .fade-in { animation: fadeIn 0.3s ease-in-out forwards; }
    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(6px); }
      to { opacity: 1; transform: translateY(0); }
    }

    footer.dash-footer { padding: 15px; text-align: center; border-top: 1px solid var(--border); font-size: 0.8rem; color: #64748b; }
    footer.dash-footer a { color: #38bdf8; text-decoration: none; margin: 0 10px; }

    @media (max-width: 768px) {
      .app-container { flex-direction: column; }
      aside { width: 100% !important; border-right: none !important; border-bottom: 1px solid var(--border); }
      main { padding: 15px; }
    }
  