@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--color-bg: #ffffff;--color-bg-elevated: rgba(255, 255, 255, .95);--color-bg-elevated-strong: rgba(255, 255, 255, .98);--color-bg-modal: rgba(255, 255, 255, .96);--color-text: #000000;--color-text-strong: #000000;--color-text-muted: #333333;--color-text-soft: #535353;--color-text-button: #ffffff;--color-border: rgba(0, 0, 0, .1);--color-border-soft: rgba(0, 0, 0, .08);--color-border-strong: rgba(0, 0, 0, .2);--color-surface: rgba(0, 0, 0, .05);--color-surface-soft: rgba(0, 0, 0, .04);--color-surface-hover: rgba(40, 185, 86, .14);--color-surface-strong: rgba(40, 185, 86, .22);--color-overlay: rgba(0, 0, 0, .4);--color-overlay-strong: rgba(0, 0, 0, .55);--color-shadow: rgba(0, 0, 0, .2);--color-shadow-strong: rgba(0, 0, 0, .3);--color-shadow-modal: rgba(0, 0, 0, .35);--color-text-shadow: rgba(0, 0, 0, .8);--color-primary: #28b956;--color-primary-hover: #731982;--color-primary-shadow-soft: rgba(40, 185, 86, .3);--color-primary-shadow: rgba(40, 185, 86, .4);--color-primary-shadow-strong: rgba(40, 185, 86, .5);--color-success: #00b956;--color-error: #eb5a40;--color-logo-bg: #28b956;--color-logo-text: #ffffff;--color-inline-player-bg: #f0eff1;--color-inline-progress-bg: rgba(0, 0, 0, .18);--color-inline-label: #535353;--color-page-gradient-start: #ffffff;--color-page-gradient-end: #f0eff1;--color-page-gradient-start-alpha: rgba(255, 255, 255, .86);--color-page-gradient-end-alpha: rgba(40, 185, 86, .18);--color-genre-pop: #28b956;--color-genre-rap: #731982;--color-genre-rock: #444189;--color-genre-electro: #5bd9e5;--color-genre-jazz: #ffa717;--color-genre-classic: #731982;--color-genre-blues: #00b956;--color-genre-dance: #eb5a40}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:inherit;min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;font-weight:inherit}button{font-family:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.header{position:fixed;top:0;left:0;right:0;background:var(--color-bg-elevated);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-surface);z-index:1000;padding:0}.header__container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;height:70px}.header__left{display:flex;align-items:center;gap:40px}.header__logo-image{height:32px;width:auto;display:block}.header__nav{display:flex;gap:30px}.nav__link{color:var(--color-text-muted);text-decoration:none;font-size:16px;font-weight:500;transition:color .2s ease;position:relative}.nav__link:hover,.nav__link--active{color:var(--color-text)}.nav__link--active:after{content:"";position:absolute;bottom:-20px;left:0;right:0;height:2px;background:var(--color-primary);border-radius:1px}.header__right{display:flex;align-items:center;gap:20px}.header__burger{display:none;width:32px;height:32px;border-radius:50%;border:none;background:transparent;cursor:pointer;align-items:center;justify-content:center;position:relative;padding:0}.header__burger span{position:absolute;width:18px;height:2px;background:var(--color-text);border-radius:1px;transition:transform .2s ease,opacity .2s ease,top .2s ease}.header__burger span:nth-child(1){top:10px}.header__burger span:nth-child(2){top:15px}.header__burger span:nth-child(3){top:20px}.header__burger--open span:nth-child(1){top:15px;transform:rotate(45deg)}.header__burger--open span:nth-child(2){opacity:0}.header__burger--open span:nth-child(3){top:15px;transform:rotate(-45deg)}.header__search{position:relative;display:flex;align-items:center}.header__search input{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:25px;padding:8px 45px 8px 16px;color:var(--color-text);font-size:14px;width:300px;outline:none;transition:border-color .2s ease}.header__search input::placeholder{color:var(--color-text-soft)}.header__search input:focus{border-color:var(--color-primary)}.search__button{position:absolute;right:8px;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:8px;border-radius:50%;transition:all .2s ease}.search__button:hover{background:var(--color-surface);color:var(--color-text)}.user__button{background:var(--color-primary);color:var(--color-text-button);border:none;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.user__button:hover{background:var(--color-primary-hover)}.user__button--ghost{background:var(--color-surface-hover)}.user__button--ghost:hover{background:var(--color-surface-strong)}.header__mobile-menu{display:none}.header__mobile-menu--open{position:fixed;top:70px;left:0;right:0;background:var(--color-bg-elevated-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-surface-soft);z-index:999;padding:16px 20px 24px}.mobile-nav{display:flex;flex-direction:column;gap:12px}.mobile-nav__link{color:var(--color-text);text-decoration:none;font-size:16px;font-weight:500}.nav__dropdown{position:relative;display:flex;align-items:center}.nav__dropdown-trigger{background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:5px;padding:0;margin:0;font-size:16px;font-weight:500;line-height:normal;vertical-align:baseline}.nav__dropdown-arrow{transition:transform .2s ease;flex-shrink:0}.nav__dropdown-arrow--open{transform:rotate(180deg)}.nav__dropdown-menu{position:absolute;top:calc(100% + 16px);left:50%;transform:translate(-50%);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;padding:6px;min-width:180px;box-shadow:0 8px 24px var(--color-shadow);z-index:1100;display:flex;flex-direction:column;gap:2px}.nav__dropdown-item{background:none;border:none;color:var(--color-text-muted);font-size:14px;font-weight:500;padding:9px 14px;border-radius:8px;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease;white-space:nowrap;width:100%}.nav__dropdown-item:hover{background:var(--color-surface);color:var(--color-text)}.mobile-nav__group{display:flex;flex-direction:column}.mobile-nav__group-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;cursor:pointer;font-size:16px;font-weight:500;color:var(--color-text);padding:0;text-align:left}.mobile-nav__arrow{transition:transform .2s ease;flex-shrink:0}.mobile-nav__arrow--open{transform:rotate(180deg)}.mobile-nav__sub{display:flex;flex-direction:column;gap:6px;padding-left:16px;margin-top:8px}.mobile-nav__sub-link{background:none;border:none;color:var(--color-text-muted);font-size:15px;font-weight:400;cursor:pointer;text-align:left;padding:4px 0;transition:color .15s ease}.mobile-nav__sub-link:hover{color:var(--color-text)}.mobile-nav__login{margin-top:8px;background:var(--color-primary);color:var(--color-text-button);border:none;padding:10px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer}.mobile-nav__login--ghost{background:var(--color-surface-hover)}.auth-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px}.auth-modal__backdrop{position:absolute;inset:0;background:var(--color-overlay-strong)}.auth-modal__content{position:relative;width:100%;max-width:420px;background:var(--color-bg-modal);border:1px solid var(--color-border);border-radius:16px;padding:24px;box-shadow:0 24px 40px var(--color-shadow-modal)}.auth-modal__close{position:absolute;top:10px;right:10px;width:28px;height:28px;border:none;border-radius:50%;background:var(--color-surface-soft);color:var(--color-text);cursor:pointer}.auth-modal__title{margin:0 0 16px;color:var(--color-text);font-size:22px;font-weight:700}.auth-modal__form{display:flex;flex-direction:column;gap:14px}.auth-modal__label{display:flex;flex-direction:column;gap:8px;color:var(--color-text);font-size:14px}.auth-modal__input{height:42px;border-radius:12px;border:1px solid var(--color-border-strong);background:var(--color-surface-soft);color:var(--color-text);padding:0 14px;outline:none}.auth-modal__input:focus{border-color:var(--color-primary)}.auth-modal__error{margin:0;color:var(--color-error);font-size:13px}.auth-modal__submit{border:none;border-radius:12px;height:42px;background:var(--color-primary);color:var(--color-text-button);font-size:15px;font-weight:600;cursor:pointer}.auth-modal__submit:hover{background:var(--color-primary-hover)}.auth-modal__submit:disabled{opacity:.7;cursor:not-allowed}@media(max-width:900px){.header__container{gap:12px}.header__nav,.header__user{display:none}.header__search input{width:180px}.header__burger{display:flex}.header__mobile-menu{display:none}.header__mobile-menu--open{display:block}.auth-modal__content{max-width:100%}}.footer{background:var(--color-bg-elevated);border-top:1px solid var(--color-surface);padding:16px 20px;margin-top:auto}.footer__container{max-width:1200px;margin:0 auto;text-align:center;display:flex;flex-direction:column;gap:6px}.footer__copyright{margin:0;color:var(--color-text);font-size:14px;font-weight:600}.footer__disclaimer{margin:0;color:var(--color-text-muted);font-size:12px;line-height:1.5}.footer__link{color:var(--color-primary);text-decoration:none}.footer__link:hover{text-decoration:underline}.audio-player{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-elevated);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--color-surface);z-index:1000;padding:0}.player__container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;align-items:stretch;justify-content:space-between;height:80px;gap:20px;position:relative}.player__close-btn{position:absolute;top:10px;right:10px;width:28px;height:28px;border:none;border-radius:50%;background:var(--color-surface-soft);color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.player__close-btn:hover{background:var(--color-surface-hover);color:var(--color-text)}.player__track-info{display:flex;align-items:center;gap:15px;min-width:250px;flex-shrink:0;align-self:center}.track__cover{width:50px;height:50px;border-radius:8px;object-fit:cover;flex-shrink:0}.track__details{min-width:0;flex:1}.track__title{color:var(--color-text);font-size:14px;font-weight:600;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track__artist{color:var(--color-text-muted);font-size:12px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track__placeholder{display:flex;align-items:center;gap:12px;color:var(--color-text-soft)}.placeholder__icon{font-size:24px;opacity:.5}.player__controls{flex:1;max-width:600px;align-self:stretch}.controls__layout{--left-meta-width: 35px;--controls-gap: 12px;display:grid;grid-template-columns:var(--left-meta-width) 1fr;grid-template-rows:10px auto 10px auto 10px;align-items:center;column-gap:var(--controls-gap);width:100%;height:100%}.controls__layout>.favorite-btn--control{grid-column:1;grid-row:2;justify-self:center}.controls__layout>.controls__buttons{grid-column:2;grid-row:2;justify-self:center;transform:translate(calc((var(--left-meta-width) + var(--controls-gap)) / -2))}.controls__layout>.time--current{grid-column:1;grid-row:4;justify-self:center;margin-top:-10px}.controls__layout>.controls__progress{grid-column:2;grid-row:4}.controls__buttons{display:flex;align-items:center;gap:16px}.control-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.control-btn:hover{color:var(--color-text);background:var(--color-surface)}.control-btn--primary{width:40px;height:40px;background:var(--color-primary);color:var(--color-text-button)}.control-btn--primary:hover{background:var(--color-primary-hover);transform:scale(1.05)}.control-btn--primary:disabled{cursor:wait;opacity:.9;transform:none}.loading-dots{display:inline-flex;align-items:center;gap:4px}.loading-dots__dot{width:5px;height:5px;border-radius:50%;background:currentColor;animation:dot-bounce .9s infinite ease-in-out}.loading-dots__dot:nth-child(2){animation-delay:.15s}.loading-dots__dot:nth-child(3){animation-delay:.3s}@keyframes dot-bounce{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-4px);opacity:1}}.controls__progress{display:flex;align-items:center;gap:12px;width:100%;margin-top:-10px}.time{color:var(--color-text-muted);font-size:12px;font-variant-numeric:tabular-nums;min-width:35px;text-align:center}.favorite-btn{width:18px;height:18px;border:none;border-radius:50%;background:var(--color-surface-soft);color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.favorite-btn--control{width:24px;height:24px}.favorite-btn--active{background:var(--color-primary);color:var(--color-text-button)}.progress-bar{flex:1;height:30px;background:transparent;border-radius:2px;outline:none;cursor:pointer;-webkit-appearance:none;appearance:none}.progress-bar::-webkit-slider-runnable-track{height:4px;background:var(--color-border-strong);border-radius:2px}.progress-bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--color-primary);cursor:pointer;box-shadow:0 0 0 2px var(--color-primary-shadow-soft);margin-top:-5px}.progress-bar::-moz-range-track{height:4px;background:var(--color-border-strong);border-radius:2px}.progress-bar::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none;box-shadow:0 0 0 2px var(--color-primary-shadow-soft)}.player__volume{display:flex;align-items:center;gap:12px;min-width:120px;align-self:flex-end;margin-bottom:10px}.volume-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:color .2s ease}.volume-btn:hover{color:var(--color-text)}.volume-bar{flex:1;height:4px;background:var(--color-border-strong);border-radius:2px;outline:none;cursor:pointer;-webkit-appearance:none;appearance:none}.volume-bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:10px;border-radius:50%;background:var(--color-primary);cursor:pointer}.volume-bar::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none}@media(max-width:1024px){.player__container{height:auto;padding:16px;flex-wrap:wrap;row-gap:10px}.player__controls{order:2;width:100%;max-width:none}.player__volume{display:none}}@media(max-width:768px){.player__container{padding:10px 12px}.player__track-info{min-width:0;width:100%;justify-content:center}.progress-bar{height:36px}.progress-bar::-webkit-slider-thumb{width:18px;height:18px;margin-top:-7px}.progress-bar::-moz-range-thumb{width:18px;height:18px}}.app{min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);color:var(--color-text)}*{box-sizing:border-box}body{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:inherit}#root{min-height:100vh}.playlist__covers-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;width:100%;height:100%}.playlist__cover-thumb{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.playlist-card:hover .playlist__cover-thumb{transform:scale(1.05)}@media(hover:none)and (pointer:coarse){.track__play-btn{opacity:1;transform:translateY(0)}}@media(max-width:768px){.hero__title{font-size:2.5rem}.hero__subtitle{font-size:1.2rem}.section{padding:40px 0}.tracks-grid,.playlists-grid,.radio-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.genres-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}.section__header{flex-direction:column;align-items:flex-start;gap:12px}.player__container{flex-direction:column;height:auto;padding:16px 20px;gap:16px}.player__track-info,.player__volume{min-width:auto}.controls__progress{width:100%}.track__play-btn{opacity:1;transform:translateY(0)}}.search-section__header{margin-bottom:20px;margin-left:0;margin-right:0;padding:0}.search-content{max-width:1200px;margin:0 auto;padding:0 20px}.search-track-list{width:100%;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.search-track-row{display:flex;align-items:center;gap:12px;border-radius:8px;padding:6px;transition:background-color .2s ease}.search-track-row:hover,.search-track-row--active{background:var(--color-surface)}.search-track-cover{width:52px;height:52px;border-radius:6px;overflow:hidden;position:relative;flex-shrink:0}.search-track-cover__image{width:100%;height:100%;object-fit:cover;display:block}.search-track-cover__play-btn{position:absolute;inset:0;border:none;background:var(--color-overlay);color:var(--color-text-button);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s ease}.search-track-row:hover .search-track-cover__play-btn,.search-track-row--active .search-track-cover__play-btn{opacity:1}@media(hover:none)and (pointer:coarse){.search-track-cover__play-btn{opacity:1}}.search-track-meta{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px}.search-track-meta__title{margin:0;color:var(--color-text);font-size:1.15rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-track-meta__artist{margin:0;color:var(--color-text-muted);font-size:.95rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.hero__title{font-size:2.5rem}.hero__subtitle{font-size:1.2rem}.section{padding:40px 0}.playlists-grid,.radio-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.search-track-meta__title{font-size:1rem}.search-track-meta__artist{font-size:.88rem}.genres-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}.section__header{flex-direction:column;align-items:flex-start;gap:12px}.player__container{flex-direction:column;height:auto;padding:16px 20px;gap:16px}.player__track-info,.player__volume{min-width:auto}.controls__progress{width:100%}}.tracks-grid{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px}.track-card{background:var(--color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;overflow:hidden;transition:all .3s ease;cursor:pointer}.track-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px var(--color-shadow)}.track__image-container{position:relative;aspect-ratio:1;overflow:hidden}.track__image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.track-card:hover .track__image{transform:scale(1.05)}.track__play-btn{position:absolute;bottom:12px;right:12px;width:48px;height:48px;background:var(--color-primary);border:none;border-radius:50%;color:var(--color-text-button);cursor:pointer;opacity:0;transform:translateY(10px);transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px var(--color-primary-shadow-soft)}.track-card:hover .track__play-btn{opacity:1;transform:translateY(0)}.track__info{padding:16px}.track__name{color:var(--color-text);font-size:1rem;font-weight:600;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track__artist{color:var(--color-text-muted);font-size:.9rem;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track__plays{color:var(--color-text-soft);font-size:.8rem;margin:0}.playlist-card{display:block;text-decoration:none;color:inherit;background:var(--color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;overflow:hidden;transition:all .3s ease;cursor:pointer}.load-more{display:flex;justify-content:center;margin-top:32px}.load-more__btn{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);padding:10px 40px;border-radius:24px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.load-more__btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-primary);color:var(--color-primary)}.load-more__btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.hero__title{font-size:2.5rem}.hero__subtitle{font-size:1.2rem}.section{padding:40px 0}.tracks-grid,.playlists-grid,.radio-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.genres-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}.section__header{flex-direction:column;align-items:flex-start;gap:12px}.player__container{flex-direction:column;height:auto;padding:16px 20px;gap:16px}.player__track-info,.player__volume{min-width:auto}.controls__progress{width:100%}}.main{padding-top:70px;padding-bottom:80px;background:linear-gradient(135deg,var(--color-page-gradient-start) 0%,var(--color-page-gradient-end) 100%);min-height:100vh}.simple_text{color:var(--color-text-muted);font-size:.9rem;margin:0 0 8px;white-space:nowrap}.hero{position:relative;height:60vh;min-height:400px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--color-text);overflow:hidden}.hero__content{position:relative;z-index:2;max-width:600px;padding:0 20px}.hero__title{font-size:4rem;font-weight:700;margin:0 0 16px;background:linear-gradient(45deg,var(--color-text),var(--color-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1}.hero__subtitle{font-size:1.5rem;margin:0 0 32px;opacity:.9;line-height:1.4}.hero__button{background:var(--color-primary);color:var(--color-text-button);border:none;padding:16px 32px;font-size:1.1rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px var(--color-primary-shadow-soft)}.hero__button:hover{background:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 12px 35px var(--color-primary-shadow)}.hero__background{position:absolute;inset:0;z-index:1}.hero__gradient{position:absolute;inset:0;background:linear-gradient(135deg,var(--color-page-gradient-start-alpha),var(--color-page-gradient-end-alpha));z-index:1}.section{padding:60px 0}.section__header{max-width:1200px;margin:0 auto 40px;padding:0 20px;display:flex;align-items:center;justify-content:space-between}.section__title{color:var(--color-text);font-size:2rem;font-weight:700;margin:0}.section__link{color:var(--color-primary);text-decoration:none;font-weight:500;transition:color .2s ease}.section__link:hover{color:var(--color-primary-hover)}.artist-section__header{margin-bottom:20px;margin-left:0;margin-right:0;padding:0}.artist-content{max-width:1200px;margin:0 auto;padding:0 20px}.artist-track-list{width:100%;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.artist-track-row{display:flex;align-items:center;gap:12px;border-radius:8px;padding:6px;transition:background-color .2s ease}.artist-track-row:hover,.artist-track-row--active{background:var(--color-surface)}.artist-track-cover{width:52px;height:52px;border-radius:6px;overflow:hidden;position:relative;flex-shrink:0}.artist-track-cover__image{width:100%;height:100%;object-fit:cover;display:block}.artist-track-cover__play-btn{position:absolute;inset:0;border:none;background:var(--color-overlay);color:var(--color-text-button);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s ease}.artist-track-row:hover .artist-track-cover__play-btn,.artist-track-row--active .artist-track-cover__play-btn{opacity:1}.artist-track-meta{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px}.artist-track-meta__title{margin:0;color:var(--color-text);font-size:1.15rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artist-track-meta__artist{margin:0;color:var(--color-text-muted);font-size:.95rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playlists-grid{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}.playlist-card{background:var(--color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;overflow:hidden;transition:all .3s ease;cursor:pointer}.playlist-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px var(--color-shadow)}.playlist__image-container{position:relative;aspect-ratio:1;overflow:hidden}.playlist__image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.playlist-card:hover .playlist__image{transform:scale(1.05)}.playlist__play-btn{position:absolute;bottom:16px;right:16px;width:56px;height:56px;background:var(--color-primary);border:none;border-radius:50%;color:var(--color-text-button);cursor:pointer;opacity:0;transform:translateY(10px);transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px var(--color-primary-shadow-soft)}.playlist-card:hover .playlist__play-btn{opacity:1;transform:translateY(0)}.playlist__info{padding:20px}.playlist__name{color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0 0 8px}.playlist__description{color:var(--color-text-muted);font-size:.9rem;margin:0 0 12px;line-height:1.4}.playlist__tracks{color:var(--color-text-soft);font-size:.8rem;margin:0}.genres-grid{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px}.genre-card{aspect-ratio:1;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.genre-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-surface),var(--color-border-soft));opacity:0;transition:opacity .3s ease}.genre-card:hover:before{opacity:1}.genre-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px var(--color-shadow-strong)}.genre__image{width:100%;height:100%;border-radius:16px;object-fit:cover;position:absolute;top:0;left:0;z-index:0}.genre__name{color:var(--color-text);font-size:1rem;font-weight:600;margin:0 0 16px;z-index:1;text-shadow:0 2px 4px var(--color-text-shadow);position:relative}.radio-grid{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.radio-card{background:var(--color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;overflow:hidden;transition:all .3s ease;cursor:pointer}.radio-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px var(--color-shadow)}.radio__image-container{position:relative;aspect-ratio:16/9;overflow:hidden}.radio__image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.radio-card:hover .radio__image{transform:scale(1.05)}.radio__overlay{position:absolute;inset:0;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.radio-card:hover .radio__overlay{opacity:1}.radio__play-btn{background:var(--color-primary);border:none;border-radius:50%;color:var(--color-text-button);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 25px var(--color-primary-shadow);transition:all .2s ease}.radio__play-btn:hover{transform:scale(1.05);box-shadow:0 12px 35px var(--color-primary-shadow-strong)}.radio__name{color:var(--color-text);font-size:1.2rem;font-weight:600;margin:16px 20px 8px}.radio__description{color:var(--color-text-muted);font-size:.9rem;margin:0 20px 20px;line-height:1.4}@media(max-width:768px){.hero__title{font-size:2.5rem}.hero__subtitle{font-size:1.2rem}.section{padding:40px 0}.playlists-grid,.radio-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.artist-track-list{display:flex;gap:6px}.artist-track-meta__title{font-size:1rem}.artist-track-meta__artist{font-size:.88rem}.genres-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}.section__header{flex-direction:column;align-items:flex-start;gap:12px}.player__container{flex-direction:column;height:auto;padding:16px 20px;gap:16px}.player__track-info,.player__volume{min-width:auto}.controls__progress{width:100%}}
