/* v0.9.4: readable stage selection and compact controls at every width. */
.funnel-page { min-width: 0; }
.funnel-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 16px; margin-bottom: 12px; }
.funnel-overview { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; min-width: 0; }
.funnel-overview > strong { font-size: 16px; }
.funnel-overview > span { font-size: 12px; color: var(--muted); }
.funnel-overview .funnel-sync-status { flex-basis: 100%; font-size: 11px; }
.funnel-sync-status.is-error { color: var(--danger); }
.funnel-toolbar-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 7px; }
.funnel-toolbar .btn { min-height: 38px; padding: 8px 12px; font-size: 13px; white-space: normal; }
.funnel-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 12px; }
.funnel-filters .field { margin: 0; min-width: 0; flex: 0 1 180px; }
.funnel-filters .funnel-search { flex: 1 1 250px; }
.funnel-filters .funnel-task-filter { flex-basis: 160px; }
.funnel-filters input, .funnel-filters select { width: 100%; max-width: 100%; min-width: 0; min-height: 40px; padding: 8px 10px; font-size: 14px; }
.funnel-filters .btn { min-height: 40px; font-size: 13px; }
.funnel-table-hint { margin: 0 0 8px; font-size: 12px; line-height: 1.5; color: var(--muted); }
.funnel-list { overflow: visible; border-radius: 9px; margin-bottom: 10px; }
.funnel-table-scroll { width: 100%; min-width: 0; max-width: 100%; overflow: visible; }
.funnel-page .funnel-table { display: table; width: 100%; min-width: 0; max-width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; margin: 0; font-size: 14px; }
.funnel-page .funnel-table thead { display: table-header-group; }
.funnel-page .funnel-table tbody { display: table-row-group; }
.funnel-page .funnel-table tr { display: table-row; border: 0; padding: 0; margin: 0; }
.funnel-page .funnel-table th, .funnel-page .funnel-table td { display: table-cell; vertical-align: top; text-align: left; padding: 12px 11px !important; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 14px; line-height: 1.45; white-space: normal; overflow-wrap: anywhere; }
.funnel-page .funnel-table th { color: #354c67; background: var(--accent-soft, #edf5fb); font-size: 13px; font-weight: 650; text-transform: none; letter-spacing: 0; }
.funnel-page .funnel-table th:first-child { border-top-left-radius: 8px; }
.funnel-page .funnel-table th:last-child { border-top-right-radius: 8px; }
.funnel-page .funnel-table th:last-child, .funnel-page .funnel-table td:last-child { border-right: 0; }
.funnel-page .funnel-table tbody tr:last-child > td { border-bottom: 0; }
.funnel-page .funnel-table td::before { display: none; content: none; }
.funnel-page .funnel-table th:nth-child(1), .funnel-table .funnel-col-client { width: 25%; }
.funnel-page .funnel-table th:nth-child(2), .funnel-table .funnel-col-contact { width: 12%; }
.funnel-page .funnel-table th:nth-child(3), .funnel-table .funnel-col-stage { width: 13%; }
.funnel-page .funnel-table th:nth-child(4), .funnel-table .funnel-col-lesson { width: 19%; }
.funnel-page .funnel-table th:nth-child(5), .funnel-table .funnel-col-next { width: 12%; }
.funnel-page .funnel-table th:nth-child(6), .funnel-table .funnel-col-comment { width: 19%; }
.funnel-page .funnel-lead-row > td { background: var(--surface); }
.funnel-page .funnel-lead-row:hover > td { background: #fcfdff; }
.funnel-page .funnel-lead-row:focus-within > td { background: #f8fbfe; }
.funnel-client-heading, .funnel-name-cell { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 9px; min-width: 0; }
.funnel-client-heading > *, .funnel-name-cell > * { min-width: 0; max-width: 100%; }
.funnel-client-name-wrap { display: flex; align-items: baseline; gap: 3px; flex: 1 1 130px; min-width: 0; }
.funnel-client-name-wrap .funnel-client-name { min-width: 0; flex: 1; }
.funnel-client-heading > .funnel-inline-editor { flex: 1 1 100%; }
.funnel-page .funnel-client-name, .funnel-name-cell .text-link { color: var(--accent); font-size: 15px; line-height: 1.4; font-weight: 650; overflow-wrap: anywhere; }
.funnel-client-age, .funnel-age-badge { display: inline-flex; align-items: center; padding: 2px 7px; border-radius: 5px; color: #536a85; background: #edf3f9; font-size: 12px; white-space: normal; }
.funnel-page .funnel-table .sub { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.funnel-inline-field { min-width: 0; max-width: 100%; margin: 0; }
.funnel-field-line { min-width: 0; max-width: 100%; }
button.funnel-inline-field, .funnel-inline-field > button, .funnel-cell-text { display: block; width: 100%; min-width: 0; max-width: 100%; min-height: 30px; padding: 4px 0; color: inherit; background: transparent; text-align: left; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 14px; line-height: 1.45; }
.funnel-inline-field.is-readonly { display: block; width: 100%; min-height: 30px; padding: 4px 0; font-size: 14px; line-height: 1.45; white-space: pre-wrap; overflow-wrap: anywhere; }
.funnel-inline-field.is-empty { color: var(--muted); }
.funnel-client-phone { font-variant-numeric: tabular-nums; }
.funnel-page button.funnel-lesson-date, .funnel-page .funnel-inline-field.funnel-lesson-date { font-size: 15px; font-weight: 650; }
.funnel-lesson-type { color: var(--muted); }
.funnel-client-heading .funnel-field-line { flex: 0 1 auto; }
.funnel-client-heading .funnel-age-badge { width: auto; min-height: 26px; padding: 3px 7px; font-size: 12px; color: #536a85; background: #edf3f9; }
.funnel-inline-field > button:hover, button.funnel-inline-field:hover, .funnel-cell-text:hover { color: var(--accent-ink, var(--accent)); text-decoration: underline; text-underline-offset: 3px; }
.funnel-field-label, .funnel-inline-label { display: block; margin: 2px 0; font-size: 11px; line-height: 1.35; color: var(--muted); }
.funnel-inline-placeholder { color: var(--muted); font-size: 12px; }
.funnel-edit-button { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 28px; min-width: 28px; min-height: 28px; padding: 4px; color: var(--muted); background: transparent; border-radius: 5px; font-size: 16px; }
.funnel-edit-button:hover { color: var(--accent); background: var(--accent-soft, #edf5fb); }
.funnel-inline-editor { min-width: 0; width: 100%; max-width: 100%; padding: 6px; margin: 3px 0; border: 1px solid #8dbbdc; border-radius: 7px; background: #fff; }
.funnel-inline-editor > .funnel-field-label { margin: 0 0 4px; }
.funnel-inline-editor input, .funnel-inline-editor select, .funnel-inline-editor textarea { display: block; width: 100%; min-width: 0; max-width: 100%; min-height: 36px; padding: 6px; border: 1px solid var(--line); border-radius: 5px; background: #fff; color: var(--ink); font-size: 14px; line-height: 1.45; }
.funnel-inline-editor textarea { resize: vertical; min-height: 76px; white-space: pre-wrap; overflow-wrap: anywhere; }
.funnel-inline-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 76px), 1fr)); align-items: stretch; gap: 6px; margin-top: 6px; }
/* This specificity also normalizes the global outlined .btn.ghost.small padding. */
.app-shell .funnel-page .funnel-inline-editor .funnel-inline-actions .btn { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0; max-width: 100%; min-height: 36px; padding: 6px; margin: 0; border-width: 1px; border-radius: 5px; font-size: 12px; line-height: 1.3; white-space: normal; overflow-wrap: normal; text-align: center; }
.funnel-inline-editor[data-inline-status="conflict"] .funnel-inline-actions { grid-template-columns: minmax(0, 1fr); }
.funnel-inline-hint { display: block; margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.4; overflow-wrap: anywhere; }
.app-shell .funnel-page .funnel-inline-editor :is(input, select, textarea, button):focus-visible,
.funnel-page :is(.funnel-inline-field, .funnel-edit-button, .funnel-archive-toggle, .funnel-client-name):focus-visible { outline: 2px solid var(--accent-ink, var(--accent)); outline-offset: -2px; }
.funnel-inline-error { margin-top: 6px; color: var(--danger); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.funnel-inline-error:empty { display: none; }
.funnel-inline-current { margin-top: 7px; padding: 7px; background: #f2f6fa; border-radius: 5px; }
.funnel-inline-current small { color: var(--muted); font-size: 11px; }
.funnel-inline-current p { margin-top: 3px; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.45; }
.funnel-stage { display: inline-flex; align-items: center; max-width: 100%; min-height: 30px; padding: 5px 7px; border-radius: 6px; color: #1e6488; background: #eaf3f9; font-size: 12px; font-weight: 600; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
/* Native select retains keyboard and mobile picker behavior; the visible caption can wrap. */
.funnel-stage-select { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 14px; align-items: center; gap: 6px; width: 100%; min-width: 0; min-height: 36px; padding: 7px; border: 1px solid currentColor; border-radius: 5px; color: #1e6488; background: #eaf3f9; font-size: 13px; font-weight: 600; line-height: 1.4; }
.funnel-stage-select-value { min-width: 0; white-space: normal; overflow-wrap: anywhere; pointer-events: none; }
.funnel-stage-select-arrow { display: flex; align-items: center; justify-content: center; width: 14px; pointer-events: none; }
.app-shell .funnel-page .funnel-inline-editor .funnel-stage-select > select { position: absolute; inset: 0; display: block; width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0; opacity: 0; cursor: pointer; }
.app-shell .funnel-page .funnel-stage-select:focus-within { outline: 2px solid var(--accent-ink, var(--accent)); outline-offset: 2px; }
.funnel-stage-select.is-disabled { opacity: .65; }
.app-shell .funnel-page .funnel-inline-editor .funnel-stage-select > select:disabled { cursor: wait; }
.funnel-stage.is-paid, .funnel-stage-select.is-paid { color: #246444; background: #e8f5ec; }
.funnel-stage.is-attended, .funnel-stage-select.is-attended { color: #39733f; background: #eef8e9; }
.funnel-stage.is-booked, .funnel-stage-select.is-booked { color: #235ca1; background: #dfeafb; }
.funnel-stage.is-alert, .funnel-stage.is-lost, .funnel-stage-select.is-alert { color: #963e47; background: #fce9ed; }
.funnel-stage.is-paused, .funnel-stage.is-review, .funnel-stage-select.is-paused { color: #666c75; background: #edf0f3; }
.funnel-stage.is-waiting, .funnel-stage-select.is-waiting { color: #805512; background: #fff2d9; }
.funnel-stage-cell { min-width: 0; }
.funnel-conflict-marker, .funnel-conflict-link { display: inline-flex; align-items: center; justify-content: center; min-height: 28px; margin-top: 5px; padding: 4px 7px; background: #fbe5e8; color: var(--danger); border-radius: 5px; font-size: 12px; line-height: 1.4; }
.funnel-trainer-cell { display: flex; align-items: center; gap: 7px; min-width: 0; }
.funnel-trainer-cell > :not(.funnel-trainer-avatar) { min-width: 0; flex: 1; }
.funnel-trainer-cell.is-editing { display: block; width: 100%; }
.funnel-trainer-cell.is-editing > .funnel-trainer-avatar { display: none; }
.funnel-trainer-cell.is-editing > .funnel-inline-editor { width: 100%; margin: 4px 0 0; }
.funnel-trainer-avatar { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 36px; flex: 0 0 30px; border-radius: 6px; background: #e8eff6; color: #435e78; overflow: hidden; font-size: 11px; font-weight: 650; }
.funnel-trainer-avatar img, img.funnel-trainer-avatar { width: 30px; height: 36px; object-fit: cover; object-position: 50% 20%; }
.funnel-trial-time, .funnel-next-time { font-weight: 650; font-variant-numeric: tabular-nums; }
.funnel-overdue { color: var(--danger); }
.funnel-comment-text { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 14px; line-height: 1.5; }
button.funnel-inline-field.funnel-comment-text:not(.is-expanded) { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.funnel-comment-expand, .funnel-archive-toggle { display: inline-flex; align-items: center; gap: 5px; max-width: 100%; min-height: 30px; padding: 5px 0; color: var(--accent); background: transparent; text-align: left; font-size: 13px; line-height: 1.4; white-space: normal; }
.funnel-page .funnel-archive-row > td { padding: 0 !important; border-right: 0; background: var(--accent-soft, #edf5fb); }
.funnel-inline-archive { padding: 14px; }
.funnel-archive-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.funnel-archive-heading strong { font-size: 14px; }
.funnel-archive-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 8px; }
.funnel-archive-grid > * { min-width: 0; grid-column: span 3; padding: 10px; background: #ffffff85; border: 1px solid var(--chrome-line, #d9e6f0); border-radius: 7px; }
.funnel-archive-grid > :nth-child(n+5) { grid-column: span 4; }
.funnel-archive-grid .funnel-inline-field { margin-bottom: 0; }
.funnel-archive-grid dt, .funnel-archive-grid label, .funnel-archive-label { display: block; margin-bottom: 3px; color: var(--muted); font-size: 12px; line-height: 1.4; }
.funnel-archive-grid dd { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.funnel-empty { text-align: center; padding: 30px 16px; }
.funnel-empty strong { font-size: 16px; }
.funnel-empty p { margin: 8px 0 16px; color: var(--muted); font-size: 13px; line-height: 1.5; }
.funnel-pagination { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; margin: 10px 0; color: var(--muted); font-size: 12px; }
.funnel-pagination > div { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.funnel-pagination .btn { min-height: 34px; font-size: 12px; }
.funnel-source-help { margin-top: 12px; color: var(--muted); font-size: 12px; }
.funnel-source-help > summary, .funnel-history > summary, .funnel-archive > summary, .funnel-review-note > summary { min-height: 34px; padding: 7px 0; color: var(--accent-ink); cursor: pointer; font-size: 13px; line-height: 1.5; }
.funnel-source-help p { max-width: 850px; margin: 6px 0; line-height: 1.6; }
.funnel-source-help > div { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 7px 0; }
.funnel-source-help .text-link { font-size: 13px; }
.funnel-cell-detail > p { font-size: 14px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.funnel-conflict > p { font-size: 13px; line-height: 1.5; margin-bottom: 8px; }

/* Existing dialogs, import preview and connection settings. */
.funnel-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.funnel-detail .notice{margin:12px 0;font-size:13px}.funnel-facts dd,.funnel-archive dd{white-space:pre-wrap;overflow-wrap:anywhere}.funnel-history,.funnel-archive,.funnel-review-note{border-top:1px solid var(--line);margin-top:12px;padding-top:3px}.funnel-review-note ul{padding-left:20px;font-size:12px;line-height:1.6;color:var(--muted)}.funnel-history ol{list-style:none;padding:0;margin:0}.funnel-history li{padding:10px 0;border-top:1px solid var(--line);font-size:12px;overflow-wrap:anywhere}.funnel-history strong,.funnel-history small{display:block}.funnel-history small{margin-top:3px;font-size:11px}.funnel-history p{margin-top:7px;white-space:pre-wrap;line-height:1.55}.funnel-conflict{border:1px solid #ead6d8;border-radius:9px;padding:12px;margin:10px 0}.funnel-conflict h3{font-size:13px;margin-bottom:9px}.funnel-conflict-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:10px}.funnel-conflict-values>div{background:#f7f8fb;padding:10px;border-radius:7px;min-width:0}.funnel-conflict-values small{font-weight:600}.funnel-conflict-values p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:6px}.funnel-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:18px}.funnel-import-form .form-grid{margin-bottom:12px}.funnel-import-form textarea{min-height:100px}.funnel-import-form .form-error:empty{display:none}.funnel-import-summary{display:flex;flex-direction:column;gap:7px;font-size:13px;margin-bottom:13px}.funnel-import-summary>span{font-size:12px;color:var(--muted)}.funnel-import-preview{max-height:340px;overflow:auto;border:1px solid var(--line);border-radius:8px;margin:12px 0}.funnel-import-preview table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.funnel-import-preview th,.funnel-import-preview td{padding:9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.funnel-import-preview th{position:sticky;top:0;background:#f4f6f9;font-size:11px;color:var(--muted)}.funnel-import-preview small,.funnel-import-preview strong{display:block;font-size:11px;margin-top:4px}.funnel-sync-setup{font-size:13px;line-height:1.6}.funnel-sync-setup ol{padding-left:20px;margin:15px 0}.funnel-sync-setup li{margin-bottom:7px}.funnel-sync-setup .notice{margin:12px 0}.funnel-sync-setup .small-print{margin-top:12px}.funnel-sync-setup textarea{font-family:ui-monospace,monospace;font-size:12px;overflow-wrap:anywhere}

#dialog[data-layout="funnel"] .field{margin-bottom:12px}#dialog[data-layout="funnel"] .field>span{font-size:12px}#dialog[data-layout="funnel"] .field input,#dialog[data-layout="funnel"] .field select{min-height:36px;padding:8px 10px;font-size:13px}#dialog[data-layout="funnel"] .field textarea{min-height:64px;font-size:13px}

.app-shell .funnel-page .funnel-inline-editor > select,
.app-shell .funnel-page .funnel-filters select,
#dialog[data-layout="funnel"] .field select { padding-inline-end: 32px; }

@media (min-width: 761px) and (max-width: 1200px) {
  .funnel-page .funnel-table th, .funnel-page .funnel-table td { padding: 10px 8px !important; }
  .funnel-archive-grid > * { grid-column: span 4; }
  .funnel-archive-grid > :nth-child(n+4) { grid-column: span 3; }
}
@media (max-width: 760px) {
  .funnel-toolbar { align-items: flex-start; gap: 8px; }
  .funnel-overview { flex-basis: 100%; }
  .funnel-toolbar-actions { justify-content: flex-start; gap: 6px; }
  .funnel-toolbar .btn, .funnel-filters .btn { min-height: 40px; padding: 8px 11px; font-size: 13px; }
  .funnel-filters { gap: 7px; }
  .funnel-filters .funnel-search { flex: 1 1 100%; }
  .funnel-filters .field:not(.funnel-search), .funnel-filters .funnel-task-filter { flex: 1 1 140px; }
  .funnel-filters input, .funnel-filters select { min-height: 42px; font-size: 16px; padding: 8px; }
  .funnel-list { background: transparent; border: 0; }
  .funnel-page .funnel-table, .funnel-page .funnel-table tbody { display: block; width: 100%; min-width: 0; }
  .funnel-page .funnel-table colgroup, .funnel-page .funnel-table thead { display: none; }
  .funnel-page .funnel-table tr.funnel-lead-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 8px 12px; padding: 14px; margin-top: 12px; background: var(--surface); border: 1px solid var(--line); border-radius: 9px; }
  .funnel-page .funnel-table tr.funnel-lead-row:first-child { margin-top: 0; }
  .funnel-page .funnel-table .funnel-lead-row > td { display: block; position: static; min-width: 0; width: auto; padding: 0 !important; margin: 0; border: 0; background: transparent; font-size: 14px; }
  .funnel-page .funnel-table .funnel-lead-row > td::before { display: block; content: attr(data-label); min-height: 16px; margin: 0 0 3px; color: var(--muted); font-size: 11px; line-height: 1.45; font-weight: 600; letter-spacing: 0; text-transform: none; }
  .funnel-page .funnel-table .funnel-lead-row > td:nth-child(1) { grid-column: 1 / -1; order: 0; }
  .funnel-page .funnel-table .funnel-lead-row > td:nth-child(1)::before { display: none; }
  .funnel-page .funnel-table .funnel-lead-row > td:nth-child(3) { order: 1; }
  .funnel-page .funnel-table .funnel-lead-row > td:nth-child(2) { order: 2; }
  .funnel-page .funnel-table .funnel-lead-row > td:nth-child(4) { order: 3; }
  .funnel-page .funnel-table .funnel-lead-row > td:nth-child(5) { order: 4; }
  .funnel-page .funnel-table .funnel-lead-row > td:nth-child(6) { grid-column: 1 / -1; order: 5; padding-top: 8px !important; border-top: 1px solid var(--line); }
  /* Editing gets the card width; the normal reading view remains two columns. */
  .funnel-page .funnel-table .funnel-lead-row > td:has(.funnel-inline-editor) { grid-column: 1 / -1; }
  .funnel-page .funnel-client-name, .funnel-name-cell .text-link { font-size: 16px; min-height: 40px; padding: 5px 0; }
  .funnel-client-age, .funnel-age-badge { font-size: 13px; }
  .funnel-client-heading .funnel-age-badge { min-height: 40px; font-size: 13px; }
  button.funnel-inline-field, .funnel-inline-field > button, .funnel-cell-text { min-height: 40px; font-size: 14px; }
  .funnel-edit-button { width: 40px; min-width: 40px; min-height: 40px; }
  .funnel-stage { min-height: 36px; font-size: 13px; }
  .funnel-stage-select { min-height: 42px; font-size: 16px; }
  .funnel-inline-editor input, .funnel-inline-editor select, .funnel-inline-editor textarea { min-height: 42px; font-size: 16px; }
  .app-shell .funnel-page .funnel-inline-editor .funnel-inline-actions .btn { min-height: 40px; }
  .funnel-inline-hint { font-size: 11px; }
  .funnel-comment-expand, .funnel-archive-toggle, .funnel-conflict-marker, .funnel-conflict-link { min-height: 40px; }
  .funnel-page .funnel-table tr.funnel-archive-row { display: block; border: 1px solid var(--chrome-line, #d9e6f0); border-top: 0; border-radius: 0 0 9px 9px; margin-top: -6px; padding: 0; background: var(--accent-soft, #edf5fb); }
  .funnel-page .funnel-table .funnel-archive-row > td { display: block; width: 100%; margin: 0; padding: 0 !important; border: 0; }
  .funnel-page .funnel-table .funnel-archive-row > td::before { display: none; content: none; }
  .funnel-inline-archive { padding: 12px; }
  .funnel-archive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .funnel-archive-grid > *, .funnel-archive-grid > :nth-child(n+5) { grid-column: auto; padding: 9px; }
  .funnel-archive-grid > :last-child { grid-column: 1 / -1; }
  .funnel-pagination .btn, .funnel-dialog-actions .btn, .funnel-detail-actions .btn, .funnel-conflict .btn { min-height: 40px; }
  .funnel-source-help > div { display: grid; gap: 8px; }
  .funnel-source-help a { min-height: 40px; display: inline-flex; align-items: center; }
  .funnel-conflict-values { grid-template-columns: 1fr; gap: 7px; }
  .funnel-conflict-values > div { padding: 9px; }
  .funnel-import-preview th, .funnel-import-preview td { padding: 7px; font-size: 12px; }
  .funnel-import-preview th:first-child { width: 35%; }
  .funnel-import-preview th:nth-child(2) { width: 25%; }
  #dialog[data-layout="funnel"] .field input, #dialog[data-layout="funnel"] .field select, #dialog[data-layout="funnel"] .field textarea { font-size: 16px; min-height: 42px; }
}
@media (max-width: 430px) {
  .funnel-archive-grid { grid-template-columns: minmax(0, 1fr); }
  .funnel-archive-grid > *, .funnel-archive-grid > :last-child { grid-column: auto; }
  .funnel-page .funnel-table tr.funnel-lead-row { gap: 8px 10px; padding: 12px; }
}
.mobile-nav.manager-mobile-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
