/* Preserve the personal account layout; distinguish the business entry point. */
.account-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:18px 0 22px }
.account-option { display:flex; flex-direction:column; gap:7px; padding:16px; border:1px solid #d4dcd5; border-radius:8px; text-decoration:none; color:#213d37; background:#fff }
.account-option span { font-size:12px; line-height:1.55; color:#5e6c65 }
.account-option.selected { background:#edf2eb; border-color:#739274 }
.account-option:hover { border-color:#213d37 }
.account-option[href="/business/"] { color:#f7f4ef; background:linear-gradient(140deg,#211c2d,#393043); border-color:#65536f; box-shadow:0 7px 18px #211c2d0c }
.account-option[href="/business/"] strong { color:#ead4b2 }
.account-option[href="/business/"] span { color:#ddd5e1 }
.account-option[href="/business/"]:hover { border-color:#c4a577; background:#30273c }
.account-option[href="/business/"]:focus-visible { outline:3px solid #8a683d; outline-offset:4px }

/* All client planner overrides are scoped to the mode set by cloud.js. */
.client-mode {
  --ink:#272331; --muted:#6c6471; --sage:#f0e9df; --sage-deep:#e4d5c0;
  --paper:#f7f4ef; --white:#fffefa; --line:#e4ddd5; --peach:#f0e4d3;
  --radius:14px; --shadow:0 18px 55px #211c2d07;
  --business-sans:'Exit Network Geist','DM Sans',sans-serif;
  color-scheme:light; background:var(--paper);
}
.client-mode body.eg-site { background:var(--paper); font-family:var(--business-sans) }
.client-mode body.eg-site :is(button,input,select,textarea) { font-family:var(--business-sans) }
.client-mode :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #987144; outline-offset:4px }
.client-mode body.eg-site :is(h1,h2) { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.04em }
.client-mode :is(h3,h4,.brand,.metric strong,.amount-output strong) { font-family:var(--business-sans) }
.client-mode .header { background:#211c2df5; border-color:#44394f }
.client-mode .header-inner { padding-top:19px; padding-bottom:19px }
.client-mode .header .brand { color:#f7f4ef }
.client-mode .header .brand-icon { color:#211c2d; background:#d4b98c; border-radius:8px }
.client-mode .header .brand small { color:#c8bccc }
.client-mode body.eg-site .header a.eg-brand { color:#f7f4ef; --eg-logo-tile:#d4b98c; --eg-logo-arrow:#211c2d; --eg-logo-suffix:#d4b98c }
.client-mode .header nav a { color:#d2c9d9 }
.client-mode .header nav a.nav-current { color:#f7f4ef }
.client-mode body.eg-site .header .eg-nav>a.account-link { border-color:#6d5b7a; color:#ead4b2; background:#342b40 }
.client-mode body.eg-site .header .eg-nav>a.account-link:hover { border-color:#d4b98c; color:#fffefa; background:#463850 }
.client-mode .header :is(a,button):focus-visible { outline-color:#d4b98c }
.client-mode .header nav a:hover { color:#f4e2c6 }
.client-mode .eyebrow { color:#80613a; font-family:var(--business-sans); font-size:10px; letter-spacing:1.7px }
.client-mode .dot { background:#b8996f }

.client-mode .client-workspace-banner {
  position:relative; isolation:isolate; margin:30px 0; padding:32px 36px 36px;
  border:1px solid var(--line); border-radius:14px; overflow:hidden;
  background:linear-gradient(110deg,#fffefa 46%,#eee5d9);
}
.client-mode .client-workspace-banner::before {
  content:''; position:absolute; z-index:-1; width:370px; height:370px;
  border:1px solid #b3976d40; border-radius:50%; right:-52px; top:-61px;
  box-shadow:0 0 0 40px #b3976d0c,0 0 0 80px #b3976d0a,0 0 0 120px #b3976d07;
  pointer-events:none;
}
.client-mode .client-workspace-banner::after {
  content:''; position:absolute; z-index:-1; width:188px; height:370px;
  border:1px solid #b3976d35; border-radius:50%; right:39px; top:-61px;
  transform:rotate(28deg); pointer-events:none;
}
.client-mode .client-workspace-banner>a:not(.button) { display:inline-block; margin-bottom:26px; color:#6b5b72; font-size:12px; text-decoration:none }
.client-mode .client-workspace-banner>a:not(.button):hover { text-decoration:underline }
.client-mode .client-workspace-banner .eyebrow { margin:0 0 11px }
.client-mode .client-workspace-banner h1 { max-width:850px; font-size:clamp(32px,4.5vw,52px); line-height:1.12; overflow-wrap:anywhere; margin:0 0 16px }
.client-mode .client-workspace-banner>p:not(.eyebrow) { max-width:560px; margin-bottom:24px; font-size:14px; line-height:1.7 }
.client-mode .workspace { border-radius:14px; grid-template-columns:230px minmax(0,1fr); box-shadow:var(--shadow); background:#fffefa }
.client-mode .sidebar { background:#211c2d; border-color:#44394f; padding:32px 20px }
.client-mode .sidebar .eyebrow { color:#d4b98c }
.client-mode .sidebar-route { color:#f7f4ef; overflow-wrap:anywhere; font-size:16px }
.client-mode .sidebar :is(.sidebar-note p,.sidebar-help) { color:#c3b9cd }
.client-mode .sidebar-note { border-color:#44394f }
.client-mode .sidebar-help:hover { color:#f4e2c6 }
.client-mode .sidebar :is(button,a):focus-visible { outline-color:#d4b98c; outline-offset:2px }
.client-mode .step-nav-button { color:#c7bdce; border:1px solid transparent; border-radius:7px; padding:12px 9px }
.client-mode .step-nav-button span { border-color:#695b78; color:#d4c8df }
.client-mode .step-nav-button.current { color:#f8eedf; background:#3a3045; border-color:#7b6657 }
.client-mode .step-nav-button.current span { background:#d4b98c; border-color:#d4b98c; color:#211c2d }
.client-mode .step-nav-button.complete span { color:#f3dfbc; background:#4a3d51; border-color:#7b6657 }
.client-mode .step-nav-button:not(:disabled):not(.current):hover { color:#fffefa; background:#30273c }
.client-mode .main-panel { padding:36px 40px }
.client-mode .draft-toolbar { color:#746a7d; font-size:11px; letter-spacing:.02em }
.client-mode .step-heading { font-size:clamp(29px,3vw,37px); font-weight:400; letter-spacing:-.04em }
.client-mode .step-description { color:#6c6471 }
.client-mode .field :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea),
.client-mode #password-recovery input { border-color:#cfc5be; border-radius:7px; background:#fff; color:#272331; font-size:16px; min-height:46px; max-width:100% }
.client-mode .field :is(input,textarea)::placeholder { color:#827989 }
.client-mode :is(input[type=checkbox],input[type=radio],progress) { accent-color:#655076 }
.client-mode .choice { border-color:#e0d7cf; border-radius:8px; background:#fff }
.client-mode .choice:has(input:checked) { background:#f4efea; border-color:#9b8262 }
.client-mode .choice:hover { border-color:#a999ab }
.client-mode .helper-card { background:#f5f0e8; border:1px solid #e9dfd1; border-radius:9px }
.client-mode .route-preview { background:#f0e9df; border:1px solid #e3d6c4; border-radius:9px }
.client-mode .route-preview .route-arrow { border-color:#bca382 }
.client-mode .route-preview .route-arrow::after { background:#f0e9df }
.client-mode .notice { background:#f0e9df; border-color:#e4d5c0 }
.client-mode .button { background:#211c2d; color:#fffefa; border-color:#211c2d; border-radius:7px; min-height:44px }
.client-mode .button:hover { background:#3a2d47; border-color:#3a2d47 }
.client-mode .button.secondary { color:#3e314c; background:transparent; border-color:#cbbfce }
.client-mode .button.secondary:hover { background:#f0eaf2; border-color:#ab98b6 }
.client-mode .step-footer { background:#fffefa }
.client-mode .text-button,.client-mode .text-actions button { color:#716078 }
.client-mode .ca-sections button { border-color:#d3c8d5; color:#63506f; background:#fffefa }
.client-mode .ca-sections button[aria-current] { background:#211c2d; border-color:#211c2d; color:#fffefa }
.client-mode .ca-pagination { border-color:var(--line) }
.client-mode .dashboard-tabs button { color:#6c6471; background:#fffefa }
.client-mode .dashboard-tabs button.active { background:#211c2d; border-color:#211c2d; color:#fffefa }
.client-mode .metric { background:#f3eee7; border:1px solid #e9dfd3; border-radius:8px }
.client-mode .progress-track { background:#e6dccf }
.client-mode .progress-track span { background:#997b54 }
.client-mode .timeline .number { background:#eee4d6; color:#644c2f }
.client-mode :is(.timeline .timing,.destination-card .matches,.source-link) { color:#80613a }
.client-mode .topic-tags span { border-color:#e2d7ca; background:#f9f5ef; color:#716047 }
.client-mode .destination-card.selected { border-color:#85705a; background:#f7f1e8 }
.client-mode .comparison-table th { background:#f3eee7 }
.client-mode .check-item:has(input:checked) { background:#f5f0e8 }
.client-mode .check-item .item-tag { background:#eee3d2; color:#725735 }
.client-mode .scenario-box .status-pill.neutral { background:#ede5f0; color:#665075 }
.client-mode .amount-output { background:#211c2d }
.client-mode .amount-output :is(p,small) { color:#d6c7df }
.client-mode .review-status { color:#765935 }
.client-mode .validation-error:not(:empty),.client-mode .cloud-status[data-kind=error] { background:#fff1ed; color:#8c382d; border-color:#a94836 }
.client-mode .field input[aria-invalid=true],.client-mode .ca-question input[aria-invalid=true] { border-color:#a94836 }
.client-mode .account-section { margin:60px 0 36px; scroll-margin-top:100px }
.client-mode .section-heading h2 { font-size:34px }
.client-mode .save-card { background:#fffefa; border-color:var(--line); border-radius:12px; box-shadow:0 10px 35px #211c2d04 }
.client-mode .card-icon { background:#eee4d6; color:#765b37; border:1px solid #deceb7; border-radius:8px }
.client-mode .cloud-status:not(:empty) { background:#f2ecf4; color:#5c4869; overflow-wrap:anywhere }
.client-mode .cloud-status[data-kind=error]:not(:empty) { background:#fff1ed; color:#8c382d }
.client-mode #auth-confirmation { border-left-color:#927047 }
.client-mode .help-note { background:#ede6dc; border:1px solid #ded1bf; border-radius:12px }
.client-mode .help-note>span { color:#97754a }
.client-mode .help-note h2 { font-size:26px }
.client-mode .site-footer .brand-icon { color:#ead4b2; background:#211c2d }
.client-mode .site-footer .brand small { color:#84718e }
.client-mode .site-footer h3 { font-family:var(--business-sans) }
.client-mode dialog { background:#fffefa }
.client-mode dialog::backdrop { background:#211c2d70 }
.client-mode #toast { background:#211c2d }

/* Preserve client-only controls and existing privacy boundaries. */
.client-mode .app-intro,
.client-mode #resume-banner,
.client-mode #save-device,
.client-mode #restore-device,
.client-mode #erase-plan,
.client-mode #import-plan,
.client-mode [data-save-shortcut],
.client-mode .upload-field,
.client-mode #cloud-file-list,
.client-mode #cloud-delete,
.client-mode #account-options,
.client-mode #social-auth,
.client-mode #cloud-register,
.client-mode #service,
.client-mode #audience-settings,
.client-mode #planner-privacy { display:none!important }

@media(max-width:1050px) {
  .client-mode .workspace { grid-template-columns:200px minmax(0,1fr) }
  .client-mode .sidebar { padding:28px 15px }
  .client-mode .main-panel { padding:30px }
}
@media(max-width:760px) {
  .client-mode .header-inner { padding:15px 20px; gap:12px }
  .client-mode .client-workspace-banner { margin:22px 0; padding:26px 24px }
  .client-mode .client-workspace-banner::before { opacity:.5; right:-185px }
  .client-mode .client-workspace-banner::after { opacity:.5; right:-94px }
  .client-mode .client-workspace-banner h1 { font-size:clamp(32px,6vw,42px) }
  .client-mode .workspace { grid-template-columns:minmax(0,1fr) }
  .client-mode .sidebar { padding:18px 16px 15px; border-radius:13px 13px 0 0; border-right:0 }
  .client-mode .sidebar .sidebar-route { font-size:14px }
  .client-mode .sidebar nav { padding:4px 3px 6px; scrollbar-color:#746080 #30273c }
  .client-mode .step-nav-button { min-height:44px; padding:9px 10px }
  .client-mode .main-panel { padding:27px 22px }
  .client-mode .account-section { margin-top:42px }
  .client-mode .section-heading h2 { font-size:30px }
  .client-mode .help-note h2 { font-size:24px }
  .client-mode .route-preview .route-country { min-width:0; overflow-wrap:anywhere }
}
@media(max-width:600px) {
  .account-options { grid-template-columns:1fr }
  .client-mode .save-card { padding:24px }
}
@media(max-width:420px) {
  .client-mode .header-inner { padding:14px 16px }
  .client-mode .header .brand { font-size:20px }
  .client-mode .header nav .account-link { font-size:10px; padding:8px; white-space:nowrap }
  .client-mode main { padding-left:12px; padding-right:12px }
  .client-mode .client-workspace-banner { padding:24px 20px }
  .client-mode .client-workspace-banner>a:not(.button) { font-size:11px }
  .client-mode .client-workspace-banner>p:not(.eyebrow) { font-size:13px }
  .client-mode .main-panel { padding:24px 16px }
  .client-mode .step-topline { flex-wrap:wrap; gap:8px }
  .client-mode .step-heading { font-size:30px }
  .client-mode .save-card { padding:22px 18px }
  .client-mode .button-row { align-items:stretch }
  .client-mode .button-row .button { flex:1 1 auto }
  .client-mode .step-footer .button { min-width:0 }
}
@media(prefers-reduced-motion:reduce) {
  .client-mode { scroll-behavior:auto }
  .client-mode *,.client-mode *::before,.client-mode *::after { animation:none!important; transition:none!important }
}

/* Firm preparation actions remain available alongside the client context. */
.client-mode .client-workspace-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.client-mode #client-save-return{min-height:44px}
.client-mode #client-workspace-status{font-size:13px;line-height:1.7;color:#806386;max-width:900px;margin:16px 0 0}
.client-mode #client-workspace-status:empty{display:none}
.client-mode [data-client-action]{margin:12px 14px 8px 0;min-height:44px}
@media(max-width:650px){.client-mode .client-workspace-actions>*{width:100%;justify-content:center}.client-mode #client-workspace-status{font-size:12px}}
