:root{--ink:#173b40;--muted:#778789;--canvas:#f3f5f4;--line:#dde5e2;--green:#277968}body{font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--canvas);font-size:14px}a{text-decoration:none;color:var(--green)}.app{display:flex;min-height:100vh}.sidebar{width:236px;flex-shrink:0;background:#14383e;color:#d4e4e3;padding:35px 22px;display:flex;flex-direction:column;position:fixed;height:100vh}.brand{display:flex;align-items:center;gap:9px;color:white;font-size:27px;font-weight:650;letter-spacing:-1px;margin-bottom:42px}.brand-mark{display:inline-flex;background:#c7ed86;color:#163b3e;width:72px;height:36px;justify-content:center;align-items:center;border-radius:10px}.nav-label{font-size:9px;letter-spacing:1.7px;color:#86abae;margin:12px 10px}.sidebar nav a{display:block;padding:11px 12px;color:#c8dada;border-radius:8px;margin:4px 0}.sidebar nav a:hover,.sidebar nav a.active{background:#2a5054;color:white}.sidebar-footer{margin-top:auto;padding-top:35px;font-size:11px;line-height:2}.workspace{margin-left:236px;min-width:0;width:calc(100% - 236px)}.topbar{background:#fff;border-bottom:1px solid var(--line);height:78px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.user-chip{border-left:1px solid var(--line);padding-left:16px}.workspace main{padding:36px;min-height:calc(100vh - 125px)}h1{font-size:30px;font-weight:650;letter-spacing:-.8px}h2{font-size:19px;font-weight:600}h3{font-size:15px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--green);font-weight:700;margin-bottom:9px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px}.subtitle{color:var(--muted);font-size:13px}.btn-primary{background:var(--green);border-color:var(--green)}.btn-primary:hover{background:#1a6355;border-color:#1a6355}.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:24px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric{background:white;border:1px solid var(--line);border-radius:12px;padding:23px}.metric .number{font-size:34px;font-weight:600;letter-spacing:-1px;margin:8px 0}.metric:first-child{background:var(--ink);color:#fff}.metric:first-child .text-muted{color:#aecbc8!important}.metric small{font-size:11px}.board{display:flex;gap:16px;overflow-x:auto;padding-bottom:20px}.column{flex:0 0 255px;background:#e9eeec;padding:12px;border-radius:12px}.column-heading{display:flex;justify-content:space-between;gap:8px;padding:8px 3px 14px;font-size:calc(12px + 2pt);font-weight:650}.lead-card{display:block;background:white;border:1px solid var(--line);border-radius:9px;padding:17px;margin-bottom:11px;color:var(--ink)}.lead-card:hover{border-color:#69a793;box-shadow:0 4px 15px #183d4210}.lead-card.overdue{border-left:3px solid #ce5a50}.source-pill{display:inline-block;font-size:9px;text-transform:uppercase;letter-spacing:1px;padding:4px 7px;border-radius:4px;background:#eef4e8;color:#52734b}.empty{color:#86938e;text-align:center;padding:35px 10px;font-size:12px;border:1px dashed #ccd8d2;border-radius:8px}.filters{display:flex;flex-wrap:wrap;gap:10px;padding:14px;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:22px}.filters .form-control,.filters .form-select{width:auto;max-width:210px;font-size:12px}.table{--bs-table-color:var(--ink);font-size:12px}.table th{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);padding:14px 10px}.table td{vertical-align:middle;padding:15px 10px}.timeline-item{border-left:2px solid #d8e7df;padding:0 0 25px 20px;margin-left:6px}.timeline-item small{color:var(--muted)}.timeline-item p{margin:8px 0 0;white-space:pre-wrap}.form-wrap{max-width:780px}.form-wrap p label{display:block;margin-bottom:6px}.helptext{display:block;color:var(--muted);font-size:12px;margin-top:4px}.errorlist{color:#b53f38}.progress{height:8px;background:#edf2ef}.progress-bar{background:#46977d}footer{padding:14px 36px;font-size:9px;color:#91a39f;letter-spacing:1px;display:flex;justify-content:space-between}.form-control,.form-select{border-color:var(--line)}.notification-unread{border-left:3px solid #277968}audio{width:100%;height:36px}@media(max-width:1000px){.sidebar{width:190px}.workspace{margin-left:190px;width:calc(100% - 190px)}.workspace main{padding:22px}.topbar{padding:18px;height:auto;flex-wrap:wrap}.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.app{display:block}.sidebar{position:static;width:100%;height:auto;padding:15px}.brand{margin-bottom:10px}.sidebar nav{display:flex;flex-wrap:wrap}.sidebar nav a{font-size:11px;padding:6px}.nav-label,.sidebar-footer{display:none}.workspace{width:100%;margin:0}.workspace main{padding:16px}.user-chip{display:none}.page-heading{align-items:flex-start}h1{font-size:25px}.metric{padding:16px}}





/* Shared CRM components: all Bootstrap button states use the same palette. */

:root{--bs-primary:#277968;--bs-primary-rgb:39,121,104;--bs-link-color:#277968;--bs-link-hover-color:#175e50}

.btn{border-radius:8px;font-size:12px;font-weight:600;padding:10px 16px;line-height:1.5;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;white-space:normal;transition:background-color .15s,border-color .15s,box-shadow .15s}

.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#277968;--bs-btn-border-color:#277968;--bs-btn-hover-bg:#1a6355;--bs-btn-hover-border-color:#1a6355;--bs-btn-hover-color:#fff;--bs-btn-active-bg:#175748;--bs-btn-active-border-color:#175748;--bs-btn-active-color:#fff;--bs-btn-disabled-bg:#7eaaa0;--bs-btn-disabled-border-color:#7eaaa0;--bs-btn-focus-shadow-rgb:39,121,104}

.btn-outline-primary,.btn-outline-success{--bs-btn-color:#277968;--bs-btn-border-color:#a9c9bd;--bs-btn-hover-color:#175e50;--bs-btn-hover-bg:#eaf3ef;--bs-btn-hover-border-color:#277968;--bs-btn-active-color:#fff;--bs-btn-active-bg:#277968;--bs-btn-active-border-color:#277968;--bs-btn-disabled-color:#849d94;--bs-btn-disabled-border-color:#d6e1dc;--bs-btn-focus-shadow-rgb:39,121,104;background-color:#fff}

.btn-light,.btn-outline-secondary{--bs-btn-color:#46645e;--bs-btn-bg:#f3f6f4;--bs-btn-border-color:#e0e8e3;--bs-btn-hover-bg:#e8eeea;--bs-btn-hover-color:#173b40;--bs-btn-hover-border-color:#b9ccc2;--bs-btn-active-bg:#dce8e0;--bs-btn-active-border-color:#9fbbab;--bs-btn-focus-shadow-rgb:39,121,104}

.btn-sm{min-height:32px;padding:6px 11px;font-size:11px}.btn:focus-visible,a:focus-visible{outline:3px solid #8cbbae;outline-offset:3px}

.form-control:focus,.form-select:focus{border-color:#6ca790;box-shadow:0 0 0 .2rem #2779681f}.form-check-input:checked{background-color:var(--green);border-color:var(--green)}

.form-control,.form-select{font-size:13px;min-height:40px;border-radius:8px;color:var(--ink)}form label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}form p:last-of-type{margin-bottom:18px}form .errorlist{padding-left:18px}.card{border:1px solid var(--line);border-radius:12px;color:var(--ink);background:#fff}

.page-heading{align-items:flex-start;flex-wrap:wrap}.page-heading h1{margin-bottom:7px}.page-heading .subtitle{margin-bottom:0;max-width:690px}.page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.page-heading>.page-actions,.page-heading>.btn{margin-top:7px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.section-heading h2{margin-bottom:6px}.section-heading .subtitle{margin-bottom:0}.panel{min-width:0}.panel>h2{margin-bottom:16px}.panel .table-responsive{margin-top:4px}.table{--bs-table-bg:transparent}.table thead th{border-bottom:1px solid var(--line);background:#f8faf8}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#f8fbf9}.empty-cell{text-align:center;color:var(--muted)!important;padding:32px 16px!important}.empty-note{font-size:13px;color:var(--muted);margin:14px 0 0;line-height:1.7}.status-badge,.count-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:#edf4ef;color:#42685b;font-size:11px;font-weight:600;padding:5px 9px;white-space:nowrap}.count-badge{font-variant-numeric:tabular-nums;min-width:32px}.status-badge.danger{color:#a7483c;background:#faeee9}.metric .number{font-variant-numeric:tabular-nums;line-height:1.25}.metric small{color:var(--muted);line-height:1.6}.metric:first-child small{color:#bfd8cc}.metric>span{font-size:12px;font-weight:500}.metric:first-child{background:linear-gradient(130deg,#173e42,#20564e);border-color:#173e42}.metric:first-child .number{color:#e4f1df}

.report-filters{display:flex;align-items:flex-end;gap:14px;margin-bottom:24px;padding:18px 22px;flex-wrap:wrap}.report-filters>div:first-child{flex:1;min-width:210px}.report-filters>div{min-width:140px}.report-filters .page-actions{min-width:0}.funnel-row{margin-bottom:20px}.funnel-row:last-child{margin-bottom:0}.funnel-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:12px;gap:10px}.funnel-label strong{font-variant-numeric:tabular-nums;min-width:26px;display:inline-block;text-align:right}.funnel-label small{color:var(--muted);display:inline-block;min-width:54px;text-align:right}.progress{height:7px;border-radius:5px}.progress-bar{background:#499780;border-radius:5px}.person-dot{display:inline-flex;width:28px;height:28px;background:#edf3ec;border-radius:50%;align-items:center;justify-content:center;margin-right:10px;color:#4b7564;font-size:11px}.reason-list{display:flex;flex-wrap:wrap;gap:12px}.reason-item{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #edf1ee}.reason-item:last-child{border-bottom:0}.reason-list .reason-item{border:1px solid var(--line);border-radius:8px;padding:12px 15px;min-width:200px;flex:1;font-size:13px}

.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.project-card{display:flex;flex-direction:column}.project-card .section-heading{margin-bottom:22px}.project-card h2{font-size:21px}.project-card-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;border-top:1px solid var(--line);padding-top:18px;margin-top:auto;color:var(--muted)}.project-summary p{max-width:850px;line-height:1.7}.project-actions{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.facts{margin:0}.facts>div{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid #edf1ee}.facts>div:last-child{border:0}.facts dt{color:var(--muted);font-size:12px;font-weight:400}.facts dd{font-size:13px;margin:0;overflow-wrap:anywhere}.comment-composer{padding-top:22px;border-top:1px solid var(--line);margin-top:8px}.timeline-item{overflow-wrap:anywhere}.uuid{overflow-wrap:anywhere}.form-wrap{width:100%}.column .lead-card a{font-weight:600}.column .lead-card span,.column .lead-card small{display:block;margin-top:8px}.workspace main>h2{margin:26px 0 16px}

@media(max-width:1100px){.report-filters>div:first-child{flex-basis:100%}.project-grid{grid-template-columns:1fr}.project-actions .btn{font-size:11px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:650px){.panel{padding:18px}.page-heading{gap:12px}.page-heading>.page-actions{width:100%;margin-top:0}.page-actions .btn{flex:1}.project-actions{align-items:stretch}.project-actions .btn{flex:1 1 100%}.report-filters{gap:12px}.report-filters>div{flex:1 1 calc(50% - 12px);min-width:0}.report-filters .page-actions{flex-basis:100%}.report-filters>div:first-child{min-width:0}.metric .number{font-size:29px}.metric{padding:16px}.metrics{gap:10px}.facts>div{grid-template-columns:1fr;gap:5px}.topbar>div{flex-wrap:wrap}.section-heading{flex-wrap:wrap}.project-card-footer{gap:12px}.reason-item{flex-wrap:wrap}.container .panel{max-width:100%}.table-responsive .table{min-width:520px}}

@media(prefers-reduced-motion:reduce){.btn,.progress-bar{transition:none}}



/* Analytics comparison panels stack on narrow screens. */

.report-comparison-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px;align-items:start}.report-comparison-grid .table{min-width:460px}@media(max-width:1000px){.report-comparison-grid{grid-template-columns:1fr}}



/* Person comparison during import review. */

.review-compare{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}

.review-card{min-width:0;border:1px solid #dfe7e4;border-radius:16px;padding:22px;background:#fff}

.review-incoming{background:#f5faf7;border-color:#cfe2d9}.review-existing{display:grid;gap:18px;min-width:0}

.review-card-heading{margin-bottom:20px}.review-card-heading h3{font-size:19px;overflow-wrap:anywhere;margin:7px 0 0}

.review-facts{margin:0}.review-facts>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid #e7edea}

.review-facts dt{font-size:13px;color:#65766f;font-weight:500}.review-facts dd{margin:0;font-size:14px;overflow-wrap:anywhere}

.review-section{margin-top:22px}.review-section h4{font-size:14px;font-weight:700;margin-bottom:10px}

.review-phones,.review-vacancies{list-style:none;padding:0;margin:0;display:grid;gap:8px}

.review-phones{display:flex;flex-wrap:wrap}.review-phones li{padding:6px 10px;border:1px solid #dfe7e4;border-radius:8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}

.review-vacancies li{padding:10px 0;border-bottom:1px solid #e7edea;overflow-wrap:anywhere}.review-vacancies strong,.review-vacancies span{display:block}.review-vacancies span{color:#65766f;font-size:13px;margin-top:4px}

.review-choice{display:flex;gap:10px;align-items:center;margin-top:24px;padding:13px;border-radius:10px;border:1px solid #cbdcd5;cursor:pointer;font-weight:600;font-size:14px}

.review-choice:has(input:checked){background:#e0f0e7;border-color:#287869}.review-choice input{accent-color:#287869;flex-shrink:0}

.review-confirm{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:22px;padding-top:20px;border-top:1px solid #e7edea}.review-confirm p{margin:0}.review-confirm .btn{flex-shrink:0}

@media(max-width:1050px){.review-compare{grid-template-columns:1fr}.review-card{padding:18px}}

@media(max-width:600px){.review-facts>div{grid-template-columns:1fr;gap:3px}.review-confirm{align-items:stretch;flex-direction:column}.review-case .section-heading{gap:12px}}



/* Person facts: compact desktop layout; existing single-column mobile layout stays intact. */

.project-picker{position:relative;min-width:0}

.project-picker summary{cursor:pointer;list-style:none;min-height:39px}

.project-picker summary::-webkit-details-marker{display:none}

.project-picker summary:focus-visible{outline:3px solid #83b8aa;outline-offset:2px}

.project-picker-value,.project-picker-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;width:100%}

.project-picker-value>span:first-child,.project-picker-caption>span:first-child{overflow-wrap:anywhere;min-width:0}

.project-picker-menu{position:absolute;z-index:1050;top:calc(100% + 6px);left:0;right:0;max-height:320px;overflow:auto;background:white;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #173b401a;padding:6px}

.project-picker-option{display:flex;align-items:center;gap:10px;padding:10px;border-radius:6px;cursor:pointer}

.project-picker-option:hover,.project-picker-option:focus-within{background:#edf4ef}

.project-picker-option input{accent-color:var(--green);flex-shrink:0}

.project-status-hold{background:#fff2d9;color:#805e16}.project-status-done{background:#e9f0fa;color:#365c8c}.project-status-archive{background:#eef0f1;color:#636e73}

/* Add two typographic points to labels and values on person/response cards only. */
.response-person-card .facts dt{font-size:calc(12px + 2pt)}
.response-person-card .facts dd{font-size:calc(13px + 2pt)}

@media (min-width:1100px){

  .response-person-card .facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}

  .response-person-card .facts>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:16px 0;border:0;border-top:1px solid #edf1ee}

  .response-person-card .facts dt{font-size:calc(12px + 2pt);line-height:1.4}

  .response-person-card .facts dd{width:100%;min-width:0;font-size:calc(14px + 2pt);line-height:1.6}

  .response-person-card .facts dd>span{min-width:0;overflow-wrap:anywhere}

  .response-person-card .facts dd .btn{flex-shrink:0}

}





/* Import error summaries and permanent reports share the CRM panel geometry. */

.crm-import-alert{position:relative;background:#fff3f1;border:1px solid #edbbb5;border-left:4px solid #bd493f;color:#77332e;border-radius:12px}

.crm-import-alert.alert-dismissible{padding:24px 56px 24px 24px}

.crm-import-alert h2{color:#8e332c;font-size:18px;overflow-wrap:anywhere}

.crm-import-alert .eyebrow,.crm-import-alert a,.crm-import-alert summary{color:#a03a31}

.crm-import-alert .subtitle,.crm-import-alert .text-muted{color:#85534e!important}

.crm-import-alert a{text-decoration:underline;text-underline-offset:3px}

.crm-import-alert .btn-light{background:#fff8f7;border-color:#e6b8b2;color:#8e332c;text-decoration:none}

.crm-import-alert .btn-light:hover{background:#f9e0dc;border-color:#cf8d84}

.crm-import-alert .table{--bs-table-color:#77332e}

.crm-import-alert .table thead th,.crm-import-alert .table tbody tr:hover{background:#fbe6e2;color:#85443d}

.crm-import-alert .table td{border-color:#efd2cd;overflow-wrap:anywhere}

.crm-import-alert .btn-close{opacity:.7}

.crm-import-alert .btn-close:focus-visible,.crm-import-alert summary:focus-visible{outline:2px solid #a03a31;outline-offset:4px}

@media(max-width:650px){.crm-import-alert.alert-dismissible{padding:18px 48px 18px 18px}}



/* Queue-only filter layout; other pages retain their own filter geometry. */

.queue-filters{display:grid;grid-template-columns:minmax(200px,1.3fr) minmax(140px,.8fr) minmax(140px,.8fr) minmax(220px,1.3fr) auto;align-items:end;gap:16px;padding:20px}

.queue-filters>div{min-width:0}

.queue-filters .form-label{display:block;margin-bottom:8px;font-size:12px}

.queue-filters .form-control,.queue-filters .form-select{width:100%;max-width:none;min-height:40px}

.queue-filters .project-picker-value>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.queue-filters .page-actions{flex-wrap:nowrap;gap:8px}

.queue-filters .page-actions .btn{min-height:40px}

.crm-assignment-notice{background:#fff;border:1px solid #bfd7ee;color:#244c70}

.crm-assignment-notice.notification-unread{border-left:4px solid #528fc1}



.assignment-notice-body{font-size:14px;line-height:1.7;overflow-wrap:anywhere}

.crm-assignment-notice .btn-light{background:#e1effb;border-color:#bad4ea;color:#2b608b}

.crm-assignment-notice .btn-light:hover{background:#d1e5f7;border-color:#91b9dc}

.crm-assignment-notice .text-muted{color:#587b9b!important}

@media(max-width:1350px){.queue-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.queue-filters .page-actions{grid-column:1/-1;justify-content:flex-end}}

@media(max-width:650px){.queue-filters{grid-template-columns:minmax(0,1fr);padding:16px;gap:14px}.queue-filters .page-actions{justify-content:stretch}.queue-filters .page-actions .btn{flex:1}}


/* Flash messages use the same geometry and accents as CRM notification cards. */
.crm-flash-notice{--notice-accent:#528fc1;--notice-border:#bfd7ee;background:#fff;border:1px solid var(--notice-border);border-left:4px solid var(--notice-accent);border-radius:12px;padding:24px;color:var(--ink);font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.crm-flash-notice.alert-success{--notice-accent:var(--green);--notice-border:#c6ded5}
.crm-flash-notice.alert-warning{--notice-accent:#b98a36;--notice-border:#e8d5af;background:#fffaf0;color:#765a2c}
.crm-flash-notice.alert-error,.crm-flash-notice.alert-danger{--notice-accent:#bd493f;--notice-border:#edbbb5;background:#fff3f1;color:#77332e}
@media(max-width:650px){.crm-flash-notice{padding:18px}}

.crm-flash-notice.alert-dismissible{padding-right:56px}
.crm-flash-notice .btn-close{opacity:.65}
.crm-flash-notice .btn-close:hover{opacity:1}
.crm-flash-notice .btn-close:focus-visible{outline:2px solid var(--notice-accent);outline-offset:2px}
@media(max-width:650px){.crm-flash-notice.alert-dismissible{padding-right:48px}}

/* Assignment queue: eight filter cells, four columns on desktop. */
.queue-management-filters{grid-template-columns:repeat(4,minmax(0,1fr))}
.queue-management-filters .page-actions{grid-column:auto;align-self:end}
@media(max-width:1350px){.queue-management-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.queue-management-filters .page-actions{grid-column:auto}}
@media(max-width:650px){.queue-management-filters{grid-template-columns:minmax(0,1fr)}}

.sidebar nav a.queue-nav-link{display:flex;align-items:center;gap:6px;padding-left:8px;padding-right:8px}.queue-nav-label{flex:1;min-width:0;font-size:12px}.queue-nav-link .count-badge{flex-shrink:0;min-width:24px;padding:3px 5px}

.crm-import-warning{background:#fff;border:1px solid #ead3a7;border-left:4px solid #c18a2d;color:#694f28;border-radius:12px}
.crm-import-warning h2{font-size:18px;overflow-wrap:anywhere}
.crm-import-warning .eyebrow,.crm-import-warning summary{color:#8a6324}

/* Keep the response funnel scrollbar above its upright columns. */
.board-scroll-top,
.board-scroll-top > .column {
    transform: scaleY(-1);
}

/* Keep page counters in normal flow, clear of the heading text. */
.response-page-title {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .55rem;
}
.response-page-title > .response-title-badge {
    flex: 0 0 auto;
    font-size: 15px;
    line-height: 1.2;
    letter-spacing: normal;
    font-variant-numeric: tabular-nums;
}

/* Enlarged workflow stage in the response card; other badges keep their size. */
.status-badge.response-stage-badge {
    flex: 0 0 auto;
    max-width: 100%;
    padding: 10px 18px;
    border-radius: 12px;
    font-size: 22px;
    line-height: 1.25;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
}
.response-stage-badge--red { color: #a7483c; background: #faeee9; }
.response-stage-badge--yellow { color: #85620d; background: #fff3cd; }
.response-stage-badge--green { color: #42685b; background: #edf4ef; }

/* Match phone numbers to the person heading; distinguish user comments from events. */
.response-person-card .response-phone-number {
    font-size: 19px;
    font-weight: 600;
    line-height: 1.4;
    white-space: nowrap;
}
.response-history .timeline-item--comment {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(23, 59, 64, .04);
    padding: 18px 20px;
    margin-bottom: 18px;
}
.response-history .timeline-item--comment p {
    color: var(--ink);
}

.response-history .history-record-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 16px;
}
.response-history .history-record-type {
    color: var(--muted);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
}
.response-history .history-record-type--comment {
    background: #edf4ef;
    color: var(--green);
    border-radius: 6px;
    padding: 4px 8px;
}

/* Match the compact duplicate badge even when placed inside the person's h2. */
.badge.crm-call-badge {
    font-size: 10.5px;
    width: 1.7em;
    height: 1.7em;
    padding: 0;
    justify-content: center;
}
.crm-call-badge svg {
    width: 1em;
    height: 1em;
}

/* Align the call and duplicate badges on the same line in funnel cards. */
.lead-card .crm-call-badge,
.lead-card .crm-duplicate-badge {
    vertical-align: middle;
}

/* Compact history filter in the section heading. */
.response-history-filter {
    width: 190px;
    max-width: 100%;
    margin-left: auto;
}
.response-history-filter .form-select {
    min-height: 32px;
    font-size: 12px;
    padding-top: 4px;
    padding-bottom: 4px;
}

/* Funnel ordering controls: only this column changes when a control is used. */
.board-column-sorting{display:flex;align-items:center;gap:9px;margin:0 3px 15px}
.board-date-sort{flex:1;min-width:0;color:var(--muted);font-size:10.5px;line-height:1.5}
.board-date-sort.is-active{color:var(--green);font-weight:600}
.board-date-sort span{display:inline-block;margin-left:3px;font-size:calc(10.5px + 2pt)}
.board-column-sorting .badge.board-sort-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:calc(24px + 2pt);height:calc(22px + 2pt);padding:0;font-size:calc(11px + 2pt);font-weight:600;text-decoration:none;color:var(--green);background:#f3f6f4;border:1px solid #b9ccc2;transition:background-color .15s,border-color .15s,color .15s}
.board-column-sorting .board-sort-badge:hover{color:#175e50;background:#e8eeea;border-color:#9fbbab}
.board-column-sorting .board-sort-badge.is-active{color:#fff;background:var(--green);border-color:var(--green)}
.board-column-sorting .board-sort-badge.is-active:hover{background:#1a6355;border-color:#1a6355}
.board-column-sorting a:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.board-column-sorting .board-date-sort:hover{color:#175e50}
.column .lead-card .board-refusal-badge{display:block;width:fit-content;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.column-heading>.badge{font-size:calc(9px + 2pt);flex-shrink:0;align-self:flex-start}

/* One-time authenticator input, scoped to the verification form. */
.mfa-code-entry{margin:20px 0 0;padding:0;border:0;min-width:0}
.mfa-code-entry legend{float:none;width:auto;font-size:12px;font-weight:600;margin-bottom:10px}
.mfa-code-digits{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;max-width:380px}
.mfa-code-digits .mfa-code-digit{width:100%;min-width:0;height:56px;padding:8px 0;text-align:center;font-size:26px;font-weight:600;line-height:1.2;caret-color:var(--green);font-variant-numeric:tabular-nums}
.mfa-code-digits .mfa-code-digit[aria-invalid=true]{border-color:#cf8d84}
@media(max-width:400px){.mfa-code-digits{gap:6px}.mfa-code-digits .mfa-code-digit{height:48px;font-size:22px}}

/* Fit the verification card to the six cells and keep the button equally wide. */
.mfa-verify-panel{width:100%;max-width:calc(380px + 3rem + 2px)}
@media(min-width:768px){.mfa-verify-panel{max-width:calc(380px + 6rem + 2px)}}

/* Each source has its own analytics panel. */
.report-source-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px;align-items:start}
.report-source-panel{min-width:0}
.report-source-panel .section-heading>.count-badge{flex-shrink:0}
.report-source-panel .funnel-label{font-size:calc(12px + 1pt);gap:8px;align-items:flex-start}
.report-source-panel .funnel-label small{font-size:calc(10.5px + 1pt)}
.report-source-panel .funnel-label>span:first-child{min-width:0;overflow-wrap:anywhere}
.report-source-panel .funnel-values{flex-shrink:0;white-space:nowrap}
.report-source-panel .report-source-total{margin-bottom:0;padding-top:18px;border-top:1px solid var(--line)}
.report-source-total .funnel-label>span:first-child{font-weight:600}
@media(max-width:1000px){.report-source-panels{grid-template-columns:1fr}}
