/* =============================
PALETA IASYCOB
============================= */
:root,
[data-bs-theme="light"] {
    /* Cores primárias */
    --brand-primary-hex: #0D1B2A; /* Azul Marinho */
    --brand-primary-rgb: 13, 27, 42;

    --brand-secondary-hex: #2563EB; /* Azul Primário */
    --brand-secondary-rgb: 37, 99, 235;

    --brand-accent-hex: #10B981; /* Verde Primário */
    --brand-accent-rgb: 16, 185, 129;

    /* Cores secundárias */
    --brand-dark-hex: #1E293B; /* Azul Escuro */
    --brand-dark-rgb: 30, 41, 59;

    --brand-blue-soft-hex: #3B82F6; /* Azul Suave */
    --brand-blue-soft-rgb: 59, 130, 246;

    --brand-light-hex: #F1F5F9; /* Cinza Claro */
    --brand-light-rgb: 241, 245, 249;

    --brand-green-soft-hex: #D1FAE5; /* Verde Suave */
    --brand-green-soft-rgb: 209, 250, 229;

    /* Cores terciárias */
    --brand-purple-hex: #7C3AED;
    --brand-purple-rgb: 124, 58, 237;

    --brand-orange-hex: #F59E0B;
    --brand-orange-rgb: 245, 158, 11;

    --brand-yellow-hex: #FACC15;
    --brand-yellow-rgb: 250, 204, 21;

    --brand-pink-hex: #F43F5E;
    --brand-pink-rgb: 244, 63, 94;

    /* Compatibilidade com nomes antigos */
    --brand-neutral-hex: var(--brand-dark-hex);
    --brand-neutral-rgb: var(--brand-dark-rgb);

    --brand-secondary-soft-hex: #DBEAFE;
    --brand-secondary-soft-rgb: 219, 234, 254;

    --brand-secondary-pale-hex: #EFF6FF;
    --brand-secondary-pale-rgb: 239, 246, 255;

    --brand-accent-soft-hex: var(--brand-green-soft-hex);
    --brand-accent-soft-rgb: var(--brand-green-soft-rgb);

    --brand-danger-hex: var(--brand-pink-hex);
    --brand-danger-rgb: var(--brand-pink-rgb);

    --brand-warning-hex: var(--brand-orange-hex);
    --brand-warning-rgb: var(--brand-orange-rgb);

    --brand-success-hex: var(--brand-accent-hex);
    --brand-success-rgb: var(--brand-accent-rgb);

    /* Bootstrap tokens principais */
    --bs-primary: var(--brand-primary-hex);
    --bs-primary-rgb: var(--brand-primary-rgb);

    --bs-secondary: var(--brand-secondary-hex);
    --bs-secondary-rgb: var(--brand-secondary-rgb);

    --bs-success: var(--brand-success-hex);
    --bs-success-rgb: var(--brand-success-rgb);

    --bs-info: var(--brand-blue-soft-hex);
    --bs-info-rgb: var(--brand-blue-soft-rgb);

    --bs-warning: var(--brand-warning-hex);
    --bs-warning-rgb: var(--brand-warning-rgb);

    --bs-danger: var(--brand-danger-hex);
    --bs-danger-rgb: var(--brand-danger-rgb);

    --bs-light: var(--brand-light-hex);
    --bs-light-rgb: var(--brand-light-rgb);

    --bs-dark: var(--brand-dark-hex);
    --bs-dark-rgb: var(--brand-dark-rgb);

    --bs-link-color: var(--brand-secondary-hex);
    --bs-link-hover-color: var(--brand-accent-hex);

    /* Subtle backgrounds/borders */
    --bs-primary-bg-subtle: rgba(var(--brand-primary-rgb), .08);
    --bs-primary-border-subtle: rgba(var(--brand-primary-rgb), .22);

    --bs-secondary-bg-subtle: rgba(var(--brand-secondary-rgb), .10);
    --bs-secondary-border-subtle: rgba(var(--brand-secondary-rgb), .25);

    --bs-success-bg-subtle: rgba(var(--brand-accent-rgb), .12);
    --bs-success-border-subtle: rgba(var(--brand-accent-rgb), .28);

    --bs-info-bg-subtle: rgba(var(--brand-blue-soft-rgb), .12);
    --bs-info-border-subtle: rgba(var(--brand-blue-soft-rgb), .28);

    --bs-warning-bg-subtle: rgba(var(--brand-orange-rgb), .14);
    --bs-warning-border-subtle: rgba(var(--brand-orange-rgb), .30);

    --bs-danger-bg-subtle: rgba(var(--brand-pink-rgb), .10);
    --bs-danger-border-subtle: rgba(var(--brand-pink-rgb), .24);

    /* Tema UBold */
    --tb-primary: var(--brand-primary-hex);

    /* Tokens extras */
    --brand-body-color: #24313D;
    --brand-muted-color: #64748B;
    --brand-page-bg: #F8FAFC;
    --brand-card-border: rgba(var(--brand-primary-rgb), .08);
    --brand-card-shadow: 0 8px 22px rgba(var(--brand-primary-rgb), .06);
    --brand-hover-shadow: 0 14px 34px rgba(var(--brand-primary-rgb), .12);
    --brand-focus-ring: 0 0 0 .22rem rgba(var(--brand-secondary-rgb), .18);
    --brand-radius-sm: 8px;
    --brand-radius-md: 12px;
    --brand-radius-lg: 16px;
    --brand-radius-xl: 22px;

    --brand-gradient-primary: linear-gradient(135deg, var(--brand-primary-hex), var(--brand-secondary-hex));
    --brand-gradient-accent: linear-gradient(135deg, var(--brand-secondary-hex), var(--brand-accent-hex));
    --brand-gradient-soft: linear-gradient(135deg, rgba(var(--brand-secondary-rgb), .12), rgba(var(--brand-accent-rgb), .12));
}

/* =============================
BASE
============================= */
body {
    color: var(--brand-body-color);
    background-color: var(--brand-page-bg);
}

#landing-navbar,
.app-navbar,
.topbar-brand,
.navbar-brand-area {
    background: var(--brand-gradient-primary);
}

.nav-link {
    color: rgba(255, 255, 255, .72) !important;
}

.nav-link:hover,
.nav-link:focus,
.nav-link.active {
    color: #ffffff !important;
}

a {
    color: var(--brand-secondary-hex) !important;
    text-decoration: none;
    transition: color .2s ease, opacity .2s ease;
}

a:hover,
a:focus {
    color: var(--brand-accent-hex) !important;
}

.text-primary,
.link-primary {
    color: var(--brand-primary-hex) !important;
}

.text-secondary,
.link-secondary {
    color: var(--brand-secondary-hex) !important;
}

.text-accent,
.text-success-brand {
    color: var(--brand-accent-hex) !important;
}

.text-neutral,
.text-brand-dark {
    color: var(--brand-dark-hex) !important;
}

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

.bg-primary-subtle {
    background-color: var(--bs-primary-bg-subtle) !important;
}

.bg-secondary-subtle,
.bg-blue-subtle {
    background-color: var(--bs-secondary-bg-subtle) !important;
}

.bg-success-subtle,
.bg-accent-subtle,
.bg-green-subtle {
    background-color: var(--bs-success-bg-subtle) !important;
}

.bg-warning-subtle,
.bg-orange-subtle {
    background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-danger-subtle,
.bg-pink-subtle {
    background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-brand-gradient {
    background: var(--brand-gradient-primary) !important;
    color: #fff !important;
}

.bg-brand-gradient-accent {
    background: var(--brand-gradient-accent) !important;
    color: #fff !important;
}

.bg-brand-soft {
    background: var(--brand-gradient-soft) !important;
}

/* =============================
LOGO / MARCA
============================= */
.brand-logo,
.iasycob-logo {
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    color: var(--brand-primary-hex);
    font-weight: 800;
    letter-spacing: -.03em;
}

.brand-logo__mark,
.iasycob-logo__mark {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: var(--brand-gradient-primary);
    box-shadow: 0 10px 24px rgba(var(--brand-primary-rgb), .18);
    color: #fff;
}

.brand-logo__text,
.iasycob-logo__text {
    font-size: 1.15rem;
    line-height: 1;
}

.brand-logo__text strong,
.iasycob-logo__text strong {
    color: var(--brand-secondary-hex);
}

.brand-tagline,
.iasycob-tagline {
    color: var(--brand-muted-color);
    font-size: .88rem;
}

.brand-tagline strong,
.iasycob-tagline strong {
    color: var(--brand-accent-hex);
}

/* =============================
BOTÕES
============================= */
.btn {
    border-radius: 10px;
    font-weight: 600;
    transition: all .2s ease;
}

.btn-primary {
    background: var(--brand-gradient-primary);
    border-color: var(--brand-primary-hex);
    color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background: linear-gradient(135deg, var(--brand-secondary-hex), var(--brand-primary-hex));
    border-color: var(--brand-secondary-hex);
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(var(--brand-secondary-rgb), .22);
}

.btn-secondary,
.btn-brand-blue {
    background-color: var(--brand-secondary-hex);
    border-color: var(--brand-secondary-hex);
    color: #fff !important;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-brand-blue:hover,
.btn-brand-blue:focus {
    background-color: #1D4ED8;
    border-color: #1D4ED8;
    color: #fff !important;
}

.btn-success,
.btn-accent,
.btn-brand-green {
    background-color: var(--brand-accent-hex);
    border-color: var(--brand-accent-hex);
    color: #fff !important;
}

.btn-success:hover,
.btn-accent:hover,
.btn-brand-green:hover,
.btn-success:focus,
.btn-accent:focus,
.btn-brand-green:focus {
    background-color: #059669;
    border-color: #059669;
    color: #fff !important;
}

.btn-warning,
.btn-brand-orange {
    background-color: var(--brand-orange-hex);
    border-color: var(--brand-orange-hex);
    color: #fff !important;
}

.btn-warning:hover,
.btn-brand-orange:hover,
.btn-warning:focus,
.btn-brand-orange:focus {
    background-color: #D97706;
    border-color: #D97706;
    color: #fff !important;
}

.btn-outline-primary {
    color: var(--brand-primary-hex) !important;
    border-color: rgba(var(--brand-primary-rgb), .30);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    background-color: var(--brand-primary-hex);
    border-color: var(--brand-primary-hex);
    color: #fff !important;
}

.btn-outline-secondary,
.btn-outline-brand-blue {
    color: var(--brand-secondary-hex) !important;
    border-color: rgba(var(--brand-secondary-rgb), .42);
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-brand-blue:hover,
.btn-outline-brand-blue:focus {
    background-color: var(--brand-secondary-hex);
    border-color: var(--brand-secondary-hex);
    color: #fff !important;
}

.btn-outline-accent,
.btn-outline-brand-green {
    color: var(--brand-accent-hex) !important;
    border-color: rgba(var(--brand-accent-rgb), .42);
}

.btn-outline-accent:hover,
.btn-outline-accent:focus,
.btn-outline-brand-green:hover,
.btn-outline-brand-green:focus {
    background-color: var(--brand-accent-hex);
    border-color: var(--brand-accent-hex);
    color: #fff !important;
}

.btn-light {
    background: #fff;
    border-color: #E2E8F0;
    color: var(--brand-primary-hex) !important;
}

.btn-light:hover,
.btn-light:focus {
    background: var(--brand-secondary-pale-hex);
    border-color: rgba(var(--brand-secondary-rgb), .25);
    color: var(--brand-secondary-hex) !important;
}

/* =============================
CARDS
============================= */
.card {
    border: 1px solid var(--brand-card-border);
    border-radius: var(--brand-radius-lg);
    box-shadow: var(--brand-card-shadow);
}

.card-header {
    border-bottom-color: rgba(var(--brand-primary-rgb), .06) !important;
}

.card-hover:hover {
    box-shadow: var(--brand-hover-shadow);
    transform: translateY(-1px);
}

.card-brand,
.iasycob-card {
    border: 1px solid rgba(var(--brand-secondary-rgb), .12);
    background: linear-gradient(180deg, #fff, rgba(var(--brand-secondary-rgb), .025));
}

.card-brand-accent {
    border: 1px solid rgba(var(--brand-accent-rgb), .18);
    background: linear-gradient(180deg, #fff, rgba(var(--brand-accent-rgb), .045));
}

/* =============================
FORMULÁRIOS
============================= */
.form-control,
.form-select {
    border-radius: 10px;
    border-color: #D9E2EC;
    box-shadow: none;
}

.form-control:focus,
.form-select:focus {
    border-color: rgba(var(--brand-secondary-rgb), .65);
    box-shadow: var(--brand-focus-ring);
}

.input-group-text {
    background-color: #fff;
    border-color: #D9E2EC;
    color: var(--brand-secondary-hex);
    font-weight: 600;
}

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

/* =============================
BADGES / STATUS
============================= */
.badge-soft-primary {
    background-color: rgba(var(--brand-primary-rgb), .10);
    color: var(--brand-primary-hex);
    border: 1px solid rgba(var(--brand-primary-rgb), .16);
}

.badge-soft-secondary,
.badge-soft-blue {
    background-color: rgba(var(--brand-secondary-rgb), .12);
    color: var(--brand-secondary-hex);
    border: 1px solid rgba(var(--brand-secondary-rgb), .24);
}

.badge-soft-success,
.badge-soft-accent,
.badge-soft-green {
    background-color: rgba(var(--brand-accent-rgb), .12);
    color: #047857;
    border: 1px solid rgba(var(--brand-accent-rgb), .26);
}

.badge-soft-info {
    background-color: rgba(var(--brand-blue-soft-rgb), .12);
    color: var(--brand-blue-soft-hex);
    border: 1px solid rgba(var(--brand-blue-soft-rgb), .22);
}

.badge-soft-warning,
.badge-soft-orange {
    background-color: rgba(var(--brand-orange-rgb), .14);
    color: #B45309;
    border: 1px solid rgba(var(--brand-orange-rgb), .24);
}

.badge-soft-purple {
    background-color: rgba(var(--brand-purple-rgb), .12);
    color: var(--brand-purple-hex);
    border: 1px solid rgba(var(--brand-purple-rgb), .24);
}

.badge-soft-light {
    background-color: #F8FAFC;
    color: var(--brand-muted-color);
    border: 1px solid #E2E8F0;
}

.badge-soft-danger,
.badge-soft-pink {
    background-color: rgba(var(--brand-pink-rgb), .10);
    color: #BE123C;
    border: 1px solid rgba(var(--brand-pink-rgb), .20);
}

.status-dot {
    display: inline-block;
    width: .55rem;
    height: .55rem;
    border-radius: 50%;
    background-color: var(--brand-muted-color);
}

.status-dot--success { background-color: var(--brand-accent-hex); }
.status-dot--info { background-color: var(--brand-secondary-hex); }
.status-dot--warning { background-color: var(--brand-orange-hex); }
.status-dot--danger { background-color: var(--brand-pink-hex); }
.status-dot--purple { background-color: var(--brand-purple-hex); }

/* =============================
TABELAS
============================= */
.table {
    --bs-table-bg: transparent;
    vertical-align: middle;
}

.table thead th {
    color: var(--brand-primary-hex);
    font-size: .84rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .02em;
    border-bottom-color: rgba(var(--brand-primary-rgb), .10);
}

.table tbody tr {
    transition: background-color .2s ease;
}

.table tbody tr:hover {
    background-color: rgba(var(--brand-secondary-rgb), .06);
}

.table td,
.table th {
    padding-top: .85rem;
    padding-bottom: .85rem;
}

.table-brand-header thead th {
    background: rgba(var(--brand-secondary-rgb), .07);
    color: var(--brand-primary-hex);
}

/* =============================
DASHBOARD / KPI / CHIPS
============================= */
.stat-chip {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .45rem .7rem;
    border-radius: 999px;
    background: rgba(var(--brand-primary-rgb), .05);
    border: 1px solid rgba(var(--brand-primary-rgb), .08);
    color: var(--brand-primary-hex);
    font-size: .85rem;
    font-weight: 600;
}

.stat-chip--secondary,
.stat-chip--blue {
    background: rgba(var(--brand-secondary-rgb), .12);
    border-color: rgba(var(--brand-secondary-rgb), .24);
    color: var(--brand-secondary-hex);
}

.stat-chip--accent,
.stat-chip--green {
    background: rgba(var(--brand-accent-rgb), .12);
    border-color: rgba(var(--brand-accent-rgb), .24);
    color: #047857;
}

.stat-chip--warning,
.stat-chip--orange {
    background: rgba(var(--brand-orange-rgb), .14);
    border-color: rgba(var(--brand-orange-rgb), .26);
    color: #B45309;
}

.stat-chip--danger,
.stat-chip--pink {
    background: rgba(var(--brand-pink-rgb), .10);
    border-color: rgba(var(--brand-pink-rgb), .22);
    color: #BE123C;
}

.stat-chip--purple {
    background: rgba(var(--brand-purple-rgb), .12);
    border-color: rgba(var(--brand-purple-rgb), .24);
    color: var(--brand-purple-hex);
}

.kpi-card {
    border-radius: var(--brand-radius-lg);
    border: 1px solid rgba(var(--brand-primary-rgb), .08);
    background: #fff;
    box-shadow: var(--brand-card-shadow);
}

.kpi-card__body {
    padding: 1rem 1.1rem;
}

.kpi-card--primary {
    background: var(--brand-gradient-primary);
    color: #fff;
}

.kpi-card--primary .kpi-label,
.kpi-card--primary .kpi-sub,
.kpi-card--primary .kpi-value {
    color: #fff;
}

.kpi-label {
    font-size: .82rem;
    font-weight: 700;
    color: var(--brand-muted-color);
    text-transform: uppercase;
    letter-spacing: .04em;
}

.kpi-value {
    font-size: 1.6rem;
    font-weight: 800;
    color: var(--brand-primary-hex);
    line-height: 1.2;
}

.kpi-sub {
    color: var(--brand-muted-color);
    font-size: .85rem;
}

.kpi-progress {
    height: 8px;
    background: rgba(var(--brand-primary-rgb), .06);
    border-radius: 999px;
    overflow: hidden;
    margin-top: .9rem;
}

.kpi-progress__bar {
    height: 100%;
    border-radius: 999px;
    background: var(--brand-gradient-accent);
}

/* =============================
DASHBOARD HELPERS
============================= */
.dashboard-highlight {
    background: linear-gradient(135deg, rgba(var(--brand-secondary-rgb), .12), rgba(var(--brand-secondary-rgb), .05));
    border: 1px solid rgba(var(--brand-secondary-rgb), .22);
    border-radius: var(--brand-radius-lg);
}

.dashboard-accent {
    background: linear-gradient(135deg, rgba(var(--brand-accent-rgb), .12), rgba(var(--brand-accent-rgb), .04));
    border: 1px solid rgba(var(--brand-accent-rgb), .22);
    border-radius: var(--brand-radius-lg);
}

.dashboard-muted {
    background: linear-gradient(135deg, rgba(var(--brand-dark-rgb), .08), rgba(var(--brand-dark-rgb), .03));
    border: 1px solid rgba(var(--brand-dark-rgb), .14);
    border-radius: var(--brand-radius-lg);
}

.dashboard-warning {
    background: linear-gradient(135deg, rgba(var(--brand-orange-rgb), .14), rgba(var(--brand-yellow-rgb), .08));
    border: 1px solid rgba(var(--brand-orange-rgb), .22);
    border-radius: var(--brand-radius-lg);
}

/* =============================
GRÁFICOS / CONTAINERS
============================= */
.chart-card .card-header small,
.dashboard-chart-title {
    color: var(--brand-primary-hex) !important;
    letter-spacing: .04em;
}

.chart-soft-bg {
    background: linear-gradient(180deg, rgba(var(--brand-secondary-rgb), .08) 0%, rgba(255,255,255,0) 100%);
    border-radius: var(--brand-radius-lg);
}

.chart-legend-soft {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .35rem .6rem;
    border-radius: 999px;
    background: rgba(var(--brand-secondary-rgb), .12);
    color: var(--brand-secondary-hex);
    font-size: .78rem;
    font-weight: 700;
}

.chart-legend-soft::before {
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--brand-secondary-hex);
    display: inline-block;
}

.chart-legend-accent::before { background: var(--brand-accent-hex); }
.chart-legend-warning::before { background: var(--brand-orange-hex); }
.chart-legend-danger::before { background: var(--brand-pink-hex); }
.chart-legend-purple::before { background: var(--brand-purple-hex); }

/* =============================
ALERTAS
============================= */
.alert-info {
    background-color: rgba(var(--brand-blue-soft-rgb), .10);
    border-color: rgba(var(--brand-blue-soft-rgb), .20);
    color: #1D4ED8;
}

.alert-success {
    background-color: rgba(var(--brand-accent-rgb), .10);
    border-color: rgba(var(--brand-accent-rgb), .22);
    color: #047857;
}

.alert-warning {
    background-color: rgba(var(--brand-orange-rgb), .12);
    border-color: rgba(var(--brand-orange-rgb), .25);
    color: #B45309;
}

.alert-danger {
    background-color: rgba(var(--brand-pink-rgb), .10);
    border-color: rgba(var(--brand-pink-rgb), .22);
    color: #BE123C;
}

/* =============================
DROPDOWNS / MENUS
============================= */
.dropdown-menu {
    border-radius: 12px;
    border: 1px solid rgba(var(--brand-primary-rgb), .08);
    box-shadow: 0 12px 30px rgba(var(--brand-primary-rgb), .10);
}

.dropdown-item {
    border-radius: 8px;
}

.dropdown-item:hover,
.dropdown-item:focus {
    background-color: rgba(var(--brand-secondary-rgb), .10);
    color: var(--brand-secondary-hex) !important;
}

/* =============================
MODAIS
============================= */
.modal-content {
    border-radius: 16px;
    border: 1px solid rgba(var(--brand-primary-rgb), .08);
    box-shadow: 0 18px 40px rgba(var(--brand-primary-rgb), .14);
}

.modal-header,
.modal-footer {
    border-color: rgba(var(--brand-primary-rgb), .06);
}

.modal-title {
    color: var(--brand-primary-hex);
    font-weight: 800;
}

/* =============================
PAGINAÇÃO
============================= */
.page-link {
    color: var(--brand-secondary-hex);
    border-color: #E2E8F0;
}

.page-link:hover {
    color: var(--brand-primary-hex);
    background-color: rgba(var(--brand-secondary-rgb), .10);
    border-color: rgba(var(--brand-secondary-rgb), .26);
}

.page-item.active .page-link {
    background-color: var(--brand-secondary-hex);
    border-color: var(--brand-secondary-hex);
    color: #fff;
}

/* =============================
SIDEBAR / MENU
============================= */
.sidebar,
.app-sidebar,
.leftside-menu {
    background: var(--brand-primary-hex);
}

.sidebar .nav-link,
.app-sidebar .nav-link,
.leftside-menu .nav-link {
    color: rgba(255,255,255,.72) !important;
}

.sidebar .nav-link:hover,
.sidebar .nav-link.active,
.app-sidebar .nav-link:hover,
.app-sidebar .nav-link.active,
.leftside-menu .nav-link:hover,
.leftside-menu .nav-link.active {
    color: #fff !important;
    background: rgba(var(--brand-secondary-rgb), .18);
}

.sidebar-section-title {
    color: rgba(255,255,255,.46);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* =============================
CLASSES UTILITÁRIAS EXTRAS
============================= */
.border-primary-soft {
    border-color: rgba(var(--brand-primary-rgb), .16) !important;
}

.border-secondary-soft,
.border-blue-soft {
    border-color: rgba(var(--brand-secondary-rgb), .30) !important;
}

.border-accent-soft,
.border-green-soft {
    border-color: rgba(var(--brand-accent-rgb), .24) !important;
}

.border-warning-soft,
.border-orange-soft {
    border-color: rgba(var(--brand-orange-rgb), .28) !important;
}

.border-danger-soft,
.border-pink-soft {
    border-color: rgba(var(--brand-pink-rgb), .24) !important;
}

.shadow-soft {
    box-shadow: var(--brand-card-shadow) !important;
}

.shadow-hover:hover {
    box-shadow: var(--brand-hover-shadow) !important;
}

.rounded-8 { border-radius: 8px !important; }
.rounded-12 { border-radius: 12px !important; }
.rounded-16 { border-radius: 16px !important; }
.rounded-22 { border-radius: 22px !important; }

.text-warning-strong { color: #B45309 !important; }
.text-accent-strong { color: #047857 !important; }
.text-blue-strong { color: var(--brand-secondary-hex) !important; }
.text-purple-strong { color: var(--brand-purple-hex) !important; }
.text-danger-strong { color: #BE123C !important; }

.bg-secondary-pale,
.bg-blue-pale {
    background-color: var(--brand-secondary-pale-hex) !important;
}

.bg-accent-pale,
.bg-green-pale {
    background-color: var(--brand-accent-soft-hex) !important;
}

.bg-purple-pale {
    background-color: rgba(var(--brand-purple-rgb), .10) !important;
}

.bg-orange-pale {
    background-color: rgba(var(--brand-orange-rgb), .12) !important;
}

.bg-pink-pale {
    background-color: rgba(var(--brand-pink-rgb), .10) !important;
}

/* =============================
AJUSTES ESPECÍFICOS ÚTEIS
============================= */
.toolbar-card .card-header {
    background: #fff;
}

.empty-state i,
.empty-state svg {
    width: 26px;
    height: 26px;
    color: var(--brand-secondary-hex);
    margin-bottom: .5rem;
}

.quick-filter-btn {
    border-radius: 999px !important;
    font-weight: 600;
}

.quick-filter-btn.btn-light {
    border-color: rgba(var(--brand-primary-rgb), .08);
}

.quick-filter-btn.btn-light:hover {
    background-color: rgba(var(--brand-secondary-rgb), .10);
    border-color: rgba(var(--brand-secondary-rgb), .25);
}

.filter-summary-box {
    padding: .7rem .85rem;
    border-radius: 12px;
    background: rgba(var(--brand-secondary-rgb), .08);
    border: 1px solid rgba(var(--brand-secondary-rgb), .20);
}

.icon-circle,
.brand-icon-circle {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(var(--brand-secondary-rgb), .10);
    color: var(--brand-secondary-hex);
}

.icon-circle--accent { background: rgba(var(--brand-accent-rgb), .12); color: var(--brand-accent-hex); }
.icon-circle--warning { background: rgba(var(--brand-orange-rgb), .14); color: var(--brand-orange-hex); }
.icon-circle--danger { background: rgba(var(--brand-pink-rgb), .10); color: var(--brand-pink-hex); }
.icon-circle--purple { background: rgba(var(--brand-purple-rgb), .12); color: var(--brand-purple-hex); }

/* =============================
PALETA DE REFERÊNCIA
============================= */
:root {
    --iasycob-azul-marinho: #0D1B2A;
    --iasycob-azul-primario: #2563EB;
    --iasycob-verde-primario: #10B981;
    --iasycob-azul-escuro: #1E293B;
    --iasycob-azul-suave: #3B82F6;
    --iasycob-cinza-claro: #F1F5F9;
    --iasycob-verde-suave: #D1FAE5;
    --iasycob-roxo: #7C3AED;
    --iasycob-laranja: #F59E0B;
    --iasycob-amarelo: #FACC15;
    --iasycob-rosa: #F43F5E;
}
