.plan-capacity {
    --capacity-border: var(--p-line, var(--bs-border-color, #dfe6f2));
    --capacity-bg: var(--p-soft, var(--bs-tertiary-bg, #f4f7ff));
    --capacity-ink: var(--p-navy, var(--bs-emphasis-color, #101a35));
    --capacity-muted: var(--p-muted, var(--bs-secondary-color, #5e6b82));
    display: grid;
    gap: .55rem;
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid var(--capacity-border);
    border-radius: .8rem;
    background: var(--capacity-bg);
    color: var(--capacity-muted);
}

.plan-capacity > div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.plan-capacity strong {
    color: var(--capacity-ink);
}

.plan-capacity .text-white,
.plan-capacity .text-white strong {
    color: #fff !important;
}

.plan-capacity small {
    line-height: 1.45;
}

.plan-capacity--compact {
    margin-top: 0;
    background: transparent;
}

[data-bs-theme=dark] .plan-capacity {
    --capacity-border: #34425f;
    --capacity-bg: #0f172d;
    --capacity-ink: #f5f7ff;
    --capacity-muted: #b5c0d6;
    box-shadow: none;
    color-scheme: dark;
}

[data-bs-theme=dark] .pricing-card--recommended .plan-capacity,
[data-bs-theme=dark] .bg-primary .plan-capacity {
    --capacity-border: rgba(255, 255, 255, .28);
    --capacity-bg: rgba(7, 20, 55, .28);
    --capacity-ink: #fff;
    --capacity-muted: #e1e8ff;
}

[data-bs-theme=dark] .plan-capacity .text-gray-700,
[data-bs-theme=dark] .plan-capacity .text-muted {
    color: var(--capacity-muted) !important;
}

[data-bs-theme=dark] .plan-capacity strong,
[data-bs-theme=dark] .plan-capacity .text-white {
    color: var(--capacity-ink) !important;
}

@media (prefers-contrast: more) {
    .plan-capacity {
        border-width: 2px;
    }
}
