/* Focused account pages: readable lists, one primary action and native disclosures. */
.page-dashboard .shell,.page-calls .shell { max-width:1120px; }
.page-settings .shell { max-width:940px; }
.account-kicker { display:block; color:var(--text-muted,#626579); font-size:.875rem; font-weight:650; }
.account-back { display:inline-flex; align-items:center; gap:4px; min-height:44px; color:var(--text-muted,#626579); font-weight:650; text-decoration:none; }
.account-back i { font-size:1.4rem; }
.account-facts { margin:0; }
.account-facts > div { display:flex; justify-content:space-between; gap:20px; padding:10px 0; }
.account-facts dt { color:var(--text-muted,#626579); font-size:.9375rem; }
.account-facts dd { margin:0; text-align:right; color:var(--text,#242638); font-size:.9375rem; overflow-wrap:anywhere; }
.account-disclosure { margin-top:16px; overflow:hidden; }
.account-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:64px; padding:18px 22px; cursor:pointer; list-style:none; font-size:1rem; font-weight:700; color:var(--text,#242638); }
.account-disclosure > summary > span { display:flex; gap:12px; align-items:center; }
.account-disclosure > summary > span > i { font-size:1.25rem; color:var(--sa-accent,#6650dc); }
.account-disclosure > summary > i,.home-plan-details > summary > i,.account-profile-details > summary > i,.recent-call > summary > i,.statement-entry > summary > i { color:var(--text-muted,#626579); transition:transform .18s ease; font-size:1.25rem; }
.account-disclosure[open] > summary > i,.home-plan-details[open] > summary > i,.account-profile-details[open] > summary > i,.recent-call[open] > summary > i,.statement-entry[open] > summary > i { transform:rotate(180deg); }
.account-disclosure > summary::-webkit-details-marker,.account-profile-details > summary::-webkit-details-marker,.home-plan-details > summary::-webkit-details-marker,.credit-balance-details > summary::-webkit-details-marker,.recent-call > summary::-webkit-details-marker,.statement-entry > summary::-webkit-details-marker { display:none; }
.account-disclosure > summary:focus-visible,.account-profile-details > summary:focus-visible,.home-plan-details > summary:focus-visible,.recent-call > summary:focus-visible,.statement-entry > summary:focus-visible,.account-links a:focus-visible,.credit-balance-details > summary:focus-visible { outline:3px solid var(--sa-accent,#6650dc); outline-offset:-4px; border-radius:12px; }
.account-disclosure[open] > .panel-body,.recent-call[open] > .account-facts,.home-plan-details[open] > .call-outcome-flow { animation:account-reveal .18s ease-out; }
@keyframes account-reveal { from { opacity:0; transform:translateY(-3px); } to { opacity:1; transform:none; } }

/* Home keeps the main outcome visible; supporting routes open when requested. */
.page-dashboard .business-line-card { background:var(--card,#fff); border:1px solid var(--line-soft,#e6e3ef); box-shadow:0 10px 30px rgba(53,38,94,.035); }
.page-dashboard .business-line-head { align-items:flex-start; gap:16px; padding:24px 26px 18px; border-bottom:0; }
.page-dashboard .business-line-head h2 { margin:5px 0 0; color:var(--text,#242638); font-size:clamp(1.55rem,4.8vw,2.25rem); letter-spacing:-.045em; }
.page-dashboard .line-state-pill { background:#f2eefb; color:#5e4e92; font-size:.8125rem; line-height:1.4; white-space:normal; text-align:left; }
.page-dashboard .line-state-pill i { background:currentColor; box-shadow:none; }
.home-call-outcome { display:flex; align-items:flex-start; gap:18px; margin:0 24px 20px; padding:22px; border-radius:18px; background:linear-gradient(125deg,#f3effc,#f9f7fd); }
.home-call-mark { width:54px; height:54px; flex:0 0 54px; border-radius:18px; display:grid; place-items:center; color:#6951bb; background:#fff; box-shadow:0 4px 15px rgba(88,62,150,.06); animation:home-signal-breathe 5s ease-in-out infinite; }
.home-call-mark i { font-size:1.75rem; }
.home-call-outcome h3 { margin:5px 0 8px; font-size:clamp(1.1rem,3vw,1.45rem); line-height:1.35; color:var(--text,#242638); letter-spacing:-.025em; overflow-wrap:anywhere; }
.home-call-outcome p { margin:0; font-size:.9375rem; line-height:1.55; color:var(--text-muted,#626579); }
@keyframes home-signal-breathe { 0%,100% { box-shadow:0 0 0 0 rgba(113,82,201,.06); } 50% { box-shadow:0 0 0 8px rgba(113,82,201,.035); } }
.home-plan-details { margin:0 24px; border-top:1px solid var(--line-soft,#e6e3ef); }
.home-plan-details > summary { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:54px; list-style:none; cursor:pointer; color:var(--text-muted,#626579); font-size:.9375rem; font-weight:650; }
.page-dashboard .home-plan-details .call-outcome-flow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; padding:8px 0 20px; }
.page-dashboard .home-plan-details .call-outcome-flow > div { padding:0; background:transparent; border:0; }
.page-dashboard .home-plan-details .call-outcome-flow small { font-size:.8125rem; letter-spacing:.025em; }
.page-dashboard .home-plan-details .call-outcome-flow strong { font-size:1rem; line-height:1.45; }
.page-dashboard .home-plan-details .call-outcome-flow p { font-size:.9375rem; line-height:1.5; }
.page-dashboard .business-line-actions { padding:4px 24px 24px; border-top:0; }
.page-dashboard .today-override > summary { border:0; background:transparent; color:var(--text-muted,#626579); box-shadow:none; }
.page-dashboard .activity-copy strong { font-size:1rem; }
.page-dashboard .activity-copy small { font-size:.875rem; line-height:1.5; }
.page-dashboard .activity-list > a { min-height:76px; }

/* Account is a short list, not a strip of competing settings tabs. */
.account-overview { display:grid; grid-template-columns:1fr; gap:16px; }
.account-profile { padding:24px; }
.account-profile-head { display:flex; align-items:center; gap:16px; }
.account-profile-avatar { flex:0 0 56px; width:56px; height:56px; display:grid; place-items:center; border-radius:20px; background:#eee8fa; color:#654aa9; font-size:1.125rem; font-weight:750; }
.account-profile-head > div { min-width:0; }
.account-profile-head h2 { margin:0 0 4px; font-size:1.35rem; letter-spacing:-.025em; }
.account-profile-head p { margin:0; font-size:.9375rem; color:var(--text-muted,#626579); overflow-wrap:anywhere; }
.account-profile .verification-inline { margin-top:18px; font-size:.9375rem; }
.account-profile-details { margin-top:16px; border-top:1px solid var(--line-soft,#e6e3ef); }
.account-profile-details > summary { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:48px; padding-top:6px; font-size:.9375rem; list-style:none; cursor:pointer; color:var(--text-muted,#626579); }
.account-profile-details .help { margin-top:10px; }
.account-links { overflow:hidden; }
.account-links > a { display:flex; align-items:center; gap:14px; min-height:76px; padding:16px 22px; color:var(--text,#242638); text-decoration:none; transition:background .15s ease; }
.account-links > a + a { border-top:1px solid var(--line-soft,#e6e3ef); }
.account-links > a:hover { background:#f8f6fc; }
.account-links > a > i:first-child { display:grid; place-items:center; width:36px; height:36px; flex:0 0 36px; border-radius:12px; font-size:1.25rem; color:#756197; background:#f3eff8; }
.account-links > a > i:last-child { margin-left:auto; flex:0 0 auto; color:var(--text-muted,#626579); font-size:1.3rem; }
.account-links > a > span { min-width:0; }
.account-links strong,.account-links small { display:block; }
.account-links strong { font-size:1rem; font-weight:650; }
.account-links small { margin-top:4px; color:var(--text-muted,#626579); font-size:.875rem; line-height:1.45; overflow-wrap:anywhere; }
.account-disclosure .account-links { border-top:1px solid var(--line-soft,#e6e3ef); }
.account-signout { margin-top:22px; }
.account-signout .btn { min-width:160px; }
.page-settings .account-deletion { margin-top:20px; background:transparent; border-color:transparent; box-shadow:none; }
.page-settings .account-deletion > summary { font-size:.9375rem; font-weight:600; color:var(--text-muted,#626579); padding-left:0; padding-right:0; }
.page-settings .account-deletion[open] > .panel-body { padding-left:0; padding-right:0; }
.page-settings .panel-head .hint { font-size:.875rem; line-height:1.5; }

/* Calls and credit use the same calm disclosure-row pattern. */
.recent-call-list,.statement-list,.recording-list { padding:0 22px; }
.recent-call + .recent-call,.statement-entry + .statement-entry,.recording-item + .recording-item { border-top:1px solid var(--line-soft,#e6e3ef); }
.recent-call > summary { display:flex; align-items:center; gap:14px; min-height:90px; padding:16px 0; list-style:none; cursor:pointer; }
.recent-call-icon { display:grid; place-items:center; flex:0 0 42px; height:42px; border-radius:15px; background:#f1edf9; color:#77629a; font-size:1.35rem; }
.recent-call.unanswered .recent-call-icon { color:#ad5948; background:#fcf0ed; }
.recent-call-copy { flex:1; min-width:0; }
.recent-call-copy strong { display:block; font-size:1rem; font-weight:700; overflow-wrap:anywhere; }
.recent-call-copy small { display:block; margin-top:5px; font-size:.875rem; line-height:1.45; color:var(--text-muted,#626579); }
.recent-call-when { flex:0 0 auto; text-align:right; font-size:.875rem; color:var(--text-muted,#626579); }
.recent-call-when small { display:block; margin-top:5px; font-size:inherit; }
.call-facts { padding:0 0 18px 56px; }
.page-calls .secondary-plans { margin-top:16px; }
.page-calls .secondary-plans > summary { min-height:76px; }
.page-calls .secondary-plans summary strong { font-size:1rem; }
.page-calls .secondary-plans summary small { font-size:.875rem; }
.page-credit .credit-layout { grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr); grid-template-areas:"balance statement" "reminders statement" "rates statement"; align-items:start; gap:20px; }
.page-credit .credit-available { font-size:2.6rem; letter-spacing:-.06em; color:var(--text,#242638); margin:5px 0 12px; }
.credit-balance-details { margin-bottom:16px; }
.credit-balance-details > summary { display:flex; justify-content:space-between; align-items:center; min-height:44px; gap:8px; list-style:none; color:var(--text-muted,#626579); font-size:.875rem; cursor:pointer; }
.credit-balance-details .credit-breakdown { margin-top:8px; }
.page-credit .credit-rates { margin-top:0; }
.statement-entry > summary { display:flex; align-items:center; gap:16px; min-height:86px; padding:16px 0; list-style:none; cursor:pointer; }
.statement-entry > summary > span { flex:1; min-width:0; }
.statement-entry > summary strong { font-size:.9375rem; line-height:1.45; }
.statement-entry > summary small { display:block; margin-top:4px; color:var(--text-muted,#626579); font-size:.8125rem; }
.statement-entry .statement-amount { flex:0 0 auto; font-variant-numeric:tabular-nums; white-space:nowrap; }
.statement-entry > .account-facts { padding-bottom:16px; }
.page-credit .panel-foot { font-size:.8125rem; line-height:1.65; }

/* Insights stays a short summary, with specialist detail available underneath. */
.insights-periods { display:flex; flex-wrap:wrap; gap:8px; }
.insights-periods .btn { min-height:44px; }
.page-analytics .insights-summary { gap:14px; }
.page-analytics .insights-summary .kpi-label { font-size:.875rem; }
.page-analytics .insights-summary .kpi-value { font-size:2rem; }
.page-analytics .insights-summary .kpi-sub { font-size:.8125rem; }
.page-analytics .insights-detail { margin-top:16px; }
.recording-item { padding:20px 0; }
.recording-item-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.recording-item-head h3 { margin:0 0 5px; font-size:1rem; overflow-wrap:anywhere; }
.recording-item-head p,.recording-item-head small { margin:0; color:var(--text-muted,#626579); font-size:.875rem; line-height:1.6; }
.recording-transcript { margin-top:10px; }
.recording-transcript summary { min-height:44px; display:flex; align-items:center; cursor:pointer; font-size:.9375rem; color:var(--text-muted,#626579); }
.recording-transcript p { margin:4px 0 0; font-size:1rem; line-height:1.65; }

@media(max-width:760px) {
  .page-dashboard .business-line-head { padding:20px 18px 16px; flex-direction:column; gap:12px; }
  .page-dashboard .line-state-pill { font-size:.8125rem; }
  .home-call-outcome { margin:0 16px 10px; padding:18px 16px; gap:13px; }
  .home-call-mark { flex-basis:44px; width:44px; height:44px; border-radius:15px; }
  .home-call-mark i { font-size:1.45rem; }
  .home-plan-details { margin:0 18px; }
  .page-dashboard .home-plan-details .call-outcome-flow { grid-template-columns:1fr; gap:18px; }
  .page-dashboard .business-line-actions { padding:8px 18px 18px; gap:4px; }
  .page-dashboard .business-line-actions > .btn { width:100%; }
  .page-dashboard .today-override { width:100%; }
  .page-dashboard .today-override > summary { justify-content:center; }
  .page-dashboard .activity-list > a { gap:12px; }
  .page-dashboard .activity-list time { max-width:50px; font-size:.8125rem; white-space:normal; text-align:right; }
  .account-profile { padding:20px 18px; }
  .account-profile-avatar { flex-basis:48px; width:48px; height:48px; border-radius:16px; }
  .account-profile-head h2 { font-size:1.2rem; }
  .account-links > a { padding:17px 18px; gap:12px; }
  .account-disclosure > summary { padding:18px; }
  .account-signout .btn { width:100%; }
  .account-facts > div { gap:12px; }
  .account-facts dt { flex:0 0 35%; }
  .recent-call-list,.statement-list,.recording-list { padding:0 16px; }
  .recent-call > summary { gap:10px; min-height:88px; }
  .recent-call-icon { flex-basis:34px; height:38px; border-radius:13px; font-size:1.2rem; }
  .recent-call > summary > i { font-size:1.05rem; }
  .recent-call-copy strong { font-size:1rem; }
  .recent-call-copy small { font-size:.8125rem; }
  .recent-call-when { font-size:.8125rem; }
  .call-facts { padding-left:0; }
  .page-credit .credit-layout { grid-template-columns:minmax(0,1fr); grid-template-areas:"balance" "statement" "reminders" "rates"; gap:16px; }
  .statement-entry > summary { gap:10px; }
  .statement-entry > summary strong { font-size:.9375rem; }
  .page-analytics .insights-summary { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .page-analytics .insights-summary .panel-body { padding:18px 16px; }
  .insights-periods { width:100%; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .insights-periods .btn { padding:8px 4px; font-size:.875rem; }
}
@media(prefers-reduced-motion:reduce) {
  .home-call-mark { animation:none; }
  .account-disclosure[open] > .panel-body,.recent-call[open] > .account-facts,.home-plan-details[open] > .call-outcome-flow { animation:none; }
  .account-disclosure > summary > i,.home-plan-details > summary > i,.account-profile-details > summary > i,.recent-call > summary > i,.statement-entry > summary > i,.account-links > a { transition:none; }
}

.page-calls .view-switcher a.active { background:#eee9fa; color:#624ba4; box-shadow:none; }
