/* HORA MUSIC v17 — descoberta, cards públicos, perfis e empty states */
.discovery-page,.creator-page{padding-bottom:52px}
.discovery-hero{padding:28px;min-height:250px}
.discovery-hero .explore-hero-inner{align-items:stretch}
.discovery-hero-copy{display:flex;min-width:0;flex:1;flex-direction:column;align-items:flex-start;justify-content:center}
.discovery-hero-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;color:var(--muted);font-size:12px}
.discovery-hero-meta a{color:var(--foreground);font-weight:700}
.discovery-hero .featured-play{margin-top:18px;min-height:44px;padding-inline:18px}
.discovery-featured-art{position:relative;width:min(34vw,300px);min-width:220px;aspect-ratio:1.45/1;padding:0;overflow:hidden}
.discovery-featured-art img{width:100%;height:100%;object-fit:cover;display:block}
.discovery-featured-art:has(img):after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.18))}
.discovery-browser{margin-top:34px}
.discovery-toolbar{margin-top:0;align-items:flex-end}
.discovery-toolbar>div>p{margin:5px 0 0;color:var(--muted);font-size:12px}
.discovery-toolbar .eyebrow{font-size:10px}
.discovery-search{width:min(350px,42vw)}
.discovery-sort{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}
.discovery-sort-pill{display:inline-flex;min-height:34px;align-items:center;padding:0 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:11px;font-weight:750;transition:.18s ease}
.discovery-sort-pill:hover{border-color:color-mix(in oklab,var(--brand-glow) 42%,var(--border));color:var(--foreground)}
.discovery-sort-pill.active{border-color:color-mix(in oklab,var(--brand-glow) 55%,transparent);background:var(--accent);color:var(--foreground)}
.discovery-genres{margin-top:12px}
.explore-filter-mobile{display:none}
.discovery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;align-items:stretch}
.track-card-community{display:flex;min-width:0;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;border-radius:17px;background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 96%,transparent),color-mix(in oklab,var(--surface-2) 94%,transparent));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.track-card-community:hover{transform:translateY(-3px);border-color:color-mix(in oklab,var(--brand-glow) 32%,var(--border));box-shadow:0 18px 44px rgba(0,0,0,.18)}
.track-card-community .track-art{width:100%;height:auto;flex:0 0 auto;aspect-ratio:1.35/1;border-radius:0;background:var(--surface-2)}
.track-card-community .track-art:before{opacity:.26}
.track-card-community .track-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.track-card-community .track-play{width:46px;height:46px;opacity:1;transform:scale(.94);box-shadow:0 12px 30px rgba(0,0,0,.25)}
.track-card-community.is-playing .track-play{box-shadow:0 0 0 5px color-mix(in oklab,var(--brand-glow) 20%,transparent),0 12px 30px rgba(0,0,0,.25)}
.track-trending-badge{position:absolute;z-index:2;left:10px;top:10px;padding:5px 8px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(12,12,15,.68);backdrop-filter:blur(8px);color:#fff;font-size:9px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.track-card-community .track-info{padding:12px 12px 8px;flex:1}
.track-card-community .track-title-line{align-items:flex-start}
.track-card-community .track-title{display:-webkit-box;min-height:38px;flex:1;white-space:normal;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:14px;line-height:1.35;font-weight:800;color:var(--foreground)}
.track-card-community .track-mode{margin-top:1px;padding:2px 6px;font-size:8px}
.track-author-line{display:flex;min-width:0;align-items:center;gap:5px;margin-top:7px;color:var(--muted);font-size:11px}
.track-author{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in oklab,var(--foreground) 88%,var(--muted));font-weight:700}
.track-author:hover{color:var(--brand-glow)}
.track-card-community .track-author-line .track-genre{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.track-stats{display:flex;align-items:center;gap:9px;margin-top:9px;color:var(--muted);font-size:9.5px;font-variant-numeric:tabular-nums}
.track-stats span{display:inline-flex;min-width:0;align-items:center;gap:4px;white-space:nowrap}
.track-stats .icon{width:11px;height:11px}
.track-card-community .track-actions{justify-content:flex-end;gap:5px;padding:0 10px 10px}
.track-card-community .track-action{height:32px;border-radius:9px;background:transparent}
.track-card-community .track-action.icon-only{width:32px}
.track-card-community .track-action .icon{width:14px;height:14px}
.track-card-community.is-liked .track-action[data-action="like"]{color:var(--brand-glow);background:var(--accent);border-color:color-mix(in oklab,var(--brand-glow) 26%,var(--border))}
.discovery-empty,.library-empty-card{display:flex;min-height:260px;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin-top:22px;padding:32px;border:1px dashed color-mix(in oklab,var(--border) 88%,transparent);border-radius:20px;background:color-mix(in oklab,var(--surface) 60%,transparent);text-align:center}
.discovery-empty>span,.library-empty-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:var(--accent);color:var(--brand-glow)}
.discovery-empty>span .icon,.library-empty-icon .icon{width:23px;height:23px}
.discovery-empty h1,.discovery-empty h3,.library-empty-card h2{margin:5px 0 0;font-size:19px}
.discovery-empty p,.library-empty-card p{max-width:480px;margin:0;color:var(--muted);font-size:12.5px;line-height:1.55}
.discovery-empty .btn,.library-empty-card .btn{margin-top:9px}
.discovery-pagination{margin-top:28px}

/* Perfil público */
.creator-page{max-width:1180px}
.creator-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px;border-radius:20px}
.creator-avatar{width:82px;height:82px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:var(--gradient-brand);color:#fff;font-size:23px;font-weight:850}
.creator-avatar img{width:100%;height:100%;object-fit:cover}
.creator-copy h1{margin:2px 0 0;font-size:clamp(26px,4vw,38px);line-height:1.05;letter-spacing:-.04em}
.creator-handle{margin:5px 0 0;color:var(--brand-glow);font-size:12px;font-weight:750}
.creator-bio{max-width:680px;margin:9px 0 0;color:var(--muted);font-size:12.5px;line-height:1.55}
.creator-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}
.creator-stats article{display:grid;gap:2px;padding:14px 15px;border:1px solid var(--border);border-radius:14px;background:color-mix(in oklab,var(--surface) 82%,transparent)}
.creator-stats strong{font-size:18px}.creator-stats span{color:var(--muted);font-size:9.5px}
.creator-music-section{margin-top:30px}.creator-music-section .section-head{align-items:flex-start}.creator-music-section .section-head p{margin-top:4px}
.profile-bio-field{grid-column:1/-1}.profile-bio-field small{color:var(--muted);font-size:10px}
.audio-visibility{color:color-mix(in oklab,var(--foreground) 78%,var(--muted))}

@media(max-width:1320px){.discovery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){.discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.discovery-featured-art{width:260px;min-width:190px}.creator-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
  .discovery-page,.creator-page{padding-top:22px}
  .discovery-hero{padding:20px}.discovery-hero .explore-hero-inner{display:grid}.discovery-featured-art{width:100%;min-width:0;aspect-ratio:2/1;order:-1}.discovery-hero-copy{align-items:stretch}.discovery-hero .featured-play{align-self:flex-start}
  .discovery-toolbar{align-items:stretch;flex-direction:column}.discovery-search{width:100%}.discovery-sort,.explore-filter-desktop{display:none}.explore-filter-mobile{display:block;margin-top:14px;border:1px solid var(--border);border-radius:13px;background:color-mix(in oklab,var(--surface) 72%,transparent)}.explore-filter-mobile summary{display:flex;min-height:42px;align-items:center;gap:8px;padding:0 12px;cursor:pointer;font-size:12px;font-weight:800;list-style:none}.explore-filter-mobile summary::-webkit-details-marker{display:none}.explore-filter-mobile summary .icon{width:14px;height:14px}.explore-filter-mobile summary span{margin-left:auto;color:var(--muted);font-size:9.5px;font-weight:600}.mobile-filter-body{display:grid;gap:14px;padding:0 12px 12px}.mobile-filter-group>b{display:block;margin-bottom:7px;font-size:10px}.mobile-sort-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.mobile-sort-list a{padding:8px;border:1px solid var(--border);border-radius:9px;color:var(--muted);font-size:10px;text-align:center}.mobile-sort-list a.active{background:var(--accent);color:var(--foreground);border-color:color-mix(in oklab,var(--brand-glow) 35%,var(--border))}
  .creator-hero{grid-template-columns:auto minmax(0,1fr);gap:14px}.creator-hero>.btn{grid-column:1/-1;justify-self:start}.creator-avatar{width:68px;height:68px}.creator-stats{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){.discovery-grid{gap:9px}.track-card-community{border-radius:14px}.track-card-community .track-info{padding:9px 9px 6px}.track-card-community .track-title{min-height:34px;font-size:12px}.track-card-community .track-mode{display:none}.track-author-line{margin-top:5px;font-size:9.5px}.track-card-community .track-author-line .track-genre{font-size:9.5px}.track-stats{gap:6px;font-size:8px}.track-stats span:last-child{display:none}.track-card-community .track-actions{padding:0 7px 7px}.track-card-community .track-action.icon-only{width:30px;height:30px}.track-card-community .track-play{width:40px;height:40px}.track-trending-badge{left:7px;top:7px;font-size:7.5px}.library-empty-card{min-height:230px;padding:24px 18px}}
@media(max-width:370px){.discovery-grid{grid-template-columns:1fr}.track-card-community .track-art{aspect-ratio:1.65/1}.track-card-community .track-title{font-size:13px}.track-stats span:last-child{display:inline-flex}}

/* Página pública da faixa */
.public-track-v17{max-width:980px;margin-inline:auto}.public-track-v17 .music-public-meta a{color:var(--foreground);font-weight:750;text-decoration:none}.public-track-v17 .music-public-meta a:hover{color:var(--brand-glow)}
.public-track-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.public-track-stats span{display:grid;gap:2px;min-width:0;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:color-mix(in oklab,var(--surface-2) 82%,transparent);color:var(--muted);font-size:9px}.public-track-stats b{overflow:hidden;text-overflow:ellipsis;color:var(--foreground);font-size:13px;white-space:nowrap}.public-download-note{margin:10px 0 0;color:var(--muted);font-size:10px}
@media(max-width:620px){.public-track-stats{grid-template-columns:1fr 1fr}.public-track-v17 .music-public-actions{display:grid;grid-template-columns:1fr 1fr}.public-track-v17 .music-public-actions .btn{width:100%;justify-content:center}}
