.crm-lead-page {
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: calc(100vh - 90px);
    background: #f4f7fb;
}

.section-main.crm-lead-layout {
    padding-right: 0;
}

.crm-lead-layout > .container-fluid,
.crm-lead-layout > .container-fluid > .row {
    flex: 1 1 auto;
    min-height: 0;
}

.crm-lead-layout > .container-fluid > .row {
    --bs-gutter-x: 0;
}

.crm-lead-header-full .section_buttons_height_left,
.crm-lead-header-left .section_buttons_height_left,
.crm-lead-header-right .section-buttons {
    min-height: 52px;
}

.crm-lead-workspace {
    min-width: 0;
    padding-left: 0;
    padding-right: 0;
}

.crm-lead-workspace--full {
    width: 100%;
}

.crm-lead-workspace .crm-lead-page {
    min-height: 0;
    height: 100%;
    padding: 10px;
    background: var(--page-background);
}

.crm-lead-header-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
}

.crm-lead-detail-header-title {
    flex: 1 1 auto;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
}

.crm-lead-detail-header-title span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-lead-page__pipeline-select {
    flex: 0 1 260px;
    min-width: 220px;
}

.crm-quote-layout > .container-fluid,
.crm-quote-layout > .container-fluid > .row {
    flex: 1 1 auto;
    min-height: 0;
}

.crm-quote-header-left .section_buttons_height_left,
.crm-quote-header-right .section-buttons {
    min-height: 52px;
}

.crm-quote-header-left .box-form p,
.crm-quote-header-right .crm-entity-page__header-copy {
    display: none;
}

.crm-quote-workspace {
    min-width: 0;
    background: #fff;
}

.crm-quote-workspace-inner {
    padding-top: 5px;
    background: #fff;
}

.crm-quote-sidebar .section-sidebar {
    padding-right: 0;
}

.crm-campaign-sidebar.crm-quote-sidebar .tab-inner {
    padding-right: 8px;
}

.crm-quote-workspace .crm-entity-page {
    min-height: 0;
    height: 100%;
    padding: 3px 0 0;
    background: var(--page-background);
}

.crm-quote-workspace .section-information {
    background: #fff;
}

.crm-quote-sidebar-table .table th,
.crm-quote-sidebar-table .table td {
    white-space: normal;
}

.crm-quote-sidebar-table .table th {
    background: #f6fafb;
    color: #30555d;
    font-weight: 700;
}

.crm-quote-sidebar-row,
.crm-quote-table-row {
    cursor: pointer;
}

.crm-quote-sidebar-row:hover td,
.crm-quote-sidebar-row.table-active td,
.crm-quote-table-row.table-active td {
    background: #e8f6f8;
}

.crm-quote-sidebar-row__content {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.crm-quote-sidebar-row__content strong,
.crm-quote-sidebar-row__content span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-quote-sidebar-row__content strong {
    color: #17324d;
    font-weight: 700;
}

.crm-quote-sidebar-row__content span {
    color: #5f6f82;
    font-size: 12px;
}

.crm-quote-sidebar-row__total {
    color: #015e70 !important;
    font-weight: 700;
}

.crm-quote-sidebar-table th:nth-child(1),
.crm-quote-sidebar-table td:nth-child(1) {
    width: auto;
}

.crm-quote-sidebar-table th:nth-child(2),
.crm-quote-sidebar-table td:nth-child(2) {
    width: 82px;
}

.crm-quote-sidebar-table th:nth-child(3),
.crm-quote-sidebar-table td:nth-child(3) {
    width: 70px;
}

.crm-quote-sidebar-date {
    display: block;
    max-width: 100%;
    overflow: hidden;
    color: #5f6f82;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-quote-sidebar-row__content small i {
    flex: 0 0 auto;
}

.crm-quote-workspace-panel {
    min-height: calc(100vh - 160px);
}

.crm-quote-info-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, 1fr) minmax(150px, auto);
}

.crm-quote-info-grid .crm-campaign-info-line {
    grid-template-columns: 82px 12px minmax(0, 1fr);
}

.crm-quote-body-scroll {
    padding-top: 10px;
}

.crm-quote-overview {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 8px 14px 14px;
    background: #fff;
}

.crm-quote-overview__panel {
    width: 100%;
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}

.crm-quote-overview__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 0 10px;
    border-bottom: 1px solid #e3eaee;
    background: #fff;
}

.crm-quote-overview__header div {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.crm-quote-overview__header span,
.crm-quote-stat-card span {
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.crm-quote-overview__header strong {
    color: #17324d;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.1;
}

.crm-quote-overview__refresh {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border: 1px solid #b7c7cf;
    border-radius: 6px;
    background: #fff;
    color: #0f6b78;
}

.crm-quote-overview__refresh--header {
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border-color: rgba(255, 255, 255, 0.45);
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
}

.crm-quote-overview__refresh--header:hover {
    background: rgba(255, 255, 255, 0.18);
}

.crm-quote-overview__refresh:disabled {
    opacity: 0.7;
}

.crm-quote-overview__loading {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 150px;
    color: #64748b;
    font-weight: 700;
}

.crm-quote-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    padding: 0;
}

.crm-quote-stat-card {
    min-height: 88px;
    padding: 11px 12px;
    border: 1px solid #dbe4ea;
    border-left: 4px solid #0f6b78;
    border-radius: 4px;
    background: #fbfdfe;
}

.crm-quote-stat-card strong {
    display: block;
    margin-top: 10px;
    color: #0f172a;
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
}

.crm-quote-stat-card--active {
    border-left-color: #15803d;
}

.crm-quote-stat-card--month {
    border-left-color: #2563eb;
}

.crm-quote-stat-card--previous {
    border-left-color: #d97706;
}

@media (max-width: 1199.98px) {
    .crm-quote-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .crm-quote-overview {
        align-items: flex-start;
        padding: 10px;
    }

    .crm-quote-stats-grid {
        grid-template-columns: 1fr;
    }
}

.crm-quote-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.crm-quote-section-title {
    margin-bottom: 8px;
    color: #708299;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-quote-items-table {
    max-height: 330px;
    overflow: auto;
}

.crm-quote-items-table table {
    table-layout: fixed;
}

.crm-quote-items-table th:nth-child(2),
.crm-quote-items-table td:nth-child(2) {
    width: 70px;
}

.crm-quote-items-table th:nth-child(3),
.crm-quote-items-table td:nth-child(3),
.crm-quote-items-table th:nth-child(4),
.crm-quote-items-table td:nth-child(4),
.crm-quote-items-table th:nth-child(5),
.crm-quote-items-table td:nth-child(5),
.crm-quote-items-table th:nth-child(6),
.crm-quote-items-table td:nth-child(6) {
    width: 120px;
}

.crm-quote-item-name {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.crm-quote-item-name strong,
.crm-quote-item-name span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-quote-item-name span {
    color: #708299;
    font-size: 0.76rem;
}

.crm-quote-address-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.crm-quote-address-grid span {
    display: block;
    margin-bottom: 4px;
    color: #708299;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-quote-address-grid p,
.crm-quote-description {
    margin: 0;
    color: #183550;
    line-height: 1.5;
    white-space: pre-line;
}

.crm-quote-inline-editor {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-bottom: 12px;
}

.crm-quote-lock-note {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    border: 1px solid #f0c4c4;
    border-radius: 6px;
    background: #fff7f7;
    color: #9b1c1c;
    font-size: 0.86rem;
    font-weight: 600;
}

.crm-quote-inline-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.crm-quote-field {
    min-width: 0;
}

.crm-quote-field--wide {
    grid-column: span 2;
}

.crm-quote-field--full {
    grid-column: 1 / -1;
}

.crm-quote-editor-toolbar,
.crm-quote-inline-actions,
.crm-quote-editor-footer,
.crm-quote-product-add {
    display: flex;
    align-items: center;
    gap: 10px;
}

.crm-quote-editor-toolbar {
    justify-content: space-between;
    position: relative;
    z-index: 40;
}

.crm-quote-inline-editor .crm-detail-panel {
    overflow: visible;
}

.crm-quote-product-add {
    flex: 1 1 auto;
    justify-content: flex-end;
    min-width: 0;
}

.crm-quote-product-search {
    position: relative;
    flex: 0 1 360px;
    min-width: 260px;
}

.crm-quote-product-search input {
    width: 100%;
}

.crm-quote-product-dropdown {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    z-index: 1600;
    max-height: 220px;
    overflow: auto;
    padding: 3px;
    background: #fff;
    border: 1px solid #cfd8e3;
    border-radius: 6px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.crm-quote-product-option {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-height: 28px;
    padding: 4px 8px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #1f2937;
    text-align: left;
}

.crm-quote-product-option:hover,
.crm-quote-product-option.is-active {
    background: #e8f1ff;
}

.crm-quote-product-option__name {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 700;
    line-height: 1.25;
}

.crm-quote-product-option__meta,
.crm-quote-product-empty {
    flex: 0 0 auto;
    color: #667085;
    font-size: 0.8rem;
    line-height: 1.25;
    white-space: nowrap;
}

.crm-quote-product-empty {
    padding: 10px;
}

.crm-quote-editor-muted {
    color: #708299;
    font-size: 0.78rem;
    font-weight: 600;
}

.crm-quote-editor-table {
    max-height: 430px;
}

.crm-quote-editor-table table {
    min-width: 980px;
}

.crm-quote-editor-table th:nth-child(1),
.crm-quote-editor-table td:nth-child(1) {
    width: 220px;
}

.crm-quote-editor-table th:nth-child(2),
.crm-quote-editor-table td:nth-child(2) {
    width: 230px;
}

.crm-quote-editor-table th:nth-child(3),
.crm-quote-editor-table td:nth-child(3) {
    width: 80px;
}

.crm-quote-editor-table th:nth-child(4),
.crm-quote-editor-table td:nth-child(4),
.crm-quote-editor-table th:nth-child(5),
.crm-quote-editor-table td:nth-child(5),
.crm-quote-editor-table th:nth-child(6),
.crm-quote-editor-table td:nth-child(6),
.crm-quote-editor-table th:nth-child(7),
.crm-quote-editor-table td:nth-child(7) {
    width: 120px;
}

.crm-quote-editor-table th:last-child,
.crm-quote-editor-table td:last-child {
    width: 54px;
}

.crm-quote-editor-footer {
    justify-content: flex-end;
    align-items: stretch;
}

.crm-quote-total-box {
    width: min(100%, 360px);
    padding: 12px;
    border: 1px solid #dbe7ef;
    border-radius: 6px;
    background: #f8fbfd;
}

.crm-quote-total-box div,
.crm-quote-print-total div {
    display: flex;
    justify-content: space-between;
    gap: 12pt;
}

.crm-quote-total-box div + div,
.crm-quote-print-total div + div {
    margin-top: 4pt;
}

.crm-quote-total-box span,
.crm-quote-print-total span {
    color: #607287;
}

.crm-quote-total-box strong,
.crm-quote-print-total strong {
    color: #17324d;
}

.crm-quote-total-box__grand {
    margin-top: 6pt !important;
    padding-top: 6pt;
    border-top: 1px solid #cddbe6;
    font-size: 1rem;
}

.crm-quote-print-total__grand {
    margin-top: 6pt !important;
    padding-top: 6pt;
    border-top: 1px solid #000;
    font-size: 12pt;
}

.crm-quote-total-box__grand strong {
    color: #015e70;
    font-size: 1.08rem;
}

.crm-quote-print-total__grand strong {
    color: #000;
    font-size: 13pt;
}

.crm-quote-inline-actions {
    justify-content: flex-end;
}

.crm-quote-print-shell {
    max-width: 100%;
    overflow: auto;
    padding-bottom: 1rem;
}

.crm-quote-print-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    justify-content: flex-end;
    margin-bottom: 8pt;
}

.crm-quote-print-content {
    width: min(210mm, 100%);
    max-width: 100%;
    min-height: 297mm;
    margin: 0 auto 12pt;
    padding: 12mm;
    border: 1px solid #d9e3ea;
    border-radius: 6px;
    background: #fff;
    box-sizing: border-box;
    box-shadow: 0 8px 24px rgba(30, 51, 68, .12);
}

.crm-quote-print-content .medical-examination-wrapper,
.crm-quote-print-document {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.crm-quote-print-content .header-top {
    width: 100%;
    align-items: flex-start;
    gap: 4mm;
}

.crm-quote-print-content .phieu-header {
    padding: 0 0 4mm;
}

.crm-quote-print-content .logo-container {
    flex: 0 0 26mm;
}

.crm-quote-print-content .clinic-logo {
    width: 26mm !important;
    height: 20mm;
    object-fit: contain;
}

.crm-quote-print-content .clinic-info {
    min-width: 0;
    padding-left: 0;
}

.crm-quote-print-content .clinic-info h2 {
    margin: 0 0 3pt;
    font-size: 15pt;
}

.crm-quote-print-content .clinic-info p {
    margin: 1.5pt 0;
    font-size: 10.5pt;
}

.crm-quote-print-content .header-right {
    flex: 0 0 24mm;
}

.crm-quote-print-code {
    display: flex;
    flex-direction: column;
    gap: 3pt;
    color: #000;
    font-family: "Times New Roman", Times, serif;
    text-align: center;
}

.crm-quote-print-code strong {
    font-size: 13pt;
}

.crm-quote-print-code span {
    font-size: 10.5pt;
}

.crm-quote-print-document {
    font-family: "Times New Roman", Times, serif;
    color: #000;
    font-size: 11.5pt;
    line-height: 1.32;
}

.crm-quote-print-title {
    margin: 9pt 0 13pt;
    text-align: center;
}

.crm-quote-print-title h1 {
    margin: 0 0 4pt;
    font-size: 20pt;
    font-weight: 700;
}

.crm-quote-print-meta,
.crm-quote-print-customer,
.crm-quote-print-bottom {
    display: grid;
    gap: 7pt;
}

.crm-quote-print-meta {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 9pt;
}

.crm-quote-print-meta div,
.crm-quote-print-customer div,
.crm-quote-print-note div {
    min-width: 0;
}

.crm-quote-print-meta span,
.crm-quote-print-customer span,
.crm-quote-print-note span {
    display: block;
    color: #333;
    font-size: 11pt;
    font-weight: 700;
}

.crm-quote-print-meta strong,
.crm-quote-print-customer strong {
    display: block;
    margin-top: 1.5pt;
    word-break: break-word;
}

.crm-quote-print-customer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 9pt;
}

.crm-quote-print-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1pt solid #000;
    margin-top: 7pt;
    table-layout: fixed;
    font-size: 11pt;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.crm-quote-print-table th,
.crm-quote-print-table td {
    border: 1pt solid #000;
    padding: 2.5pt 3.5pt;
    vertical-align: middle;
    background: #fff;
}

.crm-quote-print-table th {
    text-align: center;
    font-weight: 700;
}

.crm-quote-print-table th:nth-child(1),
.crm-quote-print-table td:nth-child(1) {
    width: 10mm;
}

.crm-quote-print-table th:nth-child(3),
.crm-quote-print-table td:nth-child(3) {
    width: 20mm;
}

.crm-quote-print-table th:nth-child(4),
.crm-quote-print-table td:nth-child(4) {
    width: 11mm;
}

.crm-quote-print-table th:nth-child(5),
.crm-quote-print-table td:nth-child(5),
.crm-quote-print-table th:nth-child(6),
.crm-quote-print-table td:nth-child(6),
.crm-quote-print-table th:nth-child(7),
.crm-quote-print-table td:nth-child(7),
.crm-quote-print-table th:nth-child(8),
.crm-quote-print-table td:nth-child(8) {
    width: 20mm;
}

.crm-quote-print-table td {
    word-break: break-word;
}

.crm-quote-print-bottom {
    grid-template-columns: minmax(0, 1fr) 68mm;
    align-items: start;
    margin-top: 10pt;
}

.crm-quote-print-note {
    display: grid;
    gap: 6pt;
}

.crm-quote-print-note p {
    margin: 1.5pt 0 0;
    white-space: pre-line;
}

.crm-quote-print-total {
    padding: 5pt 7pt;
    border: 1px solid #000;
}

.crm-quote-print-signatures {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15mm;
    margin-top: 25pt;
    text-align: center;
}

.crm-quote-print-signatures strong,
.crm-quote-print-signatures span {
    display: block;
}

.crm-quote-print-signatures span {
    font-style: italic;
}

.crm-quote-print-signatures p {
    margin: 54pt 0 0;
    font-weight: 700;
}

@media print {
    @page {
        size: A4 portrait;
        margin: 0;
    }

    .no-print {
        display: none !important;
    }

    html,
    body {
        width: 210mm !important;
        min-height: 297mm !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
    }

    body * {
        visibility: hidden !important;
        height: 0 !important;
    }

    .crm-quote-print-content.print-content,
    .crm-quote-print-content.print-content * {
        visibility: visible !important;
        height: auto !important;
    }

    .crm-quote-print-shell {
        overflow: visible !important;
        padding: 0 !important;
    }

    .crm-quote-print-content.print-content {
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 210mm !important;
        max-width: 210mm !important;
        min-height: 297mm !important;
        margin: 0 !important;
        padding: 12mm !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: #fff !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    .crm-quote-print-content .medical-examination-wrapper,
    .crm-quote-print-document {
        width: 100% !important;
        max-width: 100% !important;
    }
}

.crm-quote-file-panel {
    max-width: min(210mm, 100%);
    margin: 0 auto 1rem;
    padding: 1rem;
    border: 1px solid #d9e3ea;
    border-radius: 6px;
    background: #fff;
}

.crm-quote-file-panel__header,
.crm-quote-email-form__header {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: .85rem;
}

.crm-quote-file-panel__header h3,
.crm-quote-email-form__header h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: #17324d;
}

.crm-quote-file-panel__header span,
.crm-quote-email-form__header span,
.crm-quote-file-item__main span {
    color: #607287;
    font-size: .85rem;
}

.crm-quote-file-empty {
    display: flex;
    gap: .5rem;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    color: #607287;
    border: 1px dashed #cddbe6;
    border-radius: 6px;
    background: #f8fbfd;
}

.crm-quote-file-list {
    display: grid;
    gap: .65rem;
}

.crm-quote-file-item {
    display: flex;
    gap: .85rem;
    align-items: center;
    justify-content: space-between;
    padding: .75rem;
    border: 1px solid #dbe7ef;
    border-radius: 6px;
    background: #f8fbfd;
}

.crm-quote-file-item__main {
    min-width: 0;
}

.crm-quote-file-item__main strong,
.crm-quote-file-item__main span {
    display: block;
}

.crm-quote-file-item__main strong {
    color: #17324d;
    word-break: break-word;
}

.crm-quote-file-item__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    justify-content: flex-end;
}

.crm-quote-file-item__actions .button-theme,
.crm-quote-email-form__header .button-theme,
.crm-quote-email-attachment .button-theme {
    min-height: 2rem;
}

.crm-quote-email-form {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #dbe7ef;
}

.crm-quote-email-content {
    min-height: 7rem;
    resize: vertical;
}

.crm-quote-email-attachments {
    display: grid;
    gap: .5rem;
    margin-top: .75rem;
}

.crm-quote-email-attachment {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: .5rem;
    align-items: center;
    padding: .5rem .65rem;
    border: 1px solid #dbe7ef;
    border-radius: 6px;
    background: #f8fbfd;
}

.crm-quote-email-attachment span {
    min-width: 0;
    overflow: hidden;
    color: #17324d;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-quote-email-attachment small {
    color: #607287;
}

.crm-quote-email-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: .85rem;
}

.crm-marketing-event-layout > .container-fluid,
.crm-marketing-event-layout > .container-fluid > .row {
    flex: 1 1 auto;
    min-height: 0;
}

.crm-marketing-event-header-left .section_buttons_height_left,
.crm-marketing-event-header-right .section-buttons {
    min-height: 52px;
}

.crm-marketing-event-header-left .box-form p,
.crm-marketing-event-header-right .crm-entity-page__header-copy {
    display: none;
}

.crm-marketing-event-workspace {
    min-width: 0;
}

.crm-marketing-event-workspace .crm-entity-page {
    min-height: 0;
    height: 100%;
    padding: 3px 0 0;
    background: var(--page-background);
}

.crm-marketing-event-sidebar-table .table th,
.crm-marketing-event-sidebar-table .table td {
    white-space: normal;
}

.crm-marketing-event-sidebar-table .table th {
    background: #f6fafb;
    color: #30555d;
    font-weight: 700;
}

.crm-marketing-event-sidebar-row,
.crm-marketing-event-table-row {
    cursor: pointer;
}

.crm-marketing-event-sidebar-row:hover td,
.crm-marketing-event-sidebar-row.table-active td,
.crm-marketing-event-table-row.table-active td {
    background: #e8f6f8;
}

.crm-marketing-event-sidebar-row__content {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.crm-marketing-event-sidebar-row__content strong,
.crm-marketing-event-sidebar-row__content span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-marketing-event-sidebar-row__content strong {
    color: #17324d;
    font-weight: 700;
}

.crm-marketing-event-sidebar-row__content span {
    color: #5f6f82;
    font-size: 12px;
}

.crm-marketing-event-sidebar-row__badge {
    display: inline-flex;
    width: fit-content;
    padding: 2px 6px;
    border-radius: 4px;
    background: #dff4f7;
    color: #015e70 !important;
    font-weight: 700;
}

@media (max-width: 1199.98px) {
    .crm-quote-sidebar .crm-quote-sidebar-table {
        --height: 260px;
        height: 260px;
        max-height: 260px;
    }

    .crm-marketing-event-sidebar .crm-marketing-event-sidebar-table {
        --height: 260px;
        height: 260px;
        max-height: 260px;
    }
}

.crm-lead-card__title-button {
    padding: 0;
    border: 0;
    background: transparent;
    color: #17324d;
    font-weight: 700;
    text-align: left;
}

.crm-lead-card__title-button:hover {
    color: var(--primary-color);
}

.crm-lead-card__action-group {
    display: flex;
    align-items: center;
    gap: 6px;
}

.crm-lead-detail-page {
    position: relative;
    min-height: 0;
    height: 100%;
    padding: 10px;
    background: var(--page-background);
}

.crm-lead-detail-layout {
    padding-right: 0;
}

.crm-lead-detail-layout > .container-fluid,
.crm-lead-detail-layout > .container-fluid > .row {
    flex: 1 1 auto;
    min-height: 0;
}

.crm-lead-detail-list-column,
.crm-lead-detail-workspace {
    min-width: 0;
}

.crm-lead-detail-list-column {
    display: flex;
    align-self: flex-start;
    min-height: 0 !important;
}

.crm-lead-detail-list-column .section-sidebar,
.crm-lead-detail-list-column .section-tab,
.crm-lead-detail-list-column .tab-content,
.crm-lead-detail-list-column .tab-pane,
.crm-lead-detail-list-column .tab-inner {
    height: auto !important;
}

.crm-lead-detail-list-column .tab-inner {
    flex: 0 0 auto !important;
}

.crm-lead-detail-list-column .section-table {
    flex: 0 0 auto !important;
}

.crm-lead-detail-sidebar-table {
    --height: auto;
    height: auto !important;
    max-height: calc(100dvh - 240px);
    overflow: auto;
}

.crm-lead-detail-list-column .stock-import-sidebar-pagination {
    margin-top: 6px !important;
}

.crm-lead-detail-sidebar-table .table {
    min-width: 680px;
}

.crm-lead-detail-sidebar-table th {
    background: #f6fafb;
    color: #30555d;
    font-weight: 700;
}

.crm-lead-detail-sidebar-row {
    cursor: pointer;
}

.crm-lead-detail-sidebar-row:hover td,
.crm-lead-detail-sidebar-row.table-active td {
    background: #e8f6f8;
}

.crm-lead-detail-sidebar-row--warning td:first-child {
    box-shadow: inset 3px 0 0 #f4c66a;
}

.crm-lead-detail-stage-badge {
    min-width: 92px;
    max-width: 150px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 8px;
    border: 1px solid transparent;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
}

.crm-lead-detail-stage-badge--1 {
    border-color: #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8;
}

.crm-lead-detail-stage-badge--2 {
    border-color: #99f6e4;
    background: #f0fdfa;
    color: #0f766e;
}

.crm-lead-detail-stage-badge--3 {
    border-color: #fde68a;
    background: #fffbeb;
    color: #b45309;
}

.crm-lead-detail-stage-badge--4 {
    border-color: #c7d2fe;
    background: #eef2ff;
    color: #4338ca;
}

.crm-lead-detail-stage-badge--5 {
    border-color: #fecdd3;
    background: #fff1f2;
    color: #be123c;
}

.crm-lead-detail-stage-badge--6 {
    border-color: #bbf7d0;
    background: #f0fdf4;
    color: #15803d;
}

.crm-lead-detail-stage-badge--won {
    border-color: #86efac;
    background: #dcfce7;
    color: #166534;
}

.crm-lead-detail-stage-badge--lost {
    border-color: #fecaca;
    background: #fef2f2;
    color: #b91c1c;
}

.crm-lead-detail {
    display: grid;
    grid-template-columns: minmax(290px, 350px) minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    font-size: 13px;
}

.crm-lead-detail__sidebar {
    position: sticky;
    top: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.crm-lead-detail__content {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
}

.crm-lead-detail__state {
    padding: 48px 28px;
    border: 1px dashed #c8d6e6;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.92);
    color: #45607c;
    text-align: center;
    box-shadow: 0 20px 45px -36px rgba(15, 44, 88, 0.4);
}

.crm-detail-card,
.crm-detail-panel,
.crm-lead-quick__box {
    border: 1px solid #d8e2ea;
    border-radius: 8px;
    background: var(--bs-white);
    box-shadow: 0 8px 20px -16px rgba(24, 39, 75, 0.22);
}

.crm-detail-card {
    padding: 16px;
}

.crm-detail-card--hero {
    background: var(--bs-white);
}

.crm-lead-detail .crm-detail-card--hero > .crm-detail-card__breadcrumbs,
.crm-lead-detail .crm-detail-card--hero > .crm-detail-card__title-row {
    display: none;
}

.crm-detail-card__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
    color: #5f7390;
    font-size: 12px;
}

.crm-detail-card__crumb {
    padding: 0;
    border: 0;
    background: transparent;
    color: #2b7de9;
}

.crm-detail-card__title-row {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
}

.crm-detail-card__title {
    margin: 0;
    color: #183550;
    font-size: 20px;
    line-height: 1.25;
}

.crm-detail-card__subtitle {
    margin: 6px 0 0;
    color: #61738a;
}

.crm-detail-card__section-title {
    margin-bottom: 14px;
    color: #1d3557;
    font-size: 13px;
    font-weight: 700;
}

.crm-detail-card__stats {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 12px;
}

.crm-detail-stat {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 10px;
    border-radius: 5px;
    background: #f8fbff;
    border: 1px solid #e2ebf3;
}

.crm-detail-stat--value {
    background: linear-gradient(135deg, #e7fff2 0%, #ecf8ff 100%);
}

.crm-detail-stat--quick {
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

.crm-detail-stat__label {
    color: #6b7d94;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.crm-detail-stat strong {
    color: #17324d;
    font-size: 13px;
}

.crm-detail-info-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0;
}

.crm-detail-info-list__row {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 12px;
}

.crm-detail-info-list__row dt {
    color: #66788e;
    font-weight: 500;
}

.crm-detail-info-list__row dd {
    margin: 0;
    color: #183550;
    font-weight: 600;
}

.crm-detail-person {
    display: flex;
    gap: 12px;
}

.crm-detail-person__avatar {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #fecaca 0%, #fca5a5 100%);
    color: #991b1b;
    font-weight: 700;
}

.crm-detail-person__content {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.crm-detail-person__content strong {
    color: #183550;
}

.crm-detail-person__content a,
.crm-detail-person__content span {
    color: #2b7de9;
    text-decoration: none;
    word-break: break-word;
}

.crm-detail-stagebar {
    position: relative;
    display: flex;
    align-items: stretch;
    gap: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    overflow: visible;
}

.crm-detail-stagebar__flow {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: stretch;
    gap: 3px;
    overflow: visible;
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.crm-detail-stagebar__item {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    min-height: 40px;
    padding: 0 24px 0 30px;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #cfdceb;
    color: #54687f;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
    box-shadow: none;
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%, 18px 50%);
    transition: filter 0.18s ease, transform 0.18s ease;
}

.crm-detail-stagebar__item span {
    position: relative;
    z-index: 2;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-detail-stagebar__item::before {
    display: none;
}

.crm-detail-stagebar__item::after {
    display: none;
}

.crm-detail-stagebar__item:first-child {
    padding-left: 20px;
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%);
}

.crm-detail-stagebar__item + .crm-detail-stagebar__item {
    margin-left: 0;
}

.crm-detail-stagebar__item--completed {
    background: linear-gradient(180deg, #31c85b 0%, #27b74f 100%);
    color: #fff;
}

.crm-detail-stagebar__item--current {
    background: linear-gradient(180deg, #2fcf5d 0%, #25b74f 100%);
    color: #fff;
    box-shadow: none;
}

.crm-detail-stagebar__terminal {
    position: relative;
    flex: 0 0 232px;
}

.crm-detail-stagebar__terminal-trigger {
    width: 100%;
    min-height: 40px;
    padding: 0 16px 0 18px;
    border: 1px solid #d5e1ec;
    border-radius: 5px;
    background: #fff;
    color: #233548;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    box-shadow: none;
}

.crm-detail-stagebar__terminal-trigger--open {
    border-color: #c4d4e4;
}

.crm-detail-stagebar__terminal-trigger--won {
    border-color: #a7f3d0;
    background: #ecfdf5;
    color: #166534;
}

.crm-detail-stagebar__terminal-trigger--lost {
    border-color: #fecaca;
    background: #fef2f2;
    color: #b91c1c;
}

.crm-detail-stagebar__terminal-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 15;
    width: 100%;
    padding: 8px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 24px 36px -28px rgba(15, 23, 42, 0.45);
}

.crm-detail-stagebar__terminal-option {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border: 0;
    border-radius: 5px;
    background: #fff;
    color: #1f2937;
    font-weight: 600;
    text-align: left;
}

.crm-detail-stagebar__terminal-option:hover {
    background: #f8fafc;
}

.crm-detail-stagebar__terminal-option--won .crm-detail-stagebar__terminal-dot {
    background: #22c55e;
}

.crm-detail-stagebar__terminal-option--lost .crm-detail-stagebar__terminal-dot {
    background: #ef4444;
}

.crm-detail-stagebar__terminal-option--current {
    background: #f8fafc;
    opacity: 0.72;
}

.crm-detail-stagebar__terminal-dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
}

.crm-stage-outcome-modal {
    position: fixed;
    inset: 0;
    z-index: 1300;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, 0.32);
}

.crm-stage-outcome-modal__dialog {
    width: min(640px, 100%);
}

.crm-stage-outcome-modal__panel {
    overflow: hidden;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 34px 60px -34px rgba(15, 23, 42, 0.55);
}

.crm-stage-outcome-modal__header,
.crm-stage-outcome-modal__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px;
}

.crm-stage-outcome-modal__header {
    border-bottom: 1px solid #e5e7eb;
}

.crm-stage-outcome-modal__header strong {
    color: #1f2937;
    font-size: 1.05rem;
}

.crm-stage-outcome-modal__body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 18px 20px;
}

.crm-stage-outcome-modal__field {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.crm-stage-outcome-modal__field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.crm-stage-outcome-modal__field label {
    color: #334155;
    font-weight: 600;
}

.crm-stage-outcome-modal__input-group {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    align-items: stretch;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    overflow: hidden;
    background: #fff;
}

.crm-stage-outcome-modal__input-group span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f8fafc;
    color: #64748b;
    font-weight: 700;
}

.crm-stage-outcome-modal__input-group input {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.crm-stage-outcome-modal__footer {
    border-top: 1px solid #e5e7eb;
    justify-content: end;
}

.crm-stage-outcome-modal__close {
    width: 36px;
    height: 36px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #fff;
    color: #475569;
}

.crm-detail-panel {
    overflow: hidden;
}

.crm-detail-tabs {
    display: flex;
    gap: 4px;
    padding: 10px 12px 0;
    border-bottom: 1px solid #e3ebf3;
    overflow-x: auto;
}

.crm-detail-tabs__item {
    padding: 10px 12px;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: #183550;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

.crm-detail-tabs__item--active {
    color: var(--primary-color);
    border-color: var(--primary-color);
}

.crm-detail-panel__body {
    padding: 16px;
    min-height: 420px;
}

.crm-detail-empty {
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
    border: 1px dashed #c9d7e5;
    border-radius: 5px;
    color: #5e7187;
    text-align: center;
    background: #fbfdff;
}

.crm-detail-empty--content {
    justify-content: flex-start;
    align-items: stretch;
    text-align: left;
}

.crm-detail-empty--action {
    min-height: 320px;
    border-style: solid;
    border-color: #d7e4f2;
    background:
        radial-gradient(circle at top, rgba(59, 130, 246, 0.08), transparent 42%),
        linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.crm-detail-empty--content p {
    margin: 0;
    color: #30485f;
    font-size: 13px;
    line-height: 1.6;
}

.crm-detail-empty__stack {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    max-width: 360px;
}

.crm-detail-empty__visual {
    width: 92px;
    height: 92px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8e4f1;
    border-radius: 24px;
    background: linear-gradient(180deg, #ffffff 0%, #eef5fc 100%);
    color: #8ca0b7;
    font-size: 22px;
    box-shadow: inset 0 -10px 24px rgba(191, 219, 254, 0.28);
}

.crm-detail-empty__visual--quote {
    color: #7c3aed;
    box-shadow: inset 0 -10px 24px rgba(221, 214, 254, 0.35);
}

.crm-detail-empty__title {
    color: #183550;
    font-size: 18px;
    line-height: 1.2;
}

.crm-detail-empty__hint {
    margin: 0;
    color: #71859b;
    font-size: 13px;
    line-height: 1.6;
}

.crm-detail-empty__action {
    padding: 10px 20px;
    border: 1px solid #1d8cf8;
    border-radius: 5px;
    background: #fff;
    color: #1d8cf8;
    font-weight: 700;
    box-shadow: 0 14px 24px -22px rgba(29, 140, 248, 0.55);
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.crm-detail-empty__action:hover {
    background: #eff6ff;
    transform: translateY(-1px);
}

.crm-detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 14px;
}

.crm-detail-tile {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
    border: 1px solid #e3ebf4;
    border-radius: 5px;
    background: #fbfdff;
}

.crm-detail-tile__header {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
}

.crm-detail-tile__header strong {
    color: #183550;
}

.crm-detail-tile__header span,
.crm-detail-tile__description {
    color: #66788e;
}

.crm-detail-tile__description {
    margin: 0;
    line-height: 1.6;
}

.crm-detail-tile__metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.crm-detail-tile__metrics div {
    padding: 10px;
    border-radius: 5px;
    background: #f4f8fb;
}

.crm-detail-tile__metrics span {
    display: block;
    margin-bottom: 3px;
    color: #6b7d94;
    font-size: 11px;
}

.crm-detail-tile__metrics strong {
    color: #183550;
    font-size: 13px;
}

.crm-detail-file__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.crm-detail-file__footer span {
    color: #607389;
}

.crm-detail-timeline {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.crm-timeline-card {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}

.crm-timeline-card__icon {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 13px;
}

.crm-timeline-card__icon--blue { background: #dbeafe; color: #1d4ed8; }
.crm-timeline-card__icon--teal { background: #ccfbf1; color: #0f766e; }
.crm-timeline-card__icon--amber { background: #fef3c7; color: #b45309; }
.crm-timeline-card__icon--indigo { background: #e0e7ff; color: #4338ca; }
.crm-timeline-card__icon--green { background: #dcfce7; color: #15803d; }
.crm-timeline-card__icon--orange { background: #ffedd5; color: #c2410c; }
.crm-timeline-card__icon--slate { background: #e2e8f0; color: #475569; }
.crm-timeline-card__icon--yellow { background: #fef9c3; color: #a16207; }

.crm-timeline-card__body {
    padding: 10px 14px;
    border-radius: 5px;
    background: #fbfdff;
    border: 1px solid #e5edf5;
}

.crm-timeline-card__top {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
}

.crm-timeline-card__eyebrow {
    color: #6b7d94;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.crm-timeline-card__top h3 {
    margin: 2px 0 0;
    color: #183550;
    font-size: 13px;
}

.crm-timeline-card__time,
.crm-timeline-card__meta,
.crm-timeline-card__description,
.crm-timeline-card__footer {
    color: #62758c;
}

.crm-timeline-card__meta,
.crm-timeline-card__description {
    margin: 6px 0 0;
    line-height: 1.45;
}

.crm-timeline-card__footer {
    margin-top: 8px;
    font-size: 12px;
}

.crm-lead-quick {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
}

.crm-lead-quick__launcher {
    width: 58px;
    height: 58px;
    border: 0;
    border-radius: 50%;
    background: linear-gradient(135deg, #0f766e 0%, #2563eb 100%);
    color: #fff;
    font-size: 1.25rem;
    box-shadow: 0 24px 45px -24px rgba(15, 44, 88, 0.72);
}

.crm-lead-quick__menu {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
    gap: 8px;
    width: 100%;
}

.crm-lead-quick__action {
    --quick-accent: #2563eb;
    --quick-soft: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    --quick-border: #bfdbfe;
    --quick-icon-bg: linear-gradient(135deg, #ffffff 0%, #eff6ff 100%);
    --quick-shadow: rgba(37, 99, 235, 0.34);
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid var(--quick-border);
    border-radius: 5px;
    background: var(--quick-soft);
    color: #183550;
    font-weight: 600;
    text-align: left;
    box-shadow: 0 12px 24px -22px var(--quick-shadow);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.crm-lead-quick__action:hover {
    transform: translateY(-1px);
    filter: saturate(1.05);
    box-shadow: 0 16px 28px -22px var(--quick-shadow);
}

.crm-lead-quick__action-icon {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    border: 1px solid var(--quick-border);
    background: var(--quick-icon-bg);
    color: var(--quick-accent);
}

.crm-lead-quick__action--mail {
    --quick-accent: #2563eb;
    --quick-soft: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    --quick-border: #bfdbfe;
    --quick-icon-bg: linear-gradient(135deg, #ffffff 0%, #e0ecff 100%);
    --quick-shadow: rgba(37, 99, 235, 0.34);
}

.crm-lead-quick__action--call {
    --quick-accent: #059669;
    --quick-soft: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
    --quick-border: #a7f3d0;
    --quick-icon-bg: linear-gradient(135deg, #ffffff 0%, #dcfce7 100%);
    --quick-shadow: rgba(5, 150, 105, 0.34);
}

.crm-lead-quick__action--file {
    --quick-accent: #7c3aed;
    --quick-soft: linear-gradient(135deg, #f5f3ff 0%, #ede9fe 100%);
    --quick-border: #ddd6fe;
    --quick-icon-bg: linear-gradient(135deg, #ffffff 0%, #f3e8ff 100%);
    --quick-shadow: rgba(124, 58, 237, 0.32);
}

.crm-lead-quick__action--note {
    --quick-accent: #ea580c;
    --quick-soft: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
    --quick-border: #fed7aa;
    --quick-icon-bg: linear-gradient(135deg, #ffffff 0%, #ffedd5 100%);
    --quick-shadow: rgba(234, 88, 12, 0.32);
}

.crm-lead-quick__action--activity {
    --quick-accent: #db2777;
    --quick-soft: linear-gradient(135deg, #fdf2f8 0%, #fce7f3 100%);
    --quick-border: #fbcfe8;
    --quick-icon-bg: linear-gradient(135deg, #ffffff 0%, #fce7f3 100%);
    --quick-shadow: rgba(219, 39, 119, 0.32);
}

.crm-lead-quick-modal {
    position: fixed;
    inset: 0;
    z-index: 1290;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, 0.32);
}

.crm-lead-quick-modal__dialog {
    width: min(820px, 100%);
}

.crm-lead-quick-modal .crm-lead-quick__box {
    width: 100%;
    border-radius: 5px;
    box-shadow: 0 34px 60px -34px rgba(15, 23, 42, 0.55);
}

.crm-lead-quick__box {
    width: 100%;
    overflow: hidden;
}

.crm-lead-quick__box-header,
.crm-lead-quick__box-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
}

.crm-lead-quick__box-header {
    border-bottom: 1px solid #e3ebf4;
}

.crm-lead-quick__box-header strong {
    display: block;
    color: #183550;
}

.crm-lead-quick__box-header span {
    color: #65788f;
}

.crm-lead-quick__box-body {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 16px 18px;
    max-height: min(48vh, 520px);
    overflow: auto;
}

.crm-lead-quick-modal .crm-lead-quick__box-body {
    max-height: min(72vh, 680px);
}

.crm-lead-quick__box-footer {
    border-top: 1px solid #e3ebf4;
}

.crm-lead-quick__close {
    width: 34px;
    height: 34px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #f8fbff;
    color: #5d7187;
}

.crm-lead-quick__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.crm-lead-quick__field label {
    color: #334155;
    font-weight: 600;
}

.crm-lead-quick__field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.crm-lead-quick__hint {
    color: #607389;
    font-size: 0.84rem;
}

.crm-lead-quick__checklist {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.crm-lead-quick__check {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 5px;
    background: #f5f9fd;
    color: #183550;
}

.crm-lead-call__notice,
.crm-lead-call__number-card,
.crm-lead-call__metrics div {
    padding: 12px 14px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #fbfdff;
}

.crm-lead-call__number-card span,
.crm-lead-call__metrics span {
    display: block;
    color: #6b7d94;
    font-size: 0.78rem;
    text-transform: uppercase;
}

.crm-lead-call__number-card strong,
.crm-lead-call__metrics strong {
    color: #183550;
    font-size: 1rem;
}

.crm-lead-call__metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.crm-lead-call__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

@media (max-width: 1199.98px) {
    .crm-lead-detail {
        grid-template-columns: 1fr;
    }

    .crm-lead-detail__sidebar {
        position: static;
    }
}

@media (max-width: 767.98px) {
    .crm-lead-detail-page {
        padding: 8px;
    }

    .crm-detail-card__stats,
    .crm-detail-tile__metrics,
    .crm-lead-call__metrics,
    .crm-lead-quick__field-grid {
        grid-template-columns: 1fr;
    }

    .crm-detail-info-list__row {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .crm-timeline-card {
        grid-template-columns: 1fr;
    }

    .crm-detail-stagebar {
        flex-direction: column;
        gap: 10px;
    }

    .crm-detail-stagebar__flow {
        flex-direction: column;
        gap: 8px;
    }

    .crm-detail-stagebar__item,
    .crm-detail-stagebar__item:first-child {
        padding: 10px 14px;
        border-radius: 5px;
        clip-path: none;
    }

    .crm-detail-stagebar__item::before,
    .crm-detail-stagebar__item::after {
        display: none;
    }

    .crm-detail-stagebar__item + .crm-detail-stagebar__item {
        margin-left: 0;
    }

    .crm-detail-stagebar__terminal {
        flex: 1 1 auto;
    }

    .crm-stage-outcome-modal__field-grid {
        grid-template-columns: 1fr;
    }

    .crm-lead-quick__menu,
    .crm-lead-quick__box {
        width: 100%;
    }

    .crm-lead-quick__menu {
        grid-template-columns: 1fr;
    }

    .crm-lead-quick-modal {
        padding: 12px;
    }

    .crm-stage-outcome-modal {
        padding: 12px;
    }

    .crm-detail-empty--action {
        min-height: 280px;
    }

    .crm-detail-empty__title {
        font-size: 1.35rem;
    }
}

.crm-lead-page__header {
    border-radius: 0;
    overflow: visible;
    background: transparent;
    box-shadow: none;
    margin: 0;
}

.crm-lead-page__header .container-fluid {
    padding: 0;
}

.crm-lead-page__toolbar {
    border: 1px solid #d8e2ea;
    border-radius: 8px;
    background: var(--bs-white);
    box-shadow: 0 8px 20px -16px rgba(24, 39, 75, 0.22);
    padding: 10px;
}

.crm-lead-page__filters {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    min-width: 0;
    width: 100%;
}

.crm-lead-page__toolbar-actions {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: nowrap;
    flex: 0 0 auto;
}

.crm-lead-page__search {
    min-width: 240px;
    flex: 1 1 320px;
}

.crm-lead-page__search .input-group-text {
    background: var(--bs-white);
    border: 1px solid #9f9f9f;
    border-right: 0;
    color: #6b7280;
}

.crm-lead-page__search .theme-input {
    border-left: 0;
}

.crm-lead-page__search .theme-input:focus {
    border-left: 0;
}

.crm-lead-view-toggle {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 3px;
    border: 1px solid #d4dee9;
    border-radius: 7px;
    background: #f6f9fc;
}

.crm-lead-view-toggle__button {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: #55657a;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    transition: color var(--transition-default), background-color var(--transition-default), box-shadow var(--transition-default);
}

.crm-lead-view-toggle__button:hover:not(:disabled) {
    color: #17324d;
    background: #edf4fb;
}

.crm-lead-view-toggle__button--active {
    background: var(--bs-white);
    color: var(--primary-color);
    box-shadow: 0 6px 14px -12px rgba(15, 44, 88, 0.55);
}

.crm-lead-view-toggle__button:disabled {
    opacity: 0.65;
}

.crm-lead-pipeline-manager {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.crm-lead-pipeline-manager__toolbar {
    box-shadow: none;
}

.crm-lead-pipeline-manager__table .theme-table {
    max-height: min(52vh, 520px);
    overflow: auto;
}

.crm-lead-workspace--full .crm-board {
    grid-auto-columns: minmax(300px, 1fr);
}

.crm-lead-pipeline-table .table th,
.crm-lead-pipeline-table .table td {
    white-space: normal;
}

.crm-lead-pipeline-table .table th {
    background: #f6fafb;
    color: #30555d;
    font-weight: 700;
}

.crm-lead-pipeline-row {
    cursor: pointer;
}

.crm-lead-pipeline-row td {
    vertical-align: middle;
}

.crm-lead-pipeline-row:hover td,
.crm-lead-pipeline-row.table-active td {
    background: #e8f6f8;
}

.crm-lead-pipeline-row__name {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}

.crm-lead-pipeline-row__name > span:first-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-lead-pipeline-row__badge {
    flex: 0 0 auto;
    padding: 2px 6px;
    border-radius: 4px;
    background: #dff4f7;
    color: #015e70;
    font-size: 12px;
    font-weight: 700;
}

@media (max-width: 1199.98px) {
    .crm-lead-pipeline-sidebar .crm-lead-pipeline-table {
        --height: 240px;
        height: 240px;
        max-height: 240px;
    }
}

.crm-lead-state {
    padding: 2rem;
    border: 1px dashed #b9c8db;
    border-radius: 8px;
    background: var(--bs-white);
    color: #4b5b70;
    text-align: center;
}

.crm-lead-table {
    min-width: 0;
    flex: 1 1 auto;
}

.crm-lead-table__scroll {
    height: calc(100vh - 230px);
    max-height: calc(100vh - 230px);
    overflow: auto;
}

.crm-lead-table-row--moving {
    opacity: 0.62;
    pointer-events: none;
}

.crm-lead-table__title {
    display: block;
    max-width: 340px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #17324d;
    font-weight: 700;
    text-align: left;
}

.crm-lead-table__title:hover {
    color: var(--primary-color);
}

.crm-lead-table td small {
    display: block;
    max-width: 340px;
    margin-top: 3px;
    color: #6b7d94;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-lead-table__person {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.crm-lead-table__person > span:last-child {
    min-width: 0;
}

.crm-lead-table__person strong {
    display: block;
    color: #17324d;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-lead-table__stage {
    min-width: 145px;
}

.crm-lead-table__money {
    color: #0f766e !important;
    font-weight: 700;
    white-space: nowrap;
}

.crm-board-scroll {
    overflow-x: auto;
    padding-bottom: 4px;
}

.crm-board {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(290px, 320px);
    gap: 12px;
    align-items: start;
}

.crm-stage {
    display: flex;
    flex-direction: column;
    min-height: 68vh;
    background: var(--bs-white);
    border: 1px solid #d7e1ec;
    border-radius: 5px;
    box-shadow: 0 10px 24px -20px rgba(15, 44, 88, 0.28);
    transition: border-color var(--transition-default), box-shadow var(--transition-default);
}

.crm-stage--dragover {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 2px rgba(var(--primary-rgb), 0.16);
}

.crm-stage__header {
    padding: 12px;
    border-bottom: 1px solid #ebf1f7;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.crm-stage__title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.crm-stage__title {
    color: #163453;
    font-size: 0.95rem;
    font-weight: 700;
}

.crm-stage__add {
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--primary-color);
}

.crm-stage__add:hover {
    background: rgba(var(--primary-rgb), 0.08);
}

.crm-stage__metrics {
    display: flex;
    flex-direction: column;
    gap: 6px;
    color: #1d3557;
    font-weight: 600;
}

.crm-stage__progress {
    width: 100%;
    height: 6px;
    border: 0;
    border-radius: 999px;
    overflow: hidden;
    background: #e8edf4;
}

.crm-stage__progress::-webkit-progress-bar {
    background: #e8edf4;
    border-radius: 999px;
}

.crm-stage__progress::-webkit-progress-value {
    background: linear-gradient(90deg, #10b981 0%, #34d399 100%);
    border-radius: 999px;
}

.crm-stage__progress::-moz-progress-bar {
    background: linear-gradient(90deg, #10b981 0%, #34d399 100%);
    border-radius: 999px;
}

.crm-stage__body {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px;
    min-height: 220px;
    transition: background-color var(--transition-default);
}

.crm-stage__body--dragover {
    background: #f2f8fb;
}

.crm-stage__empty {
    flex: 1;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 20px 16px;
    border: 1px dashed #d6e1ee;
    border-radius: 6px;
    color: #5c6b7f;
    text-align: center;
}

.crm-stage__empty-icon {
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(var(--primary-rgb), 0.08);
    color: var(--primary-color);
    font-size: 1.35rem;
}

.crm-stage__empty-title {
    margin: 0;
    color: #19324d;
    font-weight: 700;
}

.crm-stage__empty-text {
    margin: 0;
    max-width: 220px;
}

.crm-lead-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 10px;
    border: 1px solid #e3eaf3;
    border-radius: 8px;
    background: #fbfdff;
    box-shadow: 0 10px 20px -22px rgba(15, 44, 88, 0.45);
    cursor: grab;
    transition: border-color var(--transition-default), box-shadow var(--transition-default), transform var(--transition-default), opacity var(--transition-default);
}

.crm-lead-card:hover {
    border-color: #c6d5e3;
    box-shadow: 0 12px 24px -22px rgba(15, 44, 88, 0.55);
    transform: translateY(-1px);
}

.crm-lead-card:active {
    cursor: grabbing;
}

.crm-lead-card--dragging {
    opacity: 0.55;
    border-style: dashed;
    transform: rotate(1deg);
}

.crm-lead-card--moving {
    opacity: 0.65;
    pointer-events: none;
}

.crm-lead-card__header,
.crm-lead-card__footer {
    display: flex;
    align-items: center;
    gap: 8px;
}

.crm-avatar {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #fde68a 0%, #f59e0b 100%);
    color: #7c2d12;
    font-weight: 700;
}

.crm-avatar--sm {
    width: 32px;
    height: 32px;
    font-size: 12px;
}

.crm-lead-card__person {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    flex: 1;
}

.crm-lead-card__person strong,
.crm-lead-card__person span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-lead-card__person strong {
    color: #17324d;
    font-size: 0.96rem;
}

.crm-lead-card__person span,
.crm-lead-card__description,
.crm-lead-card__meta {
    color: #617286;
    font-size: 0.84rem;
}

.crm-lead-card__rotten {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fee2e2;
    color: #dc2626;
    font-weight: 700;
}

.crm-lead-card__content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.crm-lead-card__title {
    margin: 0;
    color: #17324d;
    font-weight: 700;
}

.crm-lead-card__description {
    margin: 0;
    line-height: 1.45;
}

.crm-lead-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.crm-lead-card__meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.crm-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.crm-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 10px;
    border-radius: 999px;
    background: #e5e7eb;
    color: #111827;
    font-size: 0.77rem;
    font-weight: 600;
}

.crm-chip--neutral {
    background: #edf2f7;
    color: #334155;
}

.crm-chip--money {
    background: #dbeafe;
    color: #1d4ed8;
}

.crm-lead-card__edit {
    white-space: nowrap;
}

.crm-lead-card__stage {
    min-width: 0;
    flex: 1;
}

.crm-entity-page {
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: calc(100vh - 90px);
    background: #f4f7fb;
}

.crm-entity-page__header,
.crm-entity-page__toolbar,
.crm-entity-page__table {
    border-radius: 8px;
    overflow: hidden;
}

.crm-entity-page__header {
    border-radius: 0;
    overflow: visible;
    background: transparent;
    box-shadow: none;
    margin: 0;
}

.crm-entity-page__toolbar,
.crm-entity-page__table {
    border: 1px solid #d8e2ea;
    background: var(--bs-white);
    box-shadow: 0 8px 20px -16px rgba(24, 39, 75, 0.22);
}

.crm-entity-page__header .container-fluid {
    padding: 0;
}

.crm-entity-page__header-strip {
    height: 100%;
}

.crm-entity-page__header-strip--title {
    display: flex;
    align-items: center;
    margin: 0;
}

.crm-entity-page__header-strip--actions {
    padding: 0;
}

.crm-entity-page__header-copy {
    display: flex;
    flex-direction: column;
    gap: 4px;
    justify-content: center;
    min-width: 0;
    color: var(--bs-white);
}

.crm-entity-page__header-copy p {
    margin: 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: 0.92rem;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-entity-page__header-eyebrow {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.8;
}

.crm-entity-page__actions,
.crm-entity-page__toolbar,
.crm-entity-page__toolbar-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.crm-entity-page__actions {
    margin-left: auto;
    justify-content: flex-end;
}

.crm-entity-page__actions .button-theme {
    white-space: nowrap;
}

.crm-entity-page__toolbar {
    padding: 12px 16px;
}

.crm-entity-page__search {
    min-width: 280px;
    flex: 1 1 360px;
}

.crm-entity-page__filter-select {
    min-width: 220px;
    flex: 0 0 220px;
}

.crm-import-hint {
    color: #5d6f83;
    font-size: 0.84rem;
}

.crm-organization-person-section {
    padding: 10px;
    border: 1px solid #dbe6f0;
    border-radius: 6px;
    background: #f8fbff;
}

.crm-organization-person-section__title {
    margin-bottom: 8px;
    color: #17324d;
    font-weight: 700;
}

.crm-entity-page__table {
    padding: 12px;
}

.crm-entity-page__table .theme-table,
.crm-entity-page__table table {
    margin-bottom: 0;
}

.crm-table-action-btn {
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95rem;
    box-shadow: 0 12px 22px -18px rgba(15, 23, 42, 0.48);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.crm-table-action-btn--danger {
    box-shadow: 0 14px 24px -18px rgba(220, 53, 69, 0.68);
}

.crm-table-action-btn:hover,
.crm-table-action-btn:focus-visible,
.crm-receiver-delete-btn:hover,
.crm-receiver-delete-btn:focus-visible {
    transform: translateY(-1px);
    filter: saturate(1.04);
}

.crm-table-action-btn:hover,
.crm-table-action-btn:focus-visible {
    box-shadow: 0 16px 28px -20px rgba(15, 23, 42, 0.52);
}

.crm-table-action-btn--danger:hover,
.crm-table-action-btn--danger:focus-visible {
    box-shadow: 0 18px 30px -20px rgba(220, 53, 69, 0.76);
}

.crm-receiver-delete-btn {
    min-height: 34px;
    padding: 0 10px;
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 0.84rem;
    font-weight: 600;
    box-shadow: 0 14px 24px -18px rgba(220, 53, 69, 0.68);
    white-space: nowrap;
}

.crm-campaign-detail-page {
    position: relative;
    min-height: 100%;
    padding: 0;
    background: #fff;
}

.crm-campaign-page .section_buttons_height_left,
.crm-campaign-page .section-buttons {
    min-height: 52px;
}

.crm-campaign-header-titlebar {
    min-width: 0;
}

.crm-campaign-header-title {
    display: block;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-campaign-main > .container-fluid,
.crm-campaign-main > .container-fluid > .row {
    flex: 1 1 auto;
    min-height: 0;
}

.crm-campaign-workspace {
    min-width: 0;
}

.crm-campaign-workspace .crm-campaign-detail-page {
    min-height: calc(100vh - 11rem);
    min-height: calc(100dvh - 11rem);
    padding: 3px 0 0;
    background: transparent;
}

.crm-campaign-detail-page__inner {
    min-height: 0;
    height: 100%;
}

.crm-campaign-detail-state {
    min-height: calc(100vh - 160px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #5e7187;
    background: #fff;
    border: 1px solid #d7dce2;
}

.crm-campaign-workspace-shell {
    padding-top: 0.25rem;
    min-height: calc(100vh - 150px);
}

.crm-campaign-workspace-panel {
    min-height: calc(100vh - 160px);
    background: #fff;
    border: 1px solid #d7dce2;
    display: flex;
    flex-direction: column;
}

.crm-campaign-main-tabs {
    background: #f5f7f9;
    border-bottom: 1px solid #cfd6dd;
    overflow-x: auto;
    flex-wrap: nowrap;
}

.crm-campaign-main-tabs .nav-link {
    height: 34px;
    min-width: 96px;
    padding: 0 14px;
    border-radius: 0;
    border-top: 0;
    color: #111827;
    font-weight: 700;
    font-size: 13px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
}

.crm-campaign-main-tabs .nav-link.active {
    background: #fff;
    border-color: #cfd6dd #cfd6dd #fff;
}

.crm-campaign-info-strip {
    padding: 8px 10px 6px;
    border-bottom: 1px solid #cfd6dd;
    background: #fff;
}

.crm-campaign-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 22px;
    row-gap: 6px;
}

.crm-campaign-info-line {
    display: grid;
    grid-template-columns: 116px 12px minmax(0, 1fr);
    align-items: baseline;
    min-width: 0;
    font-size: 13px;
    line-height: 1.85;
}

.crm-campaign-info-label {
    color: #1f2937;
    white-space: nowrap;
}

.crm-campaign-info-separator {
    text-align: center;
    color: #111827;
}

.crm-campaign-info-value {
    min-width: 0;
    color: #111827;
    font-weight: 700;
    text-decoration: underline;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-campaign-info-actions {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
    min-width: 0;
}

.crm-campaign-body-scroll {
    flex: 1 1 auto;
    overflow: auto;
    padding: 10px 10px 0;
    background: #fff;
}

.crm-campaign-sidebar .tab-inner {
    padding-right: 0;
}

.crm-campaign-sidebar .theme-form_groups {
    padding: 0;
}

.crm-campaign-sidebar-table-wrap {
    flex: 1 1 auto;
    min-height: 0;
}

.crm-campaign-sidebar-table {
    --height: 100%;
    height: 100%;
    max-height: 100%;
}

.crm-campaign-sidebar-table table {
    table-layout: fixed;
}

.crm-campaign-sidebar-table th,
.crm-campaign-sidebar-table td {
    padding: 5px 6px;
    vertical-align: middle;
    white-space: normal;
}

.crm-campaign-sidebar-table th:nth-child(1),
.crm-campaign-sidebar-table td:nth-child(1) {
    width: auto;
}

.crm-campaign-sidebar-table th:nth-child(2),
.crm-campaign-sidebar-table td:nth-child(2) {
    width: 78px;
}

.crm-campaign-sidebar-table th:nth-child(3),
.crm-campaign-sidebar-table td:nth-child(3) {
    width: 68px;
}

.crm-campaign-sidebar-row {
    cursor: pointer;
}

.crm-campaign-sidebar-row:hover td,
.crm-campaign-sidebar-row.table-active td {
    background: #e8f6f8;
}

.crm-campaign-sidebar-main {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.crm-campaign-sidebar-main__title {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.crm-campaign-sidebar-main__title strong,
.crm-campaign-sidebar-main > span,
.crm-campaign-sidebar-main > small {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-campaign-sidebar-main__title strong {
    color: #17324d;
    font-size: 0.86rem;
    line-height: 1.25;
    white-space: nowrap;
}

.crm-campaign-sidebar-main__title .badge {
    flex: 0 0 auto;
    font-size: 0.68rem;
}

.crm-campaign-sidebar-main > span,
.crm-campaign-sidebar-main > small {
    color: #637b8a;
    font-size: 0.76rem;
    line-height: 1.3;
    white-space: nowrap;
}

.crm-campaign-sidebar-main > small {
    display: flex;
    align-items: center;
    gap: 4px;
}

.crm-campaign-sidebar-progress {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.crm-campaign-sidebar-progress strong {
    color: #17324d;
    font-size: 0.78rem;
    line-height: 1.2;
}

.crm-campaign-sidebar-progress span {
    color: #637b8a;
    font-size: 0.68rem;
    line-height: 1.2;
}

.crm-campaign-sidebar-action {
    width: 28px;
    height: 26px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.crm-campaign-sidebar-list {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 4px 2px 6px 0;
}

.crm-campaign-sidebar-state {
    padding: 18px 14px;
    border: 1px dashed #c8d6e6;
    border-radius: 5px;
    background: #fbfdff;
    color: #5e7187;
    text-align: center;
}

.crm-contract-sidebar-table th:nth-child(1),
.crm-contract-sidebar-table td:nth-child(1) {
    width: auto;
}

.crm-contract-sidebar-table th:nth-child(2),
.crm-contract-sidebar-table td:nth-child(2),
.crm-contract-sidebar-table th:nth-child(3),
.crm-contract-sidebar-table td:nth-child(3) {
    width: 76px;
}

.crm-contract-sidebar-main small i {
    flex: 0 0 auto;
}

.crm-contract-sidebar-status {
    display: block;
    max-width: 100%;
    overflow: hidden;
    color: #17324d;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-contract-header-left {
    padding-left: 0 !important;
}

.crm-contract-main {
    padding-left: 5px;
    padding-right: 10px;
}

.crm-contract-main > .container-fluid > .row {
    margin-left: 0;
    margin-right: 0;
}

.crm-contract-sidebar {
    padding-left: 0 !important;
}

.crm-contract-header-left .section-buttons_list {
    padding-left: 6px;
}

.crm-contract-workspace-inner {
    padding-top: 16px;
}

.crm-contract-workspace-panel {
    min-height: calc(100vh - 160px);
}

.crm-contract-dashboard-main {
    min-height: calc(100vh - 92px);
}

.crm-contract-dashboard-inner {
    padding: 16px 10px 0;
}

.crm-contract-dashboard .section-information {
    min-height: 0;
}

.crm-contract-dashboard-scroll {
    height: 100%;
    overflow: auto;
    padding-right: 6px;
    padding-bottom: 14px;
}

.crm-contract-dashboard-heading {
    min-height: 82px;
}

.crm-contract-metric-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.crm-contract-metric--total {
    border-left-color: #183550;
}

.crm-contract-dashboard-panel {
    margin-bottom: 12px;
}

.crm-contract-dashboard-table {
    max-height: calc(100vh - 330px);
    min-height: 240px;
    overflow: auto;
}

.crm-contract-dashboard-table table {
    min-width: 980px;
}

.crm-contract-dashboard-table th,
.crm-contract-dashboard-table td {
    vertical-align: middle;
}

.crm-contract-info-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.15fr) minmax(0, 1fr) minmax(150px, auto);
}

.crm-contract-info-grid .crm-campaign-info-line {
    grid-template-columns: 86px 12px minmax(0, 1fr);
}

.crm-contract-body-scroll {
    padding-top: 10px;
}

.crm-contract-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.crm-contract-detail-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.crm-contract-detail-grid div {
    min-width: 0;
}

.crm-contract-detail-grid span,
.crm-contract-detail-grid strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-contract-detail-grid span,
.crm-contract-section-title {
    color: #708299;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-contract-detail-grid strong {
    margin-top: 4px;
    color: #183550;
    font-size: 0.86rem;
}

.crm-contract-items-table {
    max-height: 260px;
    overflow: auto;
}

.crm-contract-items-table table {
    table-layout: fixed;
}

.crm-contract-items-table th:nth-child(2),
.crm-contract-items-table td:nth-child(2),
.crm-contract-items-table th:nth-child(3),
.crm-contract-items-table td:nth-child(3) {
    width: 130px;
}

.crm-contract-description {
    margin: 0;
    color: #183550;
    line-height: 1.5;
    white-space: pre-line;
}

.crm-contract-appendix .crm-detail-panel {
    overflow: visible;
}

.crm-contract-appendix-toolbar {
    position: relative;
    z-index: 40;
}

.crm-contract-appendix-table {
    max-height: 430px;
    overflow: auto;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.crm-contract-appendix-table table {
    min-width: 760px;
    table-layout: fixed;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.crm-contract-appendix-table tbody tr:last-child > *:first-child {
    border-bottom-left-radius: 0 !important;
}

.crm-contract-appendix-table tbody tr:last-child > *:last-child {
    border-bottom-right-radius: 0 !important;
}

.crm-contract-appendix-table th:nth-child(2),
.crm-contract-appendix-table td:nth-child(2) {
    width: 150px;
}

.crm-contract-appendix-table th:nth-child(3),
.crm-contract-appendix-table td:nth-child(3) {
    width: 90px;
}

.crm-contract-appendix-table th:last-child,
.crm-contract-appendix-table td:last-child {
    width: 54px;
}

.crm-contract-appendix-product {
    display: block;
    min-width: 0;
    overflow: hidden;
    color: #183550;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-contract-appendix-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 12px;
}

.crm-contract-print-table th:nth-child(1),
.crm-contract-print-table td:nth-child(1) {
    width: 48px;
}

.crm-contract-print-table th:nth-child(3),
.crm-contract-print-table td:nth-child(3) {
    width: 80px;
}

.crm-campaign-list-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #ffffff;
    color: #183550;
    cursor: pointer;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.crm-campaign-list-item:hover,
.crm-campaign-list-item:focus-visible,
.crm-campaign-list-item.is-active {
    border-color: #87c8d1;
    background: #f5fbfc;
    box-shadow: 0 12px 24px -20px rgba(15, 44, 88, 0.48);
    outline: none;
}

.crm-campaign-list-item__head,
.crm-campaign-list-item__foot,
.crm-campaign-list-item__progress-text,
.crm-campaign-summary,
.crm-campaign-summary__actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.crm-campaign-list-item__head,
.crm-campaign-list-item__foot,
.crm-campaign-list-item__progress-text,
.crm-campaign-summary {
    justify-content: space-between;
}

.crm-campaign-list-item__head strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.95rem;
}

.crm-campaign-list-item__subject,
.crm-campaign-list-item__foot > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #64748b;
    font-size: 0.82rem;
}

.crm-campaign-list-item__meta {
    display: grid;
    grid-template-columns: minmax(52px, auto) minmax(0, 1fr);
    gap: 8px;
    color: #52667c;
    font-size: 0.82rem;
}

.crm-campaign-list-item__meta span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-campaign-list-item__meta i {
    width: 16px;
    margin-right: 4px;
    color: #0f7987;
}

.crm-campaign-list-item__progress {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.crm-campaign-list-item__progress-text {
    color: #607389;
    font-size: 0.78rem;
}

.crm-campaign-list-item__progress-bar {
    height: 5px;
    overflow: hidden;
    border-radius: 999px;
    background: #e8eef5;
}

.crm-campaign-list-item__progress-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #0f96a8;
}

.crm-campaign-list-item__actions {
    display: flex;
    align-items: center;
    gap: 5px;
    flex: 0 0 auto;
}

.crm-campaign-list-item__actions .crm-table-action-btn {
    width: 30px;
    height: 30px;
    font-size: 0.78rem;
}

.crm-campaign-summary-panel .crm-detail-panel__body {
    min-height: 0;
}

.crm-campaign-detail-shell {
    height: 100%;
    margin: 0;
}

.crm-campaign-detail-shell .box-item {
    height: 100%;
}

.crm-campaign-detail-shell .box-item_wrapper {
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: 10px;
}

.crm-campaign-detail-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 34px;
}

.crm-campaign-detail-title > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-campaign-detail-tabs {
    flex: 0 0 auto;
    padding-top: 4px;
}

.crm-campaign-detail-tabs .tab_checkin {
    min-height: 34px;
    padding: 7px 14px !important;
    gap: 7px;
}

.crm-campaign-tab-count {
    min-width: 22px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border-radius: 999px;
    background: #e2e8f0;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 700;
}

.crm-campaign-main-tabs .nav-link.active .crm-campaign-tab-count {
    background: #d9eef2;
    color: #0f6b78;
}

.crm-campaign-detail-tab-body {
    flex: 1 1 auto;
    min-height: 0;
}

.crm-campaign-detail-tab-body .crm-detail-panel {
    border: 0;
    box-shadow: none;
    background: transparent;
    backdrop-filter: none;
}

.crm-campaign-detail-tab-body .crm-detail-panel__body {
    min-height: 0;
    padding: 8px 0 0;
}

.crm-campaign-body-scroll .crm-detail-panel {
    border: 0;
    box-shadow: none;
    background: transparent;
    backdrop-filter: none;
}

.crm-campaign-body-scroll .crm-detail-panel__body {
    min-height: 0;
    padding: 0;
}

.crm-campaign-summary-panel__body {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.crm-campaign-summary {
    align-items: flex-start;
}

.crm-campaign-summary__main {
    min-width: 0;
}

.crm-campaign-summary__title {
    margin: 0;
    color: #183550;
    font-size: 1.45rem;
    font-weight: 700;
    line-height: 1.25;
}

.crm-campaign-summary__subtitle {
    margin: 5px 0 0;
    color: #64748b;
    line-height: 1.5;
}

.crm-campaign-summary__stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.crm-campaign-summary-stat {
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #f8fbff;
}

.crm-campaign-summary-stat--primary {
    background: #ecfbf8;
    border-color: #c6eee5;
}

.crm-campaign-summary-stat span,
.crm-campaign-summary__meta dt {
    display: block;
    color: #708299;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-campaign-summary-stat strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-top: 5px;
    color: #183550;
    font-size: 1rem;
}

.crm-campaign-summary__meta {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(180px, 0.6fr) minmax(220px, 0.8fr);
    gap: 10px;
    margin: 0;
}

.crm-campaign-summary__meta div {
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #ffffff;
}

.crm-campaign-summary__meta dd {
    margin: 5px 0 0;
    color: #183550;
    font-weight: 600;
    line-height: 1.45;
}

.crm-campaign-detail__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    padding: 8px 10px;
    border: 1px solid #d7dce2;
    border-radius: 0;
    background: #f7f9fb;
}

.crm-campaign-detail__toolbar-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.crm-campaign-detail__toolbar-info strong {
    color: #183550;
    font-size: 0.95rem;
}

.crm-campaign-detail__toolbar-info span {
    color: #61758d;
    line-height: 1.35;
    font-size: 0.82rem;
}

.crm-campaign-detail__toolbar-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.crm-campaign-detail__toolbar-actions .button-theme {
    white-space: nowrap;
}

.crm-campaign-detail__import-note {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px 14px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #f8fbff;
}

.crm-campaign-detail__import-note + .crm-campaign-detail__import-note {
    margin-top: 10px;
}

.crm-campaign-detail__import-note strong {
    color: #183550;
}

.crm-campaign-detail__import-note span {
    color: #64748b;
    line-height: 1.55;
}

.crm-template-variables {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 14px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.crm-template-variables__head {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.crm-template-variables__head strong {
    color: #183550;
}

.crm-template-variables__head span {
    color: #61758d;
    line-height: 1.55;
}

.crm-template-variables__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 10px;
}

.crm-template-variables__item {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-height: 100%;
    padding: 10px 12px;
    border: 1px solid #dbe6f0;
    border-radius: 4px;
    background: #ffffff;
}

.crm-template-variables__item code {
    color: #0f4c81;
    font-size: 0.78rem;
    font-weight: 700;
}

.crm-template-variables__item strong {
    color: #183550;
    font-size: 0.92rem;
}

.crm-template-variables__item span,
.crm-template-variables__item small {
    color: #64748b;
    line-height: 1.5;
}

.crm-campaign-receiver-modal {
    width: min(960px, 100%);
}

.crm-campaign-customer-modal {
    width: min(1120px, 100%);
}

.crm-campaign-receiver-modal__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.crm-campaign-receiver-modal__upload {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 14px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.crm-campaign-receiver-modal__upload-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.crm-campaign-receiver-modal__upload-info strong,
.crm-campaign-receiver-modal__preview-head strong {
    color: #183550;
}

.crm-campaign-receiver-modal__upload-info span,
.crm-campaign-receiver-modal__preview-head span {
    color: #61758d;
    line-height: 1.5;
}

.crm-campaign-receiver-modal__preview-head {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.crm-customer-picker {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.crm-customer-picker__filters {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 240px auto;
    gap: 12px;
    align-items: end;
}

.crm-customer-picker__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid #dbe6f0;
    border-radius: 3px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.crm-customer-picker__summary-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.crm-customer-picker__summary-text strong {
    color: #183550;
}

.crm-customer-picker__summary-text span {
    color: #64748b;
    line-height: 1.5;
}

.crm-customer-picker__status {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.crm-customer-picker__status strong {
    color: #183550;
    font-size: 0.86rem;
}

.crm-customer-picker__status span {
    color: #64748b;
    font-size: 0.75rem;
    line-height: 1.4;
}

.crm-customer-picker__empty {
    padding: 24px;
    border: 1px dashed #dbe6f0;
    border-radius: 3px;
    text-align: center;
    color: #64748b;
    background: #fbfdff;
}

.crm-customer-picker__pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.crm-customer-picker__pagination span {
    color: #52667c;
    font-size: 0.9rem;
}

.crm-contact-page .section-main {
    min-height: calc(100vh - 7.5rem);
    min-height: calc(100dvh - 7.5rem);
}

.crm-contact-header-left .button-theme,
.crm-contact-header-right .button-theme {
    gap: 6px;
}

.crm-contact-selected-title {
    min-width: 0;
    flex: 1 1 auto;
    padding: 0 14px;
    color: #ffffff;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-contact-sidebar .theme-form_groups {
    padding: 0;
}

.crm-contact-sidebar-table table {
    table-layout: fixed;
}

.crm-contact-sidebar-table th,
.crm-contact-sidebar-table td {
    vertical-align: middle;
    white-space: normal;
}

.crm-contact-sidebar-table th:nth-child(1),
.crm-contact-sidebar-table td:nth-child(1) {
    width: 52%;
}

.crm-contact-sidebar-table th:nth-child(2),
.crm-contact-sidebar-table td:nth-child(2) {
    width: 22%;
}

.crm-contact-sidebar-table th:nth-child(3),
.crm-contact-sidebar-table td:nth-child(3) {
    width: 26%;
}

.crm-contact-list-main {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.crm-contact-list-main__icon {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8e5ea;
    border-radius: 6px;
    background: #f5fafb;
    color: #245d68;
}

.crm-contact-list-main__text {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.crm-contact-list-main__text strong,
.crm-contact-list-main__text small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-contact-list-main__text strong {
    color: #142d3b;
    font-size: 0.86rem;
    line-height: 1.25;
    white-space: nowrap;
}

.crm-contact-list-main__text small {
    color: #637b8a;
    font-size: 0.76rem;
    line-height: 1.3;
    white-space: nowrap;
}

.crm-contact-type-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0;
    white-space: nowrap;
}

.crm-contact-type-badge--person {
    background: #e9f7ef;
    color: #17663b;
}

.crm-contact-type-badge--company {
    background: #edf4ff;
    color: #2159a5;
}

.crm-contact-sidebar-total {
    margin-bottom: 4px;
    color: #52667c;
    font-size: 0.82rem;
    font-weight: 600;
}

.crm-contact-detail,
.crm-contact-empty {
    width: 100%;
    min-height: 100%;
}

.crm-contact-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #4f6476;
    text-align: center;
}

.crm-contact-empty__icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8e5ea;
    border-radius: 8px;
    background: #f7fbfd;
    color: #245d68;
    font-size: 1.55rem;
}

.crm-contact-detail {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.crm-contact-detail__hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid #dbe6f0;
}

.crm-contact-detail__identity {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.crm-contact-detail__avatar {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d6e5e9;
    border-radius: 8px;
    background: #f5fafb;
    color: #173f4a;
    font-size: 1.1rem;
    font-weight: 800;
}

.crm-contact-detail__title {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.crm-contact-detail__title h1 {
    margin: 0;
    color: #112f3f;
    font-size: 1.32rem;
    font-weight: 800;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.crm-contact-detail__title p {
    margin: 0;
    color: #627789;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.crm-contact-detail__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.crm-contact-detail__actions .button-theme_primary_outline,
.crm-contact-detail__actions .crm-contact-action-edit {
    border-color: #0f6cbd;
    background: #ffffff;
    color: #0f6cbd !important;
}

.crm-contact-detail__actions .button-theme_primary_outline:hover,
.crm-contact-detail__actions .button-theme_primary_outline:focus,
.crm-contact-detail__actions .crm-contact-action-edit:hover,
.crm-contact-detail__actions .crm-contact-action-edit:focus {
    border-color: #0a58ca;
    background: #eaf4ff;
    color: #0a58ca !important;
}

.crm-contact-detail__actions .button-theme_primary_outline i,
.crm-contact-detail__actions .button-theme_primary_outline span,
.crm-contact-detail__actions .crm-contact-action-edit i,
.crm-contact-detail__actions .crm-contact-action-edit span {
    color: inherit !important;
}

.crm-contact-detail__metrics,
.crm-contact-detail__grid {
    display: grid;
    gap: 10px;
}

.crm-contact-detail__metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.crm-contact-detail__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.crm-contact-detail__metric,
.crm-contact-detail__field {
    min-width: 0;
    padding: 12px;
    border: 1px solid #dbe6f0;
    border-radius: 6px;
    background: #ffffff;
}

.crm-contact-detail__metric span,
.crm-contact-detail__field span {
    display: block;
    margin-bottom: 5px;
    color: #65798b;
    font-size: 0.78rem;
    font-weight: 700;
}

.crm-contact-detail__metric strong,
.crm-contact-detail__field strong {
    display: block;
    min-width: 0;
    color: #183550;
    font-size: 0.92rem;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.crm-contact-detail__field--wide {
    grid-column: 1 / -1;
}

.crm-contact-empty {
    padding: 16px;
}

.crm-contact-workspace-panel {
    min-height: 100%;
    border: 0;
}

.crm-contact-detail-actions {
    align-items: center;
    padding-right: 8px;
}

.crm-contact-detail-actions .button-theme {
    min-height: 28px;
    height: 28px;
    padding: 0 10px;
    font-size: 0.78rem;
}

.crm-contact-main-tabs {
    border-top: 0;
}

.crm-contact-body-scroll {
    padding: 14px;
}

.crm-contact-tab-panel {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.crm-contact-common-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.crm-contact-common-grid div {
    min-width: 0;
}

.crm-contact-common-grid span,
.crm-contact-common-grid strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-contact-common-grid span {
    color: #708299;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-contact-common-grid strong {
    margin-top: 4px;
    color: #183550;
    font-size: 0.86rem;
}

.crm-contact-common-grid__wide {
    grid-column: 1 / -1;
}

.crm-contact-related-loading,
.crm-contact-related-empty {
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #52667c;
    font-weight: 700;
}

.crm-contact-related-empty {
    flex-direction: column;
}

.crm-contact-related-empty i {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8e5ea;
    border-radius: 8px;
    background: #f7fbfd;
    color: #0f6cbd;
    font-size: 1.35rem;
}

.crm-contact-related-table {
    overflow: auto;
}

.crm-contact-related-table th {
    white-space: nowrap;
}

.crm-contact-related-table td {
    vertical-align: middle;
}

.crm-contact-related-table td small {
    display: block;
    margin-top: 2px;
    color: #65798b;
    font-size: 0.76rem;
}

.crm-contact-related-link {
    color: #0f6cbd;
    font-weight: 800;
    text-decoration: none;
}

.crm-contact-related-link:hover,
.crm-contact-related-link:focus {
    color: #0a58ca;
    text-decoration: underline;
}

@media (max-width: 1200px) {
    .crm-campaign-info-grid,
    .crm-campaign-summary__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 992px) {
    .crm-campaign-info-grid,
    .crm-campaign-summary__meta {
        grid-template-columns: 1fr;
    }

    .crm-campaign-info-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 768px) {
    .crm-lead-page {
        padding: 8px;
    }

    .crm-campaign-detail-page {
        padding: 0;
    }

    .crm-lead-page__search,
    .crm-lead-page__toolbar,
    .crm-lead-card__footer,
    .crm-campaign-detail__toolbar-actions,
    .crm-entity-page__search,
    .crm-entity-page__filter-select,
    .crm-entity-page__actions,
    .crm-entity-page__toolbar-actions,
    .crm-entity-page__header-copy {
        width: 100%;
    }

    .crm-lead-page__filters,
    .crm-lead-card__footer,
    .crm-entity-page__actions,
    .crm-entity-page__toolbar-actions,
    .crm-entity-page__header .section-buttons_list {
        justify-content: stretch;
    }

    .crm-lead-page__filters .button-theme,
    .crm-lead-card__footer .button-theme,
    .crm-entity-page__actions .button-theme,
    .crm-entity-page__toolbar-actions .button-theme,
    .crm-lead-card__stage {
        flex: 1 1 auto;
    }

    .crm-entity-page {
        padding: 8px;
    }

    .crm-entity-page__header,
    .crm-entity-page__toolbar,
    .crm-entity-page__table {
        padding-left: 12px;
        padding-right: 12px;
    }

    .crm-entity-page__header {
        padding-left: 0;
        padding-right: 0;
    }

    .crm-entity-page__header .section-buttons_list__item {
        width: 100%;
        flex-wrap: wrap;
    }

    .crm-lead-page__header .section-buttons_list__item {
        width: 100%;
        flex-wrap: wrap;
    }

    .crm-lead-workspace .crm-lead-page {
        padding: 8px;
    }

    .crm-campaign-detail__toolbar {
        flex-direction: column;
        align-items: stretch;
    }

    .crm-campaign-info-line {
        grid-template-columns: 104px 12px minmax(0, 1fr);
    }

    .crm-campaign-info-actions .button-theme,
    .crm-campaign-detail__toolbar-actions .button-theme {
        width: 100%;
        justify-content: center;
    }

    .crm-campaign-receiver-modal__upload,
    .crm-campaign-receiver-modal__actions,
    .crm-customer-picker__summary,
    .crm-customer-picker__pagination {
        flex-direction: column;
        align-items: stretch;
    }

    .crm-customer-picker__filters {
        grid-template-columns: 1fr;
    }

    .crm-campaign-summary,
    .crm-campaign-summary__actions,
    .crm-campaign-list-item__foot {
        align-items: stretch;
        flex-direction: column;
    }

    .crm-campaign-summary__actions .button-theme {
        width: 100%;
        justify-content: center;
    }

    .crm-campaign-summary__stats,
    .crm-campaign-summary__meta {
        grid-template-columns: 1fr;
    }

    .crm-campaign-workspace .crm-campaign-detail-page {
        padding-top: 0;
    }

    .crm-contact-import-actions,
    .crm-contact-detail-actions,
    .crm-contact-detail__hero,
    .crm-contact-detail__identity,
    .crm-contact-detail__actions {
        width: 100%;
    }

    .crm-contact-header-left .section-buttons_list__item,
    .crm-contact-header-right .section-buttons_list__item,
    .crm-contact-detail__hero,
    .crm-contact-detail__identity {
        flex-wrap: wrap;
    }

    .crm-contact-import-actions,
    .crm-contact-detail-actions,
    .crm-contact-detail__actions {
        justify-content: stretch;
    }

    .crm-contact-import-actions .button-theme,
    .crm-contact-detail-actions .button-theme,
    .crm-contact-detail__actions .button-theme {
        flex: 1 1 auto;
    }

    .crm-contact-detail__metrics,
    .crm-contact-detail__grid,
    .crm-contact-common-grid {
        grid-template-columns: 1fr;
    }
}

.crm-detail-tab-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px;
    margin-bottom: 16px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.crm-detail-tab-actions__info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.crm-detail-tab-actions__info strong {
    color: #183550;
    font-size: 1rem;
}

.crm-detail-tab-actions__info span {
    color: #61758d;
    line-height: 1.5;
}

.crm-detail-tab-actions__button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid #0f6cbd;
    border-radius: 5px;
    background: linear-gradient(135deg, #ffffff 0%, #eff6ff 100%);
    color: #0f6cbd;
    font-weight: 700;
    box-shadow: 0 16px 28px -24px rgba(15, 108, 189, 0.55);
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.crm-detail-tab-actions__button:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 30px -24px rgba(15, 108, 189, 0.62);
}

.crm-stage-outcome-modal__field-grid--triple {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.crm-detail-picker-note,
.crm-detail-quote-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.crm-detail-picker-note {
    padding: 12px 14px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #f8fbff;
}

.crm-detail-picker-note strong,
.crm-detail-quote-summary strong {
    color: #183550;
}

.crm-detail-picker-note span,
.crm-detail-quote-summary span {
    color: #64748b;
}

.crm-detail-picker-note strong,
.crm-detail-picker-note span,
.crm-detail-quote-summary strong,
.crm-detail-quote-summary span {
    display: block;
}

.crm-detail-quote-summary {
    padding: 12px 14px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: linear-gradient(180deg, #f8fbff 0%, #eef6ff 100%);
}

@media (max-width: 768px) {
    .crm-detail-tab-actions,
    .crm-detail-picker-note,
    .crm-detail-quote-summary {
        grid-template-columns: 1fr;
    }

    .crm-detail-tab-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .crm-detail-tab-actions__button {
        justify-content: center;
    }

    .crm-stage-outcome-modal__field-grid--triple {
        grid-template-columns: 1fr;
    }
}

.crm-task-page {
    gap: 12px;
}

.crm-task-import-layout .stock-import-header-left .section_buttons_height_left,
.crm-task-import-layout .stock-import-header-right .section-buttons {
    min-height: 52px;
}

.crm-task-header-titlebar {
    min-width: 0;
    gap: 10px;
}

.crm-task-header-title {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-task-header-close {
    display: inline-flex;
    flex: 0 0 28px;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #fff;
}

.crm-task-header-close:hover {
    background: rgba(255, 255, 255, 0.16);
}

.crm-task-header-titlebar .ms-auto {
    flex: 0 0 auto;
}

.crm-task-import-layout .stock-import-header-left .section-buttons_list {
    padding-left: 6px;
}

.crm-task-import-layout .stock-import-header-left .section-buttons_list__item,
.crm-task-import-layout .stock-import-header-left .box-form {
    min-width: 0;
}

.crm-task-import-layout .stock-import-header-left .box-form {
    flex: 1 1 auto;
}

.crm-task-import-layout .stock-import-header-left .outpatient_type {
    display: block;
    font-size: 16px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-task-import-layout .stock-import-header-left .hstack.gap-5px {
    flex: 0 0 auto;
}

.crm-task-sidebar {
    align-self: flex-start;
    min-height: 0 !important;
}

.crm-task-sidebar .section-sidebar,
.crm-task-sidebar .section-tab,
.crm-task-sidebar .tab-content,
.crm-task-sidebar .tab-pane,
.crm-task-sidebar .tab-inner {
    height: auto !important;
}

.crm-task-sidebar .tab-inner {
    flex: 0 0 auto !important;
}

.crm-task-sidebar .section-table {
    flex: 0 0 auto !important;
}

.crm-task-sidebar .stock-import-sidebar-pagination {
    margin-top: 6px !important;
}

.crm-task-sidebar-table .table th,
.crm-task-sidebar-table .table td {
    white-space: nowrap;
    vertical-align: middle;
}

.crm-task-sidebar-table {
    --height: auto;
    height: auto !important;
    max-height: calc(100dvh - 360px);
    overflow: auto;
}

.crm-task-sidebar-table .table {
    width: max-content;
    min-width: 100%;
    table-layout: auto;
}

.crm-task-sidebar-table .table th {
    background: #f6fafb;
    color: #30555d;
    font-weight: 700;
}

.crm-task-sidebar-cell {
    overflow: hidden;
    text-overflow: ellipsis;
}

.crm-task-sidebar-table .table th:nth-child(1),
.crm-task-sidebar-cell--status {
    width: 1%;
    max-width: 118px;
}

.crm-task-sidebar-table .table th:nth-child(2),
.crm-task-sidebar-cell--code {
    width: 1%;
    max-width: 120px;
}

.crm-task-sidebar-table .table th:nth-child(3),
.crm-task-sidebar-cell--title {
    max-width: 240px;
}

.crm-task-sidebar-table .table th:nth-child(4),
.crm-task-sidebar-cell--deadline {
    width: 1%;
    max-width: 130px;
}

.crm-task-sidebar-code {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    max-width: 100%;
}

.crm-task-sidebar-code strong,
.crm-task-sidebar-code span {
    display: inline-block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-task-sidebar-code strong {
    color: #183550;
}

.crm-task-sidebar-code span {
    color: #64748b;
    font-size: 12px;
    line-height: 1.3;
}

.crm-task-sidebar-title {
    display: block;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #183550;
    font-weight: 600;
    line-height: 1.35;
}

.crm-task-sidebar-status {
    display: inline-block;
    max-width: 100%;
    padding: 3px 8px;
    border-radius: 4px;
    color: #ffffff;
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-task-sidebar-status--todo {
    background: #64748b;
}

.crm-task-sidebar-status--in-progress {
    background: #2563eb;
}

.crm-task-sidebar-status--submitted {
    background: #0891b2;
}

.crm-task-sidebar-status--done {
    background: #16a34a;
}

.crm-task-sidebar-status--blocked {
    background: #dc2626;
}

.crm-task-sidebar-status--rejected {
    background: #ea580c;
}

.crm-task-sidebar-status--canceled {
    background: #475569;
}

.crm-task-sidebar .row-clickable {
    cursor: pointer;
}

.crm-task-sidebar .row-clickable.table-active td,
.crm-task-sidebar .row-clickable:hover td {
    background: #e8f6f8;
}

.crm-compact-sidebar {
    align-self: flex-start;
    min-height: 0 !important;
}

.crm-compact-sidebar .section-sidebar,
.crm-compact-sidebar .section-tab,
.crm-compact-sidebar .tab-content,
.crm-compact-sidebar .tab-pane,
.crm-compact-sidebar .tab-inner {
    height: auto !important;
}

.crm-compact-sidebar .tab-inner,
.crm-compact-sidebar .section-table {
    flex: 0 0 auto !important;
}

.crm-compact-sidebar .theme-form_groups {
    padding: 0;
}

.crm-compact-sidebar .stock-import-sidebar-pagination {
    margin-top: 6px !important;
}

.crm-compact-sidebar-table {
    --height: auto;
    height: auto !important;
    max-height: calc(100dvh - 360px);
    overflow: auto;
}

.crm-compact-sidebar-table table {
    width: max-content;
    min-width: 100%;
    table-layout: auto !important;
}

.crm-compact-sidebar-table .table th,
.crm-compact-sidebar-table .table td {
    padding: 5px 6px;
    vertical-align: middle;
    white-space: nowrap;
}

.crm-compact-sidebar-table .table th:nth-child(1),
.crm-compact-sidebar-table .table td:nth-child(1) {
    width: 1%;
    max-width: 118px;
}

.crm-compact-sidebar-table .table th:nth-child(2),
.crm-compact-sidebar-table .table td:nth-child(2) {
    width: 1%;
    max-width: 120px;
}

.crm-compact-sidebar-table .table th:nth-child(3),
.crm-compact-sidebar-table .table td:nth-child(3) {
    width: auto;
    max-width: 320px;
}

.crm-contract-sidebar-cell--title,
.crm-quote-sidebar-cell--title {
    white-space: normal !important;
}

.crm-contract-sidebar-title,
.crm-quote-sidebar-title {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    word-break: break-word;
}

.crm-compact-sidebar-table .table th:nth-child(4),
.crm-compact-sidebar-table .table td:nth-child(4) {
    width: 1%;
    max-width: 130px;
}

.crm-compact-sidebar .crm-campaign-sidebar-row {
    cursor: pointer;
}

.crm-compact-sidebar .crm-campaign-sidebar-row.table-active td,
.crm-compact-sidebar .crm-campaign-sidebar-row:hover td {
    background: #e8f6f8;
}

.crm-task-workspace .section-information {
    min-height: 0;
}

.crm-task-workspace-tabs {
    flex: 0 0 auto;
}

.crm-task-tab-panel {
    padding-top: 8px;
}

.crm-task-info-strip {
    border: 1px solid #cfd6dd;
    border-bottom: 1px solid #cfd6dd;
}

.crm-task-info-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1.2fr) minmax(150px, auto);
}

.crm-task-info-grid .crm-campaign-info-line {
    grid-template-columns: 88px 12px minmax(0, 1fr);
}

.crm-task-detail-scroll {
    padding: 10px 0 0;
    overflow: visible;
}

.crm-task-summary__stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.crm-task-summary__meta {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.crm-task-readonly-text {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 6px 12px 2px;
}

.crm-task-readonly-section {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    column-gap: 14px;
    align-items: start;
    min-width: 0;
}

.crm-task-readonly-section--main {
    display: block;
    padding-bottom: 10px;
    border-bottom: 1px solid #edf2f7;
}

.crm-task-readonly-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 28px;
    row-gap: 8px;
}

.crm-task-readonly-section > span,
.crm-task-readonly-section-title {
    display: block;
    margin: 0;
    color: #708299;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-task-readonly-section p {
    margin: 0;
    color: #183550;
    font-weight: 500;
    line-height: 1.45;
    white-space: pre-line;
}

.crm-task-readonly-html {
    color: #183550;
    font-weight: 500;
    line-height: 1.5;
}

.crm-task-readonly-html img {
    max-width: 100%;
    height: auto;
}

.crm-task-attachment-section {
    margin-top: 10px;
    padding: 12px;
    background: #ffffff;
    border-top: 1px solid #edf2f7;
}

.crm-task-readonly-section-title {
    margin-bottom: 8px;
}

.crm-task-attachment-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.crm-task-attachment-link {
    display: inline-flex;
    align-items: center;
    max-width: 360px;
    min-height: 32px;
    padding: 6px 10px;
    border: 1px solid #dbe6f0;
    border-radius: 5px;
    background: #f8fbff;
    color: #183550;
    gap: 7px;
    text-decoration: none;
}

.crm-task-attachment-link:hover {
    border-color: #a8d7e3;
    background: #f2fbfd;
    color: #0f6b78;
}

.crm-task-attachment-link span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-task-attachment-link small {
    flex: 0 0 auto;
    color: #708299;
}

.crm-task-assignee-picker {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    max-height: 132px;
    overflow: auto;
    padding: 8px;
    border: 1px solid #dbe6f0;
    border-radius: 6px;
    background: #ffffff;
}

.crm-task-assignee-option {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    margin: 0;
    color: #334155;
    font-size: 13px;
}

.crm-task-assignee-option span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-task-progress-box {
    overflow: visible;
}

.crm-task-start-action {
    display: flex;
    justify-content: flex-end;
}

.crm-task-issues-table {
    max-height: 320px;
}

.crm-task-issues-table table {
    table-layout: fixed;
}

.crm-task-issues-table th:nth-child(1),
.crm-task-issues-table td:nth-child(1) {
    width: 150px;
}

.crm-task-issues-table th:nth-child(2),
.crm-task-issues-table td:nth-child(2) {
    width: 150px;
}

.crm-task-issues-table th:nth-child(4),
.crm-task-issues-table td:nth-child(4),
.crm-task-issues-table th:nth-child(5),
.crm-task-issues-table td:nth-child(5) {
    width: 110px;
}

.crm-task-issues-table th:nth-child(6),
.crm-task-issues-table td:nth-child(6) {
    width: 150px;
}

.crm-task-attachments-table {
    max-height: 280px;
}

.crm-task-attachments-table table {
    table-layout: fixed;
}

.crm-task-attachments-table th,
.crm-task-attachments-table td {
    vertical-align: middle;
    white-space: normal;
}

.crm-task-attachments-table th:nth-child(2),
.crm-task-attachments-table td:nth-child(2) {
    width: 120px;
}

.crm-task-attachments-table th:nth-child(3),
.crm-task-attachments-table td:nth-child(3),
.crm-task-attachments-table th:nth-child(4),
.crm-task-attachments-table td:nth-child(4) {
    width: 150px;
}

.crm-task-attachments-table th:nth-child(5),
.crm-task-attachments-table td:nth-child(5) {
    width: 180px;
}

.crm-task-attachment-name {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.crm-task-attachment-name span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-task-overview {
    display: grid;
    grid-template-columns: repeat(6, minmax(120px, 1fr));
    gap: 8px;
}

.crm-task-overview__item {
    min-height: 68px;
    padding: 10px 12px;
    border: 1px solid #dbe6f0;
    border-radius: 6px;
    background: #ffffff;
}

.crm-task-overview__item span,
.crm-task-overview__item strong {
    display: block;
}

.crm-task-overview__item span {
    color: #64748b;
    font-size: 12px;
}

.crm-task-overview__item strong {
    margin-top: 4px;
    color: #183550;
    font-size: 22px;
    line-height: 1.2;
}

.crm-task-row--overdue td {
    background: #fff7f7;
}

.crm-task-links {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 4px;
}

.crm-task-links span {
    padding: 2px 6px;
    border: 1px solid #dbe6f0;
    border-radius: 4px;
    background: #f8fbff;
    color: #49657f;
}

.crm-task-progress,
.crm-task-detail__progress {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 8px;
}

.crm-task-progress progress,
.crm-task-detail__progress progress {
    width: 100%;
    height: 8px;
    accent-color: #0f6cbd;
}

.crm-task-detail__summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(180px, 240px);
    gap: 16px;
    align-items: center;
    padding: 12px 14px;
    border: 1px solid #dbe6f0;
    border-radius: 6px;
    background: #f8fbff;
}

.crm-task-detail__progress {
    grid-template-columns: auto 1fr auto;
}

.crm-task-issue-form,
.crm-task-timeline {
    height: 100%;
    padding: 12px;
    border: 1px solid #dbe6f0;
    border-radius: 6px;
    background: #ffffff;
}

.crm-task-timeline {
    max-height: 540px;
    overflow: auto;
}

.crm-task-timeline__item {
    position: relative;
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    gap: 10px;
    padding-bottom: 14px;
}

.crm-task-timeline__item:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 12px;
    bottom: 0;
    left: 5px;
    width: 1px;
    background: #dbe6f0;
}

.crm-task-timeline__marker {
    position: relative;
    z-index: 1;
    width: 11px;
    height: 11px;
    margin-top: 5px;
    border-radius: 50%;
    background: #0f6cbd;
}

.crm-task-timeline__marker--danger {
    background: #dc3545;
}

.crm-task-timeline__content {
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid #edf2f7;
    border-radius: 6px;
    background: #fbfdff;
}

.crm-task-dashboard .section-information {
    min-height: 0;
}

.crm-task-dashboard-loading {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #49657f;
    font-weight: 600;
}

.crm-task-dashboard-scroll {
    height: 100%;
    overflow: auto;
    padding-right: 6px;
    padding-bottom: 12px;
}

.crm-task-dashboard-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 78px;
    padding: 16px 18px;
    border: 1px solid #dbe6f0;
    border-radius: 6px;
    background: #ffffff;
}

.crm-task-dashboard-heading h2 {
    margin: 2px 0 0;
    color: #183550;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
}

.crm-task-dashboard-kicker {
    color: #0f6cbd;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-task-dashboard-heading__meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}

.crm-task-dashboard-heading__meta span {
    padding: 4px 8px;
    border: 1px solid #dbe6f0;
    border-radius: 4px;
    background: #f8fbff;
    color: #49657f;
    font-size: 12px;
    font-weight: 700;
}

.crm-task-metric-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
    margin-top: 8px;
}

.crm-task-metric {
    min-height: 104px;
    padding: 12px;
    border: 1px solid #dbe6f0;
    border-left: 4px solid #64748b;
    border-radius: 6px;
    background: #ffffff;
}

.crm-task-metric span,
.crm-task-metric strong,
.crm-task-metric small {
    display: block;
}

.crm-task-metric span {
    color: #49657f;
    font-size: 12px;
    font-weight: 700;
}

.crm-task-metric strong {
    margin-top: 8px;
    color: #183550;
    font-size: 28px;
    line-height: 1;
}

.crm-task-metric small {
    margin-top: 8px;
    color: #64748b;
    font-size: 12px;
    line-height: 1.25;
}

.crm-task-metric--new {
    border-left-color: #0f6cbd;
}

.crm-task-metric--warning {
    border-left-color: #dc3545;
}

.crm-task-metric--active {
    border-left-color: #f59f00;
}

.crm-task-metric--done {
    border-left-color: #198754;
}

.crm-task-metric--kpi {
    border-left-color: #7c3aed;
}

.crm-task-segment-list,
.crm-task-mini-stat-list,
.crm-task-due-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.crm-task-segment-row {
    padding: 8px 0;
    border-bottom: 1px solid #edf2f7;
}

.crm-task-segment-row:last-child {
    border-bottom: 0;
}

.crm-task-segment-row__top,
.crm-task-segment-row__meta,
.crm-task-mini-stat,
.crm-task-due-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.crm-task-segment-row__top span,
.crm-task-mini-stat span,
.crm-task-due-item em {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-task-segment-row__top span {
    color: #183550;
    font-weight: 700;
}

.crm-task-segment-row__top strong {
    color: #0f6cbd;
    font-size: 16px;
}

.crm-task-segment-bar {
    height: 7px;
    margin-top: 6px;
    overflow: hidden;
    border-radius: 4px;
    background: #e9eef5;
}

.crm-task-segment-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #0f6cbd;
}

.crm-task-segment-row__meta {
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: 6px;
}

.crm-task-segment-row__meta span {
    color: #64748b;
    font-size: 12px;
}

.crm-task-dashboard-table {
    max-height: 360px;
}

.crm-task-dashboard-table th,
.crm-task-dashboard-table td {
    vertical-align: middle;
    white-space: normal;
}

.crm-task-mini-stat {
    min-height: 36px;
    padding: 7px 9px;
    border: 1px solid #edf2f7;
    border-radius: 6px;
    background: #fbfdff;
}

.crm-task-mini-stat span {
    color: #49657f;
    font-size: 12px;
}

.crm-task-mini-stat strong {
    color: #183550;
    font-size: 16px;
}

.crm-task-due-item {
    width: 100%;
    min-height: 54px;
    padding: 8px 10px;
    border: 1px solid #edf2f7;
    border-radius: 6px;
    background: #ffffff;
    text-align: left;
}

.crm-task-due-item:hover {
    border-color: #a8d7e3;
    background: #f5fbfd;
}

.crm-task-due-item span {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.crm-task-due-item strong {
    color: #0f6cbd;
    font-size: 12px;
}

.crm-task-due-item em {
    color: #183550;
    font-style: normal;
    font-weight: 700;
}

.crm-task-due-item small {
    flex: 0 0 auto;
    color: #64748b;
    font-size: 12px;
}

.crm-task-empty-row {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border: 1px dashed #dbe6f0;
    border-radius: 6px;
    color: #64748b;
}

@media (max-width: 992px) {
    .crm-task-info-grid,
    .crm-task-summary__stats,
    .crm-task-summary__meta,
    .crm-task-readonly-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .crm-task-info-grid .crm-campaign-info-actions {
        justify-content: flex-start;
    }

    .crm-task-overview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .crm-task-dashboard-heading,
    .crm-task-dashboard-heading__meta {
        align-items: flex-start;
        justify-content: flex-start;
    }

    .crm-task-dashboard-heading {
        flex-direction: column;
    }

    .crm-task-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .crm-task-detail__summary {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .crm-task-info-grid,
    .crm-task-summary__stats,
    .crm-task-summary__meta,
    .crm-task-readonly-details {
        grid-template-columns: 1fr;
    }

    .crm-task-readonly-section {
        grid-template-columns: 1fr;
        row-gap: 4px;
    }
}
