/* Certification Checker: styles for this feature only. Scope every rule to its own class prefix. */
.cc-pick { display: flex; flex-direction: column; gap: 6px; max-width: 520px; }
.cc-pick label { font-weight: 600; }
.cc-fieldset { border: 1px solid var(--border); border-radius: 8px; padding: 12px 14px; display: flex; flex-direction: column; gap: 10px; }
.cc-fieldset legend { font-weight: 600; padding: 0 6px; }
.cc-q { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; }
.cc-q input { margin-top: 4px; flex: none; }
.cc-help { display: block; }
.cc-disclaimer { font-weight: 550; }
.cc-title { margin: 0; font-size: 18px; }
.cc-group { margin: 0; font-size: 15px; display: flex; gap: 8px; align-items: center; }
.cc-name { margin: 0; font-size: 15px; }
.cc-body { gap: 10px; }
.cc-dl { display: grid; grid-template-columns: 200px 1fr; gap: 6px 14px; margin: 0; }
.cc-dl dt { font-weight: 600; }
.cc-dl dd { margin: 0; }
.cc-dl ul, .cc-item ul { margin: 0; padding-left: 18px; }
.cc-src { overflow-wrap: anywhere; }
@media (max-width: 640px) { .cc-dl { grid-template-columns: 1fr; } .cc-dl dt { margin-top: 6px; } }
.cc-q[hidden], .cc-head[hidden] { display: none; }
.cc-head { align-items: center; justify-content: space-between; gap: 10px; }
@media (max-width: 640px) { .cc-src a { display: inline-block; min-height: 44px; padding: 12px 0; font-size: 14px; line-height: 20px; } }
