:root,[data-theme=dark]{--harmony-bg-dark:#121212;--harmony-bg-medium:#181818;--harmony-bg-light:#282828;--harmony-text-primary:#fff;--harmony-text-secondary:#b3b3b3;--harmony-text-subtle:#757575;--riffy-accent-purple:#7b56d3;--riffy-accent-purple-hover:#6a48b8;--riffy-modal-accent-purple:#9e78f0;--harmony-border:#353535;--sidebar-riffy-width:240px;--sidebar-bg:#0a0a0a;--header-bg:#0a0a0a;--player-bg:#181818;--player-border:#282828;--modal-bg:var(--harmony-bg-light);--input-bg:var(--harmony-bg-dark);--dropdown-bg:#282828;--harmony-shadow-sm:0 2px 4px #0003;--harmony-shadow-md:0 4px 12px #0000004d;--harmony-shadow-lg:0 10px 35px #0006;--harmony-bg-overlay-light:#ffffff1a;--harmony-bg-overlay-medium:#fff3;--modal-backdrop-bg:#0009}[data-theme=light]{--harmony-bg-dark:#f4f6f8;--harmony-bg-medium:#fff;--harmony-bg-light:#e9ebee;--harmony-text-primary:#1c1e21;--harmony-text-secondary:#606770;--harmony-text-subtle:#8d949e;--harmony-border:#dddfe2;--sidebar-bg:#f0f2f5;--header-bg:#fff;--player-bg:#fff;--player-border:#dddfe2;--modal-bg:#fff;--input-bg:#f0f2f5;--dropdown-bg:#fff;--harmony-shadow-sm:0 1px 2px #00000014;--harmony-shadow-md:0 4px 12px #0000001a;--harmony-shadow-lg:0 10px 35px #0000001a;--harmony-bg-overlay-light:#0000000d;--harmony-bg-overlay-medium:#00000014;--modal-backdrop-bg:#1c1e2180}[data-theme=night-tokyo]{--harmony-bg-dark:#1a1a2e;--harmony-bg-medium:#16213e;--harmony-bg-light:#3f3c64;--harmony-text-primary:#e0f2f1;--harmony-text-secondary:#a8a7d8;--harmony-text-subtle:#6d6d99;--harmony-border:#4a4a7a;--riffy-accent-purple:#f92672;--riffy-accent-purple-hover:#ff4d9a;--riffy-modal-accent-purple:#00e5ff;--sidebar-bg:#0f0f1e;--header-bg:#0f0f1e;--player-bg:#16213e;--player-border:#3f3c64;--modal-bg:#16213e;--input-bg:#3f3c64;--dropdown-bg:#2a2a55;--harmony-shadow-sm:0 2px 4px #0000004d;--harmony-shadow-md:0 6px 18px #f9267226;--harmony-shadow-lg:0 10px 35px #00e5ff33;--harmony-bg-overlay-light:#f926721a;--harmony-bg-overlay-medium:#f9267233;--modal-backdrop-bg:#0d0c1db3}[data-theme=cyberpunk-neon]{--harmony-bg-dark:#0b0c10;--harmony-bg-medium:#1f2833;--harmony-bg-light:#3a4b5d;--harmony-text-primary:#e5e5e5;--harmony-text-secondary:#9b9b9b;--harmony-text-subtle:#666;--harmony-border:#45a29e;--riffy-accent-purple:#ffd300;--riffy-accent-purple-hover:#ffe04d;--riffy-modal-accent-purple:#08d9d6;--sidebar-bg:#0b0c10;--header-bg:#0b0c10;--player-bg:#1f2833;--player-border:#3a4b5d;--modal-bg:#1f2833;--input-bg:#0b0c10;--dropdown-bg:#1a222b;--harmony-shadow-sm:0 2px 4px #0006;--harmony-shadow-md:0 4px 15px #ffd30033;--harmony-shadow-lg:0 8px 30px #08d9d640;--harmony-bg-overlay-light:#ffd3001a;--harmony-bg-overlay-medium:#ffd30033;--modal-backdrop-bg:#0b0c10bf}[data-theme=pastel-soft]{--harmony-bg-dark:#fdf8f5;--harmony-bg-medium:#fff;--harmony-bg-light:#f4eae4;--harmony-text-primary:#5d504a;--harmony-text-secondary:#a1948e;--harmony-text-subtle:#c4b9b4;--harmony-border:#eae0db;--riffy-accent-purple:#94d1be;--riffy-accent-purple-hover:#a8dbc9;--riffy-modal-accent-purple:#ffb399;--sidebar-bg:#faf7f2;--header-bg:#fff;--player-bg:#fff;--player-border:#eae0db;--modal-bg:#fff;--input-bg:#fdf8f5;--dropdown-bg:#fff;--harmony-shadow-sm:0 2px 8px #5d504a12;--harmony-shadow-md:0 6px 16px #5d504a1a;--harmony-shadow-lg:0 12px 28px #5d504a1f;--harmony-bg-overlay-light:#94d1be1a;--harmony-bg-overlay-medium:#94d1be33;--modal-backdrop-bg:#5d504a66}[data-theme=pastel-soft] .riffy-button-primary-purple,[data-theme=pastel-soft] .riffy-header-action-button{color:var(--harmony-text-primary);font-weight:600}[data-theme=pastel-soft] .riffy-header-action-button{color:var(--harmony-text-primary)}[data-theme=pastel-soft] .play-pause-btn-compact{background-color:var(--harmony-text-primary);color:var(--harmony-bg-medium)}[data-theme=pastel-soft] .sidebar-logo-riffy h1{-webkit-text-fill-color:#0000;animation:gradientTextAnimation 10s ease infinite alternate;background:linear-gradient(90deg,#ffb399,#94d1be,#a1948e,#ffb399);-webkit-background-clip:text;background-clip:text;background-size:200% 200%}[data-theme=glassmorphism]{--harmony-text-primary:#f5f5f5;--harmony-text-secondary:#b0b0b0;--harmony-text-subtle:#888;--riffy-accent-purple:#00afff;--riffy-accent-purple-hover:#33cfff;--riffy-modal-accent-purple:#00afff;--glass-bg:#1e1e2d66;--glass-bg-hover:#2d2d4199;--glass-border:1px solid #ffffff26;--glass-blur:12px;--harmony-shadow-sm:0 2px 4px #0003;--harmony-shadow-md:0 4px 12px #0000004d;--harmony-shadow-lg:0 10px 30px #00000059;--modal-backdrop-bg:#0000004d}[data-theme=glassmorphism] body{background:linear-gradient(135deg,#1a0f2e,#024 50%,#079);background-attachment:fixed}[data-theme=glassmorphism] #upload-form-container,[data-theme=glassmorphism] .artist-list-card,[data-theme=glassmorphism] .audio-player-riffy.compact,[data-theme=glassmorphism] .dropdown-menu-riffy,[data-theme=glassmorphism] .header-search-results-dropdown,[data-theme=glassmorphism] .lyrics-modal-content,[data-theme=glassmorphism] .modal-content,[data-theme=glassmorphism] .player-more-menu-riffy,[data-theme=glassmorphism] .playlist-overview-card,[data-theme=glassmorphism] .settings-form-container,[data-theme=glassmorphism] .sidebar-riffy,[data-theme=glassmorphism] .site-header-riffy,[data-theme=glassmorphism] .song-card{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:var(--glass-bg);border:var(--glass-border);box-shadow:var(--harmony-shadow-md)}[data-theme=glassmorphism] .artist-list-card,[data-theme=glassmorphism] .playlist-overview-card,[data-theme=glassmorphism] .song-card{background-color:initial}[data-theme=glassmorphism] #upload-form-container,[data-theme=glassmorphism] .settings-form-container{background-color:#1e1e2d99}[data-theme=glassmorphism] .site-header-riffy,[data-theme=glassmorphism] [data-theme=light] .site-header-riffy{border-width:0 0 1px;box-shadow:none}[data-theme=glassmorphism] .audio-player-riffy.compact{border-width:1px 0 0}[data-theme=glassmorphism] .sidebar-riffy{border-width:0 1px 0 0}[data-theme=glassmorphism] .artist-list-card:hover,[data-theme=glassmorphism] .playlist-overview-card:hover,[data-theme=glassmorphism] .song-card:hover{background:var(--glass-bg-hover);box-shadow:var(--harmony-shadow-lg);transform:translateY(-4px) scale(1.02)}[data-theme=glassmorphism] input,[data-theme=glassmorphism] select,[data-theme=glassmorphism] textarea{background-color:#0003!important;border:1px solid #ffffff1a!important;color:var(--harmony-text-primary)}[data-theme=glassmorphism] input:focus,[data-theme=glassmorphism] select:focus,[data-theme=glassmorphism] textarea:focus{border-color:var(--riffy-accent-purple)!important;box-shadow:0 0 0 2px #00afff4d!important}[data-theme=glassmorphism] .riffy-button-primary-purple,[data-theme=glassmorphism] .riffy-header-action-button{color:#fff;text-shadow:0 0 5px #00000080}[data-theme=glassmorphism] .play-pause-btn-compact{background-color:var(--harmony-text-primary);color:#000}[data-theme=glassmorphism] .sidebar-logo-riffy h1{-webkit-text-fill-color:#0000;animation:gradientTextAnimation 8s ease infinite alternate;background:linear-gradient(90deg,#f5f5f5,#b0b0b0,#00afff,#f5f5f5);-webkit-background-clip:text;background-clip:text;background-size:200% 200%}[data-theme=glitch-tech]{--harmony-bg-dark:#0a0a0a;--harmony-bg-medium:#141414;--harmony-bg-light:#1f1f1f;--harmony-text-primary:#e0e0e0;--harmony-text-secondary:#8f8f8f;--harmony-text-subtle:#555;--riffy-accent-purple:#2dcc70;--riffy-accent-purple-hover:#58d68d;--riffy-modal-accent-purple:#bf00ff;--harmony-border:#2a2a2a;--harmony-shadow-sm:0 0 5px #2dcc7033;--harmony-shadow-md:0 0 15px #2dcc704d;--harmony-shadow-lg:0 0 25px #bf00ff66;--sidebar-bg:#0a0a0a;--header-bg:#0a0a0a;--player-bg:#141414;--player-border:#2a2a2a;--modal-bg:#101010;--input-bg:#0a0a0a;--dropdown-bg:#1f1f1f;--modal-backdrop-bg:#2dcc701a}[data-theme=glitch-tech] .sidebar-logo-riffy h1,[data-theme=glitch-tech] body,[data-theme=glitch-tech] button,[data-theme=glitch-tech] input,[data-theme=glitch-tech] select,[data-theme=glitch-tech] textarea{font-family:Roboto Mono,Source Code Pro,monospace;letter-spacing:.5px;text-transform:uppercase}[data-theme=glitch-tech] *,[data-theme=glitch-tech] :after,[data-theme=glitch-tech] :before{border-radius:0!important}[data-theme=glitch-tech] body:after{background:repeating-linear-gradient(0deg,#2dcc7014,#2dcc7014 1px,#0000 0,#0000 4px);content:"";height:100vh;left:0;opacity:.7;pointer-events:none;position:fixed;top:0;width:100vw;z-index:9999}[data-theme=glitch-tech] #upload-form-container,[data-theme=glitch-tech] .artist-list-card,[data-theme=glitch-tech] .audio-player-riffy.compact,[data-theme=glitch-tech] .modal-content,[data-theme=glitch-tech] .playlist-overview-card,[data-theme=glitch-tech] .settings-form-container,[data-theme=glitch-tech] .site-header-riffy,[data-theme=glitch-tech] .song-card{border:1px solid var(--harmony-border);box-shadow:none}[data-theme=glitch-tech] .song-card:hover{border-color:var(--riffy-accent-purple);box-shadow:var(--harmony-shadow-md)}[data-theme=glitch-tech] .playlist-tab-button.active,[data-theme=glitch-tech] .sidebar-nav-riffy li a.active{background:var(--harmony-bg-light);border-bottom-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}[data-theme=glitch-tech] .riffy-button-primary-purple,[data-theme=glitch-tech] .riffy-header-action-button,[data-theme=glitch-tech] input[type=file]::file-selector-button{background-color:var(--riffy-accent-purple);color:#000;font-weight:700}[data-theme=glitch-tech] .play-pause-btn-compact{background-color:var(--riffy-accent-purple);color:#000}[data-theme=glitch-tech] .sidebar-logo-riffy h1{-webkit-text-fill-color:initial;animation:none;background:none;color:var(--riffy-accent-purple);text-shadow:0 0 8px #2dcc70b3}body{background-color:var(--harmony-bg-dark);color:var(--harmony-text-primary);font-family:Roboto,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;margin:0;overflow-x:hidden;padding:0}.hidden{display:none!important}@keyframes gradientTextAnimation{0%{background-position:0 50%}to{background-position:100% 50%}}@keyframes jiggleAnimation{0%{transform:rotate(-.5deg)}50%{transform:rotate(.5deg)}to{transform:rotate(-.5deg)}}.sidebar-riffy{background-color:var(--sidebar-bg);border-right:1px solid var(--harmony-border);bottom:0;box-sizing:border-box;display:flex;flex-direction:column;left:0;overflow:hidden;padding:20px 15px;position:fixed;top:0;width:var(--sidebar-riffy-width);z-index:1000}.sidebar-logo-riffy{margin-bottom:25px;padding-left:10px}.sidebar-logo-riffy h1{-webkit-text-fill-color:#0000;animation:gradientTextAnimation 8s ease infinite alternate;background:linear-gradient(90deg,#f0f,#c56eff,#9e78f0,#7b56d3);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;display:inline-block;font-size:1.8em;font-weight:700;margin:0}.sidebar-logo-riffy h1 a{color:inherit;text-decoration:none}.sidebar-nav-riffy ul,.sidebar-playlists-list-riffy{list-style:none;margin:0;padding:0}.sidebar-nav-riffy li a,.sidebar-playlists-list-riffy li a{align-items:center;border-radius:4px;color:var(--harmony-text-secondary);display:flex;font-size:.95em;font-weight:500;margin-bottom:5px;padding:10px;text-decoration:none;transition:background-color .2s ease,color .2s ease}.sidebar-nav-riffy li a i{font-size:1.2em;margin-right:12px;text-align:center;width:20px}.sidebar-nav-riffy li a.active,.sidebar-nav-riffy li a:hover,.sidebar-playlists-list-riffy li a:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.sidebar-nav-riffy li a.active{font-weight:700}.sidebar-nav-riffy li a.active i{color:var(--riffy-accent-purple)}.sidebar-playlists-riffy{border-top:1px solid var(--harmony-border);display:flex;flex-direction:column;flex-grow:1;margin-top:30px;min-height:0;padding-bottom:12px;padding-top:15px}.sidebar-playlists-header-riffy{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px;padding:0 10px}.sidebar-playlists-header-riffy h3{color:var(--harmony-text-subtle);font-size:.75em;letter-spacing:.5px;margin:0;text-transform:uppercase}.add-playlist-btn-riffy{background:none;border:none;border-radius:4px;color:var(--harmony-text-secondary);cursor:pointer;font-size:1.3em;line-height:1;padding:5px;transition:color .2s ease,background-color .2s ease}.add-playlist-btn-riffy:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.sidebar-playlists-list-riffy{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-color:var(--harmony-border) #0000;scrollbar-width:thin}.sidebar-playlists-list-riffy::-webkit-scrollbar{width:6px}.sidebar-playlists-list-riffy::-webkit-scrollbar-track{background:#0000}.sidebar-playlists-list-riffy::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:3px}.sidebar-playlists-list-riffy::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}.sidebar-playlists-list-riffy li a{display:block;font-size:.9em;min-width:0;overflow:hidden;padding-left:10px;text-overflow:ellipsis;white-space:nowrap}.sidebar-random-btn-riffy{align-items:center;animation:sidebarNeonPulse 2.4s ease-in-out infinite alternate;background:linear-gradient(135deg,#f0f,#c56eff 50%,#7b56d3);border:none;border-radius:8px;box-shadow:0 0 12px #ff00ff8c,0 0 26px #c56eff66,inset 0 0 10px #ffffff26;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-family:inherit;font-size:.95em;font-weight:700;gap:10px;justify-content:center;margin-bottom:10px;margin-top:auto;padding:12px 10px;transition:box-shadow .25s ease,transform .2s ease,filter .2s ease;width:100%}.sidebar-random-btn-riffy i{font-size:1.1em}.sidebar-random-btn-riffy:hover{box-shadow:0 0 18px #ff00ffd9,0 0 42px #c56eff99,inset 0 0 12px #ffffff38;filter:brightness(1.12);transform:translateY(-1px)}.sidebar-random-btn-riffy:active{transform:translateY(0)}@keyframes sidebarNeonPulse{0%{box-shadow:0 0 8px #f0f6,0 0 20px #c56eff4d,inset 0 0 8px #ffffff1a}to{box-shadow:0 0 16px #f0fc,0 0 40px #c56eff99,inset 0 0 12px #fff3}}.site-header-riffy{background-color:var(--header-bg);box-shadow:var(--harmony-shadow-md);box-sizing:border-box;left:var(--sidebar-riffy-width);padding:10px 24px;position:sticky;top:0;width:calc(100% - var(--sidebar-riffy-width));z-index:999}[data-theme=light] .site-header-riffy{border-bottom:1px solid var(--harmony-border);box-shadow:none}.header-content-riffy{align-items:center;display:flex;justify-content:space-between}.search-container-riffy-header{flex-grow:1;margin-right:20px;max-width:350px;position:relative}.search-container-riffy-header input[type=text]#search-input{background-color:var(--harmony-bg-light);border:1px solid #0000;border-radius:500px;color:var(--harmony-text-primary);font-size:.85em;padding:10px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.search-container-riffy-header input[type=text]#search-input::placeholder{color:var(--harmony-text-subtle)}.search-container-riffy-header input[type=text]#search-input:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d34d;outline:none}.user-auth-actions-riffy{align-items:center;display:flex}.riffy-header-action-button,.user-auth-actions-riffy .riffy-header-action-button{align-items:center;background-color:var(--riffy-accent-purple);border:none;border-radius:100px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9em;font-weight:500;padding:8px 15px;text-decoration:none;transition:background-color .3s ease,transform .1s ease}.header-icon-buttons{align-items:center;display:flex;margin-left:12px}#user-greeting{margin-left:18px}.header-icon-btn{background:none;border:none;color:var(--harmony-text-secondary);cursor:pointer;font-size:1.2em;margin-left:5px;padding:8px;position:relative;transition:color .2s ease}.header-icon-btn:hover{color:var(--harmony-text-primary)}.header-user-avatar{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:50%;height:32px;margin-right:8px;object-fit:cover;vertical-align:middle;width:32px}.clickable-avatar{cursor:pointer}#username-display.clickable-username{color:var(--harmony-text-primary);cursor:pointer;font-size:.9em;transition:font-size .2s ease,color .2s ease}#username-display.clickable-username:hover{color:var(--harmony-text-primary);text-decoration:underline}.main-content-riffy{box-sizing:border-box;margin-left:var(--sidebar-riffy-width);padding:24px 24px 92px;width:calc(100% - var(--sidebar-riffy-width))}.page-header-riffy{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.page-header-riffy h1{align-items:center;color:var(--harmony-text-primary);display:flex;font-size:1.8em;font-weight:700;margin:0}.page-header-icon{color:var(--riffy-accent-purple);font-size:.9em;margin-right:12px}.category-section-riffy{margin-bottom:30px}.category-section-riffy h2{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.5em;font-weight:700;margin-bottom:16px;padding-bottom:8px}.audio-player-riffy.compact{grid-gap:24px;align-items:center;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);background-color:var(--player-bg);border-top:1px solid var(--player-border);bottom:0;box-shadow:0 -10px 34px #00000057;box-sizing:border-box;display:grid;gap:24px;grid-template-columns:minmax(180px,1fr) 2fr minmax(180px,1fr);height:78px;left:var(--sidebar-riffy-width);padding:0 20px;position:fixed;width:calc(100% - var(--sidebar-riffy-width));z-index:1001}.audio-player-riffy.compact.disabled{opacity:.75}.player-section{height:100%}.player-left,.player-section{align-items:center;display:flex}.player-left{cursor:pointer;flex:1 1;gap:14px;min-width:0}.player-cover-compact{background-color:var(--harmony-bg-light);border-radius:8px;box-shadow:0 4px 14px #00000059;flex-shrink:0;height:54px;object-fit:cover;transition:transform .25s ease,box-shadow .25s ease;width:54px}.player-cover-compact:hover{box-shadow:0 6px 20px #00000073;transform:scale(1.06)}.track-info-and-actions-wrapper{align-items:center;display:flex;flex-grow:1;gap:16px;min-width:0}.track-info-compact{display:flex;flex-direction:column;flex-shrink:1;justify-content:center;min-width:0}.artist-name-compact,.title-container-compact{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title-container-compact{align-items:center;display:flex}.title-container-compact a{color:var(--harmony-text-primary);font-size:.9em;font-weight:600;text-decoration:none}.title-container-compact a:hover{text-decoration:underline}.info-icon-compact{color:var(--harmony-text-secondary);flex-shrink:0;font-size:.8em;margin-left:8px;opacity:.7;transition:opacity .2s,color .2s}.info-icon-compact:hover{color:var(--riffy-accent-purple);opacity:1}.artist-name-compact{color:var(--harmony-text-secondary);font-size:.75em}.track-actions-compact{align-items:center;display:flex;flex-shrink:0;gap:10px}.track-actions-compact .player-action-btn{background:none;border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;font-size:1.1em;padding:7px;transition:color .2s ease,background-color .2s ease,transform .15s ease}.track-actions-compact .player-action-btn:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary);transform:scale(1.08)}.track-actions-compact .player-action-btn.liked{color:var(--riffy-accent-purple)}.player-center{flex-direction:column;flex-grow:2;gap:6px;justify-content:center;max-width:720px}.player-controls-compact{gap:14px}.control-btn-compact,.player-controls-compact{align-items:center;display:flex;justify-content:center}.control-btn-compact{background:none;border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;font-size:1.25em;height:36px;transition:color .2s ease,background-color .2s ease,transform .12s ease;width:36px}.control-btn-compact:hover:not(:disabled){background-color:var(--harmony-bg-light);color:var(--harmony-text-primary);transform:scale(1.06)}.control-btn-compact.active{color:var(--riffy-accent-purple)}.control-btn-compact:disabled{cursor:not-allowed;opacity:.4}.play-pause-btn-compact{align-items:center;background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border:none;border-radius:50%;box-shadow:0 4px 16px var(--riffy-accent-purple);color:#fff;display:flex;font-size:1.05em;height:40px;justify-content:center;transition:transform .12s ease,box-shadow .25s ease,filter .2s ease;width:40px}.play-pause-btn-compact:hover{filter:brightness(1.1);transform:scale(1.08)}.play-pause-btn-compact:active{transform:scale(.94)}.progress-area-compact{align-items:center;display:flex;gap:10px;width:100%}.time-display-compact{font-feature-settings:"tnum";color:var(--harmony-text-secondary);font-size:.7em;font-variant-numeric:tabular-nums;min-width:38px;text-align:center}.progress-bar-container-compact{background-color:var(--harmony-bg-light);border-radius:999px;cursor:pointer;height:4px;position:relative;transition:height .15s ease;width:100%}.progress-bar-container-compact:hover{height:6px}.progress-fill-compact{background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border-radius:999px;height:100%;position:relative}.progress-fill-compact:after{background:#fff;border-radius:50%;box-shadow:0 0 0 3px var(--riffy-accent-purple);content:"";height:12px;pointer-events:none;position:absolute;right:-5px;top:50%;transform:translateY(-50%) scale(0);transition:transform .15s ease;width:12px}.progress-bar-container-compact:hover .progress-fill-compact:after{transform:translateY(-50%) scale(1)}.progress-slider-compact{appearance:none;background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover) 0,var(--harmony-bg-light) 0);background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover) var(--prog,0),var(--harmony-bg-light) var(--prog,0));border-radius:999px;cursor:pointer;flex:1 1;height:4px;margin:0;min-width:0;outline:none;transition:height .15s ease;width:100%}.progress-slider-compact:hover{height:6px}.progress-slider-compact::-webkit-slider-thumb{appearance:none;background:#fff;border-radius:50%;box-shadow:0 0 0 3px var(--riffy-accent-purple);cursor:pointer;height:12px;opacity:0;transform:scale(0);-webkit-transition:transform .15s ease,opacity .15s ease;transition:transform .15s ease,opacity .15s ease;width:12px}.progress-slider-compact:hover::-webkit-slider-thumb{opacity:1;transform:scale(1)}.progress-slider-compact::-moz-range-thumb{background:#fff;border:none;border-radius:50%;box-shadow:0 0 0 3px var(--riffy-accent-purple);cursor:pointer;height:12px;opacity:0;transform:scale(0);-moz-transition:transform .15s ease,opacity .15s ease;transition:transform .15s ease,opacity .15s ease;width:12px}.progress-slider-compact:hover::-moz-range-thumb{opacity:1;transform:scale(1)}.progress-slider-compact::-moz-range-progress{background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border-radius:999px;height:100%}.player-right{gap:8px;justify-content:flex-end}.player-right .control-btn-compact{font-size:1.05em}.volume-container-compact{align-items:center;display:flex;gap:8px;padding-left:6px}.volume-container-compact button{background:none;border:none;color:var(--harmony-text-secondary);cursor:pointer;font-size:1.1em;transition:color .2s}.volume-container-compact button:hover{color:var(--harmony-text-primary)}.volume-slider-compact{appearance:none;background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover) 0,var(--harmony-bg-light) 0);background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover) var(--vol,0),var(--harmony-bg-light) var(--vol,0));border-radius:999px;cursor:pointer;height:4px;outline:none;width:90px}.volume-slider-compact::-moz-range-progress{background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border-radius:999px;height:100%}.volume-slider-compact::-webkit-slider-thumb{appearance:none;background:var(--harmony-text-primary);border-radius:50%;cursor:pointer;height:12px;-webkit-transition:background .2s,transform .15s;transition:background .2s,transform .15s;width:12px}.volume-slider-compact::-moz-range-thumb{background:var(--harmony-text-primary);border:none;border-radius:50%;cursor:pointer;height:12px;width:12px}.volume-slider-compact:hover::-webkit-slider-thumb{background:var(--riffy-accent-purple);transform:scale(1.15)}.volume-slider-compact:hover::-moz-range-thumb{background:var(--riffy-accent-purple)}.songs-carousel-riffy{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding-bottom:10px}.artists-grid-riffy .artist-search-card{min-height:180px}.playlists-grid-overview{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.song-card{background-color:var(--harmony-bg-medium);border-radius:6px;box-sizing:border-box;cursor:default;display:flex;flex-direction:column;padding:12px;position:relative;transition:background-color .2s ease,box-shadow .2s ease}[data-theme=light] .song-card{border:1px solid var(--harmony-border)}.song-card:hover{background-color:var(--harmony-bg-light);box-shadow:var(--harmony-shadow-md);transform:translateY(-2px)}.song-card:hover .song-card-play-overlay{opacity:1;transform:translateY(-8px) scale(1)}.song-card-image-wrapper{cursor:pointer;margin-bottom:10px;padding-top:100%;position:relative;width:100%}.song-card img.cover-art{background-color:var(--harmony-bg-light);border-radius:4px;height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.song-card-play-overlay{align-items:center;background-color:var(--riffy-accent-purple);border-radius:50%;bottom:8px;box-shadow:0 2px 4px #0000004d;display:flex;height:40px;justify-content:center;opacity:0;position:absolute;right:8px;transform:translateY(0) scale(.8);transition:opacity .2s ease,transform .2s ease;width:40px;z-index:5}.song-card-image-wrapper:hover .song-card-play-overlay{opacity:1;transform:translateY(-5px) scale(1)}.song-card-more-wrap{position:absolute;right:16px;top:16px;z-index:6}.song-more-bind{display:inline-flex}.song-card-more-btn{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background-color:var(--harmony-bg-overlay-dark);border:1px solid #ffffff14;border-radius:50%;color:var(--harmony-text-primary);cursor:pointer;display:flex;font-size:.85em;height:34px;justify-content:center;opacity:0;transition:opacity .2s ease,background-color .2s ease,transform .2s ease;width:34px}.song-card-more-btn.open,.song-card:hover .song-card-more-btn{opacity:1}.song-card-more-btn:hover{background-color:var(--harmony-bg-light);transform:scale(1.08)}.song-card-more-btn:focus-visible{outline:2px solid var(--riffy-accent-purple);outline-offset:2px}.song-card-more-menu{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background-color:var(--dropdown-bg);border:1px solid var(--harmony-border);border-radius:14px;box-shadow:var(--harmony-shadow-lg);max-width:230px;min-width:230px;padding:8px 0;position:fixed;z-index:1300}.song-card-more-menu.align-left .player-more-submenu{left:auto;right:100%}.song-card:focus-within,.song-card:hover{z-index:8}#playlist-details-songs-container.is-manageable .song-card-more-wrap{display:flex}@media (hover:none){.song-card-more-btn{opacity:1}}.song-card-play-overlay i{color:#fff;font-size:1em}.song-card-info{flex-grow:1;padding-top:4px;text-align:left}.song-card-info h3{color:var(--harmony-text-primary);font-size:.95em;font-weight:500;margin:0 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-card-info h3 a{color:inherit;text-decoration:none}.song-card-info h3 a:hover{text-decoration:underline}.song-card-info p.song-card-artist{color:var(--harmony-text-secondary);font-size:.8em;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-card-info p.song-card-artist a{color:var(--harmony-text-secondary);text-decoration:none;transition:color .2s ease}.song-card-info p.song-card-artist a:hover{color:var(--harmony-text-primary);text-decoration:underline}.artist-list-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.artist-list-card{align-items:center;background-color:var(--harmony-bg-medium);border-radius:8px;color:inherit;display:flex;flex-direction:column;padding:16px;text-align:center;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}[data-theme=light] .artist-list-card{border:1px solid var(--harmony-border)}.artist-list-card:hover{background-color:var(--harmony-bg-light);box-shadow:var(--harmony-shadow-md);transform:translateY(-2px)}.artist-list-card-avatar{background-color:var(--harmony-bg-light);border-radius:50%;height:120px;margin-bottom:15px;object-fit:cover;width:120px}.artist-list-card-name{color:var(--harmony-text-primary);font-size:1em;font-weight:500;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.artist-list-card:hover .artist-list-card-name{text-decoration:underline}.playlist-overview-card{background-color:var(--harmony-bg-medium);border-radius:8px;color:inherit;display:flex;flex-direction:column;padding:16px;position:relative;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}[data-theme=light] .playlist-overview-card{border:1px solid var(--harmony-border)}.playlist-overview-card:hover{background-color:var(--harmony-bg-light);box-shadow:var(--harmony-shadow-md);transform:translateY(-2px)}.playlist-overview-card-link{color:inherit;display:flex;flex-direction:column;flex-grow:1;text-decoration:none}.playlist-overview-card-image-wrapper{align-items:center;background-color:var(--harmony-bg-light);border-radius:6px;display:flex;justify-content:center;margin-bottom:12px;overflow:hidden;padding-top:100%;position:relative;width:100%}.playlist-overview-card-image{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.playlist-overview-card-placeholder-icon{color:var(--harmony-text-subtle);font-size:3em}.playlist-overview-card-info{flex-grow:1}.playlist-overview-card-info h3{color:var(--harmony-text-primary);font-size:1.05em;font-weight:500;margin:0 0 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-overview-card-link:hover .playlist-overview-card-info h3{text-decoration:underline}.playlist-overview-card-info p.playlist-song-count{color:var(--harmony-text-secondary);font-size:.8em;margin:0}.playlist-overview-card-actions{position:absolute;right:8px;top:8px;z-index:5}.playlist-card-options-btn{align-items:center;background-color:var(--harmony-bg-overlay-dark);border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.9em;height:30px;justify-content:center;transition:background-color .2s,color .2s;width:30px}[data-theme=dark] .playlist-card-options-btn{background-color:#0006}.playlist-card-options-btn:hover{background-color:var(--harmony-bg-overlay-dark);color:var(--harmony-text-primary)}[data-theme=dark] .playlist-card-options-btn:hover{background-color:#0009}.playlist-overview-card .options-menu{background-color:var(--dropdown-bg);border:1px solid var(--harmony-border);border-radius:4px;box-shadow:var(--harmony-shadow-lg);min-width:180px;padding:5px 0;position:absolute;right:5px;top:40px;z-index:10}.playlist-overview-card .options-menu-item{align-items:center;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.9em;padding:8px 12px;text-decoration:none;transition:background-color .2s ease,color .2s ease;white-space:nowrap}.playlist-overview-card .options-menu-item:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.playlist-overview-card .options-menu-item i{color:var(--harmony-text-subtle);margin-right:10px;text-align:center;width:16px}.playlist-overview-card .options-menu-item:hover i{color:var(--harmony-text-primary)}.playlist-overview-card .options-menu-item.delete:hover{background-color:#e53935;color:#fff}.playlist-overview-card .options-menu-item.delete:hover i{color:#fff}.modal{align-items:center;background-color:var(--modal-backdrop-bg);display:flex;height:100%;justify-content:center;left:0;overflow:auto;position:fixed;top:0;width:100%;z-index:1002}.modal-content{background-color:var(--modal-bg);border:1px solid var(--harmony-border);border-radius:12px;box-shadow:var(--harmony-shadow-lg);max-width:450px;padding:25px 30px;position:relative;width:90%}.close-button{color:var(--harmony-text-subtle);cursor:pointer;font-size:28px;font-weight:700;position:absolute;right:20px;top:10px;transition:color .2s ease}.close-button:focus,.close-button:hover{color:var(--harmony-text-primary);text-decoration:none}.modal-content h2{color:var(--riffy-accent-purple);margin-bottom:25px;text-align:center}.riffy-modal-input-group{margin-bottom:15px}.riffy-modal-input-group label{color:var(--harmony-text-secondary);display:block;font-size:.9em;margin-bottom:6px}#edit-playlist-modal textarea#edit-playlist-description,.riffy-modal-input-group input[type=text]{background-color:var(--input-bg);border:1px solid var(--harmony-border);border-radius:4px;box-sizing:border-box;color:var(--harmony-text-primary);font-family:inherit;padding:10px;width:100%}#edit-playlist-modal textarea#edit-playlist-description{min-height:80px;resize:vertical}#edit-playlist-modal textarea#edit-playlist-description:focus,.riffy-modal-input-group input[type=text]:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d34d;outline:none}#share-playlist-modal .modal-content{max-width:520px}.share-modal-preview{align-items:center;display:flex;gap:14px;margin-bottom:18px}.share-modal-preview img.share-modal-cover{background-color:var(--harmony-bg-dark);border:1px solid var(--harmony-border);border-radius:10px;flex-shrink:0;height:64px;object-fit:cover;width:64px}.share-modal-preview .share-modal-preview-info{min-width:0}.share-modal-preview .share-modal-preview-title{color:var(--harmony-text-primary);font-size:1.05em;font-weight:600;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-modal-preview .share-modal-preview-sub{color:var(--harmony-text-secondary);font-size:.85em;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-modal-field{margin-bottom:15px}.share-modal-field label{color:var(--harmony-text-secondary);display:block;font-size:.9em;margin-bottom:6px}.share-modal-link-row{align-items:center;display:flex;gap:8px}.share-modal-link-input{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;box-sizing:border-box;color:var(--harmony-text-primary);flex:1 1;font-size:.9em;min-width:0;padding:10px 12px}.share-modal-link-row .riffy-button-primary-icon{white-space:nowrap}.share-modal-link-row .riffy-button-primary-icon:disabled{cursor:default;opacity:.55;transform:none}.share-modal-social{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(126px,1fr))}.share-modal-social-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 1px 3px #0003;color:#fff;cursor:pointer;display:flex;font-size:.85em;font-weight:500;gap:8px;justify-content:center;padding:9px 10px;transition:transform .1s ease,opacity .2s ease}.share-modal-social-btn:hover:not(:disabled){opacity:.92;transform:scale(1.03)}.share-modal-social-btn:disabled{cursor:default;opacity:.55}.share-modal-info{color:var(--harmony-text-secondary);font-size:.85em;margin:14px 0 0}.share-modal-error{color:#d9534f;font-size:.9em;margin:10px 0 0}.complaint-modal-content{max-width:500px}.complaint-select{background-color:var(--input-bg);border:1px solid var(--harmony-border);border-radius:6px;color:var(--harmony-text-primary);font-family:inherit;font-size:.95em;padding:10px;width:100%}.complaint-select:focus{border-color:var(--riffy-accent-purple);outline:none}.complaint-textarea{background-color:var(--input-bg);border:1px solid var(--harmony-border);border-radius:6px;color:var(--harmony-text-primary);font-family:inherit;font-size:.95em;min-height:100px;padding:10px;resize:vertical;width:100%}.complaint-textarea:focus{border-color:var(--riffy-accent-purple);outline:none}.riffy-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.fsp-more-menu,.player-more-menu-riffy{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background-color:var(--dropdown-bg);border:1px solid var(--harmony-border);border-radius:14px;box-shadow:var(--harmony-shadow-lg);max-width:230px;min-width:230px;padding:8px 0}.player-more-menu-riffy{bottom:calc(100% + 14px);left:50%;position:absolute;transform:translateX(-50%);z-index:1005}.player-more-menu-item{align-items:center;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.9em;gap:12px;min-width:0;overflow:hidden;padding:11px 18px;position:relative;text-decoration:none;transition:background-color .2s ease,color .2s ease;white-space:nowrap}.player-more-menu-item>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.player-more-menu-item:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.player-more-menu-item i:not(.submenu-arrow){color:var(--harmony-text-secondary);flex-shrink:0;font-size:1.05em;margin-right:0;text-align:center;transition:color .2s ease;width:22px}.player-more-menu-item:hover i:not(.submenu-arrow){color:var(--riffy-accent-purple)}.player-more-menu-item.active,.player-more-menu-item.active i:not(.submenu-arrow),.player-more-menu-item.active span{color:var(--riffy-accent-purple)!important}.player-more-menu-divider{background-color:var(--harmony-border);height:1px;margin:7px 18px}.player-more-menu-item-submenu-container{position:relative}.player-more-menu-item .submenu-arrow{flex-shrink:0;font-size:.8em;margin-left:auto;opacity:.65}.player-more-submenu{background-color:var(--dropdown-bg);border:1px solid var(--harmony-border);border-radius:14px;box-shadow:var(--harmony-shadow-lg);left:100%;max-height:260px;max-width:230px;min-width:230px;overflow-y:auto;padding:8px 0;position:absolute;top:-8px;z-index:1006}.user-dropdown-container{align-items:center;display:flex;position:relative}.dropdown-menu-riffy{background-color:var(--dropdown-bg);border:1px solid var(--harmony-border);border-radius:4px;box-shadow:var(--harmony-shadow-lg);padding:8px 0;position:absolute;right:0;top:calc(100% + 5px);z-index:1010}.dropdown-item-riffy{color:var(--harmony-text-secondary);display:block;font-size:.9em;padding:10px 20px;text-decoration:none;transition:background-color .2s ease,color .2s ease;white-space:nowrap}.dropdown-item-riffy:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.dropdown-divider-riffy{background-color:var(--harmony-border);border:none;height:1px;margin:8px 0}.header-search-results-dropdown{background-color:var(--dropdown-bg);border:1px solid var(--harmony-border);border-radius:0 0 8px 8px;border-top:none;box-shadow:var(--harmony-shadow-md);left:0;max-height:350px;overflow-y:auto;position:absolute;top:calc(100% + 5px);width:100%;z-index:1005}.header-search-item{align-items:center;color:var(--harmony-text-secondary);cursor:pointer;display:flex;padding:8px 12px;text-decoration:none;transition:background-color .2s ease}.header-search-item:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.header-search-item img{background-color:var(--harmony-bg-dark);border-radius:4px;flex-shrink:0;height:32px;margin-right:10px;object-fit:cover;width:32px}.header-search-item-info{display:flex;flex-direction:column;overflow:hidden}.header-search-item-title{color:var(--harmony-text-primary);font-size:.9em;font-weight:500;margin-bottom:2px}.header-search-item-artist,.header-search-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-search-item-artist{color:var(--harmony-text-subtle);font-size:.8em}.header-search-results-dropdown .no-results-compact{color:var(--harmony-text-subtle);font-size:.85em;padding:12px;text-align:center}.header-search-artist-item .header-search-artist-icon,.header-search-artist-item .header-search-artist-image{align-items:center;background-color:var(--harmony-bg-dark);border-radius:50%;color:var(--harmony-text-secondary);display:inline-flex;flex-shrink:0;font-size:1.2em;height:32px;justify-content:center;margin-right:10px;object-fit:cover;width:32px}.header-search-category-title,.header-search-item.header-search-artist-item:hover .header-search-artist-icon{color:var(--riffy-accent-purple)}.header-search-category-title{background-color:var(--dropdown-bg);border-bottom:1px solid var(--harmony-border);font-size:.9em;font-weight:500;letter-spacing:.5px;margin-bottom:5px;padding:10px 12px 6px;position:sticky;text-transform:uppercase;top:0;z-index:1}.header-search-category-title:first-child{border-top-left-radius:0;border-top-right-radius:0}.header-search-divider{background-color:var(--harmony-border);border:none;height:1px;margin:8px 12px}.lyrics-modal{align-items:stretch;animation:fadeIn .25s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background-color:var(--modal-backdrop-bg);display:flex;height:100%;justify-content:flex-end;left:0;opacity:1;position:fixed;top:0;visibility:visible;width:100%;z-index:2010}.lyrics-modal.closing{opacity:0;pointer-events:none;transition:opacity .3s ease}.lyrics-modal-content{animation:slideInFromRight .35s cubic-bezier(.25,1,.5,1) forwards;background-color:var(--harmony-bg-medium);border-left:1px solid var(--harmony-border);box-shadow:-8px 0 30px #00000059;display:flex;flex-direction:column;height:100%;max-width:500px;min-width:320px;position:relative;transform:translateX(0);width:45%}.lyrics-modal.closing .lyrics-modal-content{animation:none;transform:translateX(100%);transition:transform .3s cubic-bezier(.25,1,.5,1)}.lyrics-modal-header{align-items:center;background-color:var(--harmony-bg-light);border-bottom:1px solid var(--harmony-border);display:flex;justify-content:space-between;padding:16px 22px}.lyrics-modal-header h3{align-items:center;color:var(--harmony-text-primary);display:flex;font-size:1.2em;font-weight:700;gap:10px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lyrics-modal-header h3:before{color:var(--riffy-accent-purple);content:"\f001";flex-shrink:0;font-family:Font Awesome\ 6 Free;font-size:.85em;font-weight:900}.lyrics-modal-close{align-items:center;background:var(--harmony-bg-overlay-light);border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:1em;height:38px;justify-content:center;line-height:1;transition:color .2s ease,background-color .2s ease,transform .2s ease;width:38px}.lyrics-modal-close:hover{background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));color:#fff;transform:scale(1.08)}.lyrics-modal-body{color:var(--harmony-text-secondary);flex-grow:1;font-size:1em;line-height:1.8;overflow-y:auto;padding:24px;scrollbar-color:var(--harmony-border) #0000;scrollbar-width:thin}.lyrics-modal-body::-webkit-scrollbar{width:6px}.lyrics-modal-body::-webkit-scrollbar-track{background:#0000}.lyrics-modal-body::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:999px}.lyrics-modal-body br{content:"";display:block;margin-bottom:.6em}.lyrics-modal-body .no-lyrics-message{color:var(--harmony-text-subtle);font-style:italic;margin-top:24px;text-align:center}.riffy-button-primary{background-color:var(--riffy-accent-purple);border:none;border-radius:5px;color:#fff;cursor:pointer;display:block;font-size:1em;font-weight:500;padding:12px 20px;text-align:center;transition:background-color .3s ease,transform .1s ease;width:100%}.riffy-button-primary:hover{background-color:var(--riffy-accent-purple-hover);transform:translateY(-1px)}.riffy-header-action-button{align-items:center;background-color:var(--riffy-accent-purple);border:none;border-radius:5px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9em;font-weight:500;margin-left:10px;padding:8px 15px;text-decoration:none;transition:background-color .3s ease,transform .1s ease}.riffy-header-action-button:hover{background-color:var(--riffy-accent-purple-hover);transform:scale(1.03)}.riffy-header-action-button i{margin-right:6px}.riffy-button-primary-icon{align-items:center;background-color:var(--riffy-accent-purple);border:none;border-radius:5px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9em;font-weight:500;padding:10px 18px;transition:background-color .3s ease,transform .1s ease}.riffy-button-primary-icon:hover{background-color:var(--riffy-accent-purple-hover);transform:scale(1.03)}.riffy-button-primary-icon i{margin-right:8px}.riffy-button-primary-purple{align-items:center;background-color:var(--riffy-accent-purple);border:none;border-radius:500px;color:#fff;cursor:pointer;display:inline-flex;font-size:.95em;font-weight:700;gap:8px;padding:10px 24px;text-decoration:none;transition:background-color .2s ease,transform .1s ease}.riffy-button-primary-purple:hover{background-color:var(--riffy-accent-purple-hover);transform:scale(1.05)}.riffy-button-primary-yellow{align-items:center;background-color:gold;border:none;border-radius:500px;color:#121212;cursor:pointer;display:inline-flex;font-size:.95em;font-weight:700;gap:8px;padding:10px 24px;transition:background-color .2s ease,transform .1s ease}.riffy-button-primary-yellow:hover{background-color:#ffc700;transform:scale(1.05)}.riffy-button-outline{align-items:center;background-color:initial;border:1px solid var(--riffy-accent-purple);border-radius:20px;color:var(--riffy-accent-purple);cursor:pointer;display:inline-flex;font-size:.85em;font-weight:500;padding:6px 12px;transition:background-color .2s ease,color .2s ease}.riffy-button-outline i{margin-right:6px}.riffy-button-outline:hover{background-color:var(--riffy-accent-purple);color:#fff}[data-theme=light] .riffy-button-outline:hover{color:#fff}.riffy-button-secondary-icon{align-items:center;background-color:var(--harmony-bg-overlay-light);border:1px solid #0000;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:1.1em;height:40px;justify-content:center;transition:background-color .2s ease,color .2s ease;width:40px}[data-theme=light] .riffy-button-secondary-icon{border-color:var(--harmony-border)}.riffy-button-secondary-icon:hover{background-color:var(--harmony-bg-overlay-medium);color:var(--harmony-text-primary)}.riffy-button-secondary-icon.active{color:var(--riffy-accent-purple)}.riffy-button-secondary-icon.active .fa-heart{font-weight:900}.riffy-button-secondary-text-icon{align-items:center;background-color:var(--harmony-bg-overlay-light);border:1px solid #0000;border-radius:500px;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:.9em;font-weight:500;gap:8px;justify-content:center;padding:10px 18px;transition:background-color .2s ease,color .2s ease}[data-theme=light] .riffy-button-secondary-text-icon{border-color:var(--harmony-border)}.riffy-button-secondary-text-icon:hover{background-color:var(--harmony-bg-overlay-medium);color:var(--harmony-text-primary)}.riffy-button-secondary-text-icon.active{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);color:#fff}.riffy-modal-button{border:none;border-radius:4px;cursor:pointer;font-size:.9em;font-weight:500;padding:8px 15px;transition:background-color .2s ease}.riffy-modal-button.primary{background-color:var(--riffy-accent-purple);color:#fff}.riffy-modal-button.primary:hover{background-color:var(--riffy-accent-purple-hover)}.riffy-modal-button.secondary{background-color:var(--harmony-bg-light);color:var(--harmony-text-secondary)}.riffy-modal-button.secondary:hover{background-color:var(--harmony-border);color:var(--harmony-text-primary)}.riffy-modal-button-danger{background-color:#e53935!important}.riffy-modal-button-danger:hover{background-color:#c62828!important}.back-to-main-btn{align-items:center;background-color:var(--riffy-accent-purple);border:none;border-radius:5px;color:#fff;display:inline-flex;font-size:.9em;font-weight:500;margin-bottom:25px;padding:10px 18px;text-decoration:none;transition:background-color .2s ease,transform .1s ease}.back-to-main-btn:hover{background-color:var(--riffy-accent-purple-hover);transform:scale(1.03)}.back-to-main-btn i{margin-right:8px}.required-star{color:var(--riffy-accent-purple);margin-left:2px}.form-message{font-weight:500;margin-top:15px;padding:10px;text-align:center}.form-message:not(:empty){display:block}.form-message.success{background-color:#3d8c40;color:#e6ffe7}.form-message.error{background-color:#a94442;color:#f2dede}#auth-tabs,#settings-tabs,#upload-tabs,.playlist-categories-tabs{border-bottom:1px solid var(--harmony-border);display:flex;margin-bottom:20px}#auth-tabs .tab-link,#settings-tabs .tab-link,#upload-tabs .tab-link,.playlist-tab-button{background:none;border:none;border-bottom:3px solid #0000;color:var(--harmony-text-secondary);cursor:pointer;font-size:1em;font-weight:500;margin-right:10px;padding:10px 18px;transition:color .2s ease,border-bottom-color .2s ease}#auth-tabs .tab-link.active,#settings-tabs .tab-link.active,#upload-tabs .tab-link.active,.playlist-tab-button.active{border-bottom-color:var(--riffy-accent-purple);color:var(--harmony-text-primary)}#auth-tabs .tab-link:not(.active):hover,#settings-tabs .tab-link:not(.active):hover,#upload-tabs .tab-link:not(.active):hover,.playlist-tab-button:not(.active):hover{color:var(--harmony-text-primary)}.tab-content{display:none}.tab-content.active{display:block}.carousel-wrapper{padding:0 5px;position:relative}.carousel-wrapper .carousel-content{grid-gap:18px;-ms-overflow-style:none;display:grid;gap:18px;grid-auto-columns:180px;grid-auto-flow:column;overflow-x:auto;overflow-y:hidden;padding-bottom:10px;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none}.carousel-wrapper .carousel-content.home-carousel{grid-auto-columns:minmax(180px,calc(33.33333% - 12px))}.carousel-wrapper .carousel-content.home-list-carousel{grid-auto-columns:minmax(200px,calc(33.33333% - 12px))}.carousel-wrapper .carousel-content.home-list-carousel .list-view-item{background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);gap:14px;grid-template-areas:"cover info more";grid-template-columns:44px 1fr 34px}.carousel-wrapper .carousel-content.home-list-carousel .list-view-item .list-item-cover{border-radius:6px;grid-area:cover;height:44px;width:44px}.carousel-wrapper .carousel-content.home-list-carousel .list-view-item .list-item-play-button{align-self:center;grid-area:cover}.carousel-wrapper .carousel-content.home-list-carousel .list-view-item .list-item-info{grid-area:info}.carousel-wrapper .carousel-content.home-list-carousel .list-view-item .list-item-more{grid-area:more}.carousel-wrapper .carousel-content.home-list-carousel .list-view-item .list-item-more-btn{opacity:1}.carousel-wrapper .carousel-content::-webkit-scrollbar{display:none}.scroll-btn{align-items:center;background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:50%;box-shadow:var(--harmony-shadow-sm);color:var(--harmony-text-primary);cursor:pointer;display:none;font-size:1.2em;height:40px;justify-content:center;opacity:0;position:absolute;top:40%;transform:translateY(-50%);transition:background-color .2s ease,transform .2s ease,opacity .3s ease;width:40px;z-index:10}[data-theme=dark] .scroll-btn{background-color:#181818b3;border-color:#ffffff1a;color:#fff}.carousel-wrapper:hover .scroll-btn{display:flex;opacity:1}.scroll-btn:hover{background-color:var(--harmony-bg-light);transform:translateY(-50%) scale(1.1)}[data-theme=dark] .scroll-btn:hover{background-color:#282828e6}.scroll-btn.left{left:-15px}.scroll-btn.right{right:-15px}.signin-page{align-items:center;background:radial-gradient(circle at top center,#2a1a3a 0,#120c18 70%);box-sizing:border-box;color:#e0e0e0;display:flex;flex-direction:column;justify-content:center;margin-left:0!important;min-height:100vh;padding:20px;width:100%!important}[data-theme=light] .signin-page{background:var(--harmony-bg-dark);color:var(--harmony-text-primary)}.signin-page .auth-wrapper{align-items:center;display:flex;flex-direction:column;max-width:450px;width:100%}.signin-page .auth-tabs-external{display:flex;gap:8px;justify-content:space-between;margin-bottom:25px;width:100%}.signin-page .auth-tabs-external .tab-btn{background-color:#ffffff1a;border:2px solid #0000;border-radius:8px;color:#ccc;cursor:pointer;flex:1 1;font-size:.9em;font-weight:500;margin:0;padding:10px 0;text-align:center;transition:all .3s ease}[data-theme=light] .signin-page .auth-tabs-external .tab-btn{background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);color:var(--harmony-text-secondary)}.signin-page .auth-tabs-external .tab-btn:not(.active){background-color:#0003;color:#bbb}.signin-page .auth-tabs-external .tab-btn:not(.active):hover{background-color:#0000004d;color:#fff}[data-theme=light] .signin-page .auth-tabs-external .tab-btn:not(.active){background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}[data-theme=light] .signin-page .auth-tabs-external .tab-btn:not(.active):hover{background-color:var(--harmony-border)}.signin-page .auth-tabs-external .tab-btn.active{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);box-shadow:0 0 10px #7b56d380;color:#fff}.signin-page .auth-form-wrapper{backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);background:#38245666;border:1px solid #ffffff1f;border-radius:16px;box-shadow:0 10px 35px #0000004d;display:none;max-width:420px;padding:35px 40px;text-align:center;width:100%}[data-theme=light] .signin-page .auth-form-wrapper{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--harmony-bg-medium);border:1px solid var(--harmony-border);box-shadow:var(--harmony-shadow-lg)}.signin-page .auth-form-wrapper.active{display:block}.signin-page .auth-brand-icon{align-items:center;background-color:#ffffff1a;border-radius:50%;box-shadow:0 2px 8px #0003;color:#fff;display:flex;font-size:2.8em;font-weight:600;height:70px;justify-content:center;margin:0 auto 20px;width:70px}[data-theme=light] .signin-page .auth-brand-icon{background-color:var(--riffy-accent-purple);box-shadow:0 4px 10px #7b56d366;color:#fff}.signin-page .auth-form-wrapper h2{color:#fff;font-size:1.9em;font-weight:600;margin-bottom:8px}[data-theme=light] .signin-page .auth-form-wrapper h2{color:var(--harmony-text-primary)}.signin-page .auth-form-wrapper .auth-subtitle{color:#d0c8e0;font-size:.95em;margin-bottom:30px}[data-theme=light] .signin-page .auth-form-wrapper .auth-subtitle{color:var(--harmony-text-secondary)}.signin-page .auth-form .form-group{margin-bottom:20px;text-align:left}.signin-page .auth-form .form-group label{color:#c0b8d0;display:block;font-size:.85em;font-weight:500;margin-bottom:8px}[data-theme=light] .signin-page .auth-form .form-group label{color:var(--harmony-text-secondary)}.signin-page .auth-form .input-group{position:relative}.signin-page .auth-form .input-group input{background-color:#0003;border:1px solid #ffffff26;border-radius:8px;box-sizing:border-box;color:#fff;font-size:1em;padding:13px 18px 13px 48px;transition:border-color .3s,background-color .3s;width:100%}[data-theme=light] .signin-page .auth-form .input-group input{background-color:var(--input-bg);border-color:var(--harmony-border);color:var(--harmony-text-primary)}.signin-page .auth-form .input-group input::placeholder{color:#8a819b}[data-theme=light] .signin-page .auth-form .input-group input::placeholder{color:var(--harmony-text-subtle)}.signin-page .auth-form .input-group input:focus{background-color:#0000004d;border-color:var(--riffy-modal-accent-purple);box-shadow:0 0 0 2px #9e78f04d;outline:none}[data-theme=light] .signin-page .auth-form .input-group input:focus{background-color:var(--harmony-bg-medium)}.signin-page .auth-form .input-icon{color:#a098b0;font-size:1.1em;left:18px;position:absolute;top:50%;transform:translateY(-50%)}[data-theme=light] .signin-page .auth-form .input-icon{color:var(--harmony-text-subtle)}.signin-page .social-login-options{margin:25px 0 20px;text-align:center}.signin-page .social-login-text{color:#a098b0;display:inline-block;font-size:.85em;margin-bottom:15px;position:relative}[data-theme=light] .signin-page .social-login-text{color:var(--harmony-text-subtle)}.signin-page .social-login-text:after,.signin-page .social-login-text:before{background-color:#ffffff26;content:"";height:1px;position:absolute;top:50%;width:50px}[data-theme=light] .signin-page .social-login-text:after,[data-theme=light] .signin-page .social-login-text:before{background-color:var(--harmony-border)}.signin-page .social-login-text:before{margin-right:15px;right:100%}.signin-page .social-login-text:after{left:100%;margin-left:15px}.signin-page .social-buttons-container{display:flex;gap:20px;justify-content:center}.signin-page .social-login-btn{align-items:center;background-color:#0003;border:1px solid #ffffff26;border-radius:50%;color:#c0b8d0;display:inline-flex;font-size:1.4em;height:48px;justify-content:center;text-decoration:none;transition:all .3s ease;width:48px}[data-theme=light] .signin-page .social-login-btn{background-color:var(--harmony-bg-light);border-color:var(--harmony-border);color:var(--harmony-text-secondary)}.signin-page .social-login-btn:hover{box-shadow:0 4px 12px #0003;transform:translateY(-3px)}[data-theme=light] .signin-page .social-login-btn:hover{box-shadow:var(--harmony-shadow-sm)}.signin-page .social-login-btn.google:hover{border-color:#db4437;color:#db4437}.signin-page .social-login-btn.yandex:hover{border-color:red;color:red}.signin-page .social-login-btn.vk:hover{border-color:#4680c2;color:#4680c2}.signin-page .auth-form .submit-btn.main-action-btn{background:linear-gradient(90deg,#6a3093 0,#a044ff);border:none;border-radius:8px;box-shadow:0 4px 15px #7b56d34d;color:#fff;cursor:pointer;font-size:1.05em;font-weight:600;margin-top:10px;padding:14px;transition:opacity .3s ease,box-shadow .3s ease;width:100%}.signin-page .auth-form .submit-btn.main-action-btn:hover{box-shadow:0 6px 20px #7b56d380;opacity:.9}.signin-page .switch-auth-text{color:#c0b8d0;font-size:.9em;margin-top:10px}[data-theme=light] .signin-page .switch-auth-text{color:var(--harmony-text-secondary)}.signin-page .switch-auth-text a{color:var(--riffy-modal-accent-purple);font-weight:600;text-decoration:none}.signin-page .switch-auth-text a:hover{text-decoration:underline}.signin-page .terms-text{color:#9088a0;font-size:.75em;line-height:1.6;margin-top:35px;max-width:380px;text-align:center}[data-theme=light] .signin-page .terms-text{color:var(--harmony-text-subtle)}.signin-page .terms-text a{color:#b0aac0;font-weight:500;text-decoration:none}[data-theme=light] .signin-page .terms-text a{color:var(--harmony-text-secondary)}.signin-page .terms-text a:hover{color:#fff;text-decoration:underline}[data-theme=light] .signin-page .terms-text a:hover{color:var(--harmony-text-primary)}.track-header{align-items:flex-start;border-bottom:1px solid var(--harmony-border);display:flex;gap:24px;margin-bottom:30px;padding-bottom:20px}.track-cover-art{background-color:var(--harmony-bg-light);border-radius:6px;flex-shrink:0;height:180px;object-fit:cover;width:180px}.track-info{flex-grow:1}.track-info h1{color:var(--harmony-text-primary);font-size:2em;font-weight:700;line-height:1.2;margin-bottom:8px;margin-top:0}.track-info .artist-name a{color:inherit}.track-info .album-name-track-page{color:var(--harmony-text-subtle);font-size:.9em;margin-bottom:10px;margin-top:5px}.track-info .album-name-track-page a{color:var(--harmony-text-secondary);text-decoration:none}.track-info .album-name-track-page a:hover{color:var(--harmony-text-primary);text-decoration:underline}.track-info .category-tag{background-color:var(--riffy-accent-purple);border-radius:15px;color:#fff;display:inline-block;font-size:.85em;font-weight:500;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.track-info-tags-actions{align-items:center;display:flex;gap:15px;margin-top:10px}.track-details-section{margin-bottom:30px}.track-details-section h2{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.4em;font-weight:700;margin-bottom:16px;margin-top:0;padding-bottom:8px}.track-details-section p,.track-details-section ul{color:var(--harmony-text-secondary);font-size:.95em;line-height:1.6}.track-details-section ul{list-style:none;padding-left:0}.track-details-section ul li{align-items:center;display:flex;margin-bottom:8px}.track-details-section ul li a{color:var(--riffy-accent-purple);font-weight:500;text-decoration:none;transition:color .2s ease}.track-details-section ul li a:hover{color:var(--riffy-accent-purple-hover);text-decoration:underline}.track-details-section ul li i.fab,.track-details-section ul li i.fas{color:var(--riffy-accent-purple);flex-shrink:0;margin-right:10px;text-align:center;width:20px}.album-header{align-items:flex-start;border-bottom:1px solid var(--harmony-border);display:flex;gap:24px;margin-bottom:30px;padding-bottom:20px}.album-cover-art{background-color:var(--harmony-bg-light);border-radius:6px;flex-shrink:0;height:180px;object-fit:cover;width:180px}.album-info{flex-grow:1}.album-info h1{color:var(--harmony-text-primary);font-size:2em;font-weight:700;line-height:1.2;margin-bottom:8px;margin-top:0}.album-info .artist-name a{color:var(--harmony-text-secondary);display:block;font-size:1.2em;font-weight:400;margin-bottom:15px;text-decoration:none;transition:color .2s ease}.album-info .artist-name a:hover{color:var(--harmony-text-primary);text-decoration:underline}.album-meta-and-actions{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-top:15px}.album-meta-and-actions .album-meta-info{color:var(--harmony-text-subtle);font-size:.85em;margin:0}.album-page-actions{align-items:center;display:flex;gap:10px}.album-meta-and-actions .album-page-actions{margin-top:0}.album-tracks-section{margin-bottom:30px}.album-tracks-section h2{color:var(--harmony-text-primary);font-size:1.5em;font-weight:700;margin-bottom:16px;margin-top:0;padding-bottom:8px}.album-tracks-section h2,.artist-header{border-bottom:1px solid var(--harmony-border)}.artist-header{align-items:center;display:flex;gap:30px;margin-bottom:30px;padding-bottom:20px}.artist-photo{background-color:var(--harmony-bg-light);border:3px solid var(--harmony-border);border-radius:50%;box-shadow:var(--harmony-shadow-md);flex-shrink:0;height:200px;object-fit:cover;width:200px}.artist-info-main{display:flex;flex-direction:column;justify-content:center}.artist-page-label{color:var(--harmony-text-secondary);font-size:.9em;font-weight:500;margin:0 0 5px}.artist-info-main h1{color:var(--harmony-text-primary);font-size:2.8em;font-weight:700;line-height:1.2;margin:0 0 12px}.artist-stats{align-items:center;color:var(--harmony-text-secondary);display:flex;font-size:.95em;gap:8px;margin-bottom:20px}.artist-stats i{color:var(--harmony-text-subtle)}.artist-stats span{color:var(--harmony-text-primary);font-weight:500}.artist-actions{align-items:center;display:flex;gap:15px}.artist-details-section{margin-bottom:30px}.artist-details-section h2{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.5em;font-weight:700;margin-bottom:16px;margin-top:0;padding-bottom:8px}.artist-bio-text{color:var(--harmony-text-secondary);font-size:.95em;line-height:1.7;white-space:pre-wrap}.playlist-category-section{display:none;margin-bottom:30px}.playlist-category-section.active{display:block}.playlist-category-section h2{border-bottom:none;color:var(--harmony-text-primary);font-size:1.3em;font-weight:600;margin-bottom:15px;padding-bottom:0}.section-header-with-action{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.section-header-with-action h2{margin-bottom:0}.playlist-header-details{align-items:flex-start;background-color:var(--harmony-bg-medium);border-radius:8px;display:flex;gap:30px;margin-bottom:30px;padding:20px}[data-theme=light] .playlist-header-details{background-color:initial;padding-left:0;padding-right:0}.playlist-cover-art-details{align-items:center;background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;display:flex;flex-shrink:0;height:200px;justify-content:center;object-fit:cover;width:200px}.playlist-cover-art-details .placeholder-icon{color:var(--harmony-text-subtle);font-size:4em}.playlist-info-details{flex-grow:1}.playlist-info-details h1{color:var(--harmony-text-primary);font-size:2.2em;font-weight:700;margin-bottom:10px;margin-top:0}.playlist-info-details .playlist-description-details{color:var(--harmony-text-secondary);font-size:.9em;line-height:1.6;margin-bottom:15px;max-height:60px;overflow:hidden;text-overflow:ellipsis;white-space:pre-wrap}.playlist-info-details .playlist-meta-details{color:var(--harmony-text-subtle);font-size:.85em;margin-bottom:20px}.playlist-meta-details span{margin-right:15px}.playlist-meta-details i{margin-right:5px}.playlist-actions-details{align-items:center;display:flex;gap:10px}.playlist-actions-details .riffy-button-outline,.playlist-actions-details .riffy-button-primary-icon{font-size:.9em;padding:8px 15px}.playlist-actions-details .riffy-button-outline.danger{border-color:#d9534f;color:#d9534f}.playlist-actions-details .riffy-button-outline.danger:hover{background-color:#d9534f;color:#fff}.playlist-tracks-section-details h2{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.5em;font-weight:700;margin-bottom:20px;margin-top:0;padding-bottom:10px}.playlist-participants-section{background-color:var(--harmony-bg-medium);border-radius:12px;box-shadow:var(--harmony-shadow-lg);margin:20px 0 35px;padding:20px 25px}.playlist-participants-section h2{color:var(--harmony-text-primary);font-size:1.3em;font-weight:700;margin-bottom:15px;margin-top:0}.playlist-participants-section h2 i{color:var(--riffy-accent-purple);margin-right:8px}.playlist-participants-section .open-playlist-info{margin-bottom:15px;margin-top:10px}.playlist-invite-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.invite-link-input{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;box-sizing:border-box;color:var(--harmony-text-primary);flex:1 1;font-size:.9em;min-width:250px;padding:10px 12px}.invite-link-input:focus{border-color:var(--riffy-accent-purple);outline:none}.collaborator-list{display:flex;flex-direction:column;gap:10px;margin-top:5px}.collaborator-row{align-items:center;background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;padding:10px 14px}.collaborator-avatar{border:1px solid var(--harmony-border);border-radius:50%;height:38px;object-fit:cover;width:38px}.collaborator-name{color:var(--harmony-text-primary);font-weight:600;min-width:110px}.collaborator-permissions{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:14px}.collab-perm-checkbox{align-items:center;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:.85em;gap:5px}.collab-perm-checkbox input[type=checkbox]{accent-color:var(--riffy-accent-purple);cursor:pointer;height:16px;width:16px}.collaborator-row .open-remove-submission-btn{display:inline-flex;margin-left:auto;position:static}.invite-page-wrap{margin:40px auto;max-width:520px;padding:0 16px}.invite-error-block{background-color:var(--harmony-bg-medium);border-radius:12px;box-shadow:var(--harmony-shadow-lg);padding:30px;text-align:center}.invite-error-block h2{color:var(--harmony-text-primary);margin-bottom:20px}.invite-card{align-items:center;background-color:var(--harmony-bg-medium);border-radius:16px;box-shadow:var(--harmony-shadow-lg);display:flex;flex-direction:column;gap:12px;padding:30px;text-align:center}.invite-card-cover{background-color:var(--harmony-bg-light);border-radius:12px;height:180px;overflow:hidden;width:180px}.invite-card-cover img{display:block;height:100%;object-fit:cover;width:100%}.invite-card h1{color:var(--harmony-text-primary);font-size:1.6em;margin:6px 0 0}.invite-description{color:var(--harmony-text-secondary);font-size:.9em;line-height:1.5;margin:0}.invite-meta{color:var(--harmony-text-subtle);display:flex;flex-wrap:wrap;font-size:.85em;gap:18px;justify-content:center;margin:6px 0}.invite-meta span i{color:var(--riffy-accent-purple);margin-right:5px}.invite-success{align-items:center;display:flex;flex-direction:column;gap:10px}.invite-success p{color:var(--harmony-text-secondary);margin:0}.invite-success p i{color:#4caf50;margin-right:6px}.invite-login-prompt{align-items:center;display:flex;flex-direction:column;gap:10px}.invite-login-prompt p{color:var(--harmony-text-secondary);margin:0}#upload-form-container{background-color:var(--harmony-bg-medium);border-radius:12px;box-shadow:var(--harmony-shadow-lg);margin:30px auto;max-width:700px;padding:30px 40px}#upload-form-container h2{color:var(--harmony-text-primary);font-size:2em;font-weight:700;margin-bottom:30px;text-align:center}#upload-form-container .form-group-modal{margin-bottom:22px}#upload-form-container .form-group-modal label{color:var(--harmony-text-secondary);display:block;font-size:.9em;font-weight:500;margin-bottom:10px}#upload-form-container .form-section-title{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.2em;font-weight:500;margin-bottom:20px;margin-top:30px;padding-bottom:10px}#upload-form-container input[type=date],#upload-form-container input[type=file],#upload-form-container input[type=text],#upload-form-container input[type=url],#upload-form-container select,#upload-form-container textarea{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;box-sizing:border-box;color:var(--harmony-text-primary);font-family:inherit;font-size:.95em;padding:12px 15px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}#upload-form-container input[type=file]{background-color:var(--input-bg);padding:10px 12px}#upload-form-container input[type=file]::file-selector-button{background-color:var(--riffy-accent-purple);border:none;border-radius:4px;color:#fff;cursor:pointer;margin-right:10px;padding:8px 12px;transition:background-color .2s ease}#upload-form-container input[type=file]::file-selector-button:hover{background-color:var(--riffy-accent-purple-hover)}#upload-form-container select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml; charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23B3B3B3%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.4-12.8z%22%2F%3E%3C%2Fsvg%3E");background-position:right 15px center;background-repeat:no-repeat;background-size:10px;padding-right:35px}[data-theme=light] #upload-form-container select{filter:invert(.6)}#upload-form-container input[type=date]{padding:11px 15px}[data-theme=dark] #upload-form-container input[type=date]{color-scheme:dark}#upload-form-container input:focus,#upload-form-container select:focus,#upload-form-container textarea:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d34d;outline:none}#upload-form-container button[type=submit]{background-color:var(--riffy-accent-purple);border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:1.05em;font-weight:500;margin-top:25px;padding:14px 20px;transition:background-color .3s ease,transform .1s ease;width:100%}#upload-form-container button[type=submit]:hover{background-color:var(--riffy-accent-purple-hover);transform:translateY(-1px)}#upload-form-container button[type=submit]:disabled{background-color:var(--harmony-text-subtle);cursor:not-allowed;transform:none}[data-theme=dark] #upload-form-container button[type=submit]:disabled{background-color:#5a5a5a}.settings-form-container{background-color:var(--harmony-bg-medium);border-radius:8px;box-shadow:var(--harmony-shadow-md);margin:20px auto;max-width:600px;padding:30px;width:100%}.settings-form-container h2{color:var(--harmony-text-primary);font-size:1.8em;font-weight:500;margin-bottom:30px;text-align:center}.form-group-settings{margin-bottom:22px}.form-group-settings label{color:var(--harmony-text-secondary);display:block;font-size:.9em;font-weight:500;margin-bottom:8px}.form-group-settings input[type=email],.form-group-settings input[type=password],.form-group-settings input[type=text]{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:5px;box-sizing:border-box;color:var(--harmony-text-primary);font-size:1em;padding:12px 15px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group-settings input:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d34d;outline:none}.settings-divider{border:none;border-top:1px solid var(--harmony-border);margin:25px 0}.settings-info-text{font-size:.85em;line-height:1.5;margin-bottom:15px}.settings-avatar-section{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;gap:20px;margin-bottom:25px;padding-bottom:25px}.settings-avatar-preview-container{background-color:var(--harmony-bg-light);border:2px solid var(--harmony-border);border-radius:50%;flex-shrink:0;height:100px;overflow:hidden;width:100px}.settings-avatar-upload input[type=file]{color:var(--harmony-text-secondary);font-size:.9em}.settings-avatar-upload input[type=file]::file-selector-button{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:4px;color:var(--harmony-text-primary);cursor:pointer;font-size:.9em;font-weight:500;margin-right:10px;padding:6px 14px;transition:background-color .2s ease}.settings-avatar-upload input[type=file]::file-selector-button:hover{background-color:var(--harmony-border)}#settingsAvatarPreview{height:100%;object-fit:cover;width:100%}.settings-avatar-upload{flex-grow:1}.settings-avatar-upload label{color:var(--harmony-text-secondary);display:block;font-size:.9em;font-weight:500;margin-bottom:8px}.settings-avatar-upload .form-message{font-size:.85em;margin-top:10px;padding:8px}.settings-back-link{background-color:initial;border:1px solid var(--harmony-text-subtle);border-radius:5px;box-sizing:border-box;color:var(--harmony-text-secondary);font-size:.9em;font-weight:500;justify-content:center;margin:20px 0 0;padding:10px 18px;text-decoration:none;transition:background-color .2s ease,transform .1s ease,color .2s ease,border-color .2s ease;width:100%}.settings-back-link:hover{background-color:var(--harmony-bg-light);border-color:var(--harmony-text-secondary);color:var(--harmony-text-primary);transform:scale(1.03)}.settings-back-link i{margin-right:8px}.list-view-container{display:flex;flex-direction:column;gap:8px}.list-view-item{grid-gap:15px;align-items:center;border-radius:6px;cursor:pointer;display:grid;gap:15px;grid-template-columns:40px 50px 1fr 1fr 100px 44px;padding:10px;transition:background-color .2s ease}.list-view-item:hover{background-color:var(--harmony-bg-light)}.list-view-item .list-item-index{color:var(--harmony-text-subtle);font-size:1.1em;text-align:center}.list-view-item:hover .list-item-index{display:none}.list-view-item .list-item-play-button{color:var(--harmony-text-primary);display:none;font-size:1.1em;text-align:center}.list-view-item:hover .list-item-play-button{display:block}.list-view-item .list-item-cover{border-radius:4px;height:40px;object-fit:cover;width:40px}.list-view-item .list-item-info{overflow:hidden}.list-view-item .list-item-title{color:var(--harmony-text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-view-item .list-item-album,.list-view-item .list-item-artist{color:var(--harmony-text-secondary);font-size:.9em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-view-item .list-item-album a,.list-view-item .list-item-artist a{color:inherit;text-decoration:none}.list-view-item .list-item-album a:hover,.list-view-item .list-item-artist a:hover{text-decoration:underline}.list-view-item .list-item-plays{color:var(--harmony-text-subtle);font-size:.9em;text-align:right}.list-item-more{align-items:center;display:flex;justify-content:flex-end}.list-item-more-btn{align-items:center;background-color:initial;border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:1em;height:32px;justify-content:center;opacity:0;transition:opacity .2s ease,background-color .2s ease;width:32px}.list-view-item:hover .list-item-more-btn{opacity:1}.list-item-more-btn:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.admin-user-list{display:flex;flex-direction:column;gap:14px}.admin-user-item{grid-gap:20px;align-items:center;background:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:12px;display:grid;gap:20px;grid-template-columns:60px 1fr auto auto;padding:16px 18px;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.admin-user-item:hover{border-color:var(--riffy-accent-purple);box-shadow:var(--harmony-shadow-md);transform:translateY(-2px)}.admin-user-avatar,.admin-user-avatar-wrap{height:60px;width:60px}.admin-user-avatar{background:var(--harmony-bg-medium);border:2px solid var(--harmony-border);border-radius:50%;object-fit:cover}.admin-user-main{min-width:0}.admin-user-name-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.admin-user-name{color:var(--harmony-text-primary);font-size:1.05em;font-weight:600}.admin-user-role{border-radius:20px;display:inline-block;font-size:.72em;font-weight:600;letter-spacing:.5px;padding:3px 12px;text-transform:uppercase}.admin-user-role-user{background:var(--harmony-bg-overlay-medium);color:var(--harmony-text-secondary)}.admin-user-role-moderator{background:#7b56d340;color:var(--riffy-modal-accent-purple)}.admin-user-role-admin{background:#e5393533;color:#ef9a9a}.admin-user-sub{align-items:center;color:var(--harmony-text-secondary);display:flex;flex-wrap:wrap;font-size:.92em;gap:10px;margin-top:4px}.admin-user-visibility{border-radius:12px;font-size:.78em;padding:2px 10px}.admin-user-visibility.public{background:#38a1692e;color:#7bd0a2}.admin-user-visibility.private{background:#b7791f2e;color:#e6b96b}.admin-user-date{color:var(--harmony-text-subtle);font-size:.82em;margin-top:6px}.admin-user-date i{margin-right:5px}.admin-user-controls{align-items:center;display:flex}.admin-user-role-select{background:var(--harmony-bg-dark);border:1px solid var(--harmony-border);border-radius:8px;color:var(--harmony-text-primary);cursor:pointer;font-size:.9em;outline:none;padding:7px 12px;transition:border-color .2s ease}.admin-user-role-select:hover{border-color:var(--riffy-accent-purple)}.admin-user-self-note{background:var(--harmony-bg-overlay-medium);border-radius:16px;color:var(--harmony-text-secondary);font-size:.85em;padding:6px 14px;white-space:nowrap}.friend-action-btn.edit{background:#7b56d333;color:var(--riffy-modal-accent-purple)}.friend-action-btn.edit:hover{background:var(--riffy-accent-purple);color:#fff;transform:scale(1.1)}.admin-user-item .friend-actions{display:flex;gap:8px}.admin-modal-overlay{align-items:center;animation:fadeIn .15s ease;background:var(--modal-backdrop-bg);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.admin-modal{animation:modalSlideUp .2s ease;background:var(--modal-bg);border:1px solid var(--harmony-border);border-radius:14px;box-shadow:var(--harmony-shadow-md);max-height:90vh;max-width:100%;overflow-y:auto;width:460px}.admin-modal-header{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;justify-content:space-between;padding:18px 22px}.admin-modal-header h3{color:var(--harmony-text-primary);font-size:1.15em;margin:0}.admin-modal-close{background:var(--harmony-bg-overlay-medium);border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;height:32px;transition:background-color .2s ease,color .2s ease;width:32px}.admin-modal-close:hover{background:#e53935;color:#fff}.admin-modal-body{padding:18px 22px 22px}.admin-modal-body .form-group-settings{margin-bottom:16px}.admin-modal-body .form-group-settings label{display:block;font-size:.9em;margin-bottom:6px}.admin-modal-body input[type=email],.admin-modal-body input[type=password],.admin-modal-body input[type=text],.admin-modal-body select{background:var(--input-bg);border:1px solid var(--harmony-border);border-radius:8px;color:var(--harmony-text-primary);font-size:.95em;outline:none;padding:10px 12px;transition:border-color .2s ease;width:100%}.admin-modal-body input:focus,.admin-modal-body select:focus{border-color:var(--riffy-accent-purple)}.admin-modal-hint{color:var(--harmony-text-subtle);font-size:.8em;margin:6px 0 0}.admin-edit-checkbox{align-items:center;cursor:pointer;display:flex;gap:10px}.admin-edit-checkbox input{accent-color:var(--riffy-accent-purple);height:17px;width:17px}.admin-avatar-upload{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.admin-avatar-upload-img{background:var(--harmony-bg-medium);border:2px solid var(--harmony-border);border-radius:50%;height:64px;object-fit:cover;width:64px}.admin-avatar-upload-btn{align-items:center;background:var(--harmony-bg-overlay-light);border:1px solid var(--harmony-border);border-radius:8px;color:var(--harmony-text-primary);cursor:pointer;display:inline-flex;gap:8px;padding:8px 14px;transition:border-color .2s ease}.admin-avatar-upload-btn:hover{border-color:var(--riffy-accent-purple)}.admin-avatar-file-name{color:var(--harmony-text-subtle);font-size:.8em;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.admin-modal-btn{border:none;border-radius:8px;cursor:pointer;font-size:.95em;font-weight:500;padding:10px 20px;transition:transform .1s ease,opacity .2s ease}.admin-modal-btn.ghost{background:var(--harmony-bg-overlay-medium);color:var(--harmony-text-secondary)}.admin-modal-btn.ghost:hover{background:var(--harmony-bg-overlay-light);color:var(--harmony-text-primary)}.admin-modal-btn.primary{background:var(--riffy-accent-purple);color:#fff}.admin-modal-btn.primary:hover{background:var(--riffy-accent-purple-hover)}.admin-modal-btn:disabled{cursor:not-allowed;opacity:.6}.admin-download-btn{align-items:center;background:var(--riffy-accent-purple);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.95em;font-weight:500;gap:8px;justify-content:center;padding:10px 18px;transition:transform .1s ease,opacity .2s ease,background .2s ease}.admin-download-btn:hover{background:var(--riffy-accent-purple-hover)}.admin-download-btn:active{transform:scale(.98)}.admin-download-btn:disabled{cursor:not-allowed;opacity:.6}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.delete-mode-active .artist-list-card,.delete-mode-active .playlist-overview-card,.delete-mode-active .song-card{animation:jiggleAnimation .2s ease-in-out infinite}.album-overview-card .delete-album-btn,.artist-list-card .delete-artist-btn,.song-card .delete-song-btn{align-items:center;background-color:#e53935;border:2px solid var(--harmony-bg-medium);border-radius:50%;color:#fff;cursor:pointer;display:none;font-size:.9em;height:28px;justify-content:center;position:absolute;right:-8px;top:-8px;transition:transform .2s ease,background-color .2s ease;width:28px;z-index:10}.album-overview-card .delete-album-btn:hover,.artist-list-card .delete-artist-btn:hover,.song-card .delete-song-btn:hover{background-color:#c62828;transform:scale(1.1)}.delete-mode-active .artist-list-card .delete-artist-btn,.delete-mode-active .playlist-overview-card .delete-album-btn,.delete-mode-active .song-card .delete-song-btn{display:flex}.loading-placeholder{align-items:center;display:flex;font-size:1em;justify-content:center;min-height:150px}.loading-placeholder,.no-content-message{color:var(--harmony-text-subtle);font-style:italic;width:100%}.error-track,.no-content-message{padding:20px;text-align:center}.error-track{color:#e57373;font-weight:500}@media (max-width:768px){.lyrics-modal-content{width:70%}.list-view-item{gap:10px;grid-template-areas:"index cover title plays more" "index cover artist plays more";grid-template-columns:30px 40px 1fr auto 36px}.list-view-item .list-item-index,.list-view-item .list-item-play-button{grid-area:index}.list-view-item .list-item-cover{grid-area:cover}.list-view-item .list-item-info{grid-area:title}.list-view-item .list-item-info .list-item-artist{grid-area:artist}.list-view-item .list-item-album{display:none}.list-view-item .list-item-plays{grid-area:plays;justify-self:end}.list-item-more{grid-area:more}.list-item-more-btn{opacity:1}}@media (max-width:600px){.settings-form-container{margin:15px auto;padding:20px}.settings-form-container h2{font-size:1.5em;margin-bottom:20px}.form-group-settings input[type=email],.form-group-settings input[type=password],.form-group-settings input[type=text]{font-size:.95em;padding:10px 12px}.riffy-button-primary{font-size:.95em;padding:10px 15px}}.player-more-menu-item .fa-stack{display:inline-block;height:1em;line-height:1em;margin-right:8px;position:relative;vertical-align:middle;width:1.25em}.player-more-menu-item .fa-bars{transform:scale(.9)}.player-more-menu-item .fa-arrow-up-from-bracket{font-size:1.1em}.artist-list-card a,.playlist-overview-card a,.song-card a{color:inherit;text-decoration:none}.artist-list-card-name a:hover,.playlist-overview-card-info h3 a:hover,.song-card-info h3 a:hover{text-decoration:underline}.player-left .player-placeholder{color:var(--harmony-text-subtle);font-size:.9em;padding-left:10px}.audio-player-riffy.compact.disabled .control-btn-compact,.audio-player-riffy.compact.disabled .player-action-btn,.audio-player-riffy.compact.disabled .player-right .control-btn-compact{color:var(--harmony-text-subtle)!important;cursor:not-allowed;opacity:.4}.audio-player-riffy.compact.disabled .control-btn-compact:hover{color:var(--harmony-text-subtle)!important;transform:none}.audio-player-riffy.compact.disabled .progress-bar-container-compact{cursor:default}#profile-page-container{margin-left:-24px;margin-right:-24px;margin-top:-24px}.profile-banner{align-items:flex-end;background-position:50%;background-size:cover;box-sizing:border-box;display:flex;height:300px;padding:0 40px 20px;position:relative;width:100%}.profile-banner-overlay{background:linear-gradient(0deg,#121212f2 10%,#121212b3 40%,#1212121a 80%,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}[data-theme=light] .profile-banner-overlay{background:linear-gradient(to top,var(--harmony-bg-dark) 15%,#f4f6f8b3 45%,#0000 100%)}.profile-header-content{align-items:flex-end;display:flex;gap:25px;position:relative;width:100%;z-index:2}.profile-avatar{background-color:var(--harmony-bg-light);border:4px solid var(--harmony-bg-dark);border-radius:50%;box-shadow:0 4px 15px #0006;height:100%;object-fit:cover;width:100%}[data-theme=light] .profile-avatar{box-shadow:var(--harmony-shadow-md)}.profile-user-info{flex-grow:1;margin-bottom:10px}.profile-user-info h1{color:var(--harmony-text-primary);font-size:3.5em;font-weight:700;line-height:1.1;margin:0 0 15px;text-shadow:0 2px 5px #00000080}[data-theme=light] .profile-user-info h1{text-shadow:0 1px 2px #0000001a}.profile-stats{color:var(--harmony-text-secondary);display:flex;gap:30px}.profile-stat-item{text-align:left}.profile-stat-item span{color:var(--harmony-text-primary);font-size:1.1em;font-weight:500}.profile-stat-item p{color:var(--harmony-text-subtle);font-size:.8em;letter-spacing:.5px;margin:2px 0 0;text-transform:uppercase}.profile-actions{align-items:center;display:flex;gap:12px;margin-bottom:10px}.profile-tabs-container{padding:20px 40px}.profile-tabs-nav{border-bottom:1px solid var(--harmony-border);display:flex;margin-bottom:25px}.profile-tab-button{background:none;border:none;border-bottom:3px solid #0000;color:var(--harmony-text-secondary);cursor:pointer;font-size:1.1em;font-weight:500;margin-right:15px;padding:10px 20px;transition:color .2s ease,border-bottom-color .2s ease}.profile-tab-button.active{border-bottom-color:var(--riffy-accent-purple)}.profile-tab-button.active,.profile-tab-button:not(.active):hover{color:var(--harmony-text-primary)}.profile-tab-content{display:none}.profile-tab-content.active{display:block}.artist-name-compact a{color:var(--harmony-text-secondary);text-decoration:none;transition:color .2s ease}.artist-name-compact a:hover{color:var(--harmony-text-primary);text-decoration:underline}.settings-section-title{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.2em;font-weight:500;margin-bottom:20px;margin-top:0;padding-bottom:15px}.settings-theme-section{margin-bottom:25px}.theme-options{grid-gap:20px;gap:20px}.theme-option{position:relative}.theme-option input[type=radio]{height:0;opacity:0;position:absolute;width:0}.theme-preview{align-items:center;border:2px solid var(--harmony-border);border-radius:6px;overflow:hidden;position:relative;transition:border-color .2s ease,box-shadow .2s ease;width:120px}.theme-option input[type=radio]:checked+.theme-preview{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px var(--riffy-accent-purple)}.theme-preview .theme-name{background-color:#0000004d;border-radius:4px;color:#fff;font-size:.9em;font-weight:500;padding:4px 10px}.theme-preview.dark{background-color:#181818}.theme-preview.light{background-color:#fff}.theme-preview.light .theme-name{background-color:#ffffff80;border:1px solid var(--harmony-border);color:#050505}.theme-preview.night-tokyo{background-color:#1a1a2e;border-color:#4a4a7a}.theme-preview.night-tokyo .theme-name{background-color:#f9267266;border:none;color:#e0f2f1}.settings-avatar-section{border-bottom:none;padding-bottom:0}.theme-preview.cyberpunk-neon{background-color:#0b0c10;border-color:#45a29e}.theme-preview.cyberpunk-neon .theme-name{background-color:#fcee0a66;border:none;color:#e5e5e5;text-shadow:0 0 5px #000000b3}.settings-section-link{align-items:center;background-color:var(--harmony-bg-light);border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:25px;padding:12px 15px;transition:background-color .2s ease}.settings-section-link:hover{background-color:var(--harmony-border)}.settings-section-link span{color:var(--harmony-text-primary);font-weight:500}.settings-section-link i{color:var(--harmony-text-secondary);margin-right:12px}.settings-section-link i.fa-chevron-right{margin-right:0}.settings-back-link-internal{align-items:center;background:none;border:none;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:.9em;font-weight:500;margin-bottom:20px;padding:5px 0;transition:color .2s ease}.settings-back-link-internal i{margin-right:8px}.settings-back-link-internal:hover{color:var(--harmony-text-primary)}.theme-preview.pastel-soft{background-color:#fdf8f5;border-color:#eae0db}.theme-preview.pastel-soft .theme-name{background-color:#94d1be80;border:1px solid #5d504a1a;color:#5d504a}.theme-preview.glassmorphism{background:linear-gradient(135deg,#1a0f2e,#079);border-color:#fff3}.theme-preview.glassmorphism .theme-name{background-color:#1e1e2d66;border:1px solid #ffffff26;color:#f5f5f5}.theme-preview.glitch-tech{background-color:#0a0a0a;border-color:#2dcc70}.theme-preview.glitch-tech .theme-name{background-color:#2dcc701a;border:1px solid #2dcc70;color:#2dcc70;font-family:Roboto Mono,monospace;text-transform:uppercase}.profile-banner-actions{display:flex;gap:10px;opacity:0;position:absolute;right:20px;top:20px;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;z-index:3}.profile-banner:hover .profile-banner-actions{opacity:1;visibility:visible}.banner-action-btn{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#121212b3;border:1px solid #fff3;border-radius:5px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9em;font-weight:500;gap:8px;padding:8px 15px;transition:background-color .2s ease,transform .1s ease}.banner-action-btn:hover{background-color:#121212e6;transform:scale(1.03)}.banner-action-btn.remove:hover{background-color:#d9534f;border-color:#d43f3a}.cropper-modal{align-items:center;background-color:var(--modal-backdrop-bg);display:flex;height:100%;justify-content:center;left:0;overflow:auto;position:fixed;top:0;width:100%;z-index:2000}.cropper-modal-content{background-color:var(--modal-bg);border:1px solid var(--harmony-border);border-radius:12px;box-shadow:var(--harmony-shadow-lg);display:flex;flex-direction:column;max-height:90vh!important;max-width:700px;position:relative;width:90%}.cropper-modal-header{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;justify-content:space-between;padding:15px 25px}.cropper-modal-header h2{color:var(--harmony-text-primary);font-size:1.2em;font-weight:500;margin:0}.cropper-modal-body{background-color:var(--harmony-bg-dark);flex:1 1;min-height:0;overflow-y:auto;padding:20px;text-align:center}.ReactCrop__crop-selection{border:2px dashed #ffffffb3}.cropper-modal-footer{background-color:var(--modal-bg);border-top:1px solid var(--harmony-border);display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;padding:15px 25px}.banner-confirmation-bar{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#121212d9;border:1px solid #ffffff1a;border-radius:8px;box-shadow:0 4px 15px #00000080;color:#fff;display:flex;gap:20px;left:50%;padding:10px 20px;position:absolute;top:20px;transform:translateX(-50%);z-index:1000}.banner-confirmation-bar span{font-size:.95em;font-weight:500}.banner-confirmation-bar .confirmation-buttons{display:flex;gap:10px}.profile-avatar-container{border-radius:50%;cursor:pointer;flex-shrink:0;height:180px;position:relative;width:180px}.profile-avatar-overlay{align-items:center;background-color:#00000080;border-radius:50%;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:100%}.profile-avatar-container:hover .profile-avatar-overlay{opacity:1}.profile-avatar-overlay i{font-size:2em;margin-bottom:8px}.profile-avatar-overlay span{font-size:.9em;font-weight:500}.avatar-confirmation-bar{background:linear-gradient(0deg,#000000b3 0,#0000);border-radius:0 0 90px 90px;bottom:0;gap:20px;height:50px;left:0;pointer-events:all;position:absolute;width:100%}.avatar-confirm-btn,.avatar-confirmation-bar{align-items:center;display:flex;justify-content:center}.avatar-confirm-btn{background-color:#fffc;border:none;border-radius:50%;color:#111;cursor:pointer;font-size:1em;height:32px;transition:transform .2s ease,background-color .2s ease;width:32px}.avatar-confirm-btn:hover{background-color:#fff;transform:scale(1.1)}.avatar-confirm-btn.save{color:#4caf50}.avatar-confirm-btn.save:hover{background-color:#4caf50;color:#fff}.avatar-confirm-btn.cancel{color:#f44336}.avatar-confirm-btn.cancel:hover{background-color:#f44336;color:#fff}.privacy-setting-item{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;justify-content:space-between;padding:15px 0}.privacy-setting-item:last-child{border-bottom:none}.privacy-setting-info h4{color:var(--harmony-text-primary);font-size:1em;font-weight:500;margin:0 0 5px}.privacy-setting-info p{color:var(--harmony-text-secondary);font-size:.85em;margin:0;max-width:400px}.privacy-toggle-switch{height:28px;margin-left:20px;width:50px}.slider{background-color:var(--harmony-bg-light);bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:var(--harmony-text-secondary);bottom:4px;content:"";height:20px;left:4px;width:20px}input:checked+.slider{background-color:var(--riffy-accent-purple)}input:checked+.slider:before{background-color:#fff;transform:translateX(22px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.song-card.is-favorite{border:1px solid var(--riffy-accent-purple);box-shadow:0 0 8px #7b56d34d}.song-card-info{padding-right:25px}.favorite-icon-card{position:absolute;right:0;top:2px}.friends-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.friend-card{align-items:center;background-color:var(--harmony-bg-medium);border-radius:8px;display:flex;justify-content:space-between;padding:15px;transition:background-color .2s ease,box-shadow .2s ease}[data-theme=light] .friend-card{border:1px solid var(--harmony-border)}.friend-card:hover{background-color:var(--harmony-bg-light);box-shadow:var(--harmony-shadow-sm)}.friend-card-link{align-items:center;color:inherit;display:flex;flex-grow:1;gap:12px;overflow:hidden;text-decoration:none}.friend-avatar{background-color:var(--harmony-bg-light);border-radius:50%;flex-shrink:0;height:50px;object-fit:cover;width:50px}.friend-username{color:var(--harmony-text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-card-link:hover .friend-username{text-decoration:underline}.friend-actions{display:flex;gap:8px;margin-left:10px}.friend-action-btn{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1em;height:36px;justify-content:center;transition:background-color .2s ease,transform .1s ease;width:36px}.friend-action-btn.accept{background-color:#28a745;color:#fff}.friend-action-btn.accept:hover{background-color:#218838;transform:scale(1.1)}.friend-action-btn.remove{background-color:#dc3545;color:#fff}.friend-action-btn.remove:hover{background-color:#c82333;transform:scale(1.1)}.riffy-button-secondary-text-icon.pending{border-color:#0000;cursor:not-allowed}.riffy-button-secondary-text-icon.pending,.riffy-button-secondary-text-icon.pending:hover{background-color:var(--harmony-bg-overlay-medium);color:var(--harmony-text-subtle)}.stats-summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-bottom:40px}.stats-summary-card{background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:8px;padding:20px;text-align:center}.stats-summary-card i{color:var(--riffy-accent-purple);font-size:1.8em;margin-bottom:15px}.stats-summary-value{color:var(--harmony-text-primary);font-size:2em;font-weight:700;line-height:1.2}.stats-summary-label{color:var(--harmony-text-secondary);font-size:.9em}.plays-chart-block{margin-top:10px}.plays-chart{align-items:flex-end;display:flex;gap:4px;height:140px;margin-top:8px;padding:10px 0 0}.plays-chart-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:6px;height:100%;justify-content:flex-end;min-width:0}.plays-chart-bar{background:linear-gradient(180deg,var(--riffy-accent-purple),#7c3aed99);background:linear-gradient(180deg,var(--riffy-accent-purple),var(--riffy-accent-purple-rgb,#7c3aed99));border-radius:4px 4px 0 0;max-width:24px;min-height:3px;transition:height .3s ease;width:70%}.plays-chart-bar:hover{filter:brightness(1.2)}.plays-chart-day{color:var(--harmony-text-subtle);font-size:.7em;white-space:nowrap}.track-stats-dashboard{display:flex;flex-direction:column;gap:18px;margin-top:8px}.track-stats-head{align-items:center;background:linear-gradient(120deg,var(--harmony-bg-light),var(--harmony-bg-medium));border:1px solid var(--harmony-border);border-radius:12px;display:flex;flex-wrap:wrap;gap:16px;padding:16px}.track-stats-head-icon{align-items:center;background:linear-gradient(135deg,var(--riffy-accent-purple),#9e78f0);background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-modal-accent-purple,#9e78f0));border-radius:50%;box-shadow:var(--harmony-shadow-sm);color:#fff;display:flex;flex-shrink:0;font-size:1.4em;height:48px;justify-content:center;width:48px}.track-stats-head-info{flex-grow:1;min-width:0;overflow:hidden}.track-stats-head-title{color:var(--harmony-text-primary);font-size:1.35em;font-weight:700}.track-stats-head-sub,.track-stats-head-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-stats-head-sub{color:var(--harmony-text-secondary);font-size:.9em}.track-stats-head-badges{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.track-stats-badge{background:#ffffff1a;background:var(--harmony-bg-overlay-light,#ffffff1a);border:1px solid var(--harmony-border);border-radius:999px;color:var(--harmony-text-secondary);font-size:.75em;font-weight:600;letter-spacing:.04em;padding:5px 10px;text-transform:uppercase;white-space:nowrap}.track-stats-badge-approved{background:#28a74526;border-color:#28a74566;color:#4cd964}.track-stats-badge-pending{background:#ffb02e26;border-color:#ffb02e66;color:#ffb02e}.track-stats-badge-rejected{background:#e5393526;border-color:#e5393566;color:#ff6b68}.track-stats-badge-draft{background:#ffffff1a;background:var(--harmony-bg-overlay-light,#ffffff1a);color:var(--harmony-text-subtle)}.track-stats-badge-rating{background:#ffc10726;border-color:#ffc10766;color:#ffc107}.track-stats-badge-rating i{margin-right:4px}.track-stats-hero{background:radial-gradient(120% 160% at 50% 0,var(--harmony-bg-light),var(--harmony-bg-medium));border:1px solid var(--harmony-border);border-radius:12px;overflow:hidden;padding:32px 20px 24px;text-align:center}.track-stats-hero-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--riffy-accent-purple),#9e78f0);background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-modal-accent-purple,#9e78f0));-webkit-background-clip:text;background-clip:text;color:var(--harmony-text-primary);font-size:3em;font-weight:800;letter-spacing:-.01em;line-height:1.1}.track-stats-hero-label{color:var(--harmony-text-secondary);font-size:.95em;letter-spacing:.06em;margin-top:6px;text-transform:uppercase}.track-stats-hero-bar{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:26px}.track-stats-hero-stat{display:flex;flex-direction:column;gap:3px;min-width:110px}.track-stats-hero-stat-value{color:var(--harmony-text-primary);font-size:1.25em;font-weight:700}.track-stats-hero-stat-label{color:var(--harmony-text-subtle);font-size:.78em;letter-spacing:.05em;text-transform:uppercase}.track-stats-hero-divider{align-self:stretch;background-color:var(--harmony-border);min-height:30px;width:1px}.track-stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.track-stats-card{background:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:12px;box-shadow:var(--harmony-shadow-sm);padding:20px 14px;text-align:center;transition:transform .15s ease,box-shadow .15s ease}.track-stats-card:hover{border-color:var(--riffy-accent-purple);box-shadow:var(--harmony-shadow-md);transform:translateY(-2px)}.track-stats-card i{color:var(--riffy-accent-purple);font-size:1.6em;margin-bottom:12px}.track-stats-card-value{color:var(--harmony-text-primary);font-size:1.6em;font-weight:700;line-height:1.2;word-break:break-word}.track-stats-card-label{color:var(--harmony-text-secondary);font-size:.82em;margin-top:4px}.track-stats-engagement{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.track-stats-engagement-metric{background:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:12px;padding:18px}.track-stats-engagement-head{align-items:baseline;display:flex;gap:10px;justify-content:space-between;margin-bottom:12px}.track-stats-engagement-title{color:var(--harmony-text-primary);font-size:.95em;font-weight:600}.track-stats-engagement-value{color:var(--riffy-accent-purple);font-size:1.2em;font-weight:700}.track-stats-engagement-track{background:#ffffff1a;background:var(--harmony-bg-overlay-light,#ffffff1a);border-radius:999px;height:8px;overflow:hidden}.track-stats-engagement-fill{background:linear-gradient(90deg,var(--riffy-accent-purple),#9e78f0);background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-modal-accent-purple,#9e78f0));border-radius:999px;height:100%;transition:width .3s ease}.track-stats-engagement-fill-like{background:linear-gradient(90deg,#ec4899,#f9a8d4)}.track-stats-engagement-sub{color:var(--harmony-text-subtle);font-size:.82em;line-height:1.4;margin-top:10px}.track-stats-chart-block{background:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:12px;padding:18px 16px 14px}.track-stats-chart-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:14px}.track-stats-chart-title{color:var(--harmony-text-primary);font-size:1em;font-weight:600}.track-stats-chart-peak{align-items:center;background:#ff6b601f;border:1px solid #ff6b604d;border-radius:999px;color:#ff6b60;display:inline-flex;font-size:.8em;gap:6px;padding:4px 10px}.track-stats-chart{align-items:flex-end;border-bottom:1px solid var(--harmony-border);display:flex;gap:5px;height:160px;padding:10px 6px 0}.track-stats-chart-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:5px;height:100%;justify-content:flex-end;min-width:0;position:relative}.track-stats-chart-bar{background:linear-gradient(180deg,var(--riffy-accent-purple),#9e78f0);background:linear-gradient(180deg,var(--riffy-accent-purple),var(--riffy-modal-accent-purple,#9e78f0));border-radius:4px 4px 0 0;max-width:26px;min-height:2px;transition:height .3s ease,filter .15s ease;width:70%}.track-stats-chart-col:hover .track-stats-chart-bar{filter:brightness(1.25)}.track-stats-chart-col.is-peak .track-stats-chart-bar{background:linear-gradient(180deg,#ff6b60,#ff9f43);box-shadow:0 0 12px #ff6b6073}.track-stats-chart-day{color:var(--harmony-text-subtle);font-size:.65em;white-space:nowrap}.track-stats-chart-tooltip{background:var(--harmony-bg-dark);border:1px solid var(--harmony-border);border-radius:6px;bottom:calc(100% - 8px);color:var(--harmony-text-primary);font-size:.72em;font-weight:600;left:50%;opacity:0;padding:3px 8px;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(4px);transition:opacity .15s ease,transform .15s ease;white-space:nowrap;z-index:5}.track-stats-chart-col:hover .track-stats-chart-tooltip{opacity:1;transform:translateX(-50%) translateY(0)}@media (max-width:768px){.track-stats-engagement{grid-template-columns:1fr}.track-stats-hero-bar{gap:8px}.track-stats-hero-value{font-size:2.2em}}.stats-lists-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr 1fr}.stats-list-section h3{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.2em;margin-bottom:15px;padding-bottom:10px}.stats-list-item{align-items:center;border-radius:6px;display:flex;gap:15px;padding:10px;text-decoration:none;transition:background-color .2s ease}.stats-list-item img,.stats-list-item:hover{background-color:var(--harmony-bg-light)}.stats-list-item img{border-radius:4px;flex-shrink:0;height:45px;object-fit:cover;width:45px}.stats-item-info{flex-grow:1;overflow:hidden}.stats-item-title{color:var(--harmony-text-primary);font-weight:500}.stats-item-subtitle,.stats-item-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-item-subtitle{color:var(--harmony-text-secondary);font-size:.85em}.stats-item-value{color:var(--harmony-text-secondary);font-size:.9em;font-weight:500;margin-left:auto;padding-left:10px}@media (max-width:992px){.stats-lists-container{grid-template-columns:1fr 1fr}}@media (max-width:768px){.stats-lists-container{grid-template-columns:1fr}}.wiki-intro{background-color:var(--harmony-bg-medium);border-left:4px solid var(--riffy-accent-purple);border-radius:8px;color:var(--harmony-text-secondary);font-size:1em;line-height:1.7;margin-bottom:30px;max-width:800px;padding:15px}.wiki-section{margin-bottom:40px}.wiki-section h2{align-items:center;border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);display:flex;font-size:1.6em;font-weight:700;gap:12px;margin-bottom:20px;padding-bottom:10px}.wiki-tracks-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.wiki-track-card{background-color:var(--harmony-bg-medium);border:1px solid #0000;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}[data-theme=light] .wiki-track-card{border-color:var(--harmony-border)}.wiki-track-card:hover{box-shadow:var(--harmony-shadow-lg);transform:translateY(-4px)}.wiki-card-cover{padding-top:100%;position:relative}.wiki-card-cover img{background-color:var(--harmony-bg-light);height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.wiki-card-source{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0009;border-radius:50%;color:#fff;display:flex;font-size:1.1em;height:30px;justify-content:center;position:absolute;right:10px;top:10px;width:30px}.wiki-card-info{display:flex;flex-direction:column;flex-grow:1;padding:15px}.wiki-card-title{color:var(--harmony-text-primary);font-size:1em;font-weight:500;margin:0 0 5px}.wiki-card-artist,.wiki-card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-card-artist{color:var(--harmony-text-secondary);font-size:.85em;margin:0 0 12px}.wiki-card-artist a{color:inherit;text-decoration:none}.wiki-card-artist a:hover{text-decoration:underline}.wiki-card-stats{color:var(--harmony-text-subtle);display:flex;flex-direction:column;flex-grow:1;font-size:.8em;gap:4px;margin-bottom:15px}.wiki-card-stats span{align-items:center;display:flex;gap:6px}.wiki-card-action{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:5px;color:var(--harmony-text-primary);display:block;font-weight:500;margin-top:auto;padding:10px;text-align:center;text-decoration:none;transition:background-color .2s ease,color .2s ease,border-color .2s ease;width:100%}.wiki-card-action:hover{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);color:#fff}.wiki-card-action i{font-size:.9em;margin-left:8px}.wiki-artist-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.wiki-artist-card{align-items:center;background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:8px;color:inherit;display:flex;flex-direction:column;padding:20px;text-align:center;text-decoration:none;transition:all .2s ease-in-out}.wiki-artist-card:hover{border-color:var(--riffy-accent-purple);box-shadow:var(--harmony-shadow-lg);transform:translateY(-5px)}.wiki-artist-avatar{background-color:var(--harmony-bg-light);border:3px solid var(--harmony-border);border-radius:50%;height:140px;margin-bottom:15px;object-fit:cover;width:140px}.wiki-artist-info h3{color:var(--harmony-text-primary);font-size:1.2em;margin:0 0 8px}.wiki-artist-info p{color:var(--harmony-text-secondary);font-size:.9em;line-height:1.5;margin:0}.external-links-list{display:flex;flex-wrap:wrap;gap:15px;list-style:none;padding-left:0}.external-link-button{background-color:var(--harmony-bg-light)!important;border:1px solid var(--harmony-border)!important;color:var(--harmony-text-primary)!important;transition:all .2s ease!important}.external-link-button:hover{background-color:var(--harmony-border)!important;border-color:var(--harmony-text-secondary)!important;transform:scale(1.05)!important}.judges-rating-container{align-items:center;background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:8px;display:flex;gap:20px;padding:20px}.judges-rating-score{color:var(--riffy-accent-purple);flex-shrink:0;font-size:2.5em;font-weight:700}.judges-rating-review p{color:var(--harmony-text-secondary);font-style:italic;line-height:1.6;margin:0}.comment-item{margin-bottom:20px}.comment-item:last-child{margin-bottom:0}.wiki-search-bar{margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:700px}.wiki-search-bar input{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:8px 0 0 8px;border-right:none;color:var(--harmony-text-primary);flex-grow:1;font-size:1.1em;padding:14px 20px}.wiki-search-bar input:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d333;outline:none}.wiki-search-bar button{background-color:var(--riffy-accent-purple);border:1px solid var(--riffy-accent-purple);border-radius:0 8px 8px 0;color:#fff;cursor:pointer;font-size:1.2em;padding:0 25px;transition:background-color .2s}.wiki-search-bar button:hover{background-color:var(--riffy-accent-purple-hover)}.wiki-search-bar button:disabled{background-color:var(--harmony-text-subtle);border-color:var(--harmony-text-subtle);cursor:not-allowed}.wiki-results-section{margin-bottom:30px}.wiki-results-section h3{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.5em;margin-bottom:20px;padding-bottom:10px}.wiki-search-result-item{background-color:var(--harmony-bg-medium);border-radius:6px;color:inherit;gap:15px;padding:12px;transition:background-color .2s}.wiki-tracks-list .wiki-search-result-item{margin-bottom:10px}.wiki-tracks-list img{border-radius:4px;flex-shrink:0;height:50px;object-fit:cover;width:50px}.wiki-artist-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.wiki-artist-grid .wiki-search-result-item{flex-direction:column;text-align:center}.wiki-artist-grid img{border-radius:50%;height:100px;object-fit:cover;width:100px}.wiki-search-item-info h4{color:var(--harmony-text-primary);font-size:1em;font-weight:500;margin:0 0 4px}.wiki-search-item-info p{color:var(--harmony-text-secondary);font-size:.85em;margin:0}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.fsp-overlay{align-items:center;animation:slideUp .5s cubic-bezier(.25,1,.5,1) forwards;background-color:var(--player-bg);box-sizing:border-box;color:var(--harmony-text-primary);display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;padding:20px 40px 30px;position:fixed;top:0;width:100vw;z-index:2000}.fsp-background{background-position:50%;background-size:cover;filter:blur(50px) brightness(.4);height:100%;opacity:.8;transform:scale(1.1);width:100%}.fsp-background,.fsp-overlay:after{left:0;position:absolute;top:0;z-index:-1}.fsp-overlay:after{background:radial-gradient(ellipse at center,#0000 0,#0000004d 100%);bottom:0;content:"";right:0}.fsp-footer,.fsp-header{align-items:center;display:flex;justify-content:space-between;max-width:700px;width:100%}.fsp-header{padding:8px 0;position:relative}.fsp-footer{flex-direction:column}.fsp-header-info{text-align:center}.fsp-header-info p{color:var(--harmony-text-subtle);font-size:.75em;letter-spacing:2px;margin:0;text-transform:uppercase}.fsp-header-info h3{color:var(--harmony-text-primary);font-size:.95em;font-weight:600;margin:6px 0 0}.fsp-action-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:1.2em;height:42px;justify-content:center;min-width:42px;padding:10px;transition:color .2s,transform .2s,background-color .2s}.fsp-action-btn:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary);transform:scale(1.08)}.fsp-action-btn.large{font-size:1.6em}.fsp-action-btn.small{font-size:1.1em}.fsp-action-btn.active{background-color:#00000040}.fsp-action-btn.active,.fsp-action-btn.active:hover{color:var(--riffy-accent-purple)}.fsp-action-btn:disabled{color:var(--harmony-text-subtle);cursor:not-allowed;transform:none}.fsp-content{align-items:center;display:flex;flex-grow:1;justify-content:center;padding:20px 0;width:100%}.fsp-cover-art-container{aspect-ratio:1/1;max-width:420px;width:100%}.fsp-cover-art{background-color:var(--harmony-bg-light);border-radius:20px;box-shadow:0 0 0 1px var(--harmony-border),0 20px 50px #0000008c;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.25,1,.5,1),box-shadow .4s ease;width:100%}.fsp-cover-art-container:hover .fsp-cover-art{box-shadow:0 0 0 1px var(--harmony-border),0 20px 60px #0009,0 0 40px -10px var(--riffy-accent-purple);transform:scale(1.02)}.fsp-track-info{margin-bottom:18px;max-width:700px;width:100%}.fsp-title-wrapper{align-items:center;display:flex;gap:20px;justify-content:space-between}.fsp-track-info h2{-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));color:#0000;flex-grow:1;font-size:1.8em;font-weight:700;letter-spacing:-.5px;line-height:1.2;margin:0}.fsp-track-info .fsp-artist{color:var(--harmony-text-secondary);font-size:1.1em;font-weight:400;letter-spacing:.3px;margin:6px 0 0}.fsp-track-info .fsp-artist a{color:inherit;text-decoration:none}.fsp-track-info .fsp-artist a:hover{color:var(--riffy-accent-purple);text-decoration:underline}.fsp-progress-wrapper{align-items:center;background-color:initial;border-radius:999px;cursor:pointer;display:flex;height:auto;margin-bottom:8px;overflow:visible;width:100%}.fsp-progress-wrapper .progress-slider-compact{margin:0;width:100%}.fsp-time-display{color:var(--harmony-text-subtle);font-size:.75em;justify-content:space-between}.fsp-controls,.fsp-time-display{display:flex;margin-bottom:15px;width:100%}.fsp-controls{align-items:center;gap:26px;justify-content:center}.fsp-control-btn{background:none;border:none;color:var(--harmony-text-primary);cursor:pointer;font-size:1.5em;transition:transform .2s,color .2s}.fsp-control-btn.secondary{color:var(--harmony-text-secondary);font-size:1.2em}.fsp-control-btn:hover{transform:scale(1.12)}.fsp-control-btn.secondary.active{color:var(--riffy-accent-purple)}.fsp-control-btn.play-pause{align-items:center;background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border-radius:50%;box-shadow:0 8px 24px -6px var(--riffy-accent-purple);color:#fff;display:flex;font-size:1.9em;height:74px;justify-content:center;transition:transform .2s,box-shadow .2s;width:74px}.fsp-control-btn.play-pause:hover{box-shadow:0 10px 30px -6px var(--riffy-accent-purple);transform:scale(1.06)}.fsp-control-btn.play-pause i.fa-play{margin-left:5px}.fsp-extra-actions{align-items:center;display:flex;height:40px;justify-content:space-between;max-width:700px;width:100%}.fsp-volume-control{align-items:center;display:flex;gap:12px;width:160px}.fsp-volume-slider{appearance:none;background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover) 0,var(--harmony-bg-light) 0);background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover) var(--vol,0),var(--harmony-bg-light) var(--vol,0));border-radius:999px;cursor:pointer;height:4px;outline:none;width:100%}.fsp-volume-slider::-moz-range-progress{background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border-radius:999px;height:100%}.fsp-volume-slider::-webkit-slider-thumb{appearance:none;background:var(--harmony-text-primary);border-radius:50%;cursor:pointer;height:14px;-webkit-transition:background-color .2s,transform .2s;transition:background-color .2s,transform .2s;width:14px}.fsp-volume-slider::-moz-range-thumb{background:var(--harmony-text-primary);border:none;border-radius:50%;cursor:pointer;height:14px;-moz-transition:background-color .2s,transform .2s;transition:background-color .2s,transform .2s;width:14px}.fsp-volume-slider:hover::-webkit-slider-thumb{background:var(--riffy-accent-purple);transform:scale(1.2)}.fsp-volume-slider:hover::-moz-range-thumb{background:var(--riffy-accent-purple);transform:scale(1.2)}.fsp-overlay{justify-content:flex-start}.fsp-main-content{grid-gap:40px;display:grid;flex-grow:1;gap:40px;grid-template-columns:1fr 0;max-width:1400px;min-height:0;padding:20px 0;transition:grid-template-columns .5s cubic-bezier(.25,1,.5,1);width:100%}.fsp-overlay.queue-view .fsp-main-content{grid-template-columns:1fr 400px}.fsp-content-left{align-items:center;display:flex;flex-direction:column;justify-content:center;min-width:0}.fsp-content-left .fsp-cover-art-container{aspect-ratio:1/1;margin:auto;max-width:450px;width:100%}.fsp-content-left .fsp-footer{margin-top:20px;max-width:700px;width:100%}.fsp-content-right{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(180deg,#0000002e,#0000001a);border:1px solid var(--harmony-border);border-radius:18px;box-shadow:var(--harmony-shadow-lg);display:flex;flex-direction:column;height:100%;opacity:0;overflow:hidden;transition:opacity .5s ease}.fsp-overlay.queue-view .fsp-content-right{opacity:1}.fsp-queue-container{height:100%;max-height:100vh;overflow-y:auto;padding:24px;scrollbar-color:var(--harmony-border) #0000;scrollbar-width:thin}.fsp-queue-container::-webkit-scrollbar{width:6px}.fsp-queue-container::-webkit-scrollbar-track{background:#0000}.fsp-queue-container::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:3px}.fsp-queue-container::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}.fsp-queue-section h3{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.1em;font-weight:600;margin:0 0 15px;padding-bottom:10px}.fsp-queue-item{align-items:center;border-radius:12px;cursor:pointer;display:flex;gap:15px;padding:12px;position:relative;transition:background-color .2s ease,transform .2s ease}.fsp-queue-item:hover{background-color:var(--harmony-bg-light);transform:translateX(3px)}.fsp-queue-item:hover .fsp-queue-item-play-icon{opacity:1}.fsp-queue-item.current{background-color:var(--harmony-bg-light);cursor:default}.fsp-queue-item-cover{border-radius:8px;flex-shrink:0;height:42px;object-fit:cover;width:42px}.fsp-queue-item-info{flex-grow:1;overflow:hidden}.fsp-queue-item-title{color:var(--harmony-text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fsp-queue-item.current .fsp-queue-item-title{color:var(--riffy-accent-purple)}.fsp-queue-item-artist{color:var(--harmony-text-secondary);font-size:.85em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fsp-queue-item-play-icon{align-items:center;background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border-radius:50%;box-shadow:0 4px 12px -2px var(--riffy-accent-purple);color:#fff;display:flex;font-size:.8em;height:30px;justify-content:center;left:33px;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .2s ease;width:30px}.fsp-queue-item-playing-icon{color:var(--riffy-accent-purple);font-size:1.1em;margin-left:auto}.lyrics-body-fsp{color:var(--harmony-text-secondary);font-size:.95em;line-height:1.9;padding:4px 8px 24px}.lyrics-body-fsp p{border-radius:10px;margin:0 0 2px;padding:5px 12px;transition:background-color .15s ease,color .15s ease}.lyrics-body-fsp p:hover{background-color:var(--harmony-bg-light)}.lyrics-body-fsp p:empty{display:none}.fsp-content-right .fsp-queue-section h3 i{color:var(--riffy-accent-purple);margin-right:8px}@media (max-width:992px){.fsp-overlay.queue-view .fsp-main-content{grid-template-columns:1fr 320px}}.fsp-header .more-menu-container{position:relative}.fsp-more-menu{left:0;position:absolute;right:auto;top:calc(100% + 10px);z-index:2001}.fsp-more-menu .player-more-submenu{z-index:2002}.control-btn-compact i.fa-repeat,.fsp-control-btn i.fa-repeat{align-items:center;display:inline-flex;justify-content:center;position:relative}.repeat-one-indicator-dot:before{color:currentColor;content:"1";font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.45em;font-weight:900;left:50%;line-height:1;position:absolute;top:50%;transform:translate(-50%,-50%)}.control-btn-compact .repeat-one-indicator-dot:before{font-size:.45em}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.queue-modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background-color:var(--modal-backdrop-bg);display:flex;height:100%;justify-content:flex-end;left:0;position:fixed;top:0;width:100%;z-index:1010}.queue-modal-content{animation:slideInFromRight .4s cubic-bezier(.25,1,.5,1) forwards;background-color:var(--harmony-bg-medium);border-left:1px solid var(--harmony-border);box-shadow:-5px 0 25px #0000004d;display:flex;flex-direction:column;height:100%;max-width:460px;position:relative;width:100%}.queue-modal-header{align-items:center;background-color:var(--harmony-bg-light);border-bottom:1px solid var(--harmony-border);display:flex;flex-shrink:0;justify-content:space-between;padding:16px 22px}.queue-modal-header h2{align-items:center;display:flex;font-size:1.2em;font-weight:700;gap:10px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-modal-header h2:before{background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));-webkit-background-clip:text;background-clip:text;color:#0000;content:"\f001";font-family:Font Awesome\ 6 Free;font-size:.9em;font-weight:900}.queue-modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:1.4em;height:34px;justify-content:center;transition:color .2s ease,transform .2s ease;width:34px}.queue-modal-close-btn:hover{color:var(--riffy-accent-purple);transform:rotate(90deg)}.queue-modal-body{flex-grow:1;overflow-x:hidden;overflow-y:auto;padding:20px;scrollbar-color:var(--harmony-border) #0000;scrollbar-width:thin}.queue-modal-body::-webkit-scrollbar{width:6px}.queue-modal-body::-webkit-scrollbar-track{background:#0000}.queue-modal-body::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:3px}.queue-modal-body::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}.queue-summary{align-items:center;background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-left:3px solid var(--riffy-accent-purple);border-radius:12px;display:flex;justify-content:space-between;margin-bottom:25px;padding:13px 16px}.queue-summary span{color:var(--harmony-text-secondary);font-size:.9em;font-weight:500}.queue-summary-actions{display:flex;gap:8px}.queue-summary-actions button{align-items:center;background:none;border:1px solid var(--harmony-border);border-radius:999px;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.8em;gap:6px;padding:6px 12px;transition:all .2s ease}.queue-summary-actions button:hover:not(:disabled){border-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}.queue-summary-actions button:disabled{cursor:not-allowed;opacity:.5}.queue-section{margin-bottom:20px}.queue-section h3{color:var(--harmony-text-secondary);font-size:.95em;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.queue-track-item{align-items:center;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;transition:background-color .2s ease,transform .2s ease}.queue-track-item:hover{transform:translateX(3px)}.queue-track-item.current,.queue-track-item:hover{background-color:var(--harmony-bg-light)}.queue-track-item:hover .queue-item-remove-btn{opacity:1}.queue-item-left{align-items:center;display:flex;gap:15px;overflow:hidden}.queue-item-index,.queue-item-play-icon{align-items:center;background-color:var(--harmony-bg-light);border-radius:50%;color:var(--harmony-text-subtle);display:inline-flex;flex-shrink:0;font-size:.85em;font-weight:600;height:24px;justify-content:center;text-align:center;width:24px}.queue-item-play-icon{background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));box-shadow:0 4px 10px -2px var(--riffy-accent-purple);color:#fff}.queue-item-cover{background-color:var(--harmony-bg-light);border-radius:8px;box-shadow:0 2px 8px #00000026;flex-shrink:0;height:46px;object-fit:cover;width:46px}.queue-item-info{overflow:hidden}.queue-item-title{color:var(--harmony-text-primary);font-size:.95em;font-weight:500;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-track-item.current .queue-item-title{color:var(--riffy-accent-purple)}.queue-item-artist{color:var(--harmony-text-secondary);font-size:.85em;margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-item-remove-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--harmony-text-subtle);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.9em;height:28px;justify-content:center;margin-left:10px;opacity:0;transition:opacity .2s ease,color .2s ease,background-color .2s ease;width:28px}.queue-item-remove-btn:hover{background-color:#e539351f;color:#e53935}.queue-modal-footer{border-top:1px solid var(--harmony-border);display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;padding:15px 20px}.notification-badge{align-items:center;background-color:#e53935;border:1px solid var(--header-bg);border-radius:50%;color:#fff;display:flex;font-size:.7em;font-weight:700;height:16px;justify-content:center;line-height:1;position:absolute;right:2px;top:2px;width:16px}.notifications-menu{display:flex;flex-direction:column;max-height:450px;width:380px}.notifications-header{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;flex-shrink:0;justify-content:space-between;padding:10px 15px}.notifications-header h3{font-size:1.1em;font-weight:500;margin:0}.clear-notifications-btn{background:none;border:none;color:var(--riffy-accent-purple);cursor:pointer;font-size:.85em;font-weight:500;padding:5px}.clear-notifications-btn:hover:not(:disabled){text-decoration:underline}.clear-notifications-btn:disabled{color:var(--harmony-text-subtle);cursor:not-allowed}.notifications-list{flex-grow:1;overflow-x:hidden;overflow-y:auto;scrollbar-color:var(--harmony-border) #0000;scrollbar-gutter:stable;scrollbar-width:thin}.notifications-list::-webkit-scrollbar{width:6px}.notifications-list::-webkit-scrollbar-track{background:#0000}.notifications-list::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:3px}.notifications-list::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}.notification-item{border-bottom:1px solid var(--harmony-border);display:flex;gap:12px;padding:12px 15px;text-decoration:none;transition:background-color .2s ease}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:var(--harmony-bg-light)}.notification-item.unread{background-color:var(--harmony-bg-medium);border-left:3px solid var(--riffy-accent-purple)}.notification-avatar{border-radius:50%;flex-shrink:0;height:40px;object-fit:cover;width:40px}.notification-content{display:flex;flex-direction:column}.notification-message{color:var(--harmony-text-secondary);font-size:.9em;line-height:1.4;margin:0}.notification-item.unread .notification-message{color:var(--harmony-text-primary);font-weight:500}.notification-time{color:var(--harmony-text-subtle);font-size:.8em;margin-top:4px}.no-notifications-message{font-size:.9em;padding:20px;text-align:center}.chat-body{gap:15px}.message-bubble{max-width:70%}.message-bubble p{margin:0 0 5px}.message-bubble span{color:var(--harmony-text-subtle);display:block;font-size:.75em;text-align:right}.message-bubble.sent{align-self:flex-end;background-color:var(--riffy-accent-purple);border-bottom-right-radius:4px;color:#fff}.message-bubble.sent span{color:#ffffffb3}.message-bubble.received{align-self:flex-start;background-color:var(--harmony-bg-light);border-bottom-left-radius:4px;color:var(--harmony-text-primary)}.chat-input-form input{padding:12px 15px}.messages-page-container{background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:8px;display:grid;grid-template-columns:320px 1fr;height:calc(100vh - 162px);overflow:hidden}.conversations-sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--harmony-border);display:flex;flex-direction:column}.conversations-header{border-bottom:1px solid var(--harmony-border);flex-shrink:0;padding:15px 20px}.conversations-header h3{font-size:1.2em;margin:0}.conversations-list{flex-grow:1;overflow-y:auto}.conversation-item{align-items:center;border-bottom:1px solid var(--harmony-border);cursor:pointer;display:flex;gap:12px;padding:12px 20px;transition:background-color .2s ease}.conversation-item:hover{background-color:var(--harmony-bg-light)}.conversation-item.active{background-color:var(--riffy-accent-purple)}.conversation-item.active .conversation-last-message,.conversation-item.active .conversation-username{color:#fff}.conversation-avatar{border-radius:50%;flex-shrink:0;height:45px;object-fit:cover;width:45px}.conversation-info{overflow:hidden}.conversation-username{color:var(--harmony-text-primary);font-weight:500;margin:0}.conversation-last-message{color:var(--harmony-text-secondary);font-size:.85em;margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-window{display:flex;flex-direction:column;height:100%}.chat-header{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;flex-shrink:0;gap:15px;padding:10px 20px;position:relative}.chat-header img{border-radius:50%;height:40px;object-fit:cover;width:40px}.chat-header h3{font-size:1.1em;margin:0}.chat-header .back-btn{background:none;border:none;color:var(--harmony-text-secondary);cursor:pointer;font-size:1.2em;margin-left:auto}.chat-header .back-btn:hover{color:var(--harmony-text-primary)}.chat-body{display:flex;flex-direction:column;flex-grow:1;gap:5px;overflow-y:auto;padding:20px}.message-bubble-wrapper{display:flex;flex-direction:column;gap:4px;max-width:70%}.message-bubble-wrapper.sent{align-items:flex-end;align-self:flex-end}.message-bubble-wrapper.received{align-items:flex-start;align-self:flex-start}.message-bubble{border-radius:18px;line-height:1.4;padding:10px 15px;width:fit-content}.message-bubble p{word-wrap:break-word;margin:0;white-space:pre-wrap}.message-time{color:var(--harmony-text-subtle);font-size:.75em;padding:0 8px}.message-bubble-wrapper.sent .message-bubble{background-color:var(--riffy-accent-purple);border-bottom-right-radius:4px;color:#fff}.message-bubble-wrapper.received .message-bubble{background-color:var(--harmony-bg-light);border-bottom-left-radius:4px;color:var(--harmony-text-primary)}.chat-input-form{border-top:1px solid var(--harmony-border);display:flex;flex-shrink:0;gap:10px;padding:15px 20px;position:relative}.chat-input-form input{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:20px;color:var(--harmony-text-primary);flex-grow:1;font-size:1em;padding:12px 20px}.chat-input-form input:focus{border-color:var(--riffy-accent-purple);outline:none}.chat-input-form button{background-color:var(--riffy-accent-purple);border:none;border-radius:50%;color:#fff;cursor:pointer;flex-shrink:0;font-size:1.1em;height:45px;transition:background-color .2s ease;width:45px}.chat-input-form button:hover{background-color:var(--riffy-accent-purple-hover)}.chat-input-form .share-btn{background-color:initial;border:1px solid var(--harmony-border);color:var(--harmony-text-secondary)}.chat-input-form .share-btn:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.no-chat-selected{align-items:center;color:var(--harmony-text-subtle);display:flex;flex-direction:column;height:100%;justify-content:center}.no-chat-selected i{font-size:4em;margin-bottom:20px}.share-btn-container{position:relative}.share-song-popover{background-color:var(--dropdown-bg);border:1px solid var(--harmony-border);border-radius:8px;bottom:100%;box-shadow:var(--harmony-shadow-lg);left:0;margin-bottom:10px;padding:10px;position:absolute;width:280px;z-index:10}.share-song-popover p{color:var(--harmony-text-subtle);font-size:.8em;margin:0 0 8px}.popover-song-item{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:10px;padding:8px;transition:background-color .2s ease}.popover-song-item:hover{background-color:var(--harmony-bg-light)}.popover-song-item img{border-radius:4px;height:32px;object-fit:cover;width:32px}.popover-song-item span{color:var(--harmony-text-primary);font-size:.9em;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-song-card{align-items:center;background-color:#0003;border-radius:12px;display:flex;gap:12px;max-width:300px;padding:10px}.message-bubble-wrapper.received .message-song-card{background-color:var(--harmony-bg-dark)}.message-song-cover{border-radius:6px;flex-shrink:0;height:50px;object-fit:cover;width:50px}.message-song-info{overflow:hidden}.message-song-title{font-weight:500;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-bubble-wrapper.sent .message-song-title{color:#fff}.message-bubble-wrapper.received .message-song-title{color:var(--harmony-text-primary)}.message-song-artist{font-size:.85em;margin:2px 0 0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-bubble-wrapper.sent .message-song-artist{color:#ffffffb3}.message-bubble-wrapper.received .message-song-artist{color:var(--harmony-text-secondary)}.message-song-play-btn{align-items:center;background-color:#fff;border:none;border-radius:50%;color:#000;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;margin-left:auto;transition:transform .2s ease;width:36px}.message-song-play-btn:hover{transform:scale(1.1)}.conversations-list::-webkit-scrollbar{display:none}.conversations-list{-ms-overflow-style:none;scrollbar-width:none}.share-track-item{align-items:center;background-color:var(--harmony-bg-light);border-radius:10px;cursor:pointer;display:flex;gap:5px;margin-top:2px;padding:5px;transition:background-color .2s ease}.notification-item:hover .share-track-item{background-color:var(--harmony-border)}.share-track-item:hover{background-color:var(--harmony-bg-medium)!important}.share-track-item img{border-radius:4px;flex-shrink:0;height:40px;object-fit:cover;width:40px}.share-track-info{flex-grow:1;overflow:hidden}.share-track-title{color:var(--harmony-text-primary);display:block;font-size:.9em;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-track-artist{color:var(--harmony-text-subtle);display:block;font-size:.8em}.share-track-play-btn{align-items:center;background-color:var(--riffy-accent-purple);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.8em;height:32px;justify-content:center;transition:transform .2s ease;width:32px}.share-track-play-btn:hover{transform:scale(1.1)}.signin-page .auth-form .form-group-extra{align-items:center;display:flex;font-size:.85em;justify-content:space-between;margin-bottom:25px;margin-top:-10px}.signin-page .auth-form .remember-me-label{align-items:center;color:#c0b8d0;cursor:pointer;display:flex;-webkit-user-select:none;user-select:none}[data-theme=light] .signin-page .auth-form .remember-me-label{color:var(--harmony-text-secondary)}.signin-page .auth-form .remember-me-label input[type=checkbox]{accent-color:var(--riffy-accent-purple);cursor:pointer;height:16px;margin-right:8px;width:16px}.signin-page .auth-form .terms-checkbox-label{align-items:flex-start;color:#c0b8d0;cursor:pointer;display:flex;font-size:.85em;line-height:1.45;-webkit-user-select:none;user-select:none}[data-theme=light] .signin-page .auth-form .terms-checkbox-label{color:var(--harmony-text-secondary)}.signin-page .auth-form .terms-checkbox-label input[type=checkbox]{accent-color:var(--riffy-accent-purple);cursor:pointer;flex-shrink:0;height:16px;margin-right:8px;margin-top:2px;width:16px}.signin-page .auth-form .terms-checkbox-label a{color:var(--riffy-accent-purple);text-decoration:none}.signin-page .auth-form .terms-checkbox-label a:hover{text-decoration:underline}.signin-page .auth-form .forgot-password-link{color:#a098b0;text-decoration:none;transition:color .2s ease}[data-theme=light] .signin-page .auth-form .forgot-password-link{color:var(--harmony-text-subtle)}.signin-page .auth-form .forgot-password-link:hover{color:var(--riffy-accent-purple);text-decoration:underline}.song-card-info{padding-right:20px;position:relative}.song-card-icons{align-items:center;display:flex;gap:8px;position:absolute;right:0;top:2px}.favorite-icon-card{color:var(--riffy-accent-purple);font-size:.9em;position:static}.lyrics-icon-card{color:var(--harmony-text-subtle);font-size:.8em}.track-info .artist-name{color:var(--harmony-text-secondary);font-size:1.2em;font-weight:400;margin-bottom:15px}.track-info .artist-name a{color:var(--harmony-text-secondary);text-decoration:none;transition:color .2s ease}.track-info .artist-name a:hover{color:var(--harmony-text-primary);text-decoration:underline}.track-details-section p{color:var(--harmony-text-secondary);font-size:.95em;line-height:1.6}.lyrics-text{background-color:var(--harmony-bg-medium);border-radius:8px;color:var(--harmony-text-secondary);line-height:1.8;padding:20px;white-space:pre-wrap}.comments-section{margin-top:20px}.comment-form{display:flex;flex-direction:column;gap:10px;margin-bottom:30px}.comment-form textarea{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;color:var(--harmony-text-primary);font-family:inherit;min-height:80px;padding:12px;resize:vertical;transition:border-color .2s ease}.comment-form textarea:focus{border-color:var(--riffy-accent-purple);outline:none}.comment-form button{align-self:flex-end;width:auto}.comment-form button:disabled{background-color:var(--harmony-text-subtle);cursor:not-allowed}[data-theme=dark] .comment-form button:disabled{background-color:#5a5a5a}.comments-list{display:flex;flex-direction:column;gap:20px}.comment-item{border-bottom:1px solid var(--harmony-border);display:flex;gap:15px;padding-bottom:20px}.comment-item:last-child{border-bottom:none;padding-bottom:0}.comment-item img{border-radius:50%;flex-shrink:0;height:45px;margin-top:5px;width:45px}.comment-content{display:flex;flex-direction:column}.comment-content strong{color:var(--harmony-text-primary);font-weight:500}.comment-content a{color:inherit;text-decoration:none}.comment-content a:hover strong{text-decoration:underline}.comment-content p{color:var(--harmony-text-secondary);line-height:1.5;margin:5px 0 8px}.comment-content span{color:var(--harmony-text-subtle);font-size:.8em}.wiki-no-results{background-color:var(--harmony-bg-medium);border-radius:8px;margin-top:40px;padding:20px}.wiki-no-results .no-content-message{font-size:1.1em;margin-bottom:20px}.error-container{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;padding:40px 20px;text-align:center}.profile-content-area{padding-top:10px}.profile-tab-content .track-wiki-section{background:none;border:none;padding:0}.settings-page-container{align-items:stretch;display:flex;height:calc(100vh - 124px);margin:-24px -24px -92px;width:calc(100% + 48px)}.settings-sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--harmony-border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;padding:20px 0;scrollbar-color:var(--harmony-border) #0000;scrollbar-width:thin;width:260px}.settings-sidebar::-webkit-scrollbar{width:8px}.settings-sidebar::-webkit-scrollbar-track{background:#0000}.settings-sidebar::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:4px}.settings-sidebar::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}.settings-sidebar h2{align-items:center;border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);display:flex;font-size:1.3em;gap:10px;margin:0;padding:0 20px 15px}.settings-sidebar h2 i{color:var(--riffy-accent-purple)}.settings-nav{display:flex;flex-direction:column;flex-grow:1;padding:10px}.settings-nav-item{align-items:center;background:none;border:none;border-radius:6px;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.92em;gap:12px;padding:10px 12px;text-align:left;transition:all .2s ease;width:100%}.settings-nav-item i{flex-shrink:0;font-size:.95em;text-align:center;width:20px}.settings-nav-item:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.settings-nav-item.active{background-color:var(--riffy-accent-purple);color:#fff;font-weight:500}.settings-back-link{align-items:center;background:none;border:none;border-top:1px solid var(--harmony-border);color:var(--harmony-text-subtle);cursor:pointer;display:flex;font-size:.85em;gap:8px;margin-top:auto;padding:12px 20px;transition:color .2s ease}.settings-back-link:hover{color:var(--riffy-accent-purple)}.settings-main{flex:1 1;height:100%;min-width:0;overflow-y:auto;padding:20px 32px 120px;scrollbar-color:var(--harmony-border) #0000;scrollbar-width:thin}.settings-main::-webkit-scrollbar{width:8px}.settings-main::-webkit-scrollbar-track{background:#0000}.settings-main::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:4px}.settings-main::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}.settings-tab-content{background-color:var(--harmony-bg-medium);border-radius:10px;margin-bottom:20px;padding:25px 30px}.settings-tab-content h3{color:var(--harmony-text-primary);font-size:1.3em;margin:0 0 5px}.settings-tab-content h4{color:var(--harmony-text-secondary);font-size:1em;font-weight:500;margin:20px 0 8px}.settings-info-text{color:var(--harmony-text-subtle);font-size:.9em;margin:0 0 15px}.settings-form-group{margin-bottom:15px}.settings-form-group label{color:var(--harmony-text-secondary);display:block;font-size:.9em;font-weight:500;margin-bottom:5px}.settings-form-group input,.settings-form-group textarea{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;box-sizing:border-box;color:var(--harmony-text-primary);font-size:.95em;padding:10px 12px;transition:border-color .2s ease;width:100%}.settings-form-group input:focus,.settings-form-group textarea:focus{border-color:var(--riffy-accent-purple);outline:none}.required-star{color:#e53935}.form-message{border-radius:6px;font-size:.9em;margin-bottom:12px;padding:8px 12px}.form-message.success{background-color:#4caf5026;border:1px solid #4caf504d;color:#66bb6a}.form-message.error{background-color:#e5393526;border:1px solid #e539354d;color:#e57373}.settings-save-bar{align-items:center;display:flex;gap:15px;justify-content:flex-end;padding:15px 0}.settings-saved-msg{align-items:center;animation:fadeInOut 3s ease;color:#66bb6a;display:flex;font-size:.9em;gap:6px}@keyframes fadeInOut{0%{opacity:0;transform:translateY(5px)}10%{opacity:1;transform:translateY(0)}80%{opacity:1}to{opacity:0}}.settings-select-row,.settings-slider-row,.settings-toggle-row{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;justify-content:space-between;padding:12px 0}.settings-select-row:last-child,.settings-slider-row:last-child,.settings-toggle-row:last-child{border-bottom:none}.settings-select-info,.settings-toggle-info{flex-grow:1;margin-right:15px}.settings-select-info h4,.settings-toggle-info h4{color:var(--harmony-text-primary);font-size:.95em;margin:0 0 2px}.settings-select-info p,.settings-toggle-info p{color:var(--harmony-text-subtle);font-size:.82em;margin:0}.privacy-toggle-switch{display:inline-block;flex-shrink:0;height:24px;position:relative;width:44px}.privacy-toggle-switch input{height:0;opacity:0;width:0}.privacy-toggle-switch .slider{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.privacy-toggle-switch .slider.round{border-radius:24px}.privacy-toggle-switch .slider.round:before{background-color:var(--harmony-text-subtle);border-radius:50%;bottom:2px;content:"";height:18px;left:2px;position:absolute;transition:.3s;width:18px}.privacy-toggle-switch input:checked+.slider{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple)}.privacy-toggle-switch input:checked+.slider:before{background-color:#fff;transform:translateX(20px)}.privacy-toggle-switch input:disabled+.slider{cursor:not-allowed;opacity:.5}.settings-select{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;color:var(--harmony-text-primary);flex-shrink:0;font-size:.9em;min-width:180px;padding:8px 12px}.settings-select:focus{border-color:var(--riffy-accent-purple);outline:none}.settings-range{-webkit-appearance:none;background:var(--harmony-border);border-radius:2px;flex-shrink:0;height:4px;outline:none;width:200px}.settings-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--riffy-accent-purple);border-radius:50%;cursor:pointer;height:16px;width:16px}.settings-range::-moz-range-thumb{background:var(--riffy-accent-purple);border:none;border-radius:50%;cursor:pointer;height:16px;width:16px}.settings-slider-row label{color:var(--harmony-text-secondary);flex-shrink:0;font-size:.9em;min-width:180px}.settings-eq-section{border-radius:8px;margin:10px 0;padding:15px}.settings-eq-bands,.settings-eq-section{background-color:var(--harmony-bg-light)}.settings-eq-bands{align-items:stretch;border:1px solid var(--harmony-border);border-radius:10px;display:flex;flex-direction:row;gap:6px;margin:16px 0 6px;padding:12px 8px}.eq-band-col{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:flex-end;min-width:0}.eq-band-value{color:var(--harmony-text-secondary);font-size:.72em;margin-bottom:4px;min-height:1.2em;text-align:center}.eq-band-col input[type=range]{accent-color:var(--riffy-accent-purple);appearance:slider-vertical;-webkit-appearance:slider-vertical;cursor:pointer;direction:rtl;height:160px;margin:0;width:26px;writing-mode:vertical-lr}.eq-band-label{color:var(--harmony-text-secondary);font-size:.72em;margin-top:6px;text-align:center}.settings-time-range{display:flex;gap:20px;margin-top:10px}.settings-time-range .settings-form-group{flex:1 1}.settings-time-range .settings-form-group input[type=time]{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:6px;box-sizing:border-box;color:var(--harmony-text-primary);padding:8px 10px;width:100%}.settings-time-range .settings-form-group input[type=time]:focus{border-color:var(--riffy-accent-purple);outline:none}.settings-action-row{margin-top:15px}.settings-about-info{padding:15px 0}.settings-about-info p{color:var(--harmony-text-secondary);font-size:.95em;margin:5px 0}.settings-about-info p strong{color:var(--riffy-accent-purple)}.theme-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-top:10px}.theme-option{cursor:pointer}.theme-option input{display:none}.theme-preview{align-items:flex-end;border:2px solid #0000;border-radius:8px;display:flex;height:80px;justify-content:center;padding:8px;transition:border-color .2s ease,transform .2s ease}.theme-option input:checked+.theme-preview{border-color:var(--riffy-accent-purple);transform:scale(1.03)}.theme-preview.dark{background:linear-gradient(135deg,#1a1a2e,#16213e)}.theme-preview.light{background:linear-gradient(135deg,#f5f5f5,#e0e0e0)}.theme-preview.night-tokyo{background:linear-gradient(135deg,#0f0c29,#302b63,#24243e)}.theme-preview.cyberpunk-neon{background:linear-gradient(135deg,#0a0a0a,#ff003c,#0ff)}.theme-preview.pastel-soft{background:linear-gradient(135deg,#ffecd2,#fcb69f)}.theme-preview.glassmorphism{background:linear-gradient(135deg,#ffffff1a,#fff3);border:1px solid #fff3}.theme-preview.glitch-tech{background:linear-gradient(135deg,#000,#1a1a1a,#f0f)}.theme-name{background-color:#0009;border-radius:4px;color:#fff;font-size:.8em;font-weight:500;padding:4px 10px}.notifications-unread-badge{align-items:center;background-color:var(--riffy-accent-purple);border-radius:9px;color:#fff;display:inline-flex;font-size:.7em;font-weight:700;height:18px;justify-content:center;margin-left:8px;min-width:18px;padding:0 5px;vertical-align:middle}.notifications-header-actions{align-items:center;display:flex;gap:2px}.notification-header-btn{background:none;border:none;border-radius:4px;color:var(--harmony-text-subtle);cursor:pointer;font-size:.9em;padding:6px 8px;transition:all .2s ease}.notification-header-btn:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.notification-header-btn.confirm-delete{background-color:#e539351a;color:#e53935}.notification-back-btn{background:none;border:none;color:var(--harmony-text-secondary);cursor:pointer;font-size:.95em;padding:4px 8px 4px 0;transition:color .2s ease}.notification-back-btn:hover{color:var(--riffy-accent-purple)}.notification-icon-badge{align-items:center;background-color:var(--riffy-accent-purple);border:1.5px solid var(--sidebar-bg);border-radius:50%;bottom:-2px;color:#fff;display:flex;font-size:.55em;height:18px;justify-content:center;position:absolute;right:-2px;width:18px}.notification-item{position:relative}.notification-meta{align-items:center;display:flex;gap:8px;margin-top:3px}.notification-type-label{background-color:#8b5cf61a;background-color:rgba(var(--riffy-accent-purple-rgb,139,92,246),.1);border-radius:3px;color:var(--riffy-accent-purple);font-size:.75em;font-weight:500;padding:1px 6px}.notification-delete-btn{background:none;border:none;border-radius:4px;color:var(--harmony-text-subtle);cursor:pointer;font-size:.75em;opacity:0;padding:4px 6px;position:absolute;right:8px;top:8px;transition:all .2s ease}.notification-item:hover .notification-delete-btn{opacity:1}.notification-delete-btn:hover{background-color:#e539351a;color:#e53935}.no-notifications-message{align-items:center;color:var(--harmony-text-subtle);display:flex;flex-direction:column;justify-content:center;padding:40px 20px}.no-notifications-message i{font-size:2.5em;margin-bottom:12px;opacity:.4}.no-notifications-message p{font-size:.95em;margin:0}.notifications-prefs-list{flex-grow:1;overflow-x:hidden;overflow-y:auto;padding:10px 15px;scrollbar-color:var(--harmony-border) #0000;scrollbar-gutter:stable;scrollbar-width:thin}.notifications-prefs-list::-webkit-scrollbar{width:6px}.notifications-prefs-list::-webkit-scrollbar-track{background:#0000}.notifications-prefs-list::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:3px}.notifications-prefs-list::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}.notification-pref-row{align-items:center;border-bottom:1px solid var(--harmony-border);display:flex;justify-content:space-between;padding:8px 0}.notification-pref-row:last-child{border-bottom:none}.notification-pref-info{align-items:center;color:var(--harmony-text-secondary);display:flex;font-size:.88em;gap:10px}.notification-pref-info i{color:var(--harmony-text-subtle);text-align:center;width:18px}.notification-more-settings{align-items:center;border-radius:6px;color:var(--riffy-accent-purple);display:flex;font-size:.88em;font-weight:500;gap:6px;justify-content:center;margin-top:12px;padding:10px;text-decoration:none;transition:background-color .2s ease}.notification-more-settings:hover{background-color:var(--harmony-bg-light)}.preferences-loading{display:flex;justify-content:center;padding:30px 0}.preferences-loading i{color:var(--harmony-text-subtle);font-size:1.5em}.wiki-music-container{margin:0 auto;max-width:1100px}.wiki-subtitle{color:var(--harmony-text-subtle);font-size:.95em;margin:-5px 0 20px}.wiki-tab-nav{background-color:var(--harmony-bg-medium);border-radius:10px;display:flex;gap:4px;margin-bottom:25px;overflow-x:auto;padding:5px}.wiki-tab-btn{align-items:center;background:none;border:none;border-radius:8px;color:var(--harmony-text-secondary);cursor:pointer;display:flex;flex:1 1;font-size:.92em;font-weight:500;gap:8px;justify-content:center;padding:10px 15px;transition:all .2s ease;white-space:nowrap}.wiki-tab-btn:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary)}.wiki-tab-btn.active{background-color:var(--riffy-accent-purple);color:#fff}.wiki-stats-bar{background-color:var(--harmony-bg-medium);border-radius:10px;display:flex;justify-content:space-around;margin-bottom:25px;padding:18px 10px}.wiki-stat-item{text-align:center}.wiki-stat-number{color:var(--riffy-accent-purple);display:block;font-size:1.4em;font-weight:700}.wiki-stat-label{color:var(--harmony-text-subtle);font-size:.8em;margin-top:2px}.wiki-featured-section{margin-bottom:30px}.wiki-featured-section h2{margin-bottom:12px}.wiki-featured-card{background:linear-gradient(135deg,var(--harmony-bg-medium),var(--harmony-bg-light));border:1px solid var(--harmony-border);border-radius:12px;display:flex;gap:20px;padding:20px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.wiki-featured-card:hover{box-shadow:0 8px 25px #0000004d;transform:translateY(-2px)}.wiki-featured-cover{border-radius:8px;flex-shrink:0;height:180px;overflow:hidden;position:relative;width:180px}.wiki-featured-cover img{height:100%;object-fit:cover;width:100%}.wiki-featured-no-cover{background:linear-gradient(135deg,var(--riffy-accent-purple),#4a00e0);color:#ffffff80;font-size:3em;height:100%;width:100%}.wiki-featured-no-cover,.wiki-featured-play-overlay{align-items:center;display:flex;justify-content:center}.wiki-featured-play-overlay{background-color:#00000080;inset:0;opacity:0;position:absolute;transition:opacity .2s ease}.wiki-featured-play-overlay i{color:#fff;font-size:2em}.wiki-featured-card:hover .wiki-featured-play-overlay{opacity:1}.wiki-featured-info{display:flex;flex-direction:column;gap:8px;justify-content:center}.wiki-featured-badge{align-items:center;color:#ff6b35;display:inline-flex;font-size:.85em;font-weight:600;gap:6px}.wiki-featured-info h3{color:var(--harmony-text-primary);font-size:1.4em;margin:0}.wiki-featured-info p{color:var(--harmony-text-secondary);font-size:1em;margin:0}.wiki-featured-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.wiki-tag{background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:12px;color:var(--harmony-text-secondary);font-size:.78em;padding:3px 10px}.wiki-featured-rating{align-items:center;color:#f4c430;display:flex;font-size:.9em;font-weight:500;gap:5px}.wiki-contribute-cta{background:linear-gradient(135deg,var(--harmony-bg-medium),var(--harmony-bg-light));border:1px solid var(--harmony-border);border-radius:12px;margin:30px 0;padding:40px 30px;text-align:center}.wiki-contribute-cta i{color:var(--riffy-accent-purple);font-size:2.5em;margin-bottom:15px}.wiki-contribute-cta h3{color:var(--harmony-text-primary);font-size:1.3em;margin:0 0 8px}.wiki-contribute-cta p{color:var(--harmony-text-secondary);font-size:.95em;margin:0 auto 20px;max-width:500px}.wiki-search-bar{display:flex;gap:10px;margin-bottom:20px}.wiki-search-input-wrapper{align-items:center;display:flex;flex-grow:1;position:relative}.wiki-search-icon{color:var(--harmony-text-subtle);font-size:.9em;left:14px;position:absolute}.wiki-search-input{background-color:bg-light;background-color:var(--harmony- bg-light);border:1px solid var(--harmony-border);border-radius:8px;color:var(--harmony-text-primary);font-size:1em;padding:12px 40px;width:100%}.wiki-search-input:focus{border-color:var(--riffy-accent-purple);outline:none}.admin-search-bar{align-items:center;background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:8px;display:flex;gap:10px;margin-bottom:20px;padding:10px 14px}.admin-search-input{background:#0000;border:none;color:var(--harmony-text-primary);flex:1 1;font-size:1em;min-width:0;outline:none}.admin-search-clear,.admin-search-input::placeholder{color:var(--harmony-text-subtle)}.admin-search-clear{background:none;border:none;cursor:pointer;font-size:1em;line-height:1;padding:4px}.admin-search-clear:hover{color:var(--harmony-text-primary)}.wiki-search-clear{background:none;border:none;color:var(--harmony-text-subtle);cursor:pointer;font-size:.85em;padding:4px;position:absolute;right:10px}.wiki-search-clear:hover{color:var(--harmony-text-primary)}.wiki-search-btn{flex-shrink:0;width:auto}.wiki-filters-row{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.wiki-genre-filter,.wiki-mood-filter{display:flex;flex-wrap:wrap;gap:6px}.wiki-genre-chip,.wiki-mood-chip{align-items:center;background:none;border:1px solid var(--harmony-border);border-radius:20px;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.82em;gap:5px;padding:7px 14px;transition:all .2s ease}.wiki-genre-chip:hover,.wiki-mood-chip:hover{border-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}.wiki-genre-chip.active,.wiki-mood-chip.active{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);color:#fff}.wiki-search-results h3{color:var(--harmony-text-secondary);font-size:1em;margin-bottom:12px}.wiki-search-result-item{align-items:center;border-bottom:1px solid var(--harmony-border);border-radius:8px;display:flex;gap:14px;padding:12px 15px;text-decoration:none;transition:background-color .2s ease}.wiki-search-result-item:last-child{border-bottom:none}.wiki-search-result-item:hover{background-color:var(--harmony-bg-light)}.wiki-result-type-icon{align-items:center;background-color:var(--harmony-bg-medium);border-radius:50%;color:var(--riffy-accent-purple);display:flex;flex-shrink:0;font-size:.85em;height:36px;justify-content:center;width:36px}.wiki-result-image{flex-shrink:0}.wiki-result-image img{border-radius:6px;height:48px;object-fit:cover;width:48px}.wiki-result-no-cover{align-items:center;background:linear-gradient(135deg,var(--riffy-accent-purple),#4a00e0);border-radius:6px;color:#fff9;display:flex;font-size:1.1em;height:48px;justify-content:center;width:48px}.wiki-result-info{flex-grow:1;overflow:hidden}.wiki-result-title{color:var(--harmony-text-primary);font-size:.95em;font-weight:500;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-result-meta{align-items:center;color:var(--harmony-text-subtle);display:flex;flex-wrap:wrap;font-size:.8em;gap:4px;margin-top:3px}.wiki-result-type{background-color:var(--harmony-bg-medium);border-radius:3px;font-weight:500;padding:1px 6px}.wiki-result-annotations{color:var(--riffy-accent-purple);font-size:.8em;margin-top:3px}.wiki-result-annotations i{font-size:.9em}.wiki-result-arrow{color:var(--harmony-text-subtle);flex-shrink:0;font-size:.8em}.wiki-search-empty-state{color:var(--harmony-text-subtle);padding:50px 20px;text-align:center}.wiki-search-empty-state i{font-size:3em;margin-bottom:15px;opacity:.3}.wiki-search-empty-state h3{color:var(--harmony-text-secondary);font-size:1.1em;margin:0 0 8px}.wiki-search-empty-state p{font-size:.9em;margin:0}.wiki-no-results{color:var(--harmony-text-subtle);padding:40px 20px;text-align:center}.wiki-no-results i{font-size:2em;margin-bottom:12px;opacity:.4}.wiki-top-tab h2{margin-bottom:15px}.wiki-top-sections{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr 1fr;margin-top:20px}.wiki-top-section h3{align-items:center;color:var(--harmony-text-secondary);display:flex;font-size:1em;gap:8px;margin-bottom:12px}.wiki-top-list{display:flex;flex-direction:column}.wiki-top-list-item{align-items:center;border-radius:6px;display:flex;gap:12px;padding:10px 12px;text-decoration:none;transition:background-color .2s ease}.wiki-top-list-item:hover{background-color:var(--harmony-bg-light)}.wiki-top-rank{color:var(--harmony-text-subtle);flex-shrink:0;font-size:.85em;font-weight:700;text-align:center;width:30px}.wiki-top-list-avatar,.wiki-top-list-cover{background-color:var(--harmony-bg-light);border-radius:6px;flex-shrink:0;height:40px;object-fit:cover;width:40px}.wiki-top-list-avatar{border-radius:50%}.wiki-top-list-info{flex-grow:1;overflow:hidden}.wiki-top-list-title{color:var(--harmony-text-primary);display:block;font-size:.9em;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-top-list-meta{color:var(--harmony-text-subtle);font-size:.8em}.wiki-top-list-rating,.wiki-top-list-views{align-items:center;color:var(--harmony-text-subtle);display:flex;flex-shrink:0;font-size:.82em;gap:4px}.wiki-top-list-rating i{color:#f4c430}.wiki-leaderboard-tab h2{margin-bottom:15px}.wiki-leaderboard-tabs{background-color:var(--harmony-bg-medium);border-radius:8px;display:flex;gap:4px;margin-bottom:20px;padding:4px}.wiki-lb-tab{background:none;border:none;border-radius:6px;color:var(--harmony-text-secondary);cursor:pointer;flex:1 1;font-size:.88em;padding:8px 15px;transition:all .2s ease}.wiki-lb-tab:hover{background-color:var(--harmony-bg-light)}.wiki-lb-tab.active{background-color:var(--riffy-accent-purple);color:#fff}.wiki-leaderboard-section h2{margin-bottom:15px}.wiki-leaderboard-list{display:flex;flex-direction:column}.wiki-leaderboard-item{align-items:center;border-radius:8px;display:flex;gap:14px;padding:12px 15px;text-decoration:none;transition:background-color .2s ease}.wiki-leaderboard-item:hover{background-color:var(--harmony-bg-light)}.wiki-leaderboard-rank{flex-shrink:0;text-align:center;width:36px}.wiki-rank-number{color:var(--harmony-text-subtle);font-size:1em;font-weight:700}.wiki-leaderboard-avatar{background-color:var(--harmony-bg-light);border-radius:50%;flex-shrink:0;height:44px;object-fit:cover;width:44px}.wiki-leaderboard-info{flex-grow:1;overflow:hidden}.wiki-leaderboard-name{color:var(--harmony-text-primary);display:block;font-size:.95em;font-weight:500}.wiki-leaderboard-edits{color:var(--harmony-text-subtle);font-size:.82em}.wiki-verified-badge{color:var(--riffy-accent-purple);flex-shrink:0;font-size:1em}.playlist-type-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.playlist-type-filter-chip{background-color:initial;border:1px solid var(--harmony-border);border-radius:20px;color:var(--harmony-text-secondary);cursor:pointer;font-size:.85em;font-weight:500;padding:8px 16px;transition:all .2s ease}.playlist-type-filter-chip:hover{border-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}.playlist-type-filter-chip.active{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);color:#fff}.playlist-type-badge{align-items:center;background-color:var(--harmony-bg-overlay-dark);border-radius:50%;box-shadow:0 2px 6px #0000004d;display:flex;font-size:.95em;height:30px;justify-content:center;left:8px;position:absolute;top:8px;width:30px;z-index:4}[data-theme=dark] .playlist-type-badge{background-color:#00000080}.playlist-type-subline{color:var(--riffy-accent-purple);font-size:.78em;margin:3px 0 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-card-with-pair-action{display:flex;flex-direction:column;gap:10px;position:relative}.pair-playlist-btn{justify-content:center;width:100%}.pair-modal-hint{color:var(--harmony-text-secondary);font-size:.9em;margin-bottom:15px}.pair-my-playlists-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px;max-height:260px;overflow-y:auto}.pair-my-playlist-item{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:8px;color:var(--harmony-text-primary);cursor:pointer;font-size:.92em;padding:12px 14px;text-align:left;transition:border-color .2s ease,background-color .2s ease}.pair-my-playlist-item:hover{background-color:var(--harmony-bg-medium);border-color:var(--riffy-accent-purple)}.playlist-type-selector{display:flex;flex-direction:column;gap:10px}.playlist-type-option{grid-column-gap:12px;grid-row-gap:2px;background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:8px;color:var(--harmony-text-primary);column-gap:12px;cursor:pointer;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;padding:12px 14px;row-gap:2px;text-align:left;transition:all .2s ease;width:100%}.playlist-type-option.selected,.playlist-type-option:hover{border-color:var(--riffy-accent-purple)}.playlist-type-option.selected{background-color:#7b56d31f;box-shadow:0 0 0 2px #7b56d340}.playlist-type-icon{align-self:center;font-size:1.4em;grid-column:1;grid-row:1/span 2}.playlist-type-label{font-size:.95em;font-weight:600;grid-column:2}.playlist-type-desc{color:var(--harmony-text-subtle);font-size:.8em;grid-column:2}.riffy-checkbox-label{align-items:center;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.9em;gap:8px}.riffy-checkbox-label input[type=checkbox]{accent-color:var(--riffy-accent-purple);cursor:pointer;height:16px;width:16px}.riffy-modal-input-group input[type=number],.riffy-modal-input-group textarea{background-color:var(--input-bg);border:1px solid var(--harmony-border);border-radius:4px;box-sizing:border-box;color:var(--harmony-text-primary);font-family:inherit;padding:10px;resize:vertical;width:100%}.riffy-modal-input-group input[type=number]:focus,.riffy-modal-input-group textarea:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d34d;outline:none}.playlist-type-detail-badge{color:var(--riffy-accent-purple);font-size:.9em;font-weight:500;margin-left:15px}.playlist-thread-context{background-color:#7b56d31f;border-left:3px solid var(--riffy-accent-purple);border-radius:0 6px 6px 0;color:var(--harmony-text-secondary);display:inline-block;font-size:.9em;margin:0 0 15px;padding:8px 14px}.playlist-thread-section{display:flex;flex-direction:column}.thread-timeline{margin:10px 0 20px;position:relative}.thread-timeline-item{grid-gap:14px;display:grid;gap:14px;grid-template-columns:24px 1fr;padding-bottom:18px;position:relative}.thread-timeline-line{background-color:var(--harmony-border);bottom:0;left:11px;position:absolute;top:28px;width:2px}.thread-timeline-item:last-child .thread-timeline-line{display:none}.thread-timeline-dot{align-items:center;background-color:var(--riffy-accent-purple);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.6em;grid-column:1;height:24px;justify-content:center;transition:transform .2s ease;width:24px;z-index:2}.thread-timeline-dot:hover{transform:scale(1.15)}.thread-timeline-card{background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:8px;display:flex;gap:12px;grid-column:2;padding:10px;transition:background-color .2s ease}.thread-timeline-card:hover,.thread-timeline-cover{background-color:var(--harmony-bg-light)}.thread-timeline-cover{border-radius:6px;flex-shrink:0;height:56px;object-fit:cover;width:56px}.thread-timeline-info{display:flex;flex-direction:column;gap:2px;justify-content:center;min-width:0}.thread-timeline-title{color:var(--harmony-text-primary);font-size:.95em;font-weight:500}.thread-timeline-artist,.thread-timeline-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-timeline-artist{color:var(--harmony-text-secondary);font-size:.8em}.thread-timeline-note{color:var(--riffy-accent-purple);font-size:.85em;font-style:italic}.thread-timeline-addedby{color:var(--harmony-text-subtle);font-size:.78em}.playlist-pair-section{margin-bottom:30px}.playlist-pair-grid{grid-gap:16px;align-items:center;background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:10px;display:grid;gap:16px;grid-template-columns:1fr auto 1fr;padding:20px}.playlist-pair-side{min-width:0}.playlist-pair-side h3{color:var(--harmony-text-primary);font-size:1.05em;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-pair-side h3 a{color:var(--harmony-text-primary);text-decoration:none}.playlist-pair-side h3 a:hover{color:var(--riffy-accent-purple);text-decoration:underline}.playlist-pair-author{color:var(--harmony-text-subtle);font-size:.8em;font-weight:400}.playlist-pair-connector{align-items:center;background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:50%;color:var(--riffy-accent-purple);display:flex;flex-shrink:0;font-size:1.1em;height:44px;justify-content:center;width:44px}.playlist-open-section{margin-bottom:30px}.open-playlist-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:12px}.open-playlist-header h2{color:var(--harmony-text-primary);font-size:1.5em;font-weight:700;margin:0}.open-playlist-info{color:var(--harmony-text-subtle);font-size:.85em;margin-bottom:20px}.open-playlist-submissions{display:flex;flex-direction:column;gap:10px}.open-playlist-submissions h3{color:var(--harmony-text-secondary);font-size:1em;margin:0 0 6px}.open-submission-card{align-items:center;background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:8px;display:flex;gap:14px;padding:10px 14px;transition:background-color .2s ease}.open-submission-card:hover,.open-submission-cover{background-color:var(--harmony-bg-light)}.open-submission-cover{border-radius:6px;flex-shrink:0;height:52px;object-fit:cover;width:52px}.open-submission-info{display:flex;flex-direction:column;flex-grow:1;gap:2px;min-width:0}.open-submission-title{color:var(--harmony-text-primary);font-size:.95em;font-weight:500}.open-submission-artist,.open-submission-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-submission-artist{color:var(--harmony-text-secondary);font-size:.8em}.open-submission-submitter{color:var(--harmony-text-subtle);font-size:.78em}.open-submission-votes{align-items:center;display:flex;flex-shrink:0;gap:10px}.open-vote-btn{align-items:center;background-color:initial;border:1px solid var(--harmony-border);border-radius:20px;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:.85em;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}.open-vote-btn:hover{border-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}.open-vote-btn.voted{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);color:#fff}.open-vote-count{align-items:center;color:var(--harmony-text-subtle);display:inline-flex;font-size:.85em;gap:6px}.open-remove-submission-btn{background:none;border:none;border-radius:50%;color:var(--harmony-text-subtle);cursor:pointer;font-size:.9em;padding:6px;transition:color .2s ease,background-color .2s ease}.open-remove-submission-btn:hover{background-color:#e539351a;color:#e53935}*{scrollbar-color:var(--harmony-border) #0000;scrollbar-width:thin}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background-color:var(--harmony-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background-color:var(--riffy-accent-purple)}::-webkit-scrollbar-corner{background:#0000}@keyframes riffy-marquee{0%{transform:translateX(0)}to{transform:translateX(-100%)}}.bottom-nav-riffy,.header-logo-riffy{display:none}@keyframes riffy-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.riffy-toast-container{display:flex;flex-direction:column;gap:8px;max-width:320px;pointer-events:none;position:fixed;right:16px;top:70px;z-index:10000}.riffy-toast{align-items:center;animation:riffy-toast-in .25s ease forwards;background-color:var(--modal-bg);border:1px solid var(--harmony-border);border-radius:10px;box-shadow:var(--harmony-shadow-lg);color:var(--harmony-text-primary);cursor:pointer;display:flex;font-size:.9em;font-weight:500;gap:10px;max-width:320px;padding:12px 14px;pointer-events:auto}.riffy-toast i{flex-shrink:0;font-size:1.05em}.riffy-toast span{flex:1 1;min-width:0}.riffy-toast-success i{color:#66bb6a}.riffy-toast-error i{color:#e57373}.riffy-toast-info i{color:var(--riffy-accent-purple)}.riffy-toast-close{background:none;border:none;color:var(--harmony-text-subtle);cursor:pointer;font-size:16px;line-height:1;padding:0 0 0 4px}@keyframes riffy-toast-in{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.riffy-ui-modal-backdrop{align-items:center;animation:riffy-modal-fade .2s ease forwards;background-color:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:9990}.riffy-ui-modal{animation:riffy-modal-pop .2s ease forwards;background-color:var(--modal-bg);border:1px solid var(--harmony-border);border-radius:12px;box-shadow:var(--harmony-shadow-lg);max-width:380px;padding:22px 24px;width:100%}.riffy-ui-modal-title{color:var(--harmony-text-primary);font-size:1.15em;font-weight:700;margin:0 0 10px}.riffy-ui-modal-message{color:var(--harmony-text-secondary);font-size:.95em;line-height:1.45;margin:0 0 18px}.riffy-ui-modal-actions{display:flex;gap:10px;justify-content:flex-end}.riffy-ui-modal-actions .riffy-modal-button{align-items:center;display:inline-flex;gap:7px}.riffy-ui-modal-link-box{background-color:var(--input-bg);border:1px solid var(--harmony-border);border-radius:8px;color:var(--harmony-text-primary);font-size:.85em;margin:0 0 18px;padding:10px 12px;word-break:break-all}.riffy-ui-modal-label{color:var(--harmony-text-secondary);display:block;font-size:.85em;margin-bottom:8px}.riffy-ui-modal-input,.riffy-ui-modal-input[type=text]{background-color:var(--input-bg);border:1px solid var(--harmony-border);border-radius:8px;box-sizing:border-box;color:var(--harmony-text-primary);font-family:inherit;font-size:.95em;margin-bottom:16px;padding:10px 12px;width:100%}.riffy-ui-modal-input:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d34d;outline:none}textarea.riffy-ui-modal-input{min-height:70px;resize:vertical}@keyframes riffy-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes riffy-modal-pop{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:768px){:root{--sidebar-riffy-width:0px}.sidebar-riffy{display:none!important}.main-content-riffy{margin-left:0;padding:15px 15px calc(140px + env(safe-area-inset-bottom, 0px))!important;width:100%}.site-header-riffy{padding:10px 15px;position:sticky;top:0;width:100%;z-index:1000}.header-content-riffy{gap:10px}.header-logo-riffy{display:flex!important}.header-logo-riffy img{border-radius:6px;height:28px}.search-container-riffy-header{flex:1 1;margin:0;max-width:none}.search-container-riffy-header input[type=text]#search-input{font-size:16px;padding:8px 12px}#username-display,.riffy-header-action-button:not(#login-register-btn) span{display:none}.riffy-header-action-button{align-items:center;border-radius:50%;display:inline-flex;height:36px;justify-content:center;padding:8px;width:36px}.riffy-header-action-button i{margin:0!important}.header-icon-buttons{margin-left:5px}.header-user-avatar{height:34px;margin-right:0;width:34px}.header-search-results-dropdown{border-radius:0 0 16px 16px!important;left:0!important;max-height:calc(100dvh - 60px)!important;position:fixed!important;top:60px!important;width:100vw!important}.bottom-nav-riffy{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--header-bg);border-top:1px solid var(--harmony-border);bottom:0;display:flex!important;height:calc(60px + env(safe-area-inset-bottom, 0px));justify-content:space-around;left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:1002}.bottom-nav-riffy a{align-items:center;color:var(--harmony-text-secondary);display:flex;flex:1 1;flex-direction:column;font-size:.68em;font-weight:500;gap:3px;justify-content:center;text-decoration:none;transition:color .2s ease}.bottom-nav-riffy a i{font-size:1.3em;margin-bottom:2px}.bottom-nav-riffy a.active{color:var(--riffy-accent-purple)}.audio-player-riffy.compact{border-bottom:none;border-radius:12px 12px 0 0;border-top:1px solid var(--harmony-border);bottom:calc(60px + env(safe-area-inset-bottom, 0px))!important;gap:8px;grid-template-columns:minmax(0,1fr) auto;height:56px;left:0;padding:0 12px;width:100%;z-index:1001}.player-cover-compact{border-radius:8px;flex-shrink:0;height:40px;width:40px}.player-left{gap:10px;min-width:0}.track-info-and-actions-wrapper{gap:4px;min-width:0}.player-section.player-right,.track-actions-compact{display:none!important}.player-center{flex-grow:0;max-width:none;min-width:0}.player-controls-compact{gap:2px}.player-controls-compact .control-btn-compact{display:flex;font-size:1em;height:34px;width:34px}.player-controls-compact .control-btn-compact:first-child,.player-controls-compact .control-btn-compact:last-child{display:none}.play-pause-btn-compact{height:42px;width:42px}.progress-area-compact{gap:0;height:2px;left:0;position:absolute;top:-2px;width:100%}.time-display-compact{display:none}.progress-bar-container-compact,.progress-slider-compact{border-radius:0;height:2px}.track-info-compact{overflow:hidden;white-space:nowrap}.title-container-compact{font-size:.95em}.artist-name-compact{font-size:.8em}.friends-grid,.playlists-grid-overview,.songs-carousel-riffy:not(.carousel-content),.songs-grid-riffy,.stats-lists-container,.wiki-artist-grid{gap:10px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.friends-grid>*,.playlists-grid-overview>*,.songs-carousel-riffy:not(.carousel-content)>*{max-width:100%;min-width:0}.playlist-overview-card,.song-card{padding:8px}.song-card-info h3{font-size:.85em}.song-card-play-overlay{bottom:5px;height:32px;right:5px;width:32px}.carousel-wrapper .carousel-content{grid-auto-columns:140px;grid-auto-flow:column;grid-template-columns:none;padding-bottom:10px;scroll-snap-type:x mandatory}.carousel-wrapper .carousel-content.home-carousel{grid-auto-columns:175px}.carousel-wrapper .carousel-content.home-list-carousel{grid-auto-columns:160px}.carousel-wrapper .carousel-content>*{scroll-snap-align:start}.scroll-btn{display:none!important}.fsp-overlay{height:100dvh;justify-content:space-between;padding:15px 20px 30px}.fsp-main-content{gap:20px;grid-template-columns:1fr!important;overflow-y:auto;padding:0}.fsp-content-left .fsp-cover-art-container{margin:0 auto 20px;max-width:80vw}.fsp-track-info h2{font-size:1.4em;letter-spacing:0}.fsp-track-info .fsp-artist{font-size:1em}.fsp-controls{gap:15px}.fsp-control-btn.play-pause{font-size:1.5em;height:60px;width:60px}.fsp-overlay.queue-view .fsp-main-content{grid-template-columns:1fr}.fsp-overlay.queue-view .fsp-content-left{display:none}.fsp-content-right{background:#0000;border:none;box-shadow:none;opacity:1;padding:0}.modal{align-items:flex-end;padding:0}.cropper-modal-content,.lyrics-modal-content,.modal-content,.queue-modal-content{animation:riffy-menu-slide-up .3s cubic-bezier(.25,1,.5,1) forwards;border:none;border-radius:20px 20px 0 0;margin:0;max-height:85dvh;max-width:100%!important;overflow-y:auto;padding:20px 15px calc(20px + env(safe-area-inset-bottom, 0px));width:100%!important}.lyrics-modal-content{border-left:none}.cropper-modal-body .ReactCrop,.cropper-modal-body .ReactCrop__image{max-width:100%}.dropdown-menu-riffy,.fsp-more-menu,.player-more-menu-riffy,.song-card-more-menu{animation:riffy-menu-slide-up .3s cubic-bezier(.25,1,.5,1);border:1px solid var(--harmony-border);border-radius:20px 20px 0 0;bottom:0!important;box-shadow:0 -5px 40px #00000080,0 0 0 100vmax #00000080;left:0!important;max-height:80dvh;max-width:100%!important;overflow-y:auto;padding:20px 15px calc(20px + env(safe-area-inset-bottom, 0px));position:fixed!important;right:0!important;top:auto!important;transform:none!important;width:100%!important;z-index:9999!important}.player-more-submenu{background:#0000!important;border:none!important;box-shadow:none!important;max-width:100%!important;padding-left:20px!important;position:static!important;width:100%!important}#profile-page-container{margin:-15px -15px 0}.profile-banner{align-items:center;height:auto;justify-content:center;min-height:200px;padding:25px 15px 15px}.profile-header-content{align-items:center;flex-direction:column;gap:10px;text-align:center}.profile-avatar,.profile-avatar-container{height:110px;width:110px}.profile-user-info h1{font-size:1.6em;margin-bottom:5px}.profile-stats{flex-wrap:wrap;gap:15px;justify-content:center}.profile-tabs-nav{overflow-x:auto;scrollbar-width:none}.profile-tabs-container{padding:12px 16px!important}.profile-tabs-nav{margin-bottom:12px}.profile-tab-button{font-size:.9em;margin-right:5px;padding:10px 12px;white-space:nowrap}.banner-confirmation-bar{flex-wrap:wrap;justify-content:center;width:calc(100% - 30px)}.stats-summary-grid{gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:25px}.stats-summary-card{padding:14px 10px}.stats-summary-card i{font-size:1.4em;margin-bottom:8px}.stats-list-item{gap:12px;padding:8px}.settings-page-container{flex-direction:column;height:auto;margin:-15px}.settings-sidebar{border-bottom:1px solid var(--harmony-border);border-right:none;flex-direction:row;overflow-x:auto;padding:10px;width:100%}.settings-sidebar h2{display:none}.settings-nav{flex-direction:row;padding:5px}.settings-nav-item{flex:0 0 auto;padding:8px 12px;white-space:nowrap;width:auto}.settings-main{overflow:visible;padding:15px}.theme-options{gap:14px;grid-template-columns:repeat(3,1fr)}.theme-preview{height:60px;width:100%}.privacy-toggle-switch{margin-left:12px}.settings-save-bar{flex-wrap:wrap}.settings-section-link{font-size:.9em;padding:10px 12px}.settings-section-title{font-size:1.05em}.album-header,.track-header{align-items:center;flex-direction:column;gap:15px;text-align:center}.album-cover-art,.track-cover-art{height:200px;width:200px}.track-info-tags-actions{flex-wrap:wrap;justify-content:center}.track-stats-engagement{grid-template-columns:1fr}.track-stats-hero-bar{flex-direction:column;gap:10px}.track-stats-hero-value{font-size:2.2em}.track-stats-hero-divider{height:1px;min-height:1px;width:100%}.list-view-item{gap:10px;grid-template-areas:"cover title plays more" "cover artist plays more"!important;grid-template-columns:40px 1fr auto 36px!important}.list-item-album,.list-item-index{display:none!important}.list-item-cover{grid-area:cover}.list-item-info{grid-area:title}.friend-actions,.list-item-plays{align-self:center;grid-area:plays}.list-item-more{grid-area:more}.list-item-more-btn{opacity:1}.playlist-pair-grid{gap:10px;grid-template-columns:1fr}.playlist-pair-connector{margin:0 auto;transform:rotate(90deg)}}@media (max-width:480px){.theme-options{grid-template-columns:repeat(2,1fr)}.lyrics-modal-header h3{font-size:1.1em}.lyrics-modal-body{font-size:.9em;padding:15px}}@media (max-width:768px){.list-view-item .list-item-play-button{grid-area:cover}}.songs-toolbar-riffy{gap:12px;margin-bottom:20px}.genre-filter-row,.songs-toolbar-riffy{align-items:center;display:flex;flex-wrap:wrap}.genre-filter-row{gap:8px;margin-bottom:16px}.genre-filter-group{display:contents}.genre-chip{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:500px;color:var(--harmony-text-secondary);cursor:pointer;font-size:.85em;padding:6px 14px;transition:all .15s ease;white-space:nowrap}.genre-chip:hover{color:var(--harmony-text-primary)}.genre-chip.active,.genre-chip:hover{border-color:var(--riffy-accent-purple)}.genre-chip.active{background-color:var(--riffy-accent-purple);color:#fff}[data-theme=dark] .genre-chip.active{color:#fff}.genre-badge{background-color:#7b56d31f;border:1px solid #7b56d340;border-radius:500px;color:var(--riffy-accent-purple);display:inline-block;font-size:.75em;font-weight:500;margin-bottom:4px;margin-right:6px;padding:3px 10px;white-space:nowrap}.songs-tabs-riffy{background-color:var(--harmony-bg-light);border-radius:500px;display:inline-flex;gap:4px;padding:3px}.songs-tab{border-radius:500px;color:var(--harmony-text-secondary);font-size:.9em;font-weight:500;padding:7px 16px;text-decoration:none;transition:background-color .2s ease,color .2s ease;white-space:nowrap}.songs-tab:hover{color:var(--harmony-text-primary)}.songs-tab.active{background-color:var(--riffy-accent-purple);color:#fff}[data-theme=dark] .songs-tab.active{color:#fff}.songs-search-riffy{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:500px;color:var(--harmony-text-primary);flex:1 1 220px;font-size:.85em;max-width:340px;min-width:200px;padding:10px 16px}.songs-search-riffy::placeholder{color:var(--harmony-text-subtle)}.songs-search-riffy:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 2px #7b56d34d;outline:none}.songs-sort-riffy{align-items:center;color:var(--harmony-text-secondary);display:inline-flex;font-size:.9em;gap:8px}.songs-sort-riffy select{background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:500px;color:var(--harmony-text-primary);cursor:pointer;font-size:.85em;padding:8px 12px}.songs-scope-riffy{display:inline-flex;flex-wrap:wrap;gap:6px}.songs-scope-btn{background-color:initial;border:1px solid var(--harmony-border);border-radius:500px;color:var(--harmony-text-secondary);cursor:pointer;font-size:.85em;padding:7px 14px;transition:all .2s ease}.songs-scope-btn:hover{border-color:var(--riffy-accent-purple);color:var(--harmony-text-primary)}.songs-scope-btn.active{background-color:#7b56d326;border-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}[data-theme=dark] .songs-scope-btn.active{color:#b49df0}.songs-found-riffy{color:var(--harmony-text-subtle);font-size:.85em;margin-left:auto}.load-more-button{align-items:center;background-color:var(--harmony-bg-light);border:1px solid var(--harmony-border);border-radius:500px;color:var(--harmony-text-primary);cursor:pointer;display:flex;font-size:.9em;font-weight:500;gap:8px;margin:20px auto;padding:10px 24px;transition:all .2s ease}.load-more-button:hover:not(:disabled){border-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}.load-more-button:disabled{cursor:wait;opacity:.6}.songs-view-toggle-riffy{background-color:var(--harmony-bg-light);border-radius:500px;display:inline-flex;gap:4px;padding:3px}.songs-view-btn{align-items:center;background-color:initial;border:none;border-radius:500px;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.9em;height:34px;justify-content:center;transition:background-color .2s ease,color .2s ease;width:34px}.songs-view-btn:hover{color:var(--harmony-text-primary)}.songs-view-btn.active{background-color:var(--riffy-accent-purple);color:#fff}.songs-grid-riffy{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:10px}.song-single-badge{background-color:#7b56d31f;border-radius:500px;color:var(--riffy-accent-purple);display:inline-block;font-size:.78em;font-weight:600;padding:2px 8px}[data-theme=dark] .song-single-badge{color:#b49df0}.songs-showmore-riffy{align-items:center;display:flex;flex-direction:column;gap:12px;margin:24px 0}.songs-counter-riffy{color:var(--harmony-text-subtle);font-size:.9em}.songs-showmore-btn{background-color:initial;border:1px solid var(--riffy-accent-purple);border-radius:500px;color:var(--riffy-accent-purple);cursor:pointer;font-size:.9em;font-weight:600;padding:10px 28px;transition:background-color .2s ease,color .2s ease}.songs-showmore-btn:hover{background-color:var(--riffy-accent-purple);color:#fff}[data-theme=dark] .songs-showmore-btn:hover{color:#fff}.section-link-riffy{align-items:center;color:inherit;display:inline-flex;gap:8px;text-decoration:none;transition:color .2s ease}.section-link-riffy:hover{color:var(--riffy-accent-purple)}.section-link-arrow{font-size:.7em;opacity:.8;transition:transform .2s ease}.section-link-riffy:hover .section-link-arrow{transform:translateX(3px)}@media (max-width:768px){.songs-search-riffy{flex-basis:100%;max-width:none}.songs-found-riffy{margin-left:0}}@media (hover:none){.song-card-play-overlay{opacity:1!important;transform:translateY(0) scale(1)!important}}@media (max-width:768px){.site-header-riffy{padding:8px 12px}.header-content-riffy{gap:8px}.header-logo-riffy{align-items:center;display:flex!important;flex-shrink:0;padding:3px}.header-logo-riffy img{border-radius:8px;height:34px;width:auto}.search-container-riffy-header{flex:1 1 auto;min-width:0}.search-container-riffy-header input[type=text]#search-input{border-radius:100px;box-sizing:border-box;font-size:16px;height:40px;padding:0 14px;width:100%!important}.user-auth-actions-riffy{gap:6px}.header-icon-btn,.riffy-header-action-button,.user-auth-actions-riffy .riffy-header-action-button{align-items:center;border-radius:50%!important;box-sizing:border-box;display:inline-flex;height:36px!important;justify-content:center;padding:0!important;width:36px!important}#login-register-btn i{font-size:1em!important;margin-right:6px!important}.riffy-header-action-button i{margin:0}.header-icon-btn{align-items:center;box-sizing:border-box;display:inline-flex;font-size:1.2em;height:36px;justify-content:center;margin-left:2px;padding:0;width:36px}.header-user-avatar{height:38px;margin-right:0;width:38px}.song-card-more-btn{font-size:1em;height:44px;width:44px}.song-card-play-overlay{bottom:8px;height:40px;right:8px;width:40px}.song-card-play-overlay i{font-size:1.1em}.carousel-wrapper .carousel-content{gap:14px;grid-auto-columns:152px}.carousel-wrapper .carousel-content.home-carousel{grid-auto-columns:185px}.carousel-wrapper .carousel-content.home-list-carousel{grid-auto-columns:165px}.list-view-item{grid-template-areas:"cover title plays more" "cover artist plays more"!important;grid-template-columns:48px 1fr auto 40px!important;padding:12px 10px}.list-item-cover{height:48px!important;width:48px!important}.list-item-title{font-size:1em}.song-card-info h3{font-size:.9em}.list-item-more{grid-area:more!important}.list-item-more-btn{height:40px;opacity:1;width:40px}.songs-tab{font-size:.95em;padding:10px 20px}.songs-scope-btn{box-sizing:border-box;font-size:.9em;min-height:40px;padding:10px 16px}.songs-toolbar-riffy{gap:10px}.player-cover-compact{height:40px;width:40px}.track-info-compact{gap:2px}.category-section-riffy h2{margin:24px 0 14px}.section-link-riffy{min-height:44px}.riffy-toast-container{left:8px;max-width:none;right:8px;top:66px}.riffy-toast{border-radius:12px;box-shadow:0 6px 24px #00000059;font-size:.95em;max-width:none;padding:13px 14px;width:100%}.riffy-ui-modal-backdrop{align-items:flex-end;padding:0}.riffy-ui-modal{animation:riffy-toast-in .25s ease forwards;border-radius:18px 18px 0 0;max-width:none;padding:22px 18px calc(22px + env(safe-area-inset-bottom, 0px))}}.yandex-carousel-wrapper{margin-bottom:20px;padding:0;position:relative;width:100%}.yandex-carousel-content{grid-gap:12px 24px;-ms-overflow-style:none;display:grid;gap:12px 24px;grid-auto-columns:320px;grid-auto-flow:column;grid-template-rows:repeat(3,1fr);overflow-x:auto;overflow-y:hidden;padding-bottom:15px;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}.yandex-carousel-content::-webkit-scrollbar{display:none}.yandex-carousel-content>*{margin:0;scroll-snap-align:start}.yandex-row-item{align-items:center;background-color:initial;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;gap:12px;height:100%;min-width:0;padding:8px 12px;transition:background-color .2s ease,transform .1s ease}.yandex-row-cover,.yandex-row-item:hover{background-color:var(--harmony-bg-light)}.yandex-row-cover{border-radius:6px;box-shadow:0 2px 6px #00000026;flex:none;height:48px;object-fit:cover;width:48px}.yandex-row-info{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0}.yandex-row-title{color:var(--harmony-text-primary);font-size:.95em;font-weight:500;margin-bottom:2px}.yandex-row-artist,.yandex-row-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yandex-row-artist{color:var(--harmony-text-secondary);font-size:.82em}.yandex-row-more{flex:none}.yandex-row-more-btn{align-items:center;background-color:initial;border:none;border-radius:50%;color:var(--harmony-text-subtle);cursor:pointer;display:flex;font-size:.9em;height:32px;justify-content:center;opacity:0;transition:opacity .2s ease,background-color .2s ease;width:32px}.yandex-row-item:hover .yandex-row-more-btn,.yandex-row-more-btn.open{opacity:1}.yandex-row-more-btn:hover{background-color:var(--harmony-bg-overlay-medium);color:var(--harmony-text-primary)}@media (hover:none){.yandex-row-more-btn{opacity:1}}@media (max-width:768px){.yandex-carousel-content{gap:10px 15px;grid-auto-columns:280px}.yandex-row-cover{height:44px;width:44px}}.songs-grid-riffy{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding-bottom:20px;width:100%}.list-item-title a,.yandex-row-title a{color:var(--harmony-text-primary);text-decoration:none;transition:color .2s ease}.list-item-title a:hover,.yandex-row-title a:hover{color:var(--riffy-accent-purple);text-decoration:underline}.list-item-artist a,.yandex-row-artist a{color:var(--harmony-text-secondary);text-decoration:none;transition:color .2s ease}.list-item-artist a:hover,.yandex-row-artist a:hover{color:var(--harmony-text-primary);text-decoration:underline}.profile-social-links{bottom:20px;display:flex;gap:12px;position:absolute;right:40px;z-index:3}.profile-social-link{align-items:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:#12121280;border:1px solid #ffffff26;border-radius:50%;color:#fff;display:flex;font-size:1.1em;height:38px;justify-content:center;text-decoration:none;transition:background-color .2s ease,transform .2s ease,border-color .2s ease;width:38px}.profile-social-link:hover{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);color:#fff;transform:scale(1.15) translateY(-2px)}@media (max-width:768px){.profile-social-links{bottom:auto;right:20px;top:20px}}.riffy-compact .song-item,.riffy-compact .song-row{padding-bottom:6px;padding-top:6px}.riffy-compact .song-actions{min-width:auto}.riffy-compact .album-card-title,.riffy-compact .song-row .song-title,.riffy-compact .track-card-info h3{margin-bottom:2px}.riffy-compact .track-card{padding:10px 12px}.riffy-font-small{font-size:13px}.riffy-font-large{font-size:16px}.riffy-font-small .comment-item,.riffy-font-small .song-row{font-size:.95em}.riffy-font-large .comment-item,.riffy-font-large .song-row{font-size:1.05em}.riffy-download-progress{background:#ffffff1f;border-radius:3px;display:block;height:6px;margin-top:6px;overflow:hidden}.riffy-download-progress>i{background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-pink));display:block;height:100%;transition:width .3s ease}@keyframes riffy-sheet-slide-up{0%{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){:root{--sidebar-riffy-width:0px}.sidebar-riffy{display:none!important}.main-content-riffy{margin-left:0;padding:15px 15px calc(140px + env(safe-area-inset-bottom, 0px))!important;width:100%}.site-header-riffy{padding:8px 12px;position:sticky;top:0;z-index:1000}.header-content-riffy{gap:10px}.header-logo-riffy{align-items:center;display:flex!important}.header-logo-riffy img{border-radius:8px;height:32px}.search-container-riffy-header{flex:1 1;margin:0;max-width:none}.search-container-riffy-header input[type=text]#search-input{font-size:16px;padding:8px 16px}#username-display,.riffy-header-action-button:not(#login-register-btn) span{display:none}.header-user-avatar{height:36px;margin-right:0;width:36px}.bottom-nav-riffy{align-items:center;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background-color:#121212d9;background-color:rgba(var(--header-bg-rgb,18,18,18),.85);border-top:1px solid var(--harmony-border);bottom:0;display:flex!important;height:calc(60px + env(safe-area-inset-bottom, 0px));justify-content:space-around;left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:1002}.bottom-nav-riffy a{align-items:center;color:var(--harmony-text-secondary);display:flex;flex:1 1;flex-direction:column;font-size:.65em;font-weight:600;gap:4px;justify-content:center;text-decoration:none;transition:color .2s ease}.bottom-nav-riffy a i{font-size:1.4em}.bottom-nav-riffy a.active{color:var(--riffy-accent-purple)}.audio-player-riffy.compact{background-color:var(--player-bg);border:1px solid var(--harmony-border);border-radius:12px;bottom:calc(60px + env(safe-area-inset-bottom, 0px))!important;box-shadow:0 4px 20px #0006;gap:8px;grid-template-columns:minmax(0,1fr) auto;height:58px;left:8px;padding:0 12px;width:calc(100% - 16px);z-index:1001}.player-cover-compact{border-radius:8px;height:42px;width:42px}.player-left{cursor:pointer;gap:10px;min-width:0}.track-info-and-actions-wrapper{gap:4px;min-width:0}.player-right,.track-actions-compact{display:none!important}.player-center{flex-grow:0;max-width:none;min-width:0}.player-controls-compact{gap:8px}.player-controls-compact .control-btn-compact{display:flex;font-size:1.1em;height:36px;width:36px}.player-controls-compact .control-btn-compact:first-child,.player-controls-compact .control-btn-compact:last-child,.player-controls-compact .control-btn-compact:nth-child(2){display:none}.play-pause-btn-compact{height:40px;width:40px}.progress-area-compact{bottom:0;gap:0;height:2px;left:12px;position:absolute;top:auto;width:calc(100% - 24px)}.time-display-compact{display:none}.progress-bar-container-compact{background-color:#ffffff1a;border-radius:2px;height:2px}.cropper-modal-content,.dropdown-menu-riffy,.fsp-more-menu,.lyrics-modal-content,.modal-content,.player-more-menu-riffy,.queue-modal-content,.song-card-more-menu{animation:riffy-sheet-slide-up .3s cubic-bezier(.25,1,.5,1) forwards!important;background-color:var(--modal-bg)!important;border:1px solid var(--harmony-border)!important;border-bottom:none!important;border-radius:24px 24px 0 0!important;bottom:0!important;box-shadow:0 -10px 40px #00000080,0 0 0 100vmax #00000080!important;left:0!important;max-height:85dvh!important;max-width:100%!important;overflow-y:auto!important;padding:24px 16px calc(24px + env(safe-area-inset-bottom, 0px))!important;position:fixed!important;right:0!important;top:auto!important;transform:none!important;width:100%!important;z-index:9999!important}.modal-content:before,.song-card-more-menu:before{background-color:var(--harmony-text-subtle);border-radius:4px;content:"";height:4px;left:50%;opacity:.5;position:absolute;top:8px;transform:translateX(-50%);width:40px}.modal{align-items:flex-end;background-color:initial!important;padding:0}.fsp-overlay{height:100dvh;justify-content:space-between;padding:15px 20px calc(30px + env(safe-area-inset-bottom, 0px))}.fsp-main-content{gap:20px;grid-template-columns:1fr!important;overflow-y:auto;padding:0}.fsp-content-left .fsp-cover-art-container{margin:0 auto 20px;max-width:85vw}.fsp-cover-art{box-shadow:0 10px 40px #0009}.fsp-track-info h2{font-size:1.5em;letter-spacing:0}.fsp-controls{gap:20px;margin-bottom:20px}.fsp-control-btn.play-pause{font-size:1.8em;height:70px;width:70px}.list-view-item{grid-template-areas:"cover title plays more" "cover artist plays more"!important;grid-template-columns:48px 1fr auto 44px!important;padding:14px 10px}.list-item-cover{border-radius:6px;height:48px!important;width:48px!important}.list-item-more-btn{font-size:1.2em;height:44px;opacity:1;width:44px}.playlist-tab-button{font-size:1em;padding:12px 16px;white-space:nowrap}.riffy-button-outline,.riffy-button-primary-purple{font-size:1em;padding:12px 20px}html{-webkit-tap-highlight-color:transparent}body{overflow-x:hidden;position:relative;width:100%}.main-content-riffy{padding:12px 14px calc(154px + env(safe-area-inset-bottom, 0px))!important}.site-header-riffy{padding:8px 10px}.header-content-riffy{flex-wrap:nowrap;gap:8px}.header-logo-riffy{flex-shrink:0;padding:0}.header-logo-riffy img{border-radius:8px;display:block;height:30px;width:auto}.search-container-riffy-header{flex:1 1 auto;min-width:0}.search-container-riffy-header input[type=text]#search-input{border-radius:100px;box-sizing:border-box;font-size:16px;height:40px;padding:0 14px;width:100%!important}.header-content-riffy .header-icon-btn,.header-content-riffy .riffy-header-action-button{align-items:center;border-radius:50%!important;box-sizing:border-box;display:inline-flex;flex:0 0 auto;height:36px!important;justify-content:center;padding:0!important;width:36px!important}#login-register-btn{align-items:center;border-radius:16px!important;display:inline-flex;font-size:.8em!important;height:32px!important;padding:0 12px!important;white-space:nowrap;width:auto!important}#login-register-btn i{font-size:1em!important;margin-right:6px!important}.header-user-avatar{height:36px;margin-right:0;width:36px}.bottom-nav-riffy{height:calc(58px + env(safe-area-inset-bottom, 0px))}.bottom-nav-riffy a{gap:3px;min-height:100%}.audio-player-riffy.compact{backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);background-color:var(--player-bg)!important;border-radius:14px;bottom:calc(58px + env(safe-area-inset-bottom, 0px))!important;box-shadow:0 6px 28px #0000008c;box-sizing:border-box;height:54px;left:6px;padding:0 10px;width:calc(100% - 12px)}.player-cover-compact{border-radius:10px;height:40px;width:40px}.track-info-compact{min-width:0;overflow:hidden}.title-container-compact{font-size:.92em}.artist-name-compact,.title-container-compact{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.artist-name-compact{color:var(--harmony-text-secondary);font-size:.78em}.player-controls-compact{gap:6px}.player-controls-compact .control-btn-compact{font-size:1.15em;height:38px;width:38px}.play-pause-btn-compact{font-size:1.05em;height:40px;width:40px}.progress-area-compact{bottom:0;height:2px;left:12px;width:calc(100% - 24px)}.progress-bar-container-compact,.progress-slider-compact{height:2px}.list-view-item{gap:12px;grid-template-columns:48px 1fr auto 44px!important;min-height:60px;padding:12px 10px}.list-item-cover{border-radius:8px;height:48px!important;width:48px!important}.list-item-more-btn{font-size:1.25em;height:44px;width:44px}.list-item-play-button{height:40px;width:40px}.list-item-plays{font-size:.85em}.song-card-more-btn{font-size:1em;height:44px;width:44px}.song-card-play-overlay{bottom:8px;height:40px;right:8px;width:40px}.profile-tabs-nav{-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none}}@media (max-width:768px){.profile-tabs-nav::-webkit-scrollbar{display:none}.profile-tab-button{flex:0 0 auto}.dropdown-menu-riffy,.fsp-more-menu,.lyrics-modal-content,.modal-content,.player-more-menu-riffy,.queue-modal-content,.song-card-more-menu{max-height:88dvh!important}.dropdown-menu-riffy>*,.fsp-more-menu>*,.player-more-menu-riffy>*,.song-card-more-menu>*{align-items:center;border-radius:10px;box-sizing:border-box;display:flex;min-height:48px}.player-controls-compact .fa-step-backward{display:none!important}}@keyframes riffy-sheet-slide-down{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}@media (max-width:768px){.audio-player-riffy.compact{background-color:var(--player-bg)!important;box-shadow:0 4px 20px #00000080!important}.audio-player-riffy.compact,.bottom-nav-riffy{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.bottom-nav-riffy{background-color:#121212f7!important}[data-theme=light] .bottom-nav-riffy{background-color:#fffffff7!important}.search-container-riffy-header{flex:0 1 148px!important;margin-right:0!important;max-width:148px!important;min-width:0!important;width:148px!important}.search-container-riffy-header input[type=text]#search-input{font-size:14px!important;height:36px!important;padding:0 12px!important}.dropdown-menu-riffy,.fsp-more-menu,.player-more-menu-riffy,.song-card-more-menu{animation:riffy-sheet-slide-down .22s cubic-bezier(.25,1,.5,1) forwards!important;border-radius:16px!important;bottom:auto!important;box-shadow:0 12px 40px #0000008c!important;left:12px!important;max-height:calc(100dvh - 130px)!important;max-width:100%!important;overflow-y:auto!important;padding:8px!important;right:12px!important;top:66px!important;transform:none!important;width:auto!important}.dropdown-menu-riffy:before,.fsp-more-menu:before,.player-more-menu-riffy:before,.song-card-more-menu:before{display:none!important}.dropdown-menu-riffy .player-more-menu-item,.fsp-more-menu .player-more-menu-item,.player-more-menu-riffy .player-more-menu-item,.song-card-more-menu .player-more-menu-item{align-items:center!important;border-radius:10px!important;box-sizing:border-box!important;display:flex!important;gap:12px!important;margin:2px 0!important;min-height:44px!important;padding:8px 12px!important}.dropdown-menu-riffy>*,.fsp-more-menu>*,.player-more-menu-riffy>*,.song-card-more-menu>*{border-radius:0!important;display:block!important;min-height:0!important}.dropdown-menu-riffy .player-more-menu-divider,.fsp-more-menu .player-more-menu-divider,.player-more-menu-riffy .player-more-menu-divider,.song-card-more-menu .player-more-menu-divider{height:1px!important;margin:6px 10px!important}.player-more-menu-item-submenu-container>.player-more-menu-item{margin-bottom:2px!important}.player-more-submenu{margin:0!important;padding:4px!important}.modal{align-items:flex-start!important}.cropper-modal-content,.lyrics-modal-content,.modal-content,.queue-modal-content{animation:riffy-sheet-slide-down .26s cubic-bezier(.25,1,.5,1) forwards!important;border-radius:0 0 24px 24px!important;bottom:auto!important;max-height:92dvh!important;padding-top:calc(18px + env(safe-area-inset-top, 0px))!important;top:0!important}.player-controls-compact .control-btn-compact:nth-child(2),.player-controls-compact .fa-step-backward{display:inline-flex!important}.playlist-actions-details{flex-wrap:wrap!important}.playlist-actions-details .riffy-button-outline,.playlist-actions-details .riffy-button-primary-icon{flex:0 1 auto!important;min-width:0!important;padding:10px 14px!important;white-space:nowrap!important}.profile-actions{flex-wrap:wrap!important}.profile-actions>*{flex:0 1 auto!important;min-width:0!important;white-space:nowrap!important}.profile-actions .riffy-button-primary-purple,.profile-actions .riffy-button-secondary-icon,.profile-actions .riffy-button-secondary-text-icon{min-height:44px!important}.dropdown-menu-riffy,.fsp-more-menu,.player-more-menu-riffy,.song-card-more-menu{max-height:56dvh!important;padding:6px!important}.dropdown-menu-riffy .player-more-menu-item,.fsp-more-menu .player-more-menu-item,.player-more-menu-riffy .player-more-menu-item,.song-card-more-menu .player-more-menu-item{gap:10px!important;min-height:40px!important;padding:6px 10px!important}.dropdown-menu-riffy .player-more-menu-divider,.fsp-more-menu .player-more-menu-divider,.player-more-menu-riffy .player-more-menu-divider,.song-card-more-menu .player-more-menu-divider{margin:3px 8px!important}.player-more-menu-item-submenu-container .player-more-menu-item{min-height:40px!important}.signin-page{justify-content:flex-start!important;min-height:100dvh!important;padding-top:calc(60px + env(safe-area-inset-top, 0px))!important}.signin-page .auth-wrapper{max-width:100%!important;padding:0 14px!important}.signin-page .auth-tabs-external{gap:6px!important;margin:4px 0 10px!important}.signin-page .auth-tabs-external .tab-btn{border-radius:7px!important;font-size:.82em!important;min-height:32px!important;padding:7px 0!important}.signin-page .auth-form-wrapper{border-radius:14px!important;padding:14px 14px 16px!important}.signin-page .auth-brand-icon{font-size:1em!important;height:38px!important;margin-bottom:2px!important;width:38px!important}.signin-page .auth-form-wrapper h2{font-size:1.3em!important;margin-bottom:4px!important}.signin-page .auth-form-wrapper .auth-subtitle{font-size:.82em!important;margin-bottom:10px!important}.signin-page .auth-form .form-group{margin-bottom:10px!important}.signin-page .auth-form .form-group label{font-size:.8em!important;margin-bottom:5px!important}.signin-page .auth-form .input-group input{font-size:.92em!important;padding:10px 12px 10px 38px!important}.signin-page .auth-form .input-icon{font-size:1em!important;left:13px!important}.signin-page .auth-form .form-group-extra{margin-bottom:12px!important;margin-top:-3px!important}.signin-page .auth-form .remember-me-label,.signin-page .auth-form .terms-checkbox-label{font-size:.78em!important}.signin-page .social-login-options{margin:12px 0 10px!important}.signin-page .social-login-text{font-size:.8em!important;margin-bottom:8px!important}.signin-page .social-login-btn{font-size:1.1em!important;height:40px!important;width:40px!important}.signin-page .auth-form .submit-btn.main-action-btn{border-radius:7px!important;font-size:.95em!important;padding:11px!important}.signin-page .switch-auth-text{font-size:.82em!important;margin-top:8px!important}.signin-page .terms-text{font-size:.68em!important;margin-top:8px!important;max-width:100%!important}.catalog-loading-hint{color:var(--harmony-text-subtle);font-size:.82em;margin:-6px 0 12px}.list-view-item{gap:10px!important;grid-template-columns:40px 1fr auto 36px!important;min-height:50px!important;padding:8px 10px!important}.list-item-cover{border-radius:6px!important;height:40px!important;width:40px!important}.page-header-riffy{margin-bottom:15px!important;padding-bottom:10px!important}.page-header-riffy h1{font-size:1.4em!important}.audio-player-riffy.compact{border-radius:10px!important;bottom:calc(52px + env(safe-area-inset-bottom, 0px))!important;height:50px!important;padding:0 10px!important}.player-cover-compact{border-radius:6px!important;height:36px!important;width:36px!important}.play-pause-btn-compact{font-size:.9em!important;height:34px!important;width:34px!important}.bottom-nav-riffy{height:calc(52px + env(safe-area-inset-bottom, 0px))!important}.bottom-nav-riffy a{font-size:.6em!important}.bottom-nav-riffy a i{font-size:1.3em!important;margin-bottom:2px!important}.dropdown-menu-riffy,.fsp-more-menu,.player-more-menu-riffy,.song-card-more-menu{padding:8px!important}.player-more-menu-riffy .player-more-menu-item,.song-card-more-menu .player-more-menu-item{font-size:.85em!important;min-height:36px!important;padding:6px 10px!important}.main-content-riffy{padding:12px 14px calc(150px + env(safe-area-inset-bottom, 0px))!important}.site-header-riffy{background-color:var(--header-bg);border-bottom:1px solid var(--harmony-border);padding:8px 12px;position:sticky;top:0;z-index:1000}.header-content-riffy{flex-wrap:nowrap;gap:8px}.header-logo-riffy{flex-shrink:0;padding:0}.header-logo-riffy img{border-radius:8px;display:block;height:30px;width:auto}.search-container-riffy-header{flex:1 1 auto;margin:0;max-width:none!important;min-width:0;width:auto!important}.search-container-riffy-header input[type=text]#search-input{background-color:#121212a6;background-color:rgba(var(--header-bg-rgb,18,18,18),.65);border:1px solid var(--harmony-border);border-radius:100px!important;box-sizing:border-box;color:var(--harmony-text-primary);font-size:15px!important;height:38px!important;padding:0 14px!important;transition:border-color .2s ease,box-shadow .2s ease;width:100%!important}.search-container-riffy-header input[type=text]#search-input:focus{border-color:var(--riffy-accent-purple);box-shadow:0 0 0 3px #7b56d340;outline:none}.header-content-riffy .header-icon-btn,.header-content-riffy .riffy-header-action-button{align-items:center;background-color:#ffffff14;background-color:rgba(var(--header-bg-rgb,255,255,255),.08);border-radius:50%!important;box-sizing:border-box;color:var(--harmony-text-primary);display:inline-flex;flex:0 0 auto;height:38px!important;justify-content:center;padding:0!important;width:38px!important}#login-register-btn{align-items:center;background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));border-radius:100px!important;box-shadow:0 4px 14px #7b56d359;color:#fff;display:inline-flex;font-size:.82em!important;gap:6px;height:34px!important;padding:0 14px!important;white-space:nowrap;width:auto!important}#login-register-btn i{font-size:.95em!important;margin-right:0!important}.header-user-avatar{height:34px!important;margin-right:0;width:34px!important}.bottom-nav-riffy{background-color:#121212f5!important;background-color:rgba(var(--header-bg-rgb,18,18,18),.96)!important;border-top:1px solid var(--harmony-border);display:flex!important;height:calc(56px + env(safe-area-inset-bottom, 0px))!important;padding-bottom:env(safe-area-inset-bottom,0)!important}.bottom-nav-riffy a{color:var(--harmony-text-secondary);font-size:.62em;font-weight:600;gap:3px;justify-content:center;min-height:100%;position:relative}.bottom-nav-riffy a i{font-size:1.45em;line-height:1;transition:color .2s ease,transform .2s ease}.bottom-nav-riffy a.active{color:var(--riffy-accent-purple)!important}.bottom-nav-riffy a.active i{transform:translateY(-1px)}.bottom-nav-riffy a.active:after{background:var(--riffy-accent-purple);border-radius:50%;box-shadow:0 0 8px #7b56d3cc;content:"";height:4px;left:50%;position:absolute;top:5px;transform:translateX(-50%);width:4px}.audio-player-riffy.compact{background-color:var(--player-bg)!important;border:1px solid var(--harmony-border)!important;border-radius:16px!important;bottom:calc(56px + env(safe-area-inset-bottom, 0px))!important;box-shadow:0 8px 28px #00000080!important;box-sizing:border-box;height:56px!important;left:8px!important;padding:0 12px!important;width:calc(100% - 16px)!important}.player-cover-compact{border-radius:10px!important;height:42px!important;width:42px!important}.player-left{gap:10px;min-width:0}.track-info-compact{min-width:0}.title-container-compact{font-size:.92em;font-weight:600}.track-info-and-actions-wrapper{min-width:0}.player-right,.track-actions-compact{display:none!important}.player-controls-compact{gap:2px!important}.player-controls-compact .control-btn-compact{border-radius:50%!important;color:var(--harmony-text-primary);font-size:1.15em!important;height:38px!important;width:38px!important}.player-controls-compact .control-btn-compact:first-child,.player-controls-compact .control-btn-compact:last-child{display:none!important}.play-pause-btn-compact{box-shadow:0 4px 14px #7b56d373!important;font-size:1.1em!important;height:42px!important;width:42px!important}.time-display-compact{display:none!important}.progress-area-compact{bottom:0;gap:0;height:3px;left:16px;position:absolute;width:calc(100% - 32px)}.progress-bar-container-compact{background-color:var(--harmony-border);border-radius:3px;height:3px}.progress-bar-container-compact:hover{height:3px}.progress-fill-compact{background:linear-gradient(90deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover))}.list-view-item{border-radius:10px!important;gap:12px!important;grid-template-areas:"cover title title more" "cover artist plays more"!important;grid-template-columns:44px 1fr auto 40px!important;min-height:56px!important;padding:10px 12px!important}.list-item-index{display:none!important}.list-item-cover{border-radius:8px!important;height:44px!important;width:44px!important}.list-item-title{font-size:.95em!important;font-weight:600!important}.list-item-album,.list-item-artist{font-size:.85em}.list-item-plays{font-size:.8em!important;padding-right:4px}.list-item-more-btn,.list-item-play-button{font-size:1.15em!important}.list-item-more-btn{height:40px!important;opacity:1;width:40px!important}.playlist-overview-card,.song-card{border-radius:14px!important;padding:10px!important}.song-card img.cover-art{border-radius:8px!important}.song-card-info h3{font-size:.88em!important}.song-card-more-btn{background-color:#ffffff0f;background-color:rgba(var(--header-bg-rgb,255,255,255),.06);border-radius:50%;height:40px!important;opacity:1;width:40px!important}.song-card-play-overlay{background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover));bottom:10px!important;box-shadow:0 4px 14px #7b56d366;height:42px!important;opacity:1!important;right:10px!important;transform:none!important;width:42px!important}.songs-carousel-riffy{gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.songs-tab{border-radius:100px;font-size:.9em!important;padding:10px 16px!important}.playlist-tab-button{font-size:.95em!important;padding:11px 16px!important}.riffy-button-outline,.riffy-button-primary-icon,.riffy-button-primary-purple,.riffy-button-secondary-icon,.riffy-button-secondary-text-icon{min-height:42px!important}.dropdown-menu-riffy,.fsp-more-menu,.player-more-menu-riffy,.song-card-more-menu{animation:riffy-sheet-slide-down .22s cubic-bezier(.25,1,.5,1) forwards!important;background-color:var(--dropdown-bg)!important;border:1px solid var(--harmony-border)!important;border-radius:18px!important;bottom:auto!important;box-shadow:0 12px 40px #0000008c!important;left:12px!important;max-height:calc(100dvh - 140px)!important;max-width:100%!important;overflow-y:auto!important;padding:8px!important;position:fixed!important;right:12px!important;top:64px!important;transform:none!important;width:auto!important}.dropdown-menu-riffy:before,.fsp-more-menu:before,.player-more-menu-riffy:before,.song-card-more-menu:before{display:none!important}.dropdown-menu-riffy .player-more-menu-item,.fsp-more-menu .player-more-menu-item,.player-more-menu-riffy .player-more-menu-item,.song-card-more-menu .player-more-menu-item{align-items:center!important;border-radius:12px!important;box-sizing:border-box!important;display:flex!important;font-size:.92em!important;gap:12px!important;margin:2px 0!important;min-height:46px!important;padding:8px 12px!important}.dropdown-menu-riffy>*,.fsp-more-menu>*,.player-more-menu-riffy>*,.song-card-more-menu>*{border-radius:0!important;display:block!important;min-height:0!important}.dropdown-menu-riffy .player-more-menu-divider,.fsp-more-menu .player-more-menu-divider,.player-more-menu-riffy .player-more-menu-divider,.song-card-more-menu .player-more-menu-divider{height:1px!important;margin:6px 10px!important}.modal{align-items:flex-start!important;background-color:initial!important;padding:0}.cropper-modal-content,.lyrics-modal-content,.modal-content,.queue-modal-content{animation:riffy-sheet-slide-down .26s cubic-bezier(.25,1,.5,1) forwards!important;border-radius:0 0 24px 24px!important;bottom:auto!important;left:0!important;max-height:92dvh!important;max-width:100%!important;overflow-y:auto!important;padding-bottom:calc(18px + env(safe-area-inset-bottom, 0px))!important;padding-top:calc(18px + env(safe-area-inset-top, 0px))!important;position:fixed!important;right:0!important;top:0!important;transform:none!important;width:100%!important}.fsp-overlay{height:100dvh;justify-content:space-between;padding:calc(16px + env(safe-area-inset-top, 0px)) 20px calc(24px + env(safe-area-inset-bottom, 0px))}.fsp-cover-art{border-radius:16px;box-shadow:0 10px 40px #0009}.fsp-track-info h2{font-size:1.5em;letter-spacing:0}.fsp-controls{gap:24px;margin-bottom:16px}.fsp-control-btn.play-pause{font-size:1.9em;height:74px;width:74px}.riffy-toast{border-radius:14px!important;bottom:calc(126px + env(safe-area-inset-bottom, 0px))!important;left:16px!important;max-width:none!important;padding:13px 14px!important;right:16px!important;width:auto!important}[data-theme=light] .bottom-nav-riffy{background-color:#fffffff5!important}[data-theme=light] .audio-player-riffy.compact{background-color:var(--harmony-bg-light)!important}[data-theme=light] .cropper-modal-content,[data-theme=light] .dropdown-menu-riffy,[data-theme=light] .fsp-more-menu,[data-theme=light] .lyrics-modal-content,[data-theme=light] .modal-content,[data-theme=light] .player-more-menu-riffy,[data-theme=light] .queue-modal-content,[data-theme=light] .song-card-more-menu{background-color:#fff!important;border-color:var(--harmony-border)}}@media (prefers-reduced-motion:reduce){.riffy-sheet-slide-down,.riffy-sheet-slide-up{animation:none!important}}@media (max-width:768px){.settings-page-container{box-sizing:border-box;flex-direction:column!important;flex-wrap:wrap!important;height:auto!important;margin:0!important;min-height:0!important}.settings-page-container,.settings-sidebar{max-width:100%!important;width:100%!important}.settings-sidebar{border-bottom:1px solid var(--harmony-border);border-right:none;flex-direction:column;flex-shrink:0;overflow:hidden!important;overflow-y:hidden!important;padding:10px 12px!important}.settings-sidebar h2{display:none}.settings-nav{grid-gap:8px!important;display:grid!important;flex-grow:0;gap:8px!important;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;padding:0!important}.settings-nav-item{border-radius:10px;box-sizing:border-box;flex:none!important;justify-content:flex-start;min-height:40px;padding:10px 12px!important;white-space:normal!important;width:100%!important}.settings-nav-item i{flex-shrink:0;font-size:.95em;width:18px}.settings-main{height:auto!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;padding:16px 14px 150px!important;width:100%!important}.settings-tab-content{border-radius:14px;box-sizing:border-box;margin-bottom:14px;max-width:100%;overflow:hidden;padding:18px 16px!important;width:100%}.settings-select-row,.settings-slider-row,.settings-toggle-row{flex-wrap:wrap!important;gap:10px;padding:14px 0}.settings-select-info,.settings-toggle-info{flex:1 1 100%!important;margin-right:0!important}.settings-select{flex-shrink:1!important;max-width:100%!important}.settings-range,.settings-select{min-width:0!important;width:100%!important}.settings-slider-row label{min-width:0!important;width:100%}.settings-eq-section{overflow:hidden;padding:12px!important}.settings-eq-bands{gap:4px!important;overflow:hidden;padding:10px 6px!important}.eq-band-col input[type=range]{height:110px!important;width:24px!important}.eq-band-label{display:none!important}.settings-time-range{flex-direction:column!important;gap:10px!important}.settings-save-bar{flex-wrap:wrap;gap:10px;justify-content:center;position:static;width:100%!important}.settings-action-row .riffy-button-outline,.settings-action-row .riffy-button-primary-purple,.settings-save-bar .riffy-button-outline,.settings-save-bar .riffy-button-primary-purple{flex:1 1 auto!important;min-width:0!important;white-space:nowrap!important}.settings-avatar-section{flex-wrap:wrap;gap:14px}.settings-avatar-preview-container{height:84px!important;width:84px!important}.settings-avatar-upload{flex:1 1 100%}.settings-section-link{border-radius:10px;box-sizing:border-box;font-size:.92em;overflow:hidden;padding:12px;width:100%}.settings-section-title{font-size:1.1em}.settings-info-text{font-size:.85em}.settings-main .settings-form-container,.settings-main .settings-tab-content form{box-sizing:border-box;max-width:100%;overflow:hidden;width:100%}body:has(.settings-page-container){overflow-x:hidden!important}}@media (max-width:480px){.settings-nav{grid-template-columns:1fr!important}.settings-tab-content{padding:15px 12px!important}.settings-eq-band-col input[type=range]{height:90px!important}}@media (max-width:768px){.main-content-riffy{margin-left:0!important;padding-left:14px!important}.settings-page-container{align-self:flex-start!important;flex-direction:column!important;flex-wrap:wrap!important;left:0!important;margin-left:0!important;margin-right:0!important;max-width:100%!important;padding:0!important;width:100%!important}.settings-sidebar{margin-left:0!important;padding-left:12px!important}.settings-main{margin-left:0!important;padding-left:14px!important}#app,#app-root,#root,.main-root,body,html{max-width:100vw!important;overflow-x:clip!important}#profile-page-container{box-sizing:border-box;margin:0!important;width:100%!important}#profile-page-container,.admin-page-container,.invite-page-wrap,.lyrics-page-container,.queue-page-container,.stats-summary-grid,.story-container,.track-stats-container,.wiki-music-container{max-width:100%!important}.collaborator-percent,.collaborator-scrobbles,.track-stats-hero-stat{min-width:0!important}.plays-chart-day,.track-stats-chart-day{white-space:normal!important}.profile-social-links{align-items:center;display:flex!important;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:12px;position:static!important;width:100%}.audio-player-riffy.compact{backdrop-filter:blur(24px) saturate(1.4)!important;-webkit-backdrop-filter:blur(24px) saturate(1.4)!important;background-color:#121212eb!important;border:none!important;border-radius:0!important;border-top:1px solid var(--harmony-border)!important;bottom:calc(56px + env(safe-area-inset-bottom, 0px))!important;box-shadow:0 -6px 24px #00000073!important;box-sizing:border-box;gap:10px!important;grid-template-columns:minmax(0,1fr) auto!important;height:58px!important;left:0!important;max-width:100%!important;padding:0 14px!important;width:100%!important}[data-theme=light] .audio-player-riffy.compact{background-color:#fffffff0!important;box-shadow:0 -6px 24px #0000002e!important}.audio-player-riffy.compact .player-left{gap:12px;min-width:0}.player-cover-compact{border-radius:10px!important;box-shadow:0 4px 12px #0006!important;height:42px!important;width:42px!important}.title-container-compact{font-size:.95em!important;font-weight:700!important}.title-container-compact a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=light] .title-container-compact a{color:var(--harmony-text-primary)}.artist-name-compact{color:var(--harmony-text-secondary)!important;font-size:.76em!important}.artist-name-compact a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-actions-compact{display:flex!important;gap:4px!important}.track-actions-compact>div{display:none!important}.track-actions-compact .player-action-btn{align-items:center;display:flex!important;font-size:1.05em!important;height:34px!important;justify-content:center;width:34px!important}.player-controls-compact{gap:2px!important}.player-controls-compact .control-btn-compact{border-radius:50%!important;color:var(--harmony-text-primary);font-size:1.1em!important;height:36px!important;width:36px!important}.player-controls-compact .control-btn-compact:first-child,.player-controls-compact .control-btn-compact:last-child{display:none!important}.play-pause-btn-compact{background:linear-gradient(135deg,var(--riffy-accent-purple),var(--riffy-accent-purple-hover))!important;box-shadow:0 4px 16px #7b56d380!important;font-size:1.2em!important;height:44px!important;width:44px!important}.player-right,.time-display-compact{display:none!important}.progress-area-compact{bottom:0!important;gap:0!important;height:3px!important;left:0!important;position:absolute!important;right:0!important;width:100%!important}.progress-bar-container-compact{background-color:#ffffff1f!important}.progress-bar-container-compact,.progress-slider-compact{border-radius:0!important;height:3px!important;width:100%!important}.fsp-overlay{height:100dvh;justify-content:space-between;padding:calc(16px + env(safe-area-inset-top, 0px)) 20px calc(24px + env(safe-area-inset-bottom, 0px))!important}.fsp-cover-art-container{max-width:min(72vw,320px)!important}.fsp-cover-art{border-radius:18px!important;box-shadow:0 16px 48px #000000a6!important}.fsp-track-info h2{font-size:1.6em!important;font-weight:800!important;letter-spacing:-.2px!important}.fsp-controls{gap:26px!important;margin-bottom:18px!important}.fsp-control-btn.play-pause{box-shadow:0 8px 28px #7b56d38c!important;font-size:2em!important;height:76px!important;width:76px!important}}.yandex-carousel-content{gap:12px 28px!important;grid-auto-columns:minmax(620px,44vw)!important}.yandex-row-title,.yandex-row-title a{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.yandex-row-item{align-items:center!important;padding:10px 12px!important}.list-item-title,.list-item-title a{-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;display:-webkit-box!important;line-height:1.25!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:normal!important}.list-item-info{display:flex!important;flex-direction:column!important;justify-content:center!important}.queue-track-item.current{background-color:color-mix(in srgb,var(--riffy-accent-purple) 16%,#0000)!important;border:1px solid color-mix(in srgb,var(--riffy-accent-purple) 45%,#0000)!important;border-radius:14px!important;box-shadow:0 4px 16px -4px color-mix(in srgb,var(--riffy-accent-purple) 40%,#0000)!important;padding:10px 12px!important}.queue-track-item.current .queue-item-title{color:var(--riffy-accent-purple)!important;font-weight:700!important}.queue-track-item.current .queue-item-play-icon{opacity:1!important}.queue-item-remove-btn{opacity:.7!important}.fsp-queue-item.current{background-color:color-mix(in srgb,var(--riffy-accent-purple) 16%,#0000)!important;border:1px solid color-mix(in srgb,var(--riffy-accent-purple) 45%,#0000)!important;border-radius:14px!important;box-shadow:0 4px 16px -4px color-mix(in srgb,var(--riffy-accent-purple) 40%,#0000)!important}.fsp-queue-item.current .fsp-queue-item-title{color:var(--riffy-accent-purple)!important;font-weight:700!important}.fsp-queue-item.current .fsp-queue-item-playing-icon{font-size:1.2em!important}@media (max-width:768px){.yandex-carousel-content{gap:12px 16px!important;grid-auto-columns:minmax(calc(100vw - 32px),100%)!important}.yandex-row-title,.yandex-row-title a{font-size:.95em!important;line-height:1.2!important}}.page-transition{animation:riffy-page-in .4s cubic-bezier(.22,1,.36,1) both}@keyframes riffy-page-in{0%{opacity:0}to{opacity:1}}@keyframes riffy-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fsp-vinyl-spin{to{transform:rotate(1turn)}}@keyframes fsp-play-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes fsp-bg-zoom{0%{transform:scale(1.1)}to{transform:scale(1.22)}}.fsp-background{animation:fsp-bg-zoom 26s ease-in-out infinite alternate}.fsp-cover-art-container{align-items:center;display:flex;justify-content:center}.fsp-content-left .fsp-cover-art-container{max-width:min(420px,38vh)}.fsp-vinyl{animation:fsp-vinyl-spin 14s linear infinite;animation-play-state:paused;border-radius:50%;height:100%;position:relative;width:100%;will-change:transform}.fsp-cover-art-container.playing .fsp-vinyl{animation-play-state:running}.fsp-vinyl-disc{background:radial-gradient(circle at 50% 42%,#242424 0,#141414 45%,#0a0a0a 100%);border-radius:50%;box-shadow:0 0 0 1px var(--harmony-border),0 24px 60px #0009;inset:0;position:absolute;transition:box-shadow .6s ease}.fsp-cover-art-container.playing .fsp-vinyl-disc{box-shadow:0 0 0 1px var(--harmony-border),0 24px 60px #0009,0 0 70px -14px var(--riffy-accent-purple)}.fsp-cover-art-container:hover .fsp-vinyl-disc{box-shadow:0 0 0 1px var(--harmony-border),0 24px 60px #0009,0 0 40px -10px var(--riffy-accent-purple)}.fsp-vinyl-disc:before{background:repeating-radial-gradient(circle at 50% 50%,#ffffff0f 0 1px,#0000 1px 7px);border-radius:50%;content:"";inset:5%;opacity:.7;position:absolute}.fsp-vinyl-cover{background-color:var(--harmony-bg-light);box-shadow:0 0 0 3px #0000008c,0 8px 26px #00000080;height:62%;object-fit:cover;width:62%}.fsp-vinyl-cover,.fsp-vinyl-hole{border-radius:50%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.fsp-vinyl-hole{background:#0d0d0d;background:var(--player-bg,#0d0d0d);box-shadow:0 0 0 2px #ffffff2e;height:7%;width:7%}.fsp-visualizer{display:block;height:72px;margin-top:16px;max-width:700px;opacity:.92;width:100%}.fsp-control-btn.play-pause.is-playing{animation:fsp-play-pulse 2.4s ease-in-out infinite}.album-card,.fsp-queue-item,.list-view-container>*,.songs-grid-riffy>*,.track-card,.yandex-row-item{animation:riffy-rise .45s cubic-bezier(.22,1,.36,1) both}@media (max-width:768px){.fsp-content-left .fsp-cover-art-container{max-width:min(300px,42vh)}.fsp-visualizer{height:56px;margin-top:10px}}@media (prefers-reduced-motion:reduce){.album-card,.fsp-background,.fsp-control-btn.play-pause.is-playing,.fsp-queue-item,.fsp-vinyl,.list-view-container>*,.page-transition,.songs-grid-riffy>*,.track-card,.yandex-row-item{animation:none!important}}.fsp-cover-static{background-color:var(--harmony-bg-light);border-radius:18px;box-shadow:0 24px 60px #0009;height:100%;overflow:hidden;position:relative;transition:box-shadow .6s ease;width:100%}.fsp-cover-static-img{display:block;height:100%;inset:0;object-fit:cover;position:absolute;width:100%}.fsp-cover-art-container.playing .fsp-cover-static{box-shadow:0 24px 60px #0009,0 0 70px -14px var(--riffy-accent-purple)}.fsp-cover-art-container:not(.playing) .fsp-cover-static{animation:fsp-cover-idle 7s ease-in-out infinite}@keyframes fsp-cover-idle{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}.cover-mode-options{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px}.cover-mode-card{align-items:center;background:#1b1b1f;background:var(--harmony-bg-light,#1b1b1f);border:2px solid #333;border:2px solid var(--harmony-border,#333);border-radius:14px;color:#eee;color:var(--harmony-text,#eee);cursor:pointer;display:flex;gap:10px;padding:14px 18px;position:relative;transition:border-color .2s ease,box-shadow .2s ease}.cover-mode-card input{opacity:0;pointer-events:none;position:absolute}.cover-mode-card.selected{border-color:#7c5cff;border-color:var(--riffy-accent-purple,#7c5cff);box-shadow:0 0 0 3px #7c5cff40}.cover-mode-card-label{font-size:14px;font-weight:500}@media (prefers-reduced-motion:reduce){.fsp-cover-art-container:not(.playing) .fsp-cover-static{animation:none}}@keyframes fsp-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes fsp-slide-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}.fsp-slide-up{animation:fsp-slide-up .4s cubic-bezier(.25,1,.5,1) forwards}.fsp-slide-down{animation:fsp-slide-down .4s cubic-bezier(.25,1,.5,1) forwards}.fsp-queue-section h3{font-size:1.5rem;margin-bottom:20px}.lyrics-body-fsp{overflow-y:auto;padding:0 0 40px}.lyrics-body-fsp p{color:var(--harmony-text-subtle);cursor:pointer;font-size:1.8rem;font-weight:800;letter-spacing:-.5px;line-height:1.4;margin:0 0 16px;padding:0;transition:color .3s ease,transform .3s ease}.lyrics-body-fsp p:hover{color:var(--harmony-text-primary);transform:scale(1.02);transform-origin:left center}@media (max-width:768px){.lyrics-body-fsp p{font-size:1.4rem}}.profile-tab-content.active #profile-manage-delete-btn{display:inline-flex}#profile-manage-delete-btn{display:none}.search-page-container{animation:fadeIn .3s ease-out;margin:0 auto;max-width:1200px}.main-search-form{align-items:center;background-color:var(--harmony-bg-medium);border:2px solid #0000;border-radius:12px;box-shadow:var(--harmony-shadow-md);display:flex;margin-bottom:25px;padding:10px 20px;position:relative;transition:all .3s cubic-bezier(.25,.8,.25,1)}.main-search-form:hover{background-color:var(--harmony-bg-light)}.main-search-form:focus-within{background-color:var(--harmony-bg-medium);border-color:var(--riffy-accent-purple);box-shadow:0 8px 30px #7b56d333,0 0 0 4px #7b56d31a;transform:translateY(-2px)}.main-search-form .search-icon{color:var(--harmony-text-secondary);font-size:1.2em;margin-right:15px;transition:color .3s ease}.main-search-form:focus-within .search-icon{color:var(--riffy-accent-purple)}.main-search-form input{background:#0000;border:none;color:var(--harmony-text-primary);flex:1 1;font-size:1.15em;font-weight:500;outline:none;padding:5px 0}.main-search-form input::placeholder{color:var(--harmony-text-subtle);font-weight:500}.clear-search-btn{align-items:center;background:var(--harmony-bg-light);border:none;border-radius:50%;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:1.2em;height:36px;justify-content:center;transition:all .2s ease;width:36px}.clear-search-btn:hover{background:var(--riffy-accent-purple);color:#fff;transform:scale(1.1)}.search-empty-state{align-items:center;animation:slideUp .4s ease-out;color:var(--harmony-text-secondary);display:flex;flex-direction:column;justify-content:center;padding:80px 20px;text-align:center}.search-empty-state i{color:var(--harmony-text-subtle);font-size:3em;margin-bottom:20px;opacity:.6}.search-empty-state h2{color:var(--harmony-text-primary);font-size:1.5em;margin-bottom:12px}.search-history-block{margin-top:28px;max-width:520px;width:100%}.search-history-title{align-items:center;color:var(--harmony-text-secondary);display:flex;font-size:.95em;font-weight:500;gap:10px;justify-content:center;margin-bottom:12px}.search-history-clear{background:none;border:none;border-radius:6px;color:var(--harmony-text-subtle);cursor:pointer;font-size:.85em;padding:4px 6px;transition:color .15s ease,background-color .15s ease}.search-history-clear:hover{background-color:#d9534f1a;color:#d9534f}.search-history-block .genre-filter-row{justify-content:center}.search-section{animation:fadeIn .4s ease-out;margin-bottom:45px}.search-section h2{color:var(--harmony-text-primary);font-size:1.6em;font-weight:700;margin-bottom:20px}.header-search-results-dropdown .riffy-button-outline{background:var(--harmony-bg-light);border:1px solid #0000;border-radius:8px;font-weight:600}.header-search-results-dropdown .riffy-button-outline:hover{background:var(--riffy-accent-purple);color:#fff}@media (max-width:768px){.main-search-form{border-radius:14px;margin-bottom:25px;padding:10px 18px}.main-search-form input{font-size:1.2em}.main-search-form .search-icon{font-size:1.3em;margin-right:12px}.search-empty-state{padding:40px 15px}.search-empty-state i{font-size:3.5em}.search-empty-state h2,.search-section h2{font-size:1.4em}}.karaoke-container .lyric-line{border-radius:12px;color:var(--harmony-text-subtle);cursor:pointer;font-size:1.4em;font-weight:700;margin-bottom:8px;padding:8px 12px;transform-origin:left center;transition:all .3s ease}.karaoke-container .lyric-line:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-secondary)}.karaoke-container .lyric-line.active{background-color:var(--harmony-bg-overlay-light);color:var(--riffy-accent-purple);text-shadow:0 0 15px #7b56d366;transform:scale(1.05)}[data-theme=light] .karaoke-container .lyric-line.active{color:var(--riffy-accent-purple);text-shadow:none}.genre-filter-wrapper{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.genre-filter-toggle-row{align-items:center;display:flex}.genre-filter-toggle{align-items:center;background:#ffffff0a;border:1px solid var(--harmony-border);border-radius:500px;color:var(--harmony-text-secondary);cursor:pointer;display:inline-flex;font-size:.85em;gap:8px;padding:7px 14px;transition:all .15s ease}.genre-filter-toggle:hover{border-color:var(--riffy-accent-purple);color:var(--riffy-accent-purple)}.genre-filter-chevron{font-size:.75em;transition:transform .15s ease}.genre-filter-active-label{background-color:var(--riffy-accent-purple);border-radius:500px;color:#fff;font-size:.9em;padding:2px 10px;white-space:nowrap}.genre-filter-wrapper .genre-filter-row{margin-bottom:0}.list-view-item.playing-track,.song-card.playing-track{background-color:#7b56d31a!important;border:1px solid var(--riffy-accent-purple)!important}.playing-track .list-item-title a,.playing-track .song-card-info h3 a{color:var(--riffy-accent-purple)!important}.playing-eq-icon{align-items:flex-end;display:flex;gap:2px;height:14px;justify-content:center;width:20px}.playing-eq-bar{animation:eq-bounce 1s ease-in-out infinite;background-color:var(--riffy-accent-purple);width:3px}.playing-eq-bar:first-child{animation-delay:.1s}.playing-eq-bar:nth-child(2){animation-delay:.4s}.playing-eq-bar:nth-child(3){animation-delay:.2s}@keyframes eq-bounce{0%,to{height:4px}50%{height:14px}}.dnd-draggable-row,.list-view-container>.dnd-draggable-row{animation:none!important;background-color:var(--harmony-bg-medium);transition:background-color .2s,box-shadow .2s}.dnd-drag-handle{align-items:center;color:var(--harmony-text-subtle);cursor:grab;display:flex;padding:0 10px}.dnd-drag-handle:active{cursor:grabbing}@media (max-width:768px){body,html{position:relative;width:100vw!important}.main-content-riffy,body,html{max-width:100vw!important;overflow-x:hidden!important}.main-content-riffy{margin:0!important}.main-content-riffy,.playlist-header-details{box-sizing:border-box!important;width:100%!important}.playlist-header-details{align-items:center!important;background:#0000!important;flex-direction:column!important;gap:15px!important;margin-bottom:20px!important;padding:15px!important;text-align:center!important}.playlist-cover-art-details{border-radius:12px!important;box-shadow:0 8px 25px #0000004d!important;height:220px!important;margin:0 auto!important;width:220px!important}.playlist-info-details{width:100%!important}.playlist-info-details h1{font-size:1.8em!important;margin-bottom:10px!important}.playlist-meta-details{align-items:center!important;display:flex!important;flex-direction:column!important;gap:6px!important}.playlist-meta-details span{margin:0!important}.playlist-actions-details{flex-wrap:wrap!important;gap:10px!important;justify-content:center!important;margin-top:15px!important;width:100%!important}.playlist-participants-section{box-sizing:border-box!important;margin:15px 0!important;padding:15px!important;width:100%!important}.playlist-invite-row{align-items:stretch!important;flex-direction:column!important;width:100%!important}.invite-link-input{min-width:0!important;width:100%!important}.collaborator-row{align-items:flex-start!important;flex-direction:column!important;gap:10px!important;padding-top:40px!important;position:relative!important}.collaborator-name{left:60px!important;position:absolute!important;top:15px!important}.collaborator-avatar{left:10px!important;position:absolute!important;top:10px!important}.collaborator-permissions{gap:10px!important;justify-content:flex-start!important;margin-top:10px!important;width:100%!important}.open-remove-submission-btn{position:absolute!important;right:10px!important;top:10px!important}.list-view-item.dragging-active{box-sizing:border-box!important;width:calc(100vw - 28px)!important}.modal{justify-content:center!important;padding:0!important}.complaint-modal-content,.cropper-modal-content,.lyrics-modal-content,.modal-content,.queue-modal-content{box-sizing:border-box!important;left:0!important;margin:0 auto!important;max-width:100vw!important;right:0!important;width:100vw!important}.settings-page-container{left:0!important;max-width:100%!important;padding:0!important;right:0!important;transform:none!important}.settings-main,.settings-page-container{box-sizing:border-box!important;margin:0!important;width:100%!important}.settings-main{padding:10px 0 100px!important}.settings-sidebar{margin:0!important;padding:10px 0!important}.settings-sidebar,.settings-tab-content{box-sizing:border-box!important;width:100%!important}.settings-tab-content{margin:0 0 15px!important;max-width:100vw!important}.settings-form-container{box-sizing:border-box!important;margin:0!important;width:100%!important}}.playlist-cover-overlay-container{border-radius:4px;flex-shrink:0;height:40px;overflow:hidden;position:relative;width:40px}.playlist-cover-overlay-container .list-item-cover{border-radius:0!important;height:100%!important;object-fit:cover;width:100%!important}.playlist-cover-play-btn{align-items:center;background-color:#00000080;bottom:0;color:#fff;display:flex;font-size:.9em;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.list-view-item:hover .playlist-cover-play-btn{opacity:1}@media (max-width:768px){.playlist-cover-overlay-container{border-radius:6px;height:48px;width:48px}}.form-message.info{background-color:#3f51b526;border:1px solid #9e78f059;color:#9e78f0;font-size:.85em;text-align:left}[data-theme=light] .form-message.info{background-color:#9e78f01a;border-color:#9e78f04d;color:var(--harmony-text-secondary)}.legal-page-container{margin:0 auto;max-width:1100px;padding-bottom:40px}.legal-layout{align-items:flex-start;display:flex;gap:30px}.legal-sidebar{display:flex;flex-direction:column;flex-shrink:0;gap:8px;position:sticky;top:90px;width:280px}.legal-tab-btn{align-items:center;background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:12px;color:var(--harmony-text-secondary);cursor:pointer;display:flex;font-size:.95em;font-weight:500;gap:12px;padding:14px 18px;text-align:left;transition:all .2s ease}.legal-tab-btn i{font-size:1.2em;text-align:center;width:24px}.legal-tab-btn:hover{background-color:var(--harmony-bg-light);color:var(--harmony-text-primary);transform:translateX(4px)}.legal-tab-btn.active{background-color:var(--riffy-accent-purple);border-color:var(--riffy-accent-purple);box-shadow:0 4px 15px #7b56d34d;color:#fff}.legal-main-content{background-color:var(--harmony-bg-medium);border:1px solid var(--harmony-border);border-radius:16px;box-shadow:var(--harmony-shadow-lg);flex-grow:1;padding:40px 50px}.legal-content-text h1{color:var(--harmony-text-primary);font-size:2em;line-height:1.2;margin-bottom:10px;margin-top:0}.legal-content-text h2{border-bottom:1px solid var(--harmony-border);color:var(--harmony-text-primary);font-size:1.3em;margin-bottom:15px;margin-top:35px;padding-bottom:8px}.legal-content-text li,.legal-content-text p{color:var(--harmony-text-secondary);font-size:1em;line-height:1.7;margin-bottom:12px}.legal-content-text a{color:var(--riffy-accent-purple);font-weight:500;text-decoration:none}.legal-content-text a:hover{text-decoration:underline}.legal-content-text ul{margin-bottom:20px;padding-left:20px}@media (max-width:900px){.legal-layout{flex-direction:column}.legal-sidebar{flex-direction:row;overflow-x:auto;padding-bottom:10px;position:static;width:100%}.legal-tab-btn{flex:0 0 auto;white-space:nowrap}.legal-main-content{padding:25px 20px}.legal-content-text h1{font-size:1.6em}}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{height:calc(100% + .5px);inset:0;pointer-events:none;position:absolute;width:calc(100% + .5px)}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translate(0);transform:translate(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);content:"";inset:-1px;opacity:.3;pointer-events:none;position:absolute}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s linear infinite;animation:marching-ants 1s linear infinite;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(#fff 50%,#444 0),linear-gradient(#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}.ReactCrop__crop-selection:focus{outline:2px solid #08f;outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6667%}.ReactCrop__drag-handle{background-color:#0003;background-color:var(--rc-drag-handle-bg-colour);border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);height:12px;height:var(--rc-drag-handle-size);position:absolute;width:12px;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:#08f;background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:6px;height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:6px;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:24px;height:var(--rc-drag-handle-mobile-size);width:24px;width:var(--rc-drag-handle-mobile-size)}}