/* Final presentation layer: compact controls, legible metadata and resilient content. */
:root{--muted:#68788e}
button:disabled{opacity:.5}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-color:#357bdd}
.search-box:focus-within{border-color:#7ca7e7;box-shadow:0 0 0 2px #eaf2ff}
.search-box input:focus-visible{outline:0}
.header-context{color:#697b92}
.nav-button{color:#566981}
.nav-button.active{color:#1e5cc3}
.header-tools{min-width:0}
.account-button{color:#526986}

/* List metadata stays readable without increasing row density. */
.library-heading .muted{font-size:11px;color:#687b94}
.library-heading-actions{flex-shrink:0}
.library-filters .filter-row{min-width:0}
.library-filters select,.filter-button{color:#4e6380}
.search-box input{font-size:12px;color:#425771}
.search-box input::placeholder{color:#73849a}
.filter-button.active{color:#245eb7}
.pace-content strong{color:#49637f;font-size:11px}
.pace-content small{color:#697f98;font-size:10px}
.bookmark-address{color:#354d6a;line-height:1.35}
.bookmark-subtitle{color:#71839b;gap:4px;line-height:1.4}
.bookmark-subtitle>span{flex:0 0 auto}
.bookmark-status-row{color:#657b95;font-size:10px;min-width:0;line-height:1.4}
.bookmark-status-row>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bookmark-rating{color:#657b95;font-size:10px;flex-shrink:0}
.recording-name,.recording-meta{color:#6a7e97}
.recording-tags span{color:#60748e}
.recording-chevron{color:#75879f}
.recording-row.selected,.bookmark-row.selected{box-shadow:inset 0 0 0 1px #bfd4f4}
.library-list:focus-visible{outline-offset:-2px}
.library-footer{color:#70839b;gap:6px}
.library-footer>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.library-footer .text-button{flex-shrink:0}
.status-badge{color:#596e89}
.status-badge.ready{color:#2d7557}
.status-badge.identify{color:#95621e}
.status-badge.unsure,.status-badge.tentative{color:#745298}
.types-popover .source-note{font-size:11px}
.filter-checks{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.filter-checks .check-label{font-size:11px;min-width:0;line-height:1.4}
.filter-checks .check-label input{flex-shrink:0}

/* Pane headings have one truncated title and a predictable action group. */
.pane-heading{gap:7px}
.pane-heading>div:last-child{flex-shrink:0;display:flex;align-items:center;gap:1px}
.viewer-title{display:flex;align-items:center;gap:5px;overflow:hidden;min-width:0}
.viewer-title>span:first-child{display:block;min-width:0;flex:1;color:#61748f}
.quality-label,.tiny-badge{color:#617892}

/* Review uses the actual viewer width, including manually resized panes. */
.review-controls{padding:7px 10px;min-height:0}
.review-controls .review-type-row,.review-controls .review-rating-row{min-width:0;gap:6px}
.review-controls .type-button{font-size:11px;line-height:1.2;padding:5px 7px;min-width:0;min-height:28px;color:#596e8c}
.review-controls .type-button kbd{display:inline-block;flex:0 0 auto;font-size:9px;color:#7185a0;padding:1px 3px}
.review-controls .type-button.selected{color:#245db8;border-color:#a5c0ed}
.review-controls .type-button.selected kbd{color:#4776bd}
.review-controls .type-button.pending{color:#245db8}
.review-controls .section-caption{color:#667a94;font-size:10px;min-width:43px}
.review-controls .rating-button{font-size:12px;color:#617590;flex-shrink:0}
.review-controls .rating-button.selected{color:#235dbb}
.review-controls .review-state{font-size:10px;line-height:1.4;flex:0 1 auto;max-width:150px;color:#647994}
.review-controls .review-state.ready{color:#2d7557}
.review-controls .review-state.tentative{color:#745298}
.review-controls .review-state:empty{display:none}
.review-controls .unsure-button span{display:inline}
.review-controls #review-done{margin-left:3px;font-size:12px;min-height:29px;padding:5px 10px}
@container viewer (min-width:950px){
  .review-controls{display:flex;gap:16px}
  .review-controls .review-rating-row{margin-top:0}
}
@container viewer (max-width:600px){
  .review-controls{display:block;padding:7px 8px}
  .review-controls .review-type-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
  .review-controls .review-type-row>.section-caption{display:none}
  .review-controls #review-types{display:contents}
  .review-controls .type-button{justify-content:center;padding:4px 5px;gap:3px}
  .review-controls .review-rating-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 6px;margin-top:6px}
  .review-controls .review-rating-row>.section-caption{grid-row:1;grid-column:1;min-width:0;font-size:10px}
  .review-controls .rating-buttons{grid-row:1;grid-column:2;justify-content:center;gap:3px;min-width:0}
  .review-controls .rating-button{flex:1 1 25px;min-width:22px;max-width:29px;width:auto}
  .review-controls #review-done{grid-row:1;grid-column:3;font-size:11px;min-height:29px;margin:0;padding:5px 8px;gap:5px}
  .review-controls #review-done kbd{font-size:10px;padding:1px 3px}
  .review-controls .review-state{grid-row:2;grid-column:1/-1;max-width:100%;justify-self:center;line-height:15px;padding:1px 6px}
}

/* Playback action groups wrap together rather than compressing their buttons. */
.playback-actions{flex-wrap:wrap;row-gap:6px}
.playback-actions>div{flex:0 0 auto;max-width:100%}
.playback-actions>div:last-child{margin-left:auto}
.playback-actions button{flex-shrink:0}
.viewer-pane:focus-within .playback-bar.floating.autohide{opacity:1;pointer-events:auto;transform:none}
.seek-row{color:#61758f;font-variant-numeric:tabular-nums}
.gps-row .text-button{color:#607892}
@container viewer (min-width:380px){
  .playback-actions .quiet-button{font-size:11px;gap:5px;padding:0 6px}
}
@container viewer (max-width:360px){
  .gps-row{grid-template-columns:1fr;gap:3px}
  .gps-row .gps-adjust{justify-self:end}
}

/* Dialogs share one spacing rhythm, with usable forms and wrapping actions. */
.workspace-dialog{max-width:calc(100vw - 24px);overscroll-behavior:contain}
.dialog-heading{padding:20px 24px 17px;gap:12px;position:sticky;top:0;z-index:3;background:#fff}
.dialog-heading>div{min-width:0}
.dialog-heading h2{font-size:20px;font-weight:650;color:#344c69;line-height:1.25}
.dialog-heading p{font-size:12px;color:#697d97;line-height:1.55;margin-top:6px}
.dialog-heading>.icon-button{flex-shrink:0}
.dialog-body{padding:20px 24px}
.dialog-footer{padding:14px 24px;align-items:center;flex-wrap:wrap;gap:8px;position:sticky;bottom:0;z-index:3}
.dialog-footer .primary-button,.dialog-footer .secondary-button{min-height:35px;padding:8px 13px;font-size:12px}
.form-field{gap:6px;margin-bottom:16px;min-width:0}
.form-field>label{font-size:12px;color:#536b87;line-height:1.4}
.form-field small,.inline-setting small{font-size:11px;color:#697f98;line-height:1.55}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.form-grid .form-field{min-width:0}
.workspace-dialog .form-field input:not([type]),.workspace-dialog input[type=date],.workspace-dialog input[type=time],.workspace-dialog input[type=datetime-local],.workspace-dialog input[type=email],.workspace-dialog input[type=tel],.workspace-dialog input[type=search]{min-width:0;width:100%;height:37px;border:1px solid var(--border);border-radius:7px;padding:8px 10px;background:#fff;color:inherit}
.workspace-dialog input[type=file]{max-width:100%;color:#5e738e;font-size:12px;line-height:1.5}
.workspace-dialog textarea{min-height:76px;resize:vertical;line-height:1.5}
.workspace-dialog select{max-width:100%}
.inline-setting>div{min-width:0;color:#4e6682;line-height:1.45}
.settings-section{margin-bottom:22px}
.settings-section:last-child{margin-bottom:0}
.settings-section h3{color:#425c7b;font-size:14px;line-height:1.35}
.settings-tabs{gap:4px;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain;padding:9px 20px}
.settings-tabs button{flex:0 0 auto;color:#607995;font-size:12px;white-space:nowrap}
.settings-tabs button.active{color:#245db8}
.source-note{font-size:11px;color:#667d97;line-height:1.6;overflow-wrap:anywhere}
.callout{font-size:12px;color:#587395;line-height:1.6}
.account-error{font-size:12px;color:#a73e50}
.account-error.success{color:#2b7754}
.login-dialog .dialog-heading h2{color:#344c69}
.identity-hint,.identity-meta{color:#667d97}
.address-readonly,.research-facts dd,.related-view strong{color:#536e8c}
.research-facts dt,.related-view small{color:#71869f}
.parity-tabs button{color:#5b7591;font-size:11px}
.parity-tabs button.active{color:#245c9c}
.dialog-loading{display:flex;align-items:center;gap:10px;min-height:70px;color:#5e7795;font-size:12px;line-height:1.6}
.dialog-loading>span[aria-hidden=true]{width:16px;height:16px;border:2px solid #dbe7f7;border-top-color:#3476d4;border-radius:50%;flex:0 0 auto;animation:ui-loading .8s linear infinite}
@keyframes ui-loading{to{transform:rotate(360deg)}}
.dialog-load-error{padding:14px 16px;border:1px solid #ecd7dc;background:#fff9fa;border-radius:8px;color:#984e5b;font-size:12px;line-height:1.6}
.dialog-load-error strong{display:block;font-weight:650;margin-bottom:5px}
.dialog-load-error p{margin:0}
.dialog-load-error .source-note{color:#865966}
.dialog-load-error .secondary-button{min-height:32px;padding:6px 11px;font-size:12px}
.job-caption,.progress-stats{font-size:11px;color:#687e97}
.job-heading{color:#486583}
.empty-state h2{color:#486381}
.empty-state p{color:#687e97}
.empty-state,.team-empty{line-height:1.55}
.viewer-empty p{line-height:1.75}
.toast{line-height:1.5}
.review-skeleton{color:#687e97;font-size:12px;line-height:1.6}
.screenshot-loading{color:#a5b8d1;text-align:center;padding:16px;line-height:1.5}
.playback-recovery strong{line-height:1.3}
.playback-recovery p{line-height:1.6}
.danger-note{color:#a24754;line-height:1.6}
.menu-navigation .menu-nav-title{color:#627893;font-size:11px}

/* Team cards expose useful information with the same readable secondary text. */
.team-dialog .dialog-heading p{color:#697d97}
.team-dialog .dialog-body{padding:20px 24px}
.team-section-title h3,.team-account-layout form h3{color:#4b6687}
.team-section-title>span,.team-person small,.team-account-row small,.team-edit small{color:#6d839d}
.team-person strong,.team-account-row strong,.team-edit strong{color:#486583}
.team-metrics small,.team-output,.assigned-recording-list small{font-size:10px;color:#6d839d}
.team-metrics strong{color:#46668c}
.team-account-layout{grid-template-columns:minmax(190px,.8fr) minmax(0,1fr);gap:22px}
.team-account-layout>section{min-width:0}
.team-account-layout form{padding:18px}
.team-account-row .status-badge{flex-shrink:0}
.team-account-row strong,.team-account-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-account-layout input[readonly]{color:#70839b}
.team-assignment-callout strong{color:#4f7098}
.team-assignment-callout small{font-size:11px;color:#687f9c}
.team-empty h3{color:#4d698b}
.team-empty p{color:#6c819b}
.assigned-recording-list strong{color:#5c7696}

/* Pipeline content scales inside its pane and scrolls tables without body overflow. */
.leads-pane{padding:24px;container-type:inline-size;container-name:leads;overscroll-behavior:contain}
.workspace.pane-layout-managed>.leads-pane{flex-direction:column}
.leads-top,.metrics-grid,.leads-table-wrap{flex-shrink:0}
.leads-top{gap:16px;flex-wrap:wrap;margin-bottom:20px}
.leads-top>div:first-child{min-width:0}
.leads-top h1{font-size:25px;color:#344e6e;line-height:1.25}
.leads-top p{color:#6d819a;line-height:1.6;margin-top:6px}
.leads-top>div:last-child{flex-wrap:wrap;max-width:100%}
.metric-card>span{color:#5b7592;font-size:12px;line-height:1.4}
.metric-card strong{color:#385b84;margin:9px 0 4px}
.metric-card small{color:#7488a1;font-size:11px;line-height:1.45}
.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}
.leads-scroll-hint{display:none;font-size:11px;color:#667d97;line-height:1.5;margin:-7px 0 10px;flex-shrink:0}
.leads-table-wrap{max-width:100%;scrollbar-width:thin;overscroll-behavior:contain}
.leads-table th{color:#5d7390;font-size:11px;letter-spacing:.35px;padding:12px 16px;position:sticky;top:0;z-index:2;box-shadow:inset 0 -1px #dde5f1}
.leads-table td{padding:12px 16px;color:#5c7494}
.leads-table td:first-child{color:#415e80}
.lead-cell .lead-open-button{display:block;min-width:160px;max-width:350px;text-align:left;white-space:normal;line-height:1.5;color:#415e80;font-size:12px;font-weight:500;padding:4px 5px;margin:-4px -5px;border-radius:5px}
.lead-cell .lead-open-button:hover{background:#edf4ff;color:#245eb5}
.lead-cell small{color:#7286a0}
.lead-cell .lead-open-button small{font-size:10px;font-weight:400;color:#7286a0}
.leads-table tbody tr:last-child td{border-bottom:0}
.leads-table tbody tr:hover{background:#f2f6fd}
@container leads (max-width:900px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.leads-scroll-hint{display:block}}

/* Roomy desktops scroll the rows while keeping their column labels in view. */
@media(min-width:801px) and (min-height:600px){
  .leads-table-wrap{flex:0 1 auto;min-height:120px}
}
/* Leads keeps mobile library access in the header, clear of scrolling content. */
@media(max-width:580px){
  .mode-leads .app-header{height:auto;min-height:74px;flex-basis:auto;flex-wrap:wrap;gap:2px 6px;padding:6px 9px}
  .mode-leads .main-nav{flex:1;justify-content:flex-end;height:32px}
  .mode-leads .header-tools{flex:1 1 100%;justify-content:flex-end;height:28px}
  .mode-leads .header-tools .icon-button{width:30px;height:28px}
  .mode-leads .header-tools .quiet-button{height:28px}
  .mode-leads .header-tools .account-button{height:28px;padding-top:1px;padding-bottom:1px}
  .mode-leads .pane-library-restore{position:fixed;top:43px;left:9px;right:auto;transform:none;z-index:20}
  .header-tools #fullscreen-button{display:inline-flex}
}
/* A wrapped mobile header must give every row its own height. */
@media(max-width:480px){
  .app-header{height:auto;min-height:74px;flex-basis:auto;flex-wrap:wrap;gap:2px 6px;padding:6px 9px}
  .main-nav{flex:1;justify-content:flex-end;height:32px}
  .header-tools{flex:1 1 100%;justify-content:flex-end;height:28px}
  .header-tools .icon-button{width:30px;height:28px}
  .header-tools .quiet-button{height:28px}
  .header-tools .account-button{height:28px;padding-top:1px;padding-bottom:1px}
}
@media(max-width:650px){
  .team-dialog .dialog-body{padding:16px}
  .team-account-layout{grid-template-columns:minmax(0,1fr);gap:18px}
  .team-tabs{padding:9px 12px}
}
@media(max-width:520px){
  .workspace-dialog{width:calc(100vw - 20px);max-height:92dvh;max-width:calc(100vw - 20px)}
  .dialog-heading{padding:17px 18px 14px}
  .dialog-body{padding:17px 18px}
  .dialog-footer{padding:12px 18px}
  .dialog-footer .primary-button,.dialog-footer .secondary-button{font-size:11px;padding:8px 10px;white-space:normal}
  .form-grid{grid-template-columns:minmax(0,1fr);gap:10px}
  .settings-tabs{padding:8px 14px}
  .settings-tabs button{padding:7px 10px;font-size:11px}
  .leads-pane{padding:16px}
  .leads-top>div:last-child{flex-direction:row;gap:6px}
  .leads-top h1{font-size:22px}
  .metric-card{padding:14px}
  .leads-table th,.leads-table td{padding:11px 13px}
  .research-facts{grid-template-columns:minmax(90px,.7fr) minmax(0,1fr);gap:7px 10px}
}



/* Tax-record research remains visibly separate from editable CRM information. */
.owner-record-column{width:190px;min-width:170px}
.owner-record-cell{display:block;width:100%;max-width:230px;min-width:145px;padding:4px 6px;margin:-4px -6px;border-radius:5px;text-align:left;color:#4d6786;line-height:1.4}
.owner-record-cell:hover{background:#edf4ff;color:#255fa8}
.owner-record-cell strong{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:550;line-height:17px}
.owner-record-cell .owner-match-badge{display:inline-flex;margin-top:4px}
.owner-record-empty{font-size:11px;color:#788ba2}
.owner-match-badge{display:inline-flex;align-items:center;max-width:100%;padding:2px 5px;border-radius:4px;background:#f0f3f8;color:#667c96;font-size:10px;line-height:15px;white-space:nowrap}
.owner-match-badge.high{background:#eaf5ef;color:#2d7557}
.owner-match-badge.needs-review{background:#fff4e5;color:#95621e}
.owner-match-badge.unavailable{background:#f1f3f7;color:#6d7e95}
.owner-match-badge.stale{background:#f3eefb;color:#765498}
.owner-summary-line{flex-shrink:0;margin:0 0 12px;color:#687e97;font-size:11px;line-height:1.5}
.owner-summary-line strong{color:#526f8e;font-weight:600}
.owner-force-option{align-items:flex-start;line-height:1.5}
.owner-force-option input{flex-shrink:0;margin-top:3px}
.owner-job-counts{margin-top:10px;padding-top:9px;border-top:1px solid #edf1f6;color:#607a97;font-size:11px;line-height:1.5}
.public-records-section{padding-bottom:20px;border-bottom:1px solid #e8edf4}
.owner-evidence-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:0 0 10px}
.owner-evidence-heading>span:last-child{font-size:10px;color:#6f849e;line-height:1.5}
.owner-evidence-reason{margin:0 0 12px;font-size:12px;color:#5c7492;line-height:1.55;overflow-wrap:anywhere}
.owner-evidence-card{padding:13px 15px;border:1px solid #dde6f1;border-radius:8px;margin:10px 0;background:#fbfcfe;line-height:1.5}
.owner-evidence-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.owner-evidence-card-heading strong{font-size:13px;color:#3d5878;font-weight:600;overflow-wrap:anywhere}
.owner-evidence-card-heading small{font-size:10px;color:#6d839d;white-space:nowrap}
.owner-evidence-kind{font-size:10px;color:#71869f;margin:3px 0 0}
.owner-evidence-facts{display:grid;grid-template-columns:112px minmax(0,1fr);gap:6px 12px;margin:12px 0;font-size:11px;line-height:1.55}
.owner-evidence-facts dt{color:#71869f}
.owner-evidence-facts dd{color:#4e6887;margin:0;overflow-wrap:anywhere;white-space:normal;user-select:text}
.owner-source-link{display:inline-flex;font-size:11px;font-weight:550;line-height:1.5}
.owner-check-property{margin-top:4px;min-height:32px;padding:7px 10px;font-size:11px}
.owner-evidence-note{font-size:11px;line-height:1.6}
.owner-evidence-error{margin:10px 0;color:#a14f5b;font-size:12px;line-height:1.5}
@media(max-width:520px){.owner-evidence-card{padding:12px}.owner-evidence-facts{grid-template-columns:90px minmax(0,1fr);gap:6px 10px}.owner-summary-line{font-size:10px}}

.owner-address-coverage{margin:14px 0 17px;padding:12px 14px;border:1px solid #e1e8f1;border-radius:7px;background:#fbfcfe}.owner-address-coverage h4{font-size:12px;color:#4c6685;margin:0 0 8px}.owner-address-coverage ul{list-style:none;margin:0;padding:0}.owner-address-coverage li{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid #ebeff5;font-size:11px;line-height:1.5}.owner-address-coverage li>span:first-child{min-width:0;overflow-wrap:anywhere}.owner-address-coverage .owner-match-badge{flex-shrink:0}.owner-coverage-warning{font-size:11px;line-height:1.5;color:#976322;margin:0 0 10px}@media(max-width:420px){.owner-address-coverage li{flex-direction:column;gap:4px}}

/* Keep public-record addresses and owner mail visible beside the saved lead. */
.owner-record-column{width:285px;min-width:245px}.owner-record-cell{max-width:310px;min-width:220px;padding:6px 8px;margin:-6px -8px}.owner-record-cell strong{max-width:none;overflow:visible;text-overflow:clip;white-space:normal;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.owner-record-cell .owner-record-meta,.owner-record-cell .owner-record-address-difference{display:block;white-space:normal;margin-top:7px;font-size:10px;line-height:1.5;color:#586f8b;overflow-wrap:anywhere}.owner-record-meta>span{font-size:9px;color:#788da5;display:block;letter-spacing:.02em}.owner-record-cell .owner-record-address-difference{padding:7px 8px;border-left:2px solid #d9a15b;background:#fff7eb;border-radius:3px;color:#805920}.owner-record-address-difference>span:first-child{display:block;font-size:9px;font-weight:650;margin-bottom:2px}.owner-record-address-difference .owner-record-saved{display:block;margin-top:3px;color:#766d60;font-size:9px}.owner-summary-line{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.owner-summary-line p{margin:0}.owner-export-link{font-size:11px;white-space:nowrap;font-weight:550}.owner-address-difference{margin:14px 0;padding:12px 14px;border:1px solid #edddc4;border-radius:7px;background:#fff9f0}.owner-address-difference h4,.owner-extra-facts h4{margin:0 0 8px;font-size:12px;font-weight:600;color:#775c35}.owner-address-difference dl{display:grid;grid-template-columns:100px minmax(0,1fr);gap:5px 10px;font-size:11px;line-height:1.6;margin:0}.owner-address-difference dt{color:#8b7a65}.owner-address-difference dd{margin:0;color:#71552f;overflow-wrap:anywhere}.owner-address-difference p{font-size:11px;line-height:1.6;color:#89734f;margin:9px 0 0}.owner-extra-facts{border-top:1px solid #e1e8f0;margin-top:14px;padding-top:12px}.owner-extra-facts h4{color:#526c88}.owner-extra-facts .owner-evidence-facts{margin:8px 0 10px}.owner-extra-facts .source-note{margin-bottom:0}@media(max-width:520px){.owner-record-column{min-width:235px}.owner-address-difference dl{grid-template-columns:90px minmax(0,1fr)}.owner-summary-line{gap:7px}.owner-export-link{font-size:10px}}

.owner-multiple-candidates{display:block;font-size:9px;color:#8a672f;margin-top:5px;line-height:1.5;white-space:normal}

.owner-intent-confirmation{border-left:3px solid #d29135;background:#fff7e8}.owner-intent-confirmation .owner-intent-question{font-weight:650;color:#76511f}.owner-intent-confirmation p:last-child{color:#745a37}

/* Leads owns the whole workspace; its shared filters live in a compact drawer. */
.leads-filters-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(390px,100vw);height:100dvh;max-width:100vw;max-height:100dvh;border:0;border-left:1px solid #dfe6ef;border-radius:0;padding:0;background:#fff;color:#455c78;box-shadow:-12px 0 40px #20395420}
.leads-filters-dialog[open]{display:flex;flex-direction:column}
.leads-filters-dialog::backdrop{background:#24374f38}
.leads-filters-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:24px 22px 20px;border-bottom:1px solid #e8edf4;flex-shrink:0}
.leads-filters-heading h2{font-size:20px;letter-spacing:-.4px;color:#344e6e}
.leads-filters-heading p{font-size:12px;line-height:1.5;color:#71839b;margin-top:6px}
.leads-filters-content{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px 22px;scrollbar-width:thin}
.leads-filters-content .library-filters{padding:0}
.leads-filters-content .search-box{height:38px;margin-bottom:16px}
.leads-filters-content .search-box input{font-size:12px}
.leads-filters-content .filter-row{gap:8px;margin-top:10px;flex-wrap:wrap}
.leads-filters-content .filter-row select{height:38px;font-size:12px}
.leads-filters-content #scope-filter{width:100px}
.leads-filters-content #status-filter{flex:1 0 100%;width:100%}
.leads-filters-content .filter-button{height:34px}
.leads-filters-content .types-popover{position:static;max-height:none;margin-top:16px;overflow:visible;box-shadow:none;padding:16px 12px;border-color:#e5ebf3;border-radius:8px}
.leads-filters-content .filter-checks{gap:12px 8px}
.leads-filters-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:18px 22px;border-top:1px solid #e8edf4;background:#fafbfd}
.leads-filters-footer>span{font-size:11px;line-height:1.5;color:#6a7e98}
.leads-top #leads-filters-button svg{width:16px;height:16px}
.mode-leads .leads-pane{width:100%}
@media(max-width:580px){.leads-filters-heading{padding:20px 18px 18px}.leads-filters-content{padding:18px}.leads-filters-footer{padding:16px 18px}}

/* Identify keeps address entry and its primary action clear in narrow viewer panes. */
.identify-card{container-type:inline-size;container-name:identify;overscroll-behavior:contain;scrollbar-width:thin}
.identify-card .dialog-heading h2{font-size:16px;line-height:1.35}
.identify-card .identity-hint{font-size:12px;line-height:1.6}
.identify-card .address-row{display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:6px 7px;margin-bottom:14px}
.identify-card .address-row label{grid-column:1/-1;display:flex;align-items:center;gap:8px;color:#61758f;font-size:11px;line-height:1.4}
.identify-card .address-row label small{font-size:10px;color:#426daa;background:#eff4fc;border-radius:4px;padding:1px 5px}
.identify-card .address-row input{width:100%;font-size:12px;min-height:37px;color:#405978}
.identify-card .address-row button{height:30px;color:#647b97;font-size:17px}
.identify-card .identity-meta{font-size:11px;color:#667b95;font-variant-numeric:tabular-nums}
.identify-card .type-button{color:#526b8a;min-height:30px}
.identify-card .type-button.selected{color:#245db8}
.identify-card .rating-button{font-size:12px;color:#60758f}
.identify-card .rating-button.selected{color:#245db8}
.identify-card .section-caption,.identify-card .identity-rating small{font-size:10px;color:#637994}
.identify-card .dialog-footer>.icon-button{flex:0 0 30px;width:30px;height:32px;padding:6px}
@container identify (max-width:360px){
  .identify-card .identity-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .identify-card .identity-types .type-button{justify-content:center;padding:5px 4px;gap:3px}
  .identify-card .dialog-footer{display:grid;grid-template-columns:30px 30px minmax(0,1fr);gap:8px}
  .identify-card .dialog-footer>.secondary-button{justify-self:end}
  .identify-card #identity-submit{grid-column:1/-1;width:100%;min-height:36px}
}
/* Leave room below the fixed Identify origin in short windows. */
@media(min-width:581px){.identify-card{max-height:min(720px,calc(100dvh - 130px))}}
@media(max-width:580px){.identify-card{max-height:min(720px,calc(100dvh - 90px))}}

/* Saved-view actions follow the information they act on; the footer stays compact. */
.details-property-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-10px 0 22px}
.details-property-actions .secondary-button{min-height:33px;padding:7px 11px;font-size:12px;color:#315f99;border-color:#d7e3f4;background:#f5f8fe}
.details-property-actions .secondary-button:hover{background:#edf4ff;border-color:#bdd1ee}
.details-tools{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin-top:16px;padding-top:11px;border-top:1px solid #e8edf4}
.details-tools button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:6px 8px;border:1px solid transparent;border-radius:5px;background:transparent;box-shadow:none;color:#536f90;font-size:11px;font-weight:500;line-height:1.4;white-space:nowrap}
.details-tools button:hover{color:#285da3;background:#eff5fc}
.details-dialog .dialog-footer{align-items:center;gap:8px}
.details-dialog .details-status{flex:1 1 80px;min-width:0;margin:0 auto 0 0;color:#61768f;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.details-dialog .dialog-footer>button{flex:0 0 auto}
#viewer-filter-context{position:absolute;top:12px;left:12px;z-index:6;max-width:calc(100% - 24px);padding:6px 9px;border:1px solid #d6e1ef;border-radius:6px;background:#f4f8fdf2;color:#425d7d;box-shadow:0 2px 9px #172e4914;font-size:11px;line-height:1.45;pointer-events:none;overflow-wrap:anywhere}
#viewer-filter-context[hidden]{display:none}
@media(max-width:520px){.details-tools{gap:3px}.details-tools button{padding:6px}.details-property-actions{margin-bottom:19px}.details-dialog .dialog-footer{gap:7px}}
/* Keep the quiet tool row visible without crowding the editable fields. */
.details-dialog .form-field{margin-bottom:14px}
.details-dialog .form-field>.identity-types{margin-top:2px}
.details-dialog .details-property-actions{margin-bottom:18px}
.details-dialog textarea{min-height:70px}
.details-dialog .details-tools{margin-top:13px;padding-top:9px}


/* Settings keep navigation and actions visible while only the form scrolls. */
.settings-dialog { overflow:hidden; }
.settings-dialog #dialog-content { display:flex; flex-direction:column; max-height:inherit; min-height:0; }
.settings-dialog .dialog-heading { position:static; padding:18px 22px 15px; flex-shrink:0; }
.settings-dialog .settings-tabs { flex-shrink:0; padding:8px 20px; background:#f7f9fc; border-block:1px solid #e7edf5; }
.settings-dialog .dialog-body { min-height:0; overflow:auto; padding:16px 22px; scrollbar-width:thin; overscroll-behavior:contain; }
.settings-dialog .dialog-footer { position:static; flex-shrink:0; padding:12px 22px; }
.settings-dialog .inline-setting { padding:10px 0; gap:16px; }
.settings-dialog .inline-setting:first-child { padding-top:0; }
.settings-dialog .inline-setting .switch { flex-shrink:0; }
.settings-dialog .settings-data { margin-top:20px; }
.settings-dialog .settings-section { margin-bottom:18px; }
.settings-dialog .settings-quick-links { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding-top:2px; }
.settings-dialog .settings-quick-links .settings-section { margin:0; }
.settings-dialog .settings-quick-links .secondary-button { font-size:12px; min-height:34px; padding:8px 10px; }
.settings-dialog .settings-section h3 { margin-bottom:10px; }
.settings-dialog .source-note { margin-top:8px; }
.settings-dialog #settings-save-status { margin:0 auto 0 0; flex:1 1 100px; }
.main-nav .nav-button { white-space:nowrap; }
@media(max-width:1100px) and (min-width:581px) {
 .app-header { gap:12px; }
 .app-header .brand { min-width:130px; }
 .main-nav { gap:1px; flex:0 0 auto; }
 .main-nav .nav-button { padding-inline:10px; }
 .header-tools { margin-left:auto; }
 .header-tools .quiet-button > span:not([data-icon]):not(.count-pill) { display:none; }
 .header-tools #account-name { display:none; }
}
@media(max-width:800px) and (min-width:581px) {
 .app-header { min-height:84px; height:auto; flex-basis:auto; display:grid; grid-template-columns:auto minmax(0,1fr); gap:2px 8px; padding:5px 12px; }
 .app-header .brand { grid-row:1; grid-column:1; }
 .app-header .header-tools { grid-row:1; grid-column:2; justify-content:flex-end; }
 .app-header .main-nav { grid-row:2; grid-column:1/-1; height:32px; justify-content:center; }
 .main-nav .nav-button { height:30px; padding-inline:16px; }
}
@media(max-width:520px) {
 .settings-dialog .dialog-heading { padding:16px 18px 12px; }
 .settings-dialog .dialog-body { padding:14px 18px; }
 .settings-dialog .settings-tabs { padding:7px 14px; }
 .settings-dialog .dialog-footer { padding:10px 18px; }
 .settings-dialog .settings-quick-links { grid-template-columns:1fr; gap:14px; }
}
@media(prefers-reduced-motion:reduce) {
 .app-header button,.workspace-dialog button,.pane-resizer,.playback-bar,.toast { transition:none!important; }
}

@media(max-width:580px) {
 .app-header,.mode-leads .app-header { display:grid; grid-template-columns:auto minmax(0,1fr); min-height:78px; gap:2px 6px; padding:5px 9px; }
 .app-header .brand { grid-row:1; grid-column:1; min-width:0; }
 .app-header .header-tools,.mode-leads .header-tools { grid-row:1; grid-column:2; margin-left:auto; justify-content:flex-end; height:30px; }
 .app-header .main-nav,.mode-leads .main-nav { grid-row:2; grid-column:1/-1; min-width:0; height:32px; justify-content:center; }
 .app-header .main-nav .nav-button { height:30px; padding-inline:10px; font-size:12px; }
}

/* A form's pending/error status stays next to its own controls, with readable wrapping. */
.dialog-action-status { flex: 1 1 160px; min-width: 0; margin-right: auto; overflow-wrap: anywhere; }
.dialog-action-status:empty { display: none; }
@media (max-width: 580px) {
  .dialog-action-status { flex-basis: 100%; text-align: left; }
}

/* Direct owner editing stays compact, with evidence and notes available on demand. */
.owner-details-form{display:grid;gap:13px}
.owner-details-form>.source-note{margin:0}
.owner-details-form textarea,.owner-details-form input{max-width:100%}
.owner-details-form .form-grid{margin:0}
.owner-details-reference,.owner-details-notes{border:1px solid #dfe7f1;border-radius:8px;padding:9px 11px;font-size:12px}
.owner-details-reference summary,.owner-details-notes summary{cursor:pointer;color:#47668c;font-weight:550}
.owner-details-reference p{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:10px 0 6px;overflow-wrap:anywhere}
.owner-details-reference small{color:#788ba2}
.owner-details-notes .form-field{margin-top:10px}
.owner-details-status{display:flex;gap:5px;flex-wrap:wrap;font-size:10px;line-height:1.4}
.owner-details-status .owner-missing-chip{color:#9c622c;background:#fff5e7;border-radius:4px;padding:2px 5px}
.owner-details-status .owner-manual-chip{color:#476c94;background:#eff5fc;border-radius:4px;padding:2px 5px}
.owner-details-edit{font-size:10px!important;min-height:20px;padding:1px 5px!important;border:1px solid #d7e2ef!important;border-radius:5px!important;background:#f8fbff!important;color:#426b9e!important;white-space:nowrap}
.owner-details-edit:hover{background:#eef5ff!important;border-color:#b9cce5!important}
