.settings-page .dashboard-container {
    background: var(--color-surface-primary);
    border: 1px solid var(--color-border-soft);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-lg);
}

.settings-page .dashboard-header {
    background: transparent;
    border-bottom: 1px solid var(--color-border-default);
}

.settings-page .header-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--space-16);
}

.settings-page .header-right {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-12);
    margin-left: auto;
}

.settings-page .dashboard-main {
    max-width: 760px;
    margin: 0 auto;
}

.settings-page .settings-card {
    padding: var(--space-20);
    margin-bottom: var(--space-16);
    border-radius: var(--radius-lg);
    border: 1px solid var(--color-border-default);
    background: var(--color-surface-secondary);
    box-shadow: var(--shadow-sm);
}

.settings-section-title {
    margin: 0 0 var(--space-8);
    display: flex;
    align-items: center;
    gap: var(--space-8);
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-semibold);
}

.settings-hint {
    margin: 0 0 var(--space-12);
    color: var(--color-text-muted);
    font-size: var(--font-size-sm);
}

.settings-nudge {
    background: var(--color-accent-soft);
    color: var(--color-text-secondary);
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-md);
    padding: var(--space-8) var(--space-12);
}

.settings-field-row {
    display: grid;
    grid-template-columns: 100px 1fr;
    align-items: center;
    gap: var(--space-8);
}

.settings-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-8);
}

.settings-flash {
    margin-bottom: var(--space-12);
    border-radius: var(--radius-md);
    padding: var(--space-8) var(--space-12);
    border: 1px solid var(--color-border-default);
}

.settings-flash--ok {
    background: var(--color-success-soft);
    color: #064e3b;
}

.settings-flash--error {
    background: var(--color-danger-soft);
    color: #7f1d1d;
}

.settings-status-value.settings-status--ok {
    color: var(--color-success);
}

.settings-status-value.settings-status--muted {
    color: var(--color-text-muted);
}

/* ── Mobile overrides ──────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    /* Safe area top and bottom clearance */
    .settings-page.app-page {
        padding-top: env(safe-area-inset-top, 0px);
    }

    .settings-page .dashboard-container {
        border-radius: 0;
        border-left: none;
        border-right: none;
        box-shadow: none;
        min-height: 100dvh;
    }

    .settings-page .dashboard-header {
        padding: var(--space-12) var(--space-16);
    }

    /* Hide desktop nav links; hamburger toggle is hidden by mobile_nav.css */
    .settings-page .header-actions {
        display: none;
    }

    .settings-page .dashboard-main {
        padding: var(--space-12) var(--space-12);
    }

    .settings-page .settings-card {
        padding: var(--space-16);
        border-radius: var(--radius-md);
    }

    /* Full-width action buttons */
    .settings-page .settings-actions {
        flex-direction: column;
    }

    .settings-page .settings-actions .btn {
        width: 100%;
        justify-content: center;
        min-height: 44px;
    }

    /* Larger tap target for checkbox toggle row */
    .settings-page .settings-field-row {
        grid-template-columns: auto 1fr;
        gap: var(--space-12);
        min-height: 44px;
    }

    .settings-page .settings-field-row input[type="checkbox"] {
        width: 20px;
        height: 20px;
        cursor: pointer;
    }

    /* Full-width select */
    .settings-page .settings-field-row select {
        width: 100%;
    }
}
