/* Focused account and public profile layout; theme colors come from tokens. */
body[data-theme-area="frontend"] :is(.account-dashboard, .public-profile-page) { min-width: 0; }
.account-dashboard .account-panel + .account-panel { margin-top: 0; }
body[data-theme-area="frontend"] .account-dashboard .dash-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; align-items: start; }
.account-dashboard .dash-span-8 { grid-column: span 8; }
.account-dashboard .dash-span-4 { grid-column: span 4; }
.account-dashboard .dash-span-12 { grid-column: 1 / -1; }
.account-dashboard .dash-hero-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.account-dashboard .dashboard-growth-period-panel .panel-head { min-height: 56px; padding-block: 14px; }
body[data-theme-area="frontend"] .account-dashboard .rc-growth-period { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.account-dashboard .rc-growth-period .info-item { display: block; padding: 0 20px; border-bottom: 0; border-right: 1px solid var(--account-border); }
.account-dashboard .rc-growth-period .info-item:first-child { padding-left: 0; }
.account-dashboard .rc-growth-period .info-item:last-child { border-right: 0; }
.account-dashboard .rc-growth-period dt { font-size: .8rem; }
.account-dashboard .rc-growth-period dd { display: grid; gap: 4px; margin: 6px 0 0; text-align: left; }
.account-dashboard .rc-growth-period dd strong { font-size: 1.25rem; font-variant-numeric: tabular-nums; }
.account-dashboard .rc-growth-period dd span { color: var(--account-muted); font-size: .76rem; }
.account-dashboard .panel-body .df-empty-state { padding: 16px 0; border: 0; background: transparent; box-shadow: none; }
.account-dashboard .panel-body .df-empty-state-title { font-size: .95rem; }
body[data-theme-area="frontend"] .profile-subnav { position: sticky; top: var(--df-header-total, 64px); z-index: 15; margin-bottom: 20px; background: var(--account-page); }
.profile-subnav a { min-height: 44px; }
.profile-main [id^="profile-"], .public-profile-page [id^="profile-"] { scroll-margin-top: calc(var(--df-header-total, 64px) + 76px); }
body[data-theme-area="frontend"] .profile-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; margin-inline: 0; max-width: none; align-items: start; }
.profile-save-actions { display: flex; align-items: center; gap: 12px; padding-top: 18px; border-top: 1px solid var(--account-border); }
.profile-save-actions .btn { min-width: 120px; min-height: 44px; }
body[data-theme-area="frontend"] .profile-main .profile-fields { gap: 18px; }
.profile-main .profile-theme-panel .panel-head p { font-size: .84rem; }
.profile-main .profile-theme-options { gap: 12px; }
.profile-main .avatar-zone { display: flex; flex-wrap: wrap; align-items: center; }
.profile-main .avatar-actions { display: grid; gap: 8px; flex: 1; min-width: 160px; }
.profile-main .avatar-status:empty { display: none; }
.profile-main .avatar-pick-btn { justify-self: start; min-height: 40px; }
body[data-theme-area="frontend"] .public-achievement-head { display: grid; grid-template-columns: minmax(0, 1fr) 220px; align-items: center; gap: 24px; padding: 26px; margin-bottom: 20px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); box-shadow: none; }
.public-user-card { min-width: 0; }
.public-user-card > div { min-width: 0; }
.public-user-card h1 { margin: 0 0 8px; font-size: clamp(1.4rem, 2.3vw, 1.8rem); overflow-wrap: anywhere; }
.public-user-card p { overflow-wrap: anywhere; font-size: .86rem; line-height: 1.65; }
.public-profile-owner-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
body[data-theme-area="frontend"] .public-stat-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; overflow: hidden; margin-bottom: 20px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); }
.public-stat-grid .public-stat { padding: 16px 20px; min-width: 0; border: 0; border-right: 1px solid var(--border); background: transparent; }
.public-stat-grid .public-stat:last-child { border-right: 0; }
.public-stat-grid .public-stat strong { font-size: 1.4rem; font-variant-numeric: tabular-nums; }
.public-profile-nav { position: sticky; top: var(--df-header-total, 64px); z-index: 15; margin-bottom: 20px; background: var(--surface); border: 1px solid var(--border); border-radius: 8px; }
.public-profile-nav a { min-height: 44px; }
body[data-theme-area="frontend"] .public-profile-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); gap: 20px; align-items: start; }
.public-profile-primary, .public-profile-aside { display: grid; gap: 20px; min-width: 0; }
body[data-theme-area="frontend"] .public-profile-layout .surface { margin: 0; padding: 22px; box-shadow: none; border: 1px solid var(--border); border-radius: 10px; }
.public-profile-layout .section-kicker { display: none; }
.public-profile-layout .section-title { font-size: 1.04rem; }
body[data-theme-area="frontend"] .public-profile-empty { min-height: 0; padding: 18px 0; border: 0; box-shadow: none; background: transparent; text-align: left; align-items: start; }
body[data-theme-area="frontend"].route-users-show .public-profile-empty .empty-state-mark { display: none; }
body[data-theme-area="frontend"].route-users-show .public-profile-empty .empty-state-title { font-size: .94rem; }
body[data-theme-area="frontend"].route-users-show .public-profile-empty .empty-state-actions { justify-content: flex-start !important; }
.public-profile-page .public-profile-empty .empty-state-body { text-align: left; }
body[data-theme-area="frontend"].route-users-show .public-user-card > img { width: 72px; height: 72px; min-width: 72px; flex: 0 0 72px; object-fit: cover; border-radius: 50%; }
body[data-theme-area="frontend"].route-users-show .public-profile-layout .section-title { font-size: 1.04rem; }
.public-profile-empty .btn { min-height: 38px; }
@media (max-width: 900px) {
    .account-dashboard .dash-span-8, .account-dashboard .dash-span-4 { grid-column: 1 / -1; }
    body[data-theme-area="frontend"] .profile-layout, body[data-theme-area="frontend"] .public-profile-layout { grid-template-columns: 1fr; }
    .profile-side { position: static; }
    body[data-theme-area="frontend"] .public-stat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .public-stat-grid .public-stat { border-bottom: 1px solid var(--border); }
    .public-stat-grid .public-stat:nth-child(3n) { border-right: 0; }
    .public-stat-grid .public-stat:nth-last-child(-n+3) { border-bottom: 0; }
}
@media (max-width: 560px) {
    body[data-theme-area="frontend"] .account-profile-hero { grid-template-columns: 56px minmax(0, 1fr); gap: 14px; padding: 20px; }
    .account-profile-hero .df-avatar-round { width: 56px; height: 56px; }
    .account-profile-hero .dash-hero-actions { grid-column: 1 / -1; margin: 0; }
    .account-profile-hero .dash-hero-name { font-size: 1.35rem; }
    .dashboard-stats-strip { gap: 8px; }
    .account-dashboard .rc-growth-period .info-item { padding: 0 8px; }
    .account-dashboard .rc-growth-period dd strong { font-size: 1.05rem; }
    .account-dashboard .rc-growth-period dd span { font-size: .7rem; }
    .profile-page-head { flex-wrap: wrap; gap: 12px; }
    .profile-save-actions .btn { width: 100%; }
    body[data-theme-area="frontend"] .public-achievement-head { grid-template-columns: 1fr; padding: 20px; gap: 18px; }
    .public-achievement-head .public-user-card { align-items: flex-start; gap: 14px; }
    body[data-theme-area="frontend"].route-users-show .public-user-card > img { width: 60px; height: 60px; min-width: 60px; flex-basis: 60px; }
    .public-achievement-head .public-level-box { min-width: 0; width: 100%; text-align: left; border: 0; border-top: 1px solid var(--border); padding: 14px 0 0; }
    body[data-theme-area="frontend"].route-users-show .public-level-box strong { font-size: 1.4rem; }
    .public-stat-grid .public-stat { padding: 14px 12px; }
    .public-stat-grid .public-stat span { font-size: .74rem; }
    .public-stat-grid .public-stat strong { font-size: 1.15rem; }
}
