.rc-card{max-width:860px;margin:0 auto;background:#fff;border:1px solid #ddd;border-radius:8px;padding:24px}
.rc-title{margin:0 0 12px}

.rc-row{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:10px}
.rc-col{flex:1 1 260px}

.tcf-hidden{display:none}

.rc-card input,
.rc-card textarea,
.rc-card select{
	padding:16px;border:1px solid #bbb;width:100%;
	border-radius:4px;box-sizing:border-box;font-weight: 600;
}

.rc-card input[type="email"],
.rc-card input[type="text"],
.rc-card input[type="number"],
.rc-card input[type="date"],
.rc-card input[type="file"],
.rc-card select{
	height:50px;
	padding: 14px 12px;
	font-weight: 600;
}

.rc-card label{display:block;font-weight:600;margin-bottom:6px}

.rc-help{font-size:13px;opacity:.75;margin:0 0 10px;line-height: 18px;}

.rc-radio-group{display:flex;gap:6px;margin:6px 0 0;flex-wrap:wrap}

.rc-radio-btn{position:relative;cursor:pointer}
.rc-radio-btn input{position:absolute;opacity:0}
.rc-radio-btn span{
	display:flex;align-items:center;justify-content:center;
	padding: 11px 16px;
	min-height: 50px;border:2px solid #cbd5e1;border-radius:8px;
	font-weight:600;background:#f8fafc;transition:.2s ease;min-width:160px
}
.rc-radio-btn input:checked + span{background:#000;color:#fff;border-color:#000}

.rc-section{margin:14px 0;}

.rc-actions{display:flex;gap:12px;margin-top:18px}

.rc-steps{display:flex;gap:10px;margin:28px 0 18px;flex-wrap:wrap}
.rc-step{
	padding:10px 12px;border-radius:999px;border:1px solid #ddd;background:#fafafa;
	font-weight:700;font-size:13px;opacity:.6
}
.rc-step.is-active{opacity:1;border-color:#000;background:#000;color:#fff}

.rc-alert{
	font-size:18px;font-weight:700;text-align:center;margin:30px auto;max-width:860px;
	padding:14px;border-radius:10px
}
.rc-alert--success{color:green;border:1px solid rgba(0,128,0,.25);background:rgba(0,128,0,.06)}
.rc-alert--error{color:#b91c1c;border:1px solid rgba(185,28,28,.25);background:rgba(185,28,28,.06)}

.rc-loader{
	display:none;
	position:fixed;top:0;left:0;width:100%;height:100%;
	background:rgba(255,255,255,0.7);
	z-index:99999;
	align-items:center;
	justify-content:center;
}
.rc-loader .rc-loader-box{
	background:#fff;
	padding:18px 22px;
	border-radius:12px;
	border:1px solid #ddd;
	box-shadow:0 6px 30px rgba(0,0,0,0.12);
	font-weight:700;
}

.tcf-row {margin-bottom: 10px;}

@media (max-width: 768px){
	.rc-row{flex-direction:column}
	.rc-radio-group{flex-direction:column}
	.rc-radio-btn span{min-width:100%}
	.rc-steps{flex-direction:column}
}
