/* Bake Notes - Mobile App Color Scheme */
/* Matching the mobile app's brand identity */

:root {
    /* Brand Colors - Primary green theme */
    --primary-color: #4b986c;
    --primary-hover: #3f7f5a;
    --primary-active: #336a4a;
    --secondary-color: #928163;
    --tertiary-color: #6d604a;
    --alternate-color: #c8d7e4;
    
    /* Text Colors */
    --primary-text: #0b191e;
    --secondary-text: #384e58;
    --light-text: #6c757d;
    
    /* Background Colors */
    --primary-bg: #f1f4f8;
    --secondary-bg: #ffffff;
    --card-bg: #ffffff;
    
    /* Semantic Colors */
    --success-color: #336a4a;
    --danger-color: #c4454d;
    --warning-color: #f3c344;
    --info-color: #384e58;
    
    /* Accent Colors */
    --accent-1: #4d4b986c;
    --accent-2: #4d928163;
    --accent-3: #4c6d604a;
    --accent-4: #cdffff;
    
    /* UI Elements */
    --border-color: #dee2e6;
    --border-radius: 0.375rem;
    --transition-speed: 0.15s;
    --shadow-sm: 0 .125rem .25rem rgba(11, 25, 30, .075);
    --shadow: 0 .5rem 1rem rgba(11, 25, 30, .15);
    --shadow-lg: 0 1rem 3rem rgba(11, 25, 30, .175);
}

/* Update body colors */
body {
    color: var(--primary-text);
    background-color: var(--primary-bg);
}

/* Bootstrap Primary Color Overrides */
.btn-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: #ffffff;
}

.btn-primary:hover {
    background-color: var(--primary-hover);
    border-color: var(--primary-hover);
}

.btn-primary:active,
.btn-primary.active {
    background-color: var(--primary-active);
    border-color: var(--primary-active);
}

.btn-primary:focus {
    box-shadow: 0 0 0 0.25rem rgba(75, 152, 108, 0.5);
}

/* Success Button */
.btn-success {
    background-color: var(--success-color);
    border-color: var(--success-color);
}

.btn-success:hover {
    background-color: #2a5539;
    border-color: #2a5539;
}

/* Danger Button */
.btn-danger {
    background-color: var(--danger-color);
    border-color: var(--danger-color);
}

.btn-danger:hover {
    background-color: #a33841;
    border-color: #a33841;
}

/* Warning Button */
.btn-warning {
    background-color: var(--warning-color);
    border-color: var(--warning-color);
    color: var(--primary-text);
}

.btn-warning:hover {
    background-color: #d4a837;
    border-color: #d4a837;
}

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

.badge.bg-success {
    background-color: var(--success-color) !important;
}

.badge.bg-danger {
    background-color: var(--danger-color) !important;
}

.badge.bg-warning {
    background-color: var(--warning-color) !important;
    color: var(--primary-text) !important;
}

.badge.bg-info {
    background-color: var(--info-color) !important;
}

/* Badge Opacity Variants */
.badge.bg-danger.bg-opacity-10 {
    background-color: rgba(196, 69, 77, 0.1) !important;
}

.badge.bg-success.bg-opacity-10 {
    background-color: rgba(51, 106, 74, 0.1) !important;
}

.badge.bg-warning.bg-opacity-10 {
    background-color: rgba(243, 195, 68, 0.1) !important;
}

.badge.bg-primary.bg-opacity-10 {
    background-color: rgba(75, 152, 108, 0.1) !important;
}

.badge.bg-info.bg-opacity-10 {
    background-color: rgba(56, 78, 88, 0.1) !important;
}

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

.text-success {
    color: var(--success-color) !important;
}

.text-danger {
    color: var(--danger-color) !important;
}

.text-warning {
    color: var(--warning-color) !important;
}

.text-muted {
    color: var(--secondary-text) !important;
}

/* Link Colors */
a {
    color: var(--primary-color);
}

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

/* Card Styling */
.card {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    box-shadow: var(--shadow-sm);
}

/* Alert Colors */
.alert-success {
    background-color: rgba(51, 106, 74, 0.1);
    border-color: var(--success-color);
    color: var(--success-color);
}

.alert-danger {
    background-color: rgba(196, 69, 77, 0.1);
    border-color: var(--danger-color);
    color: var(--danger-color);
}

.alert-warning {
    background-color: rgba(243, 195, 68, 0.1);
    border-color: var(--warning-color);
    color: var(--primary-text);
}

.alert-info {
    background-color: rgba(56, 78, 88, 0.1);
    border-color: var(--info-color);
    color: var(--info-color);
}

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

.progress-bar.bg-success {
    background-color: var(--success-color) !important;
}

/* Form Controls */
.form-control:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.25rem rgba(75, 152, 108, 0.25);
}

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

.form-check-input:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.25rem rgba(75, 152, 108, 0.25);
}

/* Navigation */
.nav-link {
    color: var(--primary-text);
}

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

.nav-link.active {
    color: var(--primary-color);
}

.nav-pills .nav-link.active {
    background-color: var(--primary-color);
    color: #ffffff;
}

/* Tabs */
.nav-tabs .nav-link {
    color: var(--secondary-text);
}

.nav-tabs .nav-link:hover {
    color: var(--primary-color);
}

.nav-tabs .nav-link.active {
    color: var(--primary-color);
    border-color: var(--border-color) var(--border-color) #fff;
}

/* Pagination */
.page-link {
    color: var(--primary-color);
}

.page-link:hover {
    color: var(--primary-hover);
    background-color: rgba(75, 152, 108, 0.1);
    border-color: var(--primary-color);
}

.page-item.active .page-link {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

/* Dropdown */
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: rgba(75, 152, 108, 0.1);
    color: var(--primary-color);
}

.dropdown-item.active {
    background-color: var(--primary-color);
    color: #ffffff;
}

/* Breadcrumb */
.breadcrumb-item.active {
    color: var(--secondary-text);
}

.breadcrumb-item a {
    color: var(--primary-color);
}

/* List Group */
.list-group-item-action:hover {
    background-color: rgba(75, 152, 108, 0.05);
    color: var(--primary-color);
}

.list-group-item-action.active {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: #ffffff;
}

.list-group-item-success {
    background-color: rgba(51, 106, 74, 0.1);
    color: var(--success-color);
}

.list-group-item-danger {
    background-color: rgba(196, 69, 77, 0.1);
    color: var(--danger-color);
}

.list-group-item-warning {
    background-color: rgba(243, 195, 68, 0.1);
    color: var(--primary-text);
}

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

/* Toast */
.toast {
    box-shadow: var(--shadow);
}

/* Modal */
.modal-content {
    box-shadow: var(--shadow-lg);
}

/* Accordion */
.accordion-button:not(.collapsed) {
    background-color: rgba(75, 152, 108, 0.1);
    color: var(--primary-color);
}

.accordion-button:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.25rem rgba(75, 152, 108, 0.25);
}

/* Star Rating Colors */
.star-rating .star {
    color: var(--border-color);
}

.star-rating .star.filled {
    color: var(--warning-color);
}

/* Custom Utility Classes */
.bg-primary-subtle {
    background-color: rgba(75, 152, 108, 0.1) !important;
}

.bg-success-subtle {
    background-color: rgba(51, 106, 74, 0.1) !important;
}

.bg-danger-subtle {
    background-color: rgba(196, 69, 77, 0.1) !important;
}

.bg-warning-subtle {
    background-color: rgba(243, 195, 68, 0.1) !important;
}

.border-primary {
    border-color: var(--primary-color) !important;
}

.border-success {
    border-color: var(--success-color) !important;
}

.border-danger {
    border-color: var(--danger-color) !important;
}

.border-warning {
    border-color: var(--warning-color) !important;
}
