.portal-workspace { display: flex; flex-direction: column; }
.portal-workspace > .main-content { flex: 1; }
.account-context { padding: .8rem 1rem; background: #edf7f7; border-color: #cee4e7; border-radius: .7rem; }
.account-context > a { display: inline-flex; align-items: center; min-height: 2.5rem; padding: .4rem .8rem; border: 1px solid #bdd7dc; border-radius: .5rem; background: #fff; text-decoration: none; font-size: .85rem; font-weight: 600; }
.account-navigation { padding: .5rem; gap: .35rem; margin-block: .75rem 1.5rem; border: 1px solid var(--ui-line); border-radius: .75rem; background: #fff; }
.account-navigation a { padding: .5rem .8rem; min-height: 2.6rem; display: flex; align-items: center; justify-content: center; font-size: .88rem; font-weight: 500; }
.account-navigation a[aria-current=page] { background: #007b88; }
.portal-summary { gap: 1rem; margin-block: 1.25rem; }
.summary-card { padding: 1.2rem; border-color: var(--ui-line); }
.summary-card > strong { font-size: 2rem; color: #006b76; }
.summary-card > span:first-child { font-weight: 600; font-size: .95rem; }
.customer-grid { margin-block: 1.25rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); }
.customer-card { padding: 1.25rem; }
.portal-records .account-detail dt { font-size: .85rem; }
.portal-records .account-detail dd { margin-block-end: .75rem; }
.portal-records .account-detail dd:last-child { margin-block-end: 0; }
.profile-editor { max-width: 48rem; margin-inline: auto; }
.profile-actions { gap: .65rem; }
.account-profile-link { gap: 1rem; }
.account-profile-link p { font-size: .92rem; }
.portal-footer { padding-block: 1.15rem; background: #fff; }
@media (max-width: 680px) {
    .portal-workspace .header-content { align-items: center; }
    .portal-workspace .header-actions { width: 100%; }
    .portal-workspace .header-actions .language-link { margin-inline-start: auto; }
    .account-navigation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .account-navigation a { justify-content: flex-start; padding: .5rem .65rem; }
    .account-context { flex-direction: row; align-items: center; }
    .account-profile-link .primary-button { align-self: flex-start; }
    .portal-records, .portal-summary { grid-template-columns: minmax(0, 1fr); }
}
