:root{--bg:#f5f6f8;--card:#fff;--text:#202124;--muted:#6b7280;--line:#dfe3e8;--blue:#1a73e8;--blue2:#1558b0;--red:#b3261e;--amber:#fff7ed;--green:#137333;--soft:#eef3f8;--shadow:0 1px 3px rgba(0,0,0,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}.hidden{display:none!important}
header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);padding:12px 18px}.head-row{max-width:1180px;margin:auto;display:flex;gap:12px;align-items:center;justify-content:space-between}.brand h1{font-size:21px;margin:0}.brand .sub{font-size:12px;color:var(--muted);margin-top:3px}.nav{max-width:1180px;margin:8px auto 0;display:flex;gap:5px;flex-wrap:wrap}.nav button{border:0;background:transparent;padding:8px 10px;border-radius:7px;cursor:pointer}.nav button.active,.nav button:hover{background:var(--soft)}
.wrap{max-width:1180px;margin:16px auto;padding:0 14px}.grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:14px;box-shadow:var(--shadow)}.critical{border-left:5px solid #c62828}.blocked-card{background:var(--amber)}.card h2,.card h3{margin:0 0 10px}.task{padding:11px 0;border-bottom:1px solid #edf0f3}.task:last-child{border-bottom:0}.task-title{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.meta{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.5}.actions{margin-top:4px}.badge{display:inline-block;border-radius:11px;padding:2px 7px;font-size:11px;background:#eef0f2}.badge.Critical{background:#fce8e6;color:#a50e0e}.badge.High{background:#fef7e0;color:#8a5a00}.badge.Normal{background:#e8f0fe;color:#174ea6}.btn{border:0;border-radius:7px;padding:8px 11px;margin:6px 4px 0 0;cursor:pointer;background:#e9eef5}.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:var(--blue2)}.btn.danger{background:var(--red);color:#fff}.btn.small{padding:6px 8px;font-size:12px}.btn.ghost{background:transparent;border:1px solid var(--line)}
input,textarea,select{width:100%;padding:9px;border:1px solid #c9cdd2;border-radius:7px;margin:4px 0 10px;background:#fff}textarea{min-height:86px;resize:vertical}label{font-size:13px;font-weight:600}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-grid .wide{grid-column:1/-1}.notice{padding:10px 12px;border-radius:8px;margin-bottom:14px;background:#eef3f8;font-size:13px}.notice.error{background:#fce8e6;color:#8c1d18;border:1px solid #f2b8b5}.notice.success{background:#e6f4ea;color:#137333;border:1px solid #ceead6}.empty{color:var(--muted);font-size:14px}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.toolbar .spacer{flex:1}.current-next{font-weight:600}.loading-line{height:6px;background:linear-gradient(90deg,#ddd,#f4f4f4,#ddd);background-size:200% 100%;animation:shimmer 1.2s linear infinite;border-radius:4px;margin:10px 0}@keyframes shimmer{to{background-position:-200% 0}}
.login{max-width:460px;margin:70px auto;padding:0 14px}.login .card{padding:24px}.login h1{margin-top:0}.auth-note{font-size:13px;color:var(--muted);line-height:1.5}.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.kpi{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px}.kpi .n{font-size:24px;font-weight:700}.kpi .l{font-size:12px;color:var(--muted)}
.login input{width:100%;margin:5px 0 14px}.auth-secondary-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.signed-in-email{font-size:12px;color:var(--muted);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.form-section-title{border-top:1px solid var(--line);padding-top:14px;margin-top:6px}.form-section-title h3{margin:0 0 3px}.angi-original{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#f7f9fc}.angi-original summary{cursor:pointer;font-weight:700}.source-data-grid{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(180px,1.3fr);gap:6px 12px;margin-top:10px;font-size:13px}.source-data-grid .source-label{color:var(--muted);font-weight:600}.source-data-grid .source-value{overflow-wrap:anywhere}
.table-wrap{overflow:auto}.simple-table{width:100%;border-collapse:collapse;font-size:13px}.simple-table th,.simple-table td{text-align:left;padding:8px;border-bottom:1px solid #eee;vertical-align:top}.simple-table th{color:#555;font-size:12px}.job-stage{font-weight:600}.comm-overdue{color:var(--red);font-weight:600}.footer{max-width:1180px;margin:28px auto;padding:0 14px 30px;color:var(--muted);font-size:11px}
@media(max-width:780px){.grid,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.kpi-row{grid-template-columns:1fr 1fr}.head-row{align-items:flex-start}.wrap{margin-top:10px}}


/* ============================================================
   PHASE 3 VISUAL LANGUAGE — color is used as a workflow cue
   ============================================================ */
:root{
  --danger-bg:#fdebea;--danger-line:#d93025;
  --warn-bg:#fff4dc;--warn-line:#d68b00;
  --success-bg:#e9f6ec;--success-line:#188038;
  --info-bg:#eaf2ff;--info-line:#2f73d9;
  --purple-bg:#f3edff;--purple-line:#7b61b8;
  --teal-bg:#e7f6f5;--teal-line:#188b86;
  --note-bg:#fffbea;--note-line:#d6a800;
}

/* Navigation: small consistent color cue without becoming decorative. */
.nav button[data-view="today"].active{background:#eaf2ff;color:#174ea6}
.nav button[data-view="phone"].active{background:#e7f6f5;color:#146c68}
.nav button[data-view="incoming"].active{background:#f3edff;color:#6947a3}
.nav button[data-view="angi"].active{background:#e9f6ec;color:#176b34}
.nav button[data-view="leads"].active{background:#eaf2ff;color:#174ea6}
.nav button[data-view="jobs"].active{background:#fff4dc;color:#7a5200}
.nav button[data-view="playbook"].active{background:#eef0f2;color:#41464c}
.nav button[data-view="suggestions"].active{background:#f3edff;color:#6947a3}

/* Today sections */
.section-card{border-left:5px solid var(--line)}
.section-communication{border-left-color:#2f73d9;background:linear-gradient(90deg,#f7faff 0,#fff 90px)}
.section-financial{border-left-color:#188b86;background:linear-gradient(90deg,#f5fbfa 0,#fff 90px)}
.section-attention{border-left-color:#d93025;background:linear-gradient(90deg,#fff8f7 0,#fff 90px)}
.section-blocked{border-left-color:#d68b00}
.section-jobs{border-left-color:#188038;background:linear-gradient(90deg,#f7fcf8 0,#fff 90px)}
.section-notes{border-left-color:#d6a800;background:linear-gradient(90deg,#fffdf3 0,#fff 90px)}

/* Give each operational tab a restrained identity. */
#view-phone>.card{border-top:4px solid var(--teal-line)}
#view-incoming>.card{border-top:4px solid var(--purple-line)}
#view-leads>.card,#view-leads>.grid .card{border-top:4px solid var(--info-line)}
#view-jobs>.card{border-top:4px solid var(--warn-line)}
#view-playbook>.card{border-top:4px solid #7c8794}
#view-suggestions>.card{border-top:4px solid var(--purple-line)}

/* Useful status emphasis across lists. */
.task{transition:background .12s ease,border-color .12s ease}
.task:hover{background:#fafcff}
.notice.warning{background:var(--warn-bg);border:1px solid #f0d38b;color:#6f4d00}
.badge.Crucial,.badge.Critical{background:var(--danger-bg);color:#a50e0e}
.badge.High{background:var(--warn-bg);color:#825500}
.badge.Normal{background:var(--info-bg);color:#174ea6}

/* Angi — intentionally mirrors the fast work-one-contact-at-a-time experience. */
.angi-kpis{grid-template-columns:repeat(6,1fr)}
.angi-kpis .kpi{border-top:4px solid var(--line)}
.angi-kpis .tone-new{border-top-color:#188038;background:#f4fbf5}
.angi-kpis .tone-overdue{border-top-color:#d93025;background:#fff7f6}
.angi-kpis .tone-today{border-top-color:#2f73d9;background:#f5f9ff}
.angi-kpis .tone-admin{border-top-color:#d68b00;background:#fffaf0}
.angi-kpis .tone-review{border-top-color:#7b61b8;background:#faf7ff}
.angi-kpis .tone-duplicate{border-top-color:#b35c00;background:#fff6ec}
.angi-toolbar-card{border-top:4px solid #1f4f7f}
.angi-legend{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 4px}
.legend-pill,.angi-time-pill{display:inline-block;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700;letter-spacing:.02em;border:1px solid rgba(0,0,0,.06)}
.call-first{background:#dff3e4;color:#146c2e}.morning{background:#e7f6f5;color:#146c68}.midday{background:#e9f1ff;color:#2457a3}.final-call{background:#f2ebff;color:#6844a3}.overdue{background:#fde3e1;color:#a71911}.later{background:#f0f1f3;color:#525960}.admin{background:#fff0c9;color:#775000}.duplicate{background:#ffe9d6;color:#8a4300}
.angi-workspace{display:grid;grid-template-columns:minmax(270px,30%) minmax(0,1fr);gap:14px;align-items:start}
.angi-rail-card{padding:0;overflow:hidden;position:sticky;top:124px;max-height:calc(100vh - 145px)}
.angi-rail-card h3{padding:14px 14px 8px;margin:0;background:#fff;border-bottom:1px solid var(--line)}
.angi-queue-list{overflow:auto;max-height:calc(100vh - 205px)}
.angi-queue-row{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #dfe7ee;padding:12px 12px 12px 14px;cursor:pointer;background:#fff;position:relative;color:var(--text)}
.angi-queue-row:hover{filter:brightness(.985)}
.angi-queue-row.selected::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#1473e6}
.angi-queue-row.selected{box-shadow:inset 0 0 0 2px rgba(20,115,230,.12)}
.angi-queue-row.tone-call-first,.angi-queue-row.tone-morning{background:#edf9f0}
.angi-queue-row.tone-midday{background:#edf5ff}
.angi-queue-row.tone-final-call{background:#f5efff}
.angi-queue-row.tone-overdue{background:#fff0ee}
.angi-queue-row.tone-later{background:#f7f7f8}
.angi-queue-row.tone-admin{background:#fff8e6}
.angi-queue-row.tone-duplicate{background:#fff2e8}
.angi-row-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;font-size:15px}
.angi-row-next{font-size:12px;font-weight:700;margin-top:8px;color:#35516d}
.angi-row-due{font-size:12px;font-weight:700;color:#5d6875;margin-top:3px}
.angi-detail-card{min-height:520px;padding:28px 38px}
.angi-detail-head{text-align:center;margin-bottom:18px}.angi-detail-head h2{font-size:28px;margin:7px 0 3px;color:#58657a}
.angi-call-main{display:block;text-decoration:none;text-align:center;background:#188038;color:#fff;font-size:21px;font-weight:700;border-radius:10px;padding:17px 16px;margin:18px 0}.angi-call-main:hover{background:#146c2e}
.angi-result-label{text-align:center;color:#687385;font-weight:700;font-size:11px;letter-spacing:.08em;margin:17px 0 8px}
.angi-result-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.btn.outcome{font-weight:700;font-size:14px;padding:10px 14px}.btn.outcome.success{background:#188038;color:#fff}.btn.outcome.warning{background:#fff0c9;color:#6f4d00}
.angi-notes-block{margin:18px 0}.angi-notes-block label{display:block;text-align:center;color:#687385;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.angi-notes-block textarea{min-height:100px}
.angi-contact-grid,.followup-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.info-tile{background:#f0f4f8;border-radius:9px;padding:12px;text-align:center;min-height:66px}.info-tile.wide{grid-column:1/-1}.info-tile span{display:block;color:#687385;font-size:10px;font-weight:700;letter-spacing:.06em;margin-bottom:4px}.info-tile b{font-weight:500;color:#566479}.more-actions-title{text-align:center;color:#687385;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-top:20px}.comm-history-details{margin-top:16px}

/* Prospect / lead / job lists — color remains subtle and informational. */
#prospectList .task{border-left:4px solid #2f73d9;padding-left:10px}
#leadList .task{border-left:4px solid #188038;padding-left:10px}
#appointmentList .task{border-left:4px solid #7b61b8;padding-left:10px}
#archivedSalesList .task,#archivedJobsList .task{border-left:4px solid #9aa0a6;padding-left:10px;background:#fafafa}
#cancelledJobsList .task{border-left:4px solid var(--red);padding-left:10px;background:var(--danger-bg)}
#jobsTable .task{border-left:4px solid #d68b00;padding-left:10px}
#phoneHistory .task{border-left:4px solid #188b86;padding-left:10px}
#incomingList .task{border-left:4px solid #7b61b8;padding-left:10px}
#suggestionList .task{border-left:4px solid #7b61b8;padding-left:10px;background:#fcfaff}

/* Jobs / production handoff. */
.section-production{border-top:4px solid #d68b00}
.production-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}
.production-job-card{border:1px solid var(--line);border-left:5px solid #d68b00;border-radius:10px;padding:14px;margin:10px 0;background:#fff}
.production-job-card.needs-update{background:#fffaf0}.production-job-card.needs-contact{border-left-color:#d93025}
.production-job-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.production-job-head b{font-size:17px}
.production-stage{display:inline-block;border-radius:999px;background:#fff0c9;color:#775000;padding:4px 9px;font-size:11px;font-weight:700;white-space:nowrap}
.production-job-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.production-job-grid>div{background:#f3f6fa;border-radius:8px;padding:9px}.production-job-grid span{display:block;color:#687385;font-size:10px;font-weight:800;letter-spacing:.05em;margin-bottom:4px}.production-job-grid b{font-size:12px;color:#46566a}
.production-alert{background:#fff4e5;border-left:4px solid #d68b00;border-radius:7px;padding:9px 10px;margin:8px 0}.production-alert.customer{background:#fff1f0;border-left-color:#d93025}
.production-communication{border-left:4px solid #d93025!important}

/* Grouped parent tasks and their checkable subtasks. */
.today-task-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:12px;padding:14px 16px;margin-bottom:14px;box-shadow:var(--shadow)}
.today-task-bar h2{margin:0 0 3px}.today-task-bar .btn{margin:0;white-space:nowrap}
.task-subtasks{display:grid;gap:6px;margin:10px 0 7px;padding:9px 10px;background:#f7f9fc;border-radius:8px}
.task-subtask{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.35;cursor:pointer}
.task-subtask input{width:auto;margin:1px 0 0;flex:0 0 auto}.task-subtask.done span{text-decoration:line-through;color:var(--muted)}
.task-repeat-label{font-size:11px;font-weight:700;color:#35516d;background:#e8f0fe;border-radius:999px;padding:3px 8px}

/* Clean & Focused Today workspace. */
#view-today{--today-ink:#243042;--today-muted:#6f7b8c;--today-blue:#246fe5}
.today-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 4px 16px}
.today-hero h2{margin:3px 0 4px;font-size:29px;line-height:1.15;color:var(--today-ink);letter-spacing:-.025em}
.today-eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;color:#738095}
.today-date{font-size:13px;color:var(--today-muted)}
.today-status-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid #e1e6ed;border-radius:12px;padding:11px 15px;margin-bottom:14px;box-shadow:0 1px 2px rgba(25,42,70,.04)}
.day-summary{font-size:14px;font-weight:650;color:#354256}
.today-kpis{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.today-kpi{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:#f2f5f9;color:#596678;padding:5px 9px;font-size:11px;white-space:nowrap}
.today-kpi b{font-size:12px;color:#2f3d50}.critical-kpi{background:#fceceb;color:#9e2922}.critical-kpi b{color:#a62019}.communication-kpi{background:#eaf2ff;color:#275b9f}.communication-kpi b{color:#174ea6}.jobs-kpi{background:#eaf6ee;color:#27643b}.jobs-kpi b{color:#176b34}
.next-up-wrap:empty{display:none}
.next-up-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;background:linear-gradient(118deg,#174f9f,#2178e7);color:#fff;border:0;border-radius:14px;padding:17px 19px;margin-bottom:16px;box-shadow:0 6px 16px rgba(27,87,165,.16)}
.next-up-card .next-label{font-size:10px;font-weight:800;letter-spacing:.13em;opacity:.78;margin-bottom:6px}
.next-up-card .next-title{font-size:19px;font-weight:750;line-height:1.25}
.next-up-card .next-meta{font-size:12px;opacity:.83;margin-top:5px}
.next-up-card .next-action{background:#fff;color:#175caf;font-weight:700;margin:0;padding:9px 15px}.next-up-card .next-action:hover{background:#f3f7ff}
.next-up-card.expanded{align-items:start}.current-task-expanded{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.25);padding-top:13px;display:grid;gap:9px}.current-task-detail{font-size:13px;line-height:1.45}.current-task-detail>span{display:block;font-size:9px;font-weight:800;letter-spacing:.09em;opacity:.72;margin-bottom:3px}.current-task-subtasks{display:grid;gap:7px;background:rgba(255,255,255,.12);border-radius:9px;padding:10px 12px}.current-task-subtasks .task-subtask{color:#fff}.current-task-subtasks .task-subtask.done span{color:rgba(255,255,255,.68)}.current-task-subtasks input{accent-color:#fff}.current-task-light{background:#fff;color:#175caf;border-color:#fff;font-weight:700}.current-task-light:hover{background:#eef5ff}
.today-layout{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(285px,.85fr);gap:16px;align-items:start}
.today-work-card{padding:0 18px 4px;border:1px solid #e0e5ec;box-shadow:0 2px 7px rgba(31,48,72,.05)}
.today-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:18px 0 13px;border-bottom:1px solid #e8ecf1}.today-section-heading h2{margin:3px 0 0;font-size:23px;color:var(--today-ink)}
.task-color-key{display:flex;align-items:center;justify-content:flex-end;gap:11px;flex-wrap:wrap;color:#707c8c;font-size:10px}.task-color-key span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.color-dot{display:inline-block;width:8px;height:8px;border-radius:999px}.communication-dot{background:#2f73d9}.financial-dot{background:#188b86}.routine-dot{background:#d68b00}
.today-ordered-list>.task{margin:0;padding:14px 10px 14px 14px;border-left:4px solid #d68b00}.today-ordered-list>.task.task-category-communication{border-left-color:#2f73d9}.today-ordered-list>.task.task-category-financial{border-left-color:#188b86}.today-ordered-list>.task.task-category-routine{border-left-color:#d68b00}.today-ordered-list>.task:hover{background:#fafcff}
.task-due{font-size:13px;font-weight:650;color:#657184;margin-top:5px;line-height:1.35}
.today-task-group{padding:16px 0 4px;border-bottom:1px solid #e9edf2}.today-task-group:last-of-type{border-bottom:0}
.task-group-heading,.sidebar-card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-group-heading{border-left:4px solid #9aa5b5;padding-left:10px;margin-bottom:3px}.task-group-heading h3{margin:0;font-size:15px;color:#344155}.communication-heading{border-left-color:#2f73d9}.financial-heading{border-left-color:#188b86}.attention-heading{border-left-color:#d93025}
.group-count,.attention-count{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;padding:0 7px;border-radius:999px;background:#eef2f7;color:#556274;font-size:11px;font-weight:750}
.today-work-card .task{padding:13px 2px}.today-work-card .task-title>b{font-size:15px;color:#283548}.today-work-card .task>div:not(.task-title):not(.meta):not(.task-subtasks):not(.actions){font-size:13px;line-height:1.4;margin-top:4px;color:#3f4b5b}
.task-subtasks{background:#f6f8fb;border:1px solid #edf0f4;padding:9px 11px}.task-subtask.done{opacity:.62}.task-subtask.done span{color:#7f8997}
.actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:6px}.actions .btn{margin:0}
.task-more{position:relative}.task-more summary{list-style:none;display:flex;align-items:center;justify-content:center;width:34px;height:30px;border-radius:7px;background:#edf1f6;color:#4f5d70;cursor:pointer;font-weight:800;letter-spacing:.08em;user-select:none}.task-more summary::-webkit-details-marker{display:none}.task-more[open] summary{background:#dfe7f1}
.task-more-menu{position:absolute;z-index:12;left:0;top:36px;display:grid;min-width:168px;padding:6px;background:#fff;border:1px solid #dfe4ea;border-radius:10px;box-shadow:0 10px 28px rgba(30,46,70,.18)}
.task-more-menu .btn{width:100%;text-align:left;background:transparent;padding:8px 9px;margin:0}.task-more-menu .btn:hover{background:#f1f5f9}.task-more-menu .danger-link{color:#a62922}
.today-sidebar{min-width:0}.today-sidebar .card{padding:14px;margin-bottom:14px;box-shadow:0 1px 4px rgba(31,48,72,.05)}
.today-awareness-card{border-left:4px solid #d68b00}.sidebar-card-heading h3{margin:0;color:#303c4d;font-size:18px}
.awareness-section{padding:12px 0 2px;border-top:1px solid #e8ecf1;margin-top:12px}.awareness-section h4{margin:0 0 4px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#717d8d}.awareness-section .task{padding:9px 0;font-size:13px}.awareness-section .task b{font-size:13px}.awareness-section .task>div:not(.meta):not(.actions):not(.task-title):not(.task-subtasks){font-size:12px}.blocked-awareness{border-top-color:#f0d6a1}
.updates-more{margin-top:7px}.updates-more>summary{cursor:pointer;color:#2765ae;font-size:12px;font-weight:700;list-style:none}.updates-more>summary::-webkit-details-marker{display:none}.updates-more>summary::after{content:" ↓"}.updates-more[open]>summary::after{content:" ↑"}
.sidebar-quiet-card h3,.quick-notes-card h3{font-size:17px;color:#344155}.sidebar-quiet-card .task{font-size:13px;padding:10px 0}.quick-notes-card{background:#fffdf5!important;border-left-color:#d6a800!important}.quick-notes-card textarea{background:rgba(255,255,255,.82);min-height:74px}
.sidebar-quiet-card.compact-empty{padding-bottom:9px}.sidebar-quiet-card.compact-empty .empty{margin-bottom:3px}
.today-all-clear{padding:12px 0;color:#477456;font-size:13px}

@media(max-width:900px){.today-layout{grid-template-columns:1fr}.today-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:14px}.today-sidebar .card{margin-bottom:0}.today-awareness-card{grid-column:1/-1}.quick-notes-card{grid-column:auto}}
@media(max-width:680px){.today-hero{align-items:flex-start}.today-hero h2{font-size:24px}.today-status-strip{align-items:flex-start;flex-direction:column;gap:9px}.today-kpis{justify-content:flex-start}.next-up-card{grid-template-columns:1fr}.next-up-card .next-action{justify-self:start}.today-sidebar{grid-template-columns:1fr}.today-awareness-card,.quick-notes-card{grid-column:auto}.today-work-card{padding:0 13px 3px}.today-section-heading{align-items:flex-start;flex-direction:column}.task-color-key{justify-content:flex-start}.task-more-menu{left:auto;right:0}.today-kpi{font-size:10px;padding:5px 8px}}

@media(max-width:980px){.angi-kpis{grid-template-columns:repeat(3,1fr)}.angi-workspace{grid-template-columns:1fr}.angi-rail-card{position:static;max-height:none}.angi-queue-list{max-height:360px}.angi-detail-card{padding:20px}}
@media(max-width:620px){.angi-kpis{grid-template-columns:1fr 1fr}.angi-contact-grid,.followup-grid{grid-template-columns:1fr}.info-tile.wide{grid-column:auto}}


/* Leads workspace — mirrors the Angi left-rail / active-record layout. */
.leads-toolbar-card{border-top:4px solid var(--info-line)}
.leads-workspace{display:grid;grid-template-columns:minmax(270px,30%) minmax(0,1fr);gap:14px;align-items:start}
.leads-rail-card{padding:0;overflow:hidden;position:sticky;top:124px;max-height:calc(100vh - 145px);border-top:4px solid #2f73d9!important}
.leads-rail-card h3{padding:14px 14px 9px;margin:0;border-bottom:1px solid var(--line);background:#fff}
.leads-queue-list{overflow:auto;max-height:calc(100vh - 205px)}
.lead-queue-row{display:block;width:100%;border:0;border-bottom:1px solid #dfe7ee;padding:12px 12px 12px 14px;text-align:left;cursor:pointer;background:#fff;color:var(--text);position:relative}
.lead-queue-row:hover{filter:brightness(.985)}
.lead-queue-row.selected::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#1473e6}
.lead-queue-row.selected{box-shadow:inset 0 0 0 2px rgba(20,115,230,.12)}
.lead-queue-row.tone-active{background:#f4f8ff}.lead-queue-row.tone-appointment{background:#f3edff}.lead-queue-row.tone-estimate{background:#fff8e6}.lead-queue-row.tone-sold{background:#edf9f0}.lead-queue-row.tone-closed{background:#f3f4f6}
.lead-row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.lead-row-address{font-size:12px;margin-top:6px;color:#4f5d6b}.lead-row-next{font-size:12px;font-weight:700;margin-top:8px;color:#35516d}
.lead-status-pill{display:inline-block;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700;white-space:nowrap;border:1px solid rgba(0,0,0,.05)}
.lead-status-pill.tone-active{background:#eaf2ff;color:#174ea6}.lead-status-pill.tone-appointment{background:#f3edff;color:#6947a3}.lead-status-pill.tone-estimate{background:#fff0c9;color:#775000}.lead-status-pill.tone-sold{background:#e9f6ec;color:#176b34}.lead-status-pill.tone-closed{background:#eef0f2;color:#525960}
.leads-detail-card{min-height:520px;padding:28px 38px;border-top:4px solid #2f73d9!important}.lead-detail-head{text-align:center;margin-bottom:18px}.lead-detail-head h2{font-size:28px;margin:8px 0 4px;color:#58657a}.lead-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.lead-info-grid .wide{grid-column:1/-1}.lead-detail-note{background:#fffbea;border-left:4px solid #d6a800;border-radius:8px;padding:11px 12px;margin-top:12px;white-space:pre-wrap}.lead-detail-note span{display:block;font-size:10px;letter-spacing:.06em;font-weight:700;color:#6b7280;margin-bottom:5px}.lead-detail-section-title{text-align:center;color:#687385;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;margin:22px 0 9px}.lead-detail-appointments{border:1px solid #dbe2ea;border-radius:10px;overflow:hidden}.lead-detail-appt{display:grid;grid-template-columns:minmax(145px,1.15fr) minmax(120px,1fr) minmax(100px,.8fr) minmax(145px,1.2fr) auto;gap:10px;align-items:center;background:#fff;padding:11px 12px;border-bottom:1px solid #e7ecf2}.lead-detail-appt:last-child{border-bottom:0}.lead-detail-appt.header{background:#f3f6fa;color:#687385;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.lead-detail-appt span{font-size:12px;color:var(--muted)}.appointment-result-note{display:block;margin-top:3px;color:#687385;font-size:11px}.appointment-result-empty{color:#a0a8b5}.appointment-row-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.lead-detail-actions{margin-top:16px}
@media(max-width:980px){.leads-workspace{grid-template-columns:1fr}.leads-rail-card{position:static;max-height:none}.leads-queue-list{max-height:360px}.leads-detail-card{padding:20px}}
@media(max-width:620px){.lead-info-grid{grid-template-columns:1fr}.lead-info-grid .wide{grid-column:auto}.lead-detail-appt{grid-template-columns:1fr}.lead-detail-appt.header{display:none}}
@media(max-width:700px){.production-kpis{grid-template-columns:1fr}.production-job-head{display:block}.production-stage{margin-top:7px}.production-job-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.today-task-bar{align-items:flex-start}.today-task-bar .btn{font-size:13px}.task-subtasks{padding:8px}}

/* Google Places address suggestions in the lead form. */
.address-autocomplete-wrap{position:relative}
.address-suggestions{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 4px);overflow:auto;max-height:260px;background:#fff;border:1px solid #ccd5df;border-radius:9px;box-shadow:0 12px 28px rgba(31,48,72,.18)}
.address-suggestion{display:block;width:100%;border:0;border-bottom:1px solid #edf0f3;background:#fff;color:var(--text);padding:11px 12px;text-align:left;cursor:pointer;font:inherit;line-height:1.35}
.address-suggestion:last-child{border-bottom:0}.address-suggestion:hover,.address-suggestion.active{background:#edf5ff}
.address-suggestion-main{display:block;font-size:14px;font-weight:700}.address-suggestion-secondary{display:block;margin-top:2px;color:var(--muted);font-size:12px}
.field-help{margin-top:5px;color:var(--muted);font-size:11px}
.list-sort-select{width:auto;min-width:175px}.list-sort-toolbar{margin:8px 0}.list-sort-toolbar label{font-size:12px;font-weight:700;color:var(--muted)}.job-search{width:min(430px,100%);min-width:240px;margin:4px 0}
@media(max-width:560px){.list-sort-select{width:100%}.list-sort-toolbar{align-items:stretch}.list-sort-toolbar .spacer{display:none}}

/* Contact-centered CRM record. Identity and quick actions stay prominent;
   inquiries, activity, properties and jobs remain separate related records. */
.contact-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}.contact-record-head h2{margin:7px 0 4px;font-size:28px;color:#39485c}.contact-labels{display:flex;gap:5px;flex-wrap:wrap}.contact-label{display:inline-flex;align-items:center;border-radius:999px;background:#e8f1ff;color:#1d5da8;padding:4px 8px;font-size:10px;font-weight:750}.contact-label.neutral{background:#eef1f4;color:#596574}.contact-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.contact-overview-grid>div{background:#f2f5f8;border-radius:9px;padding:10px;min-width:0}.contact-overview-grid span{display:block;color:#6f7b89;font-size:9px;font-weight:800;letter-spacing:.07em;margin-bottom:4px}.contact-overview-grid b{display:block;color:#415166;font-size:12px;overflow-wrap:anywhere}.contact-record-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,.8fr);gap:14px;align-items:start;margin-top:16px}.contact-main-column,.contact-side-column{display:grid;gap:14px}.contact-section{border:1px solid #dfe5ec;border-radius:11px;background:#fff;overflow:hidden}.contact-section>h3,.contact-section-head{margin:0;padding:12px 14px;background:#f7f9fb;border-bottom:1px solid #e4e9ee}.contact-section>h3{font-size:15px}.contact-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.contact-section-head h3{margin:0;font-size:15px}.contact-related-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #e9edf1}.contact-related-row:last-child{border-bottom:0}.contact-related-row b{color:#334257}.contact-related-row>div>div:not(.meta){font-size:12px;color:#556476;margin-top:3px}.contact-related-row .btn{flex:0 0 auto}.inquiry-row{border-left:4px solid #2f73d9}.job-row{border-left:4px solid #d68b00}.contact-timeline{padding:4px 14px}.contact-timeline-item{display:grid;grid-template-columns:12px 1fr;gap:9px;padding:10px 0;border-bottom:1px solid #edf0f3}.contact-timeline-item:last-child{border-bottom:0}.contact-timeline-item>span{width:9px;height:9px;border-radius:50%;margin-top:4px;background:#2f73d9;box-shadow:0 0 0 3px #e7f0ff}.contact-timeline-item b{font-size:12px;color:#3f4e61}
@media(max-width:950px){.contact-record-layout{grid-template-columns:1fr}.contact-overview-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.contact-overview-grid{grid-template-columns:1fr}.contact-related-row{align-items:flex-start;flex-direction:column}.contact-related-row .btn{width:100%}.leads-detail-card{padding:16px}.contact-record-head h2{font-size:24px}}
.contact-layout-toggle{display:inline-flex;gap:4px;margin-top:12px;padding:4px;background:#eef2f6;border-radius:10px}.contact-layout-toggle .btn{border-color:transparent;background:transparent;color:#526174}.contact-layout-toggle .btn.active{background:#fff;color:#175caf;box-shadow:0 1px 3px rgba(31,48,72,.15);font-weight:750}.contact-table-card{padding:0;overflow:hidden;border-top:4px solid #2f73d9!important}.contact-table-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}.contact-table-heading h3{margin:0}.contact-table-wrap{overflow:auto;max-height:calc(100vh - 260px)}.contact-table{width:100%;min-width:1180px;border-collapse:collapse;background:#fff;font-size:14px}.contact-table th{position:sticky;top:0;z-index:2;padding:10px 11px;background:#edf2f7;color:#4a596b;text-align:left;font-size:12px;letter-spacing:.03em;white-space:nowrap;border-bottom:1px solid #d8e0e8}.contact-table td{padding:11px;border-bottom:1px solid #e5eaf0;vertical-align:top;color:#39485a}.contact-table tbody tr:hover{background:#f8fbff}.contact-table small{display:block;margin-top:3px;color:#707c8b;font-size:12px}.contact-table-name{border:0;background:transparent;color:#175caf;padding:0;font:inherit;font-weight:750;text-align:left;cursor:pointer}.contact-table-name:hover{text-decoration:underline}.contact-table-number{text-align:center;font-variant-numeric:tabular-nums}.contact-table-actions{display:flex;gap:5px;white-space:nowrap}.contact-table-actions .danger-link{color:#a62922;border-color:#edc7c4;background:#fff}.contact-table-actions .danger-link:hover{background:#fceceb}.contact-table-card.hidden{display:none}.contact-table td:nth-child(4),.contact-table td:nth-child(7){max-width:220px}
@media(max-width:680px){.contact-layout-toggle{display:flex}.contact-layout-toggle .btn{flex:1}.contact-table-wrap{max-height:none}.contact-table-card{margin-left:-2px;margin-right:-2px}}

/* Leads and Jobs report builder. */
.report-dialog{width:min(1180px,96vw);max-width:none}.report-card{width:100%;max-height:92vh;overflow:auto;margin:0;padding:22px}
.report-heading{align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:14px}.report-heading h2{margin:4px 0}.report-heading .auth-note{margin:4px 0 0}
.report-builder-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:18px 0}.report-builder-grid label{display:block;margin-bottom:5px;font-size:11px;font-weight:750;color:#596678}
.report-columns-wrap{border:1px solid var(--line);border-radius:10px;padding:12px;margin:14px 0}.compact-toolbar h3{font-size:15px;margin:0}
.report-columns{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:7px 12px;margin-top:10px}.report-column{display:flex;align-items:center;gap:7px;font-size:12px;cursor:pointer}.report-column input{width:auto;margin:0}
.report-actions{margin:15px 0}.report-preview{overflow:auto;border:1px solid var(--line);border-radius:10px;max-height:430px}.report-preview:empty{display:none}
.report-table{width:100%;border-collapse:collapse;font-size:12px;background:#fff}.report-table th{position:sticky;top:0;z-index:1;background:#edf2f7;color:#465468;text-align:left;white-space:nowrap}.report-table th,.report-table td{padding:9px 10px;border-bottom:1px solid #e6ebf0;vertical-align:top}.report-table tr:last-child td{border-bottom:0}.report-table td{max-width:280px}.report-number{text-align:right!important;font-variant-numeric:tabular-nums}.report-empty{padding:24px;text-align:center;color:var(--muted)}
@media(max-width:900px){.report-builder-grid,.report-columns{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.report-builder-grid,.report-columns{grid-template-columns:1fr}.report-card{padding:15px}.report-actions{align-items:stretch}.report-actions .btn{width:100%}}
.task-note-history{margin:8px 0;color:#52647a;font-size:12px}.task-note-history summary{cursor:pointer;font-weight:700;color:#355879}.task-note-history div,.task-followup-history{white-space:pre-wrap;margin-top:6px;padding:9px 10px;border-radius:8px;background:#f6f9fc;border:1px solid #dfe7f1;line-height:1.45}
