/* Light theme — whitesmoke background, black text everywhere */
html, body {
    background-color: #f5f5f5 !important; /* whitesmoke */
    color: #000000 !important;
}

body {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    min-height: 100vh;
}

/* Force black text on all elements */
h1, h2, h3, h4, h5, h6,
p, span, div, label, small,
li, td, th, strong, em,
.card, .card-body, .card-title, .card-text,
.navbar, .navbar-brand, .nav-link,
.alert, .form-text, .form-label,
footer, footer small {
    color: #000000 !important;
}

/* Links — black by default, red on hover */
a {
    color: #000000 !important;
    text-decoration: none;
}
a:hover {
    color: #dc3545 !important;
}

/* Navbar */
.navbar {
    background-color: #ffffff !important;
    border-bottom: 1px solid #ddd !important;
}
.navbar-brand {
    color: #000000 !important;
    font-weight: 700;
}
.navbar-toggler {
    border-color: #ccc;
}
.nav-link {
    color: #000000 !important;
}
.nav-link:hover {
    color: #dc3545 !important;
}

/* Dropdown menu */
.dropdown-menu {
    background-color: #ffffff;
    border: 1px solid #ddd;
}
.dropdown-item {
    color: #000000 !important;
}
.dropdown-item:hover {
    background-color: #dc3545;
    color: #ffffff !important;
}

/* Form controls — light theme */
.form-control,
.form-select,
textarea {
    color: #000000 !important;
    background-color: #ffffff !important;
    border: 1px solid #ccc !important;
}
.form-control::placeholder,
textarea::placeholder {
    color: #888888 !important;
    opacity: 1;
}
.form-control:focus,
.form-select:focus,
textarea:focus {
    color: #000000 !important;
    background-color: #ffffff !important;
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25) !important;
}

/* Tables */
.table {
    color: #000000 !important;
    --bs-table-bg: transparent;
    --bs-table-color: #000000;
}
.table > :not(caption) > * > * {
    color: #000000 !important;
    background-color: transparent !important;
    border-color: #ddd !important;
}
.table thead th {
    color: #000000 !important;
    border-bottom: 2px solid #999 !important;
}

/* Alerts */
.alert {
    color: #000000 !important;
    border: 1px solid rgba(0,0,0,0.15);
}
.alert-danger {
    background-color: #f8d7da !important;
    color: #000000 !important;
}
.alert-success {
    background-color: #d1e7dd !important;
    color: #000000 !important;
}
.alert-secondary {
    background-color: #e2e3e5 !important;
    color: #000000 !important;
}

/* Cards */
.card {
    background-color: #ffffff !important;
    border: 1px solid #ddd !important;
    color: #000000 !important;
}
.card-body {
    color: #000000 !important;
}

/* Badges — keep danger red, but ensure text is white on colored badges */
.badge.bg-danger {
    color: #ffffff !important;
    background-color: #dc3545 !important;
}
.badge.bg-secondary {
    color: #ffffff !important;
}
.badge.bg-dark {
    color: #ffffff !important;
}

/* Buttons — keep readable */
.btn-danger {
    color: #ffffff !important;
    background-color: #dc3545;
    border-color: #dc3545;
}
.btn-danger:hover {
    background-color: #bb2d3b;
    border-color: #b02a37;
}
.btn-outline-light {
    color: #000000 !important;
    border-color: #999 !important;
}
.btn-outline-light:hover {
    background-color: #000000;
    color: #ffffff !important;
}
.btn-outline-danger {
    color: #dc3545 !important;
    border-color: #dc3545 !important;
}
.btn-outline-danger:hover {
    background-color: #dc3545;
    color: #ffffff !important;
}

/* Footer */
footer {
    background-color: #ffffff;
    border-top: 1px solid #ddd !important;
    color: #000000 !important;
}

/* Media card hover */
.media-card {
    transition: transform .15s ease, box-shadow .15s ease;
    background-color: #ffffff !important;
}
.media-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(220, 53, 69, .25);
}

/* Icon colors inside cards */
.bi-music-note-beamed,
.bi-camera-video,
.bi-collection-play-fill,
.bi-record-circle,
.bi-person-circle,
.bi-eye,
.bi-speedometer2,
.bi-cloud-upload,
.bi-box-arrow-in-right,
.bi-person-plus,
.bi-play-fill,
.bi-trash,
.bi-upload,
.bi-stop-circle,
.bi-record-circle {
    /* keep default — inherits parent color */
}

/* Placeholder background for video thumbnails */
.bg-dark,
.bg-black {
    background-color: #e9e9e9 !important;
    color: #000000 !important;
}

/* Scrollbar */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #bbb; border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #999; }

/* Object fit */
.object-fit-cover { object-fit: cover; }
video, audio { outline: none; }