.cca-sgt{max-width:980px;margin:0 auto;padding:20px;font-family:inherit}
.cca-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px;margin:0 0 20px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.cca-card h2{margin-top:0}
.cca-card label{display:block;font-weight:600;margin:14px 0}
.cca-card input,.cca-card select{display:block;width:100%;max-width:520px;margin-top:6px;padding:10px;border:1px solid #cbd5e1;border-radius:8px}
.cca-note,.callout{background:#f8fafc;border-left:4px solid #64748b;padding:12px 14px;border-radius:8px}
.cca-resume-note{border-left-color:#0f766e;background:#f0fdfa;margin:0 0 14px 0}
.cca-grid{display:grid;gap:14px;margin:14px 0}
.cca-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.cca-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.cca-grid div{border:1px solid #e5e7eb;border-radius:12px;padding:14px;background:#f9fafb}
.cca-grid span{display:block;color:#475569;margin-top:6px}
.cca-start button,#cca-prev,.cca-answers button,.cca-pdf-button,.cca-save-later{border:0;border-radius:10px;padding:12px 18px;font-weight:700;cursor:pointer}
.cca-start button{background:#111827;color:white}
.cca-test{max-width:820px;margin-left:auto;margin-right:auto}
.cca-section-label{text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:700;font-size:.82rem}
.cca-progress{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden}
.cca-progress span{display:block;height:100%;background:#111827;width:0;transition:width .2s ease}
.cca-count{font-weight:700;color:#475569}
.cca-question{font-size:1.35rem;line-height:1.35;margin:22px 0}
.cca-answers{display:grid;gap:12px}
.cca-answers button{background:#f8fafc;border:1px solid #cbd5e1;text-align:left;color:#111827}
.cca-answers button:hover,.cca-answers button.selected{background:#e0f2fe;border-color:#0284c7}
.cca-answers button:disabled,#cca-prev:disabled,.cca-save-later:disabled{opacity:.55;cursor:not-allowed}
.cca-nav{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#cca-prev{background:#e5e7eb;color:#111827}
.cca-save-later{background:#fff;color:#111827;border:1px solid #cbd5e1;margin-left:auto}
.cca-save-later:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}
.cca-save-status{margin-top:12px;font-weight:600;min-height:1.4em}
.cca-save-status.success{color:#0f766e}
.cca-save-status.error{color:#8a1f1f}
.cca-result-links{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.cca-result-links a,.cca-pdf-button{display:inline-block;background:#111827;color:white!important;text-decoration:none;border-radius:10px;padding:10px 14px}
.cca-top{display:grid;gap:16px}
.gift-card{border:1px solid #e5e7eb;border-top:6px solid #111827;border-radius:14px;padding:18px;background:#fff}
.gift-card.miraculous{border-top-color:#7c3aed}
.gift-card.ministry{border-top-color:#0f766e}
.badge{display:inline-block;background:#f1f5f9;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:800;margin-bottom:8px}
.bars{display:grid;gap:10px}
.bar-row{display:grid;grid-template-columns:190px 1fr 42px;gap:10px;align-items:center}
.bar-row div{height:12px;background:#e5e7eb;border-radius:999px;overflow:hidden}
.bar-row i{display:block;height:100%;background:#0f766e;border-radius:999px}
.bar-row b{text-align:right}
.gift-definition{grid-column:1/-1;margin:-4px 0 10px 0;color:#475569;font-size:.92rem;line-height:1.45;padding-left:0}
@media(min-width:721px){.bars .gift-definition{margin-left:0}}
.cca-form-error{display:none;margin:12px 0;padding:10px 12px;border-radius:10px;background:#fff0f0;border:1px solid #e6b8b8;color:#8a1f1f;font-weight:600}
.cca-optional{font-weight:400;opacity:.7;font-size:.9em}
.cca-share-fieldset{border:1px solid #e5e7eb;border-radius:12px;padding:14px 18px 6px;margin:18px 0 6px;background:#f9fafb}
.cca-share-fieldset legend{font-weight:700;padding:0 6px}
.cca-share-help{margin:4px 0 10px;color:#475569;font-size:.95em;line-height:1.5}
@media(max-width:720px){
    .cca-grid.two,.cca-grid.four{grid-template-columns:1fr}
    .bar-row{grid-template-columns:1fr}
    .bar-row b{text-align:left}
    .cca-sgt{padding:12px}
    .cca-card{padding:18px}
    .cca-save-later{margin-left:0;width:100%}
    #cca-prev{width:100%}
}
@media print{
    body *{visibility:hidden!important}
    .cca-print-area,.cca-print-area *{visibility:visible!important}
    .cca-print-area{position:absolute;left:0;top:0;width:100%;padding:0!important}
    .no-print,.no-print *{display:none!important}
    .gift-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none}
    .cca-card{box-shadow:none;border:0}
    .cca-sgt{max-width:none;padding:0}
    .bars .bar-row div{border:1px solid #999}
}
