/* ============================================
   PAGE HEADER - shared by profile, referral, wallet, task, promote-task
   ============================================ */

.page-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem;
    margin-top: 6rem;
    margin-bottom: 2rem;
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.1) 0%, rgba(6, 182, 212, 0.1) 100%);
    border: 1px solid rgba(139, 92, 246, 0.2);
    border-radius: 16px;
    padding: 1.5rem 2rem;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.header-content {
    flex: 1;
    min-width: 0;
}

.page-title {
    font-size: var(--font-size-h2);
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.page-title i {
    font-size: var(--icon-size-lg);
    color: var(--primary-purple);
}

.page-subtitle {
    font-size: var(--font-size-small);
    color: var(--text-secondary);
}

.page-subtitle strong {
    color: var(--primary-purple);
    font-weight: 700;
}

.header-actions {
    flex-shrink: 0;
}

/* ==========================================================================
   6-BREAKPOINT RESPONSIVE ARCHITECTURE (DESKTOP-DOWN / DESKTOP-FIRST)
   ========================================================================== */

/* ─── 1. Base : Desktop (1280px–1600px+) ─── */
/* Note: Base Desktop styles are defined above as default. */

/* ─── 2. Laptop (1024px–1279px) ─── */
@media (max-width: 1279px) {
    .page-header {
        margin-top: 5.5rem;
        padding: 1.5rem 1.75rem;
    }
}

/* ─── 3. Tablet (768px–1023px) ─── */
@media (max-width: 1023px) {
    .page-header {
        margin-top: 5.25rem;
        padding: 1.35rem 1.6rem;
        gap: 1.5rem;
    }
}

/* ─── 4. Large Mobile (640px–767px) ─── */
@media (max-width: 767px) {
    .page-header {
        margin-top: 5rem;
        padding: 1.25rem 1.5rem;
        border-radius: 14px;
        gap: 1.25rem;
    }

    .page-title {
        font-size: var(--font-size-h3);
    }
}

/* ─── 5. Mobile (480px–639px) ─── */
@media (max-width: 639px) {
    .page-header {
        margin-top: 4.5rem;
        margin-bottom: 1.5rem;
        padding: 1rem 1.25rem;
        border-radius: 12px;
        text-align: center;
        flex-direction: column;
        gap: 1rem;
    }
    
    .page-title {
        justify-content: center;
        font-size: var(--font-size-h3);
    }
    
    .header-content {
        text-align: center;
        width: 100%;
    }
    
    .header-actions {
        width: 100%;
        display: flex;
        justify-content: center;
    }
    
    .header-actions .btn {
        width: 100%;
        box-sizing: border-box;
    }
}

/* ─── 6. Tiny Mobile (300px–479px) ─── */
@media (max-width: 479px) {
    .page-header {
        margin-top: 4rem;
        margin-bottom: 1.25rem;
        padding: 0.875rem 1rem;
        border-radius: 10px;
        gap: 0.875rem;
    }
    
    .page-title {
        font-size: var(--font-size-h4);
        gap: 0.35rem;
    }

    .page-title i {
        font-size: 1.25rem;
    }
    
    .page-subtitle {
        font-size: var(--font-size-tiny);
    }

    .header-actions .btn {
        padding: 0.65rem 1rem;
        font-size: var(--font-size-tiny);
    }
}
