/* Account center uses the same typography and controls as the manager workspace. */
#sidebar button.sb-footer { width:100%; text-align:left; color:var(--type-text); background:transparent; border-radius:0; flex-shrink:0; }
#sidebar button.sb-footer:hover, #sidebar button.sb-footer.is-active { background:#f0eaf8; }
.as-page, .as-assets { color:var(--type-text); }
.as-profile { display:flex; align-items:center; gap:12px; padding:0 0 24px; }
.as-profile > div:nth-child(2) { flex:1; min-width:0; }
.as-profile small, .as-row small, .as-hero-side small { display:block; color:var(--type-muted); }
.as-avatar { display:grid; place-items:center; flex:none; width:42px; height:42px; border-radius:13px; color:#7850ac; background:#ede6f5; font-weight:600; }
.as-tag { display:inline-flex; align-items:center; padding:3px 9px; border-radius:6px; background:#f2eef8; color:#7956a3; font-size:var(--type-caption-size); line-height:var(--type-caption-line); white-space:nowrap; }
.as-tabs { display:flex; gap:24px; border-bottom:1px solid #e8e3ee; margin-bottom:24px; }
.as-tabs button { padding:10px 0; border:0; border-bottom:2px solid transparent; background:none; color:var(--type-muted); white-space:nowrap; }
.as-tabs button[aria-selected="true"] { color:#7950b3; border-bottom-color:#8a5bbd; font-weight:600; }
.as-card { border:1px solid #e9e4ef; background:#fff; border-radius:12px; padding:20px; margin-bottom:20px; min-width:0; }
.as-card-head { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:16px; }
.as-card h2, .as-card-head h2, .as-plan h3 { margin:0; }
.as-card-head h2 { flex:1; min-width:max-content; }
.as-note, .as-metric small, .as-plan small, .as-label, .as-source { color:var(--type-muted); font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.as-note { margin:8px 0 18px; }
.as-empty { display:grid; place-items:center; min-height:94px; padding:16px; text-align:center; color:var(--type-muted); background:#fcfbfd; border-radius:8px; }
.as-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.as-metric { padding:18px; border:1px solid #e9e4ef; border-radius:12px; display:flex; flex-direction:column; gap:8px; }
.as-metric > span { color:var(--type-muted); }
.as-usage-summary { color:var(--type-muted); font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.as-usage-summary b { color:var(--type-text); font-weight:500; font-variant-numeric:tabular-nums; }
.as-usage-chart { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; padding:12px 0 0; }
.as-usage-day { display:flex; flex-direction:column; align-items:center; gap:8px; min-width:0; }
.as-usage-value, .as-usage-date { font-size:var(--type-caption-size); line-height:var(--type-caption-line); font-variant-numeric:tabular-nums; white-space:nowrap; }
.as-usage-value { color:#70509b; font-weight:500; }
.as-usage-date { color:var(--type-muted); }
.as-usage-track { display:flex; align-items:flex-end; justify-content:center; height:112px; width:100%; border-bottom:1px solid #e9e4ef; }
.as-usage-track i { display:block; width:56%; max-width:40px; min-width:12px; border-radius:5px 5px 0 0; background:linear-gradient(180deg,#9b79cb,#d6c7ec); }
.as-metric strong, .as-price { font-size:var(--type-page-size); line-height:var(--type-page-line); font-weight:600; font-variant-numeric:tabular-nums; }
.as-inline-actions { display:flex; gap:10px; margin:18px 0 24px; }
.as-row { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 0; border-top:1px solid #eeeaf3; }
.as-row > span:last-child { text-align:right; }
.as-row b { font-weight:500; }
.as-segment { display:flex; gap:4px; flex-wrap:wrap; padding:3px; border-radius:8px; background:#f6f3f9; }
.as-segment .fm-btn { background:transparent; border-color:transparent; padding:4px 9px; min-height:30px; }
.as-segment [aria-pressed="true"] { background:#fff; color:#7950b3; border-color:#e7dff0; }
.as-plan { display:flex; align-items:center; justify-content:space-between; gap:24px; border:1px solid #e9e4ef; border-radius:12px; padding:22px; margin-bottom:16px; background:#fff; }
.as-plan > div:first-child { flex:1; min-width:0; }
.as-plan h3 { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.as-plan p { margin:8px 0; }
.as-plan-side { flex:none; text-align:right; display:flex; flex-direction:column; gap:12px; align-items:flex-end; }
.as-price small { margin-left:4px; font-weight:400; }
.as-asset-hero { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:20px; background:linear-gradient(115deg,#faf8fe,#fff); }
.as-asset-total { display:block; margin:6px 0; font-size:var(--type-metric-size); line-height:var(--type-metric-line); font-weight:600; letter-spacing:-.025em; font-variant-numeric:tabular-nums; }
.as-pnl { font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.as-hero-side { display:flex; flex-direction:column; gap:12px; justify-content:center; padding-left:24px; border-left:1px solid #e9e4ef; }
.as-hero-side b { display:block; font-weight:500; font-variant-numeric:tabular-nums; }
.as-source { grid-column:1/-1; }
.as-operations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:24px; }
.as-operations button { padding:12px 8px; }
.as-card:has(> .as-history) { padding:14px 20px; margin-bottom:16px; }
.as-card:has(> .as-history) .as-card-head { margin-bottom:8px; }
.as-history svg { display:block; width:100%; height:clamp(112px,15vh,144px); margin:6px 0 4px; stroke:none; }
.as-history svg :is(path,line) { vector-effect:non-scaling-stroke; }
.as-history-summary, .as-history-axis { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; color:var(--type-muted); font-size:var(--type-caption-size); line-height:var(--type-caption-line); font-variant-numeric:tabular-nums; }
.as-history-summary b { color:#7950b3; font-weight:500; }
.as-history-axis { margin-bottom:6px; }
.as-allocation { display:flex; gap:28px; align-items:center; }
.as-donut { flex:none; width:132px; height:132px; border-radius:50%; display:grid; place-items:center; }
.as-donut > span { width:100px; height:100px; display:flex; flex-direction:column; align-items:center; justify-content:center; border-radius:50%; background:#fff; font-size:var(--type-page-size); line-height:var(--type-page-line); font-weight:600; }
.as-donut small { color:var(--type-muted); font-weight:400; }
.as-legend { flex:1; min-width:0; }
.as-legend > div { display:grid; grid-template-columns:8px minmax(52px,1fr) auto auto; gap:12px; align-items:center; padding:9px 0; }
.as-legend i { width:8px; height:8px; border-radius:50%; }
.as-legend b { font-weight:500; text-align:right; }
.as-legend small { color:var(--type-muted); }
.as-table-wrap { overflow-x:auto; }
.as-table { width:100%; border-collapse:collapse; font-variant-numeric:tabular-nums; white-space:nowrap; }
.as-table th, .as-table td { padding:12px 10px; text-align:right; border-bottom:1px solid #f0ecf4; font-weight:400; }
.as-table th:first-child { text-align:left; }
.as-table thead { color:var(--type-muted); font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.as-table .as-group th { background:#faf8fc; color:#6d577f; font-weight:500; }
.as-group span { float:right; margin-left:20px; }
.as-assets .is-positive { color:#168775; }
.as-assets .is-negative { color:#c33e58; }
.as-dialog { max-width:min(480px,calc(100vw - 32px)); }
.as-wallet { display:flex; align-items:flex-start; gap:14px; padding:20px 0; border-top:1px solid #eeeaf3; }
#as-accounts-panel > .fm-panel { margin-bottom:20px; }
.as-wallet:first-child { padding-top:0; border-top:0; }
.as-wallet:last-child { padding-bottom:0; }
.as-wallet-icon, .as-wallet-empty > svg { flex:none; width:40px; height:40px; padding:10px; border-radius:12px; background:#f0eaf7; color:#8b64b7; }
.as-wallet-icon svg { display:block; width:20px; height:20px; }
.as-wallet-body { flex:1; min-width:0; }
.as-wallet-title { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.as-wallet-title h3 { margin:0; font-size:var(--type-section-size); line-height:var(--type-section-line); font-weight:600; }
.as-wallet-body p, .as-wallet-address > span { color:var(--type-muted); font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.as-wallet-body p { margin:8px 0 0; }
.as-wallet-address { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:8px; }
.as-wallet-address code { font-size:var(--type-caption-size); line-height:var(--type-caption-line); color:#695b7c; overflow-wrap:anywhere; user-select:all; }
.as-wallet-address .fm-btn { min-height:26px; padding:2px 7px; font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.as-wallet-empty { display:flex; align-items:center; flex-direction:column; text-align:center; gap:12px; padding:30px 12px; }
.as-wallet-empty > svg { width:44px; height:44px; }
.as-wallet-empty h3, .as-wallet-empty p { margin:0; }
.as-wallet-empty p { color:var(--type-muted); }
.auth-gate { width:100%; max-width:420px; margin:48px auto 32px; padding:28px; border:1px solid #e9e3f0; border-radius:16px; background:linear-gradient(155deg,#fcfaff,#fff 38%); box-sizing:border-box; }
.auth-logo { display:block; width:90px; height:auto; margin:0 0 28px; }
.auth-gate h2 { margin:0 0 8px; font-size:var(--type-page-size); line-height:var(--type-page-line); font-weight:600; }
.auth-description { color:var(--type-muted); margin:0 0 26px!important; overflow-wrap:anywhere; }
.auth-providers { display:flex; flex-direction:column; gap:10px; }
.auth-providers > .fm-btn { display:flex; align-items:center; text-align:left; gap:12px; width:100%; min-height:64px; padding:12px 14px; background:#fff; }
.auth-providers svg { width:22px; height:22px; flex:none; color:#8b64b7; }
.auth-providers > .fm-btn > span:first-of-type { flex:1; }
.auth-providers small { display:block; color:var(--type-muted); font-size:var(--type-caption-size); line-height:var(--type-caption-line); font-weight:400; margin-top:3px; }
.auth-providers > .fm-btn > span:last-child { color:#9b8aa9; }
.auth-divider { position:relative; display:flex; align-items:center; justify-content:center; gap:12px; margin:22px 0 16px; color:var(--type-muted); font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.auth-divider::before, .auth-divider::after { content:''; flex:1; height:1px; background:#eae5ef; }
.auth-social { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.auth-social .fm-btn { display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; }
.auth-hint { font-size:var(--type-caption-size); line-height:var(--type-caption-line); color:var(--type-muted); margin:18px 0!important; }
.auth-gate .fm-field { gap:8px; }
.auth-gate input { width:100%; min-height:44px; box-sizing:border-box; }
.auth-submit, .auth-gate > .fm-btn.primary { width:100%; min-height:42px; margin-top:8px; }
.auth-back { margin-top:16px; }
.auth-back .fm-btn, .auth-gate [data-auth="resend"] { border-color:transparent; background:transparent; color:#8060a1; padding-inline:0; }
.auth-local-code { padding:12px 14px; background:#f6f1fb; border-radius:8px; color:#786288; font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.auth-local-code b { display:inline-block; margin-left:10px; font-size:var(--type-section-size); line-height:var(--type-section-line); letter-spacing:.12em; color:#6e479d; }
.auth-local-code small { display:block; margin-top:5px; }
.auth-permissions { padding:16px; border:1px solid #eee7f5; border-radius:10px; background:#fbf9fd; }
.auth-permissions > b { display:block; margin-bottom:16px; font-weight:500; }
.auth-permissions > div { display:flex; gap:12px; justify-content:space-between; margin-top:10px; font-size:var(--type-caption-size); line-height:var(--type-caption-line); }
.auth-permissions > div > span:first-child { color:var(--type-muted); flex:none; }
.auth-permissions > div > span:last-child { text-align:right; }
.auth-gate .fm-form-error:empty, #auth-storage-note:empty { display:none; }
#sidebar .sb-footer .avatar > svg { width:20px; height:20px; margin:4px; color:#8c6cb5; stroke:currentColor; fill:none; }
.view-manager .fm-page { container: account-content / inline-size; }
@container account-content (max-width:560px) {
  .as-metrics { grid-template-columns:1fr; gap:8px; }
  .as-metric { display:grid; grid-template-columns:1fr auto; gap:2px 12px; padding:14px; }
  .as-metric small { grid-column:1/-1; }
  .as-card, .as-plan { padding:16px; }
  .as-asset-hero { grid-template-columns:1fr; }
  .as-hero-side { padding:12px 0 0; border-left:0; border-top:1px solid #e9e4ef; flex-direction:row; justify-content:space-between; }
  .as-allocation { flex-direction:column; gap:16px; }
  .as-legend { width:100%; }
  .as-plan { align-items:flex-start; gap:14px; }
  .as-plan-side { max-width:46%; }
  .as-tabs { gap:20px; }
  .as-profile { flex-wrap:wrap; }
  .as-operations { gap:8px; }
  .as-wallet { flex-wrap:wrap; gap:12px; }
  .as-wallet > .mw-actions { width:100%; justify-content:flex-end; }
  .auth-gate { margin-top:24px; padding:20px; }
}
