:root{
  --bg:#f4f6f8;
  --surface:#ffffff;
  --surface-soft:#f8fafc;
  --ink:#101828;
  --muted:#667085;
  --line:#d9e1ea;
  --nav:#111827;
  --blue:#175cd3;
  --blue-strong:#0f469f;
  --green:#067647;
  --green-bg:#dcfae6;
  --amber:#b54708;
  --amber-bg:#fef0c7;
  --purple:#6941c6;
  --purple-bg:#ebe9fe;
  --red:#b42318;
  --shadow:0 12px 30px rgba(16,24,40,.08);
  --radius:8px;
}

*{box-sizing:border-box}
html{min-width:320px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
img,svg,video,canvas{max-width:100%}
a{color:inherit}
button,.button-link{min-height:40px;border:0;border-radius:8px;background:var(--blue);color:#fff;padding:10px 14px;font-weight:750;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.2}
button:hover,.button-link:hover{background:var(--blue-strong)}
button.secondary{background:var(--ink)}
button.ghost,.button-link{background:#fff;color:var(--ink);border:1px solid var(--line)}
button.ghost:hover,.button-link:hover{background:#eef2f6}

.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.sidebar{background:var(--nav);color:#fff;padding:22px 16px;display:flex;flex-direction:column;gap:24px;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:19px;font-weight:850}
.brand-mark{width:38px;height:38px;border-radius:8px;background:#fff;color:var(--nav);display:grid;place-items:center;font-size:13px;font-weight:900}
.brand-logo{display:block;width:min(188px,100%);height:auto;border-radius:10px;background:#fff}
.side-nav{display:grid;gap:5px}
.side-nav a{padding:10px 12px;border-radius:8px;text-decoration:none;color:#cbd5e1;font-weight:720}
.side-nav a:hover,.side-nav a.active{background:#253244;color:#fff}
.side-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.14);padding-top:16px;display:grid;gap:8px;color:#aab5c4;font-size:13px}
.side-footer a{color:#fff;font-weight:750;text-decoration:none}

.workspace{min-width:0;padding:28px 32px 48px}
.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}
.page-header.compact{margin-bottom:18px}
.eyebrow{margin:0 0 7px;color:var(--blue);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.page-header h1{margin:0;font-size:38px;line-height:1.05;font-weight:850}
.subhead{margin:9px 0 0;max-width:690px;color:var(--muted);font-size:16px;line-height:1.5}
.header-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.header-actions form{margin:0}

.notice{margin:0 0 16px;padding:12px 14px;border-radius:8px;font-weight:700}
.notice.success{background:var(--green-bg);color:#05603a}
.notice.error{background:#fee4e2;color:var(--red)}

.coverage-panel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:18px;margin-bottom:16px}
.coverage-panel .eyebrow{margin-bottom:5px}
.coverage-panel h2{margin:0 0 7px;font-size:24px;line-height:1.2}
.coverage-panel p{margin:0;color:var(--muted);line-height:1.5}
.coverage-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-self:start}
.coverage-metrics span{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:11px;color:var(--muted);font-size:12px;font-weight:800;line-height:1.25}
.coverage-metrics strong{display:block;color:var(--ink);font-size:24px;line-height:1;margin-bottom:6px}
.coverage-panel details{grid-column:1/-1;border-top:1px solid var(--line);padding-top:10px}
.coverage-panel summary{cursor:pointer;font-weight:850;color:#344054}
.coverage-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}
.coverage-list span{display:flex;justify-content:space-between;gap:8px;background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:#344054;font-size:13px;font-weight:760}
.coverage-list b{color:var(--ink)}

.metric-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:16px}
.metric-strip a,.metric-strip div{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:15px 16px;text-decoration:none;box-shadow:var(--shadow)}
.metric-strip span{display:block;color:var(--muted);font-size:13px;font-weight:750}
.metric-strip strong{display:block;margin-top:8px;font-size:31px;line-height:1}
.candidate-summary-strip{grid-template-columns:repeat(7,minmax(0,1fr))}
.candidate-summary-strip a{padding:13px 14px}
.candidate-summary-strip strong{font-size:27px}
.candidate-accounting-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:0 16px 16px}
.candidate-accounting-card{display:block;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);padding:12px;text-decoration:none}
.candidate-accounting-card:hover{border-color:#9ec5fe;background:#eff6ff}
.candidate-accounting-card span{display:block;color:#344054;font-size:12px;font-weight:850;line-height:1.25}
.candidate-accounting-card strong{display:block;margin-top:8px;font-size:28px;line-height:1;color:var(--ink)}
.candidate-accounting-card small{display:block;margin-top:7px;color:var(--muted);font-size:12px;font-weight:760}
.candidate-accounting-table{min-width:1080px}
.application-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

.view-bar,.bulk-bar{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:13px;margin-bottom:14px}
.view-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0}
.view-group>span{width:78px;color:var(--muted);font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.view-group a{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 11px;text-decoration:none;font-weight:750;color:#344054}
.view-group a.active{border-color:#9ec5fe;background:#eff6ff;color:var(--blue)}
.view-group b{margin-left:4px;color:var(--muted)}
.bulk-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bulk-bar label{font-weight:750;color:#344054}
.bulk-bar input[type=email],.bulk-bar input[type=text]{height:40px;min-width:220px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;font:inherit}
#selected-count{color:var(--muted);font-weight:750}

.lead-stack{display:grid;gap:14px}
.lead-card{display:grid;grid-template-columns:46px minmax(0,1fr);background:var(--surface);border:1px solid var(--line);border-left:5px solid #98a2b3;border-radius:8px;box-shadow:var(--shadow);overflow:hidden}
.lead-card.hot{border-left-color:var(--blue)}
.lead-card.extension{border-left-color:var(--amber)}
.lead-card.development{border-left-color:var(--purple)}
.lead-card.review{border-left-color:#475467}
.lead-card.ignore{opacity:.76}
.lead-select{display:flex;justify-content:center;padding-top:22px;background:var(--surface-soft)}
.lead-select input{width:18px;height:18px}
.lead-content{padding:19px 20px 18px;min-width:0}
.lead-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:9px;color:var(--muted);font-size:13px;font-weight:760}
.lead-address-meta{color:var(--muted);font-size:13px;font-weight:760;overflow-wrap:anywhere}
.stage-pill,.workflow-pill{display:inline-flex;align-items:center;border-radius:6px;padding:5px 8px;font-size:12px;font-weight:850;background:#eef2f6;color:#344054}
.stage-pill.granted{background:var(--green-bg);color:var(--green)}
.stage-pill.awaiting{background:var(--amber-bg);color:var(--amber)}
.stage-pill.other{background:#eef2f6;color:#344054}
.workflow-pill{background:#f2f4f7;color:#475467}
.lead-content h2{margin:0 0 6px;font-size:24px;line-height:1.18;font-weight:850;overflow-wrap:anywhere}
.lead-card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 5px}
.lead-type{margin:0 0 5px;color:var(--blue);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.lead-card-topline .lead-type{margin:0}
.new-lead-badge{display:inline-flex;align-items:center;border-radius:999px;background:#dcfce7;color:#166534;border:1px solid #bbf7d0;padding:5px 9px;font-size:12px;font-weight:850;white-space:nowrap}
.lead-address{margin:0 0 14px;color:#475467;font-size:16px;line-height:1.45;font-weight:720}
.lead-summary{margin:0 0 14px;color:#344054;font-size:16px;line-height:1.45}
.lead-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 13px}
.lead-facts div{min-width:0;background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:10px}
.lead-facts dt{margin:0;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.lead-facts dd{margin:4px 0 0;font-weight:760;line-height:1.35;overflow-wrap:anywhere}
.lead-facts a{color:var(--blue);font-weight:850;text-decoration:none}
.tag-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.tag-row span{border-radius:6px;background:#eef4ff;color:#194185;padding:5px 8px;font-size:12px;font-weight:760}
.why-match{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:12px;margin:0 0 12px}
.why-match h3{margin:0 0 5px;font-size:13px;color:var(--ink)}
.why-match p{margin:0;color:#475467;line-height:1.45}
.proposal{border-top:1px solid var(--line);padding-top:11px}
.proposal summary{cursor:pointer;font-weight:820;color:#344054}
.proposal p{margin:10px 0 0;color:#475467;line-height:1.55}
.lead-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}

.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:34px;text-align:center;box-shadow:var(--shadow)}
.empty-state h2{margin:0 0 8px;font-size:22px}
.empty-state p{margin:0;color:var(--muted)}

.filter-workspace{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.filter-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}
.filter-panel.wide{grid-column:1/-1}
.panel-heading{padding:18px 18px 14px;border-bottom:1px solid var(--line)}
.panel-kicker{display:inline-flex;border-radius:6px;padding:4px 7px;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.include .panel-kicker{background:var(--green-bg);color:var(--green)}
.exclude .panel-kicker{background:#fee4e2;color:var(--red)}
.panel-heading h2{margin:10px 0 6px;font-size:22px}
.panel-heading p{margin:0;color:var(--muted);line-height:1.45}
.filter-panel textarea{width:100%;min-height:430px;border:0;resize:vertical;padding:16px;font:15px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--ink);background:#fff}
.filter-panel textarea:focus{outline:3px solid #d1e9ff;outline-offset:-3px}
.filter-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px}
.filter-choice{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface-soft)}
.filter-choice span{font-weight:780;overflow-wrap:anywhere}
.filter-choice label{display:flex;gap:6px;align-items:center;margin:0;color:#344054;font-size:13px;font-weight:780}
.settings-actions{grid-column:1/-1;display:flex;gap:10px;align-items:center}

.onboarding-shell{max-width:1120px;margin:0 auto;padding:32px 20px 52px}
.onboarding-header{margin-bottom:22px}
.onboarding-header .brand-mark{margin-bottom:14px}
.onboarding-header h1{margin:0;font-size:38px;line-height:1.05}
.onboarding-form{display:grid;gap:16px}
.setup-step{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}
.step-number{position:absolute;top:18px;right:18px;width:34px;height:34px;border-radius:8px;background:#eff6ff;color:var(--blue);display:grid;place-items:center;font-weight:900}
.setup-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:12px;padding:16px}
.field-block,.drawer-form label{display:grid;gap:6px;color:#344054;font-weight:850}
.field-block input,.field-block select,.drawer-form input,.drawer-form select{height:42px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;font:inherit;background:#fff}
.region-pills,.project-choice-grid{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 16px}
.region-pills label,.project-choice{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);padding:10px 12px;font-weight:800;color:#344054}
.project-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:16px}
.project-choice{min-height:54px}
.setup-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px}
.setup-summary span{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:12px;color:#344054;font-weight:760}
.setup-summary strong{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px}
.filter-workspace.embedded{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.area-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px}
.area-choice{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface-soft);font-weight:800;color:#344054}
.area-choice input{width:18px;height:18px}
.area-choice small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.area-choice small.connected{color:var(--green)}
.area-choice small.not-connected{color:var(--amber)}

.council-filter-bar{display:flex;gap:10px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:13px;margin-bottom:14px}
.council-filter-bar input,.council-filter-bar select{height:40px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;font:inherit;background:#fff;color:var(--ink)}
.council-filter-bar input{min-width:min(420px,100%);flex:1}
.council-list{display:grid;gap:12px}
.council-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:16px}
.council-main{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}
.council-main h2{margin:0;font-size:20px;line-height:1.2}
.mono{margin:4px 0 0;color:var(--muted);font:13px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}
.status-badge{display:inline-flex;align-items:center;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.status-badge.connected,.status-badge.test_passed{background:var(--green-bg);color:var(--green)}
.status-badge.ready{background:#e0f2fe;color:#075985}
.status-badge.warning{background:var(--amber-bg);color:var(--amber)}
.status-badge.not-connected,.status-badge.needs_manual_review{background:var(--amber-bg);color:var(--amber)}
.status-badge.legacy_mapped{background:#eef2f6;color:#344054}
.status-badge.out_of_scope{background:#f2f4f7;color:#667085}
.status-badge.test_failed{background:#fee4e2;color:var(--red)}
.status-copy{margin:0 0 12px;color:#475467;font-weight:680;line-height:1.45}
.connection-facts{display:grid;grid-template-columns:1.2fr .7fr .8fr 1.4fr .8fr;gap:10px;margin:0 0 12px}
.connection-facts div{min-width:0;background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:10px}
.connection-facts dt{margin:0;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.connection-facts dd{margin:4px 0 0;font-weight:760;line-height:1.35;overflow-wrap:anywhere}
.field-report{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.field-report span{border-radius:6px;padding:5px 8px;font-size:12px;font-weight:800;text-transform:capitalize}
.field-report .ok{background:var(--green-bg);color:var(--green)}
.field-report .missing{background:#fee4e2;color:var(--red)}
.portal-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:end;border-top:1px solid var(--line);padding-top:12px}
.portal-form label{display:grid;gap:6px;color:#344054;font-size:13px;font-weight:850}
.portal-form input{height:42px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;font:inherit}
.portal-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.candidate-import-panel{margin:0 0 14px}
.candidate-import-form{display:grid;gap:12px;padding:0 18px 18px}
.candidate-import-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font:13px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;resize:vertical}
.candidate-table-wrap{overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);margin:0 0 18px}
.candidate-table-wrap.embedded-table{box-shadow:none;border-radius:0;border-width:1px 0 0;margin:0}
.candidate-table{width:100%;border-collapse:collapse;min-width:1320px;font-size:13px}
.candidate-table.compact{min-width:980px}
.candidate-table th,.candidate-table td{border-bottom:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}
.candidate-table th{position:sticky;top:0;background:var(--surface-soft);z-index:1;color:#344054;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.candidate-table td{color:#344054;font-weight:650}
.candidate-table a{color:var(--blue);overflow-wrap:anywhere}
.candidate-table .url-cell{max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.candidate-table .url-cell a{display:inline-block;max-width:330px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}
.candidate-table .error-cell{display:block;max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.candidate-table .next-action{display:inline-flex;margin-top:5px;border-radius:6px;background:#f2f4f7;color:#344054;padding:4px 7px;font-size:11px;font-weight:850;text-transform:capitalize}
.candidate-table small{color:var(--muted)}
.candidate-actions{display:flex;gap:6px;flex-wrap:wrap;min-width:270px}
.candidate-actions form{margin:0}
.candidate-actions button,.candidate-actions .mini{min-height:32px;padding:6px 9px;font-size:12px}
.candidate-bulk-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.candidate-bulk-actions form{margin:0}

.auth-body{
  min-height:100vh;display:grid;place-items:center;padding:28px;
  background:
    radial-gradient(circle at 18% 14%,rgba(212,166,68,.22),transparent 28%),
    linear-gradient(145deg,#07131f 0%,#102019 48%,#263d2b 100%);
}
.auth-card{
  width:min(520px,94vw);background:#fffaf0;border:1px solid rgba(212,166,68,.22);
  border-radius:26px;padding:36px;box-shadow:0 28px 70px rgba(0,0,0,.28);
}
.auth-logo{display:block;width:min(300px,100%);height:auto;margin:0 auto 24px;mix-blend-mode:multiply}
.auth-card h1{margin:0;color:#102019;font-size:34px;line-height:1.06;font-weight:950;letter-spacing:0;text-align:center}
.auth-card h2{margin:26px 0 14px;color:#102019;font-size:21px;line-height:1.15;font-weight:900}
.auth-copy{margin:14px auto 18px;color:#50604f;line-height:1.55;font-weight:650;text-align:center;max-width:410px}
.auth-copy.small{font-size:13px;margin-top:12px;margin-bottom:0}
.auth-benefits{display:grid;grid-template-columns:1fr;gap:9px;margin:20px 0 6px}
.auth-benefits span{
  display:flex;align-items:center;gap:10px;min-height:42px;border:1px solid #eadcc0;background:#fffdf8;
  border-radius:999px;padding:9px 13px;color:#304632;font-weight:850;
}
.auth-benefits span:before{content:"";width:9px;height:9px;border-radius:999px;background:#d4a644;box-shadow:0 0 0 4px rgba(212,166,68,.16)}
.auth-card label{display:block;font-weight:850;margin:14px 0;color:#304632}
.auth-card input{
  width:100%;height:48px;border:1px solid #d9ccb4;border-radius:14px;background:#fffdf8;
  padding:11px 13px;margin-top:7px;font:inherit;color:#102019;outline:none;
}
.auth-card input:focus{border-color:#4f644d;box-shadow:0 0 0 4px rgba(79,100,77,.13)}
.password-field{position:relative;display:block}
.password-field input{padding-right:78px}
.auth-card .password-toggle{
  position:absolute;right:7px;top:50%;transform:translateY(-50%);width:58px;min-height:34px;margin-top:3px;
  border:1px solid #d9ccb4;border-radius:10px;background:#fff;color:#304632;padding:6px 8px;
  font-size:13px;font-weight:950;line-height:1;box-shadow:none;
}
.auth-card .password-toggle:hover{background:#f6efe4;color:#102019}
.auth-card button{
  width:100%;margin-top:14px;min-height:50px;border-radius:15px;background:#4f644d;color:#fff;
  font-weight:950;box-shadow:0 12px 26px rgba(79,100,77,.24);
}
.auth-card button:hover{background:#3f523f}
.auth-switch{margin:20px 0 0;text-align:center;color:#50604f;font-weight:750}
.auth-switch a{color:#4f644d;text-decoration:none;font-weight:950}
.auth-switch a:hover{text-decoration:underline}
.auth-secondary-action{margin:10px 0 0;text-align:center}
.auth-secondary-action a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #d8c9b4;border-radius:8px;background:#fffdf8;color:#1f271f;text-decoration:none;font-weight:950;padding:10px 14px}
.auth-secondary-action a:hover{background:#f6efe4}
.auth-legal-links{margin:14px 0 0;text-align:center;color:#50604f;font-size:13px;font-weight:800}
.auth-legal-links a{color:#4f644d;text-decoration:none}

.landing-body{min-height:100vh;background:#f4efe6;color:#1f271f}
.landing-nav{width:min(1180px,92vw);margin:0 auto;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}
.landing-brand img{display:block;width:300px;height:auto}
.landing-nav nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.landing-nav a{color:#1f271f;text-decoration:none;font-weight:900}
.landing-nav-cta,.landing-primary,.landing-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:8px;padding:11px 16px;text-decoration:none;font-weight:950}
.landing-nav-cta,.landing-primary{background:#4f644d;color:#fff!important;box-shadow:0 12px 28px rgba(79,100,77,.18)}
.landing-secondary{border:1px solid #d8c9b4;background:#fffdf8;color:#1f271f}
.landing-hero{width:min(1180px,92vw);margin:0 auto;padding:54px 0 22px}
.landing-hero-copy{max-width:820px}
.landing-kicker{margin:0 0 12px;color:#7d6330;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.landing-hero h1{margin:0;max-width:840px;font-size:68px;line-height:1.02;letter-spacing:0;color:#102019}
.landing-subhead{margin:22px 0 0;max-width:740px;color:#40503f;font-size:20px;line-height:1.55;font-weight:720}
.landing-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 0}
.landing-cancel-note{display:inline-flex;margin:16px 0 0;border:1px solid #bfd6c2;background:#edf4ea;color:#173d2f;border-radius:8px;padding:10px 13px;font-weight:950}
.landing-trust{max-width:760px;margin:20px 0 0;color:#556153;font-weight:700;line-height:1.55}
.landing-section{width:min(1180px,92vw);margin:0 auto;padding:30px 0}
.landing-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.landing-benefits article,.landing-example,.landing-card-grid article{background:#fffdf8;border:1px solid #ded5c5;border-radius:8px;box-shadow:0 12px 34px rgba(48,55,39,.08);padding:20px}
.landing-benefits h2,.landing-how h2,.landing-source h2{margin:0 0 10px;color:#102019;line-height:1.15}
.landing-benefits p,.landing-how p,.landing-source p,.landing-example p{margin:0;color:#4c5549;line-height:1.55;font-weight:650}
.landing-section-heading{max-width:840px;margin-bottom:16px}
.landing-section-heading h2{margin:0 0 10px;color:#102019;font-size:38px;line-height:1.08}
.landing-section-heading p:last-child{margin:0;color:#4c5549;font-size:18px;line-height:1.55;font-weight:700}
.landing-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.landing-card-grid h3{margin:0 0 8px;color:#102019;font-size:20px;line-height:1.15}
.landing-card-grid p{margin:0;color:#4c5549;line-height:1.5;font-weight:650}
.landing-how{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);gap:18px;align-items:start}
.landing-how ol{margin:16px 0 0;padding-left:24px;color:#304632;font-weight:850;line-height:1.9}
.landing-example span{display:inline-flex;margin-bottom:12px;border-radius:999px;background:#edf4ea;color:#2f5b38;padding:6px 10px;font-size:12px;font-weight:950}
.landing-example h3{margin:0 0 7px;font-size:24px;line-height:1.15;color:#102019}
.landing-example dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.landing-example div{background:#fbf7ef;border:1px solid #eadfce;border-radius:8px;padding:10px}
.landing-example dt{color:#6c7465;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.landing-example dd{margin:4px 0 0;color:#303727;font-weight:850}
.landing-example-note{border-top:1px solid #eadfce;padding-top:14px}
.landing-source{display:flex;justify-content:space-between;gap:18px;align-items:center;border-top:1px solid #ded5c5;margin-top:18px;padding-bottom:58px}
.landing-source div{max-width:760px}
.landing-legal-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#556153;font-weight:850}
.landing-legal-links a{color:#4f644d;text-decoration:none}
.legal-page{width:min(860px,92vw);margin:0 auto;padding:42px 0 70px;display:grid;gap:16px}
.legal-hero h1{margin:0 0 12px;color:#102019;font-size:48px;line-height:1.05;letter-spacing:0}
.legal-hero p{margin:0;color:#40503f;font-size:18px;line-height:1.55;font-weight:720}
.legal-card{background:#fffdf8;border:1px solid #ded5c5;border-radius:8px;box-shadow:0 12px 34px rgba(48,55,39,.08);padding:20px}
.legal-card h2{margin:0 0 10px;color:#102019;line-height:1.15}
.legal-card p,.legal-card li{color:#4c5549;line-height:1.6;font-weight:650}
.legal-card ul{margin:0;padding-left:21px}

.filter-drawer{position:fixed;top:0;right:0;width:min(520px,94vw);height:100vh;background:#fff;border-left:1px solid var(--line);box-shadow:-16px 0 40px rgba(16,24,40,.16);padding:20px;z-index:20;transform:translateX(105%);transition:transform .18s ease;overflow:auto}
.filters-open .filter-drawer{transform:translateX(0)}
.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.drawer-header h2{margin:0;font-size:24px}
.drawer-form{display:grid;gap:16px}
.filter-group{display:grid;gap:12px;border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;padding:14px}
.filter-group h3{margin:0;color:#344054;font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.drawer-form label{display:grid;gap:7px;color:#344054;font-weight:800}
.drawer-form input,.drawer-form select{width:100%;height:46px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:10px 12px;font:inherit}
.filter-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.filter-actions{display:flex;gap:10px;flex-wrap:wrap}
.filter-actions button,.filter-actions .button-link{min-height:42px}
.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}
.filter-grid label{display:grid;gap:7px;color:#344054;font-weight:800}
.filter-grid input,.filter-grid select{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:9px 11px;font:inherit}
.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.inline-form select{height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:8px 10px;font:inherit}
.inline-form button{min-height:38px}

@media(max-width:1160px){
  .metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .candidate-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .candidate-accounting-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lead-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .coverage-panel{grid-template-columns:1fr}
  .coverage-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-header{flex-direction:column}
  .header-actions{justify-content:flex-start}
}

@media(max-width:820px){
  .landing-benefits,.landing-how{grid-template-columns:1fr}
  .landing-source{display:grid}
  .app-shell{grid-template-columns:1fr}
  .sidebar{position:static;height:auto}
  .workspace{padding:22px 16px 40px}
  .filter-workspace{grid-template-columns:1fr}
  .filter-grid{grid-template-columns:1fr}
  .filter-panel.wide{grid-column:auto}
  .filter-choice-grid{grid-template-columns:1fr}
  .area-choice-grid{grid-template-columns:1fr}
  .setup-grid,.project-choice-grid,.setup-summary{grid-template-columns:1fr}
  .filter-workspace.embedded{grid-template-columns:1fr}
  .settings-actions{grid-column:auto}
  .connection-facts{grid-template-columns:1fr}
  .portal-form{grid-template-columns:1fr}
  .portal-actions{justify-content:flex-start}
}

@media(max-width:560px){
  .landing-hero h1{font-size:42px}
  .legal-hero h1{font-size:36px}
  .landing-subhead{font-size:17px}
  .landing-benefits,.landing-card-grid,.landing-how{grid-template-columns:1fr}
  .landing-section-heading h2{font-size:30px}
  .landing-example dl{grid-template-columns:1fr}
  .auth-body{padding:18px}
  .auth-card{padding:26px 20px;border-radius:22px}
  .auth-logo{width:min(250px,100%);margin-bottom:20px}
  .auth-card h1{font-size:28px}
  .metric-strip{grid-template-columns:1fr}
  .candidate-summary-strip{grid-template-columns:1fr}
  .candidate-accounting-grid{grid-template-columns:1fr}
  .coverage-metrics{grid-template-columns:1fr}
  .coverage-list{grid-template-columns:1fr}
  .lead-card{grid-template-columns:1fr}
  .lead-select{justify-content:flex-start;padding:12px 16px}
  .lead-facts{grid-template-columns:1fr}
  .bulk-bar input[type=email],.bulk-bar input[type=text]{min-width:100%;width:100%}
  .view-group>span{width:100%}
  .page-header h1{font-size:32px}
}

body.apm-dashboard{
  --apm-green:#4f644d;
  --apm-green-dark:#1d2d23;
  --apm-green-deep:#15231b;
  --apm-cream:#f4efe6;
  --apm-cream-2:#fbf8f1;
  --apm-card:#fffdf8;
  --apm-line:#ded5c5;
  --apm-ink:#1f271f;
  --apm-muted:#6c7465;
  --apm-gold:#b99a5b;
  --apm-shadow:0 18px 48px rgba(48,55,39,.12);
  background:var(--apm-cream);
  color:var(--apm-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}

.apm-shell{min-height:100vh}
.apm-main{min-width:0;width:min(1540px,100%);margin:0 auto;padding:24px 34px 44px}
.apm-dashboard-brandbar{display:flex;justify-content:center;padding:26px 24px 4px}
.apm-dashboard-brandbar .apm-brand{display:inline-flex;align-items:center;justify-content:center}
.apm-dashboard-brandbar .apm-brand-logo{
  display:block;width:min(430px,88vw);height:auto;border-radius:22px;background:#fffdf8;
  box-shadow:0 18px 42px rgba(48,55,39,.1);
}
.apm-app-header{
  display:grid;grid-template-columns:auto minmax(280px,1fr) auto;align-items:center;gap:18px;margin-bottom:24px;
  background:rgba(255,253,248,.88);border:1px solid var(--apm-line);border-radius:24px;padding:14px;
  box-shadow:0 14px 34px rgba(48,55,39,.1);backdrop-filter:blur(10px);
}
.apm-app-brand{display:flex;align-items:center;gap:14px;min-width:0}
.apm-app-logo{display:inline-flex;align-items:center;text-decoration:none;flex:0 0 auto}
.apm-app-logo img{display:block;width:184px;max-width:38vw;height:auto;border-radius:12px;background:#fff;box-shadow:0 10px 22px rgba(48,55,39,.1)}
.apm-app-brand p{margin:0;color:var(--apm-muted);font-weight:800;line-height:1.3;max-width:230px}
.apm-app-nav{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.apm-app-nav a{
  min-height:42px;border-radius:14px;border:1px solid #e4d8c8;background:#fffdf8;color:var(--apm-green-dark);
  display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;text-decoration:none;font-weight:900;white-space:nowrap;
}
.apm-app-nav a:hover,.apm-app-nav a.active{background:var(--apm-green);border-color:var(--apm-green);color:#fff;box-shadow:0 10px 20px rgba(79,100,77,.18)}
.apm-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}
.dashboard-topbar{justify-content:center}
.apm-search{flex:1;max-width:760px;display:grid;gap:6px}
.apm-search-row{display:flex;gap:9px;align-items:center}
.apm-search input{
  width:100%;height:52px;border:1px solid var(--apm-line);border-radius:18px;background:#fffdf8;
  padding:0 20px;font:inherit;color:var(--apm-ink);box-shadow:0 8px 22px rgba(48,55,39,.06);
}
.apm-search button,.apm-search a{
  min-height:52px;border-radius:16px;border:0;background:var(--apm-green);color:#fff;text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;padding:0 18px;font:inherit;font-weight:900;box-shadow:0 12px 24px rgba(79,100,77,.2);white-space:nowrap;
}
.apm-search a{background:#fffdf8;color:var(--apm-green-dark);border:1px solid var(--apm-line);box-shadow:none}
.apm-search small{color:var(--apm-muted);font-weight:750;line-height:1.35}
.apm-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.dashboard-topbar .apm-top-actions{justify-content:center}
.apm-summary-btn{
  min-height:42px;border-radius:14px;background:var(--apm-green);color:#fff;text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;font-weight:850;box-shadow:0 12px 24px rgba(79,100,77,.16);white-space:nowrap;
}
.apm-summary-btn.active{background:var(--apm-green-deep);box-shadow:0 12px 24px rgba(21,35,27,.2)}
.apm-summary-btn.secondary{background:#fffdf8;color:var(--apm-green-dark);border:1px solid var(--apm-line);box-shadow:none}
.dashboard-legal-footer{display:flex;justify-content:center;gap:14px;margin:24px 0 0;color:var(--apm-muted);font-size:12px;font-weight:750}
.dashboard-legal-footer a{color:inherit;text-decoration:none}
.dashboard-legal-footer a:hover{color:var(--apm-green-dark);text-decoration:underline}
.apm-user{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:2px 10px;background:#fffdf8;border:1px solid var(--apm-line);border-radius:18px;padding:8px 12px;color:var(--apm-ink);text-decoration:none;min-width:170px}
.apm-user span{width:34px;height:34px;border-radius:999px;background:#eadfc8;color:var(--apm-green);display:grid;place-items:center;font-weight:900}
.apm-user strong,.apm-user small{grid-column:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.apm-user small{color:var(--apm-muted);font-weight:750}
.apm-notice{margin:0 0 18px;padding:13px 15px;border-radius:14px;background:#edf4ea;color:var(--apm-green);font-weight:800;border:1px solid #d5e2d0}
.apm-notice.error{background:#fff2ed;color:#9f3a24;border-color:#f1c9bc}
.apm-hero{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:20px}
.apm-kicker{margin:0 0 8px;color:var(--apm-gold);font-weight:900;text-transform:uppercase;letter-spacing:.09em;font-size:12px}
.apm-hero h1{margin:0;font-size:44px;line-height:1;font-weight:900;letter-spacing:0}
.apm-hero p:last-child{margin:0;max-width:430px;color:var(--apm-muted);line-height:1.55;font-weight:650}

.apm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}
.apm-kpis article{
  position:relative;overflow:hidden;background:var(--apm-card);border:1px solid var(--apm-line);
  border-radius:24px;padding:20px;box-shadow:var(--apm-shadow);min-height:128px;
}
.apm-kpis span{display:block;color:var(--apm-muted);font-weight:800;margin-bottom:12px}
.apm-kpis strong{display:block;font-size:42px;line-height:1;font-weight:900;color:var(--apm-green-dark)}
.apm-kpis i{position:absolute;right:18px;bottom:18px;width:48px;height:48px;border-radius:999px;background:linear-gradient(145deg,#e8dcc4,#f8f0df);border:1px solid #e0d2b8}

.apm-status-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:-4px 0 18px}
.apm-status-actions a{
  border:1px solid #d8c9b4;border-radius:20px;background:#fffdf8;text-decoration:none;color:var(--apm-ink);
  padding:16px 18px;box-shadow:0 10px 26px rgba(48,55,39,.08);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center;
}
.apm-status-actions span{font-weight:950;color:var(--apm-green-dark)}
.apm-status-actions strong{font-size:28px;color:#b7791f;line-height:1}
.apm-status-actions small{grid-column:1/-1;color:var(--apm-muted);font-weight:750}
.apm-status-actions a:hover{border-color:#c99a2e;transform:translateY(-1px)}

.apm-week-update-card{margin:0 0 18px}
.apm-week-update-card .apm-map-heading h2{font-size:20px}
.weekly-update-map{height:min(48vh,460px);min-height:320px;border-radius:16px}

.apm-filter-strip{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:24px;
  background:rgba(255,253,248,.72);border:1px solid var(--apm-line);border-radius:24px;padding:12px;box-shadow:0 10px 28px rgba(48,55,39,.08);
}
.apm-filter-strip a{
  min-height:64px;border-radius:18px;background:#fffdf8;border:1px solid #e9dfcf;text-decoration:none;
  display:grid;align-content:center;padding:10px 14px;color:var(--apm-ink);
}
.apm-filter-strip span{font-size:12px;color:var(--apm-muted);font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.apm-filter-strip strong{font-size:15px;margin-top:4px}
.apm-feed-filter{min-height:64px;border-radius:18px;background:#fffdf8;border:1px solid #e9dfcf;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-content:center;padding:10px 14px;color:var(--apm-ink)}
.apm-feed-filter span{grid-column:1/-1}
.apm-feed-filter select{min-width:0;border:1px solid #d8c9b4;border-radius:8px;background:#fffaf0;padding:8px;font-weight:800;color:var(--apm-ink)}
.apm-feed-filter button{border:0;border-radius:8px;background:var(--apm-green);color:white;padding:9px 12px;font-weight:900}
.apm-toggle{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.apm-toggle b{width:42px;height:24px;border-radius:999px;background:#d8d0c1;position:relative}
.apm-toggle b:after{content:"";position:absolute;width:18px;height:18px;border-radius:999px;left:3px;top:3px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18)}
.apm-toggle.on b{background:var(--apm-green)}
.apm-toggle.on b:after{left:21px}

.apm-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:22px;align-items:start}
.apm-grid.dashboard-landing{grid-template-columns:1fr}
.apm-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}
.apm-section-heading h2,.apm-panel h2{margin:0;font-size:23px;line-height:1.1}
.apm-section-heading p{margin:6px 0 0;color:var(--apm-muted);font-weight:750;line-height:1.35}
.apm-section-heading a{color:var(--apm-green);font-weight:850;text-decoration:none}
.mobile-filter-details{margin-bottom:18px}
.mobile-filter-details>summary{display:none}
.mobile-filter-details .opportunities-filters{margin-bottom:0}
.opportunities-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;background:#fffdf8;border:1px solid var(--apm-line);border-radius:8px;box-shadow:0 10px 28px rgba(48,55,39,.08);padding:16px}
.opportunities-filters label{display:grid;gap:6px;color:var(--apm-ink);font-weight:850}
.opportunities-filters span,.opportunities-checks{font-size:12px;color:var(--apm-muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.opportunities-filters input,.opportunities-filters select{border:1px solid #d8c9b4;border-radius:8px;background:#fffaf0;padding:10px;color:var(--apm-ink);font:inherit;font-weight:750;min-width:0}
.opportunities-checks{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;text-transform:none;letter-spacing:0}
.opportunities-checks label{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:6px}
.opportunities-filter-actions{grid-column:1/-1;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.opportunities-filter-actions button,.opportunities-filter-actions a,.pagination-nav a{border:1px solid var(--apm-green);border-radius:999px;background:var(--apm-green);color:#fff;text-decoration:none;padding:9px 13px;font-weight:900}
.opportunities-filter-actions a,.pagination-nav a{background:#fffaf0;color:var(--apm-green)}
.opportunities-filter-actions .secondary{background:#fffdf8;color:var(--apm-green-dark);border-color:var(--apm-line)}
.opportunities-main{width:min(1280px,100%);padding-top:16px}
.opportunities-page-heading{margin:0 0 24px}
.opportunities-page-heading h1{
  max-width:800px;margin:0;color:var(--apm-ink);font-size:clamp(34px,4vw,44px);font-weight:900;line-height:1.05;
  letter-spacing:0;
}
.opportunities-search-actions{
  display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 24px;
}
.opportunities-search-buttons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.opportunities-search-buttons .apm-inline-action{min-height:42px;border-radius:12px;padding:9px 16px;font:inherit;font-weight:850}
.opportunities-search-buttons .secondary,.apm-inline-action.secondary{background:#fffaf0;color:var(--apm-green);border:1px solid var(--apm-green)}
.opportunities-search-buttons .apm-inline-action:hover{background:var(--apm-green-dark)}
.opportunities-search-buttons .secondary:hover{background:#f5eddf;color:var(--apm-green-dark)}
.opportunities-filter-status{margin:0;color:var(--apm-muted);font-size:14px;font-weight:700;text-align:right}
.opportunities-results-summary{
  display:flex;align-items:baseline;gap:12px;margin:0 0 12px;color:var(--apm-ink);
}
.opportunities-results-summary strong{font-size:18px;font-weight:850}
.opportunities-results-summary span{color:var(--apm-muted);font-size:14px;font-weight:700}
.opportunities-navigation-row{
  display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 24px;min-width:0;
}
.opportunities-status-navigation{min-width:0;flex:1 1 auto}
.opportunities-status-scroller{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
.opportunities-segmented-control,.opportunities-view-toggle{
  display:inline-flex;align-items:stretch;width:max-content;border:1px solid var(--apm-line);border-radius:12px;
  background:var(--apm-card);padding:3px;
}
.opportunities-segmented-control a,.opportunities-view-toggle a{
  display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:0;border-radius:8px;padding:8px 14px;
  color:var(--apm-green-dark);text-decoration:none;font-size:14px;font-weight:750;line-height:1.2;white-space:nowrap;
  transition:background .15s ease,color .15s ease,box-shadow .15s ease;
}
.opportunities-segmented-control a:hover,.opportunities-view-toggle a:hover{background:#f3ecdf;color:var(--apm-green-deep)}
.opportunities-segmented-control a.active,.opportunities-view-toggle a.active{
  background:#dfe8dc;color:var(--apm-green-deep);box-shadow:inset 0 0 0 1px #c8d6c3;
}
.opportunities-segmented-control a:focus-visible,.opportunities-view-toggle a:focus-visible{
  outline:3px solid rgba(185,154,91,.5);outline-offset:2px;
}
.opportunities-view-toggle{flex:0 0 auto;margin:0}
.opportunities-filter-panel{width:min(920px,calc(100vw - 32px))}
.opportunities-filter-panel .opportunities-filters{border:0;box-shadow:none;padding:0;background:transparent}
.opportunities-list{display:grid;gap:14px}
.opportunity-row{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:16px;border:1px solid var(--apm-line);border-radius:8px;background:#fffdf8;box-shadow:0 10px 26px rgba(48,55,39,.08);padding:16px}
.opportunity-drawer-trigger{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.opportunity-drawer-trigger:hover,.opportunity-drawer-trigger:focus-visible{border-color:#b99a5b;box-shadow:0 14px 30px rgba(48,55,39,.13);outline:0;transform:translateY(-1px)}
.opportunity-card-kicker{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:8px}
.project-type-label,.card-project-type{margin:0;color:var(--apm-green-dark);font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.07em}
.opportunity-row-title{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
.opportunity-row h2{margin:0;color:var(--apm-ink);font-size:22px;line-height:1.18}
.opportunity-row p{margin:8px 0;color:var(--apm-muted);line-height:1.45}
.opportunity-address-line{font-weight:850;color:#303727!important}
.opportunity-proposal-summary{max-width:76ch}
.opportunity-meta,.opportunity-contacts{display:flex;gap:8px;flex-wrap:wrap;color:var(--apm-muted);font-size:13px;font-weight:800}
.opportunity-meta span,.opportunity-contacts span{border:1px solid #eadfce;border-radius:999px;background:#fffaf0;padding:6px 9px}
.opportunity-meta small{display:block;color:var(--apm-muted);font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.opportunity-card-badges{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 10px}
.opportunity-card-badges span{border-radius:999px;background:#edf4ea;border:1px solid #d5e2d0;color:var(--apm-green-dark);padding:6px 9px;font-size:12px;font-weight:900}
.opportunity-card-why{margin:12px 0 10px;border-left:4px solid var(--apm-green);padding:2px 0 2px 12px}
.opportunity-card-why h3{margin:0 0 6px;color:var(--apm-green-dark);font-size:14px;line-height:1.2}
.opportunity-card-why ul,.card-reason-list,.drawer-reason-list{margin:0;padding-left:18px;color:#4c5549;font-weight:700;line-height:1.45}
.opportunity-card-why li,.card-reason-list li,.drawer-reason-list li{margin:3px 0}
.opportunity-row-actions{display:grid;gap:9px;align-content:start}
.opportunity-row-actions form{margin:0;display:grid;gap:7px}
.opportunity-row-actions label,.drawer-action-grid label{display:grid;gap:5px;color:var(--apm-muted);font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.opportunity-row-actions select,.drawer-action-grid select{width:100%;border:1px solid #d8c9b4;border-radius:10px;background:#fffaf0;padding:8px;color:var(--apm-ink);font:inherit;font-weight:800}
.opportunity-row-actions a,.opportunity-row-actions button{border:1px solid var(--apm-green);border-radius:12px;background:var(--apm-green);color:#fff;text-decoration:none;text-align:center;padding:10px;font-weight:900;font:inherit;cursor:pointer}
.opportunity-row-actions a:last-child{background:#fffaf0;color:var(--apm-green)}
.opportunity-drawer-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:38}
.opportunity-detail-drawer{
  position:fixed;top:0;right:0;width:min(620px,96vw);height:100vh;background:#fffdf8;border-left:1px solid var(--apm-line);
  box-shadow:-22px 0 50px rgba(15,23,42,.22);z-index:39;transform:translateX(105%);transition:transform .18s ease;
  overflow:auto;padding:22px;display:grid;gap:16px;align-content:start;
}
.opportunity-detail-drawer.open{transform:translateX(0)}
.opportunity-drawer-open{overflow:hidden}
.opportunity-drawer-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid #eadfce;padding-bottom:14px}
.opportunity-drawer-header h2{margin:4px 0 8px;color:var(--apm-ink);font-size:28px;line-height:1.13;letter-spacing:0}
.opportunity-drawer-header p{margin:0;color:var(--apm-muted);font-weight:760;line-height:1.4}
.drawer-close-button,.drawer-nav-buttons button{border:1px solid #d7c6aa;border-radius:999px;background:#fffaf0;color:var(--apm-green);padding:9px 13px;font-weight:900;cursor:pointer}
.opportunity-drawer-source{display:grid;gap:8px;border:1px solid #eadfce;border-radius:8px;background:#fbf7ef;padding:14px}
.opportunity-drawer-source small,.drawer-muted{color:var(--apm-muted);font-weight:800}
.drawer-primary-link,.drawer-source-links a,.drawer-action-grid a,.drawer-action-grid button{
  border:1px solid var(--apm-green);border-radius:12px;background:var(--apm-green);color:#fff;text-decoration:none;padding:10px 12px;font-weight:900;text-align:center;font:inherit;cursor:pointer;
}
.drawer-section{border:1px solid #eadfce;border-radius:8px;background:#fff;padding:16px;display:grid;gap:10px}
.drawer-section h3{margin:0;color:var(--apm-ink);font-size:19px}
.drawer-section h4{margin:0 0 8px;color:var(--apm-green-dark);font-size:16px}
.drawer-section p{margin:0;color:#4c5549;line-height:1.55;font-weight:650}
.drawer-facts,.drawer-contact-grid dl{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0}
.drawer-facts div,.drawer-contact-grid dl div{background:#fbf7ef;border:1px solid #eadfce;border-radius:8px;padding:10px}
.drawer-facts dt,.drawer-contact-grid dt{color:var(--apm-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:950;margin-bottom:4px}
.drawer-facts dd,.drawer-contact-grid dd{margin:0;color:var(--apm-ink);font-weight:820;overflow-wrap:anywhere}
.drawer-contact-grid{display:grid;grid-template-columns:1fr;gap:10px}
.drawer-contact-grid article{border:1px solid #eadfce;border-radius:8px;background:#fbf7ef;padding:12px}
.drawer-contact-grid article p{color:var(--apm-muted)}
.contact-route-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}
.contact-route-heading h3,.contact-route-heading h4{margin:0;color:var(--apm-green-dark)}
.contact-route-heading span{border:1px solid #d9a15f;background:#fff7dd;color:#6e4a12;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:950;white-space:nowrap}
.contact-copy-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.contact-copy-actions button,.copy-contact-summary{border:1px solid var(--apm-green);border-radius:999px;background:#fff;color:var(--apm-green);padding:8px 10px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.copy-contact-summary{margin-top:12px;background:var(--apm-green);color:#fff}
.drawer-source-links,.drawer-action-grid{display:grid;gap:9px}
.drawer-source-links p{color:var(--apm-muted)}
.drawer-action-grid{grid-template-columns:1fr 1fr}
.drawer-action-grid form{margin:0}
.drawer-action-grid button{width:100%}
.drawer-action-grid a{background:#fffaf0;color:var(--apm-green)}
.status-change-form{border:1px solid #eadfce;border-radius:8px;background:#fbf7ef;padding:10px}
.drawer-note-form{display:grid;gap:10px}
.drawer-note-form label{display:grid;gap:6px;color:var(--apm-muted);font-size:12px;font-weight:900}
.drawer-note-form input,.drawer-note-form select,.drawer-note-form textarea{
  width:100%;border:1px solid #d8c9b4;border-radius:10px;background:#fffaf0;padding:10px;color:var(--apm-ink);font:inherit;font-weight:750;
}
.drawer-note-form textarea{resize:vertical}
.drawer-note-form button{border:1px solid var(--apm-green);border-radius:12px;background:var(--apm-green);color:#fff;padding:10px 12px;font-weight:900;font:inherit;cursor:pointer}
.drawer-notes-list{display:grid;gap:10px}
.note-edit-details{border-top:1px solid #eadfce;padding-top:8px}
.note-edit-details summary{cursor:pointer;color:var(--apm-green);font-weight:900}
.overdue-follow-up{border-color:#d9a15f!important;background:#fff7ed!important;color:#9a4b13!important}
.drawer-nav-buttons{display:flex;justify-content:space-between;gap:10px}
.pagination-nav{display:flex;gap:12px;align-items:center;justify-content:center;margin:18px 0;color:var(--apm-muted);font-weight:850}
.apm-card-stack{display:grid;gap:16px}
.apm-opportunity-card,.apm-panel,.apm-map-panel,.apm-activity{
  background:var(--apm-card);border:1px solid var(--apm-line);border-radius:26px;box-shadow:var(--apm-shadow);
}
.apm-opportunity-card{padding:22px}
.apm-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.apm-fit,.apm-new{
  display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;
  background:#edf4ea;color:var(--apm-green);border:1px solid #d5e2d0;
}
.apm-fit.excellent-fit{background:#f4ead5;color:#7a5b20;border-color:#e0c98e}
.apm-fit.maybe{background:#f6f1e8;color:#786b55}
.apm-fit.low-fit{background:#f2eeee;color:#76645e}
.apm-new{background:#e9f2e7;color:#35553a}
.apm-opportunity-card h3{margin:0 0 16px;font-size:24px;line-height:1.22;letter-spacing:0}
.apm-meta-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:14px}
.apm-meta-grid span{background:#f8f2e8;border:1px solid #eadfce;border-radius:16px;padding:11px 12px;font-weight:820;color:var(--apm-ink);overflow-wrap:anywhere}
.apm-meta-grid small,.apm-why small{display:block;color:var(--apm-muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}
.apm-why{background:#fbf7ef;border:1px solid #eadfce;border-radius:18px;padding:14px;margin-bottom:16px}
.apm-why p{margin:0;color:#4c5549;line-height:1.5;font-weight:650}
.apm-why ul{margin-top:0}
.apm-tag-row{display:flex;gap:7px;flex-wrap:wrap;margin:-2px 0 14px}
.apm-tag-row span,.detail-badges span:not(.apm-fit){
  border-radius:999px;background:#f1eadc;border:1px solid #dfd0b8;color:#4c5549;
  padding:6px 9px;font-size:12px;font-weight:850;
}
.apm-card-actions{display:flex;gap:9px;flex-wrap:wrap}
.apm-card-actions form{margin:0}
.apm-card-actions a,.apm-card-actions button{
  min-height:39px;border-radius:13px;border:1px solid var(--apm-line);background:#fffdf8;color:var(--apm-green-dark);
  padding:9px 12px;text-decoration:none;font-weight:850;font-size:13px;display:inline-flex;align-items:center;justify-content:center;
}
.apm-card-actions a:first-child{background:var(--apm-green);color:#fff;border-color:var(--apm-green)}
.apm-card-actions button:disabled{opacity:.55;cursor:not-allowed}

.apm-side-panels{display:grid;gap:18px}
.apm-panel{padding:20px}
.apm-ranked{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:13px}
.apm-ranked li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding-bottom:13px;border-bottom:1px solid #eadfce}
.apm-ranked li:last-child{border-bottom:0;padding-bottom:0}
.apm-ranked li>span{width:31px;height:31px;border-radius:999px;background:#f0e5cf;color:#7a5b20;display:grid;place-items:center;font-weight:950}
.apm-ranked strong{display:block;font-size:14px;line-height:1.25}
.apm-ranked small{display:block;color:var(--apm-muted);font-weight:760;margin-top:3px}
.apm-ranked em{font-style:normal;border-radius:999px;background:#edf4ea;color:var(--apm-green);padding:6px 8px;font-size:11px;font-weight:900;white-space:nowrap}
.apm-best-main{padding:22px;display:flex;flex-direction:column;max-height:calc(100vh - 332px);min-height:420px}
.dashboard-landing .apm-best-main{max-height:none;min-height:0}
.apm-best-main .apm-section-heading{flex:0 0 auto}
.apm-ranked-main{
  margin-top:14px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:8px;
  scrollbar-color:#b99a5b #f3eadb;scrollbar-width:thin;
}
.apm-ranked-main::-webkit-scrollbar{width:10px}
.apm-ranked-main::-webkit-scrollbar-track{background:#f3eadb;border-radius:999px}
.apm-ranked-main::-webkit-scrollbar-thumb{background:#b99a5b;border-radius:999px;border:2px solid #f3eadb}
.apm-ranked-main li{grid-template-columns:42px minmax(0,1fr) minmax(138px,max-content);align-items:start;gap:16px;padding:16px 0}
.apm-ranked-main .apm-rank-number{margin-top:2px}
.apm-ranked-copy{min-width:0}
.apm-ranked-main .apm-ranked-address{
  display:block;color:var(--apm-green-dark);font-size:18px;line-height:1.28;font-weight:950;
  overflow-wrap:anywhere;
}
.apm-ranked-main .apm-ranked-description{
  margin:6px 0 0;color:#3f483e;font-size:14px;line-height:1.38;font-weight:750;
}
.apm-ranked-main .apm-ranked-meta{margin-top:7px;color:var(--apm-muted);font-weight:850}
.apm-ranked-main .apm-ranked-reason{margin:8px 0 0;color:#4c5549;font-size:13px;line-height:1.4;font-weight:750}
.partial-location-label{
  display:inline-flex!important;width:max-content;border-radius:999px;background:#f6f1e8;border:1px solid #dfd0b8;
  color:#786b55;padding:5px 9px;font-size:11px;font-weight:950;margin-top:7px;
}
.apm-ranked-side{display:grid;gap:10px;justify-items:end;align-content:start}
.apm-ranked-main em{margin-top:1px;max-width:150px;text-align:center;white-space:normal}
.apm-row-action,.apm-panel-action{
  display:inline-flex;align-items:center;justify-content:center;border-radius:13px;text-decoration:none;font-weight:900;white-space:nowrap;
}
.apm-row-action{min-height:36px;padding:8px 11px;background:#fffdf8;border:1px solid var(--apm-line);color:var(--apm-green-dark);font-size:13px}
.apm-panel-action{flex:0 0 auto;margin-top:16px;min-height:42px;padding:10px 14px;background:var(--apm-green);border:1px solid var(--apm-green);color:#fff}
.apm-ranked-empty{
  display:grid!important;grid-template-columns:1fr!important;place-items:center;text-align:center;min-height:240px;border:1px solid #e1d5c1!important;
  border-radius:20px;background:#f7f0e4;color:var(--apm-muted);padding:24px!important;
}
.apm-ranked-empty strong{font-size:20px;color:var(--apm-green-dark)}
.apm-ranked-empty p{max-width:360px;margin:8px 0 0}

.apm-map-panel{padding:14px}
.apm-leaflet-map{height:260px;border-radius:20px;overflow:hidden;border:1px solid #e1d5c1}
.dashboard-opportunity-map{width:100%}
.apm-map-panel-large{margin-bottom:18px;padding:20px}
.apm-map-panel-large .apm-leaflet-map{height:min(62vh,620px);min-height:460px}
.apm-map-panel-large .map-empty{min-height:460px}
.postcode-map-stack{display:grid;gap:14px;margin:-4px 0 18px}
.postcode-map-stack.compact{margin:0}
.postcode-map-section .postcode-map{height:360px}
.apm-map-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:2px 2px 12px}
.apm-map-heading h2{margin:0;font-size:20px;line-height:1.15;color:var(--apm-green-dark)}
.apm-map-heading p{margin:5px 0 0;color:var(--apm-muted);font-weight:750;line-height:1.35}
.apm-map-link,.apm-inline-action{
  display:inline-flex;align-items:center;justify-content:center;min-height:38px;border-radius:13px;
  background:var(--apm-green);color:#fff;text-decoration:none;font-weight:900;padding:8px 12px;white-space:nowrap;
}
.apm-area-line{margin:8px 0 0;color:var(--apm-green-dark);font-weight:850}
.apm-area-badge{display:inline-flex;margin-top:8px;border-radius:999px;background:#edf4ea;color:var(--apm-green);padding:6px 10px;font-size:12px;font-weight:950}
.map-empty{
  min-height:260px;border-radius:20px;border:1px solid #e1d5c1;background:#f7f0e4;
  display:grid;place-items:center;text-align:center;padding:24px;color:var(--apm-muted);
}
.map-empty.large{min-height:520px}
.map-empty strong{display:block;color:var(--apm-green-dark);font-size:20px;margin-bottom:6px}
.map-empty p{max-width:260px;margin:0;line-height:1.45;font-weight:700}
.map-empty .apm-inline-action{margin-top:14px}
.fallback-page{min-height:100vh;display:grid;place-items:center;padding:24px}
.search-area-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(360px,1fr);gap:18px;align-items:start}
.search-area-form,.search-area-preview,.large-map-panel{
  background:var(--apm-card);border:1px solid var(--apm-line);border-radius:26px;box-shadow:var(--apm-shadow);padding:20px;
}
.search-area-form{display:grid;gap:16px}
.search-area-cards{display:grid;gap:12px}
.search-area-card{border:1px solid #e4d7c5;background:#fffdf8;border-radius:20px;padding:14px}
.search-area-card form{display:grid;grid-template-columns:minmax(160px,.75fr) minmax(220px,1.2fr) minmax(150px,.55fr) auto;gap:12px;align-items:end}
.feed-criteria{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;border-top:1px solid #eadfce;padding-top:12px}
.feed-criteria .filter-note{grid-column:1/-1}
.search-area-checks{border:1px solid #eadfce;border-radius:8px;background:#fffaf0;margin:0;padding:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.search-area-checks legend{font-weight:900;color:#303727;padding:0 4px}
.search-area-checks label{font-size:13px;color:#303727}
.compact-actions{align-self:end}
.matched-area-pill,.matched-area-line{
  display:inline-flex;width:max-content;max-width:100%;border-radius:999px;background:#edf4ea;color:var(--apm-green-dark);
  padding:6px 10px;font-size:12px;font-weight:950;margin:8px 0 0;
}
.matched-area-line{display:inline-flex;margin-top:6px}
.large-field small{color:var(--apm-muted);font-weight:750}
.radius-field{display:grid;gap:8px;color:#4c5549;font-weight:850}
.radius-field select,.radius-field input{
  min-height:48px;border:1px solid #ded5c5;border-radius:15px;background:#fff;padding:10px 13px;font:inherit;color:#1f271f;
}
.search-area-actions{display:flex;gap:10px;flex-wrap:wrap}
.search-area-actions button.secondary{background:#fffdf8;color:var(--apm-green-dark);border:1px solid var(--apm-line)}
.search-area-map{height:360px}
.large-map{height:min(68vh,680px);min-height:520px}
.apm-map-embed-root,.apm-map-embed-root body{width:100%;height:100%;margin:0;padding:0;overflow:hidden}
.apm-map-embed-page{background:transparent}
.apm-map-embed-page #map,.apm-map-embed-page .embedded-opportunity-map{width:100%;height:100%;min-height:0;border:0;border-radius:0}
.map-legend{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 12px}
.map-legend span{display:inline-flex;align-items:center;gap:7px;border:1px solid #e1d5c1;background:#fffdf8;border-radius:999px;padding:7px 10px;color:#4c5549;font-weight:850;font-size:13px}
.map-legend i{width:12px;height:12px;border-radius:999px;display:inline-block;border:2px solid #fff;box-shadow:0 0 0 1px rgba(31,39,31,.16)}
.map-legend .radius-ring{background:rgba(79,100,77,.16);border-color:#4f644d;box-shadow:none}
.marker-best{background:#2563eb}.marker-saved{background:#b7791f}.marker-contacted{background:#2f855a}
.opportunity-leaflet-marker,.postcode-centre-marker{background:transparent;border:0}
.postcode-centre-dot{
  --marker-colour:#4f644d;display:block;width:18px;height:18px;border-radius:50%;background:#fff;
  border:4px solid var(--marker-colour);box-shadow:0 3px 10px rgba(31,39,31,.28);
}
.opportunity-marker-dot{
  --marker-colour:#2563eb;--marker-size:16px;position:relative;display:block;width:var(--marker-size);height:var(--marker-size);
  border-radius:50%;background:var(--marker-colour);border:2px solid #fff;box-shadow:0 2px 8px rgba(15,23,42,.32);
}
.opportunity-marker-dot.is-approximate{opacity:.72;border:3px dashed var(--marker-colour);background:rgba(255,255,255,.9);box-shadow:inset 0 0 0 5px var(--marker-colour),0 2px 8px rgba(15,23,42,.28)}
.opportunity-map-cluster{background:transparent;border:0}
.opportunity-map-cluster span{
  display:grid;position:relative;place-items:center;width:42px;height:42px;border-radius:999px;
  background:rgba(79,100,77,.9);border:4px solid rgba(255,253,248,.92);box-shadow:0 8px 18px rgba(31,39,31,.24);
  color:#fff;font-size:14px;font-weight:950;
}
.postcode-radius-circle{filter:drop-shadow(0 1px 2px rgba(31,39,31,.22))}
.postcode-radius-label span{display:inline-flex;align-items:center;justify-content:center;min-width:70px;min-height:24px;padding:3px 8px;border-radius:999px;background:rgba(255,253,248,.94);border:1px solid rgba(79,100,77,.38);box-shadow:0 6px 14px rgba(31,39,31,.16);color:#2f3a2e;font-size:12px;font-weight:900;white-space:nowrap}
.map-search-panel{margin-top:18px}
.large-postcode-map-stack{margin:18px 0 0}
.add-postcode-panel{display:flex;justify-content:flex-start;margin-top:18px}
.add-postcode-launcher{border:0;cursor:pointer;font:inherit}
.postcode-empty-state{margin-top:12px}
.postcode-map-section-loading{min-height:150px}
.postcode-modal[hidden]{display:none}
.postcode-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:22px}
.postcode-modal-backdrop{position:absolute;inset:0;background:rgba(31,39,31,.46)}
.postcode-modal-panel{
  position:relative;width:min(520px,calc(100vw - 32px));max-height:min(720px,calc(100dvh - 32px));overflow:auto;
  background:#fffdf8;border:1px solid var(--apm-line);border-radius:8px;box-shadow:0 24px 70px rgba(31,39,31,.28);
  padding:22px;display:grid;gap:16px;
}
.postcode-modal-panel h2{margin:0;color:var(--apm-green-dark);font-size:28px;line-height:1.1}
.postcode-modal-panel form{display:grid;gap:14px}
.postcode-modal-close{
  position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:999px;border:1px solid var(--apm-line);
  background:#fff;color:var(--apm-green-dark);font-weight:950;cursor:pointer;
}
.postcode-billing-notice{display:grid;gap:5px}
.postcode-billing-notice p{margin:0}
.postcode-radius-display{margin:0;color:var(--apm-green-dark);font-weight:850}
.postcode-modal-actions{display:flex;gap:10px;flex-wrap:wrap}
.postcode-modal-actions button{
  min-height:48px;border-radius:15px;padding:0 16px;font-weight:900;cursor:pointer;
}
.postcode-modal-actions .primary{border:0;background:var(--apm-green);color:#fff}
.postcode-modal-actions .secondary{border:1px solid var(--apm-line);background:#fffdf8;color:var(--apm-green-dark)}
.postcode-modal-actions button:disabled{opacity:.62;cursor:wait}
.form-error{margin:-4px 0 0;color:#8a3f2f;font-weight:850}
.postcode-modal-open{overflow:hidden}
.search-area-form.compact{grid-template-columns:minmax(180px,.7fr) minmax(260px,1.4fr) minmax(170px,.65fr) auto;align-items:end}
.search-area-form.compact .search-area-actions{align-self:end}
.search-area-form.compact button,.search-area-actions button{
  min-height:48px;border:0;border-radius:15px;background:var(--apm-green);color:#fff;font-weight:900;padding:0 16px;
}
.flash{border-radius:16px;padding:12px 14px;margin:0 0 14px;font-weight:850}
.flash.success{background:#edf4ea;color:var(--apm-green-dark);border:1px solid #d5e2d0}
.flash.error{background:#f8e9e4;color:#8a3f2f;border:1px solid #edc9bf}
.map-bg{
  position:relative;height:260px;border-radius:20px;overflow:hidden;
  background:
    linear-gradient(130deg,rgba(79,100,77,.15),rgba(185,154,91,.12)),
    radial-gradient(circle at 32% 28%,#dfe8d8 0 12%,transparent 13%),
    radial-gradient(circle at 66% 62%,#e8dcc4 0 15%,transparent 16%),
    linear-gradient(45deg,#f7f0e4,#e9e0d0);
  border:1px solid #e1d5c1;
}
.map-bg:before,.map-bg:after{content:"";position:absolute;border:1px solid rgba(79,100,77,.2);border-radius:48%}
.map-bg:before{width:260px;height:150px;left:38px;top:48px;transform:rotate(-19deg)}
.map-bg:after{width:210px;height:130px;right:18px;bottom:28px;transform:rotate(14deg)}
.map-bg strong,.map-bg em,.map-bg b{position:absolute;font-style:normal;color:rgba(31,39,31,.58);font-weight:900}
.map-bg strong{top:38px;left:34px}.map-bg b{top:26px;right:34px}.map-bg em{bottom:35px;left:34px}
.pin{position:absolute;width:15px;height:15px;border-radius:999px;background:var(--apm-green);border:3px solid #fff;box-shadow:0 5px 13px rgba(31,39,31,.32);z-index:2}
.pin-berkhamsted{left:112px;top:112px}.pin-st-albans{left:174px;top:90px}.pin-beaconsfield{left:148px;bottom:72px}

.apm-activity{margin-top:24px;padding:20px}
.apm-activity-table{display:grid;border:1px solid #eadfce;border-radius:18px;overflow:hidden}
.apm-activity-head,.apm-activity-row{display:grid;grid-template-columns:1.15fr 1.4fr .85fr .65fr .9fr;gap:12px;padding:13px 15px;align-items:center}
.apm-activity-head{background:#f3eadb;color:var(--apm-muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.apm-activity-row{background:#fffdf8;border-top:1px solid #eadfce;color:#444d40;font-weight:680}
.apm-activity-row span:first-child{font-weight:880;color:var(--apm-green-dark)}

@media(max-width:1200px){
  .apm-app-header{grid-template-columns:1fr}
  .apm-app-nav{justify-content:flex-start}
  .apm-top-actions{justify-content:flex-start}
  .apm-grid{grid-template-columns:1fr}
  .apm-week-update-content{grid-template-columns:1fr}
  .apm-best-main{max-height:620px}
  .apm-side-panels{grid-template-columns:1fr 1fr}
  .apm-filter-strip{grid-template-columns:1fr 1fr}
  .search-area-layout{grid-template-columns:1fr}
  .search-area-form.compact{grid-template-columns:1fr 1fr}
  .search-area-card form{grid-template-columns:1fr 1fr}
  .feed-criteria{grid-template-columns:1fr}
  .opportunities-navigation-row{align-items:flex-start;flex-direction:column}
}
@media(max-width:900px){
  .apm-main{padding:22px 16px 36px}
  .apm-app-header{border-radius:18px;padding:12px}
  .apm-app-brand{align-items:flex-start;flex-direction:column}
  .apm-app-logo img{width:min(188px,62vw);border-radius:10px}
  .apm-app-brand p{max-width:none}
  .apm-app-nav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;overscroll-behavior-x:contain;padding-bottom:4px}
  .apm-app-nav a{flex:0 0 auto}
  .apm-topbar,.apm-hero{align-items:stretch;flex-direction:column}
  .apm-search{max-width:none}
  .apm-search-row{flex-direction:column;align-items:stretch}
  .apm-search button,.apm-search a{width:100%}
  .apm-kpis,.apm-status-actions{grid-template-columns:1fr 1fr}
  .apm-map-panel-large .apm-leaflet-map,.apm-map-panel-large .map-empty{min-height:380px;height:52vh}
  .apm-best-main{max-height:560px;min-height:360px}
  .apm-side-panels{grid-template-columns:1fr}
  .apm-ranked-main li{grid-template-columns:34px minmax(0,1fr)}
  .apm-ranked-side{grid-column:2;display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;margin-top:8px}
  .apm-ranked-main .apm-row-action{justify-self:start}
  .apm-meta-grid,.apm-activity-head,.apm-activity-row{grid-template-columns:1fr}
  .opportunity-row{grid-template-columns:1fr}
  .opportunity-row-title{display:grid}
  .opportunity-detail-drawer{width:100vw;padding:18px}
  .opportunity-drawer-header{display:grid}
  .drawer-facts,.drawer-action-grid{grid-template-columns:1fr}
  .search-area-form.compact{grid-template-columns:1fr}
  .search-area-card form{grid-template-columns:1fr}
  .search-area-checks{grid-template-columns:1fr}
}
@media(max-width:620px){
  .apm-kpis,.apm-status-actions,.apm-filter-strip{grid-template-columns:1fr}
  .apm-map-panel-large{padding:14px}
  .apm-map-panel-large .apm-leaflet-map,.apm-map-panel-large .map-empty{min-height:320px;height:48vh}
  .apm-hero h1,.apm-page-title h1{font-size:32px;line-height:1.05}
  .apm-top-actions{align-items:stretch;flex-direction:column}
  .apm-summary-btn,.apm-user{width:100%}
  .apm-app-nav a{min-height:40px;padding:8px 11px}
  .opportunities-main{padding-top:12px}
  .opportunities-page-heading{margin-bottom:20px}
  .opportunities-page-heading h1{font-size:clamp(30px,9vw,36px)}
  .opportunities-search-actions{align-items:stretch;flex-direction:column;margin-bottom:20px}
  .opportunities-search-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .opportunities-search-buttons .apm-inline-action{width:100%;min-width:0;white-space:normal;text-align:center}
  .opportunities-filter-status{font-size:13px}
  .opportunities-filter-status{text-align:left}
  .opportunities-results-summary{align-items:flex-start;flex-direction:column;gap:4px}
  .opportunities-navigation-row{gap:12px;margin-bottom:20px}
  .opportunities-status-scroller{width:calc(100vw - 32px);margin-right:-16px;padding-right:16px}
  .opportunities-view-toggle{align-self:flex-start}
  .opportunities-filter-panel .opportunities-filters{grid-template-columns:1fr}
  .opportunities-checks{display:grid;grid-template-columns:1fr}
  .opportunities-filter-actions>*{width:100%;min-height:44px}
  .opportunity-row{padding:13px;gap:12px}
  .opportunity-row h2{font-size:19px;overflow-wrap:anywhere}
  .opportunity-proposal-summary{
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
  }
  .opportunity-meta,.opportunity-contacts{gap:6px}
  .opportunity-meta span,.opportunity-contacts span{border-radius:10px;line-height:1.25}
  .opportunity-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
  .opportunity-row-actions form,.opportunity-row-actions a{min-width:0}
  .opportunity-row-actions .status-change-form{grid-column:1/-1}
  .opportunity-row-actions a,.opportunity-row-actions button{min-height:44px;width:100%;display:inline-flex;align-items:center;justify-content:center}
  .opportunity-detail-drawer{height:100dvh;padding:12px;gap:12px}
  .opportunity-drawer-header{position:sticky;top:-12px;z-index:2;background:#fffdf8;padding:12px 0;border-bottom:1px solid #eadfce}
  .opportunity-drawer-header h2{font-size:21px;overflow-wrap:anywhere}
  .drawer-close-button{min-height:44px}
  .drawer-section{padding:13px}
  .drawer-primary-link,.drawer-source-links a,.drawer-action-grid a,.drawer-action-grid button,.drawer-note-form button,.contact-copy-actions button,.copy-contact-summary{min-height:44px}
  .drawer-nav-buttons{position:sticky;bottom:-12px;background:#fffdf8;padding:8px 0}
  .expanded-map,.large-map{height:65dvh;min-height:340px}
  .apm-leaflet-map{border-radius:14px}
  .map-empty.large{min-height:360px}
  .postcode-modal{padding:8px;align-items:end}
  .postcode-modal-panel{width:100%;max-height:calc(100dvh - 16px);border-radius:8px;padding:16px}
  .postcode-modal-panel h2{font-size:24px;padding-right:42px}
  .postcode-modal-actions{display:grid}
  .postcode-modal-actions button{width:100%}
  .search-area-form,.search-area-preview,.large-map-panel{padding:15px;border-radius:18px}
  .search-area-map{height:280px}
  .lead-detail-shell{padding:18px 0 100px}
  .lead-detail-top{display:grid;gap:8px}
  .lead-detail-main h1{font-size:30px}
  .action-station-launcher{bottom:12px;width:min(320px,calc(100vw - 28px));min-height:52px;padding:0 20px}
  .action-station-modal{padding:8px;align-items:stretch}
  .action-station-panel{
    width:100%;max-height:calc(100dvh - 16px);
    border-radius:8px;padding:12px;
  }
  .action-station-header{top:-12px;margin:-12px -12px 0;padding:12px}
  .action-station-header h2{font-size:22px}
  .action-station-icon-close{width:38px;height:38px}
  .action-station-footer{bottom:-12px;margin:0 -12px -12px;padding:12px}
  .action-station-close{width:100%}
  .document-list li{display:grid;align-items:start}
  .apm-card-actions>*{width:100%}
  .apm-card-actions form button{width:100%}
  .apm-card-actions a,.apm-card-actions button{min-height:44px}
  .apm-ranked-side{display:grid;align-items:stretch}
  .apm-ranked-side em,.apm-ranked-side .apm-row-action{width:100%;max-width:none}
  .landing-nav{align-items:flex-start;flex-direction:column}
  .landing-brand img{width:min(270px,72vw)}
  .landing-actions a,.landing-nav nav,.landing-nav nav a{width:100%}
  .landing-nav nav{display:grid;grid-template-columns:1fr 1fr}
  .setup-product-header{align-items:flex-start;display:grid}
  .setup-product-header p{text-align:left}
}
@media(max-width:420px){
  .opportunities-search-buttons{grid-template-columns:1fr}
}

.opportunity-setup-body{
  min-height:100vh;background:#f4efe6;color:#1f271f;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
.opportunity-setup{width:min(1280px,94vw);margin:0 auto;padding:28px 0 52px}
.setup-product-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:32px}
.setup-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#1f271f}
.setup-brand span{width:48px;height:48px;border-radius:16px;background:#4f644d;color:#fff;display:grid;place-items:center;font-weight:950}
.setup-brand-logo{display:block;width:min(245px,50vw);height:auto;border-radius:12px;background:#fff}
.setup-brand strong{font-size:23px}
.setup-product-header p{margin:0 0 4px;color:#6c7465;font-weight:800;text-align:right}
.setup-product-header a{color:#4f644d;font-weight:850;text-decoration:none}
.setup-intro{max-width:780px;margin-bottom:22px}
.setup-eyebrow{margin:0 0 8px;color:#b99a5b;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.09em}
.setup-intro h1{margin:0;font-size:46px;line-height:1.03;letter-spacing:0}
.setup-intro p:last-child{font-size:18px;line-height:1.55;color:#6c7465;font-weight:650}
.setup-progress{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.setup-progress li{display:flex;align-items:center;gap:10px;background:#fffdf8;border:1px solid #ded5c5;border-radius:18px;padding:13px 15px;font-weight:900;color:#6c7465}
.setup-progress li span{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:#eee5d4;color:#4f644d}
.setup-progress li.active{background:#4f644d;color:#fff;border-color:#4f644d}
.setup-progress li.active span{background:#f4efe6;color:#4f644d}
.setup-wizard-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}
.setup-wizard-single{display:block;max-width:980px;margin:0 auto}
.setup-main-flow{display:grid;gap:18px}
.setup-card,.setup-preview{
  background:#fffdf8;border:1px solid #ded5c5;border-radius:26px;box-shadow:0 18px 48px rgba(48,55,39,.12);padding:22px;
}
.setup-step-panel{display:none}
.setup-step-panel.active{display:block}
.setup-step-panel .setup-card-heading h1{margin:0 0 8px;font-size:32px;line-height:1.12;letter-spacing:0;color:#1f271f}
.setup-welcome-heading{max-width:760px}
.setup-welcome-heading .setup-kicker{display:inline-flex;margin:0 0 14px;border-radius:999px;background:#edf4ea;color:#4f644d;padding:7px 11px;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.setup-welcome-heading h1{font-size:38px!important;margin-bottom:4px!important}
.setup-welcome-heading h2{margin:0 0 12px;font-size:27px;line-height:1.14;color:#1f271f}
.setup-card-heading span{display:inline-flex;border-radius:999px;background:#edf4ea;color:#4f644d;padding:6px 10px;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.setup-card-heading h2{margin:12px 0 6px;font-size:27px}
.setup-card-heading p{margin:0 0 18px;color:#6c7465;font-weight:650;line-height:1.5}
.large-field,.radius-grid label,.details-grid label,.note-form label{display:grid;gap:8px;color:#4c5549;font-weight:850}
.large-field input,.radius-grid input,.radius-grid select,.details-grid input,.note-form input,.note-form select,.note-form textarea{
  min-height:48px;border:1px solid #ded5c5;border-radius:15px;background:#fff;padding:10px 13px;font:inherit;color:#1f271f;
}
.large-field small{color:#6c7465;font-size:12px;font-weight:750}
.starter-area-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.setup-welcome-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}
.setup-welcome-list article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;min-height:116px;border:1px solid #ded5c5;background:#fbf7ef;border-radius:16px;padding:16px;color:#4f644d}
.setup-welcome-list article>span{width:34px;height:34px;border-radius:999px;background:#4f644d;color:#fff;display:grid;place-items:center;font-size:14px;font-weight:950;line-height:1}
.setup-welcome-list strong{display:block;color:#1f271f;font-size:16px;line-height:1.2;margin:1px 0 7px}
.setup-welcome-list p{margin:0;color:#6c7465;font-weight:700;line-height:1.4}
.radius-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.setup-distance-note{margin-top:16px;border:1px solid #ded5c5;background:#fbf7ef;border-radius:16px;padding:16px;color:#4c5549}
.setup-distance-note strong{display:block;color:#1f271f;margin-bottom:6px}
.setup-distance-note p{margin:0;color:#6c7465;font-weight:700;line-height:1.45}
.filter-card-group{display:grid;gap:14px}
.filter-card-group article{background:#fbf7ef;border:1px solid #eadfce;border-radius:20px;padding:16px}
.filter-card-group h3{margin:0 0 12px;font-size:16px;color:#1f271f}
.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.choice-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}
.choice-grid label{display:flex;align-items:center;gap:8px;border:1px solid #ded5c5;background:#fffdf8;border-radius:15px;padding:10px;color:#4c5549;font-weight:850;min-height:46px;min-width:0;overflow:hidden}
.choice-grid label span{min-width:0;overflow-wrap:anywhere;line-height:1.15}
.setup-choice-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}
.choice-grid input{accent-color:#4f644d}
.notification-options{border:0;margin:0;padding:0;display:grid;gap:10px}
.notification-options legend{font-weight:900;color:#1f271f;margin-bottom:8px}
.notification-options label,.setup-checkbox{display:flex;align-items:center;gap:10px;border:1px solid #ded5c5;background:#fffdf8;border-radius:14px;padding:12px;color:#4c5549;font-weight:850}
.notification-options input,.setup-checkbox input{accent-color:#4f644d}
.setup-email-option{margin-top:22px;border-top:1px solid #eadfce;padding-top:18px}
.setup-email-option h2{margin:0 0 5px;font-size:21px;color:#1f271f}
.setup-email-option p{margin:0 0 12px;color:#6c7465;font-weight:700;line-height:1.4}
.setup-email-option .setup-checkbox{background:#fbf7ef}
.setup-keyword-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.setup-heritage-options{margin-top:12px}
.setup-contact-section{margin-top:18px;border-top:1px solid #eadfce;padding-top:18px}
.setup-card-heading.compact h2{margin:0 0 6px;font-size:24px;color:#1f271f}
.setup-card-heading.compact p{margin-bottom:14px}
.setup-contact-grid{display:grid;gap:12px}
.setup-contact-row{display:grid;grid-template-columns:1fr 1fr 160px 1.2fr;gap:10px;border:1px solid #eadfce;background:#fbf7ef;border-radius:16px;padding:12px}
.setup-contact-row label{display:grid;gap:7px;color:#4c5549;font-weight:850}
.setup-contact-row input,.setup-contact-row select{min-height:44px;border:1px solid #ded5c5;border-radius:12px;background:#fff;padding:9px 11px;font:inherit;color:#1f271f;min-width:0}
.setup-add-contact{margin-top:12px}
.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.details-grid .wide{grid-column:1/-1}
.filter-note{margin:10px 0 0;color:#6c7465;font-weight:650}
.ready-card{display:flex;align-items:center;justify-content:space-between;gap:18px}
.setup-actions{display:flex;gap:10px;flex-wrap:wrap}
.setup-actions button{min-height:46px;border:0;border-radius:15px;background:#4f644d;color:#fff;font-weight:900;padding:0 18px}
.setup-actions button.secondary{background:#fffdf8;color:#4f644d;border:1px solid #ded5c5}
.setup-welcome-actions{display:grid;justify-items:start;gap:10px;margin-top:4px}
.setup-actions .setup-primary-cta{min-width:min(100%,320px);min-height:54px;font-size:16px;box-shadow:0 14px 28px rgba(79,100,77,.22)}
.setup-welcome-actions p{margin:0;color:#7b806f;font-weight:700}
.setup-preview{position:sticky;top:22px;display:grid;gap:16px}
.preview-count{background:#4f644d;color:#fff;border-radius:22px;padding:22px}
.preview-count span{display:block;font-size:54px;line-height:1;font-weight:950}
.preview-count p{margin:8px 0 0;color:#efe9dc;font-weight:800}
.preview-leads{display:grid;gap:12px}
.preview-leads article{background:#fbf7ef;border:1px solid #eadfce;border-radius:20px;padding:15px}
.preview-leads strong{display:block;font-size:16px;line-height:1.25;margin-bottom:7px}
.preview-leads p{margin:0 0 10px;color:#4c5549;line-height:1.45;font-weight:650}
.preview-leads dl{display:grid;gap:7px;margin:0}
.preview-leads div{display:grid;grid-template-columns:95px 1fr;gap:8px}
.preview-leads dt{color:#6c7465;font-size:12px;font-weight:900;text-transform:uppercase}
.preview-leads dd{margin:0;font-weight:780}

.lead-detail-shell{width:min(1180px,94vw);margin:0 auto;padding:28px 0 104px}
.lead-detail-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.lead-detail-top a{color:#4f644d;text-decoration:none;font-weight:950;font-size:22px}
.lead-detail-top span{color:#6c7465;font-weight:850}
.back-dashboard-button{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;padding:11px 16px;border:1px solid #4f644d;border-radius:999px;background:#4f644d;color:#fff;text-decoration:none;font-weight:900;box-shadow:0 10px 24px rgba(79,100,77,.18);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.back-dashboard-button:hover{background:#415640;box-shadow:0 14px 28px rgba(79,100,77,.24);transform:translateY(-1px)}
.lead-detail-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
.lead-detail-main,.lead-detail-actions{display:grid;gap:16px}
.lead-detail-main{width:min(940px,100%);margin:0 auto}
.detail-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.lead-detail-main h1{margin:0;font-size:42px;line-height:1.08;letter-spacing:0}
.lead-detail-subtitle{margin:10px 0 16px;color:#4c5549;font-size:19px;font-weight:760;line-height:1.45}
.detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.detail-facts.two{grid-template-columns:1fr 1fr}
.detail-facts div,.detail-panel{
  background:#fffdf8;border:1px solid #ded5c5;border-radius:22px;box-shadow:0 12px 34px rgba(48,55,39,.09);padding:16px;
}
.detail-facts small{display:block;color:#6c7465;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}
.detail-facts strong{display:block;overflow-wrap:anywhere}
.detail-panel h2{margin:0 0 10px;font-size:20px}
.detail-panel p{margin:0;color:#4c5549;line-height:1.55;font-weight:650}
.timeline-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.timeline-list.single{grid-template-columns:1fr}
.timeline-list div{border:1px solid #eadfce;border-radius:14px;padding:11px 12px;background:#fffaf0}
.timeline-list dt{color:#6c7465;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.timeline-list dd{margin:4px 0 0;color:#303727;font-weight:850;overflow-wrap:anywhere}
.timeline-list dd small{color:#6c7465;font-weight:800}
.lead-detail-map{min-height:320px;border:1px solid #d8c9b4;border-radius:18px;overflow:hidden;background:#eef2e9}
.lead-detail-map.empty{display:grid;place-items:center;text-align:center;padding:18px;background:#fffaf0;color:#4c5549}
.lead-detail-map.empty strong{display:block;color:#303727;margin-bottom:6px}
.lead-detail-map.empty p{max-width:340px}
.related-applications{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.related-applications li{border:1px solid #eadfce;border-radius:16px;background:#fffaf0;padding:13px;display:grid;gap:7px}
.related-applications li>div{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.related-applications strong{color:#303727}
.related-applications span{border-radius:999px;background:#edf4ea;color:var(--apm-green-dark);padding:5px 9px;font-size:11px;font-weight:950}
.related-applications p{margin:0;color:#4c5549;font-weight:650}
.related-applications small{color:#6c7465;font-weight:850}
.related-applications a{color:#4f644d;font-weight:900;text-decoration:none}
.contact-blocks{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contact-blocks section{border:1px solid #eadfce;border-radius:16px;padding:14px;background:#fffaf0}
.contact-blocks h3{margin:0 0 10px;font-size:15px}
.contact-blocks dl{display:grid;gap:8px;margin:0}
.contact-blocks div{display:grid;grid-template-columns:92px 1fr;gap:10px}
.contact-blocks dt{color:#6c7465;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.contact-blocks dd{margin:0;color:#303727;font-weight:760;overflow-wrap:anywhere}
.contact-blocks a{color:#4f644d;font-weight:900;text-decoration:none}
.document-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.document-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #eadfce;padding-bottom:10px}
.document-list li:last-child{border-bottom:0;padding-bottom:0}
.document-list a{color:#4f644d;font-weight:850;text-decoration:none}
.document-list small{color:#6c7465;font-weight:800}
.document-quick-links{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.document-quick-links a{border:1px solid #d8c9b4;border-radius:999px;padding:7px 10px;background:#fffaf0;color:#4f644d;text-decoration:none;font-size:12px;font-weight:900}
.action-station-launcher{
  position:fixed;left:50%;bottom:18px;z-index:46;transform:translateX(-50%);
  min-height:56px;border:1px solid #d4a644;border-radius:999px;background:#173d2f;color:#fff;
  padding:0 28px;font:inherit;font-size:16px;font-weight:950;letter-spacing:0;
  box-shadow:0 18px 44px rgba(23,61,47,.32);cursor:pointer;
}
.action-station-launcher:hover,.action-station-launcher:focus-visible{outline:0;box-shadow:0 22px 52px rgba(23,61,47,.42);background:#123428}
.action-station-modal[hidden]{display:none}
.action-station-modal{
  position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;
}
.action-station-backdrop{position:absolute;inset:0;background:rgba(18,32,26,.48);backdrop-filter:blur(2px)}
.action-station-panel{
  position:relative;z-index:1;width:min(920px,calc(100vw - 48px));max-height:min(90dvh,900px);
  overflow:auto;overscroll-behavior:contain;background:#fffdf8;border:1px solid #ded5c5;border-radius:18px;padding:18px;
  box-shadow:0 24px 70px rgba(18,32,26,.32);
}
.action-station-header{
  position:sticky;top:-18px;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  margin:-18px -18px 0;padding:18px;border-bottom:1px solid #eadfce;background:rgba(255,253,248,.96);backdrop-filter:blur(8px);
}
.action-station-header h2{margin:0;color:#303727;font-size:24px;line-height:1.1}
.action-station-header .apm-kicker{margin:0 0 4px}
.action-station-panel .detail-panel{box-shadow:none}
.action-station-feedback{display:grid;gap:10px}
.action-station-icon-close{
  display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border:1px solid #d8c9b4;border-radius:999px;
  background:#fffaf0;color:#4f644d;padding:0;font:inherit;font-size:16px;font-weight:950;line-height:1;cursor:pointer;
}
.action-station-footer{
  position:sticky;bottom:-18px;z-index:2;display:flex;justify-content:flex-end;margin:0 -18px -18px;
  padding:14px 18px;border-top:1px solid #eadfce;background:rgba(255,253,248,.96);backdrop-filter:blur(8px);
}
.action-station-close{
  min-height:44px;border:1px solid #d8c9b4;border-radius:15px;background:#fffaf0;color:#4f644d;padding:9px 16px;
  font:inherit;font-size:14px;font-weight:950;cursor:pointer;
}
.action-station-icon-close:hover,.action-station-icon-close:focus-visible,.action-station-close:hover,.action-station-close:focus-visible{outline:0;border-color:#4f644d}
.action-station-modal-open,.action-station-open{overflow:hidden}
.location-correction-open{margin-top:12px;border:1px solid #4f644d;background:#fff;color:#4f644d}
.location-correction-modal[hidden]{display:none}
.location-correction-modal{position:fixed;inset:0;z-index:1250;display:grid;place-items:center;padding:24px}
.location-correction-backdrop{position:absolute;inset:0;background:rgba(18,32,26,.48);backdrop-filter:blur(2px)}
.location-correction-panel{
  position:relative;z-index:1;width:min(760px,calc(100vw - 48px));max-height:min(90dvh,860px);overflow:auto;
  background:#fffdf8;border:1px solid #ded5c5;border-radius:18px;padding:18px;box-shadow:0 24px 70px rgba(18,32,26,.32);
}
.location-correction-panel .timeline-list.compact{grid-template-columns:1fr 1fr;margin:14px 0}
.location-correction-map{min-height:280px;margin-bottom:14px}
.location-correction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.location-correction-grid input{width:100%}
.location-correction-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.location-correction-remove{margin-top:12px;border-top:1px solid #eadfce;padding-top:12px}
.lead-stage-pill{display:inline-flex;margin:4px 0 12px;border:1px solid #d8c9b4;border-radius:999px;background:#fffaf0;color:#303727;padding:7px 11px;font-size:12px;font-weight:900}
.detail-action-stack{display:grid;gap:10px}
.detail-action-stack label{display:grid;gap:6px;color:#4c5549;font-size:12px;font-weight:900}
.detail-action-stack select{width:100%;min-height:42px;border:1px solid #d8c9b4;border-radius:13px;background:#fffdf8;color:#303727;font:inherit;font-weight:800;padding:8px 10px}
.detail-action-stack a,.detail-action-stack button,.note-form button{
  width:100%;min-height:44px;border:1px solid #4f644d;border-radius:15px;background:#4f644d;color:#fff;
  text-decoration:none;font:inherit;font-weight:900;display:grid;place-items:center;padding:9px 12px;
}
.detail-action-stack form{margin:0}
.note-form{display:grid;gap:12px}
.note-form textarea{resize:vertical}
.saved-notes{display:grid;gap:10px;margin-top:16px}
.saved-notes h3{margin:0;font-size:16px}
.saved-note-card{border:1px solid #eadfce;border-radius:16px;background:#fffaf0;padding:13px;display:grid;gap:8px}
.saved-note-card.overdue{border-color:#c05621;background:#fff7ed}
.saved-note-meta{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;color:#6c7465;font-size:12px;font-weight:850}
.saved-note-meta strong{color:#303727}
.saved-note-card p{margin:0;color:#303727;font-weight:700;line-height:1.5;white-space:pre-wrap}
.saved-note-card .follow-up{color:#4f644d;font-weight:900}
.saved-note-card .follow-up.overdue{color:#c05621}
.saved-note-card form{margin:0}
.text-button{border:0;background:transparent;color:#4f644d;font:inherit;font-size:12px;font-weight:900;text-decoration:underline;padding:0;justify-self:start;cursor:pointer}

@media(max-width:980px){
  .setup-wizard-grid,.lead-detail-layout{grid-template-columns:1fr}
  .setup-preview{position:static}
  .starter-area-grid{grid-template-columns:1fr}
  .setup-welcome-list{grid-template-columns:1fr}
  .choice-grid,.choice-grid.compact,.details-grid,.detail-facts,.detail-facts.two,.contact-blocks,.timeline-list,.setup-keyword-grid,.setup-contact-row{grid-template-columns:1fr}
  .ready-card{display:grid}
}

.billing-shell{min-height:100vh;display:grid;place-items:center;background:#f4efe6;padding:28px}
.billing-card{width:min(560px,94vw);background:#fffdf8;border:1px solid #ded5c5;border-radius:26px;box-shadow:0 18px 48px rgba(48,55,39,.12);padding:28px}
.billing-card.wide{width:min(880px,94vw)}
.billing-card h1{margin:0 0 8px;font-size:38px;letter-spacing:0}
.billing-card p{color:#4c5549;font-weight:650;line-height:1.55}
.billing-price{font-size:28px;font-weight:950;color:#4f644d!important;margin:0 0 16px}
.billing-secondary{margin-top:12px}
.billing-card button:disabled{opacity:.55;cursor:not-allowed}
.membership-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.membership-options.single{grid-template-columns:minmax(0,1fr)}
.membership-options article{background:#fbf7ef;border:1px solid #eadfce;border-radius:20px;padding:18px;display:grid;gap:10px}
.membership-options article.highlight{border-color:#4f644d;box-shadow:0 12px 28px rgba(79,100,77,.12)}
.membership-options span{color:#b99a5b;font-weight:950;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.membership-options h2{margin:0;color:#2f3d2f;font-size:30px}
.membership-options strong{color:#4f644d}
.membership-options form{margin:0}
.membership-options button{width:100%}
.membership-benefits{display:grid;gap:9px;margin:8px 0 12px;padding:0;list-style:none;color:#4c5549;font-weight:750;line-height:1.35}
.membership-benefits li{position:relative;padding-left:20px}
.membership-benefits li:before{content:"";position:absolute;left:0;top:.52em;width:8px;height:8px;border-radius:999px;background:#4f644d}
.membership-price-line{display:grid;gap:2px;border-top:1px solid #eadfce;border-bottom:1px solid #eadfce;padding:10px 0}
.membership-price-line strong{font-size:20px;color:#2f3d2f}
.membership-price-line small{color:#6c7465;font-weight:800}
.membership-card-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:4px}
.membership-card-actions form{display:grid;gap:10px}
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.account-panel{background:var(--apm-card);border:1px solid var(--apm-line);border-radius:26px;box-shadow:var(--apm-shadow);padding:20px}
.account-panel h2{margin:0 0 14px;color:var(--apm-green-dark)}
.account-panel form{display:grid;gap:12px}
.account-panel label{display:grid;gap:7px;color:#4c5549;font-weight:850}
.account-panel input,.account-panel textarea,.account-panel select{
  width:100%;min-height:46px;border:1px solid #ded5c5;border-radius:15px;background:#fff;padding:10px 13px;font:inherit;color:#1f271f;
}
.account-panel .inline-check{display:flex;align-items:center;gap:10px}
.account-panel .inline-check input{width:auto;min-height:auto}
.account-panel textarea{resize:vertical}
.account-facts{display:grid;gap:10px;margin:0 0 14px}
.account-facts div{background:#fbf7ef;border:1px solid #eadfce;border-radius:16px;padding:11px}
.account-facts dt{font-size:12px;text-transform:uppercase;color:var(--apm-muted);font-weight:900}
.account-facts dd{margin:4px 0 0;color:var(--apm-ink);font-weight:850}
.account-actions{display:flex;gap:10px;flex-wrap:wrap}
.showcase-workspace{gap:20px}
.showcase-map-panel{
  display:grid;grid-template-columns:minmax(260px,.42fr) minmax(320px,1fr);gap:18px;align-items:stretch;
  background:var(--apm-card);border:1px solid var(--apm-line);border-radius:22px;box-shadow:var(--apm-shadow);padding:18px;
}
.showcase-map-panel h2{margin:6px 0;font-size:24px}
.showcase-map-panel p{margin:0;color:var(--apm-muted);font-weight:700;line-height:1.5}
.showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.showcase-card{
  background:var(--apm-card);border:1px solid var(--apm-line);border-radius:18px;box-shadow:var(--apm-shadow);padding:18px;display:grid;gap:12px;
}
.showcase-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}
.showcase-card h2{margin:0;font-size:23px;line-height:1.18;letter-spacing:0;overflow-wrap:anywhere}
.showcase-context{display:flex;gap:8px;flex-wrap:wrap}
.showcase-context span{
  border:1px solid #eadfce;background:#fffaf0;color:#4c5549;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;
}
.showcase-actions{display:flex;gap:10px;flex-wrap:wrap}
.showcase-actions a{
  min-height:42px;border:1px solid #4f644d;border-radius:14px;background:#4f644d;color:#fff;text-decoration:none;font-weight:900;padding:9px 12px;display:inline-flex;align-items:center;justify-content:center;
}
.showcase-actions a+ a{background:#fffdf8;color:#4f644d}
@media(max-width:900px){
  .membership-options,.account-grid,.showcase-map-panel,.showcase-grid{grid-template-columns:1fr}
}

/* Shared authenticated Council Scout header */
.authenticated-header{
  display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:66px;
  margin:0 0 22px;padding:0 0 12px;border-bottom:1px solid var(--apm-line);
}
.authenticated-header-brand{display:flex;align-items:center;gap:14px;min-width:0;color:var(--apm-green-dark);text-decoration:none}
.authenticated-header-brand img{display:block;width:172px;height:auto;flex:0 1 auto}
.authenticated-header-brand span{font-size:13px;font-weight:850;letter-spacing:.02em;white-space:nowrap;color:var(--apm-muted)}
.authenticated-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.authenticated-header-user{min-width:0;max-width:min(360px,40vw)}
.authenticated-header-logout{
  display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;
  border:1px solid var(--apm-line);border-radius:10px;background:var(--apm-card);color:var(--apm-green-dark);
  text-decoration:none;font-size:14px;font-weight:850;white-space:nowrap;
}
.authenticated-header-logout:hover,.authenticated-header-logout:focus-visible{border-color:#b9ad9a;background:#fffaf0;color:var(--apm-green)}

/* Compact lead detail page */
.lead-detail-shell{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:16px 0 96px}
.lead-detail-layout{display:block}
.lead-detail-main{display:grid;gap:18px;width:100%;margin:0}
.lead-back-link{
  display:inline-flex;align-items:center;margin:0 0 18px;color:var(--apm-green-dark);
  text-decoration:none;font-size:14px;font-weight:850;
}
.lead-back-link:hover,.lead-back-link:focus-visible{text-decoration:underline}
.lead-detail-intro{max-width:980px}
.lead-detail-main h1{margin:0;color:var(--apm-ink);font-size:clamp(30px,4vw,42px);line-height:1.1;letter-spacing:-.02em;overflow-wrap:anywhere}
.partial-location-label{display:inline-block;margin-top:7px;color:var(--apm-muted);font-weight:800}
.lead-detail-subtitle{max-width:920px;margin:10px 0 8px;color:#4c5549;font-size:18px;font-weight:680;line-height:1.5}
.lead-source-notice{margin:0;color:var(--apm-muted);font-size:12px;font-weight:680;line-height:1.5}
.lead-source-notice a{color:var(--apm-green);font-weight:900;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}

.application-overview{
  overflow:hidden;border:1px solid var(--apm-line);border-radius:12px;background:var(--apm-line);
  box-shadow:0 6px 18px rgba(48,55,39,.05);
}
.application-overview>h2{margin:0;padding:13px 15px;background:var(--apm-card);color:var(--apm-green-dark);font-size:18px;line-height:1.2}
.application-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0}
.overview-cell{min-width:0;padding:12px 14px;background:#fffdf8}
.overview-cell dt{
  margin:0 0 5px;color:var(--apm-muted);font-size:10px;font-weight:950;line-height:1.3;
  text-transform:uppercase;letter-spacing:.07em;
}
.overview-cell dd{margin:0;color:var(--apm-ink);font-size:14px;font-weight:820;line-height:1.4;overflow-wrap:anywhere}
.overview-status,.context-badge{
  display:inline-flex;width:max-content;max-width:100%;align-items:center;border-radius:999px;padding:4px 8px;
  background:#edf4ea;border:1px solid #d5e2d0;color:var(--apm-green-dark);font-size:12px;font-weight:900;line-height:1.3;
}
.compact-timeline{display:grid;gap:4px}
.compact-timeline>span{display:grid;grid-template-columns:66px minmax(0,1fr);gap:6px;align-items:baseline}
.compact-timeline b{color:var(--apm-muted);font-size:11px}
.compact-timeline time{font-size:12px}
.overview-context dd{display:grid;gap:6px}
.context-item{display:grid;grid-template-columns:96px minmax(0,1fr);gap:6px;align-items:start}
.context-item>b{color:var(--apm-muted);font-size:11px;line-height:1.4}
.context-badge{border-color:#e1d8c9;background:#f5efe5;color:#596052;white-space:normal}
.context-confirmed{border-color:#c8dbc3;background:#e8f2e5;color:#274e31}
.context-possible{border-color:#e0cfa6;background:#faf1d8;color:#755d20}
.overview-context small{color:var(--apm-muted);font-size:10px;font-weight:680;line-height:1.35}

.lead-location{display:grid;gap:8px}
.lead-location-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.lead-location-heading h2{margin:0;color:var(--apm-green-dark);font-size:18px}
.lead-detail-map{width:100%;height:360px;min-height:360px;border:1px solid var(--apm-line);border-radius:12px;overflow:hidden;background:#eef2e9}
.lead-detail-map.empty{display:grid;place-items:center;text-align:center;height:240px;min-height:240px;padding:18px;background:#fffaf0;color:#4c5549}
.lead-detail-map.empty strong{display:block;color:var(--apm-ink);margin-bottom:5px}
.lead-detail-map.empty p{margin:0}
.map-location-note{margin:0;color:var(--apm-muted);font-size:12px;font-weight:700}
.location-correction-open{
  min-height:34px;margin:0;padding:6px 10px;border:1px solid var(--apm-line);border-radius:9px;
  background:var(--apm-card);color:var(--apm-green-dark);font:inherit;font-size:12px;font-weight:850;
}
.location-correction-open:hover,.location-correction-open:focus-visible{background:#f5efe5;border-color:#b9ad9a;color:var(--apm-green-dark)}

.lead-secondary-information{display:grid;gap:8px}
.compact-secondary-section{border:1px solid var(--apm-line);border-radius:10px;background:var(--apm-card)}
.compact-secondary-section>summary{padding:11px 13px;cursor:pointer;color:var(--apm-green-dark);font-size:14px;font-weight:900}
.compact-secondary-section>summary span{color:var(--apm-muted);font-size:12px}
.compact-secondary-section .related-applications{padding:0 12px 12px}
.known-contact-matches{display:grid;gap:8px;padding:0 12px 12px}
.known-contact-matches article{display:grid;gap:3px;padding:10px;border:1px solid #eadfce;border-radius:9px;background:#fffaf0}
.known-contact-matches span,.known-contact-matches small{color:var(--apm-muted);font-size:12px;font-weight:750}

.action-station-launcher{
  position:fixed;right:max(20px,calc((100vw - 1180px)/2));bottom:20px;left:auto;z-index:46;transform:none;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;
  border:1px solid #d4a644;border-radius:999px;background:var(--apm-green-deep);color:#fff;
  font:inherit;font-size:14px;font-weight:900;box-shadow:0 12px 28px rgba(23,61,47,.25);cursor:pointer;
}
.action-station-launcher>span:first-child{color:#e5c36d;font-size:16px}
.action-station-launcher:hover,.action-station-launcher:focus-visible{outline:3px solid rgba(185,154,91,.28);outline-offset:2px;background:#0f2018;box-shadow:0 14px 30px rgba(23,61,47,.3)}
.action-station-modal[hidden]{display:none}
.action-station-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px}
.action-station-backdrop{position:absolute;inset:0;background:rgba(18,32,26,.5);backdrop-filter:blur(2px)}
.action-station-panel{
  position:relative;z-index:1;display:block;width:min(520px,calc(100vw - 40px));max-height:min(88dvh,820px);
  overflow:auto;overscroll-behavior:contain;background:#fffdf8;border:1px solid var(--apm-line);border-radius:14px;padding:0 16px;
  box-shadow:0 22px 60px rgba(18,32,26,.3);
}
.action-station-header{
  position:sticky;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  margin:0 -16px;padding:15px 16px;border-bottom:1px solid var(--apm-line);background:rgba(255,253,248,.97);backdrop-filter:blur(8px);
}
.action-station-header h2{margin:0;color:var(--apm-ink);font-size:23px;line-height:1.1}
.action-station-header .apm-kicker{margin:0 0 3px;font-size:10px}
.action-station-icon-close{
  display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;min-height:38px;padding:0;
  border:1px solid var(--apm-line);border-radius:999px;background:#fffaf0;color:var(--apm-green-dark);
  font:inherit;font-size:22px;font-weight:650;line-height:1;cursor:pointer;
}
.action-station-icon-close:hover,.action-station-icon-close:focus-visible{outline:2px solid #d5e2d0;background:#edf4ea;color:var(--apm-green-dark)}
.action-station-feedback{padding-top:12px}
.action-station-feedback .apm-notice{margin:0}
.action-station-section{padding:15px 0;border-bottom:1px solid var(--apm-line)}
.action-station-section h3{margin:0;color:var(--apm-green-dark);font-size:15px}
.action-station-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.action-station-section-heading>span{color:var(--apm-muted);font-size:12px;font-weight:850}
.overdue-text{color:#9a481f!important}
.action-station-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.action-station-form{display:grid;gap:9px}
.action-station-form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.action-station-form label,.action-station-inline-form label{
  display:grid;gap:4px;color:var(--apm-muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;
}
.action-station-form input,.action-station-form select,.action-station-form textarea,.action-station-inline-form select{
  width:100%;min-height:40px;border:1px solid #d8c9b4;border-radius:9px;background:#fff;color:var(--apm-ink);
  padding:8px 10px;font:inherit;font-size:14px;font-weight:720;text-transform:none;letter-spacing:0;
}
.action-station-form textarea{min-height:76px;resize:vertical}
.action-station-form>button,.action-station-inline-form>button{
  width:max-content;min-height:38px;padding:7px 13px;border:1px solid var(--apm-green);border-radius:9px;
  background:var(--apm-green);color:#fff;font:inherit;font-size:13px;font-weight:900;
}
.action-station-inline-form>button{min-width:82px}
.action-station-form>button:hover,.action-station-form>button:focus-visible,.action-station-inline-form>button:hover,.action-station-inline-form>button:focus-visible{background:var(--apm-green-dark)}
.saved-notes{display:grid;gap:8px;margin-top:12px}
.saved-note-card{border:1px solid #eadfce;border-radius:9px;background:#fffaf0;padding:10px;display:grid;gap:6px}
.saved-note-card.overdue{border-color:#d5a786;background:#fff7ed}
.saved-note-meta{display:flex;justify-content:space-between;gap:10px;color:var(--apm-muted);font-size:11px;font-weight:800}
.saved-note-card p{margin:0;color:var(--apm-ink);font-size:13px;font-weight:680;line-height:1.45;white-space:pre-wrap}
.saved-note-card .follow-up{color:var(--apm-green);font-size:11px;font-weight:900}
.saved-note-card .follow-up.overdue{color:#9a481f}
.note-edit-details summary,.report-issue-details summary{cursor:pointer;color:var(--apm-green);font-size:12px;font-weight:900}
.note-edit-details .action-station-form,.report-issue-details .action-station-form{margin-top:9px}
.text-button{min-height:auto;border:0;background:transparent;color:var(--apm-green);font:inherit;font-size:11px;font-weight:900;text-decoration:underline;padding:0;cursor:pointer}
.action-station-empty{margin:10px 0 0;color:var(--apm-muted);font-size:12px}
.action-station-secondary{border-bottom:0}
.action-station-secondary>h3{margin-bottom:10px}
.secondary-action-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.secondary-action-row form{margin:0}
.secondary-button,.danger-button{
  min-height:36px;padding:7px 10px;border:1px solid var(--apm-line);border-radius:9px;background:#fffaf0;
  color:var(--apm-green-dark);font:inherit;font-size:12px;font-weight:850;
}
.secondary-button:hover,.secondary-button:focus-visible{background:#edf4ea;color:var(--apm-green-dark)}
.danger-button{border-color:#e3c2b7;background:#fff6f2;color:#8e3b2d}
.danger-button:hover,.danger-button:focus-visible{background:#fbe7df;color:#743024}
.report-issue-details{margin-top:12px;padding-top:10px;border-top:1px dashed var(--apm-line)}
.action-station-footer{
  position:sticky;bottom:0;z-index:3;display:flex;justify-content:flex-end;margin:0 -16px;
  padding:11px 16px;border-top:1px solid var(--apm-line);background:rgba(255,253,248,.97);backdrop-filter:blur(8px);
}
.action-station-close{
  min-height:38px;padding:7px 14px;border:1px solid var(--apm-line);border-radius:9px;background:#fffaf0;
  color:var(--apm-green-dark);font:inherit;font-size:13px;font-weight:900;
}
.action-station-close:hover,.action-station-close:focus-visible{background:#edf4ea;color:var(--apm-green-dark)}
.action-station-modal-open,.action-station-open{overflow:hidden}

.location-correction-modal[hidden]{display:none}
.location-correction-modal{position:fixed;inset:0;z-index:1250;display:grid;place-items:center;padding:20px}
.location-correction-backdrop{position:absolute;inset:0;background:rgba(18,32,26,.5);backdrop-filter:blur(2px)}
.location-correction-panel{
  position:relative;z-index:1;width:min(700px,calc(100vw - 40px));max-height:min(90dvh,820px);overflow:auto;
  background:#fffdf8;border:1px solid var(--apm-line);border-radius:14px;padding:0 16px 16px;box-shadow:0 22px 60px rgba(18,32,26,.3);
}
.location-correction-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}
.location-correction-summary div{padding:9px;border:1px solid var(--apm-line);border-radius:9px;background:#fffaf0}
.location-correction-summary dt{color:var(--apm-muted);font-size:10px;font-weight:900;text-transform:uppercase}
.location-correction-summary dd{margin:3px 0 0;font-size:13px;font-weight:800}
.location-correction-map{height:280px;min-height:280px;margin-bottom:12px}
.location-correction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.location-correction-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.location-correction-remove{margin-top:12px;border-top:1px solid var(--apm-line);padding-top:10px}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:820px){
  .application-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lead-detail-map{height:330px;min-height:330px}
}

@media(max-width:620px){
  .authenticated-header{align-items:flex-start;flex-wrap:wrap;gap:10px;min-height:60px;margin-bottom:16px}
  .authenticated-header-brand{gap:7px}
  .authenticated-header-brand img{width:min(145px,46vw)}
  .authenticated-header-brand span{font-size:10px;white-space:normal}
  .authenticated-header-actions{width:100%;justify-content:space-between}
  .authenticated-header-user{width:auto;max-width:calc(100% - 88px);flex:1 1 auto}
  .authenticated-header-logout{min-height:38px;padding:7px 10px;font-size:13px}
  .lead-detail-shell{width:min(100% - 28px,1180px);padding-top:10px;padding-bottom:92px}
  .lead-back-link{margin-bottom:14px}
  .lead-detail-main{gap:14px}
  .lead-detail-main h1{font-size:30px}
  .lead-detail-subtitle{font-size:16px;margin-top:8px}
  .application-overview-grid{grid-template-columns:1fr}
  .overview-cell{padding:10px 12px}
  .lead-location-heading{align-items:flex-start}
  .lead-detail-map{height:280px;min-height:280px}
  .action-station-launcher{
    right:14px;bottom:max(12px,env(safe-area-inset-bottom));left:14px;width:auto;min-height:48px;padding:0 16px;
  }
  .action-station-modal{align-items:end;padding:8px}
  .action-station-panel{
    width:100%;max-height:calc(100dvh - 16px);border-radius:14px 14px 8px 8px;padding:0 12px;
  }
  .action-station-header{margin:0 -12px;padding:12px}
  .action-station-form-row{grid-template-columns:1fr}
  .action-station-form>button{width:100%;min-height:42px}
  .secondary-action-row{display:grid;grid-template-columns:1fr 1fr}
  .secondary-action-row form:last-child{grid-column:1/-1}
  .secondary-action-row button{width:100%}
  .action-station-footer{margin:0 -12px;padding:10px 12px}
  .action-station-close{width:100%;min-height:42px}
  .location-correction-modal{align-items:end;padding:8px}
  .location-correction-panel{width:100%;max-height:calc(100dvh - 16px);border-radius:14px 14px 8px 8px;padding:0 12px 12px}
  .location-correction-summary,.location-correction-grid{grid-template-columns:1fr}
  .location-correction-map{height:240px;min-height:240px}
}
