.cft {
	--cft-accent: var(--coral, #e8654a);
	background: #fff;
	border: 1px solid var(--line, #eadfd6);
	border-top: 5px solid var(--cft-accent);
	border-radius: 18px;
	padding: clamp(20px, 4vw, 32px);
	box-shadow: 0 1px 2px rgba(30, 36, 64, .06), 0 10px 30px rgba(30, 36, 64, .07);
	font-size: 17px;
	line-height: 1.5;
}
.cft[data-cft="indemnizatie"] { --cft-accent: var(--sun, #f6c453); }
.cft__form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 20px; align-items: end; }
@media (max-width: 600px) { .cft__form { grid-template-columns: 1fr; } }
.cft__row { display: flex; flex-direction: column; gap: 6px; }
.cft__row label { font-weight: 700; font-size: 15px; }
.cft__row input, .cft__row select {
	font: inherit; padding: 12px 14px; border: 1.5px solid var(--line, #eadfd6); border-radius: 10px;
	background: var(--paper, #fffbf7); color: var(--ink, #1e2440); width: 100%;
}
.cft__row input:focus, .cft__row select:focus { outline: none; border-color: var(--cft-accent); box-shadow: 0 0 0 3px rgba(232, 101, 74, .18); }
.cft__btn {
	grid-column: 1 / -1; justify-self: start; font: inherit; font-weight: 700; cursor: pointer;
	padding: 13px 28px; border: 0; border-radius: 999px; background: var(--ink, #1e2440); color: #fff;
}
.cft__btn:hover { background: var(--coral-d, #c4462d); }
.cft__error { grid-column: 1 / -1; margin: 0; color: #b3261e; font-weight: 600; }
.cft__result { margin-top: 26px; padding-top: 24px; border-top: 1px dashed var(--line, #eadfd6); }
.cft__big { display: flex; flex-direction: column; gap: 4px; margin-bottom: 18px; }
.cft__label { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--ink-3, #7a7f98); }
.cft__big strong { font-family: var(--serif, Georgia, serif); font-size: clamp(30px, 5vw, 42px); line-height: 1.1; color: var(--ink, #1e2440); }
.cft__list { margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; }
@media (max-width: 600px) { .cft__list { grid-template-columns: 1fr; } }
.cft__list > div { background: var(--cream, #fff1e8); border-radius: 10px; padding: 12px 14px; }
.cft__list dt { font-size: 13.5px; color: var(--ink-2, #4a5070); }
.cft__list dd { margin: 2px 0 0; font-weight: 700; }
.cft__note { margin: 18px 0 0; font-size: 14.5px; color: var(--ink-2, #4a5070); }
.cft--plum { --cft-accent: var(--plum, #7b3f75); }
.cft--mint { --cft-accent: var(--mint, #2e9c7f); }
.cft--lilac { --cft-accent: var(--lilac, #7a6fd0); }
.cft__table { width: 100%; border-collapse: collapse; margin-top: 18px; font-size: 15.5px; }
.cft__table th, .cft__table td { text-align: left; padding: 9px 10px; border-bottom: 1px solid var(--line, #eadfd6); }
.cft__table th { font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: var(--ink-3, #7a7f98); }
