/* Button loading state */
.caf-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.caf-btn.is-loading,
.caf-btn.caf-start-pending,
.caf-btn[disabled] {
	pointer-events: none;
	opacity: 0.8;
}

.caf-btn.is-loading .caf-btn__label,
.caf-btn.caf-start-pending .caf-btn__label {
	visibility: hidden;
}

.caf-btn.is-loading::after,
.caf-btn.caf-start-pending::after {
	content: "";
	position: absolute;
	width: 1em;
	height: 1em;
	border: 2px solid currentColor;
	border-top-color: transparent;
	border-radius: 50%;
	animation: caf-spin 0.8s linear infinite;
}

@keyframes caf-spin {
	to { transform: rotate(360deg); }
}

/* Optional smaller variant */
.caf-btn.caf-btn--sm.is-loading::after {
	width: 0.9em;
	height: 0.9em;
}

/* Cyberland Multi-step Form - Front-end Styles */
.cyberland-multi-step-wrapper { font-family: var(--caf-font-content, Tahoma, Arial, sans-serif); background: var(--caf-color-bg); color: var(--caf-color-text); line-height:1.55; font-size: var(--caf-font-size,14px); max-width:800px; margin:0 auto; padding:0 16px; }
.cyberland-multi-step-wrapper p,
.cyberland-multi-step-wrapper span,
.cyberland-multi-step-wrapper label,
.cyberland-multi-step-wrapper div:not(.cyberland-question-desc),
.cyberland-multi-step-wrapper button,
.cyberland-multi-step-wrapper input,
.cyberland-multi-step-wrapper textarea,
.cyberland-multi-step-wrapper select { font-family: var(--caf-font-content, Tahoma, Arial, sans-serif) !important; }

/* Hide inline save status text to reduce UI clutter */
.cyberland-save-status{
	display: none !important;
}

/* Green flash for auto-save checkbox on successful save */
.cyberland-save-progress-checkbox.caf-flash-green{
	accent-color: #10b981; /* modern browsers */
}

/* Optional visual fallback for older UAs: target label next to checkbox */
input.cyberland-save-progress-checkbox.caf-flash-green + label,
label[for].caf-flash-green{
	color: #10b981;
	transition: color 0.2s ease;
}
.cyberland-multi-step-wrapper h1,
.cyberland-multi-step-wrapper h2,
.cyberland-multi-step-wrapper h3,
.cyberland-multi-step-wrapper h4,
.cyberland-multi-step-wrapper h5,
.cyberland-multi-step-wrapper h6 { font-family: var(--caf-font-headers, Tahoma, Arial, sans-serif) !important; }
.cyberland-multi-step-wrapper .cyberland-question-desc { 
	/* Override global div font-family enforced with !important above */
	font-family: var(--caf-question-desc-font-family, var(--caf-font-content, Tahoma, Arial, sans-serif)) !important; 
	font-size: var(--caf-question-desc-font-size, var(--caf-font-size,14px));
	color: var(--caf-question-desc-color, var(--caf-color-text));
	line-height:1.5; 
}
.cyberland-multi-step-wrapper * { box-sizing: border-box; }
.cyberland-multi-step-wrapper .cyberland-progress-bar { position:relative; width:100%; height:8px; background:linear-gradient(90deg,#f1f3f7,#eef2f7); border-radius: var(--caf-radius); overflow:hidden; margin:0 0 18px; }
.cyberland-multi-step-wrapper .cyberland-progress-fill { position:absolute; inset:0 0 0 0; width:0%; background:linear-gradient(90deg,var(--caf-color-primary),var(--caf-color-accent)); transition:width .35s ease; }
.cyberland-multi-step-wrapper .cyberland-progress-text { font-size:12px; font-weight:600; letter-spacing:.5px; margin:0 0 12px; color:#555; }

/* Step Card */
.cyberland-multi-step-wrapper .cyberland-step { background: var(--caf-color-surface); border:1px solid var(--caf-color-border); border-radius: var(--caf-radius); padding:24px 26px 28px; box-shadow:0 2px 4px -2px rgba(0,0,0,.04); animation: cafFade .25s ease; }
@keyframes cafFade { from { opacity:0; transform:translateY(6px);} to { opacity:1; transform:translateY(0);} }
.cyberland-multi-step-wrapper .cyberland-question-label { font-family: var(--caf-font-headers, Tahoma, Arial, sans-serif); margin:0 0 14px; font-size: var(--caf-question-title-size, 17px); font-weight:var(--caf-question-title-weight,700); line-height:var(--caf-question-title-line-height,1.4); color:var(--caf-question-title-color,var(--caf-color-text)); }
.cyberland-multi-step-wrapper .cyberland-slide-content { font-size:15px; line-height:1.75; color:#444; padding:4px 2px 6px; }
/* Slide content heading spacing (reduce large default theme margins) */
.cyberland-multi-step-wrapper .cyberland-slide-content h1 { margin:0 0 .50em; line-height:1.22; }
.cyberland-multi-step-wrapper .cyberland-slide-content h2 { margin:.2em 0 .45em; line-height:1.25; }
.cyberland-multi-step-wrapper .cyberland-slide-content h3 { margin:.3em 0 .40em; line-height:1.30; }
.cyberland-multi-step-wrapper .cyberland-slide-content h4 { margin:.35em 0 .35em; line-height:1.32; }
.cyberland-multi-step-wrapper .cyberland-slide-content h5 { margin:.4em 0 .30em; line-height:1.35; }
.cyberland-multi-step-wrapper .cyberland-slide-content h6 { margin:.45em 0 .28em; line-height:1.38; }
/* If headings follow one another directly, trim the top margin */
.cyberland-multi-step-wrapper .cyberland-slide-content h1 + h2,
.cyberland-multi-step-wrapper .cyberland-slide-content h2 + h3,
.cyberland-multi-step-wrapper .cyberland-slide-content h3 + h4,
.cyberland-multi-step-wrapper .cyberland-slide-content h4 + h5,
.cyberland-multi-step-wrapper .cyberland-slide-content h5 + h6 { margin-top:.15em; }
/* Paragraph spacing below headings */
.cyberland-multi-step-wrapper .cyberland-slide-content p { margin:.35em 0 .65em; }
/* Alignment helpers for slide/editor content */
.cyberland-multi-step-wrapper .cyberland-slide-content p.alignleft,
.cyberland-multi-step-wrapper .cyberland-slide-content div.alignleft,
.cyberland-multi-step-wrapper .cyberland-slide-content .alignleft { text-align:left; }
.cyberland-multi-step-wrapper .cyberland-slide-content p.alignright,
.cyberland-multi-step-wrapper .cyberland-slide-content div.alignright,
.cyberland-multi-step-wrapper .cyberland-slide-content .alignright { text-align:right; }
.cyberland-multi-step-wrapper .cyberland-slide-content p.aligncenter,
.cyberland-multi-step-wrapper .cyberland-slide-content div.aligncenter,
.cyberland-multi-step-wrapper .cyberland-slide-content .aligncenter { text-align:center; margin-left:auto; margin-right:auto; }
/* Classic WP image float alignment inside slide content */
.cyberland-multi-step-wrapper .cyberland-slide-content img.alignleft { float:left; margin:0 1.2em .6em 0; }
.cyberland-multi-step-wrapper .cyberland-slide-content img.alignright { float:right; margin:0 0 .6em 1.2em; }
.cyberland-multi-step-wrapper .cyberland-slide-content img.aligncenter { display:block; margin-left:auto; margin-right:auto; }
/* Clear floats at end if needed */
.cyberland-multi-step-wrapper .cyberland-slide-content:after { content:""; display:block; clear:both; }
.cyberland-multi-step-wrapper .cyberland-question-field input[type="text"],
.cyberland-multi-step-wrapper .cyberland-question-field textarea { width:100%; border:1px solid var(--caf-color-border); border-radius: calc(var(--caf-radius) - 2px); padding:10px 12px; font-size:14px; background:#fff; transition:border-color .2s, box-shadow .2s; }
.cyberland-multi-step-wrapper .cyberland-question-field input[type="text"]:focus,
.cyberland-multi-step-wrapper .cyberland-question-field textarea:focus { outline:none; border-color: var(--caf-color-primary); box-shadow:0 0 0 3px rgba(77,46,255,.15); }

/* Add spacing between options/fields and the content above */
.cyberland-multi-step-wrapper .cyberland-question-field { margin-top:30px; }

/* Options layout - default vertical (stack) */
.cyberland-multi-step-wrapper .cyberland-option { display:flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--caf-option-border-color, var(--caf-color-border)); padding:20px 15px; border-radius: var(--caf-option-radius, var(--caf-radius)); margin-bottom:10px; cursor:pointer; font-size: var(--caf-option-text-size, 14px); transition: border-color .22s, background .22s, box-shadow .22s; color:var(--caf-option-text-color,var(--caf-color-text)); font-weight:var(--caf-option-text-weight,400); }

/* Horizontal layout - controlled by number of options */
.cyberland-multi-step-wrapper .caf-layout-horizontal { display:grid; gap:14px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option { margin-bottom:0; width:100%; }
/* 2 options → 2 columns */
.cyberland-multi-step-wrapper .caf-layout-horizontal[data-options-count="2"] { grid-template-columns: repeat(2, minmax(0,1fr)); }
/* 3 options → 3 columns */
.cyberland-multi-step-wrapper .caf-layout-horizontal[data-options-count="3"] { grid-template-columns: repeat(3, minmax(0,1fr)); }
/* 4 options → two rows of two */
.cyberland-multi-step-wrapper .caf-layout-horizontal[data-options-count="4"] { grid-template-columns: repeat(2, minmax(0,1fr)); }
/* 5 options → three on top, two below */
.cyberland-multi-step-wrapper .caf-layout-horizontal[data-options-count="5"] { grid-template-columns: repeat(3, minmax(0,1fr)); }
/* 6 options → two rows of three */
.cyberland-multi-step-wrapper .caf-layout-horizontal[data-options-count="6"] { grid-template-columns: repeat(3, minmax(0,1fr)); }

/* Option media (image) for horizontal cards */
.cyberland-multi-step-wrapper .cyberland-option-with-image { gap:10px; }
/* Horizontal card layout: image on top, text under */
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option { flex-direction: column; align-items:center; justify-content:center; text-align:center; gap:12px; padding:22px; }
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option-with-image .caf-option-media { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; width:80px; height:80px; border:none; border-radius:0; background:transparent; }
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option-with-image .caf-option-media img { width:100px; height:100px; object-fit:contain; border-radius:0; }
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option-with-image .caf-option-text { display:inline-block; font-weight:600; color:var(--caf-option-text-color,var(--caf-color-text)); }
/* Hide native inputs inside horizontal tiles; rely on card selection state */
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option input[type="radio"],
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option input[type="checkbox"] { position:absolute; opacity:0; width:1px; height:1px; pointer-events:none; }
/* Selected state (modern :has supported in major browsers) */
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option:has(input:checked) { border-color: var(--caf-color-primary); box-shadow:0 0 0 3px rgba(77,46,255,.12); }
/* Focus visible state for accessibility */
.cyberland-multi-step-wrapper .caf-layout-horizontal .cyberland-option:has(input:focus-visible) { box-shadow:0 0 0 4px rgba(77,46,255,.28); border-color: var(--caf-color-primary); }

/* Responsive: switch to exactly 2 columns on tablets/mobiles */
@media (max-width: 1024px) {
	/* Keep logic for 2/3/5/6; default still 2 columns */
	.cyberland-multi-step-wrapper .caf-layout-horizontal { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.cyberland-multi-step-wrapper .caf-layout-horizontal[data-options-count="3"] { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
/* Mobile: always single column */
@media (max-width: 640px) {
	.cyberland-multi-step-wrapper .caf-layout-horizontal { grid-template-columns: 1fr !important; }
}

.cyberland-multi-step-wrapper .cyberland-option:hover { background: var(--caf-option-hover-bg,#ECE8F7); border-color: var(--caf-option-border-color, var(--caf-color-border)); box-shadow:0 0 0 3px rgba(77,46,255,.06); }

/* Custom choice controls */
.cyberland-multi-step-wrapper .cyberland-option input[type="radio"],
.cyberland-multi-step-wrapper .cyberland-option input[type="checkbox"] {
	appearance:none; -webkit-appearance:none; outline:none; margin:0; flex:0 0 auto;
	width:20px; height:20px; position:relative; border:2px solid var(--caf-option-border-color, var(--caf-color-border));
	background:#fff; cursor:pointer; transition:border-color .25s, box-shadow .25s, background .25s;
}
.cyberland-multi-step-wrapper .cyberland-option input[type="radio"] { border-radius:50%; }
.cyberland-multi-step-wrapper .cyberland-option input[type="checkbox"] { border-radius:5px; }
.cyberland-multi-step-wrapper .cyberland-option input[type="radio"]:hover,
.cyberland-multi-step-wrapper .cyberland-option input[type="checkbox"]:hover { border-color: var(--caf-color-primary); }
.cyberland-multi-step-wrapper .cyberland-option input[type="radio"]:focus-visible,
.cyberland-multi-step-wrapper .cyberland-option input[type="checkbox"]:focus-visible { box-shadow:0 0 0 4px rgba(77,46,255,.30); border-color:var(--caf-color-primary); }
.cyberland-multi-step-wrapper .cyberland-option input[type="radio"]:checked,
.cyberland-multi-step-wrapper .cyberland-option input[type="checkbox"]:checked {
	background:linear-gradient(135deg,var(--caf-color-primary),var(--caf-color-accent)); border-color:var(--caf-color-primary); color:#fff;
}
.cyberland-multi-step-wrapper .cyberland-option input[type="radio"]:checked::after {
	content:""; position:absolute; inset:0; margin:auto; width:8px; height:8px; background:#fff; border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%);
}
.cyberland-multi-step-wrapper .cyberland-option input[type="checkbox"]:checked::after {
	content:"\2713"; font-size:14px; font-weight:700; position:absolute; top:50%; left:50%; transform:translate(-50%,-56%); color:#fff; line-height:1;
}

/* Pulse animation for answer selection */
@keyframes cafBlinkBorder {
	0%   { box-shadow:0 0 0 0 color-mix(in srgb, var(--caf-pulse-color, var(--caf-color-primary)) 55%, transparent); }
	50%  { box-shadow:0 0 0 var(--caf-pulse-thickness, 6px) color-mix(in srgb, var(--caf-pulse-color, var(--caf-color-primary)) 0%, transparent); }
	100% { box-shadow:0 0 0 0 color-mix(in srgb, var(--caf-pulse-color, var(--caf-color-primary)) 55%, transparent); }
}
.cyberland-multi-step-wrapper .cyberland-option.caf-pulse { animation: cafBlinkBorder var(--caf-pulse-duration, .45s) var(--caf-pulse-easing, ease-in-out) 1; }
/* Allow disabling via data attribute */
.cyberland-multi-step-wrapper[data-pulse-enabled="0"] .cyberland-option.caf-pulse { animation: none !important; }
/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
	.cyberland-multi-step-wrapper .cyberland-option.caf-pulse { animation: none !important; }
}

/* Navigation */
.cyberland-multi-step-wrapper .cyberland-step-nav { display:flex; gap:10px; justify-content:flex-start; margin-top:22px; }
.cyberland-multi-step-wrapper .cyberland-step-nav button { position:relative; font-family:inherit; cursor:pointer; font-size:14px; border-radius: var(--caf-radius); border:1px solid transparent; padding:10px 20px; font-weight:600; letter-spacing:.3px; transition: background .25s, box-shadow .25s, color .25s, border-color .25s; }
.cyberland-multi-step-wrapper .cyberland-step-nav .cyberland-submit { margin-right:auto; }
.cyberland-multi-step-wrapper .cyberland-step-nav button[data-variant="primary"] { background: linear-gradient(90deg,var(--caf-color-primary),var(--caf-color-accent)); color:#fff; }
.cyberland-multi-step-wrapper .cyberland-step-nav button[data-variant="primary"]:hover { filter:brightness(1.07); }
.cyberland-multi-step-wrapper .cyberland-step-nav button[data-variant="ghost"] { background: #fff; color: var(--caf-color-text); border-color: var(--caf-color-border); }
.cyberland-multi-step-wrapper .cyberland-step-nav button[data-variant="ghost"]:hover { border-color: var(--caf-color-primary); }
.cyberland-multi-step-wrapper .cyberland-step-nav button:disabled { opacity:.55; cursor:not-allowed; }

/* Results */
.cyberland-multi-step-wrapper .cyberland-results-wrapper { margin-top:26px; }
.cyberland-multi-step-wrapper .cyberland-result-page { background: var(--caf-color-surface); border:1px solid var(--caf-color-border); border-radius: var(--caf-radius); box-shadow:0 2px 4px -2px rgba(0,0,0,.05); padding:24px 26px 28px; }
.cyberland-multi-step-wrapper .cyberland-result-page h3 { font-family: var(--caf-font-headers, Tahoma, Arial, sans-serif); font-size: var(--caf-result-title-size,18px); font-weight: var(--caf-result-title-weight,700); margin:0 0 14px; color:var(--caf-color-text); }
.cyberland-multi-step-wrapper .cyberland-results-actions { text-align:center; }
.cyberland-multi-step-wrapper .cyberland-results-actions .cyberland-reset-form { font-family:inherit; cursor:pointer; font-size:14px; border-radius: var(--caf-radius); border:1px solid transparent; padding:12px 30px; font-weight:600; background: linear-gradient(90deg,var(--caf-color-primary),var(--caf-color-accent)); color:#fff; letter-spacing:.4px; transition: filter .25s, transform .25s; }
.cyberland-multi-step-wrapper .cyberland-results-actions .cyberland-reset-form:hover { filter:brightness(1.08); }
.cyberland-multi-step-wrapper .cyberland-results-actions .cyberland-reset-form:active { transform:translateY(2px); }

/* Submit Ready Pulse Wave Animation */
/* Stylish Glow Pulse (replaces simple border expansion) */
@keyframes cafWaveGlow {
	0% { transform:scale(1); opacity:.70; filter:blur(2px); }
	55% { transform:scale(1.9); opacity:0; filter:blur(10px); }
	100% { transform:scale(1.9); opacity:0; filter:blur(12px); }
}
.cyberland-multi-step-wrapper .cyberland-submit.caf-pulse-wave { position:relative; z-index:1; }
.cyberland-multi-step-wrapper .cyberland-submit.caf-pulse-wave::before,
.cyberland-multi-step-wrapper .cyberland-submit.caf-pulse-wave::after {
	content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:-1;
	background:radial-gradient(circle at 50% 50%, rgba(77,46,255,.35) 0%, rgba(77,46,255,.22) 42%, rgba(77,46,255,0) 70%);
	box-shadow:0 0 0 2px rgba(77,46,255,.25), 0 0 12px 4px rgba(77,46,255,.35), 0 0 28px 10px rgba(77,46,255,.15);
	animation:cafWaveGlow 2.4s ease-out infinite;
}
.cyberland-multi-step-wrapper .cyberland-submit.caf-pulse-wave::after { animation-delay:1.2s; }
/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
	.cyberland-multi-step-wrapper .cyberland-submit.caf-pulse-wave::before,
	.cyberland-multi-step-wrapper .cyberland-submit.caf-pulse-wave::after { animation:none; opacity:.85; filter:none; }
}

/* Welcome Screen */
.cyberland-multi-step-wrapper .cyberland-welcome-screen { background: var(--caf-color-surface); border:1px solid var(--caf-color-border); border-radius: var(--caf-radius); box-shadow:0 2px 6px -2px rgba(0,0,0,.06); padding:42px 38px 46px; max-width:760px; margin:0 auto 24px; text-align:center; animation:cafFade .35s ease; }
.cyberland-multi-step-wrapper .cyberland-welcome-title { font-family: var(--caf-font-headers, Tahoma, Arial, sans-serif); font-size:calc(var(--caf-result-title-size,18px) + 4px); font-weight:var(--caf-result-title-weight,700); letter-spacing:.4px; color:var(--caf-color-text); }
.cyberland-multi-step-wrapper .cyberland-welcome-desc { font-size:15px; line-height:1.8; color:#444; margin:0 auto 32px; }
.cyberland-multi-step-wrapper .cyberland-start-btn { font-family:inherit; cursor:pointer; font-size:15px; border-radius: var(--caf-radius); border:1px solid transparent; padding:14px 34px; font-weight:700; background: linear-gradient(90deg,var(--caf-color-primary),var(--caf-color-accent)); color:#fff; letter-spacing:.5px; box-shadow:0 4px 18px -4px rgba(77,46,255,.35), 0 2px 4px -1px rgba(0,0,0,.08); transition: transform .25s, box-shadow .25s, filter .25s; }
.cyberland-multi-step-wrapper .cyberland-start-btn:hover { filter:brightness(1.08); box-shadow:0 6px 22px -4px rgba(77,46,255,.45), 0 3px 6px -1px rgba(0,0,0,.12); }
.cyberland-multi-step-wrapper .cyberland-start-btn:active { transform:translateY(2px); box-shadow:0 4px 14px -4px rgba(77,46,255,.35), 0 2px 4px -1px rgba(0,0,0,.10); }

@media (max-width:680px){
	.cyberland-multi-step-wrapper .cyberland-welcome-screen { padding:28px 18px 34px; }
	.cyberland-multi-step-wrapper .cyberland-welcome-title { font-size:calc(var(--caf-result-title-size,18px) + 2px); }
	.cyberland-multi-step-wrapper .cyberland-start-btn { width:100%; padding:14px 20px; }
}

/* Responsive */
@media (max-width:680px){
	/* Adjusted for total 10px horizontal spacing (step content to viewport) */
	.cyberland-multi-step-wrapper { padding:0 0; }
	.cyberland-multi-step-wrapper .cyberland-step { padding:18px 10px 22px; }
	.cyberland-multi-step-wrapper .cyberland-step-nav { flex-wrap:wrap; }
	.cyberland-multi-step-wrapper .cyberland-step-nav button { flex:1 1 auto; }
}

/* Utility */
.cyberland-multi-step-wrapper .caf-hidden { display:none !important; }
.cyberland-multi-step-wrapper .caf-alerts-stack { display:flex; flex-direction:column; gap:10px; margin:0 0 10px; }

/* Required validation highlight */
.cyberland-multi-step-wrapper .cyberland-step.caf-required-missing { border-color: var(--caf-required-border,#FF5252); position:relative; }
.cyberland-multi-step-wrapper .cyberland-step.caf-required-missing .cyberland-question-label::after { content:" * پاسخ لازم"; font-size:12px; font-weight:600; color: var(--caf-required-border,#FF5252); margin-right:6px; }
@keyframes cafShake { 0%,100%{ transform:translateX(0);} 20%{ transform:translateX(-6px);} 40%{ transform:translateX(6px);} 60%{ transform:translateX(-4px);} 80%{ transform:translateX(4px);} }
.cyberland-multi-step-wrapper .cyberland-step.caf-required-missing.caf-anim { animation:cafShake .4s ease; }
.cyberland-multi-step-wrapper .caf-alert,
.cyberland-multi-step-wrapper .caf-validation-alert { background:linear-gradient(90deg,var(--caf-required-border,#FF5252),#ff7b7b); color:#fff; padding:14px 18px; border-radius:4px; font-size:13px; font-weight:600; margin:0 0 0; box-shadow:0 2px 6px -2px rgba(0,0,0,.15); display:flex; align-items:center; gap:10px; line-height:1.5; }
.cyberland-multi-step-wrapper .caf-alert.caf-alert--success { background:linear-gradient(90deg,#10b981,#34d399); color:#fff; }
.cyberland-multi-step-wrapper .caf-alert.caf-alert--success button { color:#059669; }
.cyberland-multi-step-wrapper .caf-alert button,
.cyberland-multi-step-wrapper .caf-validation-alert button { background:#fff; color:var(--caf-required-border,#FF5252); border:none; cursor:pointer; padding:4px 14px 5px; font-size:12px; font-weight:600; border-radius:18px; font-family:inherit; line-height:1.3; box-shadow:0 0 0 1px rgba(255,255,255,.6) inset; transition:background .25s, color .25s; }
.cyberland-multi-step-wrapper .caf-alert button:hover,
.cyberland-multi-step-wrapper .caf-validation-alert button:hover { background:rgba(255,255,255,.92); }

/* Results reset (پاکسازی کلی فرم پس از نمایش نتایج) */
.cyberland-multi-step-wrapper .cyberland-results-actions .cyberland-reset-form { background:#FF5252; }
.cyberland-multi-step-wrapper .cyberland-results-actions .cyberland-reset-form:hover { filter:brightness(1.07); }
.cyberland-multi-step-wrapper .cyberland-results-actions .cyberland-reset-form:active { transform:translateY(2px); }

/* Inactive (غیرفعال) status: show form but disable interaction */
.cyberland-multi-step-wrapper.caf-status-inactive { position:relative; }
.cyberland-multi-step-wrapper.caf-status-inactive::after { content:""; position:absolute; inset:0; background:rgba(255,255,255,.55); backdrop-filter:blur(2px); border-radius:var(--caf-radius); pointer-events:none; }
.cyberland-multi-step-wrapper.caf-status-inactive .cyberland-step-nav button,
.cyberland-multi-step-wrapper.caf-status-inactive input,
.cyberland-multi-step-wrapper.caf-status-inactive textarea,
.cyberland-multi-step-wrapper.caf-status-inactive select { pointer-events:none !important; opacity:.55 !important; }
.cyberland-multi-step-wrapper.caf-status-inactive .cyberland-option { cursor:not-allowed; }
.cyberland-multi-step-wrapper.caf-status-inactive .cyberland-step-nav button { cursor:not-allowed; }

/* Timer Bar */
.cyberland-multi-step-wrapper .cyberland-timer-bar { position:relative; display:flex; justify-content:center; align-items:center; }
.cyberland-multi-step-wrapper .cyberland-timer-bar .caf-timer-label,
.cyberland-multi-step-wrapper .cyberland-timer-bar .caf-timer-value,
.cyberland-multi-step-wrapper .cyberland-timer-bar .caf-timer-status { text-align:center; }
.cyberland-multi-step-wrapper .cyberland-timer-bar .caf-timer-status { margin-right:0 !important; }
.cyberland-multi-step-wrapper .cyberland-timer-bar.caf-expired { opacity:.75; }
.cyberland-multi-step-wrapper .cyberland-timer-bar .caf-timer-value { min-width:110px; text-align:center; }
.cyberland-multi-step-wrapper .cyberland-timer-bar .caf-timer-value { padding:0 0 0 0; }
.cyberland-multi-step-wrapper .cyberland-timer-bar[data-warning="1"] .caf-timer-value { color:#dc2626; }

/* Timer Confirmation (Modern Minimal) */
.cyberland-multi-step-wrapper .caf-timer-confirm-wrapper { position:relative; display:block; margin:18px 54px 0; padding:14px 18px; background:linear-gradient(135deg,#ffffff,#fafbff); border:1px solid var(--caf-color-primary, #4d2eff); border-radius:calc(var(--caf-radius) - 2px); font-size:13px; line-height:1.65; box-shadow:0 1px 2px -1px rgba(0,0,0,.06); text-align: right; transition:border-color .25s, box-shadow .25s, background .25s; cursor:pointer; }
.cyberland-multi-step-wrapper .caf-timer-confirm-wrapper.caf-checked { border-color: var(--caf-color-primary); box-shadow:0 0 0 3px rgba(77,46,255,.10); background:linear-gradient(135deg,#ffffff,#f5f5ff); }
.cyberland-multi-step-wrapper .caf-timer-confirm-wrapper.caf-attention { animation: caf-shake .6s ease; }
.cyberland-multi-step-wrapper .caf-timer-confirm-wrapper.caf-attention::after { content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:0 0 0 0 var(--caf-color-primary); animation: caf-pulse-outline 1s ease-out; pointer-events:none; }
.cyberland-multi-step-wrapper .caf-timer-confirm-label { display:flex; gap:10px; align-items:flex-start; cursor:pointer; margin:0; direction: rtl; }
.cyberland-multi-step-wrapper .caf-timer-confirm-checkbox {
	appearance:auto; -webkit-appearance:checkbox; margin:0; cursor:pointer; flex:0 0 auto;
	width:17px; height:17px; accent-color: var(--caf-color-primary);
}
.cyberland-multi-step-wrapper .caf-timer-confirm-text { display:block; font-size:13px; color:#333; font-weight:600; letter-spacing:.2px; }
.cyberland-multi-step-wrapper .caf-timer-confirm-hint { margin-top:6px; padding-right:30px; color:#555; font-size:12px; letter-spacing:.3px; }
.cyberland-multi-step-wrapper .cyberland-next.caf-await-confirm { filter:grayscale(.3); }

@keyframes caf-shake {
 0%,100% { transform:translateX(0); }
 10%,30%,50%,70%,90% { transform:translateX(-6px); }
 20%,40%,60%,80% { transform:translateX(6px); }
}
@keyframes caf-pulse-outline {
 0% { box-shadow:0 0 0 0 var(--caf-color-primary); }
 70% { box-shadow:0 0 0 12px rgba(77,46,255,0); }
 100% { box-shadow:0 0 0 0 rgba(77,46,255,0); }
}

/* Mobile: lock timer confirm spacing to description settings */
@media (max-width:680px){
	.cyberland-multi-step-wrapper .caf-timer-confirm-wrapper { margin:12px 0 0; padding:12px 14px; }
	.cyberland-multi-step-wrapper .caf-timer-confirm-hint { padding-right:26px; }
}

/* Schedule Countdown (نمایش زمان‌بندی شروع فرم) */
.cyberland-multi-step-wrapper .caf-schedule-banner { position:relative; z-index:2; display:block; margin:0; padding:24px 26px 28px; background: var(--caf-color-surface); border:1px solid var(--caf-color-border); border-radius: var(--caf-radius); font-size:13px; line-height:1.65; box-shadow:0 2px 4px -2px rgba(0,0,0,.04); text-align: var(--caf-welcome-body-align, right); direction: rtl; }
.cyberland-multi-step-wrapper .caf-schedule-banner.caf-align-center { text-align:center; }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-title { font-family: var(--caf-font-headers, Tahoma, Arial, sans-serif); font-size:17px; font-weight:var(--caf-question-title-weight,700); color:var(--caf-question-title-color,var(--caf-color-text)); margin:0 0 14px; line-height:var(--caf-question-title-line-height,1.4); }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-countdown { display:flex; gap:12px; align-items:center; justify-content:center; font-weight:700; letter-spacing:.3px; flex-direction: row-reverse; padding:14px; background: linear-gradient(90deg,var(--caf-color-primary),var(--caf-color-accent)); border-radius: var(--caf-radius); }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-sep { width:1px; height:28px; background:rgba(255,255,255,.35); border-radius:1px; }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-chip { background:#ffffff; border:1px solid rgba(0,0,0,.06); border-radius: var(--caf-radius); padding:10px 14px; min-width:64px; text-align:center; box-shadow:0 0 0 1px rgba(0,0,0,.04) inset, 0 1px 2px rgba(0,0,0,.04); }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-chip .caf-chip-value { font-size:20px; font-weight:800; line-height:1.2; color: var(--caf-color-primary); }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-chip .caf-chip-label { font-size:11px; font-weight:600; color: color-mix(in srgb, var(--caf-color-primary) 70%, #0000); margin-top:6px; }
.cyberland-multi-step-wrapper .caf-schedule-banner[data-warning="1"] .caf-schedule-chip { border-color:#dc2626; }
.cyberland-multi-step-wrapper .caf-schedule-banner.caf-align-center .caf-schedule-countdown { justify-content:center; }
.cyberland-multi-step-wrapper .caf-schedule-banner.caf-align-center .caf-schedule-countdown { justify-content:center; }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-chip { background:#fff; border:1px solid var(--caf-color-border); border-radius:12px; padding:8px 12px; font-size:12px; box-shadow:0 0 0 1px rgba(0,0,0,.04) inset; }
.cyberland-multi-step-wrapper .caf-schedule-banner .caf-schedule-desc { margin-top:10px; color:#555; font-size:12px; }
.cyberland-multi-step-wrapper .caf-schedule-banner[data-warning="1"] .caf-schedule-countdown { color:#dc2626; }

/* Lock form interaction until start time */
.cyberland-multi-step-wrapper.caf-schedule-locked { position:relative; }
.cyberland-multi-step-wrapper.caf-schedule-locked::after { content:""; position:absolute; inset:0; background:rgba(255,255,255,.55); backdrop-filter:blur(2px); border-radius:var(--caf-radius); pointer-events:none; z-index:1; }
.cyberland-multi-step-wrapper.caf-schedule-locked .cyberland-step-nav button,
.cyberland-multi-step-wrapper.caf-schedule-locked input,
.cyberland-multi-step-wrapper.caf-schedule-locked textarea,
.cyberland-multi-step-wrapper.caf-schedule-locked select { pointer-events:none !important; opacity:.55 !important; }
.cyberland-multi-step-wrapper.caf-schedule-locked .cyberland-option { cursor:not-allowed; }
.cyberland-multi-step-wrapper.caf-schedule-locked .cyberland-step-nav button { cursor:not-allowed; }

/* Mobile: align schedule banner with step card spacing */
@media (max-width:680px){
	.cyberland-multi-step-wrapper .caf-schedule-banner { margin:0; padding:18px 10px 22px; }
}