/* Rustavi Mediathek — admin panel theme. Brand palette mirrors the mobile app. */
:root {
    --mk-violet: #5A28BE;
    --mk-violet-deep: #3A1D74;
    --mk-magenta: #C2418E;
    --mk-paper: #F6F2EA;
    --mk-ink: #221B2E;
    --mk-hairline: #ece7f5;

    /* Bootstrap variable overrides */
    --bs-primary: #5A28BE;
    --bs-primary-rgb: 90, 40, 190;
    --bs-link-color: #5A28BE;
    --bs-link-color-rgb: 90, 40, 190;
    --bs-link-hover-color: #7A3BD6;
    --bs-body-color: #221B2E;
    --bs-border-color: #ece7f5;
}

body {
    background: var(--mk-paper);
    color: var(--mk-ink);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

main h1 {
    font-weight: 800;
    letter-spacing: -0.01em;
    color: var(--mk-ink);
}

/* ---- Sidebar ---- */
.mk-sidebar {
    background: linear-gradient(185deg, var(--mk-violet-deep) 0%, var(--mk-violet) 55%, #7C2E9E 100%);
    box-shadow: 4px 0 28px rgba(40, 20, 80, 0.18);
}

.mk-brand h5 {
    font-weight: 800;
    letter-spacing: 0.2px;
    color: #fff;
}

.mk-brand .small {
    color: rgba(255, 255, 255, 0.62) !important;
}

.mk-sidebar .nav-link {
    color: rgba(255, 255, 255, 0.82);
    border-radius: 11px;
    font-weight: 500;
    padding: 0.55rem 0.85rem;
    transition: background 0.15s ease, color 0.15s ease;
}

.mk-sidebar .nav-link:hover {
    background: rgba(255, 255, 255, 0.13);
    color: #fff;
}

.mk-sidebar .nav-link.active {
    background: #fff;
    color: var(--mk-violet);
    font-weight: 700;
    box-shadow: 0 6px 16px rgba(20, 10, 50, 0.22);
}

.mk-sidebar hr {
    border-color: rgba(255, 255, 255, 0.18);
    opacity: 1;
}

/* ---- Buttons ---- */
.btn-primary {
    background-image: linear-gradient(135deg, var(--mk-violet), var(--mk-magenta));
    border: none;
    box-shadow: 0 6px 16px rgba(90, 40, 190, 0.28);
}

.btn-primary:hover,
.btn-primary:focus {
    filter: brightness(1.07);
    box-shadow: 0 8px 20px rgba(90, 40, 190, 0.34);
}

.btn-outline-primary {
    color: var(--mk-violet);
    border-color: var(--mk-violet);
}

.btn-outline-primary:hover {
    background: var(--mk-violet);
    border-color: var(--mk-violet);
}

/* ---- Cards & tables ---- */
.card {
    border: none;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(40, 20, 80, 0.07);
}

.table {
    --bs-table-bg: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(40, 20, 80, 0.06);
}

.table thead th {
    background: #efeaf7;
    color: var(--mk-violet);
    text-transform: uppercase;
    font-size: 0.72rem;
    letter-spacing: 0.06em;
    border-bottom: none;
}

.table > :not(caption) > * > * {
    padding: 0.85rem 1rem;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-accent-bg: #faf8fd;
}

/* ---- Dashboard stat cards → brand gradients ---- */
.card.text-bg-primary {
    background-image: linear-gradient(135deg, #5A28BE, #8A3BD6) !important;
}

.card.text-bg-success {
    background-image: linear-gradient(135deg, #2FA36B, #46C08E) !important;
}

.card.text-bg-info {
    background-image: linear-gradient(135deg, #1B7FC0, #37A6DE) !important;
    color: #fff !important;
}

.card.text-bg-secondary {
    background-image: linear-gradient(135deg, #B77A16, #E0A72F) !important;
    color: #fff !important;
}

/* ---- Badges ---- */
.badge.text-bg-success {
    background: #e2f2e9 !important;
    color: #227a50 !important;
}

.badge.text-bg-danger {
    background: #f9e3e0 !important;
    color: #c23a2e !important;
}

/* Event category pills (mirror the mobile tints) */
.cat {
    display: inline-block;
    padding: 0.34em 0.72em;
    border-radius: 999px;
    font-weight: 600;
    font-size: 0.74rem;
}

.cat-lecture { background: #EFE9F7; color: #5A28BE; }
.cat-film { background: #E4F1FB; color: #1B7FC0; }
.cat-kids { background: #E2F2E9; color: #2FA36B; }
.cat-club { background: #FBEFD8; color: #B77A16; }
.cat-exhibition { background: #F1EAF5; color: #8B5E9E; }

/* ---- Pagination & links ---- */
.page-item.active .page-link {
    background: var(--mk-violet);
    border-color: var(--mk-violet);
}

.page-link {
    color: var(--mk-violet);
}

.alert-success {
    background: #e2f2e9;
    color: #1f6f49;
    border-color: #c7e6d4;
}

.alert-danger {
    background: #f9e3e0;
    color: #b23227;
    border-color: #f2cdc7;
}
