@media(min-width:1600px){.layout{grid-template-columns:280px minmax(0,1fr) 365px}.industry-card{flex-basis:155px;height:132px}.playlist-card{flex-basis:160px}.playlist-image{height:120px}.daypart-card{flex-basis:180px}.hero{height:290px}}
@media(max-width:1270px){.layout{grid-template-columns:220px minmax(0,1fr) 290px}.sidebar{padding-left:12px;padding-right:10px}.brand{margin-left:5px;font-size:23px}.brand-mark{width:51px}.nav-item{gap:14px;padding:10px 12px}.topbar{padding:0 13px}.scroll-content{padding-left:14px;padding-right:14px}.right-panel{padding-left:12px;padding-right:12px}.right-heading h2{font-size:14px}.right-cover{aspect-ratio:1.2}.bottom-player{grid-template-columns:28% minmax(0,1fr) 20%;gap:14px}}
@media(max-width:1030px){.layout{grid-template-columns:72px minmax(0,1fr) 285px}.sidebar{padding:20px 9px}.sidebar .brand{margin-left:0;justify-content:center}.brand-copy,.nav-item span,.premium-card{display:none}.nav-item{justify-content:center;padding:12px}.nav-item .icon{width:25px;height:25px}.hero h1{font-size:37px}.filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.layout{display:flex;flex-direction:column;height:100dvh}.sidebar{position:fixed;left:-280px;top:0;bottom:80px;width:250px;z-index:30;transition:left .2s;box-shadow:var(--shadow);padding:20px 14px}.sidebar.open{left:0}.sidebar .brand{justify-content:flex-start;margin-left:7px}.brand-copy,.nav-item span,.premium-card{display:block}.nav-item{justify-content:flex-start;gap:18px}.menu-toggle{display:grid}.main-column{height:calc(100dvh - 83px);flex:none}.topbar{height:65px;padding:0 12px}.top-actions .account-button span:not(.avatar){display:none}.top-actions{gap:4px}.searchbar{width:100%;flex:1}.searchbar kbd{display:none}.scroll-content{padding:0 12px 30px}.hero{margin-top:0;height:230px;background-position:60% center}.hero-content{padding:23px}.hero h1{font-size:35px;max-width:270px;letter-spacing:-1.5px}.hero p{font-size:12px}.content-section{margin-top:20px}.section-header h2{font-size:16px}.industry-card{flex-basis:129px}.playlist-card{flex-basis:136px}.right-panel{display:none;position:fixed;inset:65px 0 83px;z-index:25;background:#001d1e;overflow:auto}.right-panel.mobile-open{display:flex}.right-cover{width:min(300px,70vw);align-self:center;aspect-ratio:1.5}.bottom-player{position:fixed;bottom:0;left:0;right:0;height:83px;grid-template-columns:minmax(0,1fr) 55px 40px;padding:9px 13px;gap:8px}.bottom-current img{width:52px;height:52px}.bottom-current{gap:10px}.bottom-current strong{font-size:13px}.bottom-current small{font-size:11px}.bottom-current button{display:none}.bottom-center{width:85px}.bottom-center .small-controls button:not(.bottom-main-play){display:none}.bottom-center .progress-line{display:none}.small-controls .bottom-main-play{width:43px;height:43px}.bottom-tools{display:flex;justify-content:center}.bottom-tools>svg,.bottom-tools>input{display:none}.bottom-tools button{margin:0}.filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-shell{padding:25px 22px}.toast{bottom:100px}}
@media(max-width:420px){.hero{height:220px}.hero h1{font-size:29px}.hero-content{padding:23px 15px}.hero p{max-width:215px}.hero .btn{padding:10px 16px}.section-header h2{font-size:15px}.more-link{font-size:10px}.filter-panel{grid-template-columns:1fr 1fr;padding:10px}.filter-panel select,.filter-panel input{padding:9px 7px}.filter-panel .btn{grid-column:1/-1}.check-grid{grid-template-columns:1fr}}

/* Elastyczna szerokość treści i długie nazwy utworów. */
.searchbar{min-width:0;flex:1}.top-actions{flex-shrink:0}
.section-header,.result-header{flex-wrap:wrap}.section-header h2{min-width:0}
.hero{height:auto;min-height:262px}.hero-content{padding-bottom:38px}
.track-heading>div{min-width:0}.track-heading strong,.track-heading span{overflow-wrap:anywhere}
.result-track img,.result-track>svg{flex-shrink:0}.result-track .meta{flex:0 0 auto;white-space:nowrap}
.result-track small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.filter-panel label{min-width:0}.filter-panel .btn{white-space:normal}
.menu-backdrop,.panel-close{display:none}
@media(min-width:1600px){.hero{min-height:290px}}
/* Na tablecie kolejka otwiera się na żądanie, pozostawiając miejsce na katalog. */
@media(min-width:781px) and (max-width:1100px){
 .layout{grid-template-columns:220px minmax(0,1fr)}
 .bottom-player{grid-template-columns:minmax(0,1fr) minmax(240px,1.2fr) 120px;padding-inline:16px;gap:14px}
 .small-controls{gap:12px}.bottom-current img{width:58px;height:58px}
}
@media(min-width:781px) and (max-width:1030px){.layout{grid-template-columns:72px minmax(0,1fr)}}
@media(max-width:1100px){
 .right-panel{display:none;position:fixed;inset:75px 0 105px auto;width:min(380px,100%);z-index:25;overflow-y:auto;padding:16px;background:#001d1e;box-shadow:-15px 0 45px #0008}
 .right-panel.mobile-open{display:flex}.panel-close{display:inline-grid;min-width:44px;min-height:44px;font-size:26px}
 .right-panel .queue-list{flex:1 0 auto;overflow:visible}.right-cover{width:min(280px,70vw);align-self:center;aspect-ratio:1.2}
 .right-heading,.track-heading,.right-progress,.big-controls{flex-shrink:0}
}
@media(max-width:780px){
 .layout{--player-height:calc(83px + env(safe-area-inset-bottom,0px));height:100vh;height:100dvh}
 .main-column{height:calc(100vh - var(--player-height));height:calc(100dvh - var(--player-height));width:100%}
 .sidebar{bottom:var(--player-height);width:min(280px,85vw);left:-300px;visibility:hidden}
 .sidebar.open{visibility:visible}.sidebar .brand-copy{display:block}
 .menu-backdrop{position:fixed;inset:65px 0 var(--player-height);z-index:29;border:0;background:#0009;padding:0}
 .menu-backdrop:not([hidden]){display:block}
 .topbar{gap:8px}.topbar .btn{padding:10px 12px;font-size:12px;min-height:44px}
 .topbar .icon-button{min-width:44px;min-height:44px}.searchbar{padding:0 9px;gap:6px}
 .searchbar input{font-size:16px}.searchbar>svg{width:18px;height:18px}
 .top-actions .account-button{padding-left:6px}
 .hero{min-height:230px}.hero h1{max-width:100%;overflow-wrap:anywhere}
 .hero p{line-height:1.5;max-width:300px}.hero-controls{left:auto;right:18px}
 .bottom-player{height:var(--player-height);grid-template-columns:minmax(0,1fr) 48px 44px;padding:9px max(12px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));gap:6px}
 .bottom-center{width:100%}.bottom-tools{min-width:0}.bottom-tools button{width:44px;height:44px;padding:10px}
 .bottom-current img{width:48px;height:48px}.bottom-current{gap:8px}
 .right-panel{inset:65px 0 var(--player-height);width:100%}.right-cover{aspect-ratio:1.5}
 .section-header h2{gap:9px}.more-link{min-height:36px;gap:5px}
 .card-strip{scroll-snap-type:x proximity}.card-strip>button{scroll-snap-align:start}
 .filter-panel input,.filter-panel select,.auth-form input{font-size:16px;min-height:44px}
 .filter-chip{min-height:44px}.result-track{gap:9px;min-height:66px}
 .toast{bottom:calc(var(--player-height) + 16px)}
 .auth-page{padding:16px}.auth-shell{padding:25px 20px}
 .auth-shell .brand-copy{display:block}.auth-shell .brand{font-size:23px;gap:8px}
}
@media(max-width:420px){
 .topbar{flex-wrap:wrap;height:112px;padding-block:8px;align-content:center}
 .topbar .searchbar{order:3;flex-basis:100%;height:42px}
 .sidebar{top:0}.menu-backdrop{top:112px}.right-panel{top:112px}
 .hero{min-height:220px}.hero-content{padding:22px 16px 34px}
 .filter-panel{gap:10px}.filter-panel .btn{grid-column:1/-1}
 .result-track .meta:empty{display:none}.result-track .meta{font-size:10px}
 .section-header h2{font-size:16px}.more-link{font-size:11px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Wygodny układ telefonu, także po obróceniu ekranu. */
@media(max-width:780px){
 .scroll-content{min-height:0;overscroll-behavior-y:contain}
 .sidebar .brand,.sidebar .premium-card,.sidebar .nav{flex-shrink:0}
 .section-header h2:before{flex-shrink:0}
 .industry-card small{white-space:normal;text-align:center;line-height:1.35}
 .daypart-card b,.daypart-card small{max-width:100%;overflow-wrap:anywhere}
 .right-panel{padding-bottom:24px}
 .big-controls button{min-width:44px;min-height:44px}
 .queue-tabs button{min-height:44px}.queue-row{min-height:56px}
 .auth-shell{margin-block:auto}.auth-shell h1{font-size:clamp(24px,7vw,30px)}
 .auth-shell .brand{font-size:23px;gap:8px;white-space:normal}
 .auth-shell .brand-mark{flex-shrink:0}
 .auth-form input:not([type=checkbox]){min-width:0;width:100%}
}
@media(min-width:421px) and (max-width:600px){
 .topbar{flex-wrap:wrap;height:112px;padding-block:8px;align-content:center}
 .topbar .searchbar{order:3;flex-basis:100%;height:42px}
 .menu-backdrop,.right-panel{top:112px}
}
@media(max-width:780px) and (orientation:landscape){
 .topbar,.scroll-content,.sidebar{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
 .right-cover{width:160px;aspect-ratio:1.5}
 .hero{min-height:200px}.hero-content{padding-block:18px 30px}
}
@media(pointer:coarse){
 .card-strip{padding-block:3px 8px}
 .right-progress input,.progress-line input{height:24px;background:linear-gradient(#075b62,#075b62) center / 100% 5px no-repeat}
 input[type=range]::-webkit-slider-thumb{width:18px;height:18px}
 input[type=range]::-moz-range-thumb{width:18px;height:18px}
}
