/* Control de Citas Clínicas */
.cc-form { max-width: 720px; }
.cc-form .cc-seccion { border: 1px solid #dcdcde; border-radius: 8px; padding: 12px 18px 4px; margin: 0 0 18px; background: #fff; }
.cc-form legend { font-weight: 600; padding: 0 6px; font-size: 1.05em; }
.cc-campo { margin: 0 0 14px; }
.cc-campo label { display: block; font-weight: 600; margin-bottom: 4px; }
.cc-campo input, .cc-campo select, .cc-campo textarea { width: 100%; max-width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid #c3c4c7; border-radius: 6px; font: inherit; }
.cc-campo select:disabled { background: #f6f7f7; color: #787c82; }
.cc-check { margin: 0 0 12px; }
.cc-check label { font-weight: normal; }
.cc-req { color: #b32d2e; }

.cc-boton, .cc-form button[type="submit"]:not(.button) { display: inline-block; background: #0e7c86; color: #fff !important; border: 0; border-radius: 6px; padding: 10px 18px; font-weight: 600; text-decoration: none; cursor: pointer; }
.cc-boton:hover { background: #0a5f67; }
.cc-boton-sec { background: transparent; border: 1px solid #b32d2e; color: #b32d2e; border-radius: 6px; padding: 4px 10px; cursor: pointer; }

.cc-msg, .cc-estado, .cc-bloqueo { border-radius: 8px; padding: 12px 16px; margin: 0 0 16px; border-left: 4px solid; }
.cc-msg-ok { background: #edfaef; border-color: #00a32a; }
.cc-msg-aviso { background: #fcf9e8; border-color: #dba617; }
.cc-msg-error { background: #fcf0f1; border-color: #d63638; }
.cc-estado { background: #f6f7f7; border-color: #8c8f94; }
.cc-estado-ok { background: #edfaef; border-color: #00a32a; }
.cc-estado-incompleta, .cc-estado-vencida { background: #fcf9e8; border-color: #dba617; }
.cc-estado-sin_hoja { background: #f0f6fc; border-color: #2271b1; }
.cc-bloqueo { background: #f0f6fc; border-color: #2271b1; padding: 18px 20px; }

.cc-tabla { width: 100%; border-collapse: collapse; }
.cc-tabla th, .cc-tabla td { padding: 8px; border-bottom: 1px solid #e0e0e0; text-align: left; vertical-align: top; }

.cc-etiqueta { display: inline-block; padding: 2px 8px; border-radius: 10px; font-size: 12px; font-weight: 600; background: #f0f0f1; color: #50575e; white-space: nowrap; }
.cc-et-pendiente, .cc-hoja-incompleta, .cc-hoja-vencida { background: #fcf3cf; color: #7a5b00; }
.cc-et-confirmada, .cc-hoja-ok { background: #d5f5dc; color: #1a6b2f; }
.cc-et-atendida { background: #dbe9f7; color: #1d4f7a; }
.cc-et-cancelada, .cc-et-no_asistio { background: #fbe0e1; color: #8a1f22; }
.cc-hoja-sin_hoja { background: #e5e5e5; color: #50575e; }

/* Administración */
.cc-filtros { margin: 12px 0; display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.cc-caja { background: #fff; border: 1px solid #dcdcde; border-radius: 8px; padding: 16px 20px; max-width: 760px; margin-top: 16px; }
.cc-datos th { width: 38%; font-weight: 600; }
@media print {
	#adminmenumain, #wpadminbar, .page-title-action, .cc-no-imprimir, .notice, #wpfooter { display: none !important; }
	#wpcontent { margin-left: 0 !important; }
}

/* Clientes sin cuenta */
.cc-pasos { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; margin: 0 0 16px; }
.cc-paso { border: 1px solid #dcdcde; border-radius: 10px; padding: 16px 20px; background: #fff; }
.cc-paso h3 { margin-top: 0; }
.cc-quien { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; background: #f6f7f7; border-radius: 8px; padding: 10px 14px; margin: 0 0 16px; }
.cc-quien form { margin: 0; }
.cc-enlace { background: none; border: 0; padding: 0; color: #0e7c86; text-decoration: underline; cursor: pointer; font: inherit; }
.cc-pie { margin-top: 12px; }
.cc-ayuda { display: block; font-size: 13px; color: #646970; margin-top: 4px; }
