/* Shared shell and campaign list, migrated from the approved local design. */
.app-shell--minimal { grid-template-columns: 220px minmax(0, 1fr); background: oklch(99.2% .001 255); font-size: 14px; }
.app-shell--minimal .app-rail { display: flex; flex-direction: column; gap: 27px; min-height: 100dvh; height: 100dvh; overflow-y: auto; padding: 30px 16px 16px; background: oklch(97% .004 255); color: var(--text); border-right: 1px solid oklch(90% .007 255); }
.app-shell--minimal .app-rail__brand { padding: 0 12px; border: 0; }
.app-shell--minimal .app-rail .brand { color: var(--text); font-size: 21px; font-weight: 700; letter-spacing: -.035em; }
.app-shell--minimal .app-rail__primary { margin: 0; min-height: 40px; border: 0; border-radius: 6px; background: var(--primary); font-size: 14px; font-weight: 600; transform: none; box-shadow: none; }
.app-shell--minimal .app-nav { gap: 4px; }
.app-shell--minimal .app-nav a { color: var(--text); font-size: 14px; font-weight: 500; padding: 11px 12px; border-radius: 6px; }
.app-shell--minimal .app-nav a.is-active { color: oklch(39% .14 260); background: oklch(93.5% .025 260); }
.app-shell--minimal .app-rail__footer { margin-top: auto; padding-top: 35px; }
.app-shell--minimal .app-rail__secondary { display: block; min-height: 40px; margin: 0 0 12px; border: 0; padding: 12px; background: transparent; color: var(--muted); font-size: 13px; font-weight: 400; text-align: left; box-shadow: none; transform: none; }
.app-shell--minimal .app-rail__secondary[aria-current="page"] { color: var(--primary); }
.account-menu { padding-top: 14px; border-top: 1px solid oklch(90% .007 255); font-size: 13px; }
.account-menu summary { display: flex; align-items: center; gap: 9px; min-height: 42px; padding: 5px; border-radius: 6px; cursor: pointer; list-style: none; }
.account-menu summary::-webkit-details-marker { display: none; }
.account-menu__avatar { display: grid; place-items: center; flex-shrink: 0; width: 28px; height: 28px; border-radius: 6px; background: oklch(90.5% .014 255); font-size: 12px; font-weight: 600; }
.account-menu__company { overflow-wrap: anywhere; }
.account-menu__content { display: grid; gap: 8px; padding: 10px 5px; overflow-wrap: anywhere; }
.account-menu__content > span { color: var(--muted); font-size: 12px; }
.account-menu__content button { width: fit-content; min-height: 32px; border: 0; padding: 4px 0; color: var(--text); background: transparent; cursor: pointer; }
.app-shell--minimal .app-workspace { width: 100%; max-width: 1440px; margin-inline: auto; padding: 43px clamp(22px, 3.5vw, 60px); }
.app-shell--minimal .app-topbar { align-items: center; border: 0; padding: 0; margin-bottom: 34px; }
.app-shell--minimal .app-topbar h1 { font-size: 28px; line-height: 1.2; font-weight: 600; letter-spacing: -.025em; }
.app-session-loading { padding: 30px; color: var(--text); }
.app-session-loading p { font-size: 14px; color: var(--muted); }
.campaigns-screen--minimal { display: block; }
.campaign-list-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 17px; }
.campaign-list-filters { display: flex; flex-wrap: wrap; gap: 4px; }
.campaign-list-filters button { min-height: 36px; padding: 8px 11px; border: 0; border-radius: 5px; background: transparent; color: var(--muted); font-size: 13px; cursor: pointer; }
.campaign-list-filters button[aria-pressed="true"] { color: var(--text); background: oklch(94% .006 255); font-weight: 600; }
.campaign-list-search-actions { display: flex; align-items: center; gap: 12px; }
.campaign-list-search input { width: 210px; min-height: 36px; border: 1px solid oklch(80% .01 255); border-radius: 6px; padding: 8px 11px; background: transparent; color: var(--text); font-size: 13px; }
.campaign-list-search input::placeholder { color: var(--muted); opacity: 1; }
.campaign-list-refresh { border: 0; padding: 8px 0; background: transparent; color: var(--muted); font-size: 12px; cursor: pointer; }
.campaigns-screen--minimal .campaign-ledger { overflow-x: auto; border: 0; border-top: 1px solid oklch(90% .007 255); border-radius: 0; background: transparent; box-shadow: none; }
.campaigns-screen--minimal .campaign-table { width: 100%; min-width: 0; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.campaigns-screen--minimal .campaign-table th { height: 44px; padding: 12px 16px; background: transparent; color: var(--muted); font-size: 12px; font-weight: 400; text-transform: none; letter-spacing: normal; white-space: nowrap; }
.campaigns-screen--minimal .campaign-table td { height: 76px; padding: 12px 16px; font-size: 14px; white-space: nowrap; }
.campaigns-screen--minimal .campaign-table th, .campaigns-screen--minimal .campaign-table td { border-bottom: 1px solid oklch(90% .007 255); }
.campaigns-screen--minimal .campaign-table th:first-child, .campaigns-screen--minimal .campaign-table td:first-child { padding-left: 0; }
.campaigns-screen--minimal .campaign-table td:first-child { width: 40%; min-width: 220px; white-space: normal; }
.campaigns-screen--minimal .campaign-table th:last-child, .campaigns-screen--minimal .campaign-table td:last-child { padding-right: 4px; }
.campaigns-screen--minimal .ledger-title { display: block; width: fit-content; font-size: 14px; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; text-underline-offset: 3px; }
.ledger-meta { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-top: 4px; font-size: 12px; color: var(--muted); }
.campaign-number-cell { text-align: right; }
.campaign-state { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; color: var(--muted); }
.campaign-state::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: oklch(68% .015 255); }
.campaign-state--running { color: oklch(40% .11 155); }
.campaign-state--running::before { background: oklch(48% .12 155); }
.campaign-state--paused { color: oklch(43% .09 70); }
.campaign-state--paused::before { background: oklch(59% .13 70); }
.campaign-state--ready { color: var(--primary); }
.campaign-state--ready::before { background: var(--primary); }
.campaign-state--failed { color: oklch(43% .16 28); }
.campaign-review-count { display: inline-grid; place-items: center; min-width: 25px; min-height: 25px; padding: 0 6px; border-radius: 5px; background: oklch(94% .035 80); color: oklch(39% .09 70); font-size: 13px; }
.campaign-list-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 16px; color: var(--muted); font-size: 12px; }
.campaign-list-pages { display: flex; gap: 6px; }
.campaign-list-pages button { width: 32px; height: 32px; border: 1px solid oklch(90% .007 255); border-radius: 5px; background: transparent; color: var(--text); font-size: 20px; cursor: pointer; }
.campaign-list-pages button:disabled { color: var(--muted); cursor: default; }
.campaign-list-loading > div { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 40px; min-height: 76px; align-items: center; border-bottom: 1px solid oklch(90% .007 255); }
.campaign-list-loading span[aria-hidden], .campaign-list-loading > div span { display: block; width: 65%; height: 10px; border-radius: 3px; background: oklch(93% .006 255); }
.campaign-list-message { margin-bottom: 14px; font-size: 13px; color: var(--muted); }
.campaigns-screen--minimal .api-state, .campaign-list-empty { padding: 40px 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; }
.campaign-list-empty h2 { font-size: 18px; font-weight: 600; }
.campaign-list-empty p { color: var(--muted); font-size: 14px; }
@media (hover: hover) {
  .app-shell--minimal .app-nav a:hover, .account-menu summary:hover { background: oklch(94% .006 255); }
  .campaigns-screen--minimal .ledger-title:hover { color: var(--primary); text-decoration: underline; }
  .campaign-list-refresh:hover { color: var(--primary); }
}
@media (max-width: 900px) {
  .app-shell--minimal { grid-template-columns: minmax(0, 1fr); align-content: start; }
  .app-shell--minimal .app-rail { position: static; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 14px; height: auto; min-height: 0; overflow: visible; padding: 16px 22px; border-right: 0; border-bottom: 1px solid oklch(90% .007 255); }
  .app-shell--minimal .app-rail__brand { padding: 0; }
  .app-shell--minimal .app-rail__primary { padding: 0 12px; margin-left: auto; }
  .app-shell--minimal .app-nav { display: flex; order: 3; width: 100%; }
  .app-shell--minimal .app-rail__footer { display: flex; align-items: center; margin: 0; padding: 0; gap: 12px; }
  .app-shell--minimal .app-rail__secondary { min-height: 30px; padding: 4px; margin: 0; font-size: 12px; }
  .account-menu { border: 0; padding: 0; position: relative; }
  .account-menu__company { display: none; }
  .account-menu__content { position: absolute; right: 0; z-index: 2; width: 220px; border: 1px solid oklch(90% .007 255); border-radius: 6px; background: var(--surface); padding: 15px; }
  .app-shell--minimal .app-workspace { padding: 30px 22px; }
}
@media (max-width: 600px) {
  .app-shell--minimal .app-rail { padding: 14px 16px 10px; gap: 10px; }
  .app-shell--minimal .app-rail__brand .brand { font-size: 20px; }
  .app-shell--minimal .app-rail__primary { font-size: 12px; min-height: 38px; }
  .app-shell--minimal .app-rail__footer { order: 4; justify-content: space-between; width: 100%; }
  .app-shell--minimal .app-workspace { padding: 27px 16px; }
  .app-shell--minimal .app-topbar h1 { font-size: 25px; }
  .campaign-list-toolbar { flex-direction: column-reverse; align-items: stretch; }
  .campaign-list-search-actions { justify-content: space-between; }
  .campaign-list-search { flex: 1; min-width: 0; }
  .campaign-list-search input { width: 100%; }
  .campaign-list-filters { gap: 1px; }
  .campaign-list-filters button { padding-inline: 8px; font-size: 12px; }
}

/* Calls journal uses the same restrained table and controls as campaigns. */
.calls-screen--minimal { display: block; min-width: 0; padding-top: 0; }
.journal-scope { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 22px; }
.journal-scope label { min-width: 0; }
.journal-scope select, .journal-scope input { min-height: 36px; max-width: 240px; border: 1px solid oklch(80% .01 255); border-radius: 6px; padding: 8px 11px; background: transparent; color: var(--text); font: inherit; font-size: 13px; }
.journal-scope input::placeholder { color: var(--muted); opacity: 1; }
.journal-search { margin-left: auto; }
.journal-result-filters { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 18px; }
.journal-result-filters button { min-height: 36px; border: 0; border-radius: 5px; padding: 8px 11px; background: transparent; color: var(--muted); font: inherit; font-size: 13px; cursor: pointer; white-space: nowrap; }
.journal-result-filters button[aria-pressed="true"] { color: var(--text); background: oklch(94% .006 255); font-weight: 600; }
.journal-result-filters button span { margin-left: 5px; font-variant-numeric: tabular-nums; }
.calls-screen--minimal .journal-scope-note { margin: 0 0 14px; font-size: 12px; color: var(--muted); }
.journal-scope-note button { border: 0; background: transparent; color: var(--primary); font: inherit; cursor: pointer; text-decoration: underline; }
.journal-list-body { min-width: 0; }
.journal-table-wrap { overflow-x: auto; border-top: 1px solid oklch(90% .007 255); }
.calls-screen--minimal .journal-table { width: 100%; min-width: 940px; table-layout: fixed; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.calls-screen--minimal .journal-table th, .calls-screen--minimal .journal-table td { padding: 14px 12px; border-bottom: 1px solid oklch(90% .007 255); background: transparent; text-align: left; vertical-align: top; }
.calls-screen--minimal .journal-table th { font-size: 12px; font-weight: 400; color: var(--muted); text-transform: none; letter-spacing: normal; white-space: nowrap; }
.calls-screen--minimal .journal-table td { height: 83px; font-size: 13px; }
.calls-screen--minimal .journal-table th:first-child, .calls-screen--minimal .journal-table td:first-child { width: 17%; padding-left: 0; }
.calls-screen--minimal .journal-table th:nth-child(2) { width: 12%; }
.calls-screen--minimal .journal-table th:nth-child(3) { width: 16%; }
.calls-screen--minimal .journal-table th:nth-child(4) { width: 17%; }
.calls-screen--minimal .journal-table th:last-child, .calls-screen--minimal .journal-table td:last-child { width: 105px; text-align: right; padding-right: 0; }
.calls-screen--minimal .phone-link { font-size: 14px; font-weight: 500; white-space: nowrap; }
.journal-time time, .journal-time span { display: block; }
.journal-time span { font-size: 11px; color: var(--muted); margin-top: 5px; }
.journal-source-cell { overflow-wrap: anywhere; color: var(--muted); }
.journal-campaign-link { color: var(--text); text-underline-offset: 3px; text-decoration: underline; text-decoration-color: oklch(80% .01 255); }
.journal-outcome { display: inline-block; padding-block: 3px; font-size: 13px; line-height: 1.4; }
.journal-outcome--lead { background: oklch(94% .04 155); color: oklch(35% .10 155); padding: 3px 8px; border-radius: 5px; }
.journal-outcome--review { background: oklch(94% .035 80); color: oklch(39% .09 70); padding: 3px 8px; border-radius: 5px; }
.journal-outcome--pending, .journal-outcome--deferred { color: var(--muted); }
.journal-reason { display: block; font-size: 12px; color: var(--muted); margin-top: 4px; }
.journal-summary-preview { display: block; width: 100%; padding: 0; border: 0; background: transparent; color: var(--text); font: inherit; line-height: 1.55; text-align: left; cursor: pointer; }
.journal-summary-preview span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.journal-pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.journal-pagination button { min-width: 32px; min-height: 32px; border: 1px solid oklch(85% .01 255); border-radius: 5px; background: transparent; color: var(--text); font: inherit; font-size: 12px; padding: 6px 10px; cursor: pointer; }
.journal-pagination button:disabled { color: var(--muted); cursor: default; }
.journal-summary-dialog { width: min(620px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); border: 1px solid oklch(85% .01 255); border-radius: 10px; padding: 26px; background: var(--surface); color: var(--text); }
.journal-summary-dialog::backdrop { background: rgb(15 23 42 / .3); }
.journal-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.journal-dialog-heading h2 { margin: 0; font-size: 20px; font-weight: 600; }
.journal-dialog-heading button { min-width: 36px; min-height: 36px; border: 0; border-radius: 5px; background: transparent; color: var(--text); font-size: 26px; cursor: pointer; }
#journal-summary-text { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 15px; line-height: 1.65; }
@media (hover: hover) {
  .journal-result-filters button:hover, .journal-dialog-heading button:hover { background: oklch(94% .006 255); }
  .journal-summary-preview:hover, .journal-campaign-link:hover { color: var(--primary); }
}
@media (max-width: 600px) {
  .journal-scope { gap: 8px; }
  .journal-scope label { flex: 1 1 130px; }
  .journal-scope input, .journal-scope select { width: 100%; max-width: none; font-size: 12px; }
  .journal-search { margin-left: 0; }
  .journal-result-filters { gap: 2px; }
  .journal-result-filters button { font-size: 12px; padding-inline: 8px; }
  .journal-summary-dialog { padding: 18px; }
}

.campaign-detail-screen--minimal { display: grid; gap: 24px; padding-top: 0; min-width: 0; }
.campaign-detail-screen--minimal > .campaign-back-link { justify-self: start; display: inline-flex; align-items: center; min-height: 32px; margin: 0; }
.campaign-back-link { display: inline-block; margin-bottom: 23px; color: var(--muted); font-size: 13px; text-underline-offset: 3px; }
.minimal-campaign-overview { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px 32px; margin-bottom: 24px; }
.minimal-campaign-action { display: flex; flex-direction: column; align-items: flex-end; gap: 12px; max-width: 500px; }
.minimal-campaign-action .launch-gate-note, .minimal-campaign-action .campaign-feedback, .minimal-campaign-action .campaign-feedback ul { margin-block: 0; }
.minimal-campaign-action .button { min-height: 38px; font-size: 13px; }
.minimal-campaign-progress { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-bottom: 24px; font-size: 13px; font-variant-numeric: tabular-nums; }
.minimal-campaign-progress progress { width: 100%; height: 4px; border: 0; border-radius: 3px; appearance: none; color: var(--primary); }
.minimal-campaign-progress progress::-webkit-progress-bar { background: oklch(91% .007 255); border-radius: 3px; }
.minimal-campaign-progress progress::-webkit-progress-value { background: var(--primary); border-radius: 3px; }
.minimal-campaign-progress progress::-moz-progress-bar { background: var(--primary); }
.minimal-campaign-parameters { margin: 12px 0 26px; font-size: 12px; }
.minimal-campaign-parameters summary { width: fit-content; padding: 9px 0; color: var(--muted); cursor: pointer; }
.minimal-campaign-parameters dl { display: flex; flex-wrap: wrap; gap: 18px 40px; }
.minimal-campaign-parameters dt { color: var(--muted); margin-bottom: 5px; }
.minimal-campaign-parameters dd { margin: 0; font-size: 13px; }
.minimal-campaign-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 20px; }
.minimal-campaign-toolbar label { margin-left: auto; }
.minimal-campaign-toolbar input { min-height: 36px; max-width: 210px; border: 1px solid oklch(80% .01 255); border-radius: 6px; padding: 8px 11px; background: transparent; color: var(--text); font: inherit; font-size: 13px; }
.minimal-campaign-toolbar input::placeholder { color: var(--muted); opacity: 1; }
.minimal-campaign-toolbar [data-minimal-campaign-view] { min-height: 36px; padding: 8px 11px; border: 0; border-radius: 5px; background: transparent; color: var(--muted); font-size: 13px; cursor: pointer; }
.minimal-campaign-toolbar [aria-pressed="true"] { color: var(--text); background: oklch(94% .006 255); font-weight: 600; }
.minimal-campaign-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.minimal-campaign-table th, .minimal-campaign-table td { padding: 14px 14px; border-bottom: 1px solid oklch(90% .007 255); text-align: left; vertical-align: top; }
.minimal-campaign-table th { font-size: 12px; color: var(--muted); font-weight: 400; white-space: nowrap; }
.minimal-campaign-table td { height: 72px; font-size: 13px; }
.minimal-campaign-table th:first-child, .minimal-campaign-table td:first-child { min-width: 170px; padding-left: 0; }
.minimal-campaign-table td:nth-child(2) { min-width: 140px; }
.minimal-campaign-table td:nth-child(3) { min-width: 150px; }
.minimal-campaign-table td:nth-child(4) { min-width: 200px; max-width: 340px; }
.minimal-campaign-table .phone-link { font-weight: 500; white-space: nowrap; }
.campaign-detail-screen--minimal .campaign-feedback, .campaign-run-dialog .campaign-feedback { font-size: 13px; color: var(--muted); }
.campaign-run-dialog { width: min(480px, calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 28px; border: 1px solid var(--border-subtle); border-radius: 12px; background: var(--surface); color: var(--text); box-shadow: 0 18px 60px rgb(15 23 42 / .12); }
.campaign-run-dialog::backdrop { background: rgb(15 23 42 / .3); }
.campaign-run-dialog h2 { margin: 0 0 8px; font-size: 21px; line-height: 1.3; font-weight: 600; letter-spacing: -.02em; }
.campaign-run-dialog p { font-size: 14px; line-height: 1.55; margin: 0 0 22px; }
.campaign-run-dialog .campaign-run-context { margin: 0 0 22px; font-size: 13px; color: var(--muted); overflow-wrap: anywhere; }
.campaign-run-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 24px 0 0; }
.campaign-run-dialog .campaign-launch-count-field { margin: 0; display: grid; gap: 8px; min-width: 0; max-width: none; align-content: start; }
.campaign-run-dialog .campaign-launch-count-field span { font-size: 13px; color: var(--text); font-weight: 400; }
.campaign-run-dialog .campaign-launch-count-field input { height: 44px; min-width: 0; border: 1px solid oklch(80% .01 255); border-radius: 6px; padding: 10px 12px; background: var(--surface); color: var(--text); font: inherit; font-size: 16px; font-weight: 400; font-variant-numeric: tabular-nums; width: 100%; }
.campaign-run-dialog .campaign-launch-count-field small { font-size: 12px; font-weight: 400; color: var(--muted); }
.campaign-run-dialog .campaign-feedback { margin-top: 18px; }
.campaign-run-dialog-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--border-subtle); }
.campaign-run-dialog-actions .button { width: auto; flex: 0 0 auto; font-size: 13px; font-weight: 500; min-height: 40px; border-radius: 6px; padding-inline: 14px; }
.campaign-run-dialog-actions [data-campaign-launch-action="cancel-confirm"] { border-color: var(--border-subtle); color: var(--text); background: var(--surface); }
@media (max-width: 440px) { .campaign-run-fields { grid-template-columns: minmax(0, 1fr); gap: 18px; } }
#campaign-summary-text { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 15px; line-height: 1.6; }
@media(max-width: 600px) { .minimal-campaign-overview { flex-direction: column; align-items: flex-start; } .minimal-campaign-action { align-items: flex-start; } .minimal-campaign-toolbar label { margin-left: 0; flex: 1 1 170px; } .minimal-campaign-toolbar input { width: 100%; max-width: none; } .campaign-run-dialog { padding: 20px; } }

.import-screen--minimal { display: block; min-width: 0; padding-top: 0; }
.import-flow--minimal { display: block; max-width: 660px; }
.minimal-import-form fieldset { display: grid; gap: 10px; margin: 0; padding: 0; border: 0; min-width: 0; }
.minimal-import-form label, .minimal-import-file > span { font-size: 13px; font-weight: 500; }
.minimal-import-form input[type="text"] { min-width: 0; min-height: 40px; padding: 9px 12px; border: 1px solid oklch(80% .01 255); border-radius: 6px; background: transparent; color: var(--text); font: inherit; font-size: 14px; }
.minimal-import-form input::placeholder { color: var(--muted); opacity: 1; }
.minimal-import-file { display: grid; gap: 10px; margin-top: 18px; }
.minimal-import-drop { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; min-height: 128px; padding: 20px; border: 1px dashed oklch(75% .012 255); border-radius: 8px; cursor: pointer; }
.minimal-import-drop strong { color: var(--primary); font-size: 14px; font-weight: 500; }
.minimal-import-drop span { color: var(--muted); font-size: 12px; font-weight: 400; text-align: center; }
.minimal-import-drop:focus-within { outline: 2px solid var(--primary); outline-offset: 3px; }
.import-screen--minimal .minimal-import-filename { margin: 0; font-size: 13px; color: var(--text); overflow-wrap: anywhere; }
.minimal-import-preview { margin-top: 24px; }
.minimal-import-preview h2 { font-size: 17px; font-weight: 600; margin: 0 0 16px; }
.minimal-import-preview table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.minimal-import-preview th, .minimal-import-preview td { text-align: left; padding: 11px 0; border-bottom: 1px solid oklch(90% .007 255); font-size: 13px; font-weight: 400; }
.minimal-import-preview th { color: var(--muted); }
.import-screen--minimal .minimal-import-preview p { font-size: 12px; color: var(--muted); }
.minimal-import-preview details { margin-top: 18px; font-size: 13px; }
.minimal-import-preview summary { cursor: pointer; padding-block: 8px; }
.minimal-import-preview li { margin: 8px 0; line-height: 1.5; overflow-wrap: anywhere; }
.minimal-import-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 28px; border-top: 1px solid oklch(90% .007 255); padding-top: 20px; }
.minimal-import-actions .button, .minimal-import-success .button { min-height: 38px; font-size: 13px; width: auto; flex: 0 0 auto; white-space: nowrap; }
.minimal-import-actions a.button { border-color: oklch(80% .01 255); color: var(--text); }
.import-screen--minimal .api-state { padding: 12px 0; margin: 8px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.import-screen--minimal .api-state p { font-size: 13px; margin: 0; }
.import-screen--minimal .api-state--error p { color: oklch(40% .14 28); }
.minimal-import-success h2 { font-size: 21px; font-weight: 600; }
.minimal-import-another { display: inline-block; margin-left: 20px; font-size: 13px; text-underline-offset: 3px; }
@media (hover: hover) { .minimal-import-drop:hover { border-color: var(--primary); background: oklch(97% .006 255); } }
@media (max-width: 600px) { .minimal-import-actions { flex-wrap: wrap; } .minimal-import-drop { padding-inline: 12px; } }

.call-detail-screen--minimal { display: block; min-width: 0; padding-top: 0; }
.call-detail-screen--minimal .call-main { grid-template-columns: minmax(0, 1fr) 280px; grid-template-areas: "result result" "summary answers" "recording answers" "transcript answers"; align-items: start; gap: 28px 42px; }
.call-detail-screen--minimal .call-result-section { padding: 0; border: 0; min-width: 0; }
.call-detail-screen--minimal [aria-labelledby="business-outcome-title"] { grid-area: result; border-bottom: 1px solid oklch(90% .007 255); padding-bottom: 24px; }
.call-detail-screen--minimal [aria-labelledby="call-summary-title"] { grid-area: summary; }
.call-detail-screen--minimal [aria-labelledby="answer-collection-title"] { grid-area: answers; border-left: 1px solid oklch(90% .007 255); padding-left: 28px; }
.call-detail-screen--minimal [aria-labelledby="business-recording-title"] { grid-area: recording; border-top: 1px solid oklch(90% .007 255); padding-top: 23px; }
.call-detail-screen--minimal .call-dialogue-panel { grid-area: transcript; border-top: 1px solid oklch(90% .007 255); padding-top: 23px; }
.call-detail-screen--minimal .call-result-section h3, .call-detail-screen--minimal .call-dialogue-panel > summary { font-size: 16px; font-weight: 600; }
.call-detail-screen--minimal .business-result-header { gap: 12px; margin-bottom: 24px; }
.call-detail-screen--minimal .call-result-reason { margin: -16px 0 24px; font-size: 13px; color: var(--muted); }
.call-detail-screen--minimal .business-result-header > div { display: none; }
.call-detail-screen--minimal .call-facts { display: flex; flex-wrap: wrap; gap: 20px 38px; margin: 0; }
.call-detail-screen--minimal .call-facts > div { min-width: 0; max-width: 100%; }
.call-detail-screen--minimal .call-facts span { font-size: 12px; }
.call-detail-screen--minimal .call-facts strong { font-size: 14px; font-weight: 400; font-variant-numeric: tabular-nums; }
.call-detail-screen--minimal .call-result-summary { max-width: 72ch; color: var(--text); font-size: 15px; line-height: 1.75; margin: 14px 0 0; }
.call-detail-screen--minimal .panel-heading { margin-bottom: 14px; }
.call-detail-screen--minimal .call-questionnaire { display: grid; gap: 20px; }
.call-detail-screen--minimal .call-questionnaire > div { display: block; padding: 0; border: 0; }
.call-detail-screen--minimal .call-questionnaire dt { font-size: 12px; margin-bottom: 7px; }
.call-detail-screen--minimal .call-questionnaire dd { font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.call-detail-screen--minimal .call-questionnaire .status-chip { font-size: 11px; padding: 3px 6px; }
.call-detail-screen--minimal .call-recording-panel .panel-heading .status-chip { display: none; }
.call-detail-screen--minimal .call-recording-controls audio { width: 100%; max-width: 620px; }
.call-detail-screen--minimal .call-recording-controls a { font-size: 13px; text-underline-offset: 3px; }
.call-detail-screen--minimal .call-recording-controls p, .call-detail-screen--minimal [data-call-refresh-error], .call-detail-screen--minimal .compact-empty { font-size: 13px; line-height: 1.6; }
.call-detail-screen--minimal .call-review-disclosure { display: block; margin-top: 20px; padding: 0; border: 0; background: transparent; }
.call-review-disclosure > summary { width: fit-content; cursor: pointer; color: var(--muted); font-size: 13px; padding-block: 6px; }
.call-review-disclosure [role="group"] { margin-top: 12px; }
.call-detail-screen--minimal [data-call-review-error] { font-size: 13px; color: oklch(40% .14 28); margin-bottom: 0; }
.call-detail-screen--minimal .call-timeline--dialog { margin-top: 22px; }
.call-detail-screen--minimal .call-timeline--dialog li { grid-template-columns: 65px minmax(0, 1fr); gap: 15px; padding-block: 12px; }
.call-detail-screen--minimal .call-timeline--dialog strong { font-size: 12px; font-weight: 500; color: var(--muted); }
.call-detail-screen--minimal .call-timeline--dialog p { font-size: 14px; line-height: 1.65; color: var(--text); margin: 0; overflow-wrap: anywhere; }
.call-detail-screen--minimal .call-card-loading { margin: 0; font-size: 14px; color: var(--muted); }
@media(max-width: 1100px) { .call-detail-screen--minimal .call-main { grid-template-columns: minmax(0, 1fr) 230px; gap: 26px; } .call-detail-screen--minimal [aria-labelledby="answer-collection-title"] { padding-left: 20px; } }
@media(max-width: 900px) {
  .call-detail-screen--minimal .call-main { grid-template-columns: minmax(0, 1fr); grid-template-areas: "result" "summary" "answers" "recording" "transcript"; }
  .call-detail-screen--minimal [aria-labelledby="answer-collection-title"] { padding: 23px 0 0; border-left: 0; border-top: 1px solid oklch(90% .007 255); }
  .call-detail-screen--minimal .call-questionnaire { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width: 600px) { .call-detail-screen--minimal .call-facts { gap: 18px 25px; } .call-detail-screen--minimal .call-questionnaire { grid-template-columns: minmax(0, 1fr); } }

.test-call-screen--minimal { display: block; min-width: 0; padding-top: 0; }
.minimal-test-call { max-width: 460px; }
.minimal-test-phone-form { display: grid; gap: 10px; }
.minimal-test-phone-form > label { font-size: 13px; font-weight: 500; }
.minimal-test-phone-form input[type="tel"] { min-width: 0; min-height: 48px; border: 1px solid oklch(80% .01 255); border-radius: 6px; background: transparent; color: var(--text); padding: 11px 12px; font: inherit; font-size: 18px; font-variant-numeric: tabular-nums; }
.minimal-test-phone-form input::placeholder { color: var(--muted); opacity: 1; }
.test-call-screen--minimal #test-call-recording-note { font-size: 13px; color: var(--muted); margin: 2px 0 12px; }
.minimal-test-phone-form .button { width: fit-content; min-height: 38px; font-size: 13px; }
.test-call-screen--minimal .minimal-test-feedback { margin-top: 20px; }
.test-call-screen--minimal .minimal-test-feedback p { font-size: 13px; line-height: 1.6; margin: 0; }
.test-call-screen--minimal .test-call-error { color: oklch(40% .14 28); }
.test-call-screen--minimal .test-call-modal { width: min(460px, calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 26px; border: 1px solid oklch(85% .01 255); border-radius: 10px; box-shadow: none; background: var(--surface); color: var(--text); }
.test-call-screen--minimal .test-call-modal::backdrop { background: rgb(15 23 42 / .3); }
.test-call-screen--minimal .test-call-modal h2 { font-size: 21px; font-weight: 600; margin: 0 0 20px; }
.test-call-screen--minimal .test-call-modal p { font-size: 14px; line-height: 1.6; }
.test-call-screen--minimal .test-confirm-phone, .test-call-screen--minimal .test-result-phone { font-size: 20px; font-variant-numeric: tabular-nums; color: var(--text); margin: 0 0 20px; overflow-wrap: anywhere; }
.test-call-screen--minimal .test-call-modal-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; margin-top: 24px; }
.test-call-screen--minimal .test-call-modal-actions .button { width: auto; min-height: 38px; font-size: 13px; white-space: nowrap; }
.minimal-test-result { max-width: 560px; }
.minimal-test-result h2 { margin: 0 0 14px; font-size: 20px; font-weight: 600; }
.test-call-screen--minimal .minimal-test-result > p:not(.test-result-phone) { font-size: 13px; }
.test-result-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 24px; }
.test-result-actions a, .test-result-actions button { font-size: 13px; }
.test-result-actions button { padding: 8px 0; border: 0; background: transparent; color: var(--muted); cursor: pointer; }
.test-result-actions .button { width: auto; min-height: 38px; }
@media (max-width: 600px) { .test-call-screen--minimal .test-call-modal { padding: 20px; } .test-call-screen--minimal .test-call-modal-actions { justify-content: flex-start; } }

.test-call-screen--minimal .test-call-modal .test-confirm-phone { font-size: 20px; }

/* A prominent business outcome, separate from call mechanics and report processing. */
.call-detail-screen--minimal .call-outcome-banner { --outcome-ink: #334155; --outcome-border: #cbd5e1; --outcome-bg: #f8fafc; margin: 0 0 24px; padding: 18px 20px; border: 1px solid var(--outcome-border); border-left: 4px solid var(--outcome-ink); border-radius: 8px; background: var(--outcome-bg); color: var(--outcome-ink); }
.call-detail-screen--minimal .call-outcome-banner--lead { --outcome-ink: #166534; --outcome-border: #bbf7d0; --outcome-bg: #f0fdf4; }
.call-detail-screen--minimal .call-outcome-banner--review { --outcome-ink: #854d0e; --outcome-border: #fde68a; --outcome-bg: #fffbeb; }
.call-detail-screen--minimal .call-outcome-banner--unanswered { --outcome-ink: #9a3412; --outcome-border: #fed7aa; --outcome-bg: #fff7ed; }
.call-detail-screen--minimal .call-outcome-banner .business-result-header { margin: 0; }
.call-detail-screen--minimal .call-outcome-banner .journal-outcome { padding: 0; border-radius: 0; background: transparent; color: inherit; font-size: 22px; font-weight: 600; line-height: 1.3; }
.call-detail-screen--minimal .call-outcome-banner .call-result-reason { margin: 7px 0 0; color: inherit; font-size: 16px; font-weight: 500; }
.call-detail-screen--minimal .call-manual-result-note { margin: 10px 0 0; font-size: 12px; color: inherit; }
.call-result-editor { max-width: 460px; margin-top: 16px; }
.call-result-editor fieldset { display: grid; gap: 14px; padding: 0; border: 0; margin: 0; min-width: 0; }
.call-result-editor label { display: grid; gap: 7px; font-size: 13px; }
.call-result-editor label[hidden] { display: none; }
.call-result-editor select { min-height: 40px; width: 100%; border: 1px solid var(--border-subtle); border-radius: 6px; padding: 8px 10px; background: var(--surface); color: var(--text); font: inherit; }
.call-result-editor button { justify-self: start; }
.call-result-editor [data-call-review-error] { color: #991b1b; font-size: 13px; }
.call-result-editor [data-call-result-saved] { color: #166534; font-size: 13px; }

.call-detail-screen--minimal .call-review-disclosure > summary { width: fit-content; min-height: 36px; padding: 8px 12px; border: 1px solid var(--border-subtle); border-radius: 6px; font-size: 14px; font-weight: 500; list-style-position: inside; }
.call-detail-screen--minimal .call-review-disclosure[open] > summary { background: var(--surface-subtle); }

/* Private workspace entry: the same restrained palette as campaigns and calls. */
.auth-screen--private { width: min(1080px, calc(100% - 48px)); padding-top: 32px; }
.auth-screen--private > .brand { font-size: 22px; font-weight: 700; letter-spacing: -.03em; }
.private-login { width: min(100%, 360px); margin: clamp(64px, 13vh, 136px) auto 0; }
.private-login .auth-form { border: 0; padding: 0; background: transparent; gap: 12px; }
.private-login .auth-form h1 { font-size: 26px; font-weight: 600; letter-spacing: -.025em; }
.private-login .auth-form__note { margin: 0 0 22px; color: var(--muted); font-size: 14px; }
.private-login .auth-form label { margin-top: 8px; font-size: 14px; font-weight: 500; }
.private-login .auth-form input { height: 46px; border-radius: 6px; background: var(--surface); font-size: 16px; }
.private-login .button--submit { min-height: 46px; margin-top: 12px; border-radius: 6px; font-size: 14px; font-weight: 600; box-shadow: none; transform: none; }
.private-login .form-message { margin: 4px 0 0; font-size: 14px; overflow-wrap: anywhere; }
