.pricing-workspace { width: min(1200px, 100%); }
.pricing-intro { display: flex; margin-bottom: 30px; align-items: end; justify-content: space-between; gap: 28px; }
.pricing-intro h1 { max-width: 15ch; margin: 0; color: var(--oli-ink); font-size: clamp(2.15rem, 4vw, 3.6rem); font-weight: 900; letter-spacing: -.04em; line-height: 1.04; }
.pricing-intro p { max-width: 48ch; margin: 0; color: var(--text-secondary); line-height: 1.6; }
.pricing-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
.pricing-card { display: flex; min-width: 0; padding: 24px 20px 20px; flex-direction: column; border: 1px solid var(--border-standard); border-radius: 14px; background: #fff; }
.pricing-card-current { border-color: var(--oli-violet); box-shadow: 0 14px 35px rgba(101,71,245,.12); }
.pricing-card-highlight { background: var(--oli-wash); }
.pricing-card-top { display: flex; min-height: 31px; align-items: start; justify-content: space-between; gap: 8px; }
.pricing-card h2 { margin: 0; color: var(--oli-ink); font-size: 1rem; letter-spacing: -.02em; }
.pricing-badges { display: flex; flex-wrap: wrap; justify-content: end; gap: 5px; }
.pricing-badge { display: inline-flex; padding: 4px 8px; border-radius: 8px; background: var(--oli-mint); color: var(--status-success-text); font-size: .78rem; font-weight: 800; line-height: 1.2; white-space: nowrap; }
.pricing-current-label { background: var(--surface-selected); color: var(--accent-secondary); }
.pricing-price { display: flex; margin: 24px 0 4px; align-items: baseline; gap: 5px; }
.pricing-price strong { color: var(--oli-ink); font-size: clamp(1.7rem, 3vw, 2.15rem); letter-spacing: -.04em; line-height: 1; }
.pricing-price span { color: var(--text-muted); font-size: .78rem; }
.pricing-summary { min-height: 42px; margin: 0; color: var(--text-secondary); font-size: .78rem; line-height: 1.5; }
.pricing-rule { height: 1px; margin: 20px 0 16px; border: 0; background: var(--border-standard); }
.pricing-facts { display: grid; margin: 0; gap: 11px; }
.pricing-fact { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; color: var(--text-muted); font-size: .78rem; }
.pricing-fact strong { color: var(--text-body); font-size: .78rem; font-weight: 800; text-align: right; }
.pricing-note { min-height: 39px; margin: 18px 0 0; color: var(--text-secondary-strong); font-size: .78rem; line-height: 1.5; }
.pricing-action { margin-top: auto; padding-top: 24px; }
.pricing-action .btn { width: 100%; justify-content: center; }
.pricing-action form { margin: 0; }
.pricing-footnote { margin: 22px 0 0; color: var(--text-muted); font-size: .78rem; line-height: 1.55; }
@media (max-width: 1050px) { .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .pricing-intro { align-items: start; flex-direction: column; gap: 12px; } }
@media (max-width: 520px) { .pricing-grid { grid-template-columns: 1fr; } .pricing-card { padding: 22px 20px 20px; } }
