/* CDC Midnapore light administration theme */
:root {
    --admin-primary: #c8212c;
    --admin-primary-dark: #9f1720;
    --admin-primary-soft: #fff0f1;
    --admin-accent: #2457a7;
    --admin-ink: #27324a;
    --admin-muted: #707584;
    --admin-bg: #f7f7fb;
    --admin-surface: #ffffff;
    --admin-border: #e7dfc7;
    --cdc-gold: #e5b72f;
    --cdc-gold-soft: #fff8df;
    --cdc-blue-soft: #eef4ff;
}

body {
    color: var(--admin-ink);
    background: var(--admin-bg);
}

.btn-primary {
    --bs-btn-bg: var(--admin-primary);
    --bs-btn-border-color: var(--admin-primary);
    --bs-btn-hover-bg: var(--admin-primary-dark);
    --bs-btn-hover-border-color: var(--admin-primary-dark);
    --bs-btn-active-bg: var(--admin-primary-dark);
    --bs-btn-active-border-color: var(--admin-primary-dark);
    box-shadow: 0 8px 18px rgba(200, 33, 44, .18);
}

.btn-outline-primary {
    --bs-btn-color: var(--admin-primary);
    --bs-btn-border-color: #df9ca2;
    --bs-btn-hover-bg: var(--admin-primary);
    --bs-btn-hover-border-color: var(--admin-primary);
}

.admin-sidebar {
    color: #394258;
    background:
        radial-gradient(circle at 20% 4%, rgba(229, 183, 47, .12), transparent 22%),
        linear-gradient(180deg, #fffdf7 0%, #fff 58%, #f9f6ed 100%);
    border-right: 1px solid var(--admin-border);
    box-shadow: 10px 0 34px rgba(46, 48, 70, .08);
}

.admin-brand {
    border-bottom-color: var(--admin-border);
    background: rgba(255, 255, 255, .75);
}

.admin-brand-link,
.admin-brand-link:hover {
    color: var(--admin-ink);
}

.admin-brand-logo {
    width: 52px;
    height: 52px;
    flex-basis: 52px;
    padding: 0;
    background: #fff;
    border: 2px solid #e7c142;
    border-radius: 50%;
    box-shadow: 0 7px 16px rgba(171, 126, 14, .15);
}

.admin-brand-logo img {
    width: 100%;
    height: 100%;
    padding: 0;
    object-fit: cover;
    border-radius: 50%;
}

.admin-brand-symbol {
    color: #fff;
    background: var(--admin-primary);
}

.admin-brand-copy strong {
    color: #20345c;
}

.admin-brand-copy small {
    color: var(--admin-primary);
    font-weight: 800;
}

.sidebar-close {
    color: var(--admin-primary);
    background: var(--admin-primary-soft);
}

.sidebar-scroll {
    scrollbar-color: #d8c984 transparent;
}

.nav-section-label {
    color: #6a5681;
}

.admin-nav-link {
    color: #444c60;
}

.admin-nav-link:hover {
    color: var(--admin-primary);
    background: var(--admin-primary-soft);
}

.admin-nav-link.active {
    color: var(--admin-primary-dark);
    background: linear-gradient(90deg, var(--admin-primary-soft), #fff8f0);
    box-shadow: inset 3px 0 0 var(--admin-primary);
}

.admin-nav-icon {
    color: var(--admin-accent);
    background: var(--cdc-blue-soft);
}

.admin-nav-link:hover .admin-nav-icon,
.admin-nav-link.active .admin-nav-icon {
    color: #fff;
    background: var(--admin-primary);
}

.sidebar-footer {
    border-top-color: var(--admin-border);
    background: rgba(255, 253, 247, .8);
}

.logout-link,
.logout-link .admin-nav-icon {
    color: #a3313a;
}

.logout-link .admin-nav-icon {
    background: #fff0f1;
}

.admin-topbar {
    background: rgba(255, 255, 255, .97);
    border-bottom-color: var(--admin-border);
    box-shadow: 0 5px 22px rgba(43, 45, 68, .06);
}

.admin-topbar::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--admin-primary), var(--cdc-gold), var(--admin-accent));
    opacity: .72;
}

.topbar-icon-button {
    color: var(--admin-accent);
    border-color: #dbe2ed;
    background: #fff;
}

.topbar-icon-button:hover {
    color: #fff;
    background: var(--admin-primary);
    border-color: var(--admin-primary);
}

.admin-user-chip > span {
    color: var(--admin-primary);
    background: var(--admin-primary-soft);
}

.admin-content {
    background:
        radial-gradient(circle at 90% 3%, rgba(229, 183, 47, .08), transparent 23%),
        var(--admin-bg);
}

.panel,
.admin-card,
.stat-card,
.quick-action-card {
    border-color: var(--admin-border);
    box-shadow: 0 12px 34px rgba(42, 44, 66, .07);
}

.panel-title-icon {
    color: var(--admin-primary);
    background: var(--admin-primary-soft);
}

.form-label,
label {
    color: #3d4559;
}

.form-control,
.form-select {
    border-color: #ddd8cb;
}

.form-control:focus,
.form-select:focus {
    border-color: #da7f86;
    box-shadow: 0 0 0 .22rem rgba(200, 33, 44, .09);
}

.form-switch-modern,
.image-preview-card {
    background: #fffdf8;
}

.admin-table thead th {
    color: #53617c;
    background: #fffaf0;
}

.admin-table tbody td {
    color: #485166;
    border-color: #eee9dd;
}

.admin-table tbody tr:hover {
    background: #fffdf8;
}

.table-thumbnail,
.doctor-avatar {
    border-color: #e5dcc3;
}

.btn-icon {
    color: var(--admin-accent);
    border-color: #dce2ed;
    background: #fff;
}

.btn-icon:hover,
.btn-icon:focus-visible {
    color: #fff;
    background: var(--admin-primary);
    border-color: var(--admin-primary);
    box-shadow: 0 7px 15px rgba(200, 33, 44, .18);
}

.btn-icon-info {
    color: var(--admin-accent);
}

.stat-card::after {
    border-color: var(--cdc-gold-soft);
}

.stat-icon {
    color: var(--admin-primary);
    background: var(--admin-primary-soft);
}

.stats-grid .stat-card:nth-child(2) .stat-icon,
.quick-action-grid .quick-action-card:nth-child(even) > span {
    color: var(--admin-accent);
    background: var(--cdc-blue-soft);
}

.stats-grid .stat-card:nth-child(3) .stat-icon,
.quick-action-grid .quick-action-card:nth-child(3n) > span {
    color: #946e00;
    background: var(--cdc-gold-soft);
}

.quick-action-card:hover {
    border-color: #dfc65f;
}

.admin-note {
    color: #50586c;
    background: var(--cdc-gold-soft);
    border-color: #ebd77c;
}

.admin-note i {
    color: var(--admin-accent);
}

.sidebar-overlay {
    background: rgba(28, 34, 53, .48);
}

/* Login uses the same light, sober CDC palette. */
.login-bg {
    background:
        radial-gradient(circle at 12% 18%, rgba(229, 183, 47, .2), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(36, 87, 167, .12), transparent 30%),
        linear-gradient(135deg, #fff8e5 0%, #f7f8ff 52%, #fff0f1 100%);
}

.login-shell {
    border-color: #e9dfbd;
    box-shadow: 0 28px 80px rgba(42, 44, 66, .18);
}

.login-brand-panel {
    color: var(--admin-ink);
    background:
        radial-gradient(circle at 85% 12%, rgba(200, 33, 44, .1), transparent 25%),
        linear-gradient(145deg, #fff6cd, #fffdf6 56%, #edf4ff);
    border-right: 1px solid var(--admin-border);
}

.login-brand-panel::before,
.login-brand-panel::after {
    border-color: rgba(200, 33, 44, .14);
}

.login-brand-mark > span {
    width: 68px;
    height: 68px;
    overflow: hidden;
    padding: 0;
    background: #fff;
    border: 2px solid #e6be38;
    border-radius: 50%;
    box-shadow: 0 8px 20px rgba(166, 121, 12, .14);
}

.login-brand-mark > span img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.login-brand-mark strong {
    color: var(--admin-accent);
}

.login-brand-mark small {
    color: var(--admin-primary);
    font-weight: 800;
}

.login-brand-copy h1 {
    color: #253451;
}

.login-brand-copy p {
    color: #636b7e;
}

.login-feature-list i {
    color: #fff;
    background: var(--admin-primary);
}

.login-feature-list div:nth-child(2) i {
    background: var(--admin-accent);
}

.login-feature-list div:nth-child(3) i {
    color: #5f4600;
    background: var(--cdc-gold);
}

.login-brand-footer {
    color: #7b7180;
}

.login-heading-icon {
    color: var(--admin-primary);
    background: var(--admin-primary-soft);
}

.login-input > i {
    color: var(--admin-accent);
}

.login-default-note {
    color: #5a6070;
    background: #fffaf0;
    border-color: #eadfbd;
}

@media (max-width: 991.98px) {
    .login-brand-panel {
        border-right: 0;
        border-bottom: 1px solid var(--admin-border);
    }
}
