/* ============================================ */
/* MOARA THEME - BOOTSTRAP 5                   */
/* Confeitaria Artesanal · Gestão · Ancestralidade */
/* ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,300..800&family=Spectral:ital,wght@0,400 !important;0,500 !important;0,600 !important;0,700 !important;1,400 !important;1,500 !important;1,600&display=swap') !important;
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");

/* ===== VARIÁVEIS GLOBAIS ===== */
:root,
[data-bs-theme="light"] {

    /* ----- TIPOGRAFIA ----- */
    --bs-font-sans-serif: 'Bricolage Grotesque', 'Rufina', Georgia, serif !important;
    --bs-font-monospace: 'Spectral', 'Lora', 'Times New Roman', serif !important;
    --bs-body-font-family: var(--bs-font-monospace) !important;
    --bs-body-font-size: 1rem !important;
    --bs-body-font-weight: 400 !important;
    --bs-body-line-height: 1.6 !important;

    /* ----- CORES PRIMÁRIAS ----- */
    --bs-primary: #C97E2A !important;
    /* Açafrão da Terra */
    --bs-primary-rgb: 201, 126, 42 !important;
    --bs-primary-hover: #B56E20 !important;
    --bs-primary-bg-subtle: #F0E2D4 !important;
    --bs-primary-border-subtle: #E2C2A3 !important;

    /* ----- CORES SECUNDÁRIAS ----- */
    --bs-secondary: #D4A158 !important;
    /* Rapadura Melada */
    --bs-secondary-rgb: 212, 161, 88 !important;
    --bs-secondary-hover: #C49048 !important;
    --bs-secondary-bg-subtle: #F8F0E4 !important;
    --bs-secondary-border-subtle: #E8D9C8 !important;

    /* ----- SUCESSO (Cipó Verde) ----- */
    --bs-success: #4A6B4A !important;
    /* Cipó Verde */
    --bs-success-rgb: 74, 107, 74 !important;
    --bs-success-hover: #3D5A3D !important;
    --bs-success-bg-subtle: #E8F0E8 !important;
    --bs-success-border-subtle: #C8D9C8 !important;

    /* ----- PERIGO / ERRO (Forno) ----- */
    --bs-danger: #BF4A2A !important;
    /* Forno */
    --bs-danger-rgb: 191, 74, 42 !important;
    --bs-danger-hover: #A83E20 !important;
    --bs-danger-bg-subtle: #F5E4DE !important;
    --bs-danger-border-subtle: #E8C8BC !important;

    /* ----- ALERTA ----- */
    --bs-warning: #C96A2A !important;
    /* Semente de Urucum */
    --bs-warning-hover: #B55E20 !important;
    --bs-warning-rgb: 201, 106, 42 !important;
    --bs-warning-bg-subtle: #F5E4D4 !important;
    --bs-warning-border-subtle: #E8C8B0 !important;

    /* ----- INFO ----- */
    --bs-info: #E2C2A3 !important;
    /* Massa Crua */
    --bs-info-hover: #D1B08E !important;
    --bs-info-rgb: 226, 194, 163 !important;
    --bs-info-bg-subtle: #FDF8F0 !important;
    --bs-info-border-subtle: #F0E4D4 !important;

    /* ----- ESCURO (Cacau Tostado) ----- */
    --bs-dark: #6B3E1B !important;
    /* Cacau Tostado */
    --bs-dark-hover: #4A2C14 !important;
    --bs-dark-rgb: 107, 62, 27 !important;
    --bs-dark-bg-subtle: #E8DDD4 !important;
    --bs-dark-border-subtle: #D4C4B8 !important;

    /* ----- CLARO (Farinha de Braquiça) ----- */
    --bs-light: #F5ECD7 !important;
    /* Farinha de Braquiça */
    --bs-light-hover: #E8D9C8 !important;
    --bs-light-rgb: 245, 236, 215 !important;
    --bs-light-bg-subtle: #FEFCF8 !important;
    --bs-light-border-subtle: #F0E8DC !important;

    /* ----- FUNDO E TEXTO ----- */
    --bs-body-bg: #F5ECD7 !important;
    /* Farinha de Braquiça */
    --bs-body-bg-rgb: 245, 236, 215 !important;
    --bs-body-color: #6B3E1B !important;
    /* Cacau Tostado */
    --bs-body-color-rgb: 107, 62, 27 !important;

    --bs-secondary-color: #8B6844 !important;
    --bs-secondary-color-rgb: 139, 104, 68 !important;
    --bs-tertiary-color: #B89A7A !important;
    --bs-tertiary-color-rgb: 184, 154, 122 !important;

    /* ----- BORDAS ----- */
    --bs-border-color: #E2C2A3 !important;
    /* Massa Crua */
    --bs-border-color-rgb: 226, 194, 163 !important;
    --bs-border-width: 1px !important;
    --bs-border-radius: 0.75rem !important;
    --bs-border-radius-lg: 1rem !important;
    --bs-border-radius-sm: 0.5rem !important;

    /* ----- FOCO (acessibilidade) ----- */
    --bs-focus-ring-color: rgba(201, 126, 42, 0.25) !important;
    --bs-focus-ring-width: 0.25rem !important;
    --bs-focus-ring-opacity: 0.25 !important;

    /* ----- LINK ----- */
    --bs-link-color: #C97E2A !important;
    --bs-link-color-rgb: 201, 126, 42 !important;
    --bs-link-hover-color: #B56E20 !important;
    --bs-link-hover-color-rgb: 181, 110, 32 !important;
    --bs-link-decoration: underline !important;
    --bs-link-hover-decoration: underline !important;

    /* ----- CARD ----- */
    --bs-card-bg: #E2C2A3 !important;
    /* Massa Crua */
    --bs-card-border-color: #D4A158 !important;
    --bs-card-border-width: 1px !important;
    --bs-card-border-radius: 1rem !important;
    --bs-card-inner-border-radius: calc(1rem - 1px) !important;
    --bs-card-cap-bg: rgba(107, 62, 27, 0.05) !important;

    /* ----- INPUT ----- */
    --bs-input-bg: #F5ECD7 !important;
    --bs-input-border-color: #E2C2A3 !important;
    --bs-input-focus-border-color: #C97E2A !important;
    --bs-input-focus-box-shadow: 0 0 0 0.25rem rgba(201, 126, 42, 0.25) !important;
    --bs-input-placeholder-color: #B89A7A !important;

    /* ----- BUTTON ----- */
    --bs-btn-border-radius: 40px !important;
    --bs-btn-padding-x: 1.5rem !important;
    --bs-btn-padding-y: 0.75rem !important;
    --bs-btn-font-family: var(--bs-font-sans-serif) !important;
    --bs-btn-font-weight: 500 !important;

    /* ----- NAVBAR ----- */
    --bs-navbar-bg: #F5ECD7 !important;
    --bs-navbar-color: #6B3E1B !important;
    --bs-navbar-hover-color: #C97E2A !important;
    --bs-navbar-active-color: #C97E2A !important;
    --bs-navbar-padding-y: 1rem !important;
    --bs-navbar-brand-font-size: 1.5rem !important;
    --bs-navbar-brand-font-weight: 600 !important;
    --bs-navbar-brand-color: #6B3E1B !important;
    --bs-navbar-brand-hover-color: #C97E2A !important;

    /* ----- DROPDOWN ----- */
    --bs-dropdown-bg: #F5ECD7 !important;
    --bs-dropdown-border-color: #E2C2A3 !important;
    --bs-dropdown-link-color: #6B3E1B !important;
    --bs-dropdown-link-hover-bg: #E8D9C8 !important;
    --bs-dropdown-link-hover-color: #C97E2A !important;
    --bs-dropdown-link-active-bg: #C97E2A !important;
    --bs-dropdown-link-active-color: #F5ECD7 !important;

    /* ----- MODAL ----- */
    --bs-modal-bg: #F5ECD7 !important;
    --bs-modal-border-color: #D4A158 !important;
    --bs-modal-header-border-color: #E2C2A3 !important;
    --bs-modal-footer-border-color: #E2C2A3 !important;
    --bs-modal-border-radius: 1.25rem !important;

    /* ----- TABLE ----- */
    --bs-table-bg: transparent !important;
    --bs-table-striped-bg: rgba(226, 194, 163, 0.3) !important;
    --bs-table-hover-bg: rgba(212, 161, 88, 0.15) !important;
    --bs-table-border-color: #D9D0C1 !important;

    /* ----- TOOLTIP ----- */
    --bs-tooltip-bg: #6B3E1B !important;
    --bs-tooltip-color: #F5ECD7 !important;

    /* ----- PROGRESS ----- */
    --bs-progress-bg: #E2C2A3 !important;
    --bs-progress-bar-bg: #C97E2A !important;

    /* ----- LIST GROUP ----- */
    --bs-list-group-bg: #E2C2A3 !important;
    --bs-list-group-border-color: #D4A158 !important;
    --bs-list-group-hover-bg: #E8D9C8 !important;
    --bs-list-group-active-bg: #C97E2A !important;
    --bs-list-group-active-color: #F5ECD7 !important;

    /* ----- ACCORDION ----- */
    --bs-accordion-bg: #E2C2A3 !important;
    --bs-accordion-border-color: #D4A158 !important;
    --bs-accordion-btn-bg: #E2C2A3 !important;
    --bs-accordion-btn-focus-border-color: #C97E2A !important;
    --bs-accordion-active-bg: #C97E2A !important;
    --bs-accordion-active-color: #F5ECD7 !important;

    /* ----- BREADCRUMB ----- */
    --bs-breadcrumb-divider-color: #B89A7A !important;
    --bs-breadcrumb-item-active-color: #6B3E1B !important;

    /* ----- PAGINATION ----- */
    --bs-pagination-bg: #F5ECD7 !important;
    --bs-pagination-border-color: #E2C2A3 !important;
    --bs-pagination-color: #6B3E1B !important;
    --bs-pagination-hover-bg: #E8D9C8 !important;
    --bs-pagination-hover-color: #C97E2A !important;
    --bs-pagination-active-bg: #C97E2A !important;
    --bs-pagination-active-color: #F5ECD7 !important;
    --bs-pagination-disabled-bg: #F5ECD7 !important;
    --bs-pagination-disabled-color: #B89A7A !important;

    /* ----- BADGE ----- */
    --bs-badge-border-radius: 0.5rem !important;
}

/* ============================================ */
/* TEMA ESCURO (opcional)                       */
/* ============================================ */

[data-bs-theme="dark"] {

    --bs-body-bg: #3A2418 !important;
    /* Sombra de Forno */
    --bs-body-bg-rgb: 58, 36, 24 !important;
    --bs-body-color: #F5ECD7 !important;
    --bs-body-color-rgb: 245, 236, 215 !important;

    --bs-primary: #D9944A !important;
    --bs-primary-rgb: 217, 148, 74 !important;

    --bs-secondary: #E2B870 !important;
    --bs-secondary-rgb: 226, 184, 112 !important;

    --bs-dark: #F5ECD7 !important;
    --bs-dark-rgb: 245, 236, 215 !important;

    --bs-light: #3A2418 !important;
    --bs-light-rgb: 58, 36, 24 !important;

    --bs-border-color: #8B6844 !important;
    --bs-card-bg: #4A3424 !important;
    --bs-input-bg: #4A3424 !important;
    --bs-navbar-bg: #3A2418 !important;
    --bs-dropdown-bg: #4A3424 !important;
    --bs-modal-bg: #4A3424 !important;
    --bs-list-group-bg: #4A3424 !important;
    --bs-accordion-bg: #4A3424 !important;
    --bs-pagination-bg: #4A3424 !important;
}

/* ============================================ */
/* TIPOGRAFIA ESPECÍFICA                       */
/* ============================================ */

/* Títulos com Bricolage Grotesque */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.display-1,
.display-2,
.display-3,
.display-4,
.display-5,
.display-6,
.lead,
.navbar-brand,
.btn,
.nav-link,
.dropdown-item,
.breadcrumb-item {
    font-family: var(--bs-font-sans-serif) !important;
}

/* Texto corrido com Spectral */
body,
p,
span,
div,
li,
td,
th,
.form-label,
.form-text,
.input-group-text,
.card-text,
.alert,
.tooltip,
.popover,
.modal-body,
.accordion-body,
.table,
.list-group-item {
    font-family: var(--bs-font-monospace) !important;
}

/* Preços e valores (itálico) */
.price,
.amount {
    font-family: var(--bs-font-monospace) !important;
    font-weight: 600 !important;
    font-style: italic !important;
    color: #C97E2A !important;
}

/* Ajuste de peso dos títulos */
h1,
.h1 {
    font-weight: 600 !important;
    letter-spacing: -0.02em !important;
}

h2,
.h2 {
    font-weight: 500 !important;
    letter-spacing: -0.01em !important;
}

h3,
.h3 {
    font-weight: 500 !important;
}

h4,
.h4 {
    font-weight: 600 !important;
}

h5,
.h5 {
    font-weight: 600 !important;
}

h6,
.h6 {
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.02em !important;
}

/* Links com underline suave */
a:not(.btn):not(.nav-link):not(.dropdown-item) {
    text-decoration-thickness: 1px !important;
    text-underline-offset: 3px !important;
}

/* ============================================ */
/* COMPONENTES PERSONALIZADOS                  */
/* ============================================ */

.navbar-brand {
    color: var(--bs-dark) !important;
}

/* Cards com textura suave */
.card {
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.card:hover {
    /* transform: translateY(-2px) !important; */
    box-shadow: 0 8px 24px rgba(58, 36, 24, 0.12) !important;
}

/* Botões com hover suave */
.btn-primary {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
    color: var(--bs-light) !important;
    transition: all 0.2s ease !important;
}

.btn-primary:hover {
    background-color: var(--bs-primary-hover) !important;
    border-color: var(--bs-primary-hover) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-outline-primary {
    background-color: transparent !important;
    border-color: var(--bs-primary) !important;
    color: var(--bs-primary) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-primary:hover {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-secondary {
    background-color: var(--bs-secondary) !important;
    border-color: var(--bs-secondary) !important;
    color: var(--bs-light) !important;
    transition: all 0.2s ease !important;
}

.btn-secondary:hover {
    background-color: var(--bs-secondary-hover) !important;
    border-color: var(--bs-secondary-hover) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-outline-secondary {
    background-color: var(--bs-light) !important;
    border-color: var(--bs-secondary) !important;
    color: var(--bs-dark) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-secondary:hover {
    background-color: var(--bs-secondary) !important;
    border-color: var(--bs-secondary) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-success {
    background-color: var(--bs-success) !important;
    border-color: var(--bs-success) !important;
    color: var(--bs-light) !important;
    transition: all 0.2s ease !important;
}

.btn-success:hover {
    background-color: var(--bs-success-hover) !important;
    border-color: var(--bs-success-hover) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-outline-success {
    background-color: transparent !important;
    border-color: var(--bs-success) !important;
    color: var(--bs-success) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-success:hover {
    background-color: var(--bs-success) !important;
    border-color: var(--bs-success) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-danger {
    background-color: var(--bs-danger) !important;
    border-color: var(--bs-danger) !important;
    color: var(--bs-light) !important;
    transition: all 0.2s ease !important;
}

.btn-danger:hover {
    background-color: var(--bs-danger-hover) !important;
    border-color: var(--bs-danger-hover) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-outline-danger {
    background-color: transparent !important;
    border-color: var(--bs-danger) !important;
    color: var(--bs-danger) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-danger:hover {
    background-color: var(--bs-danger) !important;
    border-color: var(--bs-danger) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-warning {
    background-color: var(--bs-warning) !important;
    border-color: var(--bs-warning) !important;
    color: var(--bs-light) !important;
    transition: all 0.2s ease !important;
}

.btn-warning:hover {
    background-color: var(--bs-warning-hover) !important;
    border-color: var(--bs-warning-hover) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-outline-warning {
    background-color: transparent !important;
    border-color: var(--bs-warning) !important;
    color: var(--bs-warning) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-warning:hover {
    background-color: var(--bs-warning) !important;
    border-color: var(--bs-warning) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-info {
    background-color: var(--bs-info) !important;
    border-color: var(--bs-info) !important;
    color: var(--bs-dark) !important;
    transition: all 0.2s ease !important;
}

.btn-info:hover {
    background-color: var(--bs-info-hover) !important;
    border-color: var(--bs-info-hover) !important;
    color: var(--bs-dark) !important;
    transform: scale(0.98) !important;
}

.btn-outline-info {
    background-color: transparent !important;
    border-color: var(--bs-info) !important;
    color: var(--bs-dark) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-info:hover {
    background-color: var(--bs-info) !important;
    border-color: var(--bs-info) !important;
    color: var(--bs-dark) !important;
    transform: scale(0.98) !important;
}

.btn-light {
    background-color: var(--bs-light) !important;
    border-color: var(--bs-light) !important;
    color: var(--bs-dark) !important;
    transition: all 0.2s ease !important;
}

.btn-light:hover {
    background-color: var(--bs-light-hover) !important;
    border-color: var(--bs-light-hover) !important;
    color: var(--bs-dark) !important;
    transform: scale(0.98) !important;
}

.btn-outline-light {
    background-color: transparent !important;
    border-color: var(--bs-light) !important;
    color: var(--bs-dark) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-light:hover {
    background-color: var(--bs-light-hover) !important;
    border-color: var(--bs-light-hover) !important;
    color: var(--bs-dark) !important;
    transform: scale(0.98) !important;
}

.btn-dark {
    background-color: var(--bs-dark) !important;
    border-color: var(--bs-dark) !important;
    color: var(--bs-light) !important;
    transition: all 0.2s ease !important;
}

.btn-dark:hover {
    background-color: var(--bs-dark-hover) !important;
    border-color: var(--bs-dark-hover) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

.btn-outline-dark {
    background-color: transparent !important;
    border-color: var(--bs-dark) !important;
    color: var(--bs-dark) !important;
    transition: all 0.2s ease !important;
}

.btn-outline-dark:hover {
    background-color: var(--bs-dark) !important;
    border-color: var(--bs-dark) !important;
    color: var(--bs-light) !important;
    transform: scale(0.98) !important;
}

/* Inputs com foco suave */
.form-control:focus,
.form-select:focus {
    border-color: var(--bs-input-focus-border-color) !important;
    box-shadow: var(--bs-input-focus-box-shadow) !important;
}

/* Tabelas com linhas zebradas suaves */
.table-striped>tbody>tr:nth-of-type(odd)>* {
    background-color: rgba(226, 194, 163, 0.2) !important;
}

/* Navbar customizada */
.navbar {
    box-shadow: 0 2px 6px rgba(58, 36, 24, 0.06) !important;
}

.navbar-brand {
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

/* Breadcrumb com divisória personalizada */
.breadcrumb-item+.breadcrumb-item::before {
    content: "›" !important;
    color: var(--bs-breadcrumb-divider-color) !important;
    font-size: 1.2em !important;
    font-weight: 300 !important;
}

/* ----- TABLE PRIMARY (Açafrão da Terra) ----- */
.table-primary {
    --bs-table-bg: #F0E2D4;
    --bs-table-striped-bg: #E8D8C8;
    --bs-table-striped-color: #6B3E1B;
    --bs-table-active-bg: #E0D0BC;
    --bs-table-active-color: #6B3E1B;
    --bs-table-hover-bg: #E4D4C2;
    --bs-table-hover-color: #6B3E1B;
    color: #6B3E1B;
    border-color: #D4A158;
}

/* ----- TABLE SECONDARY (Rapadura Melada) ----- */
.table-secondary {
    --bs-table-bg: #F8F0E4;
    --bs-table-striped-bg: #F0E6D8;
    --bs-table-striped-color: #6B3E1B;
    --bs-table-active-bg: #E8DCCC;
    --bs-table-active-color: #6B3E1B;
    --bs-table-hover-bg: #ECE0D0;
    --bs-table-hover-color: #6B3E1B;
    color: #6B3E1B;
    border-color: #D4A158;
}

/* ----- TABLE SUCCESS (Cipó Verde) ----- */
.table-success {
    --bs-table-bg: #E8F0E8;
    --bs-table-striped-bg: #DEE8DE;
    --bs-table-striped-color: #6B3E1B;
    --bs-table-active-bg: #D4E0D4;
    --bs-table-active-color: #6B3E1B;
    --bs-table-hover-bg: #D9E4D9;
    --bs-table-hover-color: #6B3E1B;
    color: #6B3E1B;
    border-color: #4A6B4A;
}

/* ----- TABLE DANGER (Forno) ----- */
.table-danger {
    --bs-table-bg: #F5E4DE;
    --bs-table-striped-bg: #EDDAD2;
    --bs-table-striped-color: #6B3E1B;
    --bs-table-active-bg: #E5D0C6;
    --bs-table-active-color: #6B3E1B;
    --bs-table-hover-bg: #E9D5CC;
    --bs-table-hover-color: #6B3E1B;
    color: #6B3E1B;
    border-color: #BF4A2A;
}

/* ----- TABLE WARNING (Semente de Urucum) ----- */
.table-warning {
    --bs-table-bg: #F5E4D4;
    --bs-table-striped-bg: #EDDAC8;
    --bs-table-striped-color: #6B3E1B;
    --bs-table-active-bg: #E5D0BC;
    --bs-table-active-color: #6B3E1B;
    --bs-table-hover-bg: #E9D5C2;
    --bs-table-hover-color: #6B3E1B;
    color: #6B3E1B;
    border-color: #C96A2A;
}

/* ----- TABLE INFO (Massa Crua) ----- */
.table-info {
    --bs-table-bg: #FDF8F0;
    --bs-table-striped-bg: #F5F0E8;
    --bs-table-striped-color: #6B3E1B;
    --bs-table-active-bg: #EDE8E0;
    --bs-table-active-color: #6B3E1B;
    --bs-table-hover-bg: #F1ECE4;
    --bs-table-hover-color: #6B3E1B;
    color: #6B3E1B;
    border-color: #E2C2A3;
}

/* ----- TABLE LIGHT (Farinha de Braquiça) ----- */
.table-light {
    --bs-table-bg: #F5ECD7;
    --bs-table-striped-bg: #EDE4CF;
    --bs-table-striped-color: #6B3E1B;
    --bs-table-active-bg: #E5DCC7;
    --bs-table-active-color: #6B3E1B;
    --bs-table-hover-bg: #E9E0CB;
    --bs-table-hover-color: #6B3E1B;
    color: #6B3E1B;
    border-color: #E2C2A3;
}

/* ----- TABLE DARK (Cacau Tostado) ----- */
.table-dark {
    --bs-table-bg: #6B3E1B;
    --bs-table-striped-bg: #734826;
    --bs-table-striped-color: #F5ECD7;
    --bs-table-active-bg: #7A5131;
    --bs-table-active-color: #F5ECD7;
    --bs-table-hover-bg: #774D2B;
    --bs-table-hover-color: #F5ECD7;
    color: #F5ECD7;
    border-color: #4A2C14;
}

.alert-info {
    color: var(--bs-dark) !important;
    background-color: var(--bs-info) !important;
    border-color: var(--bs-info-border-subtle) !important;
}

.alert-warning {
    color: var(--bs-light) !important;
    background-color: var(--bs-warning) !important;
    border-color: var(--bs-warning-border-subtle) !important;
}

.alert-danger {
    color: var(--bs-light) !important;
    background-color: var(--bs-danger) !important;
    border-color: var(--bs-danger-border-subtle) !important;
}

.alert-success {
    color: var(--bs-light) !important;
    background-color: var(--bs-success) !important;
    border-color: var(--bs-success-border-subtle) !important;
}

.info-tooltip .tooltip-inner {
    color: var(--bs-dark) !important;
    background-color: var(--bs-info) !important;
}

.info-tooltip .tooltip-arrow::before {
    border-top-color: var(--bs-info) !important;
}

.link-cocoa {
    color: #6B3E1B !important;
}

.link-cocoa:hover,
.link-cocoa:focus {
    color: #C97E2A !important;
}

/* ============================================ */
/* UTILITÁRIOS PERSONALIZADOS                  */
/* ============================================ */

/* Cores de texto utilitárias */
.text-cocoa {
    color: #6B3E1B !important;
}

.text-saffron {
    color: #C97E2A !important;
}

.text-rapadura {
    color: #D4A158 !important;
}

.text-vine {
    color: #4A6B4A !important;
}

.text-oven {
    color: #BF4A2A !important;
}

/* Cores de fundo utilitárias */
.bg-flour {
    background-color: #F5ECD7 !important;
}

.bg-raw-dough {
    background-color: #E2C2A3 !important;
}

.bg-light-clay {
    background-color: #E8D9C8 !important;
}

/* Sombra personalizada */
.shadow-moara {
    box-shadow: 0 4px 12px rgba(58, 36, 24, 0.1) !important;
}

/* Borda personalizada */
.border-moara {
    border: 1px solid #D4A158 !important;
}

/* ============================================ */
/* RESPONSIVIDADE                              */
/* ============================================ */

@media (max-width: 768px) {
    :root {
        --bs-body-font-size: 0.875rem !important;
        --bs-btn-padding-x: 1rem !important;
        --bs-btn-padding-y: 0.5rem !important;
    }

    h1,
    .h1 {
        font-size: calc(1.75rem + 0.5vw) !important;
    }

    h2,
    .h2 {
        font-size: calc(1.5rem + 0.3vw) !important;
    }
}