/* Theme-aware mobile payslip details; override legacy fixed pink/lime/purple styling. */
@layer employee-payslip-detail {
    @media screen and (max-width: 760px) {
        .page:has(.employee-payslip-page.is-preview-open) {
            --ep-brand: var(--primary, #0f766e) !important;
            --ep-bg: var(--page, #f8fafc) !important;
            --ep-surface: var(--surface, #fff) !important;
            --ep-text: var(--text, #374151) !important;
            --ep-muted: var(--muted, #64748b) !important;
            --ep-border: var(--border, #e2e8f0) !important;
            --ep-soft: color-mix(in srgb, var(--ep-brand) 9%, var(--ep-surface)) !important;
        }
        html[data-theme="dark"] .page:has(.employee-payslip-page.is-preview-open) { --ep-brand: #7ddfc9 !important; }
        .employee-payslip-page.is-preview-open :is(.employee-payslip-inline-preview, .employee-payroll-preview-shell) {
            width: 100% !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important;
            background: transparent !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-preview-shell { display: grid !important; gap: 16px !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-detail-heading {
            margin: 0 !important; padding: 0 !important; border: 0 !important;
            width: 100% !important; background: transparent !important; box-shadow: none !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-detail-title-row {
            display: flex !important; align-items: center !important; justify-content: space-between !important;
            width: 100% !important; min-height: 44px !important; padding: 0 !important; gap: 12px !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-detail-title-row h1 {
            margin: 0 !important; font-size: 20px !important; line-height: 1.25 !important;
            font-weight: 600 !important; letter-spacing: -.025em !important; color: var(--ep-text) !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-back-button {
            display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 4px !important;
            min-height: 44px !important; padding: 8px 12px !important; border-radius: 12px !important;
            border: 1px solid var(--ep-border) !important; background: var(--ep-surface) !important; color: var(--ep-brand) !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-preview-panel {
            display: grid !important; gap: 12px !important; padding: 16px !important; margin: 0 !important;
            border: 1px solid var(--ep-border) !important; border-radius: 20px !important;
            background: var(--ep-surface) !important; box-shadow: 0 4px 16px #163b4c06 !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-stat-list { width: 100% !important; grid-template-columns: minmax(0, 1fr) !important; margin: 0 !important; padding: 0 !important; border: 0 !important; display: grid !important; gap: 8px !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-stat-row {
            display: flex !important; justify-content: space-between !important; align-items: center !important;
            gap: 12px !important; min-height: 28px !important; margin: 0 !important; padding: 0 4px !important;
            border: 0 !important; color: var(--ep-muted) !important; font-size: 13px !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-stat-amount-regular { font-weight: 500 !important; color: var(--ep-text) !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-stat-row > span { color: var(--ep-muted) !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-net-row > span { color: var(--ep-brand) !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-stat-amount { font-variant-numeric: tabular-nums; white-space: nowrap; }
        .employee-payslip-page.is-preview-open .employee-payroll-net-row {
            margin-top: 4px !important; padding: 14px 12px !important; border-radius: 12px !important;
            background: var(--ep-soft) !important; color: var(--ep-brand) !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-stat-amount-net { font-size: 22px !important; line-height: 1.25 !important; font-weight: 600 !important; color: var(--ep-brand) !important; }
        .employee-payslip-page.is-preview-open section.employee-payroll-breakdown {
            margin: 0 !important; border: 1px solid var(--ep-border) !important; border-radius: 12px !important;
            background: var(--ep-bg) !important; color: var(--ep-text) !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-breakdown-summary {
            height: 50px !important; min-height: 50px !important; max-height: none !important;
            padding: 0 14px !important; color: var(--ep-brand) !important; background: transparent !important;
        }
        .employee-payslip-page.is-preview-open .employee-payroll-breakdown-summary span:first-child { font-size: 13px !important; font-weight: 500 !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-breakdown-body { background: var(--ep-surface) !important; border-color: var(--ep-border) !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-breakdown-row { gap: 12px !important; color: var(--ep-text) !important; border-color: var(--ep-border) !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-breakdown-row :is(span, strong) { color: inherit !important; font-size: 12px !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-breakdown-row strong { font-weight: 500 !important; font-variant-numeric: tabular-nums; }
        .employee-payslip-page.is-preview-open :is(.employee-payroll-deduction-section, .employee-payroll-deduction-group) { color: var(--ep-muted) !important; font-weight: 600 !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-preview-actions { margin: 4px 0 0 !important; padding: 0 !important; }
        .employee-payslip-page.is-preview-open .employee-payroll-download-button {
            display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important;
            width: 100% !important; min-height: 46px !important; padding: 12px 16px !important;
            border: 1px solid var(--ep-brand) !important; border-radius: 12px !important;
            background: var(--ep-brand) !important; color: var(--ep-surface) !important; box-shadow: none !important; font-size: 13px !important;
        }
        .employee-payslip-page.is-preview-open :is(button, a):focus-visible { outline: 2px solid var(--ep-brand) !important; outline-offset: 3px !important; }
    }
}
