/* Mitr4 4.8.1 Biblioteca Spotify-style */
.biblioteca-tab{padding:18px;overflow:auto;height:100%;}
.library-hero-card,.library-toolbar-card,.library-tabs-card,.library-content-card{border:1px solid rgba(110,150,255,.24);background:linear-gradient(135deg,rgba(18,42,82,.82),rgba(40,22,85,.72));border-radius:24px;box-shadow:0 18px 55px rgba(0,0,0,.35);margin-bottom:16px;}
.library-hero-card{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:26px 28px;position:relative;overflow:hidden;}
.library-hero-card:before{content:"";position:absolute;inset:-35%;background:radial-gradient(circle at 78% 20%,rgba(66,170,255,.22),transparent 30%),radial-gradient(circle at 28% 80%,rgba(221,63,230,.20),transparent 32%);pointer-events:none;}
.library-hero-card>*{position:relative;z-index:1}.library-chip{margin-bottom:8px}.library-hero-card h2{font-size:34px;margin:8px 0 8px;letter-spacing:.02em}.library-hero-card p{max-width:760px;color:#b8c7e7;margin:0;line-height:1.55}.library-hero-stats{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.library-hero-stats span,.library-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.08);border-radius:999px;padding:7px 11px;color:#e8efff;font-size:12px;font-weight:800;}
.library-toolbar-card{padding:14px;display:grid;grid-template-columns:minmax(260px,1fr) 220px 190px;gap:12px}.library-search{width:100%}.library-tabs-card{padding:10px;display:flex;flex-wrap:wrap;gap:10px}.library-tab-btn{border:1px solid rgba(120,156,255,.28);background:rgba(255,255,255,.07);color:#eaf0ff;border-radius:999px;padding:11px 16px;font-weight:900;cursor:pointer}.library-tab-btn.active{background:linear-gradient(135deg,#3da8ff,#8d56ff,#e142c8);box-shadow:0 0 24px rgba(112,105,255,.35)}.library-content-card{padding:18px}.library-section{margin-bottom:24px}.library-section:last-child{margin-bottom:0}.library-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:12px;gap:12px}.library-section-head h3{margin:0;font-size:20px}.library-section-head span{color:#aebde2;font-size:13px}.library-playlist-grid,.library-album-grid,.library-artist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:14px}.library-playlist-card,.library-album-card,.library-artist-card,.library-track-row{border:1px solid rgba(125,160,255,.23);background:linear-gradient(135deg,rgba(35,52,92,.82),rgba(36,31,79,.74));border-radius:20px;padding:14px;min-width:0;box-shadow:0 12px 32px rgba(0,0,0,.24)}.library-playlist-card{display:grid;grid-template-columns:76px minmax(0,1fr);grid-template-rows:auto auto;gap:12px}.library-playlist-card>img,.library-album-card>img,.library-artist-card>img,.library-track-row>img{width:76px;height:76px;object-fit:cover;border-radius:16px;background:#0c1428}.library-card-body{min-width:0}.library-card-title,.library-album-card strong,.library-artist-card strong,.library-track-row strong{display:block;color:#fff;font-size:16px;font-weight:950;line-height:1.25;white-space:normal;overflow-wrap:anywhere}.library-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:8px 0;color:#bfc9e9;font-size:12px}.library-card-sub,.library-album-card span,.library-artist-card span,.library-track-row span,.library-artist-card em{display:block;color:#aab7dc;font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.library-card-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.origin-public{background:rgba(45,190,120,.16)}.origin-own{background:rgba(160,110,255,.18)}.origin-downloads{background:rgba(77,158,255,.18)}.origin-local{background:rgba(255,195,75,.15)}.origin-online{background:rgba(60,220,255,.15)}.origin-suggestions{background:rgba(255,95,190,.15)}.library-album-card,.library-artist-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;align-items:center}.library-album-card .mini-btn,.library-artist-card .mini-btn{grid-column:1/-1;justify-self:end}.library-track-list{display:grid;gap:10px}.library-track-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px}.library-track-row>img{width:54px;height:54px;border-radius:12px}.library-empty{border:1px dashed rgba(160,180,255,.25);border-radius:18px;padding:22px;text-align:center;color:#aebde2;background:rgba(255,255,255,.035)}
@media(max-width:820px){.library-toolbar-card{grid-template-columns:1fr}.library-hero-card{align-items:flex-start;flex-direction:column}.library-playlist-grid,.library-album-grid,.library-artist-grid{grid-template-columns:1fr}.library-track-row{grid-template-columns:48px minmax(0,1fr)}.library-track-row .mini-btn{grid-column:1/-1;justify-self:stretch}.biblioteca-tab{padding:12px 12px calc(110px + env(safe-area-inset-bottom,0px));}}

/* Mitr4 4.8.4 · Biblioteca tab isolation + scroll guard
   Corrige regressão onde a Biblioteca podia aparecer por baixo dos outros separadores. */
#tab-biblioteca.tab:not(.active){
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
}
#tab-biblioteca.tab.active{
  display:block!important;
  visibility:visible!important;
  pointer-events:auto!important;
  min-height:0!important;
  overflow:auto!important;
  padding:18px 18px calc(140px + env(safe-area-inset-bottom,0px))!important;
  scroll-padding-bottom:calc(150px + env(safe-area-inset-bottom,0px));
}
#tab-biblioteca .library-content-card{
  max-height:none!important;
  overflow:visible!important;
}
#tab-biblioteca .library-playlist-grid,
#tab-biblioteca .library-album-grid,
#tab-biblioteca .library-artist-grid{
  align-items:stretch;
}
#tab-biblioteca .library-playlist-card{
  min-width:0!important;
}
@media(max-width:820px){
  #tab-biblioteca.tab.active{
    padding:12px 12px calc(190px + env(safe-area-inset-bottom,0px))!important;
  }
}
