/* Studio Library Dark Theme Styles */
.library-container { padding:1.25rem; }
.library-header h3 { color:rgba(217,168,50,1); margin:0 0 .25rem; }
.library-header small { color:#cfcfcf; }
.library-stats { display:flex; gap:1rem; flex-wrap:wrap; }
.library-stat-item { background:#181818; border:1px solid rgba(217,168,50,.25); border-radius:10px; padding:.85rem 1rem; min-width:110px; text-align:center; box-shadow:0 3px 10px rgba(217,168,50,.15); }
.library-stat-item strong { display:block; font-size:1.3rem; font-weight:700; color:rgba(217,168,50,1); line-height:1; margin-bottom:.25rem; }
.library-stat-item span { font-size:.65rem; letter-spacing:.75px; text-transform:uppercase; color:#d0d0d0; font-weight:600; }
.library-controls { background:#181818; border:1px solid rgba(217,168,50,.25); border-radius:12px; padding:1rem 1rem 1.1rem; box-shadow:0 4px 14px rgba(0,0,0,.4); }
.library-controls .form-select, .library-controls .form-control { background:#121212; border:1px solid rgba(217,168,50,.35); color:#e0e0e0; }
.library-controls .form-select:focus, .library-controls .form-control:focus { background:#1d1d1d; border-color:rgba(217,168,50,.8); box-shadow:0 0 0 3px rgba(217,168,50,.25); color:#fff; }
.library-table-container { background:#181818; border:1px solid rgba(217,168,50,.35); border-radius:14px; overflow:hidden; box-shadow:0 8px 28px -4px rgba(0,0,0,.6),0 0 0 1px rgba(217,168,50,.15); }
.library-table thead.table-dark { background:#121212; }
.library-table thead th { color:rgba(217,168,50,1); border-bottom:1px solid rgba(217,168,50,.35); font-weight:600; font-size:.8rem; letter-spacing:.5px; text-transform:uppercase; }
.library-table tbody tr { transition:background .2s ease; }
.library-table tbody tr:hover { background:rgba(217,168,50,.08); }
.play-btn { color:rgba(217,168,50,1); font-size:1.2rem; transition:color .2s ease, transform .2s ease; }
.play-btn:hover { color:#ffd765; transform:scale(1.15); }
.song-info .song-title, .album-info .album-title { font-weight:600; color:#e0e0e0; }
.song-info small, .album-info small { color:#b0b0b0 !important; }
.action-buttons .btn-outline-primary, .action-buttons .btn-outline-info { --bs-btn-color:rgba(217,168,50,1); --bs-btn-border-color:rgba(217,168,50,.6); --bs-btn-hover-bg:rgba(217,168,50,.15); --bs-btn-hover-border-color:rgba(217,168,50,.9); --bs-btn-active-bg:rgba(217,168,50,.2); }
.action-buttons .btn-outline-info { --bs-btn-color:#17a2b8; --bs-btn-border-color:#17a2b8; --bs-btn-hover-bg:rgba(23,162,184,.15); --bs-btn-hover-border-color:#20c4d6; }
.badge.bg-success { background:linear-gradient(135deg,#2f9e44,#37b24d)!important; }
.badge.bg-secondary { background:#555!important; }
.text-muted { color:#bbbbbb!important; }
.library-stats.hidden { display:none !important; }
.library-col-icon { width:50px; }
@media (max-width:768px){ .library-controls .row > div { margin-top:.75rem; } .library-stat-item { flex:1 1 calc(33.333% - 1rem); } }
@media (max-width:576px){ .library-stat-item { flex:1 1 calc(50% - 1rem); } .library-table thead { display:none; } .library-table tbody tr { display:block; padding:.75rem .5rem; } .library-table tbody td { display:flex; justify-content:space-between; border:0; padding:.25rem .5rem; } .library-table tbody td:first-child { justify-content:flex-start; } }
/* Override Bootstrap table backgrounds for dark theme */
.library-table-container,
.library-table,
.library-table thead,
.library-table tbody,
.library-table td,
.library-table th {
    background: transparent !important;
}
.now-playing-scroll {
    flex: 1;
    overflow: hidden;
    height: 32px;
    display: flex;
    align-items: center;
    margin: 0 12px;
    background: transparent;
    border-radius: 16px;
    position: relative;
}
.scrolling-text {
    display: inline-block;
    white-space: nowrap;
    animation: scroll-left 12s linear infinite;
    font-size: 1rem;
    color: rgba(217,168,50,1);
    font-weight: 600;
    padding-left: 8px;
}
@keyframes scroll-left {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}
