:root {
    --admin-bg: #181818;
    --admin-surface: #282828;
    --admin-border: #404040;
    --admin-text-primary: #FFFFFF;
    --admin-text-secondary: #B3B3B3;
    --admin-primary: #1DB954;
    --admin-danger: #E53E3E;
}

body {
    background-color: var(--admin-bg);
    color: var(--admin-text-primary);
    font-family: sans-serif;
}

#login-view { display: flex; justify-content: center; align-items: center; min-height: 100vh; }
.login-box { background-color: var(--admin-surface); padding: 2.5rem; border-radius: 12px; width: 100%; max-width: 400px; text-align: center; border: 1px solid var(--admin-border); }

#admin-dashboard { padding: 2rem; max-width: 1200px; margin: 0 auto; }
.dashboard-header { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--admin-border); padding-bottom: 1.5rem; margin-bottom: 1.5rem; }

.form-control, .form-select { background-color: var(--admin-bg); color: var(--admin-text-primary); border-color: var(--admin-border); }
.form-control:focus, .form-select:focus { background-color: var(--admin-bg); color: var(--admin-text-primary); border-color: var(--admin-primary); box-shadow: 0 0 0 0.25rem rgba(29, 185, 84, 0.25); }
.modal-content { background-color: var(--admin-surface); border-color: var(--admin-border); }
.btn-close { filter: invert(1) grayscale(100) brightness(200%); }
.nav-tabs .nav-link { color: var(--admin-text-secondary); }
.nav-tabs .nav-link.active { color: var(--admin-primary); background-color: var(--admin-surface); border-color: var(--admin-border) var(--admin-border) var(--admin-surface); }

.list-item-group { background-color: var(--admin-surface); border: 1px solid var(--admin-border); border-radius: 8px; margin-bottom: 1.5rem; }
.list-item-header { padding: 1rem 1.5rem; border-bottom: 1px solid var(--admin-border); font-size: 1.25rem; font-weight: bold; }
.list-item { display: flex; justify-content: space-between; align-items: center; padding: 1rem 1.5rem; gap: 1rem;}
.list-item:last-child { border-bottom: none; }
.list-item.booked { background-color: rgba(229, 62, 62, 0.1); }
.item-info { display: flex; flex-direction: column; flex-grow: 1; }
.item-info .title { font-weight: bold; }
.item-info .details { font-size: 0.9em; color: var(--admin-text-secondary); }
.item-info .badge { font-size: 0.9em; color: #000; }

#gallery-grid .gallery-item-admin { position: relative; }
#gallery-grid img, #gallery-grid video { width: 100%; aspect-ratio: 1/1; object-fit: cover; border-radius: 8px; }
.delete-media-btn { position: absolute; top: 10px; right: 10px; }