/*!
 * Federal Apostille Portal v2 — Compact variant overrides.
 * Loaded on top of fapv2-public.css when [fap_order_form_v2_compact] is used.
 * Designed for column widths down to ~340px.
 */

.fapv2-shell--compact {
    --r:      6px;
    --r-lg:   8px;
}

.fapv2-shell--compact .fapv2-grid {
    grid-template-columns: 1fr;
    gap: 16px;
}

.fapv2-shell--compact .fapv2-main {
    padding: 18px;
    border-radius: var(--r);
}

.fapv2-shell--compact .fapv2-rail {
    background: transparent; padding: 0; margin-bottom: 14px;
    border-bottom: 1px solid var(--c-line); padding-bottom: 10px; border-radius: 0;
}
.fapv2-shell--compact .fapv2-rail__item {
    flex: 0 0 auto; padding: 4px 8px; font-size: 12px;
}
.fapv2-shell--compact .fapv2-rail__item.is-active { box-shadow: none; background: var(--c-muted); }
.fapv2-shell--compact .fapv2-rail__label { display: none; }

.fapv2-shell--compact .fapv2-step h2 { font-size: 18px; }

.fapv2-shell--compact .fapv2-explainer { grid-template-columns: 1fr; gap: 8px; }
.fapv2-shell--compact .fapv2-explainer__card { padding: 12px; }
.fapv2-shell--compact .fapv2-explainer__card ul { font-size: 13px; }

.fapv2-shell--compact .fapv2-grid-2,
.fapv2-shell--compact .fapv2-grid-3 { grid-template-columns: 1fr; gap: 10px; }

.fapv2-shell--compact .fapv2-radio-group { grid-template-columns: 1fr; }

.fapv2-shell--compact .fapv2-summary { position: static; }
.fapv2-shell--compact .fapv2-summary__inner { padding: 14px; }

.fapv2-shell--compact .fapv2-modal__panel { max-width: 100%; }
.fapv2-shell--compact .fapv2-modal { padding: 8px; }
.fapv2-shell--compact .fapv2-modal__body { padding: 16px; max-height: 80vh; }

.fapv2-shell--compact .fapv2-confirm { padding: 24px 16px; }
.fapv2-shell--compact .fapv2-panels { grid-template-columns: 1fr; }
