:root {
    --development-primary: #1565c0;
    --development-secondary: #42a5f5;
    --development-dark: #0d47a1;
    --development-light: #eff6ff;
    --development-lighter: #dbeafe;
    --development-rgb: 21, 101, 192;
}

.modern-header,
.btn-primary,
.input-group-orange,
.stat-card-orange,
.card-icon-orange,
.task-avatar,
.comment-avatar,
.btn-task-primary,
.fc .fc-button,
.fc .fc-event,
.switch input:checked + .slider,
.weekday-chip:has(input:checked) {
    background: linear-gradient(135deg, var(--development-primary), var(--development-secondary));
}

.dashboard-card::before,
.fc .fc-daygrid-day.fc-day-today::before {
    background: linear-gradient(90deg, var(--development-primary), var(--development-secondary));
}

.btn-task-primary:hover,
.fc .fc-button:hover,
.fc .fc-event:hover {
    background: linear-gradient(135deg, var(--development-secondary), var(--development-primary));
}

.fc .fc-button-active {
    background: linear-gradient(135deg, var(--development-dark), var(--development-primary));
}

.bg-orange,
.file-input-icon,
.dashboard-card:hover .card-arrow,
.form-check-input:checked,
.input-group .btn,
.tasks-toggle-label input:checked ~ .tasks-toggle-track,
.page-item-modern.active .page-link-modern {
    background-color: var(--development-primary);
}

.btn-outline-orange {
    color: var(--development-primary) !important;
    border-color: var(--development-primary) !important;
}

.btn-outline-orange:hover,
.btn-outline-orange:focus,
.btn-outline-orange:active,
input[type="radio"]:checked + .btn-outline-orange {
    color: #fff !important;
    background-color: var(--development-primary) !important;
    border-color: var(--development-primary) !important;
}

.footer-links a:hover,
.header-title svg,
.color-orange,
.observation-date,
.tuition-label-orange,
.roster-cost-value-highlight,
.question-count-value,
.comment-body a,
.task-detail-notes a {
    color: var(--development-primary);
}

.modern-input:focus,
.modern-textarea:focus,
.file-input:focus-within,
.adjustments-control:focus,
.tasks-search-input:focus,
.task-input:focus,
.task-select:focus,
.task-textarea:focus,
.form-select:focus,
.form-control:focus,
.btn-group-modern .period-select:hover,
.btn-group-modern .period-select:focus,
.btn-group-modern .btn-modern.btn-primary + .period-select {
    border-color: var(--development-primary);
}

.dashboard-card:hover,
.task-card:hover,
.deleted-task-item:hover,
.tuition-box-orange,
.observation-item,
.weekday-chip:has(input:checked),
.page-item-modern.active .page-link-modern {
    border-color: var(--development-primary);
}

.modern-input:focus,
.modern-textarea:focus,
.file-input:focus-within,
.adjustments-control:focus {
    box-shadow: 0 0 0 3px rgba(var(--development-rgb), 0.15);
}

.btn-primary:hover,
.btn-outline-orange:hover {
    box-shadow: 0 4px 12px rgba(var(--development-rgb), 0.3);
}

.task-card:hover {
    box-shadow: 0 4px 12px rgba(var(--development-rgb), 0.12);
}

.btn-group-modern .period-select:focus {
    box-shadow: 0 0 0 3px rgba(var(--development-rgb), 0.1);
}

.fc .fc-button,
.fc .fc-event {
    box-shadow: 0 2px 4px rgba(var(--development-rgb), 0.2);
}

.fc .fc-button:hover,
.fc .fc-event:hover {
    box-shadow: 0 4px 8px rgba(var(--development-rgb), 0.3);
}

.fc .fc-button:focus {
    box-shadow: 0 0 0 3px rgba(var(--development-rgb), 0.4);
}

.fc .fc-daygrid-day.fc-day-today,
.tuition-box-orange {
    background: linear-gradient(135deg, var(--development-light), var(--development-lighter));
}

.fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number {
    background: linear-gradient(135deg, var(--development-primary), var(--development-secondary));
    box-shadow: 0 2px 4px rgba(var(--development-rgb), 0.3);
}

.weekday-chip:hover {
    border-color: var(--development-secondary);
}

.repeat-preview,
.btn-group-modern .period-select:hover,
.btn-group-modern .btn-modern.btn-primary + .period-select {
    background: var(--development-light);
}

.repeat-preview {
    border-color: var(--development-lighter);
}

.repeat-preview small {
    color: var(--development-dark);
}

.login-left,
.login-body .btn-primary {
    background: linear-gradient(135deg, var(--development-primary), var(--development-secondary));
}

.login-body {
    background: linear-gradient(135deg, #eef6ff, #dbeafe);
}

.login-right {
    background: #f8fbff;
}

.login-title,
.form-label-modern {
    color: #1e3a5f;
}

.login-subtitle,
.login-info p {
    color: #526b86;
}

.input-icon,
.link-modern {
    color: #52769d;
}

.form-control-modern {
    color: #1e3a5f;
    background: #f7fbff;
    border-color: #9ec5e8;
}

.form-control-modern::placeholder {
    color: #7895b2;
}

.form-control-modern:focus {
    border-color: var(--development-primary);
    box-shadow: 0 0 0 4px rgba(var(--development-rgb), 0.1);
}

.login-body .btn-primary {
    box-shadow: 0 4px 12px rgba(var(--development-rgb), 0.3);
}

.login-body .btn-primary:hover {
    box-shadow: 0 6px 20px rgba(var(--development-rgb), 0.4);
}

#loader-container,
.login-loader {
    background: rgba(219, 234, 254, 0.85);
}

.link-modern:hover {
    color: var(--development-primary);
}

.mobile-block-icon {
    background: linear-gradient(135deg, var(--development-primary), var(--development-secondary));
}

.mobile-block-brand {
    color: var(--development-primary);
}

.card-primary,
.card-outline {
    border-top-color: var(--development-primary) !important;
}

[class*=sidebar-light-] .nav-treeview > .nav-item > .nav-link.active,
[class*=sidebar-light-] .nav-treeview > .nav-item > .nav-link.active:hover {
    background-color: var(--development-primary) !important;
}

#notfound .notfound-bg::after {
    background-color: rgba(var(--development-rgb), 0.65);
}
