.challenge-intro{text-align:center;padding:18px 0 24px}.challenge-intro h3{font-size:25px;line-height:1.5;margin:22px 0 14px}.challenge-intro p{font-size:14px;line-height:1.9}.challenge-invitation{padding:20px;background:#f5ecd8;border-radius:14px;line-height:1.9;font-size:14px}.challenge-shelf{margin:20px 0}.challenge-shelf>summary{font-size:16px;padding:14px 0;color:#4f6752}.challenge-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:15px 0}.challenge-tile{border:1px solid #d4dcc6;background:#fbfcf2;padding:22px;border-radius:16px;box-shadow:3px 3px 0 #e5e7d7}.challenge-tile h4{font-size:18px;line-height:1.5;margin:13px 0}.challenge-tile p{font-size:14px;line-height:1.8}.challenge-tile small{display:block;font-size:14px;line-height:1.9;margin:12px 0}.challenge-tile .button{min-height:44px;width:100%;font-size:14px}.retry-note{padding:12px;border-radius:10px;background:#f3ead1;color:#75613f}.challenge-active{padding:27px;border:2px solid #bbc8a7;border-radius:18px;background:#faf8e9;box-shadow:5px 5px 0 #dde4cd}.challenge-active h3{font-size:23px;margin:16px 0}.challenge-active p{font-size:14px;line-height:1.9}.challenge-active .bar{height:11px;margin:22px 0}.challenge-stages{display:flex;gap:8px;margin:25px 0}.challenge-stages>div{flex:1;text-align:center;padding:15px 5px;border:1px dashed #c1c7af;border-radius:9px;background:#f1efdf}.challenge-stages b,.challenge-stages span{display:block}.challenge-stages b{font-size:21px;color:#8c8b70;margin-bottom:8px}.challenge-stages span{font-size:14px;line-height:1.6}.challenge-stages .done{background:#e7edce;border-color:#99ac76}.challenge-stages .done b{color:#5d7a49}.challenge-checkpoint{padding:20px;background:#f1e8d2;border-radius:14px;margin:24px 0}.challenge-checkpoint h4{font-size:19px;line-height:1.6}.challenge-choice{width:100%;display:block;text-align:left;padding:17px;border:1px solid #c7ccb8;border-radius:12px;margin:12px 0;background:#fffdf2;color:#3f5745;cursor:pointer}.challenge-choice:not(:disabled):hover{background:#e8efd7;border-color:#6b865e}.challenge-choice strong,.challenge-choice small{display:block;line-height:1.7}.challenge-choice strong{font-size:14px}.challenge-choice small{font-size:14px;margin-top:6px}.challenge-choice:disabled{opacity:.55;cursor:not-allowed}.challenge-active details .button,.challenge-active details .text-button{margin:8px 12px 8px 0}.credential-shelf{padding:24px 0}.credential-shelf h3{font-size:19px}.credential-shelf p{font-size:14px;line-height:1.9}.credential-chips{display:flex;gap:12px;flex-wrap:wrap}.credential-chips>span{padding:15px 18px;border:2px dashed #b8b988;border-radius:12px;background:#f5efd6;font-size:14px}.credential-chips small{display:block;font-size:14px;line-height:1.7;margin-top:8px}.challenge-memory{padding:22px 0;border-bottom:1px dashed #ccd4bd}.challenge-memory h4{font-size:17px;margin:10px 0}.challenge-memory small{font-size:14px}.challenge-memory p,.challenge-memory summary{font-size:14px;line-height:1.9}.challenge-outcome{display:inline-block;padding:6px 10px;background:#e8efda;border-radius:8px;font-size:14px}.challenge-history>summary{font-size:16px;line-height:1.8}.challenge-active>details>summary{font-size:14px;line-height:1.8}
@media(max-width:600px){.challenge-grid{grid-template-columns:1fr}.challenge-active{padding:19px}.challenge-active h3{font-size:21px}.challenge-checkpoint{padding:14px}.challenge-stages{display:grid;grid-template-columns:1fr 1fr}.challenge-intro h3{font-size:23px}.challenge-choice{padding:14px}.challenge-tile{padding:20px}.challenge-active .text-button{line-height:1.8}}

.challenge-current-plan{border-top:1px dashed #bbc8a7;border-bottom:1px dashed #bbc8a7;padding:6px 0}.challenge-current-plan p{margin:8px 0;font-size:14px}.challenge-current-plan .text-button{margin:0 0 8px;font-size:14px}.challenge-latest{padding:24px;border:2px dashed #b0bf8f;border-radius:18px;background:#edf2dc;margin:0 0 24px}.challenge-latest h3{font-size:23px;line-height:1.5;margin:15px 0}.challenge-latest p{font-size:14px;line-height:1.8}.challenge-latest .challenge-outcome{background:#dce6c5;font-size:15px}
.challenge-archive{padding:22px;background:#f7f8ec;border:1px solid #ccd6b9;border-radius:16px;margin:30px 0;text-align:left}.challenge-archive>summary{font-size:16px;line-height:1.9;color:#4f6752}.challenge-archive>p{font-size:14px;line-height:1.9}
.course-recovery h5{font-size:18px;line-height:1.5;margin:0 0 12px}.course-recovery>summary{font-size:17px}.course-recovery .info-box p{overflow-wrap:anywhere}.course-recovery button{white-space:normal;min-height:44px}
