/* Style dla wtyczki Na Życzenie - Wersja Ciemna */

.nazyczenie-message {
    padding      : 15px;
    margin-bottom: 20px;
    border       : 1px solid transparent;
    border-radius: 4px;
    text-align   : center;
}

.nazyczenie-success {
    color           : #a3d9a5;
    background-color: #2a4b2c;
    border-color    : #3b6b3d;
}

.nazyczenie-error {
    color           : #f1c2c7;
    background-color: #491217;
    border          : 2px solid #c82333;
    border-radius   : 4px;
}

/* Styl dla nawigacji z zakładkami */
.nazyczenie-nav {
    padding         : 10px;
    border          : 1px solid #444;
    background-color: #333;
    margin-bottom   : 15px;
    text-align      : center;
}

/* Style dla naszych unikalnych tabel */
.nazyczenie-table {
    border-collapse : collapse;
    border-spacing  : 0;
    width           : 100%;
    margin-top      : 15px;
    background-color: #3a3a3a;
    color           : #e0e0e0;
}

/* Styl nagłówka tabeli */
.nazyczenie-table .nazyczenie-header {
    background-color: #2c2c2c;
    font-weight     : bold;
    text-align      : center;
    padding         : 12px;
    border-bottom   : 2px solid #555;
}

/* Styl komórek danych */
.nazyczenie-table .nazyczenie-row {
    padding      : 10px;
    border-bottom: 1px solid #555;
    text-align   : center;
}

/* Poprawka kolorów linków w tabeli */
.nazyczenie-table a {
    color: #88c8ff;
}

/* Style dla ikon statusu (fajeczka/krzyżyk) */
.nazyczenie-status-icon-ok {
    color: #5cb85c;
}

.nazyczenie-status-icon-off {
    color: #d9534f;
}

/* Style dla przełącznika (toggle switch) */
.nazyczenie-switch {
    position      : relative;
    display       : inline-block;
    width         : 50px;
    height        : 24px;
    vertical-align: middle;
}

.nazyczenie-switch input {
    display: none;
}

.nazyczenie-slider {
    position        : absolute;
    cursor          : pointer;
    top             : 0;
    left            : 0;
    right           : 0;
    bottom          : 0;
    background-color: #d9534f;
    transition      : .4s;
    border-radius   : 24px;
}

.nazyczenie-slider:before {
    position        : absolute;
    content         : "";
    height          : 18px;
    width           : 18px;
    left            : 3px;
    bottom          : 3px;
    background-color: white;
    transition      : .4s;
    border-radius   : 50%;
}

input:checked+.nazyczenie-slider {
    background-color: #5cb85c;
}

input:checked+.nazyczenie-slider:before {
    transform: translateX(26px);
}

/* Style dla panelu bocznego */
.nazyczenie-side-panel {
    text-align: center;
    font-size : 12px;
    color     : #ccc;
}

.nazyczenie-side-panel .avatar {
    width        : 60px;
    height       : 60px;
    border-radius: 50%;
    border       : 2px solid #88c8ff;
    margin-bottom: 8px;
    object-fit   : cover;
    box-shadow   : 0 0 10px rgba(136, 200, 255, 0.5);
}

.nazyczenie-side-panel .dj-lead {
    font-size: 11px;
    color    : #aaa;
}

.nazyczenie-side-panel .dj-name {
    font-size  : 14px;
    color      : #fff;
    font-weight: bold;
    display    : block;
}

.nazyczenie-side-panel .dj-info-wrapper {
    display: table;
    width  : 100%;
}

.nazyczenie-side-panel .dj-avatar-cell {
    display       : table-cell;
    width         : 70px;
    vertical-align: top;
    padding-right : 10px;
}

.nazyczenie-side-panel .dj-text-cell {
    display       : table-cell;
    vertical-align: top;
}

.nazyczenie-side-panel .broadcast-times {
    margin-top: 5px;
    font-size : 11px;
}

.nazyczenie-side-panel .broadcast-times strong {
    color: #88c8ff;
}

/* Styl dla informacji/ostrzeżenia w formularzu */
.nazyczenie-disclaimer {
    font-size       : 14px;
    text-align      : center;
    margin-bottom   : 15px;
    color           : #f1c2c7;
    background-color: #491217;
    border          : 2px solid #c82333;
}

/* Style dla pól input w naszych tabelach */
.nazyczenie-table .textbox {
    background-color: #2c2c2c;
    border          : 1px solid #555;
    color           : #e0e0e0;
    padding         : 5px;
    border-radius   : 3px;
}

.nazyczenie-table .textbox:focus {
    border-color: #88c8ff;
}

/* Style dla kolorów tekstu w tabeli zamówień */
.nazyczenie-artist {
    color      : #88c8ff;
    font-weight: bold;
    font-size  : 14px;
}

.nazyczenie-title {
    color      : #a3d9a5;
    font-weight: bold;
    font-size  : 14px;
}

.nazyczenie-user {
    color      : #f1c2c7;
    font-weight: bold;
    font-size  : 16px;
}

.nazyczenie-ip {
    color      : #ffc400;
    font-size  : 14px;
    font-weight: bold;
}

/* Style dla ikon akcji (kopiuj, edytuj, usuń) */
.nazyczenie-action-icon {
    font-size: 18px;
}

/* Dodatkowe style dla wierszy w panelu admina */
.nazyczenie-table tr.nazyczenie-pending .nazyczenie-row {
    background-color: #4a4a38;
    /* Żółtawy odcień dla oczekujących */
}

.nazyczenie-table tr.nazyczenie-rejected .nazyczenie-row {
    background-color: #4f3a3a;
    /* Czerwonawy odcień dla odrzuconych */
    color           : #aaa;
}

/* Styl dla wiersza oznaczonego jako "przeczytany" */
.nazyczenie-table tr.nazyczenie-is-read .nazyczenie-row {
    background-color: #2a4b2c;
    /* Zielonkawy odcień dla przeczytanych, tak jak przy zagranych piosenkach */
}

.nazyczenie-table tr.nazyczenie-played .nazyczenie-row {
    background-color: #2a4b2c;
    /* Zielonkawy odcień dla zagranych */
}

.nazyczenie-action-icon {
    margin         : 0 5px;
    text-decoration: none;
}

.nazyczenie-action-row:not(:last-child) {
    margin-bottom: 5px;
}

/* Kontener na ikony akcji */
.nazyczenie-action-icons-cell {
    white-space: nowrap;
    text-align : center;
}

/* Klasy pomocnicze do czyszczenia stylów inline */
.nazyczenie-text-center {
    text-align: center;
}

.nazyczenie-przyciski {
    text-align   : center;
    margin-top   : 15px;
    margin-bottom: 15px;
}

.nazyczenie-text-left {
    text-align  : left;
    padding-left: 10px;
}

.nazyczenie-form-table {
    width       : 500px;
    margin-left : auto;
    margin-right: auto;
}

.nazyczenie-main-table {
    width: 750px;
}

.nazyczenie-song-cell {
    line-height: 1.4;
}

/* Szerokości kolumn */
.nazyczenie-col-1 {
    width: 1px;
}

.nazyczenie-col-30 {
    width: 30%;
}

.nazyczenie-col-50 {
    width: 50px;
}

.nazyczenie-col-80 {
    width: 80px;
}

.nazyczenie-col-100 {
    width: 100px;
}

/* Szerokości pól input */
.nazyczenie-input-100 {
    width: 100%;
}

/* --- Nowy, ujednolicony styl dla okienek Popup --- */
#nazyczenie-confirm-overlay {
    position        : fixed;
    top             : 0;
    left            : 0;
    width           : 100%;
    height          : 100%;
    background-color: rgba(0, 0, 0, 0.85);
    z-index         : 2000;
    display         : flex;
    justify-content : center;
    align-items     : center;
    opacity         : 0;
    transition      : opacity 0.3s ease-in-out;
}

#nazyczenie-confirm-overlay.is-visible {
    opacity: 1;
}

#nazyczenie-confirm-dialog {
    background-color: #2c2c2c;
    color           : #e0e0e0;
    padding         : 25px;
    border-radius   : 15px;
    border          : 2px solid #ff5800;
    box-shadow      : 0 0 15px rgba(0, 0, 0, 0.5);
    z-index         : 2001;
    max-width       : 400px;
    text-align      : center;
}

.nazyczenie-confirm-message {
    font-size    : 16px;
    margin-bottom: 20px;
}

.nazyczenie-confirm-buttons .button {
    margin   : 0 10px;
    font-size: 20px;
    /* Powiększenie ikon emoji */
    min-width: 60px;
    /* Minimalna szerokość dla lepszego wyglądu */
}

/* Czerwony przycisk dla potwierdzenia */
.nazyczenie-confirm-buttons #nazyczenie-confirm-yes {
    background-color: #c82333;
    border-color    : #bd2130;
}

/* Zielony przycisk dla informacji */
.nazyczenie-confirm-buttons #nazyczenie-info-ok {
    background-color: #28a745;
    border-color    : #218838;
}

/* Kontener dla przycisku "Usuń wszystko" */
.nazyczenie-delete-all-container {
    padding         : 10px;
    border          : 1px solid #444;
    background-color: #333;
    margin-top      : 15px;
    text-align      : center;
}

.nazyczenie-delete-all-container .button {
    margin-left : 5px;
    margin-right: 5px;
}

/* Style dla legendy kolorów */
.nazyczenie-legend {
    padding         : 10px;
    border          : 1px solid #444;
    background-color: #333;
    margin-top      : 15px;
    text-align      : center;
    font-size       : 12px;
}

.legend-item {
    margin: 0 10px;
}

.legend-color {
    display       : inline-block;
    width         : 12px;
    height        : 12px;
    border-radius : 3px;
    vertical-align: middle;
    margin-right  : 5px;
}

/* --- Style dla zakładek w panelu bocznym --- */
.nazyczenie-tabs-container {
    display      : flex;
    border-bottom: 1px solid #555;
    margin-bottom: 10px;
}

.nazyczenie-tab-link {
    flex                   : 1;
    padding                : 10px;
    text-align             : center;
    cursor                 : pointer;
    background-color       : #333;
    color                  : #ccc;
    border-top-left-radius : 5px;
    border-top-right-radius: 5px;
    transition             : background-color 0.3s, color 0.3s;
    font-weight            : bold;
}

.nazyczenie-tab-link:hover {
    background-color: #444;
}

.nazyczenie-tab-link.active {
    background-color: #3a3a3a;
    color           : #88c8ff;
    border          : 2px solid #ff5800;
    border-radius   : 5px;
}

.nazyczenie-tab-content {
    display: none;
}

.nazyczenie-tab-content.active {
    display: block;
}

/* Style dla okienka SweetAlert2 */
.nazyczenie-swal-popup {
    background-color: #2c2c2c !important;
    color           : #e0e0e0 !important;
    border          : 2px solid #88c8ff;
}

.nazyczenie-swal-popup .swal2-title {
    color: #e0e0e0 !important;
}

/* Style dla informacji o uprawnieniach prezenterów */
.nazyczenie-permissions-info {
    background-color: #2c2c2c;
    border          : 1px solid #444;
    padding         : 10px 15px;
    margin-bottom   : 15px;
    border-radius   : 5px;
}

.nazyczenie-permissions-title {
    font-weight  : bold;
    color        : #88c8ff;
    margin-bottom: 8px;
}

.nazyczenie-permissions-info ul {
    list-style-type: none;
    margin         : 0;
    padding        : 0;
}

.nazyczenie-permissions-info li {
    margin-bottom: 5px;
    font-size    : 14px;
}

.nazyczenie-disabled-icon {
    opacity: 0.3;
}