.clyf-shell{
	--clyf-bg:#0b0b14;
	--clyf-card:#151320;
	--clyf-card-2:#1b1730;
	--clyf-line:rgba(255,255,255,.08);
	--clyf-line-soft:#2d2746;
	--clyf-text:#f5f4fb;
	--clyf-muted:#b7b2cb;
	--clyf-accent:#8b5cf6;
	--clyf-accent-2:#a66bff;
	--clyf-success:#14b86a;
	--clyf-error:#ff6b6b;
	--clyf-radius:26px;
	--clyf-radius-sm:16px;
	--clyf-shadow:0 24px 60px rgba(0,0,0,.28);

	width:100%;
	font-family:inherit;
	color:var(--clyf-text);
}

.clyf-card{
	position:relative;
	width:100%;
	padding:32px;
	border-radius:var(--clyf-radius);
	background:
		radial-gradient(circle at top right, rgba(166,107,255,.12), transparent 28%),
		linear-gradient(135deg, #120f1f 0%, #1b1730 52%, #241d3d 100%);
	border:1px solid var(--clyf-line);
	box-shadow:var(--clyf-shadow);
	overflow:hidden;
}

.clyf-card::before{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:linear-gradient(180deg, rgba(255,255,255,.03), transparent 22%);
}

.clyf-card-head{
	position:relative;
	margin-bottom:26px;
}

.clyf-eyebrow{
	display:inline-flex;
	align-items:center;
	padding:8px 14px;
	border-radius:999px;
	background:rgba(166,107,255,.12);
	border:1px solid rgba(166,107,255,.18);
	color:#dccaff;
	font-size:11px;
	font-weight:700;
	letter-spacing:.14em;
	text-transform:uppercase;
	margin-bottom:14px;
}

.clyf-card-head h2{
	margin:0 0 10px;
	font-size:32px;
	line-height:1.15;
	font-weight:700;
	color:#fff;
}

.clyf-card-head p{
	margin:0;
	max-width:760px;
	font-size:15px;
	line-height:1.75;
	color:var(--clyf-muted);
}

.clyf-form{
	position:relative;
}

.clyf-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:18px;
	margin-bottom:18px;
}

.clyf-grid-2{
	grid-template-columns:repeat(2, minmax(0, 1fr));
}

.clyf-field{
	display:flex;
	flex-direction:column;
	gap:8px;
}

.clyf-field-full{
	grid-column:1 / -1;
}

.clyf-field label{
	font-size:13px;
	font-weight:700;
	color:#e9e6f7;
	letter-spacing:.01em;
}

.clyf-field label span{
	color:#c7a8ff;
}

.clyf-field input,
.clyf-field textarea{
	width:100%;
	border:none;
	outline:none;
	border-radius:16px;
	padding:15px 16px;
	background:rgba(255,255,255,.04);
	border:1px solid rgba(255,255,255,.08);
	color:#fff;
	font-size:14px;
	line-height:1.5;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
	transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.clyf-field textarea{
	min-height:130px;
	resize:vertical;
}

.clyf-field input::placeholder,
.clyf-field textarea::placeholder{
	color:rgba(255,255,255,.38);
}

.clyf-field input:focus,
.clyf-field textarea:focus{
	border-color:rgba(166,107,255,.55);
	box-shadow:0 0 0 4px rgba(166,107,255,.12);
	transform:translateY(-1px);
}

.clyf-actions{
	margin-top:10px;
}

.clyf-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:220px;
	padding:15px 22px;
	border:none;
	border-radius:999px;
	background:linear-gradient(135deg, var(--clyf-accent) 0%, var(--clyf-accent-2) 100%);
	color:#fff;
	font-size:14px;
	font-weight:700;
	letter-spacing:.02em;
	cursor:pointer;
	box-shadow:0 14px 32px rgba(139,92,246,.28);
	transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.clyf-btn:hover{
	transform:translateY(-1px);
	box-shadow:0 18px 38px rgba(139,92,246,.34);
}

.clyf-btn:active{
	transform:translateY(0);
}

.clyf-hp{
	position:absolute !important;
	left:-9999px !important;
	opacity:0 !important;
	pointer-events:none !important;
}

.clyf-message-wrap{
	margin:0 0 22px;
}

.clyf-message{
	display:flex;
	align-items:flex-start;
	gap:14px;
	padding:16px 18px;
	border-radius:18px;
	border:1px solid rgba(255,255,255,.08);
	background:rgba(255,255,255,.04);
}

.clyf-message-success{
	background:rgba(20,184,106,.10);
	border-color:rgba(20,184,106,.22);
}

.clyf-message-error{
	background:rgba(255,107,107,.10);
	border-color:rgba(255,107,107,.22);
}

.clyf-message-badge{
	flex:0 0 auto;
	padding:8px 10px;
	border-radius:999px;
	background:rgba(255,255,255,.08);
	color:#fff;
	font-size:10px;
	font-weight:800;
	letter-spacing:.12em;
	text-transform:uppercase;
}

.clyf-message-success .clyf-message-badge{
	background:rgba(20,184,106,.16);
	color:#b9f3d5;
}

.clyf-message-error .clyf-message-badge{
	background:rgba(255,107,107,.16);
	color:#ffd0d0;
}

.clyf-message-content strong{
	display:block;
	font-size:14px;
	margin:0 0 6px;
	color:#fff;
}

.clyf-message-content p{
	margin:0;
	font-size:14px;
	line-height:1.65;
	color:var(--clyf-muted);
}

@media (max-width: 900px){
	.clyf-grid-2{
		grid-template-columns:1fr;
	}

	.clyf-card{
		padding:24px;
	}

	.clyf-card-head h2{
		font-size:26px;
	}
}

@media (max-width: 640px){
	.clyf-card{
		padding:20px;
		border-radius:22px;
	}

	.clyf-btn{
		width:100%;
	}
}