/* Prospecting uses Flow's current brand variables and existing application shell. */
#prospecting, #prospecting-root { min-width: 0; max-width: 100%; }
.pl-heading, .pl-panel-heading, .pl-pagination, .pl-page-buttons, .pl-dialog-heading, .pl-dialog-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.pl-heading { margin-bottom: 24px; align-items: flex-start; }
.pl-heading h2 { margin: 0; font-size: 28px; }
.pl-heading .section-description { font-size: 13px; line-height: 1.9; max-width: 650px; }
.pl-heading > .button { flex: none; margin-top: 20px; }
.pl-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 24px; }
.pl-stat { padding: 18px 20px; border: 1px solid var(--line, #e6e5ed); border-radius: 12px; background: var(--surface, #fff); display: grid; gap: 8px; min-width: 0; }
.pl-stat > span { color: var(--muted, #686575); font-size: 12px; }
.pl-stat strong { font-size: 31px; font-weight: 800; letter-spacing: -1px; }
.pl-stat small { color: var(--muted, #686575); font-size: 10px; }
.pl-stat:last-child { background: var(--brand-wash, #f4f0ff); border-color: var(--brand-soft, #e2d8ff); }
.pl-panel { border: 1px solid var(--line, #e6e5ed); border-radius: 14px; overflow: hidden; background: var(--surface, #fff); }
.pl-panel-heading { padding: 21px 22px 12px; }
.pl-panel-heading h3 { font-size: 17px; margin: 0 0 3px; }
.pl-hint { color: var(--muted, #686575); font-size: 12px; line-height: 1.85; margin-block: 6px; }
#prospecting-root > .pl-hint { padding: 10px 3px; }
.pl-filters { display: grid; grid-template-columns: minmax(190px, 2fr) repeat(4, minmax(105px, 1fr)) 85px; gap: 9px; padding: 9px 22px 18px; }
.pl-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; font-size: 12px; }
.pl-field > span { font-weight: 650; }
.pl-field input, .pl-field select, .pl-field textarea { box-sizing: border-box; min-width: 0; width: 100%; border: 1px solid var(--line, #e6e5ed); border-radius: 7px; background: var(--surface, #fff); color: inherit; padding: 10px 11px; font: inherit; min-height: 42px; }
.pl-field textarea { resize: vertical; line-height: 1.8; }
.pl-field input:focus, .pl-field select:focus, .pl-field textarea:focus { outline: 2px solid var(--brand-soft, #d8c8ff); outline-offset: 1px; border-color: var(--brand, #5a37c9); }
.pl-table-scroll { overflow-x: auto; max-width: 100%; position: relative; overscroll-behavior-inline: contain; }
.pl-table { width: 100%; min-width: 1120px; border-collapse: collapse; text-align: right; table-layout: auto; }
.pl-table thead { background: var(--background, #f9f9fc); }
.pl-table th { padding: 14px 14px; font-size: 11px; color: var(--muted, #686575); font-weight: 650; white-space: nowrap; }
.pl-table td, .pl-table tbody th { padding: 16px 14px; border-top: 1px solid var(--line, #e6e5ed); font-size: 12px; font-weight: 400; color: inherit; vertical-align: middle; height: 86px; box-sizing: border-box; }
.pl-table tbody tr:hover { background: var(--brand-wash, #f9f7ff); }
.pl-table small { display: block; color: var(--muted, #686575); font-size: 10px; margin-top: 5px; }
.pl-company { display: flex; align-items: center; gap: 10px; min-width: 215px; max-width: 280px; }
.pl-company > div { min-width: 0; }
.pl-company small { white-space: normal; overflow-wrap: anywhere; max-width: 220px; line-height: 1.7; }
.pl-avatar { flex: none; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; background: var(--brand-soft, #e9e0ff); color: var(--brand-dark, #4a258b); font-size: 17px; font-weight: 700; }
.pl-tone-1 { background: #e9eefb; color: #445b9a; }.pl-tone-2 { background: #efebfa; color: #70529a; }
.pl-company-name, .pl-text-action, .pl-row-open { font: inherit; cursor: pointer; background: none; border: none; padding: 4px 0; text-align: inherit; color: var(--brand-dark, #55329e); }
.pl-company-name { color: inherit; font-weight: 700; overflow-wrap: anywhere; white-space: normal; }
.pl-company-name:hover, .pl-text-action:hover { text-decoration: underline; }
.pl-phone { display: block; font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; }
.pl-text-action { display: block; font-size: 11px; min-height: 30px; }
.pl-row-open { padding: 8px 11px; border: 1px solid var(--brand-soft, #e2d8ff); background: var(--brand-wash, #f8f5ff); border-radius: 6px; font-size: 11px; white-space: nowrap; }
.pl-row-actions { min-width: 160px; }
.pl-badge { display: inline-block; padding: 5px 9px; border-radius: 6px; background: #f0f0f5; color: #656173; font-size: 10px; white-space: nowrap; }
.pl-badge-positive { background: #ecf6f0; color: #31674d; }.pl-badge-blocked { background: #fbecee; color: #a03549; }
.pl-note-preview { max-width: 170px; display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.8; }
.pl-follow-up { color: var(--brand-dark, #55329e); font-size: 11px; }
.pl-pagination { padding: 13px 22px; border-top: 1px solid var(--line, #e6e5ed); font-size: 11px; color: var(--muted, #686575); }
.pl-page-buttons { gap: 10px; }.pl-page-buttons .button { min-width: 65px; min-height: 36px; font-size: 11px; }
.pl-empty { text-align: center; padding: 46px 18px; }.pl-empty strong { font-size: 15px; }
.pl-error { background: #fff1f3; color: #9c2f42; border: 1px solid #f3cbd2; border-radius: 8px; padding: 11px 14px; margin: 12px 20px; font-size: 12px; line-height: 1.9; overflow-wrap: anywhere; }
.pl-loading { margin: 0; padding: 9px 22px; font-size: 12px; color: var(--muted, #686575); }
.pl-alert { background: #fff8ec; color: #85602d; border: 1px solid #f0e2c8; border-radius: 7px; font-size: 12px; line-height: 1.9; padding: 10px 12px; }
.pl-pending-operation { border: 1px solid #e4d5a9; background: #fff9eb; color: #76552a; padding: 14px 16px; border-radius: 10px; margin-bottom: 18px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 12px; line-height: 1.9; }.pl-pending-operation p { flex: 1 1 250px; margin: 0; }.pl-pending-operation .button { font-size: 12px; min-height: 42px; }
.pl-dialog { width: min(580px, calc(100vw - 30px)); max-width: calc(100vw - 30px); max-height: calc(100dvh - 30px); border: 1px solid var(--line, #e6e5ed); border-radius: 14px; padding: 0; background: var(--surface, #fff); color: inherit; box-sizing: border-box; }
.pl-dialog::backdrop { background: rgb(25 20 45 / .36); backdrop-filter: blur(2px); }
.pl-dialog-heading { padding: 20px 24px; border-bottom: 1px solid var(--line, #e6e5ed); position: sticky; inset-block-start: 0; background: var(--surface, #fff); z-index: 2; }
.pl-dialog-heading h2 { font-size: 18px; line-height: 1.7; margin: 0; overflow-wrap: anywhere; }
.pl-close { border: none; background: none; font: inherit; font-size: 26px; min-width: 44px; min-height: 44px; cursor: pointer; padding: 0; flex: none; color: var(--muted, #686575); }
.pl-dialog-body { padding: 21px 24px; min-width: 0; }
.pl-dialog-body h3 { font-size: 14px; margin-top: 24px; }.pl-dialog-body > strong { display: block; overflow-wrap: anywhere; }
.pl-dialog-footer { flex-wrap: wrap; justify-content: flex-start; padding: 16px 24px; border-top: 1px solid var(--line, #e6e5ed); background: var(--surface, #fff); }
.pl-dialog-footer .button { font-size: 12px; min-height: 42px; white-space: normal; }
.pl-drawer { width: 550px; max-width: 100vw; height: 100dvh; max-height: 100dvh; inset: 0 auto 0 0; margin: 0; border-radius: 0; border-width: 0 1px 0 0; }
.pl-drawer .pl-dialog-footer { position: sticky; inset-block-end: 0; z-index: 1; box-shadow: 0 -5px 18px rgb(25 20 45 / .04); }
.pl-record-badges { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; }
.pl-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px 15px; }
.pl-detail-grid > div { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
.pl-detail-grid small { color: var(--muted, #686575); font-size: 11px; }.pl-detail-grid span { font-size: 13px; overflow-wrap: anywhere; }
.pl-source { color: var(--muted, #686575); padding: 10px 0; font-size: 11px; line-height: 1.9; overflow-wrap: anywhere; }
.pl-record-form { display: grid; gap: 16px; border-block: 1px solid var(--line, #e6e5ed); padding-block: 20px; }
.pl-follow-details { font-size: 12px; }.pl-follow-details summary { cursor: pointer; color: var(--brand-dark, #55329e); min-height: 30px; }
.pl-follow-details .pl-field { margin: 8px 0; }.pl-check { display: flex; align-items: flex-start; gap: 9px; font-size: 12px; line-height: 1.9; margin-block: 12px; cursor: pointer; }
.pl-check input { flex: none; width: 17px; height: 17px; margin-top: 4px; accent-color: var(--brand, #5a37c9); }
.pl-history { list-style: none; padding: 0; margin: 0; }.pl-history li { border-inline-start: 2px solid var(--brand-soft, #e2d8ff); padding: 0 14px 18px 0; margin-inline-start: 4px; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.pl-history p { margin: 4px 0; white-space: pre-line; }.pl-history small { color: var(--muted, #686575); font-size: 10px; }
.pl-match { display: flex; align-items: flex-start; gap: 10px; padding: 13px; margin-block: 9px; border: 1px solid var(--line, #e6e5ed); border-radius: 8px; cursor: pointer; font-size: 13px; }.pl-match input { margin-top: 5px; accent-color: var(--brand, #5a37c9); }.pl-match small { display: block; color: var(--muted, #686575); font-size: 11px; margin-top: 5px; }
.pl-import-dialog { width: 820px; }.pl-upload { margin-block: 18px; padding: 27px 15px; border: 1px dashed var(--brand-soft, #ccb9f1); background: var(--brand-wash, #faf7ff); border-radius: 10px; display: flex; flex-direction: column; align-items: center; gap: 11px; text-align: center; cursor: pointer; position: relative; }
.pl-upload strong { font-size: 16px; }.pl-upload > span { font-size: 12px; color: var(--muted, #686575); }.pl-upload .button { color: inherit; }.pl-upload:focus-within { outline: 2px solid var(--brand, #5a37c9); outline-offset: 3px; }
.pl-sr-only { 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; }
.pl-preview-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-block: 18px 10px; }.pl-preview-stats > div { background: var(--background, #f7f6fa); padding: 13px 5px; border-radius: 7px; display: grid; gap: 5px; text-align: center; }.pl-preview-stats strong { font-size: 25px; }.pl-preview-stats span { font-size: 10px; color: var(--muted, #686575); }
.pl-preview-table { width: 100%; min-width: 620px; border-collapse: collapse; text-align: right; font-size: 11px; }.pl-preview-table th, .pl-preview-table td { padding: 10px; border-bottom: 1px solid var(--line, #e6e5ed); max-width: 200px; overflow-wrap: anywhere; }.pl-preview-table th { background: var(--background, #f7f6fa); }
.pl-crm-sources { padding-block: 18px; border-top: 1px solid var(--line, #e6e5ed); }.pl-crm-sources h4 { margin: 0 0 10px; font-size: 13px; }.pl-crm-sources summary { cursor: pointer; font-size: 12px; line-height: 1.9; }.pl-crm-sources .pl-history { margin-top: 14px; }
.pl-dialog [hidden], #prospecting-root [hidden] { display: none !important; }
.pl-dialog button:disabled, #prospecting-root button:disabled { opacity: .5; cursor: default; }

/* A focused sales workspace: hierarchy, direct feedback, progressive disclosure. */
#prospecting-root { container-type: inline-size; --pl-ink: #24222b; --pl-secondary: #77737f; --pl-rule: #efedf2; color: var(--pl-ink); }
.pl-heading { align-items: center; margin: .4rem 0 1.65rem; gap: 1rem; }
.pl-heading h2 { font-size: clamp(1.65rem, 2.5vw, 2.1rem); font-weight: 750; line-height: 1.4; }
.pl-heading .pl-hint { margin: .3rem 0 0; font-size: .82rem; color: var(--pl-secondary); }
.pl-heading > .button { margin: 0; border-radius: .75rem; padding: .7rem 1.1rem; min-height: 44px; font-size: .83rem; box-shadow: 0 3px 8px #512d8610; }
.pl-panel { border: 1px solid #e9e6ee; border-radius: 1.15rem; background: #fff; overflow: visible; box-shadow: 0 4px 24px #24222b03; }
.pl-toolbar { display: flex; align-items: center; gap: .65rem; padding: 1.1rem 1.25rem .65rem; position: relative; z-index: 3; }
.pl-toolbar > .pl-field > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.pl-toolbar .pl-field input, .pl-toolbar .pl-field select { background: #f6f5f8; border: 1px solid transparent; border-radius: .7rem; min-height: 42px; font-size: .8rem; padding: .65rem .85rem; }
.pl-search-field { flex: 1 1 18rem; }
.pl-list-field { flex: 0 1 15rem; }
.pl-filter-details { flex: none; position: relative; }
.pl-filter-details > summary, .pl-refresh { display: flex; align-items: center; justify-content: center; min-height: 42px; padding: .6rem .8rem; border: 1px solid #e9e6ee; border-radius: .7rem; cursor: pointer; list-style: none; font: inherit; font-size: .78rem; background: #fff; color: #5b5564; white-space: nowrap; box-sizing: border-box; }
.pl-filter-details > summary::after { content: '⌄'; font-size: 1rem; margin-inline-start: .6rem; color: #89828f; }
.pl-filter-details > summary::-webkit-details-marker { display: none; }
.pl-filter-details[open] > summary { color: var(--brand-dark, #55329e); background: #f5f1fc; border-color: #e2d9f2; }
.pl-filter-popover { position: absolute; top: calc(100% + .6rem); inset-inline-end: 0; width: 23rem; padding: 1.2rem; border-radius: 1rem; border: 1px solid #e7e2ee; background: rgb(255 255 255 / .96); backdrop-filter: blur(20px); box-shadow: 0 12px 42px #25203318; box-sizing: border-box; }
.pl-filter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.pl-filter-popover > .pl-text-action { margin-top: .65rem; color: var(--brand-dark, #55329e); }
.pl-quick-filters { display: flex; gap: .35rem; padding: .2rem 1.25rem .9rem; }
.pl-quick-filter { min-height: 36px; min-width: 3.4rem; padding: .4rem .9rem; border: 0; border-radius: 999px; background: transparent; color: #77717e; font: inherit; font-size: .78rem; cursor: pointer; }
.pl-quick-filter[aria-pressed="true"] { background: #f0ebf9; color: var(--brand-dark, #55329e); font-weight: 700; }
.pl-table-scroll { border-radius: 0 0 1.15rem 1.15rem; }
.pl-table { min-width: 0; width: 100%; table-layout: fixed; }
.pl-table thead { background: #faf9fc; }
.pl-table th { padding: .75rem 1rem; font-size: .71rem; font-weight: 550; color: #817b88; }
.pl-table thead th:nth-child(1) { width: 29%; padding-inline-start: 1.25rem; }
.pl-table thead th:nth-child(2) { width: 23%; }
.pl-table thead th:nth-child(3) { width: 22%; }
.pl-table thead th:nth-child(4) { width: 18%; }
.pl-table thead th:nth-child(5) { width: 8%; }
.pl-table td, .pl-table tbody th { height: auto; padding: 1.15rem 1rem; border-color: var(--pl-rule); font-size: .82rem; line-height: 1.65; }
.pl-table tbody th { padding-inline-start: 1.25rem; }
.pl-table tbody tr:hover { background: #fbfafd; }
.pl-company { min-width: 0; max-width: none; gap: .8rem; align-items: center; }
.pl-avatar { width: 40px; height: 40px; border-radius: 12px; background: #f0edf6; color: #7d6a96; font-size: 1rem; font-weight: 550; }
.pl-tone-1 { background: #edf1f5; color: #65768d; }.pl-tone-2 { background: #f4efed; color: #947c6d; }
.pl-company-name { font-size: .92rem; font-weight: 700; line-height: 1.7; padding: 0; text-decoration: none; }
.pl-company-name:hover { color: var(--brand-dark, #55329e); text-decoration: none; }
.pl-table small { font-size: .76rem; line-height: 1.65; color: var(--pl-secondary); margin-top: .25rem; }
.pl-company small { max-width: none; }.pl-company .pl-owner-label { color: #746b7d; font-size: .72rem; }
.pl-cell-contact .pl-phone, .pl-email { overflow-wrap: anywhere; white-space: normal; text-align: start; font-size: .86rem; font-family: system-ui, sans-serif; }
.pl-cell-contact .pl-phone[dir="ltr"], .pl-cell-contact .pl-email { text-align: right; }
.pl-cell-contact .pl-text-action { display: inline-flex; color: #80758e; font-size: .68rem; min-height: 30px; margin-top: .1rem; }
.pl-badge { font-size: .7rem; font-weight: 550; border-radius: 999px; padding: .25rem .65rem; color: #797280; background: #f3f1f5; }
.pl-badge-positive { background: #eaf5ee; color: #397457; }.pl-badge-blocked { background: #faeeee; color: #a04650; }
.pl-note-preview { max-width: none; -webkit-line-clamp: 1; color: #77717e !important; }
.pl-review-label { color: #966d28 !important; }
.pl-follow-label { font-size: .77rem; color: #797180; }.pl-follow-label:has(+ .pl-follow-up) { color: #64566f; }.pl-follow-label.is-overdue { color: #a45d28; }
.pl-follow-up { font-size: .69rem; color: #817b88 !important; }
.pl-row-actions { min-width: 0; text-align: end; }
.pl-row-open { font-size: .75rem; min-height: 38px; min-width: 48px; border: 0; background: #f4f0fa; border-radius: .6rem; padding: .45rem .7rem; color: var(--brand-dark, #55329e); }
.pl-pagination { padding: .85rem 1.25rem; font-size: .7rem; border-color: var(--pl-rule); }
.pl-page-buttons { gap: .6rem; }.pl-page-buttons .button { border: 0; background: #f7f5fa; min-width: 50px; border-radius: .55rem; font-size: .7rem; }
.pl-results-summary { margin: 1.15rem .2rem; color: #928b99; font-size: .73rem; }
.pl-results-summary > summary { width: fit-content; cursor: pointer; min-height: 36px; line-height: 36px; }
.pl-stats { display: flex; gap: 2rem; margin: .8rem 0 0; padding: 1rem 0; flex-wrap: wrap; }
.pl-stat, .pl-stat:last-child { border: 0; background: none; padding: 0; border-radius: 0; display: grid; gap: .3rem; }
.pl-stat strong { order: -1; font-size: 1.5rem; font-weight: 650; letter-spacing: 0; }.pl-stat > span { font-size: .74rem; }.pl-stat small { display: none; }
.pl-dialog { border-radius: 1.25rem; border-color: #e9e5ef; box-shadow: 0 18px 80px #1710211f; }
.pl-dialog::backdrop { background: rgb(32 25 44 / .22); backdrop-filter: blur(3px); }
.pl-dialog-heading { padding: 1.3rem 1.5rem; border-color: #f0edf3; background: rgb(255 255 255 / .95); backdrop-filter: blur(18px); }
.pl-dialog-heading h2 { font-size: 1.15rem; font-weight: 700; }
.pl-close { background: #f3f1f6; border-radius: 50%; min-width: 32px; min-height: 32px; font-size: 1.4rem; color: #8a8195; }
.pl-drawer { width: 510px; border-radius: 1.3rem 0 0 1.3rem; border: 0; }
.pl-dialog-body { padding: 1.4rem 1.5rem; }
.pl-record-badges { margin: 0 0 .6rem; }.pl-record-badges .pl-hint { display: none; }
.pl-contact-card { padding-bottom: 1.15rem; }
.pl-company-context { font-size: .78rem; color: #746b7d; line-height: 1.8; margin: 0 0 .9rem; }
.pl-contact-line { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 42px; }
.pl-contact-line > span { min-width: 0; font-size: .95rem; overflow-wrap: anywhere; }
.pl-contact-copy { border: 0; border-radius: .55rem; padding: .4rem .7rem; min-height: 36px; flex: none; font: inherit; font-size: .72rem; color: #78618e; background: #f6f2fa; cursor: pointer; }
.pl-contact-link { display: inline-block; margin-inline-end: 1rem; }
.pl-record-form { padding: 1.3rem 0; gap: 1.1rem; border-color: #f0edf3; }
.pl-field { font-size: .78rem; gap: .5rem; }.pl-field > span { font-weight: 600; color: #625a6c; }
.pl-field input, .pl-field select, .pl-field textarea { border-color: #e9e5ef; border-radius: .75rem; padding: .75rem; min-height: 44px; font-size: .84rem; background: #fcfbfd; }
.pl-field textarea { min-height: 95px; }.pl-field textarea::placeholder { color: #b3abbc; font-size: .78rem; }
.pl-follow-details, .pl-owner-details, .pl-history-details, .pl-mapping-details { font-size: .78rem; }
.pl-follow-details > summary, .pl-owner-details > summary, .pl-history-details > summary, .pl-mapping-details > summary { cursor: pointer; padding: .35rem 0; min-height: 36px; box-sizing: border-box; color: #746381; }
.pl-owner-details .pl-field { margin-top: .6rem; }.pl-history-details { padding-top: .8rem; }.pl-history-details[open] > summary { margin-bottom: .7rem; }
.pl-dialog-footer { gap: .65rem; background: rgb(255 255 255 / .97); backdrop-filter: blur(18px); padding: 1rem 1.5rem; border-color: #eeeaf3; }
.pl-drawer .pl-dialog-footer { display: grid; grid-template-columns: 1.6fr 1fr; box-shadow: 0 -4px 22px #2a183906; }
.pl-dialog-footer .button { border-radius: .7rem; min-height: 44px; font-size: .8rem; }
.pl-promote-action { grid-column: 1 / -1; padding: .45rem; background: none; border: 0; color: #866f99; min-height: 38px; font: inherit; font-size: .77rem; cursor: pointer; }
.pl-upload { background: #faf8fd; border-color: #d9cce9; border-radius: 1rem; padding: 2rem 1rem; }.pl-upload strong { font-size: 1rem; font-weight: 600; }
#prospecting-root button:active, .pl-dialog button:active, .pl-filter-details > summary:active { transform: scale(.97); }
#prospecting-root button:focus-visible, .pl-dialog button:focus-visible, .pl-dialog summary:focus-visible, #prospecting-root summary:focus-visible { outline: 2px solid var(--brand, #7045b5); outline-offset: 3px; }
@container (max-width: 820px) {
    .pl-toolbar { flex-wrap: wrap; padding: 1rem; gap: .5rem; }.pl-search-field { flex: 1 1 100%; }.pl-list-field { flex: 1 1 10rem; }.pl-quick-filters { padding-inline: 1rem; }
    .pl-filter-details { position: static; }.pl-filter-popover { inset-inline: 1rem; top: 100%; width: auto; }
    .pl-table { display: block; }.pl-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }.pl-table tbody { display: block; }
    .pl-table tbody tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: 'company action' 'contact contact' 'result follow'; gap: .75rem 1rem; padding: 1.15rem 1rem; border-top: 1px solid var(--pl-rule); }
    .pl-table tbody th, .pl-table td { display: block; padding: 0; border: 0; min-width: 0; }.pl-cell-company { grid-area: company; }.pl-row-actions { grid-area: action; align-self: center; }.pl-cell-contact { grid-area: contact; display: flex !important; align-items: center; gap: .7rem; padding-inline-start: 3.3rem !important; flex-wrap: wrap; }.pl-cell-contact .pl-text-action { margin: 0; min-height: 32px; }.pl-cell-contact .pl-phone { font-size: .82rem; }.pl-cell-contact .pl-email { display: none; }
    .pl-cell-result { grid-area: result; padding-inline-start: 3.3rem !important; }.pl-cell-follow { grid-area: follow; text-align: end; }.pl-note-preview { max-width: 100%; }.pl-avatar { width: 40px; height: 40px; }.pl-company-name { font-size: .88rem; }
}
@media (max-width: 650px) {
    .pl-heading { flex-direction: row; align-items: center; margin: .3rem 0 1.2rem; }.pl-heading h2 { font-size: 1.45rem; }.pl-heading > .button { font-size: .75rem; padding: .6rem .8rem; }.pl-heading .pl-hint { font-size: .72rem; }
    .pl-toolbar .pl-field input, .pl-toolbar .pl-field select { font-size: 16px; }.pl-filter-popover { width: auto; inset-inline: 1rem; }.pl-quick-filter { min-height: 40px; font-size: .75rem; padding-inline: .75rem; }
    .pl-table { min-width: 0; }.pl-table small { font-size: .7rem; }.pl-table .pl-badge { font-size: .67rem; }.pl-company-name { min-height: 0; }.pl-row-open { min-height: 42px; font-size: .74rem; }.pl-pagination { padding: .8rem 1rem; }.pl-page-buttons .button { min-width: 44px; min-height: 40px; }
    .pl-dialog { border-radius: 1.2rem; }.pl-drawer { border-radius: 0; width: 100vw; }.pl-dialog-heading { padding: 1.1rem 1.2rem; }.pl-dialog-body { padding: 1.2rem; }.pl-dialog-footer { padding: .85rem 1.2rem; }.pl-dialog-footer .button { font-size: .78rem; }.pl-field input, .pl-field select, .pl-field textarea { font-size: 16px; }.pl-close { min-width: 40px; min-height: 40px; }.pl-stats { gap: 1.5rem; }.pl-stat { padding: 0; }.pl-stat strong { font-size: 1.3rem; }
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) { .pl-filter-popover, .pl-dialog-heading, .pl-dialog-footer { background: #fff; backdrop-filter: none; }.pl-dialog::backdrop { backdrop-filter: none; } }
@media (prefers-reduced-motion: reduce) { #prospecting-root button:active, .pl-dialog button:active, .pl-filter-details > summary:active { transform: none; } }
@media (max-width: 360px) { .pl-dialog-body { padding-inline: 13px; }.pl-dialog-heading, .pl-dialog-footer { padding-inline: 13px; }.pl-preview-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }.pl-heading h2 { font-size: 1.25rem; }.pl-heading > .button { font-size: .7rem; padding-inline: .6rem; }.pl-toolbar { padding: .8rem; }.pl-filter-details > summary, .pl-refresh { font-size: .7rem; padding-inline: .6rem; }.pl-cell-contact { padding-inline-start: 0 !important; }.pl-cell-result { padding-inline-start: 0 !important; } }
@media (prefers-reduced-motion: reduce) { #prospecting-root *, .pl-dialog * { scroll-behavior: auto !important; transition: none !important; } }

/* Spreadsheet density is retained at every width; narrow screens scroll the sheet. */
.pl-heading { margin: .15rem 0 .7rem; }.pl-heading h2 { font-size: 1.5rem; }.pl-heading .pl-hint { font-size: .73rem; }
.pl-panel { border-radius: .65rem; box-shadow: none; }.pl-toolbar { padding: .55rem .7rem .3rem; gap: .4rem; }
.pl-toolbar .pl-field input, .pl-toolbar .pl-field select, .pl-filter-details > summary, .pl-refresh { min-height: 32px; padding: .35rem .65rem; border-radius: .4rem; font-size: .75rem; }
.pl-size-field { flex: 0 0 6.5rem; }.pl-list-field { flex-basis: 12rem; }.pl-search-field { flex-basis: 16rem; }
.pl-quick-filters { padding: .2rem .7rem .4rem; gap: .2rem; }.pl-quick-filter { min-height: 28px; padding: .2rem .65rem; font-size: .72rem; }
.pl-table-scroll { overflow: auto; max-height: calc(100dvh - 260px); border-radius: 0; position: relative; }
.pl-table { display: table; min-width: 1130px; table-layout: fixed; border-collapse: separate; border-spacing: 0; font-size: .76rem; }
.pl-table thead { display: table-header-group; position: sticky; top: 0; z-index: 2; width: auto; height: auto; clip-path: none; overflow: visible; white-space: nowrap; background: #f6f4f8; }
.pl-table tbody { display: table-row-group; }.pl-table tbody tr { display: table-row; height: 30px; padding: 0; border: 0; }
.pl-table th, .pl-table td, .pl-table tbody th { display: table-cell; height: 30px; padding: 1px .55rem !important; font-size: .76rem; line-height: 1.25; border-top: 0; border-bottom: 1px solid #eeebf1; border-inline-end: 1px solid #f1eef5; vertical-align: middle; }
.pl-table thead th { height: 30px; color: #756d7d; font-size: .72rem; font-weight: 600; background: #f6f4f8; }
.pl-table thead th:nth-child(1) { width: 3%; }.pl-table thead th:nth-child(2) { width: 20%; }.pl-table thead th:nth-child(3) { width: 22%; }.pl-table thead th:nth-child(4) { width: 16%; }.pl-table thead th:nth-child(5) { width: 19%; }.pl-table thead th:nth-child(6) { width: 12%; }.pl-table thead th:nth-child(7) { width: 8%; }
.pl-table tbody tr:nth-child(even) { background: #fdfcfe; }.pl-table tbody tr:hover { background: #f5f2fa; }
.pl-table .pl-cell-contact { display: table-cell !important; padding-inline-start: .55rem !important; white-space: nowrap; }
.pl-table .pl-cell-result { padding-inline-start: .55rem !important; }.pl-table .pl-company-name { font-size: .78rem; font-weight: 550; min-height: 0; max-width: 100%; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pl-table .pl-phone { display: inline-block; max-width: calc(100% - 27px); font-size: .76rem; vertical-align: middle; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pl-table .pl-text-action { display: inline-flex; align-items: center; justify-content: center; width: 24px; min-height: 24px; margin: 0; padding: 0; font-size: 0; vertical-align: middle; }.pl-table .pl-text-action::before { content: '⧉'; font-size: 1rem; }
.pl-row-number { color: #a39ba9; text-align: center; font-variant-numeric: tabular-nums; }.pl-cell-follow { font-size: .7rem !important; color: #7d7185; white-space: nowrap; text-align: start; }
.pl-note-button { display: block; border: 0; background: none; color: #7a7083; font: inherit; font-size: .74rem; cursor: pointer; padding: 0; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: start; }
.pl-row-actions { min-width: 0; text-align: center; white-space: nowrap; }.pl-merge, .pl-delete, .pl-restore { border: 0; background: none; font: inherit; font-size: .71rem; padding: .1rem .35rem; min-height: 24px; cursor: pointer; color: #72558d; }.pl-delete { color: #b27982; }.pl-delete:hover { background: #fbeef0; border-radius: .3rem; color: #a33f50; }
.pl-status-switch { display: flex; width: 100%; max-width: 180px; min-width: 140px; height: 24px; border: 1px solid #e4dfe9; background: #f5f3f7; border-radius: .35rem; overflow: hidden; box-sizing: border-box; }
.pl-status-switch > button { flex: 1 1 0; min-width: 42px; border: 0; border-radius: 0; background: transparent; color: #8b8196; padding: 0 .25rem; font: inherit; font-size: .7rem; line-height: 22px; white-space: nowrap; cursor: pointer; transition: flex-grow 260ms cubic-bezier(.2,.75,.25,1), background-color 140ms, color 140ms; }
.pl-status-switch > button + button { border-inline-start: 1px solid #e4dfe9; }
.pl-status-switch[data-selected="INTERESTED"] > [data-value="INTERESTED"], .pl-status-switch[data-selected="NO_ANSWER"] > [data-value="NO_ANSWER"] { flex-grow: 1.8; font-weight: 650; }
.pl-status-switch[data-selected="INTERESTED"] > [data-value="INTERESTED"] { background: #e2f1e8; color: #367553; }
.pl-status-switch[data-selected="NO_ANSWER"] > [data-value="NO_ANSWER"] { background: #f0e8d9; color: #8b6d34; }
#prospecting-root .pl-status-switch button:disabled { opacity: 1; cursor: progress; }#prospecting-root .pl-status-switch button:active { transform: none; }
.pl-pagination { padding: .4rem .75rem; font-size: .7rem; }.pl-page-buttons .button { min-height: 28px; font-size: .68rem; }
.pl-undo { display: flex; align-items: center; gap: .8rem; padding: .55rem .8rem; margin-bottom: .6rem; border: 1px solid #e4ddeb; border-radius: .5rem; font-size: .78rem; background: #faf8fc; }.pl-undo .pl-text-action { min-height: 28px; }.pl-undo-close { margin-inline-start: auto; background: none; border: 0; color: #8e809c; font-size: 1.2rem; cursor: pointer; }
@media (max-width: 650px) { .pl-table-scroll { max-height: calc(100dvh - 315px); }.pl-toolbar { flex-wrap: wrap; }.pl-search-field { flex: 1 1 100%; }.pl-list-field { flex: 1 1 7rem; }.pl-size-field { flex: 0 1 5.8rem; }.pl-toolbar .pl-field input, .pl-toolbar .pl-field select { font-size: 16px; }.pl-refresh { display: none; }.pl-heading h2 { font-size: 1.3rem; } }
@media (prefers-reduced-motion: reduce) { .pl-status-switch > button { transition: none; } }
.pl-contact-tools { display: inline-flex; gap: .2rem; align-items: center; vertical-align: middle; margin-inline-start: .3rem; }
.pl-contact-tools .pl-whatsapp, .pl-contact-tools .pl-call { display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: .3rem; padding: .15rem .35rem; min-height: 24px; font: inherit; font-size: .67rem; text-decoration: none; white-space: nowrap; cursor: pointer; }
.pl-whatsapp { color: #2b7851; background: #eaf5ee; }.pl-call { color: #665a75; background: #f0ecf5; }
.pl-contact-tools button:disabled { cursor: default; }.pl-contact-card > .pl-contact-tools { margin-block: .4rem; }
.pl-table .pl-cell-contact .pl-phone { max-width: calc(100% - 118px); }
.pl-table { min-width: 1270px; }.pl-table thead th:nth-child(1){width:3%}.pl-table thead th:nth-child(2){width:17%}.pl-table thead th:nth-child(3){width:10%}.pl-table thead th:nth-child(4){width:22%}.pl-table thead th:nth-child(5){width:14%}.pl-table thead th:nth-child(6){width:16%}.pl-table thead th:nth-child(7){width:10%}.pl-table thead th:nth-child(8){width:8%}.pl-sector-button{border:0;background:transparent;color:#72558d;font:inherit;cursor:pointer;padding:2px 4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-sector-button:hover{background:#eee9f5;border-radius:4px}.pl-sector-button:disabled{cursor:default;color:inherit}
