/* Petal Posse — layout scaffolding (mobile-first; widens gently on larger screens) */

:root {
    --pp-text: var(--pp-bg-dark);
    --pp-text-muted: #767676; /* pinned to the v17 design reference's --text-secondary, not derived */
    --pp-border: var(--pp-neutral-300);
    --pp-surface: var(--pp-neutral-100);
}

.pp-sub {
    font-family: var(--pp-font-body);
    font-size: var(--pp-text-md);
    text-align: center;
    color: var(--pp-text-muted);
    margin: 0 0 1.5rem;
}

.pp-step-dots {
    display: flex;
    gap: 0.45rem;
    justify-content: center;
    align-items: center;
    margin: 0 0 0.4rem;
}

.pp-step-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--pp-border);
    transition: background-color 0.15s ease, width 0.15s ease;
}

.pp-step-dot.active {
    background: var(--pp-primary);
    width: 20px;
    border-radius: 4px;
}

.pp-step-dot.done {
    background: var(--pp-sage);
}

.pp-step-caption {
    text-align: center;
    font-size: var(--pp-text-sm);
    color: var(--pp-text-muted);
    margin: 0 0 1.6rem;
}

.pp-nav-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    margin-top: 1.4rem;
}

.pp-nav-row-end {
    justify-content: flex-end;
}

.pp-done-box {
    text-align: center;
    padding: 3rem 1.25rem;
}

.pp-restart {
    display: block;
    margin: 1.5rem auto 0;
}

/* Banded marketing pages (Home, How it works) — these pages get no width cap or padding from
   MainLayout (see IsEdgeToEdgePage), so they supply their own gutters here.
   Phones: one narrow centered column, same width/gutters the layout gives every other page.
   768px and up: wide bands and photos inset by a 2rem page margin. */
.pp-band-inner,
.pp-band-bleed {
    max-width: 480px;
    margin: 0 auto;
    padding: 0 1.25rem;
}

@media (min-width: 768px) {
    .pp-step-caption {
        margin-bottom: 2rem;
    }

    .pp-band-inner {
        max-width: 1040px;
        padding: 0 2.5rem;
    }

    .pp-band-bleed,
    .pp-band {
        margin: 0 2rem;
    }

    .pp-band-bleed {
        max-width: none;
        padding: 0;
    }

    .pp-band {
        padding: 5rem 0;
    }

    .pp-band-tint {
        background: var(--pp-bg-offwhite);
    }

    .pp-band-white {
        background: var(--pp-bg-white);
    }
}
