@charset "utf-8";
/* CSS Document */
.registro_contenedor {
    font-family: Calibri, sans-serif;
    background-color: #f4f6f9;
    display: flex;
    justify-content: left;
    align-items: center;
    min-height: 20vh;
    padding-top: 10px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 10px;
}
/* Estilo especial para campos DATE */
.registro_input[type="date"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;

    padding: 10px;
    font-size: 14px;
    color: #333;

    cursor: pointer;
    transition: all 0.25s ease-in-out;
}

/* Ícono del calendario más elegante */
.registro_input[type="date"]::-webkit-calendar-picker-indicator {
    background: url('data:image/svg+xml;utf8,<svg fill="%23777" height="20" viewBox="0 0 24 24" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M19 4h-1V2h-2v2H8V2H6v2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z"/></svg>') no-repeat center;
    opacity: 0.6;
    cursor: pointer;
}

/* Hover */
.registro_input[type="date"]:hover {
    border-color: #0078d7;
    box-shadow: 0 0 6px rgba(0,120,215,0.25);
}

/* Focus */
.registro_input[type="date"]:focus {
    border-color: #0078d7;
    outline: none;
    box-shadow: 0 0 8px rgba(0,120,215,0.35);
}
.registro_form {
    background: #fff;
    padding-top: 40px;
    padding-right: 40px;
    padding-left: 40px;
    padding-bottom: 40px;
    border-radius: 2px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    width: 700px;
}

.registro_titulo {
  text-align: center;
  margin-bottom: 10px;
  color: #333;
}

.registro_label {
    display: block;
    margin-top: 12px;
    font-weight: bold;
    color: #444;
    text-align: right;
}

.registro_input {
  width: 100%;
  padding: 10px;
  margin-top: 6px;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 14px;
}

.registro_input:focus {
  border-color: #0078d7;
  outline: none;
  box-shadow: 0 0 5px rgba(0,120,215,0.3);
}

.registro_error {
  color: red;
  font-size: 12px;
  margin-top: 4px;
}

.registro_boton {
  margin-top: 20px;
  width: 100%;
  padding: 12px;
  background: linear-gradient(90deg, #0078d7, #005a9e);
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  cursor: pointer;
}

.registro_boton:hover {
  background: linear-gradient(90deg, #005a9e, #004578);
}
