/* CFA B.5.41 QA · Guardia UX anti-desborde transversal conservada desde B.5.39.
   Objetivo: impedir que correos, URLs, IDs, teléfonos o textos largos salgan de tarjetas,
   campos, modales, perfiles y contenedores visuales sin cambiar DB ni lógica de negocio. */
:where(.panel,.modal,.modal-body,.modal-head,.modal-actions,.detail-grid,.detail-section,.detail-item,.stat-card,.field,.form-grid,.context-help,.computed-box,.kpi-card,.metric-card,.summary-card,.profile-card,.balance-detail-grid,.balance-detail-grid > div,.teacher-card,.student-card,.review-detail-grid,.review-detail-status,.review-detail-context,.portal-config-card,.info-panel,.file-box,.alert){
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
:where(.detail-grid,.form-grid,.stats-grid,.balance-detail-grid,.balance-two-cols,.package-form-row,.table-toolbar,.row-actions,.hero-actions,.panel-head,.modal-head,.modal-actions){
  min-width:0;
}
:where(.detail-item,.detail-grid > div,.balance-detail-grid > div,.stat-card,.context-help,.computed-box,.kpi-card,.metric-card,.summary-card,.profile-card,.teacher-card,.student-card,.review-detail-grid,.review-detail-status,.review-detail-context,.portal-config-card,.file-box,.alert){
  overflow-wrap:anywhere;
  word-break:break-word;
}
:where(.detail-item span,.detail-item strong,.detail-item small,.detail-item a,.detail-grid span,.detail-grid strong,.detail-grid small,.detail-grid a,.balance-detail-grid span,.balance-detail-grid strong,.balance-detail-grid small,.balance-detail-grid a,.stat-card span,.stat-card strong,.context-help p,.context-help strong,.context-help small,.modal-body p,.modal-body strong,.modal-body small,.modal-body a,.panel p,.panel strong,.panel small,.panel a,.computed-box,.file-box,.alert,.pill){
  max-width:100%;
  min-width:0;
  overflow-wrap:anywhere;
  word-break:break-word;
  white-space:normal;
}
:where(.field input,.field select,.field textarea,.form-grid input,.form-grid select,.form-grid textarea,label input,label select,label textarea){
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
:where(td,th){
  overflow-wrap:anywhere;
  word-break:break-word;
}
:where(a[href]){
  overflow-wrap:anywhere;
  word-break:break-word;
}
