.account-page .account-shell { max-width:1440px; padding:3rem 4% 5rem; }
.account-page .account-hero { align-items:center; }
.account-page .account-hero h1 { font-size:clamp(2rem,4vw,3rem); }
.account-page .header-actions { flex-wrap:nowrap; }
.account-page .site-header nav { min-width:0; }
.owner-dashboard { padding:clamp(1rem,2.4vw,2rem); }
.dashboard-heading,.dashboard-chart-heading,.dashboard-options,.dashboard-footnote { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.dashboard-heading h2 { margin-bottom:.35rem; font-size:clamp(1.5rem,3vw,2rem); }
.dashboard-subtitle,.dashboard-options,.dashboard-footnote,.dashboard-table-note,.dashboard-account-totals>p { color:var(--muted); font-size:.85rem; }
.dashboard-subtitle { margin-top:0; }
.dashboard-filters { display:grid; grid-template-columns:2fr 1fr 1fr auto; align-items:end; gap:.8rem; margin:1.5rem 0 1rem; }
.owner-dashboard label { display:grid; gap:.4rem; font-size:.85rem; }
.owner-dashboard select,.owner-dashboard input[type=date],.dashboard-period-nav button { font:inherit; color:var(--foreground); background:var(--surface-soft); border:1px solid var(--border); border-radius:12px; padding:.7rem .85rem; min-height:44px; min-width:0; }
.owner-dashboard input[type=date] { width:100%; box-sizing:border-box; color-scheme:dark; }
html[data-theme=light] .owner-dashboard input[type=date] { color-scheme:light; }
.owner-dashboard button { cursor:pointer; }
.owner-dashboard .button-primary { color:#fff; }
.owner-dashboard button:disabled { opacity:.4; cursor:default; }
.owner-dashboard :is(button,input,select,summary):focus-visible { outline:3px solid var(--primary); outline-offset:3px; }
.dashboard-period-nav { display:flex; justify-content:space-between; align-items:center; gap:.6rem; }
.dashboard-period-nav p { text-align:center; font-weight:700; }
.dashboard-options { flex-wrap:wrap; margin-top:.8rem; }
.dashboard-options label { display:flex; align-items:center; gap:.5rem; cursor:pointer; }
.dashboard-options input { accent-color:var(--primary); width:18px; height:18px; }
.dashboard-message { min-height:1.3em; font-size:.85rem; color:var(--muted); }
.dashboard-error { padding:1rem; border:1px solid #ff617e; border-radius:12px; }
.dashboard-coverage { padding:.85rem 1rem; border-left:3px solid var(--primary); background:var(--surface-soft); font-size:.85rem; line-height:1.6; }
.dashboard-tabs { display:flex; gap:.55rem; margin:1rem 0; padding:.35rem; border:1px solid var(--border); border-radius:14px; background:var(--surface-soft); overflow-x:auto; }
.dashboard-tabs button { flex:1; min-width:max-content; border:0; border-radius:10px; padding:.75rem 1rem; color:var(--muted); background:transparent; font:inherit; font-weight:700; }
.dashboard-tabs button[aria-selected=true] { color:#fff; background:var(--primary); }
.dashboard-actions-table { grid-column:1/-1; }
.dashboard-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.85rem; margin:1.25rem 0; }
.dashboard-metric { padding:1.2rem; background:var(--surface-soft); border:1px solid var(--border); border-radius:18px; }
.dashboard-metric>span { font-size:.9rem; color:var(--muted); }
.dashboard-metric strong { display:block; font-size:clamp(1.7rem,3vw,2.5rem); margin:.3rem 0; }
.metric-change { display:block; color:var(--muted); font-size:.78rem; }
.metric-change.is-up { color:#42dba1; }
.metric-change.is-down { color:#ff8ba0; }
html[data-theme=light] .metric-change.is-up { color:#087448; }
html[data-theme=light] .metric-change.is-down { color:#b62445; }
.dashboard-chart-panel,.dashboard-breakdown,.dashboard-daily,.dashboard-account-totals { border:1px solid var(--border); border-radius:18px; padding:1.2rem; margin-top:1rem; min-width:0; }
.dashboard-chart-heading h3,.dashboard-breakdown h3,.dashboard-account-totals h3 { margin:0 0 .5rem; }
.dashboard-chart-heading p { font-size:.8rem; color:var(--muted); margin:0; }
.dashboard-chart { margin-top:1.3rem; overflow-x:auto; }
.dashboard-chart svg { display:block; width:100%; min-width:520px; height:auto; }
.chart-gridline { stroke:var(--border); stroke-width:1; }
.chart-axis { fill:var(--muted); font-size:12px; }
.chart-area { fill:var(--primary); opacity:.12; }
.chart-current { stroke:var(--primary); stroke-width:3; fill:none; stroke-linejoin:round; }
.chart-previous { stroke:var(--violet,#a78bfa); stroke-width:2; stroke-dasharray:6 5; fill:none; }
.chart-point { fill:var(--primary); }
.dashboard-chart-legend { display:flex; flex-wrap:wrap; gap:1.2rem; font-size:.8rem; margin-top:.7rem; }
.dashboard-chart-legend span:first-child { color:var(--primary); }
.dashboard-chart-legend span:last-child { color:var(--violet,#a78bfa); }
.dashboard-chart-empty { text-align:center; color:var(--muted); font-size:.9rem; }
.dashboard-breakdowns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1rem; }
.dashboard-table-scroll { overflow:auto; max-height:360px; }
.owner-dashboard table { width:100%; border-collapse:collapse; font-size:.82rem; }
.owner-dashboard th,.owner-dashboard td { padding:.75rem .5rem; border-bottom:1px solid var(--border); text-align:right; white-space:nowrap; }
.owner-dashboard th:first-child,.owner-dashboard td:first-child { text-align:left; white-space:normal; overflow-wrap:anywhere; min-width:110px; }
.owner-dashboard th { color:var(--muted); font-weight:600; }
.owner-dashboard caption { text-align:left; margin:.8rem 0; color:var(--muted); }
.dashboard-table-note { display:block; margin-top:.8rem; font-size:.72rem; }
.dashboard-daily summary { cursor:pointer; font-weight:700; min-height:28px; }
.dashboard-footnote { align-items:start; margin-top:1rem; }
.dashboard-footnote p { max-width:700px; margin:0; line-height:1.6; }
.dashboard-footnote button { flex-shrink:0; }
.dashboard-account-totals>div { display:flex; gap:3rem; flex-wrap:wrap; }
.dashboard-account-totals strong { display:block; font-size:1.7rem; }
.dashboard-account-totals span { font-size:.85rem; color:var(--muted); }
@media (max-width:1200px) {
  .account-page .site-header { grid-template-columns:auto 1fr; gap:.8rem; }
  .account-page .site-header nav { grid-row:2; grid-column:1/-1; justify-content:center; gap:.6rem 1rem; }
  .account-page .header-actions { justify-self:end; }
}
@media (max-width:760px) {
  .account-page .account-shell { padding:2rem 4% 3rem; }
  .dashboard-filters { grid-template-columns:1fr 1fr; }
  .dashboard-filters label:first-child { grid-column:1/-1; }
  .dashboard-filters>.button { grid-column:1/-1; }
  .dashboard-breakdowns { grid-template-columns:1fr; }
  .dashboard-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dashboard-period-nav { flex-wrap:wrap; }
  .dashboard-period-nav p { order:-1; width:100%; margin:.4rem 0; }
  .dashboard-period-nav button { font-size:.75rem; flex:1; }
  .dashboard-heading,.dashboard-footnote { align-items:start; flex-direction:column; }
  .dashboard-chart-heading { align-items:start; flex-wrap:wrap; }
  .dashboard-metric { padding:.8rem; }
  .dashboard-account-totals>div { gap:1.5rem; }
}
