/* Desktop keeps its library rail. A phone uses one thumb-reachable navigation bar. */
.mobile-navigation,.mobile-search-title{display:none}
@media(max-width:700px){
 :root{--sidebar-width:0px;--mobile-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
 #sidebar{display:none}
 .app-shell{margin-left:0;width:100%}
 .app-shell>.workspace{width:100%}
 .topbar{display:none}
 main{max-width:none;padding:28px 20px 190px;scrollbar-gutter:auto;scroll-padding-bottom:190px}
 .home-title,.page-title{margin-bottom:28px;gap:12px}
 .home-title h1,.page-title h1{font-size:32px;letter-spacing:-.02em;line-height:1.15}
 .home-title .create-collection{font-size:12px;min-height:44px}
 .home-section-heading h2{font-size:19px;letter-spacing:-.02em}
 .home-section-heading>.text-button{font-size:11px;min-height:32px}
 .home-section-heading>span{font-size:12px}
 .home-sources,.home-music{margin-top:32px;padding-top:0;border:0}
 .home-sources .home-section-heading{margin-bottom:18px}
 .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}
 .collection-grid .glass-folder{--folder-size:136px!important;--scale:.85!important}
 .collection-name{font-size:13px}.collection-caption{font-size:11px}
 .source-card-shelf{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 12px}
 .source-portrait{width:64px;height:64px}
 .source-card-name{font-size:11px;line-height:1.35}
 .source-card small{font-size:9px;line-height:1.4}
 .home-song-grid{grid-auto-rows:64px}
 .home-song{height:64px;gap:10px;padding:6px 0}
 .home-song-art img{width:44px;height:44px}
 .home-song .track-name{font-size:14px;font-weight:400}
 .home-song .track-artist{font-size:12px;margin-top:3px}
 .home-song .row-more{display:flex;opacity:1;width:32px;height:44px}
 .song-table .track-head,.song-table .track-row{grid-template-columns:minmax(0,1fr) 32px;gap:8px;padding-inline:0}
 .song-table-album .track-head,.song-table-album .track-row{grid-template-columns:22px minmax(0,1fr) 32px}
 .song-table .track-head{display:none}
 .song-table .track-row{height:64px}
 .song-table .duration,.song-table .duration-head,.song-table .song-secondary,.song-table .song-secondary-heading{display:none}
 .song-mobile-artist{display:block}
 .song-table-playlist .song-album,.song-table-research .song-album{display:none}
 .song-table .row-art{width:44px;height:44px}
 .song-table .track-name{font-size:14px;font-weight:400}
 .song-mobile-artist,.song-table .song-album{font-size:12px;line-height:1.4;margin-top:3px}
 .song-table .row-more,.song-table .row-save{width:32px;height:44px;opacity:1}
 .song-table .row-more svg,.song-table .row-save svg{width:17px;height:17px}
 .song-table .track-row:after{left:55px;right:0}
 .song-table-album .track-row:after{left:30px}
 .collection-hero{gap:16px;margin-bottom:24px}.hero-info h1{font-size:26px;overflow-wrap:anywhere}
 [data-mobile-page=detail] .topbar{position:absolute;z-index:6;top:0;left:0;right:0;display:flex;height:64px;padding:12px 20px;pointer-events:none}
 [data-mobile-page=detail] .history-controls{display:flex}
 [data-mobile-page=detail] .global-search,#forward{display:none}
 .history-controls #back{pointer-events:auto;display:grid;width:40px;height:40px;border-radius:50%;background:#1b1b1b8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px #ffffff20;color:#ffffff}
 .history-controls #back:disabled{display:none}
 [data-mobile-page=detail] main{padding-top:80px}
 [data-mobile-page=search] .topbar{display:flex;flex-direction:column;align-items:stretch;height:auto;padding:28px 20px 8px;gap:18px}
 [data-mobile-page=search] .history-controls{display:none}
 [data-mobile-page=search] .mobile-search-title{display:block;font-size:32px;line-height:1.15;letter-spacing:-.02em}
 [data-mobile-page=search] .global-search{display:flex;max-width:none;width:100%;height:44px;padding:0 14px;border:0;border-radius:24px;background:#ffffff09;gap:10px}
 [data-mobile-page=search] .global-search input{font-size:16px}
 [data-mobile-page=search] .global-search svg{width:19px;height:19px}
 [data-mobile-page=search] .search-heading{display:none}
 [data-mobile-page=search] main{padding-top:6px}
 /* Photography and the latest release recompose for the phone, rather than shrinking. */
 .artist-profile>.artist-photo-header{height:360px;margin-top:-84px;margin-bottom:20px}
 .artist-photo{width:100%;object-position:50% 35%}
 .artist-photo-shade{background:linear-gradient(180deg,#00000022,transparent 30%,#1a1a1a70 62%,var(--bg) 100%)}
 .artist-photo-identity{bottom:18px;left:20px;right:20px}
 .artist-photo-identity h1{font-size:34px;letter-spacing:-.02em}
 .artist-photo-identity>p:not(.profile-announcement){font-size:12px;margin-top:8px}
 .profile-actions,.artist-photo-identity .profile-actions{gap:16px;margin-top:12px}
 .profile-follow{font-size:12px;min-height:40px;padding:8px 13px;border-radius:22px}
 .profile-actions .text-button,.artist-photo-identity .profile-actions .text-button{font-size:12px;min-height:40px}
 .profile-provider{min-width:36px;min-height:40px;justify-content:center}
 .profile-section-heading h2,.profile-song-browser h2{font-size:19px;letter-spacing:-.3px}
 .profile-section-heading .text-button{font-size:12px;min-height:36px}
 .artist-music-first{grid-template-columns:minmax(0,1fr);gap:26px}
 .artist-music-first .artist-latest{display:block;order:-1}
 .artist-latest>.profile-section-heading{display:none}
 .artist-latest .release-card{display:grid;grid-template-columns:80px minmax(0,1fr);column-gap:16px;min-height:104px;padding:12px;border-radius:14px;background:#ffffff07}
 .artist-latest .release-art{position:relative;grid-column:1;grid-row:1/3;width:80px;height:80px;margin:0;inset:auto}
 .artist-latest .release-title{grid-column:2;align-self:end;margin-bottom:5px;font-size:16px;white-space:normal;line-height:1.3}
 .artist-latest .release-year{grid-column:2;align-self:start;font-size:12px;margin:0}
 .profile-release-shelf{grid-auto-columns:calc((100% - 18px)/2);gap:18px;scrollbar-width:none}
 .profile-release-shelf .release-title{font-size:14px;font-weight:400}
 .profile-release-shelf .release-artist{font-size:12px}.profile-release-shelf .release-year{font-size:11px}
 .profile-song-grid .home-song{height:64px}
 .profile-song-grid .home-song-art img{width:44px;height:44px}
 .profile-song-grid .home-song .track-name{font-size:14px}.profile-song-grid .home-song .track-artist{font-size:12px}
 .release-back{display:none}
 .release-page-header{text-align:center;display:block;margin-bottom:24px}
 .release-page-header>img{width:min(240px,66vw);height:auto;aspect-ratio:1;margin:0 auto 22px}
 .release-page-header h1{font-size:26px;margin-bottom:8px}
 .release-page-artist{font-size:16px;text-align:center}.release-page-header p{font-size:12px}
 .release-page .track-tools{justify-content:center;padding-bottom:12px}
 .release-page .track-tools>a{font-size:12px;min-height:36px;gap:6px}
 .mobile-navigation{display:block;position:absolute;z-index:15;left:20px;right:20px;bottom:var(--mobile-bottom);height:62px;pointer-events:none}
 .mobile-tabs,.mobile-current,.mobile-search-shortcut{background:linear-gradient(155deg,#d1d1d112,#10101020),#252525b8;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);box-shadow:0 5px 18px #00000033,inset 0 1px #ffffff24,inset 0 -1px #ffffff08;border-radius:40px}
 .mobile-tabs{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px;pointer-events:auto;transition:opacity .18s,transform .24s cubic-bezier(.2,.7,.3,1),visibility .18s}
 .mobile-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;border-radius:32px;padding:6px 2px;color:var(--muted)}
 .mobile-tab svg{width:24px;height:24px;stroke-width:1.8}
 .mobile-tab span{font-size:10px;line-height:13px;font-weight:500}
 .mobile-tab[aria-current=page]{background:#f1f1f111;color:var(--text)}
 .mobile-tab[aria-current=page][data-mobile-destination=home] svg{fill:currentColor;stroke-width:1.2}
 .mobile-current,.mobile-search-shortcut{position:absolute;bottom:0;width:48px;height:48px;padding:12px;display:grid;place-items:center;color:var(--text);visibility:hidden;opacity:0;pointer-events:none;transform:scale(.8);transition:opacity .18s,transform .24s cubic-bezier(.2,.7,.3,1),visibility .18s}
 .mobile-current{left:8px}.mobile-search-shortcut{right:8px}
 .mobile-current svg,.mobile-search-shortcut svg{width:24px;height:24px}
 .mobile-nav-collapsed .mobile-tabs{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(4px) scale(.92)}
 .mobile-nav-collapsed .mobile-current,.mobile-nav-collapsed .mobile-search-shortcut{visibility:visible;opacity:1;pointer-events:auto;transform:none}
 .mobile-navigation button:focus-visible{outline:1px solid #cccccc;outline-offset:3px}
 /* The native mobile mini-player is 48px high, 8px above navigation. */
 .player{bottom:calc(var(--mobile-bottom) + 70px);width:calc(100% - 40px);padding:9px 16px;height:48px;transition:bottom .24s cubic-bezier(.2,.7,.3,1),width .24s cubic-bezier(.2,.7,.3,1),padding .24s}
 .player-top-row{gap:4px;height:30px}
 .player-track{height:30px;gap:8px}
 .player-art-control{width:30px;height:30px;border-radius:4px}
 .player-art-control:before{content:"";position:absolute;inset:-7px;border-radius:inherit}
 .player-art-overlay svg{width:12px;height:12px}
 .player-metadata strong{font-size:16px;line-height:18px}
 .player-metadata>#player-artist{font-size:14px;line-height:16px;margin-top:0}
 .player .timeline{bottom:-9px}
 .player-end .icon-button{height:44px;width:36px}
 .player-end .icon-button svg{width:17px;height:17px}
 .player-volume{display:block}
 .player #volume-popover{position:absolute;right:-22px;bottom:45px;width:132px;height:42px;padding:5px 12px;background:#3a3a3a80;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:0;border-radius:21px;box-shadow:none}
 .mobile-nav-collapsed .player{bottom:var(--mobile-bottom);width:calc(100% - 180px);padding:9px 12px}
 .mobile-nav-collapsed .player-metadata strong{font-size:15px;line-height:17px}
 .mobile-nav-collapsed .player-metadata>#player-artist{font-size:13px;line-height:15px}
 .mobile-nav-collapsed .player .timeline,.mobile-nav-collapsed .player-end{display:none}
 .player-art-overlay{opacity:1}
 #toast,body:has(.has-song-detail) #toast{left:50%;max-width:calc(100% - 32px);bottom:calc(var(--mobile-bottom) + 154px)}
 .song-detail{background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none}
}
@media(prefers-reduced-motion:reduce){.mobile-tabs,.mobile-current,.mobile-search-shortcut,.player{transition:none}}

/* Small collection objects keep a phone library browsable at a glance. */
@media(min-width:375px) and (max-width:520px){
 .collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 12px}
 .collection-grid .glass-folder{--folder-size:100px!important;--scale:.625!important;margin-bottom:10px}
 .collection-name{font-size:12px}.collection-caption{font-size:10px}
}
@media(max-width:700px){.song-table:not(.song-table-album) .track-head,.song-table:not(.song-table-album) .track-row{grid-template-columns:minmax(0,1fr) 32px}}
