Adaptive analytics
Track usage patterns and surface insights that flex with your component.
ADVERT
Plan component-level breakpoints, preview how layouts respond to container width changes, and copy production-ready CSS container queries with matching markup.
Track usage patterns and surface insights that flex with your component.
Reveal richer summaries as the container grows without duplicating markup.
Let container queries choreograph density without adding viewport breakpoints.
.cq-wrapper { container-type: inline-size; display: grid; gap: 16px; grid-template-columns: repeat(1, minmax(0, 1fr)); } .cq-wrapper .card { padding: 18px; border-radius: 12px; background: var(--surface, #fff); border: 1px solid var(--border, rgba(26, 26, 26, 0.12)); box-shadow: var(--shadow-1, 0 18px 38px rgba(15, 23, 42, 0.12)); } .cq-wrapper .badge { display: inline-flex; align-items: center; gap: 0.35rem; padding: 0.35rem 0.6rem; border-radius: 999px; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; background: color-mix(in srgb, var(--brand, #dc2626) 14%, transparent); color: color-mix(in srgb, var(--brand, #dc2626) 70%, #111); } /* ≥ 640px */ @container (min-width: 640px) { .cq-wrapper { gap: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); } .cq-wrapper .card { padding: 20px; } } /* ≥ 960px */ @container (min-width: 960px) { .cq-wrapper { gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); } .cq-wrapper .card { padding: 24px; } }
<!-- Container query example --> <section class="feature-panel"> <div class="cq-wrapper"> <article class="card"> <span class="badge">New</span> <h3>Adaptive analytics</h3> <p>Track usage patterns and surface insights that flex with your layout.</p> </article> <article class="card"> <span class="badge">Usage</span> <h3>Team highlights</h3> <p>Show more detail as space grows — all from the same component.</p> </article> <article class="card"> <span class="badge">Tip</span> <h3>Content choreography</h3> <p>Let container queries choreograph density without extra breakpoints.</p> </article> </div> </section>
ADVERT
ADVERT