.ell-practice-expansion { margin-block: 2rem; color: var(--ell-text, #edf4f7); line-height: 1.75; }
.ell-practice-expansion, .ell-practice-expansion * { box-sizing: border-box; }
.ell-practice-expansion h2 { font-size: clamp(1.3rem, 2.5vw, 1.7rem); line-height: 1.4; margin: 0 0 .65rem; }
.ell-practice-expansion h3 { font-size: 1.1rem; line-height: 1.5; margin: 0 0 .4rem; }
.ell-practice-expansion p { margin: 0 0 .85rem; }
.ell-practice-expansion a { overflow-wrap: anywhere; }
.ell-expansion-intro { max-width: 76ch; }
.ell-expansion-section { margin-block: 2rem; }
.ell-expansion-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 1.5rem; padding: 1.35rem; border: 1px solid var(--ell-border, #314557); border-radius: 12px; background: var(--ell-surface, #16222e); margin-top: .8rem; }
.ell-expansion-row p { color: var(--ell-muted, #b8c7d1); max-width: 74ch; }
.ell-expansion-format { font-size: .92rem; }
.ell-expansion-badge { display: inline-block; font-size: .82rem; padding: .15rem .65rem; border: 1px solid var(--ell-border, #314557); border-radius: 20px; color: var(--ell-muted, #b8c7d1); }
.ell-expansion-badge.is-ready { color: #b7ebd2; border-color: #39765d; }
.entry-content a.ell-expansion-button { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; min-width: 150px; padding: .6rem 1rem; border: 1px solid var(--ell-accent, #6fb7d6); border-radius: 8px; background: #24669e; color: #fff !important; text-decoration: none; font-weight: 700; }
.entry-content a.ell-expansion-button.is-secondary { background: var(--ell-surface-2, #1d2b38); color: var(--ell-accent, #6fb7d6) !important; }
.ell-expansion-button:hover { filter: brightness(1.15); }
.ell-practice-expansion a:focus-visible { outline: 3px solid var(--ell-accent, #6fb7d6); outline-offset: 4px; }
.ell-expansion-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.ell-expansion-overview { margin-block: 1.5rem; }
.entry-content a.ell-expansion-card { display: flex; flex-direction: column; padding: 1.4rem; border: 1px solid var(--ell-border, #314557); border-radius: 12px; background: var(--ell-surface, #16222e); text-decoration: none; }
.ell-expansion-card p { color: var(--ell-muted, #b8c7d1); }
.ell-expansion-card span { margin-top: auto; color: var(--ell-accent, #6fb7d6); }
.ell-expansion-card:hover { border-color: var(--ell-accent, #6fb7d6); }
.ell-expansion-note, .ell-expansion-status { padding: 1.25rem; border: 1px solid var(--ell-border, #314557); border-radius: 12px; background: var(--ell-surface-2, #1d2b38); }
.ell-expansion-eyebrow { color: var(--ell-accent, #6fb7d6); font-size: .85rem; font-weight: 700; }
.ell-expansion-links { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; margin-top: 1.5rem; }
.ell-expansion-links a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 760px) {
  .ell-expansion-grid, .ell-expansion-row { grid-template-columns: minmax(0, 1fr); }
  .ell-expansion-row { gap: 1rem; padding: 1.1rem; }
  .ell-expansion-button { width: 100%; }
}
