/* Campaigns: restrained slate/sage accents, compact records, native accessible controls. */
.campaigns-root{max-width:1500px;margin:auto;color:#273b4a;--cmp-border:#ccd7df;--cmp-ink:#253c4d}
.cmp-titlebar{box-sizing:border-box;width:100%;max-width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding:10px 12px;border:1px solid #e2e8ec;border-radius:9px;background:#fbfcfd;box-shadow:0 1px 1px #00000004;overflow:hidden}.cmp-titlebar>div:first-child{min-width:0;max-width:100%}
.cmp-titlebar h2{margin:1px 0;color:#294252;font-size:20px;line-height:1.15;overflow-wrap:anywhere;word-break:break-word}.cmp-titlebar p{margin:2px 0 0;color:#7b8993;font-size:10px;line-height:1.3;overflow-wrap:anywhere;word-break:break-word}
.cmp-heading-actions,.cmp-selectionbar{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.cmp-heading-actions{flex:0 1 auto;min-width:0;justify-content:flex-end}.cmp-heading-actions>.btn{min-height:34px;padding:6px 9px;font-size:10px;white-space:normal;line-height:1.15}
.cmp-list-filter{display:flex;justify-content:flex-end;margin:12px 0}.cmp-list-filter .field>span{color:#dbe5ec}
.cmp-campaign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,275px),1fr));gap:14px;margin-bottom:14px}
.cmp-campaign-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:20px;border:1px solid #ccd7df;border-radius:12px;background:#f7f9fa;color:#4d6576;text-align:left;font:inherit;cursor:pointer;box-shadow:0 2px 5px #00000008}
.cmp-campaign-card:hover{border-color:#7e99aa;background:#eef3f6}.cmp-campaign-card>strong{font-size:19px;color:#233e50;overflow-wrap:anywhere}.cmp-campaign-card>span{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.cmp-campaign-card .cmp-kicker{font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.06em;color:#6b817c}
.cmp-card-foot{border-top:1px solid #d9e1e6;padding-top:12px;margin-top:auto;display:flex;justify-content:space-between;font-weight:700}
.cmp-back{border:0;background:transparent;color:#526f84;font:inherit;font-size:13px;font-weight:750;padding:6px 0;cursor:pointer;text-align:left;text-decoration:none}.cmp-back:hover{text-decoration:underline}
.cmp-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#f5f8fa;border:1px solid #ccd7df;border-radius:10px;margin-bottom:16px;overflow:hidden}.cmp-stats>div{padding:13px 16px;display:grid;gap:4px;border-right:1px solid #d7e0e6}.cmp-stats>div:last-child{border:0}.cmp-stats strong{font-size:22px;color:#34554f}.cmp-stats span{font-size:11px;color:#607789;font-weight:750;text-transform:uppercase}
.cmp-stage{display:flex;align-items:center;gap:12px;background:#e6eeed;color:#354f4a;border:1px solid #bbcfc9;border-radius:10px;padding:12px 16px;margin-bottom:12px}.cmp-stage>span{width:30px;height:30px;border:1px solid #829e95;border-radius:50%;display:grid;place-items:center;font-weight:800}.cmp-stage>div{display:grid;gap:4px}.cmp-stage strong{font-size:16px}.cmp-stage small{font-size:12px;color:#60766f}
.cmp-member-filters{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(170px,1.2fr) minmax(120px,1fr) minmax(130px,1fr) auto;gap:10px;align-items:end;margin-bottom:12px;padding:14px;background:#f3f6f8;border:1px solid #ccd7df;border-radius:10px}.cmp-member-filters .field>span{font-size:11px;color:#526b7d}.cmp-member-filters input,.cmp-member-filters select{min-width:0;width:100%;min-height:42px}
.cmp-members{display:grid;gap:9px}.cmp-member{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(135px,.8fr) minmax(175px,1.3fr) minmax(156px,.8fr);gap:16px;align-items:start;padding:15px;border:1px solid #ccd7df;border-radius:10px;background:#f8fafb;color:#2d4657}.cmp-person,.cmp-status,.cmp-activity,.cmp-actions{min-width:0;display:grid;gap:5px}.cmp-person strong{font-size:16px;overflow-wrap:anywhere}.cmp-person>span{font-size:14px;font-variant-numeric:tabular-nums}.cmp-member small{font-size:11px;line-height:1.5;color:#647b8c;overflow-wrap:anywhere}.cmp-activity>span{font-size:12px;line-height:1.5}.cmp-activity p{margin:0;color:#647b8c;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;max-height:72px;overflow:auto}.cmp-actions{gap:8px}.cmp-actions .btn{width:100%;min-height:40px;padding:9px 10px;font-size:12px}
.cmp-badge{justify-self:start;border:1px solid #b9c7d2;border-radius:7px;padding:4px 7px;background:#eaf0f4;color:#446074;font-size:11px;font-weight:750;line-height:1.4}.cmp-badge.is-declined,.cmp-badge.is-deceased{background:#eee5e6;color:#74515a;border-color:#cbb3b9}.cmp-badge.is-appointment{background:#e5eee9;color:#456a55;border-color:#b6cdbd}.cmp-badge.is-follow_up{background:#eeebdf;color:#726444;border-color:#d0c5a8}
.cmp-update-select{display:block}.cmp-update-select select{appearance:auto;width:100%;min-height:40px;border:1px solid #839cac;border-radius:8px;background:#e4ecf1;color:#36576d;font:inherit;font-weight:750;font-size:12px;padding:8px;cursor:pointer}.cmp-update-select select:disabled{opacity:.55;cursor:not-allowed}
.cmp-results-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0;color:#bdcbd5;font-size:12px}.cmp-empty{padding:26px;text-align:center;border:1px dashed #b5c5d0;background:#f2f6f8;color:#61798b;border-radius:10px;font-size:14px;line-height:1.6}.cmp-notice{padding:12px 14px;border:1px solid #b4cabe;border-radius:9px;background:#e8f0eb;color:#3d5b4a;font-size:13px;line-height:1.5}.cmp-notice.is-error{border-color:#d2b7ba;background:#f3e9ea;color:#7b3d48}
.campaign-dialog{width:min(740px,calc(100vw - 24px));color:#263f50}.campaign-picker{width:min(860px,calc(100vw - 24px))}.campaign-dialog .modal-body{background:#fbfcfd}.campaign-dialog .cmp-form{display:grid;gap:14px}.campaign-dialog .field{min-width:0;display:grid;gap:6px}.campaign-dialog .field>span{color:#4b667a;font-size:13px;font-weight:750}.campaign-dialog input,.campaign-dialog select,.campaign-dialog textarea{box-sizing:border-box;width:100%;min-width:0;font:inherit;font-size:16px;color:#203a4c;background:#fff;border:1px solid #b5c5d0;border-radius:8px;padding:10px;min-height:44px}.campaign-dialog textarea{resize:vertical}.campaign-dialog input[type=checkbox],.cmp-selectionbar input[type=checkbox],.cmp-pick-row input[type=checkbox],.cmp-search-checkbox input{width:19px;min-width:19px;min-height:19px;height:19px;padding:0;accent-color:#59798e;flex-shrink:0}.cmp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cmp-help{font-size:12px;color:#617a8c;line-height:1.55;margin:0}.cmp-selected-client{padding:12px 14px;background:#eaf1ed;border:1px solid #bcd0c4;border-radius:10px;display:grid;gap:5px}.cmp-selected-client>span{font-size:14px}.cmp-selected-client>small{font-size:12px;color:#5b7867}
.cmp-schedule{min-width:0;margin:0;padding:14px;border:1px solid #c4d3dc;border-radius:11px;background:#f4f7f9;display:grid;gap:12px}.cmp-schedule[hidden]{display:none}.cmp-schedule legend{padding:0 6px;font-size:15px;font-weight:800;color:#355369}.cmp-agent{padding:10px;border:1px solid #d0cedc;border-radius:9px;background:#eeedf3}.cmp-availability{font-size:13px;line-height:1.5;padding:10px;background:#eaf0f4;border:1px solid #c5d3de;border-radius:9px}.cmp-replace{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.6}.cmp-history{border:1px solid #d1dce4;border-radius:9px;background:#f4f7f9;padding:12px;margin-top:15px;min-width:0}.cmp-history>summary{cursor:pointer;font-size:13px;font-weight:750;color:#4e6e84}.cmp-history article{display:grid;gap:4px;border-top:1px solid #d1dce4;padding:12px 0;margin-top:10px}.cmp-history small{font-size:11px;color:#678091}.cmp-history p{font-size:13px;margin:0;color:#516e82;white-space:pre-wrap;overflow-wrap:anywhere}
.cmp-picker-search{display:grid;gap:12px;padding-bottom:14px}.cmp-picker-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;font-size:13px;color:#47657b}.cmp-picker-tools label{display:flex;align-items:center;gap:8px}.cmp-pick-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #cbd8e0;border-radius:9px;background:#f5f8fa;margin:8px 0;color:#254357;cursor:pointer}.cmp-pick-row>span{display:grid;gap:4px;min-width:0}.cmp-pick-row strong{font-size:15px;overflow-wrap:anywhere}.cmp-pick-row span span{font-size:12px;overflow-wrap:anywhere}.cmp-pick-row small{font-size:11px;color:#6a7e8b}
.cmp-selectionbar{padding:10px 12px;background:#edf2f6;border:1px solid #bacbd7;border-radius:9px;margin-bottom:12px;color:#3c607a;font-size:13px}.cmp-selectionbar span{margin-right:auto;font-weight:750}.cmp-selectionbar .btn{font-size:12px;min-height:40px}.cmp-search-select-row{display:grid;grid-template-columns:32px minmax(0,1fr);gap:5px;align-items:center}.cmp-search-checkbox{display:grid;place-items:center;min-height:44px;cursor:pointer}.cmp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.campaigns-root button:focus-visible,.campaigns-root select:focus-visible,.campaign-dialog button:focus-visible,.cmp-selectionbar button:focus-visible{outline:3px solid #82a4bd;outline-offset:2px}
@media(max-width:1080px){.cmp-member-filters{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.cmp-member-filters .field:first-child{grid-column:span 2}.cmp-member{grid-template-columns:minmax(130px,1.1fr) minmax(120px,.8fr) minmax(150px,1.2fr)}.cmp-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.cmp-actions .btn,.cmp-actions .cmp-update-select{width:auto;min-width:155px}.cmp-titlebar{align-items:flex-start}}
@media(max-width:620px){.cmp-titlebar{display:grid;grid-template-columns:minmax(0,1fr);padding:8px 9px;gap:7px;margin-bottom:8px;overflow:hidden}.cmp-titlebar>div:first-child{min-width:0;width:100%;overflow:hidden}.cmp-titlebar h2{max-width:100%;font-size:17px;line-height:1.12;margin:0;overflow-wrap:anywhere;word-break:break-word}.cmp-titlebar p{max-width:100%;font-size:9px;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.cmp-heading-actions{width:100%;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.cmp-heading-actions>.btn{width:100%;min-width:0;min-height:32px;padding:5px 6px;font-size:9px;line-height:1.1;white-space:normal;overflow-wrap:anywhere}.cmp-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.cmp-stats>div{padding:10px}.cmp-stats strong{font-size:20px}.cmp-stats span{font-size:9px}.cmp-member-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.cmp-member-filters .field:first-child{grid-column:1/-1}.cmp-member-filters input,.cmp-member-filters select{font-size:16px}.cmp-member-filters>button{min-height:44px}.cmp-member{grid-template-columns:minmax(0,1fr) minmax(100px,.75fr);gap:10px;padding:12px}.cmp-person strong{font-size:15px}.cmp-activity{grid-column:1/-1;border-top:1px solid #d5e0e8;padding-top:8px}.cmp-activity>p{max-height:52px}.cmp-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cmp-actions .btn,.cmp-actions .cmp-update-select{width:100%;min-width:0}.cmp-update-select select{font-size:16px;min-height:44px}.cmp-actions .btn{font-size:14px;min-height:44px}.cmp-form-grid{grid-template-columns:1fr}.campaign-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.campaign-dialog .modal-body{padding:14px}.campaign-dialog .modal-footer{gap:10px;flex-wrap:wrap}.campaign-dialog .footer-actions{display:flex;flex:1;gap:8px}.campaign-dialog .footer-actions>.btn{flex:1;min-height:44px}.cmp-stage{padding:10px}.cmp-stage small{font-size:11px}.cmp-picker-tools{align-items:flex-start}.cmp-selectionbar .btn{min-height:44px}.cmp-selectionbar span{flex-basis:100%}}
