:root {
  color-scheme: light;
  --paper: #e5f0f3;
  --surface: #ffffff;
  --surface-muted: #edf4f6;
  --ink: #17343f;
  --muted: #526d79;
  --line: #c8d9df;
  --accent: #087e91;
  --accent-dark: #086477;
  --accent-pale: #dceff3;
  --danger: #8a3030;
  --danger-pale: #f6e7e3;
  --focus: #00667d;
  --radius: 8px;
  --water: radial-gradient(ellipse at 8% 2%, #12889a 0%, transparent 42%),
    radial-gradient(ellipse at 104% 93%, #23a8a6 0%, transparent 37%),
    radial-gradient(ellipse at 38% 118%, #3089b1 3%, transparent 42%),
    linear-gradient(126deg, #0e516c, #173552 53%, #215778 84%, #166d7a);
  --glass-edge: inset 0 1px 0 #ffffffa6, inset 1px 0 0 #ffffff57, inset 0 -1px 0 #528ba04d, 0 6px 15px #102f4519;
  font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  background: var(--paper);
  color: var(--ink);
}
* { box-sizing: border-box; }
#view-opportunities .contact-card { margin-block: 16px; padding: 16px; border: 1px solid var(--line); border-radius: var(--radius); }
#view-opportunities summary { cursor: pointer; font-weight: 650; }
#view-opportunities details[open] > summary { margin-bottom: 14px; }
#view-opportunities .plan-fields label { display: grid; gap: 4px; }
#opps-list, #opps-workflow { display: flex; flex-wrap: wrap; gap: 8px; }
#opps-workflow > p { flex-basis: 100%; margin-block: 4px; }
#opps-list .button { text-align: start; white-space: normal; overflow-wrap: anywhere; }
#opps-signals, #opps-orders { overflow-wrap: anywhere; }
body { min-width: 320px; min-height: 100vh; margin: 0; background: linear-gradient(125deg, #e7eff5 0%, #deedf2 55%, #dcefeb 100%); }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .62; }
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; top: -60px; left: 12px; z-index: 10; background: var(--surface); color: var(--ink); padding: 10px 14px; }
.skip-link:focus { top: 10px; }
a { color: var(--accent-dark); text-underline-offset: .15em; }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.app-shell { display: flex; min-height: 100vh; flex-direction: column; padding-left: 228px; background: var(--water); }
.topbar { min-height: 76px; display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 12px clamp(20px, 3vw, 48px); border-bottom: 1px solid #bdcfd666; background: #f8fbfc; }
.session-alert { margin: 10px clamp(14px, 3vw, 40px) 0; padding: 10px 14px; border: 1px solid var(--danger); color: #6e2222; background: var(--danger-pale); }
.brand { display: inline-flex; min-height: 44px; gap: 10px; align-items: center; color: var(--ink); font-weight: 700; text-decoration: none; }
.brand-mark, .placeholder-mark { display: inline-grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--accent); border-radius: 4px; color: var(--accent-dark); font: 700 18px/1 system-ui, sans-serif; }
.account { display: flex; align-items: center; gap: 14px; color: var(--muted); font-size: .9rem; }
.tenant-name { color: var(--ink); font-weight: 600; }
.primary-nav { display: flex; flex-direction: column; gap: 6px; padding: 24px 14px; }
.nav-button { min-height: 48px; display: flex; align-items: center; gap: 12px; width: 100%; padding: 11px 14px; color: #c2d6df; border: 0; border-radius: 7px; background: transparent; text-align: left; font-size: .89rem; }
.nav-button:hover { color: #fff; background: #254e62; }
.nav-button.active { color: #062b3c; background: #58c8dd; font-weight: 700; }
main { flex: 1; min-width: 0; width: min(100%, 1680px); margin: 0 auto; padding: 32px clamp(20px, 3vw, 48px) 42px; }
.view { min-height: 50vh; }
.view-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 20px; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 4px; font-size: clamp(1.55rem, 2.1vw, 2rem); line-height: 1.2; letter-spacing: -.025em; }
h2 { font-size: 1.15rem; line-height: 1.3; }
h3 { font-size: 1rem; }
.eyebrow { margin: 0 0 5px; color: var(--accent-dark); font-size: .77rem; font-weight: 700; }
.lede { max-width: 60ch; margin: 7px 0 0; color: var(--muted); }
.button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 9px 15px; border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink); background: var(--surface); font-weight: 600; text-decoration: none; }
.button:hover { background: var(--surface-muted); }
.button.primary { border-color: var(--accent-dark); color: #fff; background: var(--accent-dark); }
.button.primary:hover { background: #083c3d; }
.button.secondary { border-color: #6f7d77; background: var(--surface); }
.button.quiet { border-color: transparent; background: transparent; }
.button.danger { border-color: var(--danger); color: #fff; background: var(--danger); }
.inbox-layout { display: grid; grid-template-columns: minmax(245px, 310px) minmax(0, 1fr); min-height: min(70vh, 760px); border: 1px solid var(--line); border-radius: 7px; background: var(--surface); }
.lead-pane { min-width: 0; border-right: 1px solid var(--line); }
.pane-heading { height: 58px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; border-bottom: 1px solid var(--line); }
.pane-heading h2 { margin: 0; }
.count-label { color: var(--muted); font-variant-numeric: tabular-nums; }
.state-box { margin: 14px; padding: 14px; border: 1px solid var(--line); border-radius: var(--radius); color: var(--muted); background: var(--surface); }
.state-box.error { border-color: var(--danger); color: #6e2222; background: var(--danger-pale); }
.state-box.empty { border-style: dashed; }
.lead-list { max-height: 67vh; overflow-y: auto; margin: 0; padding: 0; list-style: none; }
.lead-item { width: 100%; min-height: 70px; display: block; padding: 12px 15px; text-align: left; border: 0; border-bottom: 1px solid var(--line); color: var(--ink); background: var(--surface); }
.lead-item:hover { background: #f3f1e9; }
.lead-item[aria-current="true"] { box-shadow: inset 4px 0 var(--accent); background: var(--accent-pale); }
.lead-item strong, .lead-item span, .lead-item time { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lead-item strong { font-size: .96rem; }
.lead-item span { margin-top: 2px; color: var(--muted); font-size: .84rem; }
.lead-item time { margin-top: 3px; color: var(--muted); font-size: .76rem; }
.chat-pane { min-width: 0; display: flex; flex-direction: column; }
.chat-placeholder { display: grid; align-content: center; justify-items: center; min-height: 420px; padding: 28px; text-align: center; color: var(--muted); }
.chat-placeholder h2 { margin: 18px 0 5px; color: var(--ink); }
.chat-placeholder p { max-width: 32ch; margin: 0; }
.placeholder-mark { width: 48px; height: 48px; font-size: 23px; }
.chat-content { min-height: 600px; flex: 1; display: flex; flex-direction: column; }
.chat-heading { display: flex; align-items: center; gap: 12px; min-height: 65px; padding: 8px 18px; border-bottom: 1px solid var(--line); }
.chat-identity { min-width: 0; flex: 1; }
.chat-identity h2 { margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.chat-identity p { margin: 2px 0 0; color: var(--muted); font-size: .83rem; }
.back-button { display: none; }
.need-review { padding: 14px 18px; border-bottom: 1px solid #a7b8ae; background: #edf3ed; }
.need-review p { margin: 0 0 8px; }
.need-review blockquote { margin: 0 0 12px; padding-left: 12px; border-left: 3px solid var(--accent); color: var(--muted); }
.need-review .button { margin-right: 8px; }
.messages { flex: 1; max-height: 53vh; min-height: 260px; overflow-y: auto; display: flex; flex-direction: column; gap: 12px; padding: 20px clamp(14px, 4vw, 36px); scroll-behavior: smooth; }
.message { width: fit-content; max-width: min(78%, 680px); padding: 10px 13px; border: 1px solid #b9c0b9; border-radius: 6px; overflow-wrap: anywhere; white-space: pre-wrap; }
.message.user { align-self: flex-end; border-color: #9dbbb2; background: #e4f0ec; }
.message.assistant { align-self: flex-start; background: #f7f5ef; }
.message-label { display: block; margin-bottom: 4px; color: var(--muted); font-size: .75rem; font-weight: 700; }
.message p { margin: 0; }
.candidate-panel { align-self: flex-start; width: min(100%, 680px); padding: 12px 14px; border: 1px solid #687b72; background: #edf3ed; }
.candidate-panel h3 { margin: 0 0 6px; }
.candidate-panel blockquote { margin: 10px 0 0; color: var(--muted); }
.plans-result { align-self: flex-start; width: min(100%, 680px); padding: 13px 15px; border-top: 2px solid var(--accent); background: #f4f2eb; }
.plans-result h3 { margin-bottom: 9px; }
.plan-result { display: flex; justify-content: space-between; gap: 14px; padding: 10px 0; border-top: 1px solid var(--line); }
.plan-result strong, .plan-result span { display: block; }
.plan-result p { margin: 3px 0 0; color: var(--muted); font-size: .88rem; }
.plan-result .price { white-space: nowrap; text-align: right; }
.checkout-link { margin-top: 10px; }
.message-form { display: flex; align-items: end; gap: 10px; padding: 13px 16px 8px; border-top: 1px solid var(--line); }
textarea, input:not([type="checkbox"]), select { width: 100%; min-height: 44px; padding: 10px 11px; border: 1px solid #68766f; border-radius: 4px; color: var(--ink); background: #fff; }
textarea { resize: vertical; }
.message-form textarea { min-height: 50px; max-height: 180px; }
.send-button { flex: 0 0 auto; }
.chat-note { margin: 0; padding: 0 16px 12px; color: var(--muted); font-size: .77rem; }
.business-form { max-width: 1000px; padding: 22px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px 22px; }
.field { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.field label, .dialog-card label:not(.check-row) { font-weight: 650; }
.field small { color: var(--muted); }
.field.full { grid-column: 1 / -1; }
.plans-section { margin-top: 30px; }
.section-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.section-heading h2 { margin: 0; }
.section-heading p { margin: 4px 0 0; color: var(--muted); font-size: .9rem; }
.plans-list { display: grid; gap: 12px; padding-top: 14px; }
.plan-editor { padding: 15px; border: 1px solid var(--line); border-radius: 5px; background: #faf9f4; }
.plan-editor-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.plan-editor-head h3 { margin: 0; }
.plan-fields { display: grid; grid-template-columns: 1fr 1.4fr 1fr 1fr 1fr; gap: 12px; }
#opps-bank, .transfer-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#opps-bank > h2, #opps-bank > p, .transfer-form > p { grid-column: 1 / -1; }
#view-opportunities #opps-bank .check-row { display: flex; grid-column: 1 / -1; }
#opps-bank .text-link { color: var(--accent); background: transparent; border: 0; padding: 0; font: inherit; text-decoration: underline; cursor: pointer; }
@media (max-width: 600px) { #opps-bank, .transfer-form { grid-template-columns: 1fr; } }
.plan-fields .field { gap: 4px; }
.plan-fields label { font-size: .84rem; }
.plan-features { margin-top: 12px; }
.form-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 24px; }
.feedback { margin: 0; color: var(--accent-dark); }
.form-error { color: #6e2222; }
.advisor-heading { align-items: center; }
.advisor-content { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr); gap: 16px; align-items: start; }
.report-panel { min-width: 0; padding: 18px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); }
.report-panel h2 { margin-bottom: 12px; }
.report-panel p:last-child { margin-bottom: 0; }
.report-meta { display: flex; flex-wrap: wrap; gap: 8px 20px; padding-bottom: 13px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .88rem; }
.conversion-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 14px 0; }
.conversion-stat { padding: 12px; background: var(--surface-muted); }
.conversion-stat span, .conversion-stat strong { display: block; }
.conversion-stat span { color: var(--muted); font-size: .84rem; }
.conversion-stat strong { margin-top: 3px; font-size: 1.15rem; }
.evidence-list { display: grid; gap: 12px; padding-left: 20px; }
.evidence-list li { padding-left: 2px; }
.evidence-list p { margin: 4px 0; }
.reference-list { color: var(--muted); font-size: .86rem; }
.site-footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 20px; padding: 16px clamp(16px, 4vw, 52px); border-top: 1px solid var(--line); color: var(--muted); background: var(--surface); font-size: .85rem; }
.site-footer nav { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.site-footer button, .inline-link { min-height: 44px; padding: 3px 0; border: 0; color: var(--accent-dark); background: transparent; text-decoration: underline; text-underline-offset: .15em; }
.cookie-banner { position: fixed; z-index: 5; right: 16px; bottom: 16px; left: 16px; display: flex; align-items: center; justify-content: space-between; gap: 20px; max-width: 1100px; margin: auto; padding: 16px 18px; border: 1px solid #697871; border-radius: 6px; background: var(--surface); box-shadow: 0 4px 18px #202b2b24; }
.cookie-banner h2 { margin-bottom: 3px; font-size: 1rem; }
.cookie-banner p { margin: 0; color: var(--muted); font-size: .9rem; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.dialog-card { width: min(100% - 28px, 620px); max-height: min(88vh, 850px); overflow-y: auto; padding: 22px; border: 1px solid #697871; border-radius: 7px; color: var(--ink); background: var(--surface); }
.dialog-card::backdrop { background: #17222180; }
.dialog-heading { display: flex; align-items: start; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.dialog-heading h2 { margin: 0; }
.icon-button { width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 4px; color: var(--ink); background: var(--surface); font-size: 1.35rem; }
.dialog-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; }
.consent-fieldset { margin: 20px 0 14px; padding: 12px; border: 1px solid var(--line); }
.consent-fieldset legend { padding: 0 5px; font-weight: 650; }
.consent-links { display: flex; gap: 18px; margin: -7px 0 12px; }
.check-row { display: flex; align-items: flex-start; gap: 10px; margin: 10px 0; }
.check-row input[type="checkbox"] { flex: 0 0 auto; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--accent-dark); }
.required-label, .optional-label { color: var(--muted); font-size: .82rem; }
.privacy-actions { display: grid; gap: 16px; }
.privacy-lead-label { overflow-wrap: anywhere; }
.consent-status { padding: 10px 12px; border: 1px solid var(--line); color: var(--muted); background: #f7f5ef; }
.inline-form { display: flex; gap: 8px; margin-top: 6px; }
.consent-revocations { display: flex; flex-wrap: wrap; gap: 8px; padding: 14px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.consent-revocations h3 { flex-basis: 100%; margin: 0; }
.legal-content { color: var(--muted); }
.legal-content strong { color: var(--ink); }
.login-screen { min-height: 100vh; display: grid; place-items: center; padding: 20px; }
.login-form { width: min(100%, 420px); display: grid; gap: 10px; padding: 28px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); }
.login-form .brand { margin-bottom: 18px; }
.login-form h1 { margin: 0; }
.login-form p { margin: 0 0 7px; color: var(--muted); }
.login-form .button { margin-top: 8px; }
.notice { max-width: 100ch; margin: 0 0 18px; padding: 11px 13px; border: 1px solid #8b978f; color: var(--muted); background: var(--surface); }
.prospecting-offer { max-width: 100%; margin-bottom: 24px; }
.prospecting-offer > .section-heading { margin-bottom: 16px; }
.offer-confirm { margin: 16px 0 0; }
.prospecting-tools { margin: 22px 0 14px; }
.prospecting-tools > .section-heading { margin-bottom: 12px; }
.prospecting-actions { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; }
.search-form { display: flex; flex: 1 1 100%; flex-wrap: wrap; align-items: end; gap: 8px; max-width: 800px; }
.search-form label { flex-basis: 100%; font-weight: 650; }
.search-form input { flex: 1 1 170px; width: auto; }
.search-form .button { flex: 0 0 auto; }
.prospecting-layout { display: grid; grid-template-columns: minmax(230px, 310px) minmax(0, 1fr); min-height: 380px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); }
.prospect-list-pane { min-width: 0; border-right: 1px solid var(--line); }
.prospect-list { max-height: 70vh; overflow-y: auto; margin: 0; padding: 0; list-style: none; }
.prospect-list button { width: 100%; min-height: 64px; padding: 11px 14px; border: 0; border-bottom: 1px solid var(--line); color: var(--ink); background: var(--surface); text-align: left; overflow-wrap: anywhere; }
.prospect-list button:hover { background: var(--surface-muted); }
.prospect-list button[aria-current="true"] { background: var(--accent-pale); box-shadow: inset 4px 0 var(--accent); }
.prospect-list strong, .prospect-list span { display: block; }
.prospect-list span { color: var(--muted); font-size: .86rem; }
.prospect-detail { min-width: 0; padding: 8px; }
.prospect-card { min-width: 0; padding: 14px; }
.prospect-card h2 { margin-bottom: 4px; overflow-wrap: anywhere; }
.prospect-meta { margin: 0 0 14px; color: var(--muted); overflow-wrap: anywhere; }
.prospect-facts { display: grid; gap: 10px; margin: 0; }
.prospect-facts dt { font-weight: 700; }
.prospect-facts dd { margin: 3px 0 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.prospect-evidence { margin: 0; padding-left: 20px; }
.prospect-evidence li { margin: 0 0 12px; overflow-wrap: anywhere; }
.prospect-evidence a { display: block; min-height: 44px; padding: 8px 0; overflow-wrap: anywhere; }
.prospect-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 16px 0; padding-top: 14px; border-top: 1px solid var(--line); }
.prospect-draft { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line); }
.prospect-draft h3 { margin-bottom: 6px; }
.prospect-draft-state { color: var(--muted); }
.prospect-draft textarea { margin: 4px 0 10px; }
.prospect-draft label { display: block; font-weight: 650; }
.prospect-draft-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.prospect-detail-error { color: #6e2222; }
.simulation-label { display: inline-flex; align-items: center; min-height: 36px; padding: 6px 10px; border: 1px solid var(--accent-dark); color: var(--accent-dark); background: var(--surface); font-size: .82rem; font-weight: 700; }
.voice-layout { display: grid; grid-template-columns: minmax(230px, 290px) minmax(0, 1fr); min-height: 60vh; border: 1px solid var(--line); background: var(--surface); }
.voice-inbox { min-width: 0; border-right: 1px solid var(--line); }
.voice-inbox-actions { display: flex; justify-content: space-between; gap: 8px; padding: 8px 12px; border-bottom: 1px solid var(--line); }
.voice-thread-list { max-height: 72vh; overflow-y: auto; margin: 0; padding: 0; list-style: none; }
.voice-thread-item { width: 100%; min-height: 64px; padding: 10px 14px; border: 0; border-bottom: 1px solid var(--line); color: var(--ink); background: var(--surface); text-align: left; }
.voice-thread-item:hover { background: var(--surface-muted); }
.voice-thread-item[aria-current="true"] { background: var(--accent-pale); box-shadow: inset 4px 0 var(--accent); }
.voice-thread-item strong, .voice-thread-item span { display: block; overflow-wrap: anywhere; }
.voice-thread-item span { color: var(--muted); font-size: .82rem; }
.voice-workspace { min-width: 0; padding: 18px clamp(14px, 2.4vw, 30px); }
.voice-empty { display: grid; align-content: center; justify-items: start; min-height: 45vh; color: var(--muted); }
.voice-empty h2 { margin-bottom: 5px; color: var(--ink); }
.voice-empty p { max-width: 50ch; }
.voice-thread-heading { display: flex; align-items: start; justify-content: space-between; gap: 16px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.voice-thread-heading h2 { margin-bottom: 2px; overflow-wrap: anywhere; }
.voice-thread-heading p { margin: 0; color: var(--muted); }
.voice-feedback { min-height: 1.5em; margin: 10px 0; color: var(--accent-dark); }
.voice-feedback.error { color: #6e2222; }
.voice-section { padding: 16px 0; border-bottom: 1px solid var(--line); }
.voice-section h3 { margin-bottom: 10px; }
.voice-status { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 18px; margin: 0; }
.voice-status > div { display: grid; grid-template-columns: minmax(130px, .8fr) minmax(0, 1.2fr); gap: 8px; padding: 7px 0; border-bottom: 1px solid var(--surface-muted); }
.voice-status dt { color: var(--muted); }
.voice-status dd { margin: 0; font-weight: 600; }
.voice-actions { display: flex; align-items: end; flex-wrap: wrap; gap: 10px; }
.voice-inline-form { display: flex; align-items: end; flex-wrap: wrap; gap: 10px; }
.voice-inline-form .field { flex: 1 1 170px; }
.voice-inline-form textarea { min-height: 64px; }
.voice-privacy > p { color: var(--muted); }
.voice-events { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.voice-events li { display: grid; grid-template-columns: minmax(120px, .6fr) minmax(130px, .8fr) minmax(0, 2fr); gap: 10px; align-items: baseline; padding: 10px 0; border-top: 1px solid var(--surface-muted); }
.voice-events time { color: var(--muted); font-size: .86rem; }
.voice-events p { margin: 0; overflow-wrap: anywhere; }
.voice-events li > strong { text-transform: capitalize; }

@media (max-width: 1020px) {
  main { padding-right: 16px; padding-left: 16px; }
  .inbox-layout { grid-template-columns: minmax(220px, 28%) minmax(0, 1fr); }
  .plan-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .advisor-content { grid-template-columns: 1fr 1fr; }
  .voice-layout { grid-template-columns: minmax(205px, 25%) minmax(0, 1fr); }
  .voice-status { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .topbar { min-height: 60px; padding: 8px 12px; }
  .brand { gap: 7px; font-size: .94rem; }
  .brand-mark { width: 30px; height: 30px; }
  .account { gap: 6px; }
  .tenant-name { max-width: 26vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .account-email { display: none; }
  .account .button { min-height: 44px; padding: 7px 9px; font-size: .82rem; }
  .primary-nav { position: sticky; z-index: 2; top: 0; overflow-x: auto; padding: 0 8px; }
  .nav-button { flex: 0 0 auto; white-space: nowrap; min-height: 48px; padding: 0 10px; font-size: .87rem; }
  main { padding: 19px 12px 28px; }
  .view-heading { align-items: center; margin-bottom: 14px; }
  .view-heading .button { padding: 8px 10px; font-size: .88rem; }
  .inbox-layout { display: block; min-height: calc(100dvh - 180px); border-radius: 5px; }
  .lead-pane { border-right: 0; }
  .lead-pane.mobile-hidden { display: none; }
  .lead-list { max-height: none; }
  .chat-pane { min-height: calc(100dvh - 180px); }
  .chat-pane.mobile-hidden { display: none; }
  .chat-content { min-height: calc(100dvh - 180px); }
  .chat-placeholder { min-height: 50vh; }
  .chat-heading { flex-wrap: wrap; min-height: 60px; padding: 7px 10px; gap: 5px 9px; }
  .back-button { display: inline-flex; min-height: 44px; padding: 6px 9px; font-size: .84rem; }
  .chat-identity { flex-basis: 38%; }
  #lead-actions-button { margin-left: auto; min-height: 44px; padding: 6px 9px; font-size: .84rem; }
  .messages { max-height: none; min-height: 200px; flex: 1; padding: 14px 10px; }
  .message { max-width: 90%; }
  .message-form { padding: 10px; }
  .send-button { padding: 8px 11px; }
  .business-form { padding: 15px 12px; }
  .form-grid { grid-template-columns: 1fr; gap: 14px; }
  .field.full { grid-column: auto; }
  .plan-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .advisor-content { grid-template-columns: 1fr; }
  .voice-heading { align-items: flex-start; flex-direction: column; gap: 9px; }
  .voice-layout { grid-template-columns: 1fr; }
  .voice-inbox { border-right: 0; border-bottom: 1px solid var(--line); }
  .voice-thread-list { max-height: 30vh; }
  .voice-workspace { padding: 14px 11px; }
  .voice-status { grid-template-columns: 1fr; }
  .voice-status > div { grid-template-columns: minmax(110px, .8fr) minmax(0, 1.2fr); }
  .voice-inline-form, .voice-inline-form .field { width: 100%; }
  .voice-inline-form .button { width: 100%; }
  .voice-events li { grid-template-columns: 1fr; gap: 2px; }
  .prospecting-offer { padding: 15px 12px; }
  .prospecting-layout { grid-template-columns: 1fr; min-height: 0; }
  .prospect-list-pane { border-right: 0; border-bottom: 1px solid var(--line); }
  .prospect-list { max-height: 34vh; }
  .prospect-detail { padding: 4px; }
  .prospect-card { padding: 12px 9px; }
  .prospecting-actions > .button { flex: 1 1 140px; }
  .search-form .button { flex: 1 1 100%; }
  .prospect-controls > .button, .prospect-draft-actions > .button { flex: 1 1 140px; }
  .advisor-heading { align-items: end; }
  .conversion-row { grid-template-columns: 1fr 1fr; }
  .site-footer { padding: 14px 12px; }
  .cookie-banner { right: 8px; bottom: 8px; left: 8px; align-items: stretch; flex-direction: column; padding: 13px; }
  .cookie-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cookie-actions .button { min-width: 0; padding: 7px 5px; font-size: .85rem; }
}
@media (max-width: 390px) {
  .account .button { font-size: .76rem; }
  .plan-fields { grid-template-columns: 1fr; }
  .view-heading { align-items: flex-start; }
  .view-heading .button { max-width: 138px; }
  .plan-result { flex-direction: column; gap: 4px; }
  .plan-result .price { text-align: left; }
}
.web-voice-panel { max-width: 760px; padding: clamp(14px, 3vw, 28px); background: var(--surface); border: 1px solid var(--line); border-radius: 6px; }
.web-voice-panel p, .web-voice-panel li { line-height: 1.55; overflow-wrap: anywhere; }
.web-voice-panel summary { cursor: pointer; padding: 12px 0; font-weight: 600; }
.web-voice-panel form { margin-top: 24px; }
.voice-config { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; padding: 12px; background: var(--paper); border: 1px solid var(--line); }
.web-voice-panel .voice-actions { margin-top: 18px; }
.web-voice-panel dd { overflow-wrap: anywhere; }
.web-voice-panel .field + .field { margin-top: 12px; }
.web-voice-panel .text-link { color: var(--accent); padding: 0; border: 0; background: transparent; text-decoration: underline; font: inherit; cursor: pointer; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
.contact-layout { display: grid; grid-template-columns: minmax(200px, 260px) minmax(0, 1fr); gap: 20px; align-items: start; }
.contact-card { padding: 20px; border: 1px solid var(--line); background: var(--surface); border-radius: 6px; margin-bottom: 18px; min-width: 0; }
.contact-card summary { cursor: pointer; padding: 8px 0; font-weight: 600; }
.contact-card form { margin-top: 18px; }
.contact-card input:not([type=checkbox]), .contact-card textarea { width: 100%; margin-bottom: 10px; }
.contact-card label:not(.check-row) { display: block; margin-top: 10px; }
.contact-card p { overflow-wrap: anywhere; }
.contact-card .button { margin: 4px 4px 4px 0; }
#contact-list { display: flex; flex-direction: column; align-items: stretch; }
#contact-list .button { text-align: left; white-space: normal; overflow-wrap: anywhere; }
.contact-timeline { list-style: none; padding: 0; max-height: 480px; overflow: auto; }
.contact-timeline li { border-bottom: 1px solid var(--line); padding: 10px 0; }
.contact-timeline p { white-space: pre-wrap; margin: 4px 0; }
.connections-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; }
.connection-card { min-width: 0; }
.connection-card:first-child { grid-column: 1 / -1; }
.connection-card[aria-label="Voz web"] { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.connection-card[aria-label="Voz web"] > h2 { grid-column: 1 / -1; }
.connection-card[aria-label="Voz web"] .connection-status { margin-top: 0; }
.connection-status { padding-top: 8px; border-top: 1px solid var(--line); }
.connection-status + .connection-status { margin-top: 12px; }
.connection-status p { margin-bottom: 5px; }
.connection-check-result { margin-top: 8px; }
@media (max-width: 1020px) { .connection-card[aria-label="Voz web"] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .connections-list, .connection-card[aria-label="Voz web"] { grid-template-columns: 1fr; } }
@media (max-width: 700px) { .contact-layout { grid-template-columns: 1fr; } .contact-card { padding: 14px; } }

.ai-usage-content h3 { overflow-wrap: anywhere; }
.pilot-form { display: grid; gap: 10px; margin-block: 14px; }
.pilot-form input:not([type=checkbox]), .pilot-form select, .pilot-form textarea { display: block; width: 100%; min-width: 0; }
.pilot-form button { justify-self: start; }
#pilot-contact h3 { margin-top: 20px; }
#pilot-contact p { white-space: pre-line; }
#app:not(.has-opportunities) [data-opportunities-lab] { display: none; }

.sidebar { position: fixed; z-index: 4; inset: 14px auto 14px 14px; width: 214px; overflow-y: auto; }
.icon-library { position: absolute; overflow: hidden; pointer-events: none; }
.sidebar .brand { width: 100%; min-height: 76px; padding: 18px 23px; border-bottom: 1px solid #ffffff12; color: #fff; font-size: 1rem; }
.sidebar .brand-mark { border: 1px solid #c3fbff78; border-radius: 10px; color: #073b51; background: linear-gradient(145deg, #c2f6f5, #63d5e3 52%, #34a6c4); box-shadow: inset 0 1px 1px #fff9, 0 2px 6px #072f413d; }
.nav-button svg, .quick-link > svg { flex-shrink: 0; width: 20px; height: 20px; }
.nav-section { display: block; margin: 18px 14px 7px; color: #9fbecb; font-size: .7rem; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; }
.nav-section:first-child { margin-top: 0; }
.breadcrumb { display: flex; align-items: center; gap: 8px; min-width: 0; color: var(--muted); font-size: .9rem; }
.breadcrumb > svg { flex-shrink: 0; width: 14px; height: 14px; color: #79939f; }
.breadcrumb strong { color: var(--ink); font-weight: 600; }
.breadcrumb span { margin-inline: 9px; color: #68818d; }
#nav-toggle { display: none; }
.account { flex-wrap: wrap; justify-content: flex-end; gap: 5px 14px; }
.account-email { font-size: .78rem; }
.account-menu { position: relative; }
.account-menu > summary { display: flex; align-items: center; min-height: 44px; gap: 8px; padding: 6px 10px; border-radius: 6px; color: var(--ink); cursor: pointer; list-style: none; }
.account-menu > summary::-webkit-details-marker { display: none; }
.account-menu > summary > svg { flex-shrink: 0; width: 15px; height: 15px; }
.account-menu[open] > summary { background: var(--surface-muted); }
.account-menu > :not(summary) { position: relative; z-index: 6; }
.account-menu .account-menu-panel { position: absolute; right: 0; top: calc(100% + 8px); display: grid; gap: 4px; width: min(270px, calc(100vw - 28px)); padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); box-shadow: 0 8px 24px #17343f18; overflow-wrap: anywhere; }
.account-menu-panel .button { justify-content: flex-start; width: 100%; text-align: left; }
.account-menu-panel .account-email { display: block; padding: 6px 9px 10px; color: var(--muted); }
.account-avatar { display: inline-grid; place-items: center; flex-shrink: 0; width: 32px; height: 32px; border-radius: 50%; color: #34647a; background: #e0edf2; }
.account-avatar svg { width: 19px; height: 19px; }
.dashboard { max-width: 1400px; margin-inline: auto; }
.dashboard-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin: 3px 0 28px; }
.dashboard-heading h1 { margin-bottom: 7px; font-size: clamp(1.8rem, 2.4vw, 2.2rem); font-weight: 650; letter-spacing: -.035em; }
.dashboard-heading p { margin: 0; color: var(--muted); font-size: .95rem; }
.dashboard-heading .button { flex-shrink: 0; }
.button { border-color: #b9ced7; border-radius: 7px; font-size: .9rem; }
.button.primary { border-color: #087a91; background: #087a91; }
.button.primary:hover { border-color: #075c70; background: #075c70; }
.button.secondary { border-color: #b9ced7; }
.button.quiet:hover { background: #e6f0f4; }
.button svg { flex-shrink: 0; width: 18px; height: 18px; }
.stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin-bottom: 24px; }
.stat-card { min-width: 0; display: grid; grid-template-columns: 46px minmax(0, 1fr); align-content: center; gap: 2px 14px; padding: 24px 20px; border: 1px solid #d8e4e8; border-radius: 10px; background: var(--surface); }
.stat-icon { grid-row: span 2; display: grid; place-items: center; align-self: center; width: 46px; height: 46px; border-radius: 9px; color: #11647e; background: #e2f0f5; }
.stat-icon svg { width: 25px; height: 25px; }
.stat-label { color: var(--muted); font-size: .83rem; overflow-wrap: anywhere; }
.stat-value { display: block; color: #153b4d; font-size: clamp(1.5rem, 2.1vw, 2rem); font-weight: 650; line-height: 1.25; letter-spacing: -.04em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.charts-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 24px; margin-bottom: 26px; }
.chart-card { min-width: 0; padding: 25px 26px 20px; border: 1px solid #d8e4e8; border-radius: 10px; background: var(--surface); }
.chart-header { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 24px; }
.chart-header h2 { margin: 0; font-size: 1rem; font-weight: 650; }
.chart-header p { margin: 4px 0 0; color: var(--muted); font-size: .8rem; }
.chart-total { display: grid; text-align: right; }
.chart-total strong { font-size: 1.35rem; line-height: 1.2; font-variant-numeric: tabular-nums; }
.chart-total small { color: var(--muted); font-size: .74rem; }
#dashboard-date { color: var(--muted); font-size: .78rem; }
.dashboard-status, .chart-note { color: var(--muted); font-size: .83rem; }
.chart-note { margin: 14px 0 0; }
.activity-svg { display: block; width: 100%; height: auto; overflow: visible; }
.activity-svg text { fill: #526d79; font-family: inherit; font-size: 12px; }
.activity-svg .grid-line { stroke: #e0eaee; stroke-width: 1; }
.activity-svg .activity-bar { fill: url("#bar-water") #1998b6; }
.activity-svg .activity-bar.latest { fill: #08728d; }
.activity-svg .activity-bar:hover { fill: #07576d; }
.donut-wrap { position: relative; display: grid; place-items: center; width: 184px; height: 184px; margin: 6px auto 26px; }
.donut { width: 184px; height: 184px; overflow: visible; }
.donut-center { position: absolute; display: grid; justify-items: center; max-width: 118px; line-height: 1.25; }
.donut-center strong { color: var(--ink); font-size: 1.85rem; font-weight: 650; font-variant-numeric: tabular-nums; }
.donut-center small { color: var(--muted); font-size: .76rem; }
.chart-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px 18px; margin: 0; padding: 0; list-style: none; color: var(--muted); font-size: .79rem; }
.chart-legend li, .chart-legend > span { display: inline-flex; align-items: center; gap: 6px; }
.chart-legend strong { color: var(--ink); font-weight: 600; font-variant-numeric: tabular-nums; }
.legend-dot { display: inline-block; flex-shrink: 0; width: 9px; height: 9px; border-radius: 2px; }
.quick-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: 20px; }
.quick-link { display: flex; align-items: center; gap: 14px; min-width: 0; min-height: 90px; padding: 19px 21px; border: 1px solid #c0d4dc; border-radius: 9px; color: #225268; background: #f4f9fb; text-align: left; text-decoration: none; font: inherit; }
.quick-link:hover { border-color: #5c9fb2; background: #fff; }
.quick-link > svg { width: 25px; height: 25px; }
.quick-icon { display: grid; flex-shrink: 0; place-items: center; width: 34px; height: 34px; }
.quick-icon svg { width: 25px; height: 25px; }
.quick-link > svg:last-child { margin-left: auto; width: 17px; height: 17px; }
.quick-link span { min-width: 0; }
.quick-link strong, .quick-link small { display: block; overflow-wrap: anywhere; }
.quick-link strong { font-size: .9rem; font-weight: 650; }
.quick-link small { margin-top: 4px; color: var(--muted); font-size: .8rem; }
.view-heading > div > p { margin-bottom: 0; color: var(--muted); }
.inbox-layout, .business-form, .report-panel, .prospecting-layout, .voice-layout, .contact-card, .web-voice-panel { border-color: #c6d9e0; border-radius: 9px; }
.inbox-layout, .prospecting-layout, .voice-layout { overflow: clip; }
.contact-card { padding: 22px; }
.business-form { max-width: 1100px; padding: 28px; }
.plan-editor, .message.assistant, .plans-result, .consent-status { background: #f2f7f9; }
.lead-item:hover { background: #edf5f8; }
.message.user { border-color: #b0d7df; background: #dff0f3; }
.message.assistant { border-color: #d6e2e7; }
textarea, input:not([type="checkbox"]), select { border-color: #99b1be; border-radius: 6px; }
textarea:hover, input:not([type="checkbox"]):hover, select:hover { border-color: #547e92; }
.site-footer { align-items: center; padding: 14px clamp(20px, 3vw, 48px); border-color: #b9d0d9; background: transparent; font-size: .77rem; }
.site-footer nav { gap: 4px 18px; }
.login-screen { padding: 32px 20px; }
.login-form { width: min(100%, 450px); padding: 36px 38px; gap: 12px; border-color: #c1d6df; border-radius: 12px; box-shadow: 0 12px 38px #163e5112; }
.login-form .brand { margin-bottom: 20px; color: #174358; }
.login-form .brand-mark { width: 40px; height: 40px; border: 0; border-radius: 8px; color: #fff; background: #16465b; }
.login-form h1 { font-size: 1.75rem; }
.login-form label { margin-top: 4px; font-size: .9rem; font-weight: 600; }
.login-form .button { margin-top: 14px; }
.session-alert { border-radius: 7px; }
.app-shell > main { padding: 14px 16px 20px 14px; }
.sidebar, .topbar {
  border: 1px solid #afdfe54f;
  background: linear-gradient(125deg, #dcffff27, #a5c8dd0a 48%, #5cd7dc14), #092d48a6;
  box-shadow: inset 0 1px 0 #e6ffff57, inset 1px 0 0 #f1ffff1a, 0 5px 19px #05283c24;
  -webkit-backdrop-filter: blur(15px) saturate(125%); backdrop-filter: blur(15px) saturate(125%);
}
.sidebar { border-radius: 19px; }
.sidebar .nav-button { color: #e1f1f5; }
.sidebar .nav-section { color: #bedae2; }
.sidebar .nav-button.active {
  color: #052c3d; background: linear-gradient(115deg, #a5f2f1ed, #5bd5e5dc 60%, #42b8d8ed);
  box-shadow: inset 0 1px 0 #fff9, inset 0 -1px 0 #0b819aa6, 0 3px 8px #082e4540;
}
.topbar { z-index: 5; position: relative; min-height: 60px; margin: 14px 16px 0 14px; padding-block: 5px; border-radius: 17px; }
.topbar :is(.breadcrumb, .breadcrumb strong, .breadcrumb > span, .tenant-name, summary), #nav-toggle { color: #f4fcff; }
.breadcrumb > svg { color: #b5d4df; }
#nav-toggle:hover, .account-menu[open] > summary { background: #18495f; }
.account-avatar { border: 1px solid #fff8; background: linear-gradient(145deg, #efffff, #a0d4de); }
.dashboard, .view:not(.dashboard) {
  padding: clamp(18px, 2vw, 30px); border: 1px solid #defaff7a; border-radius: 22px;
  box-shadow: var(--glass-edge);
}
.view:not(.dashboard) { background: linear-gradient(120deg, #f3fbfcf5, #def0f4f2); }
.dashboard {
  background: linear-gradient(140deg, #c2f3f7bd 0%, #d5edf7a8 28%, #b2d1e6ad 60%, #b6e8e3a6);
}
.dashboard-heading { margin-top: 0; margin-bottom: 22px; }
.dashboard-heading h1, #quick-heading { color: #0c2a3b; }
#dashboard-date, .dashboard-status { color: #1e4352; }
.dashboard .chart-card, .dashboard .stat-card, .dashboard .quick-link, .login-form {
  border: 1px solid #f2ffffab; border-bottom-color: #b9d8e18c;
  background: linear-gradient(130deg, #f7ffffdf 0%, #f3fbffd1 37%, #e4f1faa8 76%, #f0ffffcf);
  border-radius: 15px; box-shadow: var(--glass-edge);
}
.dashboard .chart-card, .login-form {
  -webkit-backdrop-filter: blur(12px) saturate(120%); backdrop-filter: blur(12px) saturate(120%);
}
.dashboard .stat-icon, .dashboard .quick-icon {
  border: 1px solid #faffffe0; border-radius: 10px; color: #0e5469;
  background: linear-gradient(140deg, #ffffffdf, #cceaf0 58%, #a9d7e2); box-shadow: inset 0 1px 0 #fff, 0 2px 5px #38667724;
}
.dashboard .quick-link { background: linear-gradient(125deg, #eafafcca, #e5f5f89e); }
.dashboard .quick-link:hover { background: #f5ffffe6; border-color: white; }
.dashboard :is(.chart-header p, .chart-total small, .stat-label, .chart-legend, .quick-link small, .donut-center small) { color: #375c6b; }
.activity-svg text { fill: #355969; }
.activity-svg .grid-line { stroke: #9bb9c88c; }
.donut-track { stroke: #adc9d4; }
.donut-review { stroke: #3486c3; }
.donut-kept { stroke: #13a18b; }
.donut-discarded { stroke: #d48b35; }
.legend-review { background: #3486c3; }
.legend-kept { background: #13a18b; }
.legend-discarded { background: #d48b35; }
.login-screen { background: var(--water); }
.app-shell .site-footer { color: #e1f1f7; border-color: #bddce733; background: #0b2d4366; }
.app-shell .site-footer button { color: #f3fcff; }
.topbar :focus-visible, .sidebar :focus-visible, .app-shell .site-footer :focus-visible { outline-color: #93f3ff; }
.topbar .account-menu-panel :focus-visible { outline-color: var(--focus); }
.cookie-banner { border-color: #93aebc; border-radius: 9px; }
.cookie-actions .button { flex: 1; }
.dialog-card { border-color: #9db7c4; border-radius: 10px; }
.skip-link { z-index: 10; border-radius: 5px; }
@media (max-width: 1180px) {
  .stats-grid { gap: 14px; }
  .stat-card { grid-template-columns: 38px minmax(0, 1fr); gap: 3px 10px; padding: 20px 14px; }
  .stat-icon { width: 38px; height: 38px; }
  .quick-links { gap: 14px; }
  .quick-link { padding: 17px 15px; }
  .charts-grid { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 18px; }
}
@media (max-width: 900px) {
  .app-shell { padding-left: 0; }
  .sidebar { display: none; inset: 86px auto 10px 10px; width: min(300px, 88vw); background-color: #0d3047eb; box-shadow: 5px 8px 24px #062b4199; }
  .sidebar.is-open { display: block; }
  .sidebar .brand { min-height: 68px; }
  #nav-toggle { display: inline-flex; flex: 0 0 44px; align-items: center; justify-content: center; }
  #nav-toggle svg { width: 22px; height: 22px; }
  .topbar { position: relative; z-index: 5; min-height: 76px; justify-content: flex-start; padding: 12px 20px; gap: 12px; }
  .account { margin-left: auto; }
  .account-email { display: none; }
  .primary-nav { position: static; flex-direction: column; overflow: visible; padding: 16px 14px; }
  .nav-button { flex: initial; padding: 12px 14px; white-space: normal; font-size: .9rem; }
  main { padding: 26px 20px 34px; }
  .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat-card { padding: 20px; }
  .quick-links { grid-template-columns: 1fr; gap: 10px; }
  .quick-link { min-height: 76px; }
}
@media (max-width: 600px) {
  .topbar { min-height: 54px; margin: 8px 8px 0; padding: 4px 8px; gap: 8px; }
  .sidebar { top: 70px; }
  .app-shell > main { padding: 8px; }
  .dashboard, .view:not(.dashboard) { padding: 14px 10px; border-radius: 17px; }
  .breadcrumb { font-size: .8rem; }
  .breadcrumb > span { display: none; }
  .breadcrumb > svg { display: none; }
  .breadcrumb span { margin-inline: 4px; }
  .account-menu > summary { max-width: 120px; font-size: .8rem; }
  .tenant-name { max-width: 22vw; }
  main { padding: 23px 14px 28px; }
  .dashboard-heading { align-items: flex-start; flex-direction: column; gap: 16px; margin-bottom: 22px; }
  .dashboard-heading h1 { font-size: 1.8rem; }
  .dashboard-heading p { font-size: .9rem; }
  .stats-grid { gap: 10px; margin-bottom: 18px; }
  .stat-card { grid-template-columns: 1fr; gap: 7px; padding: 17px 15px; }
  .stat-icon { grid-row: auto; width: 34px; height: 34px; margin-bottom: 3px; }
  .stat-icon svg { width: 21px; height: 21px; }
  .stat-value { font-size: 1.7rem; }
  .charts-grid { grid-template-columns: 1fr; gap: 16px; margin-bottom: 20px; }
  .chart-card { padding: 21px 18px; }
  .activity-svg text { font-size: 16px; }
  .chart-header { margin-bottom: 20px; }
  .contact-card, .business-form { padding: 17px 14px; }
  .view-heading { flex-wrap: wrap; align-items: flex-start; }
  .view-heading h1 { overflow-wrap: anywhere; }
  .site-footer { padding: 13px 16px; }
  .login-form { padding: 28px 23px; }
  .cookie-actions { display: flex; }
  .cookie-actions .button { flex: 1 1 75px; }
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more), (forced-colors: active) {
  .app-shell, .login-screen { background: #19495e; }
  .sidebar, .topbar, .dashboard, .view:not(.dashboard), .dashboard .chart-card, .dashboard .stat-card,
  .dashboard .quick-link, .dashboard .stat-icon, .dashboard .quick-icon, .login-form {
    -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; background: #f3f9fc;
  }
  .sidebar, .topbar { background: #12344a; }
  .dashboard { background: #dcebf2; }
  .sidebar .nav-button.active { background: #8ae2e8; }
}
