/* Custom Color Scheme for Tasker */

:root {
    /** Base colors */
    --clr-dark-a0: #000000;
    --clr-light-a0: #ffffff;

    /** Theme primary colors */
    --clr-primary-a0: #e3d91b;
    --clr-primary-a10: #e8dd44;
    --clr-primary-a20: #ece160;
    --clr-primary-a30: #f1e578;
    --clr-primary-a40: #f4e990;
    --clr-primary-a50: #f7eea6;

    /** Theme surface colors */
    --clr-surface-a0: #121212;
    --clr-surface-a10: #282828;
    --clr-surface-a20: #3f3f3f;
    --clr-surface-a30: #575757;
    --clr-surface-a40: #717171;
    --clr-surface-a50: #8b8b8b;

    /** Theme tonal surface colors */
    --clr-surface-tonal-a0: #242317;
    --clr-surface-tonal-a10: #39382c;
    --clr-surface-tonal-a20: #4e4d43;
    --clr-surface-tonal-a30: #65645b;
    --clr-surface-tonal-a40: #7d7c74;
    --clr-surface-tonal-a50: #96958e;
}

/* Override Bootstrap primary colors */
.btn-primary {
    background-color: var(--clr-primary-a0);
    border-color: var(--clr-primary-a0);
    color: var(--clr-dark-a0);
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--clr-primary-a10);
    border-color: var(--clr-primary-a10);
    color: var(--clr-dark-a0);
}

.btn-primary:active {
    background-color: var(--clr-primary-a20);
    border-color: var(--clr-primary-a20);
    color: var(--clr-dark-a0);
}

.btn-outline-primary {
    border-color: var(--clr-primary-a0);
    color: var(--clr-primary-a0);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    background-color: var(--clr-primary-a0);
    border-color: var(--clr-primary-a0);
    color: var(--clr-dark-a0);
}

/* Primary background and text colors */
.bg-primary {
    background-color: var(--clr-primary-a0) !important;
    color: var(--clr-dark-a0) !important;
}

.text-primary {
    color: var(--clr-primary-a0) !important;
}

/* Card headers with primary color */
.card-header.bg-primary {
    background-color: var(--clr-primary-a0) !important;
    color: var(--clr-dark-a0) !important;
}

.card-header.bg-primary h5,
.card-header.bg-primary .text-white {
    color: var(--clr-dark-a0) !important;
}

/* Alert primary */
.alert-primary {
    background-color: var(--clr-surface-tonal-a10);
    border-color: var(--clr-primary-a20);
    color: var(--clr-primary-a0);
}

/* Badge primary */
.badge.bg-primary {
    background-color: var(--clr-primary-a0) !important;
    color: var(--clr-dark-a0) !important;
}

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

a:hover {
    color: var(--clr-primary-a20);
}

/* Surface colors for cards and containers */
.card {
    background-color: var(--clr-surface-a10);
    border-color: var(--clr-surface-a20);
}

.card-body.bg-light {
    background-color: var(--clr-surface-tonal-a10) !important;
}

/* Form elements with custom colors */
.form-control:focus {
    border-color: var(--clr-primary-a0);
    box-shadow: 0 0 0 0.2rem rgba(227, 217, 27, 0.25);
}

.form-check-input:checked {
    background-color: var(--clr-primary-a0);
    border-color: var(--clr-primary-a0);
}

/* Navbar customization */
.navbar {
    background-color: var(--clr-surface-a0) !important;
}

.navbar-brand {
    color: var(--clr-primary-a0) !important;
}

/* Status badges with new color scheme */
.status-badge.bg-success {
    background-color: #68E41B !important;
}

.status-badge.bg-warning {
    background-color: var(--clr-primary-a0) !important;
    color: var(--clr-dark-a0) !important;
}

.status-badge.bg-info {
    background-color: #E4541B !important;
}

/* Dropdown menus */
.dropdown-menu {
    background-color: var(--clr-surface-a10);
    border-color: var(--clr-surface-a20);
}

.dropdown-item {
    color: var(--clr-light-a0);
}

.dropdown-item:hover,
.dropdown-item:focus {
    background-color: var(--clr-surface-a20);
    color: var(--clr-primary-a10);
}

/* Modal customization */
.modal-content {
    background-color: var(--clr-surface-a10);
    border-color: var(--clr-surface-a20);
}

.modal-header {
    border-bottom-color: var(--clr-surface-a20);
}

.modal-footer {
    border-top-color: var(--clr-surface-a20);
}

/* Progress bars */
.progress {
    background-color: var(--clr-surface-a20);
}

.progress-bar {
    background-color: var(--clr-primary-a0);
}

/* Table customization for dark theme */
.table-dark {
    background-color: var(--clr-surface-a10);
}

.table-dark th,
.table-dark td {
    border-color: var(--clr-surface-a20);
}

/* Custom utility classes */
.text-surface-light {
    color: var(--clr-surface-a50) !important;
}

.bg-surface {
    background-color: var(--clr-surface-a10) !important;
}

.bg-surface-tonal {
    background-color: var(--clr-surface-tonal-a10) !important;
}

/* Hover effects for interactive elements */
.card-hover:hover {
    background-color: var(--clr-surface-tonal-a10);
    transition: background-color 0.2s ease-in-out;
}

/* Remove any remaining purple/violet colors */
.text-purple,
.bg-purple,
.border-purple {
    color: var(--clr-primary-a0) !important;
    background-color: var(--clr-primary-a0) !important;
    border-color: var(--clr-primary-a0) !important;
}

/* Ensure text readability on light backgrounds */
.text-dark {
    color: var(--clr-dark-a0) !important;
}

.bg-light {
    background-color: var(--clr-surface-tonal-a10) !important;
    color: var(--clr-light-a0) !important;
}

/* Special case for completion requirements header */
.card-header.bg-primary .text-white,
.card-header.bg-primary h5 {
    color: var(--clr-dark-a0) !important;
}

/* Bootstrap override for all green/blue elements */
.btn-success,
.bg-success,
.border-success,
.alert-success {
    background-color: #68E41B !important;
    border-color: #68E41B !important;
    color: var(--clr-dark-a0) !important;
}

.btn-info,
.bg-info,
.border-info,
.alert-info {
    background-color: #E4541B !important;
    border-color: #E4541B !important;
    color: var(--clr-light-a0) !important;
}

.btn-outline-success {
    border-color: #68E41B !important;
    color: #68E41B !important;
}

.btn-outline-success:hover {
    background-color: #68E41B !important;
    border-color: #68E41B !important;
    color: var(--clr-dark-a0) !important;
}

.btn-outline-info {
    border-color: #E4541B !important;
    color: #E4541B !important;
}

.btn-outline-info:hover {
    background-color: #E4541B !important;
    border-color: #E4541B !important;
    color: var(--clr-light-a0) !important;
}

/* Badge overrides */
.badge.bg-success {
    background-color: #68E41B !important;
    color: var(--clr-dark-a0) !important;
}

.badge.bg-info {
    background-color: #E4541B !important;
    color: var(--clr-light-a0) !important;
}

/* Text color overrides for success/info */
.text-success {
    color: #68E41B !important;
}

.text-info {
    color: #E4541B !important;
}