/* ═══════════════════════════════════════════════════════════════════════════
   ACCOUNT — DESKTOP PREMIUM UPGRADE
   ───────────────────────────────────────────────────────────────────────────
   Visual-only refinements applied to the storefront account section
   (/account/*) on DESKTOP screens only (≥ 901px). Mobile, tablet portrait,
   and PWA shells are untouched: the entire file lives inside
   @media (min-width: 901px), and selectors target only `.elite-account-*`
   classes already in use by the desktop views.
   No layout, markup, or business logic is changed. Mobile-app.css continues
   to drive the PWA / mobile experience below 901px.
   ═══════════════════════════════════════════════════════════════════════════ */

@media (min-width: 901px) {

    /* Design tokens scoped to the account shell so they cannot leak globally. */
    .elite-account {
        --acc-bg:        #f5f6f8;
        --acc-surface:   #ffffff;
        --acc-surface-2: #fafbfc;
        --acc-border:    #e6e8ec;
        --acc-border-soft:#eef0f3;
        --acc-ink:       #0e1116;
        --acc-ink-soft:  #444b57;
        --acc-muted:     #6b7280;
        --acc-accent:    #0e1116;
        --acc-success:   #047857;
        --acc-warning:   #92400e;
        --acc-danger:    #b91c1c;
        --acc-info:      #1e40af;
        --acc-shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);
        --acc-shadow:    0 4px 12px rgba(15, 23, 42, .05);
        --acc-shadow-lg: 0 10px 30px rgba(15, 23, 42, .08);
        --acc-radius:    14px;
        --acc-radius-sm: 10px;
        --acc-gap:       28px;
    }

    .elite-account { background: var(--acc-bg); }

    /* ── Grid & shell ──────────────────────────────────────────────── */
    .elite-account-grid {
        max-width: 1480px;
        padding: 32px 40px 64px;
        gap: 32px;
        grid-template-columns: 296px minmax(0, 1fr);
    }

    /* ── Sidebar ───────────────────────────────────────────────────── */
    .elite-account-sidebar {
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow);
        height: calc(100vh - 64px);
        top: 32px;
        overflow: hidden;
        padding: 0;
    }

    .elite-sidebar-header {
        padding: 28px 24px;
        border-bottom: 1px solid var(--acc-border-soft);
        background: linear-gradient(180deg, var(--acc-surface-2), var(--acc-surface));
    }

    .elite-user-avatar-large {
        width: 72px;
        height: 72px;
        border-radius: 50%;
        background: var(--acc-ink);
        font-size: 26px;
        letter-spacing: 0.5px;
        box-shadow: 0 4px 14px rgba(14, 17, 22, 0.22);
    }

    .elite-user-name-large { font-size: 16px; font-weight: 600; }
    .elite-user-email-small {
        font-size: 12.5px;
        color: var(--acc-muted);
        word-break: break-all;
    }

    .elite-nav { padding: 14px 12px; overflow-y: auto; }

    .elite-nav-link {
        margin: 2px 0;
        padding: 11px 14px;
        border-radius: var(--acc-radius-sm);
        color: var(--acc-ink-soft);
        font-weight: 500;
        font-size: 13.5px;
        letter-spacing: 0.01em;
    }

    .elite-nav-link:hover {
        background: var(--acc-surface-2);
        color: var(--acc-ink);
    }

    .elite-nav-link.active {
        background: var(--acc-ink);
        color: #fff;
        box-shadow: 0 2px 8px rgba(14, 17, 22, .18);
    }
    .elite-nav-link.active::before { display: none; }
    .elite-nav-link.active svg { stroke: #fff; }
    .elite-nav-link.active .elite-nav-badge {
        background: rgba(255, 255, 255, .18);
        color: #fff;
    }

    .elite-nav-badge {
        min-width: 22px;
        height: 22px;
        padding: 0 8px;
        border-radius: 11px;
        font-weight: 600;
        font-size: 11px;
        background: var(--acc-ink);
        color: #fff;
    }

    .elite-sidebar-footer {
        padding: 16px 16px 20px;
        border-top: 1px solid var(--acc-border-soft);
    }

    .elite-logout-btn {
        height: 42px;
        border-radius: var(--acc-radius-sm);
        font-size: 13.5px;
        font-weight: 600;
        border-color: var(--acc-border);
    }

    /* ── Main column ───────────────────────────────────────────────── */
    .elite-account-main {
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: var(--acc-gap);
    }

    /* Welcome / page header — same markup, refined chrome. */
    .elite-welcome-section {
        margin: 0;
        padding: 28px 32px;
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow);
        align-items: center;
    }

    .elite-welcome-title {
        font-family: 'Playfair Display', Georgia, serif;
        font-size: 32px;
        font-weight: 600;
        letter-spacing: -0.01em;
        color: var(--acc-ink);
        margin: 0;
        line-height: 1.15;
    }
    .elite-welcome-subtitle {
        margin: 6px 0 0;
        font-size: 14px;
        color: var(--acc-muted);
    }

    .elite-loyalty-badge {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px 18px;
        background: linear-gradient(135deg, #0e1116 0%, #2a2e36 100%);
        color: #fff;
        border-radius: 999px;
        box-shadow: 0 6px 18px rgba(14, 17, 22, .25);
    }
    .elite-loyalty-info { display: flex; flex-direction: column; line-height: 1.05; }
    .elite-loyalty-points { font-size: 20px; font-weight: 700; letter-spacing: -0.01em; }
    .elite-loyalty-label  { font-size: 10.5px; text-transform: uppercase; letter-spacing: .14em; color: rgba(255,255,255,.7); }

    /* Stat cards */
    .elite-stats-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 18px;
    }

    .elite-stat-card {
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow-sm);
        padding: 22px 22px;
        transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
        display: flex;
        align-items: center;
        gap: 16px;
    }
    .elite-stat-card:hover {
        transform: translateY(-2px);
        box-shadow: var(--acc-shadow);
        border-color: #d8dbe1;
    }

    .elite-stat-icon {
        width: 44px;
        height: 44px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex: none;
    }
    .elite-stat-icon-orders    { background: #eef4ff; color: #1e40af; }
    .elite-stat-icon-completed { background: #ecfdf5; color: #047857; }
    .elite-stat-icon-wishlist  { background: #fef2f2; color: #b91c1c; }
    .elite-stat-icon-points    { background: #fffbeb; color: #92400e; }
    .elite-stat-icon svg       { stroke: currentColor; }

    .elite-stat-value {
        font-size: 22px;
        font-weight: 700;
        color: var(--acc-ink);
        line-height: 1.05;
        letter-spacing: -0.01em;
    }
    .elite-stat-label {
        font-size: 12px;
        color: var(--acc-muted);
        text-transform: uppercase;
        letter-spacing: .08em;
        margin-top: 4px;
    }

    /* Section headings */
    .elite-section-heading {
        font-family: 'Playfair Display', Georgia, serif;
        font-size: 22px;
        font-weight: 600;
        color: var(--acc-ink);
        letter-spacing: -0.005em;
        margin: 0 0 14px;
    }

    .elite-section-header-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 14px;
    }
    .elite-view-all {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 13px;
        font-weight: 600;
        color: var(--acc-ink-soft);
        text-decoration: none;
        padding: 6px 10px;
        border-radius: 8px;
        transition: background .15s, color .15s;
    }
    .elite-view-all:hover { background: var(--acc-surface-2); color: var(--acc-ink); }

    /* Quick action cards */
    .elite-actions-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
    .elite-action-card {
        display: flex;
        align-items: center;
        gap: 16px;
        padding: 20px 22px;
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow-sm);
        color: var(--acc-ink);
        text-decoration: none;
        transition: transform .18s, border-color .18s, box-shadow .18s;
    }
    .elite-action-card:hover {
        transform: translateY(-2px);
        border-color: var(--acc-ink);
        box-shadow: var(--acc-shadow);
    }
    .elite-action-icon {
        width: 48px;
        height: 48px;
        border-radius: 12px;
        background: var(--acc-surface-2);
        display: flex;
        align-items: center;
        justify-content: center;
        flex: none;
        color: var(--acc-ink);
    }
    .elite-action-content { flex: 1; display: flex; flex-direction: column; gap: 2px; }
    .elite-action-title {
        font-size: 15px;
        font-weight: 600;
        color: var(--acc-ink);
    }
    .elite-action-subtitle {
        font-size: 12.5px;
        color: var(--acc-muted);
    }
    .elite-action-arrow { color: var(--acc-muted); transition: transform .15s, color .15s; }
    .elite-action-card:hover .elite-action-arrow { color: var(--acc-ink); transform: translateX(3px); }

    /* Recent orders list — table-style on desktop */
    .elite-orders-list {
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow-sm);
        overflow: hidden;
    }
    .elite-order-card {
        display: flex;
        flex-direction: column;
        gap: 6px;
        padding: 18px 22px;
        border-bottom: 1px solid var(--acc-border-soft);
        transition: background .15s;
        text-decoration: none;
        color: var(--acc-ink);
    }
    .elite-order-card:last-child { border-bottom: none; }
    .elite-order-card:hover { background: var(--acc-surface-2); }

    .elite-order-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .elite-order-number {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        font-weight: 600;
        font-size: 14.5px;
        color: var(--acc-ink);
    }
    .elite-order-status {
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .08em;
        padding: 4px 10px;
        border-radius: 999px;
        background: var(--acc-surface-2);
        color: var(--acc-ink-soft);
    }
    .elite-order-status-pending    { background: #fffbeb; color: #92400e; }
    .elite-order-status-confirmed,
    .elite-order-status-processing { background: #eef4ff; color: #1e40af; }
    .elite-order-status-shipped    { background: #ecfeff; color: #155e75; }
    .elite-order-status-delivered,
    .elite-order-status-completed  { background: #ecfdf5; color: #047857; }
    .elite-order-status-cancelled,
    .elite-order-status-refunded   { background: #fef2f2; color: #b91c1c; }

    .elite-order-details {
        font-size: 13px;
        color: var(--acc-muted);
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
    }
    .elite-order-separator { color: #d6d8de; }
    .elite-order-total { font-weight: 600; color: var(--acc-ink); }

    /* Notification card */
    .elite-notifications-section { margin-top: 0; }
    .elite-notification-card {
        display: flex;
        gap: 18px;
        align-items: flex-start;
        padding: 22px 24px;
        background: linear-gradient(135deg, #fafbfc 0%, #ffffff 100%);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow-sm);
    }
    .elite-notification-icon {
        flex: none;
        width: 44px; height: 44px;
        border-radius: 12px;
        background: var(--acc-ink);
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .elite-notification-title { font-size: 15px; font-weight: 600; color: var(--acc-ink); margin: 0; }
    .elite-notification-text  { font-size: 13.5px; color: var(--acc-muted); margin: 4px 0 12px; }
    .elite-notification-actions { display: flex; gap: 10px; flex-wrap: wrap; }
    .elite-notification-btn {
        background: var(--acc-ink);
        color: #fff;
        border: 1px solid var(--acc-ink);
        padding: 8px 16px;
        border-radius: 8px;
        font-size: 13px;
        font-weight: 600;
        cursor: pointer;
        transition: opacity .15s;
    }
    .elite-notification-btn:hover { opacity: .9; }
    .elite-notification-btn-secondary {
        background: #fff;
        color: var(--acc-ink);
        border: 1px solid var(--acc-border);
        padding: 8px 16px;
        border-radius: 8px;
        font-size: 13px;
        font-weight: 600;
        cursor: pointer;
    }
    .elite-notification-btn-secondary:hover { background: var(--acc-surface-2); }

    /* ── Subpages (orders / addresses / profile / wishlist / settings) ──
       The subpages render a header and a content card inside .elite-account-main.
       Apply consistent card chrome to any direct content blocks. */
    .elite-account-main > section,
    .elite-account-main > .elite-page-section,
    .elite-account-main > .elite-card,
    .elite-account-main > .elite-block {
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow-sm);
        padding: 28px 32px;
    }

    /* Generic page header used by subpages */
    .elite-page-header {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 24px;
        padding: 0;
        margin-bottom: 0;
    }
    .elite-page-title {
        font-family: 'Playfair Display', Georgia, serif;
        font-size: 30px;
        font-weight: 600;
        color: var(--acc-ink);
        margin: 0;
        letter-spacing: -0.01em;
    }
    .elite-page-subtitle {
        font-size: 14px;
        color: var(--acc-muted);
        margin: 6px 0 0;
    }

    /* Tables */
    .elite-account-main table {
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
        font-size: 14px;
    }
    .elite-account-main table thead th {
        text-align: left;
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .1em;
        color: var(--acc-muted);
        padding: 12px 14px;
        background: var(--acc-surface-2);
        border-bottom: 1px solid var(--acc-border);
    }
    .elite-account-main table tbody td {
        padding: 14px 14px;
        border-bottom: 1px solid var(--acc-border-soft);
        color: var(--acc-ink);
        vertical-align: middle;
    }
    .elite-account-main table tbody tr:last-child td { border-bottom: none; }
    .elite-account-main table tbody tr:hover { background: var(--acc-surface-2); }

    /* Form fields inside account pages */
    .elite-account-main input[type=text],
    .elite-account-main input[type=email],
    .elite-account-main input[type=tel],
    .elite-account-main input[type=password],
    .elite-account-main input[type=url],
    .elite-account-main input[type=number],
    .elite-account-main select,
    .elite-account-main textarea {
        width: 100%;
        padding: 11px 14px;
        font-size: 14px;
        border: 1px solid var(--acc-border);
        border-radius: 10px;
        background: #fff;
        color: var(--acc-ink);
        transition: border-color .15s, box-shadow .15s;
        font-family: inherit;
    }
    .elite-account-main input:focus,
    .elite-account-main select:focus,
    .elite-account-main textarea:focus {
        outline: none;
        border-color: var(--acc-ink);
        box-shadow: 0 0 0 3px rgba(14, 17, 22, .08);
    }
    .elite-account-main label {
        display: block;
        font-size: 12px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .08em;
        color: var(--acc-muted);
        margin-bottom: 6px;
    }

    /* Primary / secondary buttons used inside account pages */
    .elite-account-main .btn,
    .elite-account-main button[type=submit],
    .elite-account-main .sf-btn {
        height: 44px;
        padding: 0 22px;
        border-radius: 10px;
        font-weight: 600;
        font-size: 14px;
        letter-spacing: .01em;
        border: 1px solid var(--acc-ink);
        background: var(--acc-ink);
        color: #fff;
        cursor: pointer;
        transition: opacity .15s, transform .1s;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }
    .elite-account-main .btn:hover,
    .elite-account-main button[type=submit]:hover,
    .elite-account-main .sf-btn:hover { opacity: .92; }
    .elite-account-main .btn:active { transform: translateY(1px); }

    .elite-account-main .btn-outline,
    .elite-account-main .btn-secondary {
        background: #fff;
        color: var(--acc-ink);
        border-color: var(--acc-border);
    }
    .elite-account-main .btn-outline:hover,
    .elite-account-main .btn-secondary:hover { background: var(--acc-surface-2); border-color: var(--acc-ink); }

    .elite-account-main .btn-danger {
        background: var(--acc-danger);
        border-color: var(--acc-danger);
        color: #fff;
    }

    /* Empty states */
    .elite-empty-state {
        text-align: center;
        padding: 64px 24px;
        color: var(--acc-muted);
    }
    .elite-empty-state .elite-empty-icon {
        width: 64px; height: 64px;
        border-radius: 50%;
        background: var(--acc-surface-2);
        border: 1px solid var(--acc-border);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 16px;
        color: var(--acc-ink-soft);
    }
    .elite-empty-state h3 {
        font-family: 'Playfair Display', Georgia, serif;
        font-size: 20px;
        color: var(--acc-ink);
        margin: 0 0 6px;
    }
    .elite-empty-state p { margin: 0 0 18px; font-size: 14px; }

    /* Address & wishlist & order summary cards inside the account area */
    .elite-grid-cards {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        gap: 18px;
    }

    /* Generous typography rhythm on extra-wide displays */
    @media (min-width: 1440px) {
        .elite-account-grid { padding: 40px 56px 80px; gap: 40px; }
        .elite-welcome-title { font-size: 36px; }
        .elite-page-title    { font-size: 34px; }
        .elite-section-heading { font-size: 24px; }
    }
}

/* ── Loading skeletons (desktop) ──────────────────────────────────── */
@media (min-width: 901px) {
    .elite-skeleton {
        background: linear-gradient(90deg, #eef0f3 0%, #f7f8fa 50%, #eef0f3 100%);
        background-size: 200% 100%;
        animation: eliteSkelShimmer 1.4s ease-in-out infinite;
        border-radius: 8px;
    }
    @keyframes eliteSkelShimmer {
        0%   { background-position: 200% 0; }
        100% { background-position: -200% 0; }
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Legacy account subpages (orders, profile, addresses, wishlist, settings,
   notifications, order-detail, order-tracking, returns) use the older
   .sf-page + .sf-account-layout shell. These selectors scope the same
   premium chrome to those pages on desktop only. No markup is changed.
   ═══════════════════════════════════════════════════════════════════════════ */
@media (min-width: 901px) {
    /* Tokens shared with the elite shell */
    :root {
        --acc-bg:        #f5f6f8;
        --acc-surface:   #ffffff;
        --acc-surface-2: #fafbfc;
        --acc-border:    #e6e8ec;
        --acc-border-soft:#eef0f3;
        --acc-ink:       #0e1116;
        --acc-ink-soft:  #444b57;
        --acc-muted:     #6b7280;
        --acc-shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);
        --acc-shadow:    0 4px 12px rgba(15, 23, 42, .05);
        --acc-radius:    14px;
        --acc-radius-sm: 10px;
    }

    /* Wider, more breathable page when the layout is an account page */
    .sf-page:has(.sf-account-layout) {
        background: var(--acc-bg);
        max-width: 1480px;
        margin: 0 auto;
        padding: 40px 48px 80px;
    }

    /* Distinct page header */
    .sf-page:has(.sf-account-layout) > .sf-kicker {
        font-size: 11px;
        letter-spacing: .18em;
        text-transform: uppercase;
        color: var(--acc-muted);
        margin: 0 0 6px;
    }
    .sf-page:has(.sf-account-layout) > .sf-heading {
        font-family: 'Playfair Display', Georgia, serif;
        font-size: 32px;
        font-weight: 600;
        color: var(--acc-ink);
        letter-spacing: -0.01em;
        margin: 0 0 24px;
    }
    .sf-page:has(.sf-account-layout) > .sf-rule { display: none; }

    /* Layout */
    .sf-account-layout {
        grid-template-columns: 280px minmax(0, 1fr);
        gap: 32px;
        align-items: flex-start;
    }

    /* Sidebar card */
    .sf-account-sidebar {
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow);
        padding: 12px 12px;
        position: sticky;
        top: 32px;
    }
    .sf-account-link {
        display: flex;
        align-items: center;
        padding: 12px 14px;
        border-bottom: none;
        border-radius: var(--acc-radius-sm);
        font-size: 13px;
        letter-spacing: .04em;
        text-transform: uppercase;
        font-weight: 600;
        color: var(--acc-ink-soft);
        margin: 2px 0;
        transition: background .15s, color .15s;
    }
    .sf-account-link:hover {
        background: var(--acc-surface-2);
        color: var(--acc-ink);
    }
    .sf-account-link.is-active {
        background: var(--acc-ink);
        color: #fff;
        box-shadow: 0 2px 8px rgba(14, 17, 22, .18);
    }

    /* Content card */
    .sf-account-content {
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius);
        box-shadow: var(--acc-shadow);
        padding: 32px 36px;
    }

    /* Inner blocks */
    .sf-account-content .sf-block {
        background: var(--acc-surface);
        border: 1px solid var(--acc-border);
        border-radius: var(--acc-radius-sm);
        box-shadow: var(--acc-shadow-sm);
        padding: 18px 22px;
        margin-bottom: 14px;
        transition: border-color .15s, transform .15s;
    }
    .sf-account-content .sf-block:hover {
        border-color: #d8dbe1;
        transform: translateY(-1px);
    }

    /* Badges */
    .sf-account-content .sf-badge {
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .08em;
        padding: 5px 10px;
        border-radius: 999px;
        background: var(--acc-surface-2);
        color: var(--acc-ink-soft);
        border: 1px solid var(--acc-border);
    }

    /* Buttons / links */
    .sf-account-content .sf-btn {
        height: 42px;
        padding: 0 22px;
        border-radius: 10px;
        font-weight: 600;
        letter-spacing: .02em;
        background: var(--acc-ink);
        color: #fff;
        border: 1px solid var(--acc-ink);
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }
    .sf-account-content .sf-btn:hover { opacity: .92; }
    .sf-account-content .sf-btn-link {
        display: inline-flex;
        align-items: center;
        padding: 0 16px;
        font-size: 12px;
        font-weight: 600;
        color: var(--acc-ink);
        text-decoration: none;
        text-transform: uppercase;
        letter-spacing: .08em;
        border: 1px solid var(--acc-border);
        border-radius: 8px;
        background: #fff;
        transition: border-color .15s, background .15s;
    }
    .sf-account-content .sf-btn-link:hover { border-color: var(--acc-ink); background: var(--acc-surface-2); }

    /* Form fields */
    .sf-account-content input[type=text],
    .sf-account-content input[type=email],
    .sf-account-content input[type=tel],
    .sf-account-content input[type=password],
    .sf-account-content input[type=url],
    .sf-account-content input[type=number],
    .sf-account-content select,
    .sf-account-content textarea {
        width: 100%;
        padding: 11px 14px;
        font-size: 14px;
        border: 1px solid var(--acc-border);
        border-radius: 10px;
        background: #fff;
        color: var(--acc-ink);
        transition: border-color .15s, box-shadow .15s;
        font-family: inherit;
    }
    .sf-account-content input:focus,
    .sf-account-content select:focus,
    .sf-account-content textarea:focus {
        outline: none;
        border-color: var(--acc-ink);
        box-shadow: 0 0 0 3px rgba(14, 17, 22, .08);
    }

    /* Empty state */
    .sf-account-content .sf-empty {
        text-align: center;
        padding: 64px 24px;
        color: var(--acc-muted);
        border: 1px dashed var(--acc-border);
        border-radius: var(--acc-radius);
        background: var(--acc-surface-2);
    }
    .sf-account-content .sf-empty p {
        margin: 0 0 18px;
        font-size: 14px;
    }

    /* Pagination */
    .sf-account-content .sf-pagination {
        margin-top: 22px;
        padding-top: 18px;
        border-top: 1px solid var(--acc-border-soft);
    }

    /* Quick stat grid used by dashboard variant */
    .sf-account-content .sf-stats {
        gap: 14px;
    }

    @media (min-width: 1440px) {
        .sf-page:has(.sf-account-layout) { padding: 56px 64px 96px; }
        .sf-page:has(.sf-account-layout) > .sf-heading { font-size: 36px; }
        .sf-account-layout { gap: 40px; }
        .sf-account-content { padding: 36px 44px; }
    }
}
