/* Risk Alerts */
.risk-alerts-section { margin-top: 2rem; }
.risk-alert { padding: 1rem 1.25rem; border-radius: var(--radius); margin-bottom: 0.75rem; border-left: 4px solid; }
.risk-critical { background: #FFF5F5; border-color: #E74C3C; }
.risk-high { background: #FFFBEB; border-color: #F39C12; }
.risk-moderate { background: #F0F9FF; border-color: #3498DB; }
.risk-alert-header { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 0.5rem; }
.risk-icon { font-size: 1.25rem; }
.risk-label { font-weight: 700; font-size: 0.95rem; }
.risk-severity { margin-left: auto; font-size: 0.75rem; font-weight: 600; padding: 2px 8px; border-radius: 99px; background: rgba(0,0,0,0.06); }
.risk-message { font-size: 0.875rem; color: var(--color-gray-700); line-height: 1.5; margin: 0; }
.risk-crisis { margin-top: 0.75rem; padding: 0.75rem; background: #E74C3C; color: #fff; border-radius: 8px; font-size: 0.875rem; text-align: center; }
.risk-followup-btn { display: inline-block; margin-top: 0.75rem; padding: 0.5rem 1.25rem; background: var(--color-primary); color: #fff; border-radius: 8px; font-size: 0.875rem; font-weight: 600; text-decoration: none; }
.risk-followup-btn:hover { opacity: 0.9; }
.risk-upgrade { margin-top: 0.75rem; padding: 0.75rem 1rem; background: var(--color-gray-50); border: 1px solid var(--color-gray-300); border-radius: 8px; display: flex; align-items: center; gap: 0.75rem; font-size: 0.875rem; }
.risk-upgrade-link { color: var(--color-primary); font-weight: 600; text-decoration: none; white-space: nowrap; }
.risk-upgrade-link:hover { text-decoration: underline; }
/* Followup Result */
.followup-score-hero { padding: 1.5rem; background: var(--color-gray-50); border-radius: var(--radius); margin: 1.5rem 0; }
.followup-score-num { font-size: 2.5rem; font-weight: 800; }
.followup-score-num small { font-size: 1rem; font-weight: 400; color: var(--color-gray-500); }
.followup-score-desc { margin: 0.5rem 0 0; font-size: 0.95rem; color: var(--color-gray-700); }
.followup-detail-section { margin-top: 2rem; }
.followup-detail-table { width: 100%; border-collapse: collapse; font-size: 0.875rem; }
.followup-detail-table th, .followup-detail-table td { padding: 0.625rem 0.75rem; border-bottom: 1px solid var(--color-gray-200); text-align: left; }
.followup-detail-table thead th { background: var(--color-gray-50); font-weight: 600; font-size: 0.8rem; }
.followup-detail-table tfoot td { border-top: 2px solid var(--color-gray-300); background: var(--color-gray-50); }
.followup-levels-section { margin-top: 2rem; }
.followup-levels-grid { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.followup-level-item { padding: 0.5rem 1rem; border: 2px solid var(--color-gray-200); border-radius: 8px; text-align: center; opacity: 0.5; }
.followup-level-item.active { opacity: 1; background: #fff; box-shadow: var(--shadow-sm); }
.followup-level-range { display: block; font-size: 0.75rem; color: var(--color-gray-500); }
.followup-level-label { font-weight: 700; font-size: 0.875rem; }
.followup-form { padding: 1.5rem; }
@media (max-width: 640px) {
    .followup-levels-grid { flex-direction: column; }
    .followup-score-num { font-size: 2rem; }
}
