/**
 * SIFEDORA Custom Theme
 * Primary Color: Sky Blue (#a0d9ef)
 * Sesuai dengan logo SIFEDORA
 */

:root {
    --sifedora-primary: #a0d9ef;
    --sifedora-primary-dark: #7bc4e3;
    --sifedora-primary-light: #b8e3f5;
    --sifedora-primary-lighter: #d0ecf8;
    --sifedora-primary-lightest: #e8f6fc;
    --sifedora-accent: #0ea5e9;
}

/* Primary Button */
.btn-primary {
    background-color: var(--sifedora-primary) !important;
    border-color: var(--sifedora-primary) !important;
    color: #0d3b4d !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--sifedora-primary-dark) !important;
    border-color: var(--sifedora-primary-dark) !important;
    box-shadow: 0 0 0 0.2rem rgba(160, 217, 239, 0.25) !important;
}

.btn-primary:active {
    background-color: var(--sifedora-primary-dark) !important;
    border-color: #5eb5d4 !important;
}

/* Menu Sidebar */
.menu .menu-item.active > .menu-link {
    background-color: 	#62c1e5 !important;
    color: #fff !important;
    font-weight: 600 !important;
}

.menu .menu-item.active > .menu-link .menu-icon {
    color: #fff !important;
}

.menu .menu-link:hover {
    background-color: rgba(160, 217, 239, 0.15) !important;
}

/* Navbar */
.bg-navbar-theme {
    background-color: #fff !important;
    color: #3b3b3b !important;
}

/* Badge Primary */
.badge-primary {
    background-color: var(--sifedora-primary) !important;
    color: #fff !important;
}

/* Text Primary */
.text-primary {
    color: var(--sifedora-primary) !important;
}

a.text-primary:hover,
a.text-primary:focus {
    color: var(--sifedora-primary-dark) !important;
}

/* Border Primary */
.border-primary {
    border-color: var(--sifedora-primary) !important;
}

/* Background Primary */
.bg-primary {
    background-color: var(--sifedora-primary) !important;
    color: #fff !important;
}

/* Links */
a {
    color: var(--sifedora-primary);
}

a:hover {
    color: var(--sifedora-primary-dark);
}

/* Form Controls Focus */
.form-control:focus,
.form-select:focus {
    border-color: var(--sifedora-primary-light) !important;
    box-shadow: 0 0 0 0.2rem rgba(37, 99, 235, 0.15) !important;
}

/* Checkbox & Radio */
.form-check-input:checked {
    background-color: var(--sifedora-primary) !important;
    border-color: var(--sifedora-primary) !important;
}

.form-check-input:focus {
    border-color: var(--sifedora-primary-light) !important;
    box-shadow: 0 0 0 0.2rem rgba(37, 99, 235, 0.15) !important;
}

/* Pagination */
.pagination .page-item.active .page-link {
    background-color: var(--sifedora-primary) !important;
    border-color: var(--sifedora-primary) !important;
}

.pagination .page-link {
    color: var(--sifedora-primary);
}

.pagination .page-link:hover {
    color: var(--sifedora-primary-dark);
    background-color: var(--sifedora-primary-lightest);
}

/* Nav Tabs */
.nav-tabs .nav-link.active {
    color: var(--sifedora-primary) !important;
    border-bottom-color: var(--sifedora-primary) !important;
}

.nav-pills .nav-link.active {
    background-color: var(--sifedora-primary) !important;
}

/* Progress Bar */
.progress-bar {
    background-color: var(--sifedora-primary) !important;
}

/* Alert Primary */
.alert-primary {
    background-color: var(--sifedora-primary-lightest) !important;
    border-color: var(--sifedora-primary-lighter) !important;
    color: var(--sifedora-primary-dark) !important;
}

/* Card Header */
.card-header.bg-primary {
    background-color: var(--sifedora-primary) !important;
}

/* Dropdown Active */
.dropdown-item.active,
.dropdown-item:active {
    background-color: var(--sifedora-primary) !important;
}

/* Table Hover */
.table-hover tbody tr:hover {
    background-color: rgba(37, 99, 235, 0.04);
}

/* List Group Active */
.list-group-item.active {
    background-color: var(--sifedora-primary) !important;
    border-color: var(--sifedora-primary) !important;
}

/* Spinner */
.spinner-border-primary {
    color: var(--sifedora-primary) !important;
}

/* Avatar dengan border primary */
.avatar-primary {
    border: 2px solid var(--sifedora-primary);
}

/* Custom scrollbar untuk sidebar */
.menu::-webkit-scrollbar-thumb {
    background-color: var(--sifedora-primary-light);
}

/* Input Group Text */
.input-group-text {
    color: var(--sifedora-primary);
}

/* Switch/Toggle */
.form-switch .form-check-input:checked {
    background-color: var(--sifedora-primary) !important;
    border-color: var(--sifedora-primary) !important;
}

/* Breadcrumb Active */
.breadcrumb-item.active {
    color: var(--sifedora-primary);
}

/* Close Button Focus */
.btn-close:focus {
    box-shadow: 0 0 0 0.2rem rgba(37, 99, 235, 0.15);
}

/* Timeline dengan primary color */
.timeline {
    list-style: none;
    padding: 0;
    position: relative;
}

.timeline-item {
    position: relative;
    padding-left: 2.5rem;
}

.timeline-item:not(:last-child)::before {
    content: "";
    position: absolute;
    left: 7px;
    top: 32px;
    width: 2px;
    height: calc(100% - 16px);
    background: linear-gradient(180deg, #e3f2fd 0%, #f5f7fa 100%);
}

.timeline-point {
    position: absolute;
    left: 0;
    top: 8px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    z-index: 1;
}

.timeline-event {
    margin-bottom: 0;
}

.timeline-header {
    margin-bottom: 0.5rem;
}

/* Custom untuk status badge */
.badge-status-active {
    background-color: var(--sifedora-primary) !important;
    color: white;
}

/* Hover effect untuk card */
.card-hover:hover {
    border-color: var(--sifedora-primary) !important;
    box-shadow: 0 0.5rem 1rem rgba(37, 99, 235, 0.15) !important;
}

/* Menu header text color */
.menu-header-text {
    color: var(--sifedora-primary-dark) !important;
    font-weight: 600;
}

/* App brand logo hover */
.app-brand-link:hover {
    opacity: 0.9;
}

/* Custom button outline primary */
.btn-outline-primary {
    color: var(--sifedora-primary) !important;
    border-color: var(--sifedora-primary) !important;
}

.btn-outline-primary:hover {
    background-color: var(--sifedora-primary) !important;
    border-color: var(--sifedora-primary) !important;
    color: white !important;
}
