/* FORM CORTO ------------------------*/
fieldset.corto,fieldset.corto legend{width: 170px; padding: 0px; border: none; font-size: 14px; padding: 0 0 0 0px; }
fieldset.corto legend{font-weight: bold; text-decoration: underline; margin: 10px 0 5px 0;}
fieldset.corto label,
fieldset.corto input,fieldset.corto select,fieldset.corto textarea,fieldset.corto p{width: 170px; height: 22px; display: block; float: left; clear: none; margin-bottom: 1px; line-height: 24px; padding: 0 3px; color: #666; }
fieldset.corto input,fieldset.corto select,fieldset.corto textarea,fieldset.corto p{width: 170px;border: 1px solid #999}
fieldset.corto input[type="submit"]{background: #c00; color: #fff; text-align: center; font-size: 14px; }
fieldset.corto p{width: 170px; border: none; display: block; float: none; clear: both; padding: 5px 0; height: auto;}
fieldset.corto label{ font-size: 12px; color: #333; font-weight: bold;}
fieldset.medio label.especial{width: 170px; height: 20px; margin: 0 0 10px 0; display: block; float: none; clear: both;}
fieldset.medio label.especial a{color: #333; text-decoration: none;}
fieldset.medio label.especial a:hover{color: #000; text-decoration: underline;}
fieldset.medio input[type="checkbox"]{width: 14px; height: 14px; border: none;}

/* FORM MEDIO ----------------------*/
fieldset.medio,fieldset.medio legend{width: 400px; padding: 0px; border: none; font-size: 14px; padding: 0 0 0 0px; }
fieldset.medio legend{font-weight: bold; text-decoration: underline; margin: 10px 0 5px 0;}
fieldset.medio label,
fieldset.medio input,fieldset.medio select,fieldset.medio textarea,fieldset.medio p{width: 140px; height: 24px; display: block; float: left; clear: none; margin-bottom: 15px; line-height: 24px; padding: 0 3px; color: #666; }
fieldset.medio input,fieldset.medio select,fieldset.medio textarea,fieldset.medio p{width: 220px;border: 1px solid #999}
fieldset.medio input[type="submit"]{background: #c00; color: #fff; text-align: center; font-size: 14px; }
fieldset.medio p{width: 400px; border: none; display: block; float: none; clear: both; padding: 5px 0; height: auto;}

fieldset.medio label.especial{width: 400px; height: 20px; margin: 0 0 10px 0; display: block; float: none; clear: both;}
fieldset.medio label.especial a{color: #333; text-decoration: none;}
fieldset.medio label.especial a:hover{color: #000; text-decoration: underline;}
fieldset.medio input[type="checkbox"]{width: 14px; height: 14px; border: none;}

/* FORM LARGO ----------------------*/
.greybox form{width: 100%; max-width: 100%; box-sizing: border-box; overflow: hidden;}
.greybox form *{box-sizing: border-box;}
fieldset.largo{
	width: 100% !important; max-width: 100% !important; padding: 0 !important; border: none !important;
	font-size: 14px; margin: 0 0 25px 0; box-sizing: border-box; overflow: hidden;
}
fieldset.largo legend{
	width: 100% !important; padding: 0 0 8px !important; margin: 0 0 18px !important;
	font-weight: 700; font-size: 13px; color: #c00; text-decoration: none !important;
	border-bottom: 2px solid #c00; text-transform: uppercase; letter-spacing: 1.2px;
	float: none !important;
}
/* --- field group wrapper --- */
fieldset.largo .ef-field{
	margin-bottom: 16px; overflow: hidden;
}
fieldset.largo .ef-field div[id]{overflow: hidden;}
/* --- two-column row --- */
fieldset.largo .ef-row{
	display: flex; gap: 16px; margin-bottom: 0; width: 100%;
}
fieldset.largo .ef-row .ef-field{
	flex: 1; min-width: 0;
}
fieldset.largo label{
	display: block !important; width: auto !important; float: none !important; clear: both !important;
	color: #666; font-size: 12px; font-weight: 600; margin-bottom: 5px;
	height: auto !important; line-height: 1.3; text-transform: uppercase; letter-spacing: 0.3px;
}
fieldset.largo label .ef-req{
	color: #c00; font-weight: 700; margin-left: 1px;
}
fieldset.largo input[type="text"],
fieldset.largo input[type="tel"],
fieldset.largo input[type="email"],
fieldset.largo input[type="url"],
fieldset.largo input[type="password"],
fieldset.largo select,
fieldset.largo textarea{
	width: 100% !important; height: 38px; display: block !important; float: none !important; clear: both !important;
	margin-bottom: 0; line-height: 38px; padding: 0 12px;
	color: #333; border: 1px solid #ddd; border-radius: 6px;
	font-size: 14px; font-family: inherit; background: #fafafa;
	box-sizing: border-box;
	transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
fieldset.largo input[type="text"]:hover,
fieldset.largo input[type="tel"]:hover,
fieldset.largo input[type="email"]:hover,
fieldset.largo input[type="url"]:hover,
fieldset.largo input[type="password"]:hover,
fieldset.largo select:hover,
fieldset.largo textarea:hover{
	border-color: #bbb; background: #fff;
}
fieldset.largo input[type="text"]:focus,
fieldset.largo input[type="tel"]:focus,
fieldset.largo input[type="email"]:focus,
fieldset.largo input[type="url"]:focus,
fieldset.largo input[type="password"]:focus,
fieldset.largo select:focus,
fieldset.largo textarea:focus{
	border-color: #c00; background: #fff;
	box-shadow: 0 0 0 3px rgba(204,0,0,0.06); outline: none;
}
fieldset.largo select{
	-webkit-appearance: none; appearance: none; cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6' fill='%23999'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 12px center; padding-right: 34px;
}
/* selects inside AJAX wrapper divs */
fieldset.largo div[id] select{
	width: 100% !important; height: 38px; display: block !important;
	line-height: 38px; padding: 0 12px; padding-right: 34px;
	color: #333; border: 1px solid #ddd; border-radius: 6px;
	font-size: 14px; font-family: inherit; background: #fafafa;
	box-sizing: border-box;
	-webkit-appearance: none; appearance: none; cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6' fill='%23999'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 12px center;
	transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
fieldset.largo input.abotonado,fieldset.largo select.abotonado,fieldset.largo textarea.abotonado{
	width: calc(100% - 55px) !important; display: inline-block; float: left;
}
fieldset.largo input.cal{width: 50px !important; background: transparent; border: none; background: url(../images/calendar.png) top center no-repeat;}
fieldset.largo input[type="submit"]{
	width: 100% !important; display: block !important; float: none !important;
	background: #c00; color: #fff;
	text-align: center; font-size: 15px; font-weight: 700; letter-spacing: 0.5px;
	border: none; border-radius: 6px; height: 44px; line-height: 44px;
	cursor: pointer; transition: all 0.2s ease; margin-top: 8px;
	text-transform: uppercase;
}
fieldset.largo input[type="submit"]:hover{
	background: #a00;
	box-shadow: 0 3px 10px rgba(204,0,0,0.25);
}
fieldset.largo p{
	width: 100% !important; border: none !important; display: block !important;
	float: none !important; clear: both !important;
	padding: 4px 0; height: auto !important; margin-bottom: 8px;
	line-height: 1.5; color: #888; font-size: 12px;
}
fieldset.largo p.error{
	color: #c00; background: #fff5f5; border: 1px solid #fcc !important;
	border-radius: 6px; padding: 10px 14px; margin-bottom: 16px; font-size: 13px;
}
fieldset.largo em{display: none !important;}
fieldset.largo label.especial{
	width: 100% !important; height: auto !important; margin: 6px 0 16px;
	display: flex !important; align-items: center; gap: 8px;
	float: none !important; clear: both !important; font-weight: 400;
	text-transform: none; letter-spacing: 0; font-size: 13px;
}
fieldset.largo label.especial a{color: #c00; text-decoration: none; border-bottom: 1px dashed #c00;}
fieldset.largo label.especial a:hover{color: #900; border-bottom-style: solid;}
fieldset.largo input[type="checkbox"]{
	width: 18px !important; height: 18px !important;
	border: 1px solid #ccc; border-radius: 4px;
	display: inline-block !important; float: none !important;
	margin: 0; cursor: pointer; accent-color: #c00;
}
fieldset.largo textarea{height: 100px; line-height: 1.5; padding: 10px 12px; resize: vertical;}
fieldset.largo label img{border-radius: 6px; border: 1px solid #ddd;}
@media (max-width: 600px){
	fieldset.largo .ef-row{flex-direction: column; gap: 0;}
}
/* ── Alérgenos (Reglamento UE 1169/2011) ────────────────────────────────
   Catorce casillas: en lista vertical son catorce renglones que nadie lee y
   que empujan el botón de guardar fuera de la pantalla. En rejilla se abarcan
   de un vistazo, que es como se repasa una lista de alérgenos: buscando el
   que lleva TU plato. */
.alg-rejilla{
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 7px;
	margin-top: 6px;
}
.alg-item{
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 44px;
	padding: 6px 11px;
	border: 1px solid #e4e4e7;
	border-radius: 10px;
	background: #fff;
	cursor: pointer;
	font-size: 13.5px;
	line-height: 1.25;
	transition: border-color .12s ease, background .12s ease;
}
.alg-item:hover{ border-color: #c9c9cf; }
.alg-item input{ width: 20px; height: 20px; margin: 0; flex: 0 0 auto; accent-color: #c0272d; cursor: pointer; }
/* Marcado se ve distinto del CSS y no solo por la casilla: en una rejilla de
   catorce, repasar cuáles están marcadas mirando cuadraditos es un ejercicio
   de paciencia. */
.alg-item.es-puesto, .alg-item:has(input:checked){
	border-color: #e9c3a0;
	background: #fdf6ee;
	font-weight: 600;
}
@media (max-width: 560px){
	.alg-rejilla{ grid-template-columns: 1fr 1fr; }
	.alg-item{ padding: 6px 9px; font-size: 12.5px; gap: 7px; }
}

/* ⚠ Aqui vivian las reglas de `.ui-datepicker*` (41 bloques), el calendario de
   jQuery UI. Se retiraron el 2026-09-01 junto con su JavaScript: el sitio usa
   flatpickr desde el 13/08 y nadie llamaba ya a `.datepicker()`.
   Copia en /root/backups/js_20260901/forms.css. */
