/* ==========================================================================
   Page Header
   Native-app-style back arrow + title bar, used at the top of page content.
   Not sticky — mobile already has a fixed topbar and bottom nav.
   ========================================================================== */
.page-header {
    display: flex;
    align-items: center;
    gap: var(--spacing-3);
    margin-bottom: var(--spacing-4);
}

.page-header__back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: var(--radius-full);
    border: 1px solid var(--color-border);
    color: var(--color-text-primary);
    background: var(--color-surface);
    text-decoration: none;
    transition: background-color var(--transition-fast);
}

.page-header__back:hover,
.page-header__back:focus-visible {
    background: var(--color-overlay-dark-light);
    color: var(--color-text-primary);
}

.page-header__forward {
    font: inherit;
    cursor: pointer;
}

.page-header__text {
    flex: 1 1 auto;
    min-width: 0;
}

.page-header__title {
    margin: 0;
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-tight);
}

.page-header__icon {
    color: var(--color-primary-600);
    margin-right: var(--spacing-2);
}

.dark .page-header__icon {
    color: var(--color-primary-400);
}

.page-header__subtitle {
    margin: var(--spacing-1) 0 0;
    font-size: var(--font-size-sm);
    color: var(--color-text-muted);
}

@media (min-width: 992px) {
    .page-header__title {
        font-size: var(--font-size-2xl);
    }
}

/* Overlay modifier: transparent background for use on gradient/hero pages (e.g. auth) */
.page-header--overlay .page-header__back {
    background: var(--color-overlay-white-medium);
    border-color: transparent;
}

.dark .page-header--overlay .page-header__back {
    background: var(--color-overlay-dark-medium);
}
