/* Big modals, outreach, AWR, timesheets, reports, branded CV, automations, sales leads, Companies House and CV quick add. */
/* ---------- Big modals ---------- */
.m-body{grid-auto-rows:max-content}
.modal.lg{width:min(760px,100%)}
.modal.xl{width:min(1180px,100%)}
/* ---------- Outreach ---------- */
.or-opts{display:flex;flex-wrap:wrap;gap:8px 18px}
#or-body{font-family:var(--f-body);line-height:1.5}
/* ---------- AWR ---------- */
.plc-top{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);margin-bottom:16px}
@media (min-width:1100px){.plc-top{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}}
.awr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px 16px;flex-wrap:wrap}
.awr-head h2{margin:0 0 2px;font-family:var(--f-display);font-size:17px;font-weight:700}
.awr-cell{display:inline-flex;align-items:center;gap:8px}
.awr-bar{width:56px;height:6px;border-radius:3px;background:var(--off-soft);overflow:hidden;display:inline-block}
.awr-bar i{display:block;height:100%;background:var(--off)}
.awr-bar.soon i{background:var(--warn)} .awr-bar.now i{background:var(--danger)} .awr-bar.applies i{background:var(--info)}
.awr-steps{display:grid;grid-template-columns:repeat(13,1fr);gap:4px}
.awr-step{height:10px;border-radius:3px;background:var(--off-soft)}
.awr-step.on{background:var(--brand)}
.awr-step.q{box-shadow:inset 0 0 0 1.5px var(--danger)}
.awr-step.eq{background:repeating-linear-gradient(45deg,var(--info-soft),var(--info-soft) 3px,var(--surface) 3px,var(--surface) 6px)}
.awr-step.eq.on{background:var(--info)}
.awr-pay{padding:10px 12px;border-radius:10px;background:var(--warn-soft);display:grid;gap:4px;font-size:13.5px}
.awr-pay p{margin:0}
.awr-pay.ok{background:var(--ok-soft)}
.awr-acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.awr-form{display:flex;gap:6px;align-items:center}
.awr-form input{width:150px}
/* ---------- Timesheets ---------- */
.ts-list{display:grid;gap:8px}
.ts-item{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:10px;font-family:var(--f-body);color:var(--ink)}
.ts-item:hover{background:var(--surface-2)}
.ts-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ts-item img{width:64px;height:84px;object-fit:cover;border-radius:6px;display:block}
.ts-meta{display:grid;gap:2px;font-size:13px;justify-items:start}
.ts-meta b{font-size:14px}
.ts-body{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.ts-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}}
.ts-photo{display:grid;gap:6px;justify-items:center}
.ts-zoom{all:unset;cursor:zoom-in;display:block;width:100%;border-radius:10px;overflow:hidden;background:#2E261F}
.ts-zoom img{display:block;width:100%;height:auto;transition:transform .2s}
.ts-photo.zoom .ts-zoom{cursor:zoom-out;overflow:auto;max-height:70vh}
.ts-photo.zoom .ts-zoom img{width:180%}
.ts-read{display:grid;gap:12px;min-width:0}
.ts-match{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;background:var(--ok-soft);font-size:13.5px}
.ts-match .fa{width:14px;height:14px;color:var(--ok);margin-top:3px}
.ts-match > span{display:grid;gap:1px}
.ts-wrap{overflow-x:auto}
.mini-tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.mini-tbl th{text-align:left;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:7px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
.mini-tbl td{padding:7px 8px;border-bottom:1px solid var(--line)}
.mini-tbl .r{text-align:right}
.mini-tbl tfoot td{font-weight:600;border-bottom:0;border-top:1px solid var(--line-strong)}
.mini-tbl .tbl-empty{text-align:center;color:var(--muted)}
.ts-tbl tr.flagged td{background:var(--warn-soft)}
.ts-hrs{width:76px;text-align:right;padding:4px 8px;min-height:30px}
.ts-checks{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:13.5px}
.ts-checks li{display:flex;gap:9px;align-items:flex-start}
.ts-checks li span{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700}
.ts-checks li.ok span{background:var(--ok-soft);color:var(--ok)} .ts-checks li.warn span{background:var(--warn-soft);color:var(--warn)} .ts-checks li.bad span{background:var(--danger-soft);color:var(--danger)}
.ts-sum{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13.5px;color:var(--muted)}
.ts-sum b{color:var(--ink)}
.wa-photo{all:unset;cursor:pointer;display:block;border-radius:8px;overflow:hidden;margin:-2px -4px 6px;max-width:220px}
.wa-photo img{display:block;width:100%;height:auto}
.bub .auto-tag{display:inline-flex;gap:4px;align-items:center;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:3px}
.bub .auto-tag .i{width:12px;height:12px}
/* ---------- Reports ---------- */
.rep-sched .tb-row{align-items:center}
.cf-grid.two-col{grid-template-columns:minmax(0,1fr)}
@media (min-width:1100px){.cf-grid.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}
.rep-notes{margin:0;padding-left:18px;display:grid;gap:8px;font-size:14px;line-height:1.5}
.rep-body{background:var(--surface-2)}
.rep-doc{background:#FFFFFF;color:#141414;border-radius:10px;overflow:hidden;box-shadow:var(--shadow);max-width:720px;margin:0 auto;width:100%}
.rep-band{background:#111111;color:#FFFFFF;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;flex-wrap:wrap}
.rep-band img{height:30px}
.rep-band div{display:grid;text-align:right}
.rep-band span{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#FFB84D}
.rep-band b{font-family:var(--f-display);font-size:16px;letter-spacing:.02em}
.rep-inner{padding:20px 22px;display:grid;gap:16px}
.rep-for h3{margin:2px 0;font-family:var(--f-display);font-size:24px;text-transform:uppercase;letter-spacing:.01em}
.rep-for .muted{color:#5D5D58;font-size:13px}
.rep-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.rep-kpis div{border:1px solid #E2E1DC;border-radius:8px;padding:10px 12px;display:grid}
.rep-kpis b{font-family:var(--f-mono);font-size:20px}
.rep-kpis span{font-size:12px;color:#5D5D58}
.rep-doc h4{margin:0 0 6px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9A5700;display:flex;gap:6px;align-items:center}
.rep-doc h4 .i{width:14px;height:14px}
.rep-doc p,.rep-doc li{font-size:13.5px;line-height:1.55;margin:0}
.rep-doc ul{margin:0;padding-left:18px;display:grid;gap:4px}
.rep-tbl{width:100%;border-collapse:collapse;font-size:13px}
.rep-tbl th{text-align:left;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#5D5D58;border-bottom:1px solid #E2E1DC;padding:6px 6px}
.rep-tbl td{padding:7px 6px;border-bottom:1px solid #EFEEE9}
.rep-tbl .r{text-align:right;font-family:var(--f-mono)}
.rep-foot{background:#F4F3EF;padding:12px 22px;font-size:12.5px;color:#3A3A36}
@media (max-width:560px){.rep-tbl th:nth-child(4),.rep-tbl td:nth-child(4),.rep-tbl th:nth-child(2),.rep-tbl td:nth-child(2){display:none}}
/* ---------- Branded CV ---------- */
.cvgen{display:grid;gap:18px;grid-template-columns:minmax(0,1fr);background:var(--surface-2)}
@media (min-width:980px){.cvgen{grid-template-columns:300px minmax(0,1fr);align-items:start}}
.cv-opts{display:grid;gap:12px;align-content:start}
.cv-checks{display:grid;gap:7px}
.cv-preview{position:relative;overflow:hidden;min-width:0}
.cv-scale{width:794px;transform-origin:top left}
.cv-sheet{width:794px;min-height:1123px;background:#FFFFFF;color:#141414;box-shadow:0 6px 24px rgba(0,0,0,.18);display:flex;flex-direction:column;font-family:var(--f-body)}
.cv-band{background:#111111;color:#FFFFFF;display:flex;justify-content:space-between;align-items:center;padding:20px 40px}
.cv-band img{height:34px}
.cv-band div{display:grid;text-align:right}
.cv-band span{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#FFB84D}
.cv-band b{font-size:12.5px;font-weight:500;color:#D9D7D0;font-family:var(--f-mono)}
.cv-top{padding:30px 40px 18px;border-bottom:3px solid #FFA300}
.cv-top h1{margin:0;font-family:var(--f-display);font-size:40px;line-height:1;text-transform:uppercase;letter-spacing:.01em}
.cv-role{margin:6px 0 0;font-size:18px;font-weight:600;color:#9A5700}
.cv-meta{margin:6px 0 0;font-size:13.5px;color:#4A4A45}
.cv-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.cv-badges span{font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:99px;background:#FFF1D4;color:#5E3600}
.cv-cols{display:grid;grid-template-columns:minmax(0,1fr) 230px;flex:1}
.cv-main{padding:22px 28px 22px 40px;display:grid;gap:18px;align-content:start}
.cv-side{background:#F5F4F0;padding:22px 26px;display:grid;gap:18px;align-content:start}
.cv-sheet h2{margin:0 0 8px;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#141414;display:flex;align-items:center;gap:8px}
.cv-sheet h2::before{content:"";width:14px;height:3px;background:#FFA300}
.cv-sheet p{margin:0;font-size:13.5px;line-height:1.6}
.cv-fit{background:#FFF8EA;border-radius:8px;padding:12px 14px}
.cv-for{font-size:12.5px!important;color:#5D5D58;margin-bottom:6px!important}
.cv-sheet ul{margin:0;padding-left:16px;display:grid;gap:4px;font-size:13px;line-height:1.5}
.cv-job{display:grid;gap:3px;padding-bottom:12px;border-bottom:1px solid #EDECE7;margin-bottom:12px}
.cv-job:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.cv-job-h{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.cv-job-h span{font-family:var(--f-mono);font-size:12px;color:#5D5D58;white-space:nowrap}
.cv-where{font-size:12.5px!important;color:#5D5D58}
.cv-tags{list-style:none;padding:0!important;display:flex!important;flex-wrap:wrap;gap:5px!important}
.cv-tags li{font-size:12px;background:#FFFFFF;border:1px solid #E2E1DC;border-radius:5px;padding:3px 8px}
.cv-list{list-style:none;padding:0!important}
.cv-list li{font-size:13px;display:grid}
.cv-list li span{font-size:11.5px;color:#5D5D58}
.cv-foot{background:#111111;color:#D9D7D0;padding:16px 40px;display:grid;gap:6px}
.cv-foot div{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;font-size:12.5px}
.cv-foot div span:first-child{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#FFB84D}
.cv-foot b{color:#FFFFFF}
.cv-foot p{font-size:11px;color:#A8A8A2}
/* ---------- Automations ---------- */
.auto-needs{margin-bottom:16px}
.auto-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
@media (min-width:1100px){.auto-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.auto-card{padding:14px 16px;display:grid;gap:10px;align-content:start}
.auto-card.off{opacity:.72}
.auto-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.auto-top h3{margin:0;font-size:15.5px;font-weight:600}
.auto-sched{margin:3px 0 0;font-size:13px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.auto-sched .i{width:15px;height:15px;stroke:var(--ok)}
.auto-tpl{margin:0;font-size:13.5px;line-height:1.5;padding:10px 12px;border-radius:10px;background:var(--bubble-out);color:var(--ink)}
.auto-run{display:grid;gap:5px;font-size:12.5px}
.auto-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--off-soft)}
.auto-bar i{display:block}
.auto-bar .sent{background:var(--line-strong)} .auto-bar .ok{background:var(--ok)} .auto-bar .needs{background:var(--warn)}
.auto-nums{color:var(--muted)} .auto-nums b{color:var(--ink)}
.auto-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.switch{position:relative;display:inline-flex;cursor:pointer;flex:none}
.switch input{position:absolute;opacity:0;width:1px;height:1px}
.switch .sw{width:40px;height:22px;border-radius:11px;background:var(--line-strong);position:relative;transition:background .15s}
.switch .sw::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#FFFFFF;transition:transform .15s;box-shadow:0 1px 2px rgba(0,0,0,.3)}
.switch input:checked + .sw{background:var(--ok)}
.switch input:checked + .sw::after{transform:translateX(18px)}
.switch input:focus-visible + .sw{outline:2px solid var(--accent);outline-offset:2px}
.auto-replies{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.auto-reply{display:grid;grid-template-columns:minmax(0,1fr);gap:4px 14px;padding:10px 12px;border-bottom:1px solid var(--line);align-items:center;background:var(--surface)}
.auto-reply:last-child{border-bottom:0}
.auto-reply.needs{background:color-mix(in srgb,var(--warn-soft) 60%,var(--surface))}
@media (min-width:900px){.auto-reply{grid-template-columns:200px minmax(0,1fr) minmax(0,1.1fr) auto}}
.ar-who{display:grid;font-size:13.5px;font-weight:600}
.ar-who .muted{font-weight:400;font-size:12px}
.ar-msg{font-size:13.5px}
.ar-ai{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;font-size:12.5px}
.ar-act{justify-content:flex-end}
.auto-needs .nb-list{display:grid}
.auto-edit{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
@media (min-width:980px){.auto-edit{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}}
.ae-form,.ae-side{display:grid;gap:12px;align-content:start;min-width:0}
.ae-days{display:flex;flex-wrap:wrap;gap:6px}
.ae-time{display:flex;align-items:center;gap:8px;margin-top:8px}
.ae-time input{width:130px}
.ae-vars{margin-top:6px}
.ae-chat{min-height:120px;max-height:260px}
.ae-out{display:grid;gap:6px}
.ae-out .bub{align-self:flex-start;max-width:100%}

/* ---------- Sales leads ---------- */
.lead-search{gap:12px}
.lead-form{display:grid;gap:10px 12px;align-items:end;grid-template-columns:minmax(0,1fr)}
@container (min-width:720px){.lead-form{grid-template-columns:minmax(0,1.2fr) minmax(0,1.5fr) minmax(0,.8fr) minmax(0,.8fr) auto}}
.lead-form .lf-go .btn{width:100%}
.lead-row{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap}
.lbl-mini{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);min-width:92px}
.saved-chip{display:inline-flex;align-items:center;gap:2px}
.saved-chip .icon-btn{width:26px;height:26px;color:var(--muted)}
.chip-new{font:600 10.5px/1 var(--f-mono);background:var(--brand);color:var(--brand-ink);padding:3px 6px;border-radius:99px}
.chip[aria-pressed="false"] .chip-n{color:var(--muted)}
.lead-scan{padding:18px;display:grid;gap:12px}
.lead-scan h2{margin:0;font-family:var(--f-display);font-size:17px;font-weight:700;text-wrap:balance}
.lead-scan ul{list-style:none;margin:0;padding:0;display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.lead-scan li{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line);font-size:14px;font-weight:600}
.lead-scan li:last-child{border-bottom:0}
.lead-scan li .muted{font-weight:400;font-size:13px;font-family:var(--f-mono)}
.lead-scan li.done .fa{width:13px;height:13px;color:var(--ok)}
.lead-scan li:not(.done):not(.busy){color:var(--muted)}
.ls-ic{display:grid;place-items:center}
.lead-stats .stat .muted{font-size:12px}
.lead-layout{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:1200px){.lead-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.lead-side{position:sticky;top:16px}}
.lead-main{min-width:0}
.lead-layout.wide{grid-template-columns:minmax(0,1fr)}
.lead-layout.wide .lead-side{display:none}
.lead-list{display:grid;gap:12px}
.lead-side{display:grid;gap:16px;align-content:start;min-width:0}
.lead{padding:14px 16px;display:grid;gap:10px;min-width:0}
.lead-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px 16px;flex-wrap:wrap}
.lead-id{display:flex;gap:12px;align-items:center;min-width:0}
.lead-id h3{margin:0;font-size:15.5px;font-weight:600;line-height:1.25}
.lead-sub{margin:2px 0 0;font-size:13px;color:var(--muted)}
.lead-badges{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.lead-n{font-family:var(--f-mono);font-size:12px;color:var(--muted)}
.lead-flag{margin:0;display:flex;gap:8px;align-items:flex-start;font-size:13px;background:var(--accent-soft);padding:8px 10px;border-radius:8px}
.lead-flag .i{width:15px;height:15px;stroke:var(--accent);flex:none;margin-top:1px}
.lead-ads{list-style:none;margin:0;padding:0;display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.lead-ads li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:8px 12px;border-bottom:1px solid var(--line)}
.lead-ads li:last-child{border-bottom:0}
.la-title{font-size:13.5px;min-width:0}
.la-meta{grid-column:1;font-size:12.5px;color:var(--muted)}
.la-src{grid-column:2;grid-row:1 / span 2;align-self:center;display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:560px){.lead-ads li{grid-template-columns:minmax(0,1fr)}.la-src{grid-column:1;grid-row:auto;justify-content:flex-start;margin-top:3px}.lead-badges{align-items:flex-start}}
.src-tag{font-size:11px;font-weight:600;padding:2px 7px;border-radius:5px;background:var(--off-soft);color:var(--ink);white-space:nowrap}
.src-tag.ats{background:var(--info-soft)}
.lead-tbl .src-tag{display:inline-block;margin:0 2px 4px 0}
.lead-foot{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap}
.lead-match.none{color:var(--muted);text-decoration:none}
.lead-cands{display:grid;gap:6px}
.lead.agency .av{background:var(--off-soft);color:var(--muted)}
.lead-note{margin:0}
.mk-co.lead{background:var(--surface);color:var(--ink)}
.pay-range{position:relative;height:34px;margin:4px 6px 0}
.pay-range::before{content:"";position:absolute;left:0;right:0;top:15px;height:4px;border-radius:2px;background:var(--line)}
.pr-bar{position:absolute;top:13px;height:8px;border-radius:4px;background:color-mix(in srgb,var(--brand) 55%,transparent)}
.pr-mid{position:absolute;top:7px;width:3px;height:20px;border-radius:2px;background:var(--brand);transform:translateX(-50%)}
.pr-you{position:absolute;top:11px;width:12px;height:12px;border-radius:50%;background:var(--info);border:2px solid var(--surface);transform:translateX(-50%)}
.pr-legend{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--muted)}
.pr-legend b{color:var(--ink);display:block;font-size:13.5px}
.pr-legend span:nth-child(2){text-align:center}.pr-legend span:last-child{text-align:right}
.pr-key{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--info);margin-right:6px;vertical-align:-1px}

/* ---------- Companies House ---------- */
.ch-panel{padding:14px;margin-bottom:16px;display:grid;gap:10px}
.ch-top{display:flex;justify-content:space-between;align-items:flex-start;gap:6px 16px;flex-wrap:wrap}
.ch-top h2{margin:0 0 3px;font-family:var(--f-display);font-size:16px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
.ch-form{display:flex;gap:8px;flex-wrap:wrap}
.ch-form .search{flex:1 1 260px;min-width:0}
.ch-res-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.ch-res-head .nb-empty{flex:1}
.ch-busy{margin:0;display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--muted);padding:8px 2px}
.ch-list{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.ch-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:11px 12px;border-bottom:1px solid var(--line);align-items:center;background:var(--surface)}
.ch-row:last-child{border-bottom:0}
.ch-row.open{background:var(--surface-2)}
.ch-main{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:3px;min-width:0;font-family:var(--f-body);color:var(--ink)}
div.ch-main{cursor:default}
.ch-main:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.ch-name{font-weight:600;font-size:14px;letter-spacing:.01em;display:flex;align-items:center;gap:8px;overflow-wrap:anywhere}
.ch-chev{color:var(--muted);font-size:11px}
.ch-row .ch-sub .pill,.ch-opt .ch-sub .pill{display:inline-flex;flex:none}
.ch-sub{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:3px 8px;min-width:0}
.ch-act{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end;font-size:13px}
.ch-more{grid-column:1/-1;display:grid;gap:10px;padding-top:10px;border-top:1px dashed var(--line-strong)}
@media (max-width:640px){.ch-row{grid-template-columns:minmax(0,1fr)}.ch-act{justify-content:flex-start}}
.ch-none{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap;padding:10px 12px;border:1px dashed var(--line-strong);border-radius:10px}
.ch-none .hint{flex:1 1 220px}
.ch-combo{position:relative}
.ch-opts{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:6;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--shadow);max-height:300px;overflow:auto}
.ch-opt{all:unset;box-sizing:border-box;display:grid;gap:2px;padding:9px 12px;width:100%;cursor:pointer;border-bottom:1px solid var(--line);font-family:var(--f-body);color:var(--ink)}
.ch-opt:last-child{border-bottom:0}
.ch-opt:hover,.ch-opt.active{background:var(--accent-soft)}
.ch-none-opt{margin:0;padding:10px 12px;font-size:13px;color:var(--muted)}
.ch-linked{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border-radius:8px;background:var(--ok-soft);font-size:13px;margin-top:6px}
.ch-linked .fa{width:13px;height:13px;color:var(--ok)}
.ch-linked > span{flex:1;min-width:0}
.flag{margin:0;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;padding:9px 11px;border-radius:8px;font-size:13px;background:var(--warn-soft);color:var(--ink)}
.flag.danger{background:var(--danger-soft)}
.field.from-ch > label::after,.field.from-cv > label::after{margin-left:8px;font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}
.field.from-ch > label::after{content:"Companies House"}
.field.from-cv > label::after{content:"From CV"}
.field.from-ch input,.field.from-ch select,.field.from-cv input{border-color:color-mix(in srgb,var(--brand) 60%,var(--line-strong));background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface))}
.chip-check.from-cv span{box-shadow:inset 0 0 0 1.5px var(--brand)}
/* ---------- CV quick add ---------- */
.cv-zone{display:grid;gap:6px;justify-items:start}
.cv-drop{width:100%;padding:16px 14px;border-width:1.5px}
.cv-drop.drag,.cv-zone.drag .cv-drop{border-color:var(--brand);background:var(--accent-soft)}
.cv-drop-t{display:flex;align-items:center;gap:10px;color:var(--ink)}
.cv-drop-t .i{width:20px;height:20px;stroke:var(--accent);flex:none}
.cv-reading,.cv-done{width:100%;display:flex;align-items:center;gap:12px;padding:14px;border-radius:10px;background:var(--accent-soft);font-size:13.5px}
.cv-reading > span:last-child,.cv-done > div{display:grid;gap:2px;flex:1;min-width:0}
.cv-done .fa{width:16px;height:16px;color:var(--ok);flex:none}
#cv-extra{display:grid;gap:10px}
#cv-extra:empty{display:none}
.cv-hist-box{display:grid;gap:4px}
.cv-hist{list-style:none;margin:0;padding:0;display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.cv-hist li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 12px;padding:8px 12px;border-bottom:1px solid var(--line);font-size:13px}
.cv-hist li:last-child{border-bottom:0}
.cv-hist li span:nth-child(2){grid-column:1;color:var(--muted);font-size:12.5px}
.cv-hist li .num{grid-column:2;grid-row:1 / span 2;align-self:center;color:var(--muted);font-size:12px}
#cv-over{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:var(--scrim);pointer-events:none;padding:24px}
#cv-over[hidden]{display:none}
.cv-over-card{border:3px dashed var(--brand);background:var(--surface);border-radius:18px;padding:34px 40px;text-align:center;display:grid;gap:8px;max-width:440px;box-shadow:var(--shadow)}
.cv-over-card b{font-family:var(--f-display);font-size:22px;text-transform:uppercase;letter-spacing:.02em}
.cv-over-card span{color:var(--muted);font-size:14px}
.cv-head-hint{margin:6px 0 0;font-size:12.5px;color:var(--muted)}
.ct-list{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.ct-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:10px 12px;border-bottom:1px solid var(--line);align-items:start}
.ct-row:last-child{border-bottom:0}
.ct-main{min-width:0;font-size:14px}
.ct-name{font-weight:600}
.ct-tags{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:6px;vertical-align:middle}
.ct-tags .pill{font-size:11px;padding:1px 7px}
.ct-site,.ct-nums{grid-column:1;font-size:13px;min-width:0}
.ct-nums{display:flex;flex-wrap:wrap;gap:4px 16px}
.ct-nums > span{display:inline-flex;align-items:center;gap:6px;min-width:0}
.ct-nums .lbl{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.ct-email{min-width:0;max-width:100%}
.ct-edit{grid-column:2;grid-row:1}
.ct-search{margin-bottom:10px}
.ct-checks{gap:8px}

.pn{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);margin-top:10px}
.pn-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.pn-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13.5px}
.pn-list.all{max-height:260px;overflow:auto;padding-right:4px}
.pn-list li{display:grid;gap:2px}
.pn-head{font-size:12px;color:var(--muted)}
.pn-head b{color:var(--ink);font-weight:600}
.tk-group{margin:14px 16px 6px;font-family:var(--f-display);font-size:15px}
.tk-group:first-child{margin-top:12px}
.tk-list{list-style:none;margin:0;padding:0;display:grid}
#calls-results .tk-list{border-top:1px solid var(--line)}
.tk{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 16px;border-bottom:1px solid var(--line)}
.tc-day .tk{padding:10px 0}
.tk-check{display:grid;place-items:center;padding-top:2px}
.tk-check input{width:18px;height:18px;accent-color:var(--brand);cursor:pointer}
.tk-main{display:grid;gap:2px;min-width:0}
.tk-title{font-weight:600;font-size:14px}
.tk.done .tk-title{text-decoration:line-through;color:var(--muted);font-weight:500}
.tk-sub{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:0 6px;align-items:center}
.tk-sub .cdate{font-size:12.5px}
.tk-notes{font-size:13px;color:var(--muted)}
.tk-bell .i{width:14px;height:14px;vertical-align:-2px;stroke:var(--accent)}
.tk.red .tk-title::after{content:"Overdue";margin-left:8px;font-size:11px;font-weight:700;color:var(--danger);text-transform:uppercase;letter-spacing:.06em}
.remind-stack{position:fixed;bottom:calc(76px + env(safe-area-inset-bottom,0px));right:16px;z-index:105;display:grid;gap:10px;width:min(360px,calc(100vw - 32px))}
.remind{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px;border-radius:12px;background:var(--surface);border:2px solid var(--brand);box-shadow:var(--shadow);animation:rm-in .25s ease-out}
@keyframes rm-in{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.remind{animation:none}}
.remind-ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft)}
.remind-ic .i{stroke:var(--accent)}
.remind-body{display:grid;gap:4px;min-width:0}
.remind-body b{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}
.remind-body p{margin:0;font-weight:600;font-size:15px}
.remind-body small{color:var(--muted);font-size:13px}
.remind-body .row-btns{margin-top:6px}
.tc-wrap{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@container (min-width:980px){.tc-wrap{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);align-items:start}}
.tc-cal,.tc-day{padding:16px;min-width:0}
.tc-day{display:grid;gap:12px}
.tc-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.tc-head h2{margin:0 6px;font-family:var(--f-display);font-size:18px;min-width:150px}
.tc-next .i{transform:scaleX(-1)}
.tc-head .btn:last-child{margin-left:auto}
.tc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--line);border-top:1px solid var(--line)}
.tc-wd{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:6px 8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-2)}
.tc-cell{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:grid;align-content:start;gap:4px;min-height:96px;padding:6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}
.tc-cell:hover{background:var(--surface-2)}
.tc-cell:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.tc-cell.out{background:var(--bg)}
.tc-cell.out .tc-n{color:var(--muted)}
.tc-cell.we:not(.out){background:color-mix(in srgb, var(--surface-2) 60%, transparent)}
.tc-cell.sel{box-shadow:inset 0 0 0 2px var(--brand)}
.tc-n{font-family:var(--f-mono);font-size:12.5px;font-weight:600}
.tc-cell.today .tc-n{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--brand);color:#111}
.tc-items{display:grid;gap:2px;min-width:0}
.tc-it{font-size:11.5px;line-height:1.3;padding:2px 5px;border-radius:5px;background:var(--accent-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tc-it.done{background:var(--off-soft);color:var(--muted);text-decoration:line-through}
.tc-it.red{background:var(--danger-soft)}
.tc-more{font-size:11px;color:var(--muted);padding-left:5px}
.tc-dot{display:none}
.tc-quick{display:flex;gap:8px;flex-wrap:wrap}
.tc-quick input:first-child{flex:1 1 180px;min-width:0}
.tc-quick input[type="time"]{flex:0 0 120px}
@container (max-width:640px){.tc-cell{min-height:52px;padding:4px}.tc-items{display:none}.tc-dot{display:grid;place-items:center;position:absolute;right:4px;bottom:4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--brand);color:#111;font-size:11px;font-weight:700;font-family:var(--f-mono)}.tc-wd{padding:6px 2px;text-align:center;font-size:10px}.tc-head h2{min-width:0;font-size:16px}}
.hcol{display:grid;gap:16px;align-content:start;min-width:0}
.home-grid > .hcol > .panel{min-width:0}
.last25{max-height:470px;overflow:auto}
.last25 .nb-sub .pill{margin-left:4px;font-size:11px;padding:1px 7px}
.mg-tbl td:first-child{white-space:normal}
.mg-tbl tr.tot td{font-weight:600;border-top:1px solid var(--line-strong)}
.mg-tbl tr.mg td{font-weight:700;color:var(--ok)}
.mg-tbl tr.mg.neg td{color:var(--danger)}
.three{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:560px){.three{grid-template-columns:1fr 1fr}.three > :last-child{grid-column:1/-1}}
.q-asap{margin-top:6px}
.rej-btn{margin-left:auto;font-size:12.5px;color:var(--muted)}
.rej{margin-top:12px}
.rej summary{cursor:pointer;font-weight:600;font-size:13.5px}
.rej .nb-list{margin-top:8px}
.rej-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid var(--line);font-size:13.5px}
.rej-row:last-child{border-bottom:0}
/* A requirement's shortlist (templates/delta/shortlist/) */
.sl-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.sl-add .search{flex:1 1 200px}
.sl-add .field-error{flex-basis:100%;margin:0}
.sl-list{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.sl-row{display:grid;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);min-width:0}
.sl-row:last-child{border-bottom:0}
.sl-who{display:grid;gap:2px;min-width:0}
.sl-name{font-size:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.sl-name .pill{font-size:11px;padding:1px 7px}
.sl-sub,.sl-when{font-size:12.5px;color:var(--muted)}
.sl-act{display:flex;gap:6px 10px;flex-wrap:wrap;align-items:center}
.sl-counts{font-size:12.5px;color:var(--accent);font-weight:500}
.rj-reasons{display:grid;gap:8px}
.cv-drop{border-style:dashed;border-width:1.5px;border-color:var(--brand);min-height:44px;padding:4px 14px;gap:8px}
.cv-drop .cvd-t{display:grid;line-height:1.15;text-align:left}
.cv-drop small{font-size:11px;font-weight:500;color:var(--muted)}
.cv-drop.drag,body.cv-dragging .cv-drop{background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-soft)}
.chip-sep{width:1px;align-self:stretch;background:var(--line);margin:0 4px}
.ns-count{margin:0;padding:12px 16px 4px;font-size:13px;color:var(--muted)}
.ns-list{list-style:none;margin:0;padding:0}
.ns-item{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:3px;width:100%;padding:12px 16px;border-bottom:1px solid var(--line)}
.ns-item:hover{background:var(--surface-2)}
.ns-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.ns-head{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:14px}
.ns-head .muted{font-size:12.5px}
.ns-text{font-size:14px;line-height:1.5}
.ns-text mark{background:var(--accent-soft);color:inherit;border-radius:3px;padding:0 2px}
.cv-pitch{border-left:4px solid var(--brand,#f39c1f);background:#fff7ea;padding:10px 14px;border-radius:0 8px 8px 0}
.cv-pitch h2{margin-top:0}
.cv-scale.editing [contenteditable]{outline:1px dashed #d98a1c;outline-offset:2px;border-radius:2px;cursor:text}
.cv-scale.editing [contenteditable]:focus{outline:2px solid #d98a1c;background:#fffaf0}
.cv-fmt span{font-size:13px}
.cvsend{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:980px){.cvsend{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.cvs-mail{display:grid;gap:12px;min-width:0}
.cvs-att{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.att{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);font-size:13px;font-weight:600}
.rc-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.rc-list{display:grid;max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.rc-row{display:flex;gap:10px;align-items:flex-start;padding:7px 10px;border-bottom:1px solid var(--line);cursor:pointer;font-size:13.5px}
.rc-row:last-child{border-bottom:0}
.rc-row input{margin-top:2px;accent-color:var(--brand)}
.rc-row span{display:grid;gap:1px;min-width:0}
.rc-row b{font-family:inherit;font-weight:600}
.rc-row small{color:var(--muted);font-size:12px}
.mail-trades{margin-top:6px}
#mail-unsub{margin:0}
.lists-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@container (min-width:900px){.lists-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lists-wide{grid-column:1/-1}}
.lchips{display:flex;flex-wrap:wrap;gap:6px}
#ls-skills{max-height:240px;overflow:auto}
.lchip{display:inline-flex;align-items:center;gap:2px;padding:2px 2px 2px 9px;border-radius:99px;border:1px solid var(--line);background:var(--surface-2);font-size:13px}
.lchip button{all:unset;cursor:pointer;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;color:var(--muted);font-size:15px;line-height:1}
.lchip button:hover{background:var(--danger-soft);color:var(--danger)}
.lchip button:focus-visible{outline:2px solid var(--accent)}
.ladd{display:flex;gap:8px}
.ladd input{flex:1;min-width:0}
.lcats{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.lcat{display:grid;gap:8px;align-content:start;padding:12px;border:1px solid var(--line);border-radius:10px}
.lcat h3{margin:0;font-family:var(--f-display);font-size:15px}
.lists-oc{margin-top:8px}
.mail-subs{display:grid;gap:8px;margin-top:6px;max-height:260px;overflow:auto}
.ms-sec{display:grid;gap:4px}
.ms-sec-h{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lcat-new{border-style:dashed}
.peek{position:fixed;top:0;right:0;bottom:0;z-index:95;width:min(440px,100vw);background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--shadow);display:grid;grid-template-rows:auto 1fr;animation:pk-in .22s ease-out}
.peek[hidden]{display:none}
@media (min-width:1100px){html.peeking .modal-wrap{padding-right:440px}}
@keyframes pk-in{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.peek{animation:none}}
.pk-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid var(--line);background:var(--surface-2)}
.pk-head h2{margin:0;font-family:var(--f-display);font-size:18px}
.pk-head p{margin:2px 0 0;font-size:13px;color:var(--muted)}
.pk-body{overflow:auto;padding:14px 18px 24px;display:grid;gap:16px;align-content:start}
.pk-body h3{margin:0 0 8px;font-family:var(--f-display);font-size:14px}
.prev .linkbtn{margin-top:6px}
.cl-filters{flex-wrap:wrap;gap:8px 14px;align-items:center}
.cf-who,.cf-date{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.cf-who input{width:180px}
.cf-date input{width:150px}
.tk-shared{color:var(--info);font-weight:600}
.tk-owners{flex-wrap:wrap}
.b-email{gap:6px}
.b-fallback{display:flex;gap:8px;align-items:flex-start;margin:0 0 4px;padding:10px 12px;border-radius:10px;background:var(--info-soft);font-size:13.5px}
.b-fallback .i{flex:none;margin-top:1px}
.cvs-more summary{cursor:pointer;font-weight:600;font-size:13.5px}
.cvs-more-list{display:grid;gap:6px;margin-top:8px;max-height:180px;overflow:auto}
.pfee-add{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;gap:6px}
.pfee-add select{grid-column:1/3}
.pfee-add .btn{grid-column:3;grid-row:1 / span 2;align-self:stretch}
.mg-type{margin-bottom:8px}
.cr-grid{display:grid;gap:8px}
.cr-row{display:grid;grid-template-columns:minmax(0,1fr) 96px 44px;gap:8px;align-items:center;font-size:13.5px}
.cr-row input{width:100%}
.cr-row select{grid-column:2 / span 2;width:100%}
.lists-grid > .cf-card{align-content:start}
.legend:empty{display:none}
