/* Relay Radio — compact library browsing for /requests and DJ playlists */
.rv-requests-page .requestsplaylist.rr-library-compact{
    padding:12px !important; margin:0 !important; border:1px solid rgba(37,194,255,.25) !important;
    border-radius:16px !important; background:rgba(3,10,20,.78) !important;
    overflow:visible !important; box-shadow:0 16px 32px rgba(0,0,0,.20) !important;
}
.rv-requests-page .requestsplaylist.rr-library-compact::before,
.rv-requests-page .rr-library-compact .playlisttable::before{display:none !important;content:none !important;}
.rr-library-browser{color:#e9f0fb;font-family:Poppins,Arial,sans-serif;}
.rr-library-summary{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:12px;padding:11px 13px;
    border-radius:9px;background:rgba(53,210,154,.085);color:#b7d0c9;font-size:12px;font-weight:650;}
.rr-library-summary i{color:#36d69b;}
.rr-library-summary strong{color:#e3fff3;font-size:13px;}
.rr-library-directory{margin:0 0 13px;padding:12px;border:1px solid rgba(34,195,255,.16);border-radius:11px;
    background:rgba(12,24,40,.62);}
.rr-library-directory-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:9px;}
.rr-library-directory-title{color:#e6f5ff;font-size:12px;font-weight:850;}
.rr-library-directory-title i{margin-right:6px;color:#37d2ff;}
.rr-library-directory-count{font-size:11px;color:#93a7bb;}
.rr-library-artist-search{display:block;width:100%;height:34px;margin:0 0 9px;padding:0 11px;border:1px solid rgba(57,200,248,.2);
    border-radius:8px;background:rgba(1,9,18,.65);outline:none;color:#fff;font:600 12px Poppins,Arial,sans-serif;}
.rr-library-artist-search::placeholder{color:rgba(227,241,252,.46);}
.rr-library-artist-search:focus{border-color:#33c9ff;box-shadow:0 0 0 2px rgba(51,201,255,.11);}
.rr-library-artist-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:190px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#24516c transparent;}
.rr-library-artist-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-height:29px;padding:4px 9px;
    border:1px solid rgba(240,249,255,.11);border-radius:7px;color:#bfcbda;background:rgba(255,255,255,.04);
    font:700 11px/1.3 Poppins,Arial,sans-serif;text-align:left;cursor:pointer;}
.rr-library-artist-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px;}
.rr-library-artist-total{color:#86aabf;font-size:10px;font-weight:850;}
.rr-library-artist-chip:hover,.rr-library-artist-chip:focus-visible{border-color:rgba(37,194,255,.52);background:rgba(37,194,255,.10);color:#fff;}
.rr-library-artist-chip.is-active{border-color:rgba(37,194,255,.65);background:rgba(37,194,255,.18);color:#8ce6ff;}
.rr-library-artist-chip.is-active .rr-library-artist-total{color:#8ce6ff;}
.rr-library-expand{display:inline-block;margin:10px 0 0;padding:4px 0;border:0;background:transparent;color:#72d7ff;
    font:800 11px Poppins,Arial,sans-serif;cursor:pointer;}
.rr-library-expand:hover{text-decoration:underline;}
.rr-library-artist-empty{padding:8px 0;color:#9cb0c7;font-size:11px;}
.rr-library-artist-empty[hidden],.rr-library-expand[hidden],.rr-library-pagination[hidden]{display:none !important;}
.rr-library-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px;margin:0 2px 10px;}
.rr-library-selection{color:#9daec0;font-size:11px;font-weight:700;}
.rr-library-size{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;color:#b2c4d9;font-size:11px;font-weight:750;}
.rr-library-size select{min-width:66px;height:32px;padding:3px 7px;border:1px solid rgba(37,194,255,.25);border-radius:8px;
    outline:none;color:#e9f8ff;background:#101d2b;font:750 12px Poppins,Arial,sans-serif;}
.rr-library-clear-artist{max-width:210px;padding:5px 9px;border:1px solid rgba(37,194,255,.35);border-radius:7px;
    background:rgba(37,194,255,.12);color:#a4e8ff;font-size:11px;font-weight:800;cursor:pointer;}
.rr-library-table-wrap{overflow-x:auto;border:1px solid rgba(255,255,255,.075);border-radius:10px;}
.rv-requests-page .rr-library-compact table.rr-library-table{display:table !important;width:100% !important;margin:0 !important;
    table-layout:fixed;border:0 !important;border-collapse:collapse !important;border-spacing:0 !important;color:#e8eef8 !important;}
.rv-requests-page .rr-library-compact .rr-library-table thead{display:table-header-group !important;}
.rv-requests-page .rr-library-compact .rr-library-table tbody{display:table-row-group !important;}
.rv-requests-page .rr-library-compact .rr-library-table tr{display:table-row !important;height:auto !important;transform:none !important;
    box-shadow:none !important;transition:background-color .14s ease;}
.rv-requests-page .rr-library-compact .rr-library-table th{padding:10px 12px !important;border-bottom:1px solid rgba(37,194,255,.2) !important;
    background:#132237 !important;color:#8fb7d1;text-transform:uppercase;letter-spacing:.055em;
    text-align:left;font-size:10px;font-weight:900;}
.rv-requests-page .rr-library-compact .rr-library-table td{display:table-cell !important;vertical-align:middle !important;min-width:0;width:auto !important;
    padding:8px 12px !important;border:0 !important;border-bottom:1px solid rgba(255,255,255,.055) !important;
    border-radius:0 !important;background:transparent !important;color:#cbd7e5 !important;line-height:1.35;text-align:left !important;}
.rv-requests-page .rr-library-compact .rr-library-table tr:nth-child(even){background:rgba(255,255,255,.022) !important;}
.rv-requests-page .rr-library-compact .rr-library-table tr:hover{background:rgba(37,194,255,.075) !important;}
.rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-artist{width:32% !important;}
.rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-song{width:auto !important;}
.rr-library-artist-text,.rr-library-song-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    font-size:12px;line-height:1.4;}
.rr-library-song-text{color:#f2f7ff;font-weight:800;}
.rr-library-artist-text{color:#aec6d8;font-weight:600;}
.rv-requests-page .rr-library-compact .rr-library-table th.rr-library-length,
.rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-length{width:70px !important;text-align:center !important;white-space:nowrap;
    color:#8ea6bb !important;font-size:11px;font-weight:700;}
.rv-requests-page .rr-library-compact .rr-library-table th.rr-library-action,
.rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-action{width:94px !important;text-align:right !important;}
.rv-requests-page .rr-library-compact .rr-library-table a.rr-library-request{
    display:inline-flex !important;align-items:center;justify-content:center;min-width:67px !important;min-height:28px !important;
    margin:0 !important;padding:4px 8px !important;border:1px solid rgba(37,194,255,.42) !important;border-radius:7px !important;
    background:linear-gradient(125deg,rgba(22,156,226,.2),rgba(123,80,255,.22)) !important;
    color:#cef4ff !important;font-size:10px !important;font-weight:850 !important;box-shadow:none !important;line-height:1 !important;}
.rv-requests-page .rr-library-compact .rr-library-table a.rr-library-request:hover,
.rv-requests-page .rr-library-compact .rr-library-table a.rr-library-request:focus-visible{
    border-color:#38d0ff !important;background:rgba(38,195,255,.28) !important;color:#fff !important;}
.rr-library-original,.rr-library-mobile-label{position:absolute !important;width:1px !important;height:1px !important;
    overflow:hidden !important;clip:rect(0,0,0,0) !important;clip-path:inset(50%) !important;white-space:nowrap !important;}
.rr-library-original{display:none !important;}
.rr-library-empty-row td{text-align:center !important;padding:30px 12px !important;color:#9bb3c8 !important;font-size:12px;}
.rr-library-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:12px;padding:12px 0 0;
    border-top:1px solid rgba(255,255,255,.06);}
.rr-library-pagination-top{margin:0 0 10px;padding:0 0 10px;border-top:0;border-bottom:1px solid rgba(255,255,255,.06);}
.rr-library-pagination button{min-width:30px;height:30px;padding:4px 8px;border:1px solid rgba(255,255,255,.12);
    border-radius:7px;background:rgba(255,255,255,.055);color:#c9d7e6;font:800 11px Poppins,Arial,sans-serif;cursor:pointer;}
.rr-library-pagination button:hover:not(:disabled){border-color:rgba(37,194,255,.5);color:#fff;background:rgba(37,194,255,.12);}
.rr-library-pagination button:disabled{opacity:.32;cursor:default;}
.rr-library-pagination button.is-active{border-color:rgba(37,194,255,.55);background:rgba(37,194,255,.21);color:#7be0ff;}
.rr-library-page-numbers{display:flex;align-items:center;gap:4px;}
.rr-library-page-ellipsis{padding:0 3px;color:#9ab0c6;}
.rr-library-page-range{width:100%;color:#8099b0;font-size:10px;font-weight:700;text-align:center;}
.rv-viewplaylist-page.rr-playlist-readonly .rr-library-compact .rr-library-table td.rr-library-cell-song{padding-right:12px !important;}
@media(max-width:650px){
    .rv-requests-page .requestsplaylist.rr-library-compact{padding:8px !important;}
    .rr-library-artist-chips{max-height:155px;}
    .rr-library-artist-name{max-width:175px;}
    .rv-requests-page .rr-library-compact .rr-library-table th{padding:9px 7px !important;font-size:9px;}
    .rv-requests-page .rr-library-compact .rr-library-table td{padding:9px 7px !important;}
    .rr-library-artist-text,.rr-library-song-text{font-size:11px;}
    .rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-artist{width:34% !important;}
    .rv-requests-page .rr-library-compact .rr-library-table th.rr-library-length,
    .rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-length{display:none !important;}
    .rv-requests-page .rr-library-compact .rr-library-table th.rr-library-action,
    .rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-action{width:75px !important;}
    .rv-requests-page .rr-library-compact .rr-library-table a.rr-library-request{min-width:61px !important;min-height:30px !important;padding:5px !important;}
    .rr-library-pagination{gap:4px;}
    .rr-library-pagination button{min-width:27px;height:30px;padding:4px 6px;}
}
@media(max-width:390px){
    .rr-library-pagination button.rr-library-page-number{min-width:24px;padding:4px;}
    .rr-library-directory{padding:9px;}
    .rv-requests-page .rr-library-compact .rr-library-table td.rr-library-cell-artist{width:31% !important;}
}

/* Auto DJ uses the same practical, artwork-free catalog rows. */
.rr-native-requests .rr-auto-page-size{display:inline-flex;align-items:center;gap:8px;color:#bacbdf;
    font:750 11px Poppins,Arial,sans-serif;white-space:nowrap;}
.rr-native-requests .rr-auto-page-size select{min-width:68px;height:33px;padding:4px 7px;border:1px solid rgba(37,194,255,.28);
    border-radius:8px;color:#e6f8ff;background:#101e30;font-weight:800;}
.rr-native-requests .rr-native-request-grid.rr-auto-request-list{display:block !important;width:100%;overflow-x:auto;
    border:1px solid rgba(255,255,255,.09);border-radius:10px;}
.rr-native-requests .rr-auto-library-table{width:100%;border-collapse:collapse;table-layout:fixed;color:#e5eff9;}
.rr-native-requests .rr-auto-library-table th{padding:10px 12px;border-bottom:1px solid rgba(37,194,255,.24);
    background:#132237;text-align:left;color:#92bfd6;font:900 10px Poppins,Arial,sans-serif;text-transform:uppercase;}
.rr-native-requests .rr-auto-library-table td{padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.055);font:700 12px Poppins,Arial,sans-serif;}
.rr-native-requests .rr-auto-library-table tr:nth-child(even){background:rgba(255,255,255,.026);}
.rr-native-requests .rr-auto-library-table tbody tr:hover{background:rgba(37,194,255,.075);}
.rr-native-requests .rr-auto-library-table td.rr-auto-artist{width:32%;color:#b1c6d8;overflow-wrap:anywhere;font-weight:600;}
.rr-native-requests .rr-auto-library-table td.rr-auto-song{color:#f0f7ff;overflow-wrap:anywhere;}
.rr-native-requests .rr-auto-library-table td.rr-auto-action{width:104px;text-align:right;}
.rr-native-requests .rr-auto-library-table th:last-child{width:104px;text-align:right;}
.rr-native-requests .rr-auto-library-table .rr-native-request-button{display:inline-flex !important;min-width:70px;height:29px;
    padding:0 8px;border-radius:7px;font-size:10px;}
.rr-native-requests .rr-native-request-pager{flex-wrap:wrap;gap:8px;}
.rr-native-requests .rr-auto-page-numbers{display:flex;align-items:center;flex-wrap:wrap;gap:5px;}
.rr-native-requests .rr-auto-page-numbers button{min-width:30px;height:31px;padding:4px 7px;}
.rr-native-requests .rr-auto-page-numbers button.is-active{border-color:rgba(37,194,255,.5);background:rgba(37,194,255,.2);color:#8be6ff;}
.rr-native-requests .rr-native-request-pager #rrAutoRequestPageText{flex:0 0 100%;order:3;text-align:center;}
@media(max-width:650px){
    .rr-native-requests .rr-auto-library-table th,.rr-native-requests .rr-auto-library-table td{padding:9px 7px;}
    .rr-native-requests .rr-auto-library-table td.rr-auto-artist{width:33%;font-size:11px;}
    .rr-native-requests .rr-auto-library-table td.rr-auto-song{font-size:11px;}
    .rr-native-requests .rr-auto-library-table th:last-child,.rr-native-requests .rr-auto-library-table td.rr-auto-action{width:87px;}
    .rr-native-requests .rr-auto-library-table .rr-native-request-button{min-width:64px;padding:0 5px;}
}
.rr-native-requests .rr-native-request-pager[hidden],
.rr-native-requests .rr-native-request-empty[hidden],
.rr-native-requests .rr-native-request-fallback[hidden]{display:none !important;}
/* Override the old oversized title typography without affecting request modals. */
.rv-requests-page .rr-library-compact .rr-library-table .rr-library-song-text{
    font-size:12px !important;line-height:1.4 !important;color:#f2f7ff !important;font-weight:800 !important;
}
@media(max-width:650px){
    .rv-requests-page .rr-library-compact .rr-library-table .rr-library-song-text{font-size:11px !important;}
}


/* Build 005: request confirmation — keep message and tracking action stacked.
   #popupboxloading used to be an <h3> enclosing block elements; success now
   replaces that heading with a single accessible confirmation container. */
#requestModal .rv-request-processing {
    box-sizing:border-box;
    align-items:center; justify-content:center; min-height:240px;
    padding:24px 12px;
}
#requestModal .rv-request-success {
    box-sizing:border-box; display:flex !important; flex-direction:column !important;
    align-items:center !important; justify-content:center !important;
    width:100% !important; max-width:100%; gap:0 !important;
    margin:0 auto !important; padding:0 4px; text-align:center !important;
    font-family:Poppins,Arial,sans-serif;
}
#requestModal .rv-request-success-title {
    display:flex !important; align-items:center; justify-content:center;
    flex-wrap:wrap; gap:9px; width:100%; margin:0 0 8px !important;
    font-size:21px; font-weight:850; line-height:1.3; color:#fff;
}
#requestModal .rv-request-success-title i { color:#24d6f8; margin:0 !important; }
#requestModal .rv-request-success-message {
    display:block; width:100%; margin:0 !important;
    color:rgba(237,244,252,.85); font-size:13px;
    font-weight:500; line-height:1.5; text-align:center !important;
}
#requestModal .rv-request-success-actions {
    box-sizing:border-box; display:flex !important; flex-direction:row !important;
    align-items:center !important; justify-content:center !important;
    width:100% !important; margin:20px 0 0 !important; padding:0;
    text-align:center !important;
}
#requestModal .rv-request-success .rr-request-track-link {
    box-sizing:border-box; position:static !important; float:none !important;
    display:inline-flex !important; align-items:center; justify-content:center;
    width:auto !important; max-width:100%; align-self:center !important;
    margin:0 !important; padding:10px 14px; border-radius:10px;
    white-space:normal; font-size:12px; line-height:1.3;
}
@media (max-width:480px) {
    #requestModal .rv-request-success-title { font-size:19px; }
    #requestModal .rv-request-success-message { font-size:12px; }
}
