.challenge-workspace { min-width: 0; scroll-margin-top: 85px; }
.challenge-workspace h3 { font-size: clamp(24px,3vw,32px); letter-spacing: -.04em; margin-block: 10px 14px; }
.challenge-workspace h4 { font-size: 19px; margin-block: 10px 15px; letter-spacing: -.025em; }
.challenge-workspace p { line-height: 1.65; }
.challenge-overview { display: flex; align-items: start; justify-content: space-between; gap: 24px; }
.challenge-overview .store-field { flex: 0 0 100px; }
.challenge-catalog { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-block: 25px; }
.challenge-card { display: grid; text-align: left; align-content: start; gap: 12px; color: var(--ink); }
.challenge-card strong { font-size: 20px; letter-spacing: -.03em; }
.challenge-card > span:not(.eyebrow) { color: var(--body-text); font-size: 13px; line-height: 1.65; }
.challenge-card b { color: var(--accent-dark); font-size: 13px; margin-top: 5px; }
.challenge-card:hover { border-color: var(--premium-edge); background: var(--panel-soft); }
.challenge-own { background: var(--panel-soft); }
.challenge-own .primary-button { margin-top: 18px; }
.challenge-workbench { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 22px; align-items: start; margin-top: 25px; }
.challenge-controls { display: grid; gap: 18px; }
.challenge-controls [data-challenge-fields] { display: grid; gap: 17px; }
.challenge-feedback { margin-top: 18px; border-color: var(--premium-edge); background: radial-gradient(ellipse at 100% 100%,var(--premium-glow),transparent 85%),var(--surface); }
.challenge-goals { list-style: none; display: grid; gap: 11px; margin-block: 18px; padding: 0; }
.challenge-goals li { padding: 10px 12px; border-radius: 10px; font-size: 13px; line-height: 1.5; background: var(--panel-soft); color: var(--body-text); }
.challenge-goals li[data-met=true] { background: var(--positive-bg); color: var(--positive-text); }
.challenge-glossary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin-top: 23px; }
.challenge-glossary p { font-size: 13px; color: var(--body-text); }
[data-challenge-status][data-error=true] { padding: 12px; color: var(--warn-text); background: var(--warn-bg); border-radius: 12px; }
@media(max-width:760px) { .challenge-workbench { grid-template-columns: minmax(0,1fr); } }
@media(max-width:550px) { .challenge-catalog,.challenge-glossary { grid-template-columns: minmax(0,1fr); } .challenge-overview { flex-direction: column; gap: 12px; } .challenge-overview .store-field { flex-basis: auto; width: 100%; } }
