:root {
    --crm-blue: #88afed;
    --crm-blue-hover: #6f97d6;
    --crm-blue-soft: rgba(136, 175, 237, 0.16);
    --crm-green-soft: rgba(37, 211, 102, 0.12);
    --crm-red-soft: rgba(239, 68, 68, 0.12);
    --crm-amber-soft: rgba(245, 158, 11, 0.14);
    --crm-orange: #f28c38;
    --crm-orange-soft: rgba(242, 140, 56, 0.14);
    --crm-surface: rgba(18, 24, 32, 0.78);
    --crm-surface-strong: rgba(18, 24, 32, 0.96);
}

body.crm-admin {
    background:
        radial-gradient(circle at top left, rgba(37, 211, 102, 0.06), transparent 26%),
        radial-gradient(circle at top right, rgba(136, 175, 237, 0.09), transparent 22%),
        var(--crm-bg-primary) !important;
    color: var(--crm-text-primary) !important;
}

body.crm-admin[data-theme="light"] {
    --crm-surface: rgba(255, 255, 255, 0.94);
    --crm-surface-strong: #ffffff;
    --crm-card-bg: rgba(255, 255, 255, 0.94);
    --crm-border: rgba(13, 17, 23, 0.08);
    --crm-text-primary: #16202a;
    --crm-text-secondary: #3f4b57;
    --crm-text-tertiary: #63707c;
    --crm-text-muted: #75808c;
    background:
        radial-gradient(circle at top left, rgba(37, 211, 102, 0.08), transparent 24%),
        radial-gradient(circle at top right, rgba(136, 175, 237, 0.12), transparent 20%),
        #f4f7fb !important;
}

body.crm-admin a {
    color: var(--crm-blue) !important;
}

body.crm-admin a:hover {
    color: var(--crm-blue-hover) !important;
    text-decoration: none !important;
}

body.crm-admin .container {
    max-width: 1480px !important;
    padding: 0 18px !important;
}

body.crm-admin.crm-admin--wide .container,
body.crm-admin.crm-admin--wide .crm-appbar {
    max-width: none !important;
    width: calc(100% - 32px) !important;
}

body.crm-admin .page-content {
    padding-top: 16px !important;
}

body.crm-admin .crm-appbar {
    margin: 18px auto 16px !important;
    padding: 14px 16px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.015)) !important;
}

body.crm-admin[data-theme="light"] .crm-appbar {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 0.84)) !important;
}

body.crm-admin .crm-appbar__logo {
    width: 58px !important;
    height: 58px !important;
    padding: 9px !important;
    border-radius: 14px !important;
    background: linear-gradient(160deg, #111827, #1f2937) !important;
}

body.crm-admin .crm-appbar__eyebrow {
    font-size: 0.68rem !important;
    letter-spacing: 0.14em !important;
}

body.crm-admin .crm-appbar__title-row h1 {
    font-size: clamp(1.08rem, 1.8vw, 1.38rem) !important;
}

body.crm-admin .crm-appbar__subtitle,
body.crm-admin .crm-page-subtitle {
    font-size: 0.8rem !important;
    line-height: 1.45 !important;
}

body.crm-admin .crm-appbar__actions {
    gap: 10px !important;
}

body.crm-admin .crm-theme-toggle,
body.crm-admin .crm-layout-toggle {
    min-width: 112px !important;
    padding: 9px 12px !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    color: var(--crm-text-primary) !important;
}

body.crm-admin[data-theme="light"] .crm-theme-toggle,
body.crm-admin[data-theme="light"] .crm-layout-toggle {
    background: rgba(22, 32, 42, 0.04) !important;
}

body.crm-admin .card,
body.crm-admin .stat-card,
body.crm-admin .filters-section,
body.crm-admin .table-section {
    border-radius: 18px !important;
    background: var(--crm-surface) !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12) !important;
}

body.crm-admin .card,
body.crm-admin .filters-section {
    padding: 18px !important;
}

body.crm-admin .stat-card {
    padding: 16px !important;
}

body.crm-admin .stat-card-value,
body.crm-admin .card-value {
    font-size: clamp(1.5rem, 2.2vw, 2rem) !important;
    line-height: 1.08 !important;
    color: var(--crm-text-primary) !important;
}

body.crm-admin .stat-card-label,
body.crm-admin .card-label {
    font-size: 0.69rem !important;
    letter-spacing: 0.12em !important;
}

body.crm-admin .stat-card-subtitle,
body.crm-admin .card-sub,
body.crm-admin .mini-note {
    font-size: 0.78rem !important;
    color: var(--crm-text-tertiary) !important;
    line-height: 1.45 !important;
}

body.crm-admin .mini-note {
    display: block !important;
    margin-top: 6px !important;
}

body.crm-admin .btn,
body.crm-admin .btn-small,
body.crm-admin button,
body.crm-admin .header-link {
    min-height: 38px !important;
    padding: 9px 13px !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

body.crm-admin .btn-small {
    min-height: 32px !important;
    padding: 7px 10px !important;
    font-size: 0.74rem !important;
}

body.crm-admin .actions .btn,
body.crm-admin .footer-actions .btn,
body.crm-admin .actions-row .btn-small,
body.crm-admin .inline-actions .btn-small,
body.crm-admin .actions-row .btn,
body.crm-admin .inline-actions .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    padding: 9px 13px !important;
    border-radius: 12px !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-align: center !important;
    text-decoration: none !important;
}

body.crm-admin .actions-row .btn-small,
body.crm-admin .inline-actions .btn-small {
    min-height: 34px !important;
    padding: 8px 11px !important;
    font-size: 0.74rem !important;
}

body.crm-admin .btn:hover,
body.crm-admin .btn-small:hover,
body.crm-admin .header-link:hover,
body.crm-admin button:hover {
    transform: translateY(-1px) !important;
}

body.crm-admin .btn-secondary,
body.crm-admin .header-link,
body.crm-admin .btn.btn-secondary {
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid var(--crm-border) !important;
    color: var(--crm-text-secondary) !important;
}

body.crm-admin[data-theme="light"] .btn-secondary,
body.crm-admin[data-theme="light"] .header-link,
body.crm-admin[data-theme="light"] .btn.btn-secondary {
    background: rgba(22, 32, 42, 0.035) !important;
}

body.crm-admin .btn-small.is-neutral {
    background: var(--crm-blue-soft) !important;
    color: var(--crm-blue-hover) !important;
    border-color: rgba(136, 175, 237, 0.35) !important;
}

body.crm-admin .btn-small.is-neutral:hover {
    background: rgba(136, 175, 237, 0.24) !important;
    color: #ffffff !important;
}

body.crm-admin .btn-small.is-warning {
    background: var(--crm-amber-soft) !important;
    border-color: rgba(245, 158, 11, 0.34) !important;
}

body.crm-admin .btn-small.is-danger {
    background: var(--crm-red-soft) !important;
    border-color: rgba(239, 68, 68, 0.32) !important;
}

body.crm-admin .chip,
body.crm-admin .preset-chip,
body.crm-admin .legend-pill {
    min-height: 34px !important;
    padding: 7px 11px !important;
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.045) !important;
    color: var(--crm-text-secondary) !important;
}

body.crm-admin .chip:hover,
body.crm-admin .preset-chip:hover {
    background: rgba(136, 175, 237, 0.11) !important;
    border-color: rgba(136, 175, 237, 0.42) !important;
    color: var(--crm-text-primary) !important;
}

body.crm-admin .chip.is-active,
body.crm-admin .preset-chip.is-active {
    background: rgba(37, 211, 102, 0.16) !important;
    border-color: rgba(37, 211, 102, 0.38) !important;
    color: #dffbe8 !important;
}

body.crm-admin[data-theme="light"] .chip.is-active,
body.crm-admin[data-theme="light"] .preset-chip.is-active {
    color: #0d5330 !important;
}

body.crm-admin input,
body.crm-admin select,
body.crm-admin textarea {
    min-height: 40px !important;
    padding: 10px 12px !important;
    font-size: 0.84rem !important;
    background: rgba(255, 255, 255, 0.04) !important;
}

body.crm-admin[data-theme="light"] input,
body.crm-admin[data-theme="light"] select,
body.crm-admin[data-theme="light"] textarea {
    background: rgba(22, 32, 42, 0.03) !important;
    color: #16202a !important;
}

body.crm-admin label {
    font-size: 0.74rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: var(--crm-text-tertiary) !important;
}

body.crm-admin .crm-help {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    margin-left: 6px !important;
    border-radius: 999px !important;
    background: #0f1216 !important;
    color: #ffffff !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    cursor: help !important;
    vertical-align: middle !important;
}

body.crm-admin .crm-tooltip {
    position: fixed !important;
    z-index: 10000 !important;
    max-width: 260px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: #0f1216 !important;
    color: #ffffff !important;
    font-size: 0.76rem !important;
    line-height: 1.4 !important;
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.24) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate3d(0, 6px, 0) !important;
    transition: opacity 0.15s ease, transform 0.15s ease !important;
}

body.crm-admin .crm-tooltip.is-visible {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
}

body.crm-admin .crm-tooltip::after {
    content: '' !important;
    position: absolute !important;
    left: 14px !important;
    bottom: -6px !important;
    width: 12px !important;
    height: 12px !important;
    background: #0f1216 !important;
    transform: rotate(45deg) !important;
}

body.crm-admin table {
    font-size: 0.82rem !important;
}

body.crm-admin thead th {
    padding: 11px 13px !important;
    font-size: 0.69rem !important;
}

body.crm-admin tbody tr {
    background: transparent !important;
}

body.crm-admin tbody tr:hover {
    background: rgba(255, 255, 255, 0.02) !important;
}

body.crm-admin td {
    padding: 12px 13px !important;
    vertical-align: top !important;
}

body.crm-admin .crm-status {
    min-height: 30px !important;
    padding: 6px 10px !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.01em !important;
}

body.crm-admin .crm-status--green {
    background: rgba(37, 211, 102, 0.12) !important;
    color: #d8ffe7 !important;
    border-color: rgba(37, 211, 102, 0.22) !important;
}

body.crm-admin .crm-status--yellow {
    background: rgba(245, 158, 11, 0.12) !important;
    color: #f8d68c !important;
    border-color: rgba(245, 158, 11, 0.22) !important;
}

body.crm-admin .crm-status--red {
    background: rgba(239, 68, 68, 0.12) !important;
    color: #ffb7b7 !important;
    border-color: rgba(239, 68, 68, 0.2) !important;
}

body.crm-admin .crm-status--blue {
    background: rgba(136, 175, 237, 0.12) !important;
    color: #cfe0ff !important;
    border-color: rgba(136, 175, 237, 0.2) !important;
}

body.crm-admin .crm-status--orange {
    background: rgba(242, 140, 56, 0.12) !important;
    color: #ffd2ab !important;
    border-color: rgba(242, 140, 56, 0.22) !important;
}

body.crm-admin .crm-status--orange .crm-status__dot {
    background: var(--crm-orange) !important;
}

body.crm-admin[data-theme="light"] .crm-status--green {
    color: #0b6f34 !important;
}

body.crm-admin[data-theme="light"] .crm-status--yellow {
    color: #8c5a00 !important;
}

body.crm-admin[data-theme="light"] .crm-status--red {
    color: #991b1b !important;
}

body.crm-admin[data-theme="light"] .crm-status--blue {
    color: #355ea5 !important;
}

body.crm-admin[data-theme="light"] .crm-status--orange {
    color: #995520 !important;
}

body.crm-admin .dashboard-header,
body.crm-admin .topbar {
    gap: 14px !important;
    margin-bottom: 18px !important;
}

body.crm-admin .dashboard-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    padding: 6px 2px 2px !important;
}

body.crm-admin .dashboard-header-user {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
}

body.crm-admin .user-info {
    text-align: right !important;
}

body.crm-admin .user-name {
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    color: var(--crm-text-primary) !important;
}

body.crm-admin .user-role {
    font-size: 0.72rem !important;
    color: var(--crm-text-tertiary) !important;
    letter-spacing: 0.08em !important;
}

body.crm-admin .dashboard-header h1,
body.crm-admin .topbar h1 {
    font-size: 1.2rem !important;
}

body.crm-admin .header-links,
body.crm-admin .actions,
body.crm-admin .filter-actions,
body.crm-admin .action-buttons,
body.crm-admin .finance-actions {
    gap: 8px !important;
}

body.crm-admin .header-links {
    display: flex !important;
    flex-wrap: wrap !important;
}

body.crm-admin .stats-grid,
body.crm-admin .cards {
    gap: 14px !important;
}

body.crm-admin .filters-grid,
body.crm-admin .filters {
    gap: 12px !important;
}

body.crm-admin .quick-edit-grid,
body.crm-admin .finance-actions {
    gap: 7px !important;
}

body.crm-admin .finance-actions {
    margin-top: 10px !important;
}

body.crm-admin .finance-actions--stacked .btn-small {
    margin-top: 0 !important;
}

body.crm-admin .cell-sub + .finance-actions {
    margin-top: 12px !important;
}

body.crm-admin .cell-sub--id {
    opacity: 0.72 !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.04em !important;
}

body.crm-admin .finance-actions form,
body.crm-admin .action-buttons a,
body.crm-admin .action-buttons button {
    margin: 0 !important;
}

body.crm-admin .quick-select,
body.crm-admin .quick-input {
    min-height: 34px !important;
    padding: 8px 10px !important;
    font-size: 0.78rem !important;
}

body.crm-admin .quick-save {
    width: 100% !important;
}

body.crm-admin .section-heading {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    margin-bottom: 12px !important;
}

body.crm-admin .section-heading h2 {
    font-size: 0.98rem !important;
}

body.crm-admin .crm-chart-meta,
body.crm-admin .legend-row,
body.crm-admin .chips {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

body.crm-admin .chart-box {
    margin-top: 14px !important;
    padding: 14px !important;
    border-radius: 16px !important;
    border: 1px solid var(--crm-border) !important;
    background: rgba(255, 255, 255, 0.02) !important;
}

body.crm-admin .crm-chart-shell {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    align-items: start !important;
}

body.crm-admin .crm-chart-main {
    min-width: 0 !important;
}

body.crm-admin .crm-chart-caption {
    margin-top: 6px !important;
    color: var(--crm-text-tertiary) !important;
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
}

body.crm-admin .crm-chart-rail {
    display: grid !important;
    gap: 12px !important;
    min-width: 0 !important;
    grid-template-columns: minmax(220px, 1.1fr) minmax(0, 1.45fr) minmax(220px, 1fr) !important;
    align-items: start !important;
}

body.crm-admin .crm-chart-rail__intro,
body.crm-admin .crm-chart-kpi,
body.crm-admin .crm-chart-bullet {
    border: 1px solid var(--crm-border) !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border-radius: 16px !important;
}

body.crm-admin .crm-chart-rail__intro {
    display: grid !important;
    gap: 6px !important;
    padding: 14px !important;
}

body.crm-admin .crm-chart-rail__eyebrow,
body.crm-admin .crm-chart-kpi__label {
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--crm-text-tertiary) !important;
}

body.crm-admin .crm-chart-rail__intro strong,
body.crm-admin .crm-chart-kpi__value,
body.crm-admin .crm-chart-bullet strong {
    color: var(--crm-text-primary) !important;
}

body.crm-admin .crm-chart-rail__intro strong {
    font-size: 0.98rem !important;
}

body.crm-admin .crm-chart-rail__intro span:last-child,
body.crm-admin .crm-chart-kpi__meta,
body.crm-admin .crm-chart-bullet span {
    color: var(--crm-text-secondary) !important;
    font-size: 0.78rem !important;
    line-height: 1.45 !important;
}

body.crm-admin .crm-chart-kpis {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.crm-admin .crm-chart-kpi {
    display: grid !important;
    gap: 6px !important;
    padding: 14px !important;
    align-content: start !important;
}

body.crm-admin .crm-chart-kpi__value {
    font-size: 1.15rem !important;
    line-height: 1.1 !important;
}

body.crm-admin .crm-chart-kpi__value.is-positive {
    color: var(--crm-green) !important;
}

body.crm-admin .crm-chart-kpi__value.is-negative {
    color: #ff9b9b !important;
}

body.crm-admin .crm-chart-kpi__value.is-neutral {
    color: var(--crm-blue) !important;
}

body.crm-admin .crm-chart-bullets {
    display: grid !important;
    gap: 10px !important;
}

body.crm-admin .crm-chart-rail__intro,
body.crm-admin .crm-chart-bullets {
    height: 100% !important;
    align-content: start !important;
}

body.crm-admin .crm-chart-bullet {
    display: grid !important;
    grid-template-columns: 12px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    padding: 13px 14px !important;
}

body.crm-admin .crm-chart-bullet__dot {
    width: 12px !important;
    height: 12px !important;
    border-radius: 999px !important;
    margin-top: 4px !important;
    display: inline-block !important;
}

body.crm-admin[data-theme="light"] .chart-box {
    background: rgba(22, 32, 42, 0.025) !important;
}

body.crm-admin[data-theme="light"] .crm-chart-rail__intro,
body.crm-admin[data-theme="light"] .crm-chart-kpi,
body.crm-admin[data-theme="light"] .crm-chart-bullet {
    background: rgba(22, 32, 42, 0.025) !important;
}

body.crm-admin .crm-chart-svg {
    overflow: visible !important;
}

body.crm-admin .crm-analytics-donut-layout {
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
    flex-wrap: wrap !important;
}

body.crm-admin .crm-analytics-donut-legend {
    display: grid !important;
    gap: 12px !important;
    min-width: 220px !important;
}

body.crm-admin .crm-chart-point {
    transition: transform 0.14s ease, stroke-width 0.14s ease !important;
    cursor: pointer !important;
    stroke: rgba(255, 255, 255, 0.9) !important;
    stroke-width: 2px !important;
}

body.crm-admin[data-theme="light"] .crm-chart-point {
    stroke: rgba(22, 32, 42, 0.8) !important;
}

body.crm-admin .crm-chart-point:hover,
body.crm-admin .crm-chart-point:focus {
    transform: scale(1.1) !important;
    outline: none !important;
}

body.crm-admin .crm-chart-axis {
    display: flex !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 10px !important;
    font-size: 0.74rem !important;
    color: var(--crm-text-tertiary) !important;
}

body.crm-admin .insight-list {
    display: grid !important;
    gap: 10px !important;
}

body.crm-admin .insight-item {
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid var(--crm-border) !important;
    background: rgba(255, 255, 255, 0.03) !important;
    color: var(--crm-text-secondary) !important;
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
    margin-bottom: 6px !important;
}

body.crm-admin .bar-track {
    height: 8px !important;
}

body.crm-admin .bar-meta {
    font-size: 0.8rem !important;
}

body.crm-admin .crm-heatmap {
    display: grid !important;
    grid-template-columns: 84px repeat(24, minmax(14px, 1fr)) !important;
    gap: 5px !important;
    align-items: center !important;
    overflow-x: auto !important;
    padding-bottom: 6px !important;
}

body.crm-admin .crm-heatmap__header,
body.crm-admin .crm-heatmap__label {
    font-size: 0.68rem !important;
    color: var(--crm-text-tertiary) !important;
}

body.crm-admin .crm-heatmap__cell {
    width: 100% !important;
    min-width: 14px !important;
    height: 18px !important;
    border-radius: 6px !important;
    border: 1px solid rgba(255, 255, 255, 0.03) !important;
}

body.crm-admin .notice {
    font-size: 0.82rem !important;
}

body.crm-admin .crm-global-footer {
    padding: 22px 4px 28px !important;
    text-align: center !important;
}

body.crm-admin .crm-global-footer small {
    color: var(--crm-text-muted) !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.02em !important;
}

body.crm-admin .crm-appbar__user {
    display: none !important;
}

body.crm-admin .crm-appbar__logo {
    width: 68px !important;
    height: 68px !important;
}

body.crm-admin .action-buttons--lead {
    align-items: center !important;
}

body.crm-admin .btn-action {
    position: relative !important;
}

body.crm-admin .btn-action::before {
    content: none !important;
}

body.crm-admin .crm-page--analytics .topbar > div:first-child > div,
body.crm-admin .crm-page--analytics .card > div[style*="color:#9da3ae"],
body.crm-admin .crm-page--analytics .card > div[style*="color: #9da3ae"] {
    color: var(--crm-text-tertiary) !important;
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
}

body.crm-admin .crm-page--analytics .card h2,
body.crm-admin .crm-page--analytics .section-heading h2 {
    font-size: 1rem !important;
}

body.crm-admin .crm-page--analytics svg text {
    fill: currentColor !important;
}

body.crm-admin .crm-page--analytics .legend-pill strong,
body.crm-admin .crm-page--analytics .bar-meta strong {
    color: var(--crm-text-primary) !important;
}

body.crm-admin[data-theme="light"] .crm-page--analytics .notice-success {
    background: rgba(37, 211, 102, 0.12) !important;
    color: #0c6c34 !important;
}

body.crm-admin[data-theme="light"] .crm-page--analytics .notice-error {
    background: rgba(239, 68, 68, 0.12) !important;
    color: #9f1d29 !important;
}

body.crm-admin .pagination a,
body.crm-admin .pagination span {
    min-height: 34px !important;
    font-size: 0.78rem !important;
}

@media (max-width: 1100px) {
    body.crm-admin .stats-grid,
    body.crm-admin .cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.crm-admin .grid {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin .crm-chart-shell,
    body.crm-admin .crm-chart-rail,
    body.crm-admin .crm-chart-kpis {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 860px) {
    body.crm-admin .crm-appbar {
        padding: 14px !important;
    }

    body.crm-admin .crm-appbar__actions {
        width: 100% !important;
        justify-content: flex-start !important;
    }

    body.crm-admin .dashboard-header,
    body.crm-admin .topbar {
        grid-template-columns: 1fr !important;
        display: grid !important;
    }

    body.crm-admin .dashboard-header-user {
        justify-content: flex-start !important;
    }

    body.crm-admin .user-info {
        text-align: left !important;
    }

    body.crm-admin .stats-grid,
    body.crm-admin .cards,
    body.crm-admin .filters-grid,
    body.crm-admin .filters {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin .table-wrapper {
        overflow: visible !important;
    }

    body.crm-admin .crm-page--dashboard table,
    body.crm-admin .crm-page--dashboard thead,
    body.crm-admin .crm-page--dashboard tbody,
    body.crm-admin .crm-page--dashboard tr,
    body.crm-admin .crm-page--dashboard td {
        display: block !important;
        width: 100% !important;
    }

    body.crm-admin .crm-page--dashboard thead {
        display: none !important;
    }

    body.crm-admin .crm-page--dashboard tbody tr {
        margin-bottom: 12px !important;
        padding: 12px !important;
        border: 1px solid var(--crm-border) !important;
        border-radius: 16px !important;
        background: var(--crm-surface-strong) !important;
        box-shadow: var(--crm-shadow-sm) !important;
    }

    body.crm-admin .crm-page--dashboard td {
        padding: 10px 0 !important;
        border-bottom: 1px dashed rgba(255, 255, 255, 0.12) !important;
        border-radius: 12px !important;
        background: transparent !important;
    }

    body.crm-admin[data-theme="light"] .crm-page--dashboard td {
        border-bottom-color: rgba(22, 32, 42, 0.1) !important;
    }

    body.crm-admin .crm-page--dashboard td:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    body.crm-admin .crm-page--dashboard td:nth-child(odd) {
        background: rgba(255, 255, 255, 0.035) !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.crm-admin[data-theme="light"] .crm-page--dashboard td:nth-child(odd) {
        background: rgba(22, 32, 42, 0.03) !important;
    }

    body.crm-admin .crm-page--dashboard td:nth-child(even) {
        background: rgba(255, 255, 255, 0.065) !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.crm-admin[data-theme="light"] .crm-page--dashboard td:nth-child(even) {
        background: rgba(255, 255, 255, 0.9) !important;
    }

    body.crm-admin .crm-page--dashboard td::before {
        content: attr(data-label) !important;
        display: block !important;
        margin-bottom: 7px !important;
        font-size: 0.68rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        color: var(--crm-text-tertiary) !important;
    }

    body.crm-admin .crm-page--dashboard tbody td:nth-child(1)::before { content: "Data" !important; }
    body.crm-admin .crm-page--dashboard tbody td:nth-child(2)::before { content: "Lead" !important; }
    body.crm-admin .crm-page--dashboard tbody td:nth-child(3)::before { content: "Contato" !important; }
    body.crm-admin .crm-page--dashboard tbody td:nth-child(4)::before { content: "Origem / Ads" !important; }
    body.crm-admin .crm-page--dashboard tbody td:nth-child(5)::before { content: "Pipeline" !important; }
    body.crm-admin .crm-page--dashboard tbody td:nth-child(6)::before { content: "Próximo passo" !important; }
    body.crm-admin .crm-page--dashboard tbody td:nth-child(7)::before { content: "Financeiro" !important; }
    body.crm-admin .crm-page--dashboard tbody td:nth-child(8)::before { content: "Ações" !important; }

    body.crm-admin .crm-page--dashboard .action-buttons,
    body.crm-admin .crm-page--dashboard .finance-actions,
    body.crm-admin .crm-page--dashboard .filter-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    body.crm-admin .crm-page--dashboard .action-buttons--lead {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 72px)) !important;
        gap: 8px !important;
        justify-content: flex-start !important;
    }

    body.crm-admin .crm-page--dashboard .action-buttons .btn-small,
    body.crm-admin .crm-page--dashboard .finance-actions .btn-small,
    body.crm-admin .crm-page--dashboard .filter-actions .btn,
    body.crm-admin .crm-page--dashboard .filter-actions .btn-secondary {
        width: 100% !important;
    }

    body.crm-admin .crm-page--dashboard .action-buttons--lead .btn-action {
        width: auto !important;
        min-width: 72px !important;
        min-height: 36px !important;
        padding: 8px 10px !important;
        border-radius: 12px !important;
        font-size: 0.72rem !important;
    }

    body.crm-admin .crm-page--analytics .legend-row,
    body.crm-admin .crm-page--analytics .chips,
    body.crm-admin .crm-page--analytics .crm-chart-meta {
        gap: 6px !important;
    }

    body.crm-admin .crm-chart-rail {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin .crm-chart-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.crm-admin .crm-heatmap {
        grid-template-columns: 72px repeat(24, minmax(12px, 1fr)) !important;
    }
}

@media (max-width: 560px) {
    body.crm-admin .container {
        padding: 0 12px !important;
    }

    body.crm-admin .crm-appbar {
        margin-left: 12px !important;
        margin-right: 12px !important;
        width: auto !important;
    }

    body.crm-admin .crm-appbar__brand {
        gap: 12px !important;
    }

    body.crm-admin .crm-appbar__logo {
        width: 58px !important;
        height: 58px !important;
    }

    body.crm-admin .crm-appbar__title-row h1 {
        font-size: 1rem !important;
    }

    body.crm-admin .crm-theme-toggle,
    body.crm-admin .crm-layout-toggle {
        min-width: 0 !important;
        flex: 1 1 calc(50% - 5px) !important;
    }

    body.crm-admin .chart-box {
        padding: 10px !important;
    }

    body.crm-admin .crm-help {
        width: 22px !important;
        height: 22px !important;
        font-size: 0.78rem !important;
    }

    body.crm-admin .crm-chart-kpis {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin .crm-chart-bullet {
        grid-template-columns: 10px minmax(0, 1fr) !important;
        padding: 12px !important;
    }

    body.crm-admin .crm-chart-axis,
    body.crm-admin .mini-note,
    body.crm-admin .card-sub,
    body.crm-admin .stat-card-subtitle,
    body.crm-admin .insight-item,
    body.crm-admin .bar-meta {
        font-size: 0.74rem !important;
    }
}

body.crm-admin .crm-layout-toggle,
body.crm-admin .crm-theme-toggle {
    color: #edf4ff !important;
}

body.crm-admin .crm-layout-toggle:hover,
body.crm-admin .crm-theme-toggle:hover {
    background: rgba(136, 175, 237, 0.14) !important;
    border-color: rgba(136, 175, 237, 0.34) !important;
}

body.crm-admin[data-theme="light"] .crm-layout-toggle,
body.crm-admin[data-theme="light"] .crm-theme-toggle {
    color: #16202a !important;
}

body.crm-admin[data-theme="light"] .stat-card-value,
body.crm-admin[data-theme="light"] .card-value,
body.crm-admin[data-theme="light"] .stat-card .text-danger,
body.crm-admin[data-theme="light"] .crm-page--analytics .card strong,
body.crm-admin[data-theme="light"] .crm-page--analytics .legend-pill,
body.crm-admin[data-theme="light"] .crm-page--analytics .bar-meta {
    color: #16202a !important;
}

body.crm-admin .finance-actions--stacked {
    margin-top: 14px !important;
    row-gap: 10px !important;
}

body.crm-admin .finance-actions--stacked form + form {
    margin-top: 0 !important;
}

body.crm-admin .finance-actions--stacked + .cell-sub,
body.crm-admin .finance-actions--stacked + .mini-note {
    margin-top: 10px !important;
}

body.crm-admin [id^="lead-row-"] {
    scroll-margin-top: 96px !important;
}

body.crm-admin .crm-chart-hitarea {
    cursor: pointer !important;
}

body.crm-admin .crm-hour-distribution {
    display: grid !important;
    gap: 12px !important;
}

body.crm-admin .crm-hour-grid {
    display: grid !important;
    gap: 6px !important;
}

body.crm-admin .crm-hour-row {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) 34px !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 4px 0 !important;
}

body.crm-admin .crm-hour-label,
body.crm-admin .crm-hour-value {
    font-size: 0.74rem !important;
    color: var(--crm-text-secondary) !important;
}

body.crm-admin .crm-hour-value {
    text-align: right !important;
    color: var(--crm-text-primary) !important;
}

body.crm-admin .crm-hour-track {
    display: block !important;
    width: 100% !important;
    height: 8px !important;
    border-radius: 999px !important;
    background: rgba(127, 127, 127, 0.14) !important;
    overflow: hidden !important;
}

body.crm-admin .crm-hour-fill {
    display: block !important;
    height: 100% !important;
    border-radius: inherit !important;
    background: linear-gradient(90deg, rgba(136, 175, 237, 0.92), rgba(37, 211, 102, 0.92)) !important;
}

body.crm-admin .crm-hour-best {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

body.crm-admin .crm-hour-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid var(--crm-border) !important;
    color: var(--crm-text-secondary) !important;
    font-size: 0.74rem !important;
}

body.crm-admin[data-theme="light"] .crm-hour-pill {
    background: rgba(22, 32, 42, 0.04) !important;
}

body.crm-admin .crm-specialty-donut {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    gap: 18px !important;
    margin-top: 18px !important;
    align-items: center !important;
}

body.crm-admin .crm-specialty-donut__legend {
    display: grid !important;
    gap: 10px !important;
}

body.crm-admin .crm-specialty-donut__legend .legend-pill {
    justify-content: flex-start !important;
}

body.crm-admin .crm-page--dashboard td .cell-title,
body.crm-admin .crm-page--dashboard td .cell-sub {
    word-break: break-word !important;
}

@media (max-width: 920px) {
    body.crm-admin .crm-page--dashboard tbody tr {
        position: relative !important;
        overflow: hidden !important;
    }

    body.crm-admin .crm-page--dashboard td {
        border-bottom: 1px dashed rgba(255, 255, 255, 0.16) !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body.crm-admin .crm-page--dashboard td:nth-child(odd) {
        background: rgba(255, 255, 255, 0.035) !important;
        border-left: 3px solid rgba(136, 175, 237, 0.28) !important;
    }

    body.crm-admin .crm-page--dashboard td:nth-child(even) {
        background: rgba(255, 255, 255, 0.07) !important;
        border-left: 3px solid rgba(37, 211, 102, 0.18) !important;
    }

    body.crm-admin[data-theme="light"] .crm-page--dashboard td:nth-child(odd) {
        background: rgba(22, 32, 42, 0.03) !important;
        border-left-color: rgba(136, 175, 237, 0.42) !important;
    }

    body.crm-admin[data-theme="light"] .crm-page--dashboard td:nth-child(even) {
        background: rgba(255, 255, 255, 0.92) !important;
        border-left-color: rgba(37, 211, 102, 0.24) !important;
    }

    body.crm-admin .crm-page--dashboard .action-buttons--lead {
        grid-template-columns: repeat(3, minmax(0, 60px)) !important;
    }

    body.crm-admin .crm-page--dashboard .action-buttons--lead .btn-action {
        min-width: 60px !important;
        padding: 7px 8px !important;
        font-size: 0.7rem !important;
    }
}

@media (max-width: 720px) {
    body.crm-admin .crm-specialty-donut {
        grid-template-columns: 1fr !important;
        justify-items: center !important;
    }

    body.crm-admin .crm-hour-row {
        grid-template-columns: 40px minmax(0, 1fr) 30px !important;
    }

    body.crm-admin .actions,
    body.crm-admin .footer-actions,
    body.crm-admin .actions-row,
    body.crm-admin .inline-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    body.crm-admin .actions .btn,
    body.crm-admin .footer-actions .btn,
    body.crm-admin .actions-row .btn-small,
    body.crm-admin .inline-actions .btn-small,
    body.crm-admin .actions-row .btn,
    body.crm-admin .inline-actions .btn {
        width: 100% !important;
    }
}

/* Heatmap override final: desktop usa bem o espaço, mobile rola horizontalmente */
body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 8px !important;
    -webkit-overflow-scrolling: touch !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    grid-template-columns: 78px repeat(24, minmax(18px, 1fr)) !important;
    gap: 6px !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap__cell {
    min-width: 18px !important;
    height: 20px !important;
}

@media (max-width: 768px) {
    body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
        display: inline-grid !important;
        width: max-content !important;
        min-width: 780px !important;
        grid-template-columns: 62px repeat(24, 24px) !important;
    }
}

@media (max-width: 560px) {
    body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
        min-width: 744px !important;
        grid-template-columns: 54px repeat(24, 22px) !important;
    }
}

body.crm-admin .crm-analytics-split,
body.crm-admin .crm-analytics-panel,
body.crm-admin .crm-analytics-card--objections,
body.crm-admin .crm-analytics-scroll {
    min-width: 0 !important;
}

body.crm-admin .crm-analytics-scroll {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 4px !important;
    scrollbar-width: thin !important;
    max-width: 100% !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-x: contain !important;
}

body.crm-admin .crm-page--analytics .bar-row {
    min-width: 0 !important;
}

body.crm-admin .crm-page--analytics .bar-meta {
    min-width: 0 !important;
    align-items: flex-start !important;
}

body.crm-admin .crm-page--analytics .bar-meta span {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

@media (max-width: 920px) {
    body.crm-admin .crm-page--dashboard tbody tr {
        margin-bottom: 18px !important;
        padding: 14px !important;
        border-radius: 18px !important;
        box-shadow: 0 18px 32px rgba(0, 0, 0, 0.18) !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.025)) !important;
    }

    body.crm-admin .crm-page--dashboard td {
        border-bottom: 0 !important;
        border-left: 0 !important;
        padding: 12px !important;
        background: transparent !important;
    }

    body.crm-admin .crm-page--dashboard td + td {
        margin-top: 8px !important;
        padding-top: 14px !important;
        border-top: 1px dashed rgba(255, 255, 255, 0.16) !important;
    }

    body.crm-admin[data-theme="light"] .crm-page--dashboard td + td {
        border-top-color: rgba(22, 32, 42, 0.14) !important;
    }

    body.crm-admin .crm-page--dashboard td::before {
        margin-bottom: 8px !important;
        padding-bottom: 6px !important;
        border-bottom: 1px dotted rgba(255, 255, 255, 0.1) !important;
    }

    body.crm-admin[data-theme="light"] .crm-page--dashboard td::before {
        border-bottom-color: rgba(22, 32, 42, 0.1) !important;
    }

    body.crm-admin .crm-page--dashboard td .cell-title,
    body.crm-admin .crm-page--dashboard td .cell-sub,
    body.crm-admin .crm-page--dashboard td .cell-inline,
    body.crm-admin .crm-page--dashboard td .mini-note {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }

    body.crm-admin .crm-page--dashboard .action-buttons--lead {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        gap: 8px !important;
    }

    body.crm-admin .crm-page--dashboard .action-buttons--lead .btn-action,
    body.crm-admin .crm-page--dashboard .action-buttons--lead .inline-action-form,
    body.crm-admin .crm-page--dashboard .action-buttons--lead .inline-action-form .btn-small {
        width: 100% !important;
        min-width: 0 !important;
    }

    body.crm-admin .crm-page--dashboard .quick-save {
        min-height: 38px !important;
    }
}

@media (max-width: 720px) {
    body.crm-admin .crm-analytics-split {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin .crm-analytics-scroll--heatmap .crm-heatmap {
        min-width: 560px !important;
    }

    body.crm-admin .crm-analytics-scroll .bar-row,
    body.crm-admin .crm-analytics-scroll .crm-hour-row {
        min-width: 240px !important;
    }
}

@media (max-width: 560px) {
    body.crm-admin .crm-analytics-scroll--heatmap .crm-heatmap {
        min-width: 520px !important;
    }

    body.crm-admin .crm-analytics-card--objections .crm-analytics-scroll .bar-row,
    body.crm-admin .crm-analytics-panel .crm-analytics-scroll .bar-row,
    body.crm-admin .crm-analytics-panel .crm-analytics-scroll .crm-hour-row {
        min-width: 280px !important;
    }
}

@media (max-width: 560px) {
    body.crm-admin .crm-appbar__actions {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    body.crm-admin .crm-appbar__custom-actions {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    body.crm-admin .crm-appbar__custom-actions .btn,
    body.crm-admin .crm-doc-link,
    body.crm-admin .crm-theme-toggle,
    body.crm-admin .crm-layout-toggle {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
    }
}

/* ================================================================
   REAL PAGE CLASS FIXES
   ================================================================ */

body.crm-admin.crm-dashboard-page .action-buttons--lead .btn-action,
body.crm-admin.crm-dashboard-page .action-buttons .btn-small,
body.crm-admin.crm-dashboard-page .finance-actions .btn-small,
body.crm-admin.crm-dashboard-page .filter-actions .btn,
body.crm-admin.crm-dashboard-page .filter-actions .btn-secondary,
body.crm-admin.crm-dashboard-page .quick-save {
    min-height: 38px !important;
    padding: 9px 12px !important;
    border-radius: 12px !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

body.crm-admin.crm-dashboard-page .action-buttons--lead .btn-action,
body.crm-admin.crm-dashboard-page .quick-save {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

@media (max-width: 920px) {
    body.crm-admin.crm-dashboard-page table,
    body.crm-admin.crm-dashboard-page thead,
    body.crm-admin.crm-dashboard-page tbody,
    body.crm-admin.crm-dashboard-page tr,
    body.crm-admin.crm-dashboard-page td {
        display: block !important;
        width: 100% !important;
    }

    body.crm-admin.crm-dashboard-page thead {
        display: none !important;
    }

    body.crm-admin.crm-dashboard-page tbody tr {
        position: relative !important;
        overflow: hidden !important;
        margin-bottom: 18px !important;
        padding: 14px !important;
        border-radius: 18px !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.025)) !important;
        box-shadow: 0 18px 32px rgba(0, 0, 0, 0.18) !important;
    }

    body.crm-admin[data-theme="light"].crm-dashboard-page tbody tr {
        border-color: rgba(22, 32, 42, 0.1) !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96)) !important;
    }

    body.crm-admin.crm-dashboard-page td {
        border: 0 !important;
        padding: 12px !important;
        background: transparent !important;
    }

    body.crm-admin.crm-dashboard-page td + td {
        margin-top: 8px !important;
        padding-top: 14px !important;
        border-top: 1px dashed rgba(255, 255, 255, 0.16) !important;
    }

    body.crm-admin[data-theme="light"].crm-dashboard-page td + td {
        border-top-color: rgba(22, 32, 42, 0.14) !important;
    }

    body.crm-admin.crm-dashboard-page td::before {
        display: block !important;
        margin-bottom: 8px !important;
        padding-bottom: 6px !important;
        border-bottom: 1px dotted rgba(255, 255, 255, 0.1) !important;
        font-size: 0.68rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        color: var(--crm-text-tertiary) !important;
    }

    body.crm-admin[data-theme="light"].crm-dashboard-page td::before {
        border-bottom-color: rgba(22, 32, 42, 0.1) !important;
    }

    body.crm-admin.crm-dashboard-page tbody td:nth-child(1)::before { content: "Data" !important; }
    body.crm-admin.crm-dashboard-page tbody td:nth-child(2)::before { content: "Lead" !important; }
    body.crm-admin.crm-dashboard-page tbody td:nth-child(3)::before { content: "Contato" !important; }
    body.crm-admin.crm-dashboard-page tbody td:nth-child(4)::before { content: "Origem / Ads" !important; }
    body.crm-admin.crm-dashboard-page tbody td:nth-child(5)::before { content: "Pipeline" !important; }
    body.crm-admin.crm-dashboard-page tbody td:nth-child(6)::before { content: "Proximo passo" !important; }
    body.crm-admin.crm-dashboard-page tbody td:nth-child(7)::before { content: "Financeiro" !important; }
    body.crm-admin.crm-dashboard-page tbody td:nth-child(8)::before { content: "Acoes" !important; }

    body.crm-admin.crm-dashboard-page td .cell-title,
    body.crm-admin.crm-dashboard-page td .cell-sub,
    body.crm-admin.crm-dashboard-page td .cell-inline,
    body.crm-admin.crm-dashboard-page td .mini-note {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
    }

    body.crm-admin.crm-dashboard-page .action-buttons--lead {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
    }

    body.crm-admin.crm-dashboard-page .action-buttons--lead .btn-action,
    body.crm-admin.crm-dashboard-page .action-buttons--lead .inline-action-form,
    body.crm-admin.crm-dashboard-page .action-buttons--lead .inline-action-form .btn-small,
    body.crm-admin.crm-dashboard-page .action-buttons .btn-small,
    body.crm-admin.crm-dashboard-page .finance-actions .btn-small,
    body.crm-admin.crm-dashboard-page .filter-actions .btn,
    body.crm-admin.crm-dashboard-page .filter-actions .btn-secondary,
    body.crm-admin.crm-dashboard-page .quick-save {
        width: 100% !important;
        min-width: 0 !important;
    }
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    max-width: 100% !important;
    padding-bottom: 4px !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-x: contain !important;
    scrollbar-width: thin !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll .bar-row,
body.crm-admin.crm-analytics-page .crm-analytics-scroll .crm-hour-row {
    min-width: 0 !important;
}

@media (max-width: 720px) {
    body.crm-admin.crm-analytics-page .crm-analytics-split {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-scroll--chart .chart-box {
        min-width: 720px !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
        min-width: 560px !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-scroll .bar-row,
    body.crm-admin.crm-analytics-page .crm-analytics-scroll .crm-hour-row {
        min-width: 240px !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-donut-layout {
        align-items: flex-start !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-donut-legend {
        min-width: 0 !important;
        width: 100% !important;
    }
}

@media (max-width: 560px) {
    body.crm-admin.crm-analytics-page .crm-analytics-scroll--chart .chart-box {
        min-width: 680px !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
        min-width: 520px !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-card--objections .crm-analytics-scroll .bar-row,
    body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .bar-row,
    body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .crm-hour-row {
        min-width: 280px !important;
    }
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll {
    padding-bottom: 8px !important;
}

body.crm-admin.crm-analytics-page .grid,
body.crm-admin.crm-analytics-page .crm-chart-shell,
body.crm-admin.crm-analytics-page .crm-chart-main {
    align-items: start !important;
}

body.crm-admin.crm-analytics-page .crm-chart-shell {
    grid-template-columns: 1fr !important;
}

body.crm-admin.crm-analytics-page .crm-chart-main {
    min-width: 0 !important;
}

body.crm-admin.crm-analytics-page .crm-chart-rail {
    align-self: start !important;
    position: static !important;
    top: auto !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--chart .chart-box {
    min-width: 760px !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
    width: 820px !important;
    min-width: 820px !important;
    overflow: visible !important;
    padding-right: 10px !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--objections .bar-row,
body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .bar-row,
body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .crm-hour-row {
    min-width: 520px !important;
}

body.crm-admin .header-links,
body.crm-admin .dashboard-toolbar__actions,
body.crm-admin .actions,
body.crm-admin .footer-actions,
body.crm-admin .actions-row,
body.crm-admin .inline-actions {
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

body.crm-admin .header-link,
body.crm-admin .header-links .header-link,
body.crm-admin .dashboard-toolbar__actions .header-link,
body.crm-admin a.btn,
body.crm-admin button.btn,
body.crm-admin input.btn,
body.crm-admin .actions .btn,
body.crm-admin .footer-actions .btn,
body.crm-admin .actions-row .btn,
body.crm-admin .inline-actions .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 10px 14px !important;
    border-radius: 12px !important;
    border: 1px solid var(--crm-border) !important;
    background: var(--crm-surface-2) !important;
    color: var(--crm-text-primary) !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

body.crm-admin a.btn.btn-primary,
body.crm-admin button.btn.btn-primary,
body.crm-admin .actions .btn.btn-primary,
body.crm-admin .footer-actions .btn.btn-primary {
    border-color: rgba(37, 211, 102, 0.28) !important;
    background: linear-gradient(135deg, rgba(37, 211, 102, 0.22), rgba(31, 170, 82, 0.12)) !important;
    color: #effff5 !important;
}

body.crm-admin .crm-chart-hitarea {
    cursor: pointer !important;
    pointer-events: all !important;
    fill: rgba(255, 255, 255, 0.001) !important;
    stroke: transparent !important;
}

@media (max-width: 720px) {
    body.crm-admin.crm-analytics-page .crm-chart-shell {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin.crm-analytics-page .crm-chart-rail {
        position: static !important;
        top: auto !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
        width: 820px !important;
        min-width: 820px !important;
    }
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--chart,
body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap,
body.crm-admin.crm-analytics-page .crm-analytics-scroll--objections {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-top {
    grid-template-columns: 1fr !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-side-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-side-grid > .card {
    height: 100% !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--chart .chart-box {
    min-width: 760px !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
    display: grid !important;
    display: inline-grid !important;
    width: max-content !important;
    max-width: none !important;
    min-width: 820px !important;
    grid-template-columns: 64px repeat(24, 24px) !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-scroll--objections .bar-row {
    width: 540px !important;
    min-width: 540px !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
}

body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .bar-row,
body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .crm-hour-row {
    width: 540px !important;
    min-width: 540px !important;
}

@media (max-width: 560px) {
    body.crm-admin.crm-analytics-page .crm-analytics-side-grid {
        grid-template-columns: 1fr !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-scroll--heatmap .crm-heatmap {
        width: max-content !important;
        min-width: 760px !important;
        grid-template-columns: 56px repeat(24, 22px) !important;
    }

    body.crm-admin.crm-analytics-page .crm-analytics-scroll--objections .bar-row,
    body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .bar-row,
    body.crm-admin.crm-analytics-page .crm-analytics-panel .crm-analytics-scroll .crm-hour-row {
        width: 500px !important;
        min-width: 500px !important;
    }

    body.crm-admin .header-links,
    body.crm-admin .dashboard-toolbar__actions,
    body.crm-admin .actions,
    body.crm-admin .footer-actions,
    body.crm-admin .actions-row,
    body.crm-admin .inline-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
    }

    body.crm-admin .header-link,
    body.crm-admin a.btn,
    body.crm-admin button.btn,
    body.crm-admin input.btn,
    body.crm-admin .actions .btn,
    body.crm-admin .footer-actions .btn,
    body.crm-admin .actions-row .btn,
    body.crm-admin .inline-actions .btn {
        width: 100% !important;
    }
}

/* ========================================================
   DASHBOARD STYLES (Phase 1 Refactor)
   ======================================================== */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
            background: #0f0f0f;
            color: #fff;
            line-height: 1.6;
        }

        .container {
            max-width: 1400px;
            margin: 0 auto;
            padding: 20px;
        }

        /* Header */
        .dashboard-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 30px;
            padding-bottom: 20px;
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }

        .dashboard-header h1 {
            font-size: 28px;
            font-weight: 700;
        }

        .dashboard-header-user {
            display: flex;
            gap: 20px;
            align-items: center;
            flex-wrap: wrap;
        }

        .user-info {
            text-align: right;
            font-size: 14px;
        }

        .user-name {
            font-weight: 600;
            color: #25D366;
        }

        .user-role {
            font-size: 12px;
            color: #aaa;
            text-transform: uppercase;
        }

        .btn-logout {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            min-height: 46px;
            background: rgba(220, 53, 69, 0.12);
            border: 1px solid rgba(220, 53, 69, 0.3);
            color: #ff8b8b;
            padding: 10px 16px;
            border-radius: 12px;
            cursor: pointer;
            font-weight: 600;
            transition: all 0.22s ease;
            text-decoration: none;
            font-size: 13px;
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14);
            position: relative;
            overflow: hidden;
            isolation: isolate;
        }

        .btn-logout:hover {
            background: rgba(220, 53, 69, 0.2);
            border-color: rgba(255, 107, 107, 0.42);
            transform: translateY(-1px);
            box-shadow: 0 14px 28px rgba(220, 53, 69, 0.18), 0 0 18px rgba(255, 139, 139, 0.14);
            text-decoration: none;
        }

        .header-links {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
        }

        .header-link {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            min-height: 46px;
            padding: 10px 16px;
            border-radius: 12px;
            text-decoration: none;
            border: 1px solid rgba(255, 255, 255, 0.14);
            color: #fff;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.04));
            font-size: 13px;
            font-weight: 600;
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14);
            transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
            position: relative;
            overflow: hidden;
            isolation: isolate;
        }

        .header-link:hover {
            text-decoration: none;
            border-color: rgba(37, 211, 102, 0.45);
            background: linear-gradient(180deg, rgba(37, 211, 102, 0.14), rgba(37, 211, 102, 0.07));
            box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18), 0 0 18px rgba(37, 211, 102, 0.12);
            transform: translateY(-1px);
        }

        .header-link:hover::after,
        .btn-logout:hover::after {
            animation: dashboardButtonSheen 1.15s ease-out 1;
            opacity: .32;
        }

        .header-link::before,
        .btn-logout::before {
            font-family: 'Material Symbols Rounded', sans-serif;
            font-variation-settings: 'FILL' 0, 'wght' 500, 'GRAD' 0, 'opsz' 24;
            opacity: .96;
            font-size: 18px;
            line-height: 1;
            position: relative;
            z-index: 1;
        }

        .header-link::after,
        .btn-logout::after {
            content: "";
            position: absolute;
            inset: -30%;
            background: linear-gradient(115deg, transparent 40%, rgba(255,255,255,.03) 46%, rgba(255,255,255,.16) 50%, rgba(255,255,255,.03) 54%, transparent 60%);
            transform: translateX(-140%);
            animation: dashboardButtonSheen 9s ease-in-out infinite;
            pointer-events: none;
        }

        .header-link[href*="comissoes.php"]::before { content: "paid"; }
        .header-link[href*="fechamentos.php"]::before { content: "trending_up"; }
        .header-link[href*="usuarios.php"]::before { content: "group"; }
        .header-link[href*="google-ads.php"]::before { content: "query_stats"; }
        .header-link[href*="lead-create.php"]::before { content: "person_add"; }
        .header-link[href*="analytics.php"]::before { content: "query_stats"; }
        .header-link[href*="perfil.php"]::before { content: "person"; }
        .btn-logout::before { content: "logout"; }

        .header-link[href*="lead-create.php"] {
            border-color: rgba(37, 211, 102, 0.34);
            background: linear-gradient(180deg, rgba(37, 211, 102, 0.18), rgba(37, 211, 102, 0.09));
        }

        .dashboard-toolbar {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 18px;
            flex-wrap: wrap;
            margin-bottom: 24px;
        }

        .dashboard-toolbar__meta {
            max-width: 780px;
        }

        .dashboard-toolbar__actions {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
            justify-content: flex-end;
            margin-left: auto;
        }

        @keyframes dashboardButtonSheen {
            0%, 78%, 100% {
                transform: translateX(-140%);
                opacity: 0;
            }
            82% {
                opacity: .12;
            }
            92% {
                transform: translateX(140%);
                opacity: .18;
            }
        }

        /* Stats Cards */
        .stats-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 20px;
            margin-bottom: 30px;
        }

        .stat-card {
            background: rgba(45, 45, 45, 0.5);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 16px;
            padding: 24px;
            backdrop-filter: blur(10px);
        }

        .stat-card-label {
            font-size: 13px;
            color: #aaa;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            margin-bottom: 12px;
        }

        .stat-card-value {
            font-size: 32px;
            font-weight: 700;
            color: #fff;
            margin-bottom: 8px;
        }

        .stat-card-subtitle {
            font-size: 12px;
            color: #888;
        }

        .stat-card.primary {
            background: linear-gradient(135deg, rgba(37, 211, 102, 0.1), rgba(31, 170, 82, 0.1));
            border-color: rgba(37, 211, 102, 0.3);
        }

        .stat-card.primary .stat-card-value {
            color: #25D366;
        }

        /* Filtros */
        .filters-section {
            background: rgba(45, 45, 45, 0.5);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 16px;
            padding: 20px;
            margin-bottom: 30px;
            backdrop-filter: blur(10px);
        }

        .filters-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
            gap: 15px;
            margin-bottom: 15px;
        }

        .filter-group {
            display: flex;
            flex-direction: column;
        }

        .filter-group label {
            font-size: 12px;
            color: #aaa;
            margin-bottom: 6px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            font-weight: 600;
        }

        .filter-group input,
        .filter-group select {
            padding: 10px 12px;
            background: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 8px;
            color: #fff;
            font-size: 14px;
        }

        .filter-group input::placeholder {
            color: #666;
        }

        .filter-group input:focus,
        .filter-group select:focus {
            outline: none;
            background: rgba(255, 255, 255, 0.08);
            border-color: rgba(37, 211, 102, 0.5);
        }

        .filter-group select option,
        .quick-select option {
            color: #111;
            background: #fff;
        }

        .filter-presets {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
            margin-bottom: 16px;
        }

        .preset-chip {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 8px 12px;
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.08);
            border: 1px solid rgba(255, 255, 255, 0.1);
            color: #fff;
            text-decoration: none;
            font-size: 12px;
            font-weight: 600;
        }

        .preset-chip:hover {
            background: rgba(37, 211, 102, 0.18);
            border-color: rgba(37, 211, 102, 0.35);
        }

        .preset-chip.is-active {
            background: rgba(37, 211, 102, 0.22);
            border-color: rgba(37, 211, 102, 0.45);
            color: #d8ffe7;
        }

        .filter-actions {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
        }

        .btn {
            padding: 10px 16px;
            border: none;
            border-radius: 8px;
            cursor: pointer;
            font-weight: 600;
            font-size: 14px;
            transition: all 0.3s ease;
        }

        .btn-primary {
            background: linear-gradient(135deg, #58e79d, #1fb564);
            color: #fff;
            /* flex Removed to fix huge desktop width */
        }

        .btn-primary:hover {
            transform: translateY(-2px);
            box-shadow: 0 10px 30px rgba(37, 211, 102, 0.3);
        }

        .btn-secondary {
            background: rgba(255, 255, 255, 0.1);
            color: #fff;
        }

        .btn-secondary:hover {
            background: rgba(255, 255, 255, 0.15);
        }

        /* Tabela */
        .table-section {
            background: rgba(45, 45, 45, 0.5);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 16px;
            overflow: hidden;
            backdrop-filter: blur(10px);
        }

        .table-wrapper {
            overflow-x: auto;
        }

        table {
            width: 100%;
            border-collapse: collapse;
            font-size: 14px;
        }

        thead {
            background: rgba(255, 255, 255, 0.05);
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }

        th {
            padding: 16px;
            text-align: left;
            font-weight: 600;
            color: #aaa;
            text-transform: uppercase;
            font-size: 12px;
            letter-spacing: 0.5px;
        }

        th a {
            color: inherit;
            text-decoration: none;
        }

        td {
            padding: 16px;
            border-bottom: 1px solid rgba(255, 255, 255, 0.05);
            vertical-align: top;
        }

        tbody tr:hover {
            background: rgba(255, 255, 255, 0.03);
        }

        .status-badge {
            display: inline-block;
            padding: 6px 12px;
            border-radius: 20px;
            font-size: 12px;
            font-weight: 600;
            text-transform: capitalize;
        }

        .status-novo { background: rgba(100, 150, 255, 0.2); color: #64a0ff; }
        .status-interessado { background: rgba(255, 180, 50, 0.2); color: #ffb432; }
        .status-contactado { background: rgba(100, 200, 255, 0.2); color: #64c8ff; }
        .status-aguardando { background: rgba(255, 150, 100, 0.2); color: #ff9664; }
        .status-paciente_fechado { background: rgba(37, 211, 102, 0.2); color: #25D366; }
        .status-recorrente { background: rgba(100, 100, 255, 0.2); color: #7c8dff; }
        .status-perdido { background: rgba(200, 100, 100, 0.2); color: #d67c7c; }

        .action-buttons {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
        }

        .quick-edit-grid {
            display: grid;
            gap: 8px;
        }

        .quick-select,
        .quick-input {
            width: 100%;
            padding: 8px 10px;
            background: rgba(255, 255, 255, 0.06);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 8px;
            color: #fff;
            font-size: 12px;
        }

        .quick-input::placeholder {
            color: #888;
        }

        .quick-save {
            width: 100%;
        }

        .finance-actions {
            display: grid;
            gap: 8px;
            margin-top: 8px;
        }

        .btn-small {
            padding: 6px 12px;
            background: rgba(37, 211, 102, 0.15);
            border: 1px solid rgba(37, 211, 102, 0.3);
            color: #25D366;
            border-radius: 6px;
            cursor: pointer;
            font-size: 12px;
            text-decoration: none;
            transition: all 0.2s ease;
        }

        .btn-small:hover {
            background: rgba(37, 211, 102, 0.25);
        }

        .btn-small.is-danger {
            background: rgba(220, 53, 69, 0.12);
            border-color: rgba(220, 53, 69, 0.3);
            color: #ff8e99;
        }

        .btn-small.is-danger:hover {
            background: rgba(220, 53, 69, 0.2);
            color: #ffd4d8;
        }

        .inline-action-form {
            display: inline-flex;
        }

        .page-feedback {
            margin-bottom: 18px;
            padding: 14px 16px;
            border-radius: 12px;
            border: 1px solid rgba(255, 255, 255, 0.08);
            font-size: 14px;
        }

        .page-feedback--success {
            background: rgba(37, 211, 102, 0.12);
            border-color: rgba(37, 211, 102, 0.28);
            color: #d9ffe6;
        }

        .page-feedback--error {
            background: rgba(220, 53, 69, 0.12);
            border-color: rgba(220, 53, 69, 0.28);
            color: #ffd4d8;
        }

        .cell-title {
            font-weight: 600;
            color: #fff;
        }

        .cell-sub {
            display: block;
            margin-top: 4px;
            color: #9da3ae;
            font-size: 12px;
            line-height: 1.4;
        }

        .text-danger {
            color: #ff8f8f;
        }

        /* Paginacao */
        .pagination {
            display: flex;
            justify-content: center;
            gap: 10px;
            padding: 20px;
            align-items: center;
        }

        .pagination a,
        .pagination span {
            padding: 8px 12px;
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 6px;
            color: #fff;
            text-decoration: none;
            cursor: pointer;
            transition: all 0.2s ease;
        }

        .pagination a:hover {
            background: rgba(37, 211, 102, 0.2);
            border-color: rgba(37, 211, 102, 0.5);
        }

        .pagination .active {
            background: linear-gradient(135deg, #25D366, #1faa52);
            border-color: #25D366;
        }

        /* Empty State */
        .empty-state {
            text-align: center;
            padding: 60px 20px;
        }

        .empty-state-icon {
            font-size: 48px;
            margin-bottom: 20px;
            opacity: 0.5;
        }

        .empty-state-title {
            font-size: 20px;
            font-weight: 600;
            margin-bottom: 10px;
        }

        .empty-state-text {
            color: #aaa;
            font-size: 14px;
        }

        @media (max-width: 768px) {
            .dashboard-header {
                flex-direction: column;
                text-align: center;
                gap: 15px;
            }

            .filters-grid {
                grid-template-columns: 1fr;
            }

            .stats-grid {
                grid-template-columns: 1fr;
            }

            th, td {
                padding: 12px 8px;
                font-size: 12px;
            }

            .action-buttons {
                flex-direction: column;
            }

            .btn-logout {
                text-align: center;
                width: 100%;
            }

            .dashboard-toolbar__actions {
                width: 100%;
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                margin-left: 0;
            }

            .header-link {
                width: 100%;
                min-height: 58px;
                justify-content: center;
            }

            .btn-logout {
                grid-column: 1 / -1;
                min-height: 58px;
            }
        }
/* ========================================================
   LEAD EDIT & VIEW UNIQUE STYLES (Phase 3 Refactor)
   ======================================================== */
.crm-lead-edit-page .container { max-width: 1100px; }
.crm-lead-view-page .container { max-width: 1200px; }
.crm-lead-create-page .container { max-width: 800px; }

/* Grid Layouts para Edit/Create */
.form-grid { display: grid; gap: 20px; grid-template-columns: 1fr 1fr; }
.form-grid .full { grid-column: 1 / -1; }
@media (max-width: 900px) { .form-grid { grid-template-columns: 1fr; } .form-grid .full { grid-column: auto; } }

/* Específicos do formulário */
.hint-card { margin-bottom: 18px; padding: 14px 16px; border-radius: 12px; background: rgba(37,211,102,.08); border: 1px solid rgba(37,211,102,.18); color: #d8ffe7; }
.field-help { margin-top: 6px; color: #9aa3a7; font-size: 13px; }
.footer-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; flex-wrap: wrap; }

/* Específicos da View de Lead */
.card-grid { display: grid; gap: 18px; grid-template-columns: 1.2fr .8fr; }
@media (max-width: 900px) { .card-grid { grid-template-columns: 1fr; } }
.info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; }
@media (max-width: 900px) { .info-grid { grid-template-columns: 1fr; } }
.field-label { display: block; margin-bottom: 4px; color: #aaa; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
.field-value { line-height: 1.45; word-break: break-word; }

/* Timeline Histórico */
.log-list { display: grid; gap: 14px; }
.log-item { border-left: 3px solid #25D366; padding: 10px 0 10px 14px; background: rgba(255,255,255,.03); border-radius: 8px; }
.log-meta { color: #aaa; font-size: 12px; margin-bottom: 4px; }
.mini-note { color: #aaa; font-size: 13px; line-height: 1.45; }
.empty { color: #aaa; }

/* Adicionado ao globals para padronizar inputs gerais nos forms */
input, select, textarea {
    width: 100%; padding: 11px 12px; border-radius: 10px; border: 1px solid rgba(255,255,255,.1);
    background: rgba(255,255,255,.05); color: #fff; font: inherit;
}
input:focus, select:focus, textarea:focus { outline: none; border-color: #25D366; }
select option { color: #111; background: #fff; }
.field { margin-bottom: 14px; }
label { display: block; margin-bottom: 6px; color: #aaa; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }

/* ========================================================
   BANHO DE LOJA (UX/UI POLISH) - MÁGICA VISUAL
   ======================================================== */
@keyframes softReveal {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

body.crm-admin .container {
    animation: softReveal 0.4s ease-out forwards;
}

body.crm-admin .card,
body.crm-admin .hint-card,
body.crm-admin .summary-box {
    transition: transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.25s ease, border-color 0.25s ease;
}

body.crm-admin .card:hover {
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
    border-color: rgba(255, 255, 255, 0.12);
    transform: translateY(-2px);
}

body.crm-admin .btn,
body.crm-admin .btn-primary,
body.crm-admin .btn-secondary,
body.crm-admin .btn-small {
    transition: all 0.2s ease-in-out;
}

body.crm-admin button:not(:disabled):hover,
body.crm-admin a.btn:not(.disabled):hover {
    background: rgba(255, 255, 255, 0.12);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

body.crm-admin .btn-primary {
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.2);
}

body.crm-admin .btn-primary:hover {
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
    transform: translateY(-2px);
    background: linear-gradient(135deg, #2ced71, #21bf58);
}

body.crm-admin input,
body.crm-admin select,
body.crm-admin textarea {
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s;
}

body.crm-admin input:focus,
body.crm-admin select:focus,
body.crm-admin textarea:focus {
    box-shadow: 0 0 0 4px rgba(37, 211, 102, 0.12);
    border-color: rgba(37, 211, 102, 0.8) !important;
    background: rgba(37, 211, 102, 0.05) !important;
    outline: none;
}

/* ========================================================
   OVERRIDE: Ícone de Cancelar
   ======================================================== */
body.crm-admin .footer-actions a.btn::before {
    content: "close" !important;
}

/* ========================================================
   COMISSÕES UNIQUE STYLES (Phase 5 Refactor)
   ======================================================== */
.crm-comissoes-page .container { max-width: 1280px; }
.crm-comissoes-page .layout { display: grid; grid-template-columns: 360px 1fr; gap: 20px; }
.crm-comissoes-page .table-wrapper { overflow-x: auto; }
.crm-comissoes-page table { width: 100%; border-collapse: collapse; }
.crm-comissoes-page th, .crm-comissoes-page td { padding: 14px 12px; border-bottom: 1px solid rgba(255,255,255,.06); text-align: left; vertical-align: top; }
.crm-comissoes-page th { color: #9da3ae; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
.crm-comissoes-page .badge { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; background: rgba(255,255,255,.08); }
.crm-comissoes-page .badge-active { color: #25D366; background: rgba(37,211,102,.12); }
.crm-comissoes-page .badge-inactive { color: #ffb3bb; background: rgba(220,53,69,.12); }
.crm-comissoes-page .actions-row { display: flex; gap: 8px; flex-wrap: wrap; }
.crm-comissoes-page .summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.crm-comissoes-page .summary-box { padding: 14px; border-radius: 14px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.06); }
.crm-comissoes-page .summary-box strong { display: block; font-size: 22px; margin-top: 6px; }

@media (max-width: 980px) {
    .crm-comissoes-page .layout { grid-template-columns: 1fr; }
    .crm-comissoes-page .summary-grid { grid-template-columns: 1fr; }
}


/* ========================================================
   FECHAMENTOS UNIQUE STYLES (Phase 5 Refactor)
   ======================================================== */
.crm-fechamentos-page .container { max-width: 1380px; }
.crm-fechamentos-page .topbar,
.crm-fechamentos-page .filters,
.crm-fechamentos-page .cards,
.crm-fechamentos-page .grid { display: grid; gap: 18px; }
.crm-fechamentos-page .filters { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 24px; }
.crm-fechamentos-page .cards { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 24px; }
.crm-fechamentos-page .card-label { color: #9da3ae; font-size: 12px; text-transform: uppercase; margin-bottom: 10px; }
.crm-fechamentos-page .card-value { font-size: 30px; font-weight: 800; }
.crm-fechamentos-page .card-sub { margin-top: 8px; color: #9da3ae; font-size: 13px; }
.crm-fechamentos-page .grid { grid-template-columns: 1fr 1fr; }
.crm-fechamentos-page .table-wrapper { overflow-x: auto; }
.crm-fechamentos-page table { width: 100%; border-collapse: collapse; }
.crm-fechamentos-page th, .crm-fechamentos-page td { padding: 14px 12px; border-bottom: 1px solid rgba(255,255,255,.06); text-align: left; vertical-align: top; }
.crm-fechamentos-page th { color: #9da3ae; font-size: 12px; text-transform: uppercase; }
.crm-fechamentos-page .empty { color: #9da3ae; }

@media (max-width: 1100px) {
    .crm-fechamentos-page .topbar, 
    .crm-fechamentos-page .filters, 
    .crm-fechamentos-page .cards, 
    .crm-fechamentos-page .grid { grid-template-columns: 1fr; }
}


/* ========================================================
   PERFIL, USUARIOS & GOOGLE ADS STYLES (Phase 5 Refactor)
   ======================================================== */

/* Scope: Perfil */
.crm-perfil-page .container { max-width: 980px; }
.crm-perfil-page .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.crm-perfil-page .field.full { grid-column: 1 / -1; }
@media (max-width: 860px) { .crm-perfil-page .grid { grid-template-columns: 1fr; } }

/* Scope: Usuarios */
.crm-usuarios-page .container { max-width: 1280px; }
.crm-usuarios-page .layout { display: grid; grid-template-columns: 360px 1fr; gap: 20px; }
.crm-usuarios-page .badge-admin { color: #25D366; background: rgba(37,211,102,.12); }
.crm-usuarios-page .badge-finance { color: #f59e0b; background: rgba(245,158,11,.16); }
.crm-usuarios-page .badge-editor { color: #7dd3fc; background: rgba(59,130,246,.16); }
@media (max-width: 980px) { .crm-usuarios-page .layout { grid-template-columns: 1fr; } }

/* Scope: Google Ads */
.crm-google-ads-page .container { max-width: 1380px; }
.crm-google-ads-page .topbar, .crm-google-ads-page .filters, .crm-google-ads-page .stats-grid, .crm-google-ads-page .queue-layout { display: grid; gap: 18px; }
.crm-google-ads-page .topbar { grid-template-columns: 1fr auto; align-items: center; margin-bottom: 18px; }
.crm-google-ads-page .stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 18px; }
.crm-google-ads-page .filters { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 18px; }
.crm-google-ads-page .notice-info { background: rgba(59,130,246,.12); border: 1px solid rgba(59,130,246,.22); color: #d5e8ff; }
.crm-google-ads-page .lead-name { font-weight: 700; margin-bottom: 4px; }
.crm-google-ads-page .pagination { display: flex; gap: 10px; justify-content: flex-end; margin-top: 18px; }
@media (max-width: 1100px) {
    .crm-google-ads-page .topbar, .crm-google-ads-page .filters, .crm-google-ads-page .stats-grid { grid-template-columns: 1fr; }
    .crm-google-ads-page table, .crm-google-ads-page thead, .crm-google-ads-page tbody, .crm-google-ads-page th, .crm-google-ads-page td, .crm-google-ads-page tr { display: block; }
    .crm-google-ads-page thead { display: none; }
    .crm-google-ads-page td { padding: 12px 0; }
}

/* Global Alert Components */
.errors, .notice-error { margin-bottom: 18px; padding: 14px 16px; border-radius: 12px; background: rgba(220,53,69,.12); border: 1px solid rgba(220,53,69,.22); color: #ffb3bb; }
.notice, .notice-success { margin-bottom: 18px; padding: 14px 16px; border-radius: 12px; background: rgba(37,211,102,.12); border: 1px solid rgba(37,211,102,.22); color: #d8ffe7; }

/* Global utility additions found in these pages */
.btn-warning { background: rgba(245, 158, 11, .18); border-color: rgba(245, 158, 11, .35); }
.btn-danger { background: rgba(239, 68, 68, .18); border-color: rgba(239, 68, 68, .35); }
