/* Warm Care Orange Theme - Bootstrap Overrides */

/* Override Bootstrap colors with Warm Care palette */
:root {
    --bs-primary: #FF6B6B;
    --bs-primary-rgb: 255, 107, 107;
    --bs-secondary: #FF8E53;
    --bs-secondary-rgb: 255, 142, 83;
    --bs-success: #FF8E53;
    --bs-success-rgb: 255, 142, 83;
    --bs-info: #FF6B6B;
    --bs-info-rgb: 255, 107, 107;
    --bs-warning: #FFB347;
    --bs-warning-rgb: 255, 179, 71;
}

/* Text Colors */
.text-primary {
    color: #FF6B6B !important;
}

.text-success {
    color: #FF8E53 !important;
}

.text-info {
    color: #FF6B6B !important;
}

.text-warning {
    color: #FFB347 !important;
}

/* Background Colors */
.bg-primary {
    background-color: #FF6B6B !important;
    background: linear-gradient(135deg, #FF6B6B 0%, #FF8E53 100%) !important;
}

.bg-success {
    background-color: #FF8E53 !important;
}

.bg-info {
    background-color: #FFE5E5 !important;
    color: #2d3436 !important;
}

.bg-warning {
    background-color: #FFF3E0 !important;
    color: #856404 !important;
}

/* Badges */
.badge.bg-primary {
    background: linear-gradient(135deg, #FF6B6B 0%, #FF8E53 100%) !important;
}

.badge.bg-success {
    background-color: #FF8E53 !important;
}

.badge.bg-info {
    background-color: #FF6B6B !important;
}

.badge.bg-warning {
    background-color: #FFB347 !important;
    color: #fff !important;
}

/* Buttons */
.btn-primary {
    background: linear-gradient(135deg, #FF6B6B 0%, #FFA07A 100%) !important;
    border: none;
    color: white;
}

.btn-primary:hover {
    background: linear-gradient(135deg, #E85D75 0%, #FF8E53 100%) !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(255, 107, 107, 0.4);
}

.btn-success {
    background-color: #FF8E53 !important;
    border-color: #FF8E53 !important;
}

.btn-success:hover {
    background-color: #FF7A3D !important;
    border-color: #FF7A3D !important;
}

.btn-info {
    background-color: #FF6B6B !important;
    border-color: #FF6B6B !important;
}

.btn-info:hover {
    background-color: #E85D75 !important;
    border-color: #E85D75 !important;
}

.btn-warning {
    background-color: #FFB347 !important;
    border-color: #FFB347 !important;
    color: white !important;
}

.btn-warning:hover {
    background-color: #FFA033 !important;
    border-color: #FFA033 !important;
}

/* Outline Buttons */
.btn-outline-primary {
    color: #FF6B6B;
    border-color: #FF6B6B;
}

.btn-outline-primary:hover {
    background-color: #FF6B6B;
    border-color: #FF6B6B;
    color: white;
}

.btn-outline-success {
    color: #FF8E53;
    border-color: #FF8E53;
}

.btn-outline-success:hover {
    background-color: #FF8E53;
    border-color: #FF8E53;
    color: white;
}

.btn-outline-info {
    color: #FF6B6B;
    border-color: #FF6B6B;
}

.btn-outline-info:hover {
    background-color: #FF6B6B;
    border-color: #FF6B6B;
    color: white;
}

/* Alerts */
.alert-primary {
    background-color: #FFE5E5;
    border-color: #FF6B6B;
    color: #8B3A3A;
}

.alert-success {
    background-color: #FFF0E6;
    border-color: #FF8E53;
    color: #8B4513;
}

.alert-info {
    background-color: #FFE5E5;
    border-color: #FF6B6B;
    color: #8B3A3A;
}

.alert-warning {
    background-color: #FFF3E0;
    border-color: #FFB347;
    color: #856404;
}

/* Navbar */
.navbar-dark.bg-primary {
    background: linear-gradient(135deg, #FF6B6B 0%, #FF8E53 100%) !important;
}

/* Links */
a {
    color: #FF6B6B;
}

a:hover {
    color: #E85D75;
}

/* Forms */
.form-control:focus {
    border-color: #FF6B6B;
    box-shadow: 0 0 0 0.25rem rgba(255, 107, 107, 0.25);
}

.form-select:focus {
    border-color: #FF6B6B;
    box-shadow: 0 0 0 0.25rem rgba(255, 107, 107, 0.25);
}

.form-check-input:checked {
    background-color: #FF6B6B;
    border-color: #FF6B6B;
}

/* Form Controls - Ensure proper text colors */
.form-control,
.form-select,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="date"],
input[type="number"],
textarea {
    color: #333 !important;
    background-color: #fff !important;
}

.form-control::placeholder {
    color: #6c757d !important;
}

/* Labels should always be dark */
.form-label,
label {
    color: #333 !important;
}

/* Card body text should be dark */
.card-body,
.card-body *:not(.btn):not(.badge):not(.alert):not([class*="bg-"]) {
    color: #333;
}

/* Card header text is white (for gradient backgrounds) */
.card-header,
.card-header h5,
.card-header h4,
.card-header h3,
.card-header .card-title {
    color: white !important;
}

/* Content card headers with light background need dark text */
.content-card .card-header,
.content-card .card-header h5,
.content-card .card-header h4 {
    color: #333 !important;
}

/* Checkboxes and radio labels */
.form-check-label {
    color: #333 !important;
}

/* Table text */
.table td,
.table th {
    color: #333 !important;
}

/* Dropdown menu items */
.dropdown-menu .dropdown-item {
    color: #333 !important;
}

/* Quick action card text */
.quick-action-card h5,
.quick-action-card p {
    color: #333 !important;
}

.quick-action-card p.text-muted {
    color: #6c757d !important;
}

/* Stat card text */
.stat-card h6,
.stat-card .label {
    color: #888 !important;
}

.stat-card h2,
.stat-card .value {
    color: #333 !important;
}

/* Progress Bars */
.progress-bar {
    background: linear-gradient(135deg, #FF6B6B 0%, #FF8E53 100%);
}

.progress-bar.bg-success {
    background-color: #FF8E53 !important;
}

/* Border Colors */
.border-primary {
    border-color: #FF6B6B !important;
}

.border-success {
    border-color: #FF8E53 !important;
}

.border-info {
    border-color: #FF6B6B !important;
}

.border-warning {
    border-color: #FFB347 !important;
}

/* Tables */
.table-primary {
    background-color: #FFE5E5;
}

.table-hover tbody tr:hover {
    background-color: #FFF5F5;
}

/* Cards */
.card-header.bg-primary {
    background: linear-gradient(135deg, #FF6B6B 0%, #FF8E53 100%) !important;
    color: white;
}

/* List Group */
.list-group-item-primary {
    background-color: #FFE5E5;
    color: #8B3A3A;
}

.list-group-item-success {
    background-color: #FFF0E6;
    color: #8B4513;
}

/* Pagination */
.pagination .page-link {
    color: #FF6B6B;
}

.pagination .page-link:hover {
    color: #E85D75;
    background-color: #FFE5E5;
    border-color: #FF6B6B;
}

.pagination .page-item.active .page-link {
    background-color: #FF6B6B;
    border-color: #FF6B6B;
}

/* Dropdown */
.dropdown-item:active,
.dropdown-item.active {
    background-color: #FF6B6B;
}

/* Toast/Notifications */
.toast-header {
    background-color: #FFE5E5;
    color: #8B3A3A;
}

/* Spinners */
.spinner-border.text-primary {
    color: #FF6B6B !important;
}

/* Icons with contextual colors */
.fa-primary,
i.text-primary {
    color: #FF6B6B !important;
}

.fa-success,
i.text-success {
    color: #FF8E53 !important;
}

.fa-info,
i.text-info {
    color: #FF6B6B !important;
}

.fa-warning,
i.text-warning {
    color: #FFB347 !important;
}

/* Fix ASP.NET WebForms CheckBox rendering with Bootstrap 5 */
/* ASP.NET wraps checkbox in a span, this fixes the styling */
span > input[type="checkbox"],
span > input[type="radio"] {
    width: 18px;
    height: 18px;
    accent-color: #FF6B6B;
    cursor: pointer;
    margin-right: 8px;
    vertical-align: middle;
}

/* Form check containers with ASP.NET controls */
.form-check span,
.form-check-inline span {
    display: contents;
}

/* Ensure checkbox labels are visible */
.form-check-label,
.form-check label {
    color: #333 !important;
    cursor: pointer;
}

/* Custom checkbox styling for notification options */
.notification-option,
.checkbox-option {
    display: flex;
    align-items: center;
    padding: 12px 15px;
    background: #f8f9fa;
    border-radius: 10px;
    margin-bottom: 10px;
    transition: all 0.2s ease;
}

.notification-option:hover,
.checkbox-option:hover {
    background: #f0f0f0;
}

.notification-option input[type="checkbox"],
.notification-option input[type="radio"],
.checkbox-option input[type="checkbox"],
.checkbox-option input[type="radio"] {
    width: 20px;
    height: 20px;
    margin-right: 12px;
    accent-color: #FF6B6B;
    cursor: pointer;
}

.notification-option span,
.checkbox-option span {
    display: contents;
}

.notification-option label,
.checkbox-option label {
    margin: 0;
    cursor: pointer;
    color: #333 !important;
    font-weight: 500;
}
