.search-heading { margin-bottom: 27px; }
.sidebar .brand { padding:0; }
.logo-frame { display:block; position:relative; width:204px; height:64px; overflow:hidden; flex-shrink:0; }
.logo-frame img { position:absolute; width:220px; max-width:none; height:auto; left:-8px; top:-6px; mix-blend-mode:screen; }
.sidebar nav { margin-top:35px; }
.topbar > strong { font-size:13px; font-weight:500; color:var(--muted); }
.mobile-brand.brand { display:none; }
.light .logo-frame { background:#111216; border-radius:6px; }
.light .logo-frame img { mix-blend-mode:normal; }
.offline-card { display:flex; align-items:center; width:100%; padding:17px 21px; gap:14px; border:1px solid var(--line); border-radius:10px; margin:-12px 0 32px; text-align:left; background:var(--panel); }
.offline-card > span { flex:1; }
.offline-card > small { color:var(--muted); }
.offline-card > svg { color:var(--muted); width:19px; }
.offline-label,.saved-offline { color:var(--green)!important; }
.folder-choice { display:flex; align-items:center; gap:16px; border:1px solid var(--line); padding:18px; border-radius:8px; margin-bottom:18px; }
.folder-choice > svg { color:var(--accent); }
.folder-choice strong { display:block; font-size:13px; font-weight:500; }
.folder-choice span { display:block; color:var(--muted); font-size:11px; margin-top:7px; line-height:1.5; }
.settings-actions { display:flex; gap:15px; align-items:center; }
.local-storage-summary { border-top:1px solid var(--line); padding-top:20px; margin-top:26px; display:flex; justify-content:space-between; color:var(--muted); font-size:12px; }
.settings-card .storage-note { font-size:10px; margin:16px 0 0; }
.subscription-gate .btn { margin:8px; }
.subscription-gate p { margin-bottom:20px; }
#player-mode { font-size:9px; color:var(--green); display:block; margin-top:4px; }
.icon-btn:disabled { cursor:default; }
.search-heading h1 { font-size: 44px; letter-spacing: -1.8px; margin: 13px 0; }
.search-heading p { color: var(--muted); font-size: 13px; }
.global-search { display: flex; gap: 12px; margin: 28px 0 17px; }
.global-search label { flex: 1; position: relative; }
.global-search label > svg { position: absolute; left: 19px; top: 18px; color: var(--accent); }
.global-search input { width: 100%; height: 58px; background: var(--panel); color: var(--text); padding: 0 20px 0 54px; border: 1px solid #44434b; border-radius: 10px; font-size: 16px; }
.global-search .btn { height: 58px; padding: 0 28px; border-radius: 10px; font-size: 13px; }
.search-options { display: flex; align-items: center; gap: 8px; margin-bottom: 31px; flex-wrap: wrap; }
.source-filter { color: var(--muted); border: 1px solid var(--line); border-radius: 20px; padding: 8px 13px; font-size: 11px; }
.source-filter.active { color: var(--accent); border-color: #ff765f55; background: #ff765f0c; }
.search-hint { font-size: 10px; color: var(--muted); margin-left: auto; }
.search-welcome { margin: 35px 0; display: grid; grid-template-columns: 1.1fr 1fr; min-height: 245px; gap: 25px; }
.discover-card { border: 1px solid var(--line); border-radius: 13px; padding: 30px; background: var(--panel); position: relative; overflow: hidden; }
.discover-card h2 { font-size: 27px; line-height: 1.2; letter-spacing: -.8px; margin: 17px 0 12px; }
.discover-card p { font-size: 12px; color: var(--muted); max-width: 240px; }
.discover-card.coral { background: #e7e1d5; color: #242427; border: 0; }
.discover-card.coral .eyebrow { color: #88685a; }
.discover-card.coral p { color: #6b6762; }
.discover-card.coral .text-btn { color: #4f332d; margin-top: 24px; }
.discover-card .large-note { position: absolute; right: 19px; bottom: 13px; width: 72px; height: 72px; stroke: var(--accent); opacity: .45; transform: rotate(-12deg); }
.suggestions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 23px; position: relative; z-index: 1; }
.suggestions button { border: 1px solid var(--line); border-radius: 6px; padding: 8px 10px; font-size: 11px; color: #c5c4ca; }
.suggestions button:hover { color: var(--accent); border-color: var(--accent); }
.search-status { display: flex; align-items: center; justify-content: space-between; margin: 28px 0 16px; gap: 12px; }
.search-status h2 { font-size: 19px; }
.search-status > span { color: var(--muted); font-size: 11px; }
.search-loading { padding: 65px 15px; text-align: center; display: grid; justify-items: center; gap: 20px; color: var(--muted); }
.search-loading p { font-size: 12px; }
.search-track { display: flex; gap: 14px; align-items: center; padding: 15px 16px; border-bottom: 1px solid var(--line); }
.search-track:last-child { border-bottom: 0; }
.search-track:hover { background: #ffffff03; }
.search-track .track-art { width: 43px; height: 43px; border: 0; cursor: pointer; }
.search-track:nth-child(3n+2) .track-art { background: #344a49; color: #bbd5c7; }
.search-track:nth-child(3n+3) .track-art { background: #464058; color: #cec2e4; }
.search-track .track-info strong { font-size: 13px; }
.search-track .track-info span { font-size: 11px; display: flex; align-items: center; gap: 8px; }
.search-track .track-info small { font-size: 9px; padding: 2px 5px; background: #ffffff08; border-radius: 3px; }
.search-track .track-info em { font-style: normal; }
.search-track.current-track { background:#ff765f0c; box-shadow:inset 3px 0 var(--accent); }
.search-track.current-track .track-info strong,.search-track.current-track .track-art { color:var(--accent); }
.search-track.current-track .track-art { background:#ff765f20; }
.search-track .playback-state { color:var(--accent); font-size:10px; margin-top:6px; }
.search-track .track-art .spinner { width:18px; height:18px; }
.player-buttons .icon-btn:disabled { opacity:.25; }
.result-actions { display: flex; align-items: center; gap: 5px; }
.result-duration { font-size: 11px; font-family: monospace; color: var(--muted); margin-right: 9px; }
.favorite-on { color: var(--accent); }
.favorite-on svg { fill: currentColor; }
.favorite-card { width: 100%; display: flex; align-items: center; text-align: left; gap: 20px; border: 1px solid #ff765f30; padding: 24px; border-radius: 11px; background: #ff765f0a; margin: 27px 0 30px; }
.favorite-card > .favorite-cover { width: 57px; height: 57px; display: grid; place-items: center; background: var(--accent); color: #201b1b; border-radius: 12px; }
.favorite-cover svg { width: 26px; height: 26px; fill: currentColor; }
.favorite-card strong { font-size: 18px; font-weight: 550; display: block; }
.favorite-card small { display: block; color: var(--muted); font-size: 11px; margin-top: 7px; }
.favorite-card > svg { margin-left: auto; color: var(--accent); }
.library-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 25px; }
.curated-section { margin-bottom: 30px; }
.curated-section .playlist-art { aspect-ratio: 2; }
.playlist-choice { display: flex; width: 100%; align-items: center; gap: 13px; border: 1px solid var(--line); border-radius: 8px; padding: 13px; text-align: left; margin: 10px 0; }
.playlist-choice:hover { border-color: var(--accent); }
.playlist-choice > span { flex: 1; }
.playlist-choice small { display: block; color: var(--muted); margin-top: 5px; font-size: 10px; }
#playlist-choices { max-height: 240px; overflow: auto; margin: 20px 0; }
#playlist-track-name { font-size: 12px; }
.empty-state .btn { margin-top: 4px; }
.preparing-track { color: var(--accent); font-size: 10px; margin-top: 6px; }
@media (max-width:760px) {
  .sidebar nav { margin-top:0; }
  .sidebar .brand { display:none; }
  .mobile-brand.brand { display:block; padding:0; }
  .topbar > strong { display:none; }
  .topbar { padding:4px 19px; min-height:66px; padding-top:var(--tg-content-safe-area-inset-top,0px); }
  .logo-frame { width:170px; height:50px; }
  .logo-frame img { width:184px; left:-7px; top:-5px; }
  .account #account-name { display:none; }
  .player { grid-template-columns:minmax(0,1fr) auto; padding:10px 15px; gap:5px 10px; }
  .player-track { grid-column:1; grid-row:1; }
  .player-right { grid-column:2; grid-row:1; gap:4px; }
  .player-right #close-player { display:none; }
  .player-right #player-add,.player-right #player-favorite,.player-right #player-send { display:inline-flex; width:40px; height:40px; }
  .player-buttons { grid-column:1/-1; grid-row:2; gap:24px; }
  .player-buttons #previous,.player-buttons #next { display:inline-flex; width:44px; height:40px; }
  .timeline { grid-row:3; }
  .has-player { padding-bottom:145px; }
  .has-player .toast { bottom:230px; }
  .player-track .track-art { display:none; }
  .search-track .result-actions { flex-wrap:wrap; max-width:100px; justify-content:flex-end; }
  .search-heading { margin-bottom: 23px; }
  .search-heading h1 { font-size: 34px; margin: 13px 0 11px; letter-spacing: -1.3px; }
  .search-heading p { font-size: 12px; max-width: 270px; }
  .global-search { gap: 8px; margin-top: 23px; }
  .global-search input { height: 51px; font-size: 14px; padding-left: 43px; }
  .global-search label > svg { left: 13px; top: 16px; width: 18px; height: 18px; }
  .global-search .btn { height: 51px; width: 49px; padding: 0; font-size: 0; gap: 0; flex-shrink: 0; }
  .global-search .btn svg { width: 19px; height: 19px; }
  .source-filter { padding: 7px 11px; font-size: 10px; }
  .search-hint { display: none; }
  .search-welcome { grid-template-columns: 1fr; gap: 14px; margin: 25px 0; }
  .discover-card { padding: 25px; min-height: 205px; }
  .discover-card h2 { font-size: 26px; }
  .search-track { padding: 13px 10px; gap: 10px; }
  .search-track .track-art { width: 35px; height: 35px; }
  .search-track .track-info strong { font-size: 12px; }
  .search-track .track-info span { font-size: 10px; gap: 6px; flex-wrap: wrap; }
  .search-track .track-info em { max-width: 155px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .search-track .track-info small { font-size: 8px; }
  .result-actions { gap: 0; }
  .result-actions .icon-btn { width: 30px; height: 34px; }
  .result-duration { display: none; }
  .search-status h2 { font-size: 17px; }
  .favorite-card { padding: 18px; gap: 14px; margin: 23px 0; }
  .favorite-card > .favorite-cover { width: 46px; height: 46px; }
  .favorite-card strong { font-size: 16px; }
  .library-actions .btn { padding: 0 13px; font-size: 11px; }
  .curated-section .playlist-art { aspect-ratio: 1.6; }
  .nav-item { width: 75px; }
}
.library-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.library-actions .btn{flex:1 1 200px}
@media(max-width:640px){.library-actions .btn{flex:1 1 100%}}
.import-text{margin:-6px 0 20px}.import-text summary{font-size:12px;color:var(--accent);cursor:pointer;padding:6px 0}.import-text[open] summary{margin-bottom:14px}
