/* ============================================================
   CV Builder — Bekleme Listesi (Waitlist) Stilleri
   Tüm seçiciler .cv-builder-waitlist kapsamında tutulur.
   ============================================================ */

/* ── Kart ────────────────────────────────────────────────── */
.cv-builder-waitlist {
	font-family   : -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
	box-sizing    : border-box;
	padding       : 16px;
}
.cv-builder-waitlist *,
.cv-builder-waitlist *::before,
.cv-builder-waitlist *::after {
	box-sizing: inherit;
}

.cvbwl-card {
	background    : #fff;
	border-radius : 16px;
	box-shadow    : 0 4px 24px rgba(0, 0, 0, .10), 0 1px 4px rgba(0, 0, 0, .06);
	padding       : 48px 40px;
	max-width     : 580px;
	margin        : 0 auto;
	text-align    : center;
}

/* ── İkon ───────────────────────────────────────────────── */
.cvbwl-icon {
	font-size     : 48px;
	line-height   : 1;
	margin-bottom : 20px;
}

/* ── Başlık / Alt Metin ──────────────────────────────────── */
.cvbwl-title {
	font-size     : 1.55rem;
	font-weight   : 800;
	color         : #1e1e2e;
	margin        : 0 0 14px;
	line-height   : 1.25;
}

.cvbwl-subtitle {
	font-size     : .975rem;
	color         : #64748b;
	line-height   : 1.6;
	margin        : 0 0 32px;
}

/* ── Form ────────────────────────────────────────────────── */
.cvbwl-form { margin: 0; }

.cvbwl-input-row {
	display        : flex;
	gap            : 10px;
	align-items    : stretch;
}

.cvbwl-input {
	flex           : 1 1 auto;
	height         : 48px;
	padding        : 0 16px;
	font-size      : .95rem;
	border         : 1.5px solid #e2e8f0;
	border-radius  : 10px;
	outline        : none;
	color          : #1e1e2e;
	background     : #fafafe;
	transition     : border-color .2s, box-shadow .2s;
}
.cvbwl-input::placeholder { color: #b0b8cc; }
.cvbwl-input:focus {
	border-color   : #6c5ce7;
	box-shadow     : 0 0 0 3px rgba(108, 92, 231, .15);
	background     : #fff;
}

/* ── Buton ───────────────────────────────────────────────── */
.cvbwl-btn {
	display        : inline-flex;
	align-items    : center;
	justify-content: center;
	gap            : 8px;
	height         : 48px;
	padding        : 0 24px;
	border         : none;
	border-radius  : 10px;
	font-size      : .95rem;
	font-weight    : 700;
	color          : #fff;
	background     : linear-gradient(135deg, #6c5ce7, #a78bfa);
	cursor         : pointer;
	white-space    : nowrap;
	transition     : opacity .2s, transform .15s, box-shadow .2s;
	box-shadow     : 0 4px 14px rgba(108, 92, 231, .35);
}
.cvbwl-btn:hover:not(:disabled) {
	opacity        : .92;
	transform      : translateY(-1px);
	box-shadow     : 0 6px 18px rgba(108, 92, 231, .45);
}
.cvbwl-btn:active:not(:disabled) { transform: translateY(0); }
.cvbwl-btn:disabled {
	opacity        : .65;
	cursor         : not-allowed;
	transform      : none;
}

/* ── Spinner ─────────────────────────────────────────────── */
.cvbwl-spinner {
	display        : none;
	width          : 16px;
	height         : 16px;
	border         : 2px solid rgba(255,255,255,.4);
	border-top-color: #fff;
	border-radius  : 50%;
	animation      : cvbwl-spin .7s linear infinite;
}
@keyframes cvbwl-spin { to { transform: rotate(360deg); } }

.cvbwl-btn.is-loading .cvbwl-btn-text { display: none; }
.cvbwl-btn.is-loading .cvbwl-spinner  { display: block; }

/* ── Hata mesajı ─────────────────────────────────────────── */
.cvbwl-error {
	margin-top  : 10px;
	font-size   : .875rem;
	color       : #e74c3c;
	min-height  : 20px;
}

/* ── Başarı durumu ───────────────────────────────────────── */
.cvbwl-success { display: none; }

.cvbwl-success-icon {
	font-size     : 52px;
	line-height   : 1;
	margin-bottom : 16px;
	animation     : cvbwl-pop .4s cubic-bezier(.17,.67,.38,1.4) both;
}
@keyframes cvbwl-pop {
	0%   { transform: scale(.5); opacity: 0; }
	100% { transform: scale(1);  opacity: 1; }
}

.cvbwl-success-text {
	font-size     : 1.1rem;
	font-weight   : 700;
	color         : #16a34a;
	margin        : 0 0 8px;
}

.cvbwl-success-hint {
	font-size     : .875rem;
	color         : #94a3b8;
	margin        : 0;
	line-height   : 1.5;
}

/* ── Duyarlı Tasarım ─────────────────────────────────────── */
@media (max-width: 520px) {
	.cvbwl-card        { padding: 32px 20px; }
	.cvbwl-title       { font-size: 1.25rem; }
	.cvbwl-input-row   { flex-direction: column; }
	.cvbwl-btn         { width: 100%; justify-content: center; }
}
