/* ==========================================================================
   Formularele cererilor din Legea nr. 169/2026
   --------------------------------------------------------------------------
   Formularele astea sunt lungi - 38, respectiv 33 de campuri - si urmeaza
   sectiune cu sectiune documentul de pe hartie. De aceea nu sunt puse pe
   coloane: cine completeaza are documentul alaturi si merge de sus in jos.
   Sectiunile numerotate dau punctele de reper.
   ========================================================================== */

.cerere-noua-form {
	--cerere-brand: #743a38;
	--cerere-linie: #e5d9d7;
	--cerere-sters: #796a6b;
	max-width: 860px;
	margin: 0 auto;
	text-align: left;
}

.cerere-titlu {
	color: var(--cerere-brand);
	font-size: 22px;
	font-weight: 800;
	margin: 0 0 6px;
}

.cerere-temei {
	color: var(--cerere-sters);
	font-size: 13.5px;
	margin: 0 0 26px;
}

/* --- sectiune ------------------------------------------------------------ */
.cerere-sectiune {
	background: #fff;
	border: 1px solid var(--cerere-linie);
	border-radius: 14px;
	margin-bottom: 16px;
	padding: 20px 22px;
}

.cerere-sectiune__titlu {
	color: var(--cerere-brand);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.4;
	margin: 0 0 4px;
}

.cerere-sectiune__nota {
	color: var(--cerere-sters);
	font-size: 12.5px;
	margin: 0 0 14px;
}

/* --- grila sectiunii ------------------------------------------------------
   Doua coloane, ca o sectiune sa se vada dintr-o privire: la „Date privind
   solicitantul” intra cinci campuri in trei randuri, nu in cinci.

   `minmax(0, 1fr)` si nu `1fr`: fara el, un camp cu text lung refuza sa se
   stranga sub latimea continutului si impinge coloana peste marginea paginii.
   -------------------------------------------------------------------------- */
.cerere-campuri {
	display: grid;
	gap: 0 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Ce nu se poate citi pe jumatate de latime: descrierile, grupurile de casete
   si lista de autori. */
.cerere-camp--lat,
.cerere-autori { grid-column: 1 / -1; }

/* --- camp ---------------------------------------------------------------- */
.cerere-camp {
	margin-top: 14px;
}

.cerere-camp label,
.cerere-camp__eticheta {
	color: #342527;
	display: block;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.45;
	margin-bottom: 5px;
}

.cerere-obligatoriu {
	color: #b3261e;
	margin-left: 2px;
}

.cerere-camp input[type="text"],
.cerere-camp input[type="email"],
.cerere-camp textarea {
	background: #fdfcfb;
	border: 1px solid var(--cerere-linie);
	border-radius: 9px;
	color: #342527;
	font-size: 14px;
	padding: 9px 12px;
	width: 100%;
}

.cerere-camp textarea { min-height: 78px; resize: vertical; }

.cerere-camp input:focus,
.cerere-camp textarea:focus {
	border-color: var(--cerere-brand);
	box-shadow: 0 0 0 3px rgba(116, 58, 56, .12);
	outline: none;
}

/* --- alegere (casete exclusive) ------------------------------------------ */
.cerere-camp--alegere { margin-top: 14px; }

.cerere-optiune {
	align-items: flex-start;
	display: flex;
	font-size: 13.5px;
	font-weight: 400;
	gap: 9px;
	line-height: 1.5;
	margin: 0 0 7px;
	padding: 8px 11px;
	border: 1px solid var(--cerere-linie);
	border-radius: 9px;
	cursor: pointer;
}

.cerere-optiune:hover { border-color: #c69a95; }
.cerere-optiune input { margin-top: 3px; flex: 0 0 auto; }

/* --- autori / specialisti ------------------------------------------------- */
.cerere-autor {
	border: 1px dashed var(--cerere-linie);
	border-radius: 11px;
	display: flex;
	gap: 10px;
	margin-bottom: 10px;
	padding: 12px 14px;
}

.cerere-autor__campuri {
	display: grid;
	gap: 10px 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	flex: 1 1 auto;
	min-width: 0;
}

.cerere-autor__campuri label {
	color: #342527;
	display: block;
	font-size: 12.5px;
	font-weight: 600;
}

.cerere-autor__campuri input {
	background: #fdfcfb;
	border: 1px solid var(--cerere-linie);
	border-radius: 8px;
	font-size: 13.5px;
	margin-top: 4px;
	padding: 7px 10px;
	width: 100%;
}

.cerere-autor__sterge {
	background: none;
	border: 0;
	color: var(--cerere-sters);
	cursor: pointer;
	flex: 0 0 auto;
	font-size: 20px;
	line-height: 1;
	padding: 2px 4px;
}

.cerere-autor__sterge:hover { color: #b3261e; }

.cerere-autori__adauga {
	background: none;
	border: 1px solid var(--cerere-brand);
	border-radius: 9px;
	color: var(--cerere-brand);
	cursor: pointer;
	font-size: 13px;
	font-weight: 600;
	padding: 8px 14px;
}

.cerere-autori__adauga:hover { background: rgba(116, 58, 56, .06); }

/* --- trimitere ------------------------------------------------------------ */
.cerere-trimite {
	margin: 26px 0 10px;
	text-align: center;
}

.cerere-trimite .btn {
	font-size: 15px;
	font-weight: 700;
	padding: 12px 34px;
}

.cerere-trimite__nota {
	color: var(--cerere-sters);
	font-size: 12.5px;
	margin: 12px auto 0;
	max-width: 520px;
}

/* --- telefon -------------------------------------------------------------- */
@media (max-width: 767px) {
	.cerere-campuri { grid-template-columns: 1fr; }
	.cerere-sectiune { padding: 16px 14px; }
	.cerere-autor__campuri { grid-template-columns: 1fr; }
	.cerere-autor { flex-direction: row; }
}
