/**
 * Mind-X Brain - Form Styles
 * Version: 2.0.0
 *
 * Scoped to .trabsky- prefix classes.
 * No wildcard resets — each element defines its own spacing.
 */

/* ─── WRAPPER ─── */
.trabsky-ai-audit-wrapper {
	font-family: var(--e-global-typography-text-font-family, 'Inter Tight'), -apple-system, sans-serif;
	max-width: 800px;
	margin: 0 auto;
	padding: 20px;
}

/* ─── STEP INDICATOR ─── */
.trabsky-step-indicator {
	display: flex;
	justify-content: space-between;
	margin: 0 0 30px;
	padding: 0;
	gap: 6px;
	overflow-x: auto;
}
.trabsky-step {
	flex: 1;
	text-align: center;
	padding: 10px 4px;
	margin: 0;
	border-radius: 8px !important;
	background: #f5f5f5;
	transition: all .3s;
	min-width: 60px;
}
.trabsky-step.active { background: #1343F0 !important; color: #fff !important; }
.trabsky-step.completed { background: #e8eeff !important; color: #1343F0 !important; }
.trabsky-step-number { font-size: 14px !important; font-weight: 700 !important; margin: 0 0 2px !important; padding: 0; }
.trabsky-step-label { font-size: 9px !important; font-weight: 500 !important; margin: 0; padding: 0; }

/* ─── PROGRESS BAR ─── */
.trabsky-progress-bar { height: 4px; background: #e0e0e0; border-radius: 2px; margin: 0 0 30px; padding: 0; }
.trabsky-progress-fill { height: 100%; background: #1343F0; transition: width .3s; width: 0; margin: 0; padding: 0; }

/* ─── FORM CONTAINER ─── */
.trabsky-ai-audit-form {
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 1em !important;
	padding: 40px;
	margin: 0;
	box-shadow: 0 1px 3px rgba(0,0,0,.05);
}

/* ─── FORM HEADER ─── */
.trabsky-form-header { text-align: center; margin: 0 0 40px !important; padding: 0 0 30px !important; border-bottom: 1px solid #e0e0e0 !important; }
.trabsky-form-title { font-size: 20px !important; font-weight: 700 !important; color: #1343F0 !important; margin: 0 0 12px !important; padding: 0 !important; }
.trabsky-form-subtitle { font-size: 13px !important; color: #666 !important; line-height: 1.7 !important; margin: 0 !important; padding: 0; }

/* ─── SECTION TITLES ─── */
.trabsky-ai-audit-wrapper .trabsky-section-title,
.trabsky-ai-audit-wrapper h2.trabsky-section-title {
	font-size: 18px !important; font-weight: 600 !important; color: #1343F0 !important;
	margin: 0 0 24px !important; padding: 0 0 12px !important;
	border-bottom: 1px solid #e0e0e0 !important;
	border-top: none !important; border-left: none !important; border-right: none !important;
	background: none !important; text-transform: none !important; letter-spacing: normal !important;
}
.trabsky-ai-audit-wrapper .trabsky-section-title a { color: #1343F0 !important; }

/* ─── LABELS ─── */
.trabsky-ai-audit-wrapper .trabsky-form-label {
	display: block !important; font-size: 14px !important; font-weight: 500 !important; color: #333 !important;
	margin: 0 0 10px !important; padding: 0 !important; border: none !important; background: none !important;
}
.trabsky-ai-audit-wrapper .trabsky-form-label .required { color: #1343F0 !important; font-weight: 600 !important; }

/* ─── WELCOME / DATA ─── */
.trabsky-intro-text { font-size: 14px !important; color: #666 !important; margin: 0 0 30px !important; padding: 0; }
.trabsky-welcome-box { text-align: center; padding: 30px; margin: 0 0 30px; background: #f8f9ff; border-radius: 1em !important; }
.trabsky-welcome-box .trabsky-section-title { border: none !important; padding: 0 !important; margin: 0 !important; }
.trabsky-data-summary { background: #fafafa; padding: 25px; border-radius: 1em !important; margin: 0 0 30px; border: 1px solid #ccc; }
.trabsky-summary-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 15px; margin: 15px 0 0; padding: 0; }
.trabsky-summary-item { display: flex; flex-direction: column; margin: 0; padding: 0; }
.trabsky-summary-label { font-size: 12px !important; color: #999 !important; margin: 0 0 4px !important; padding: 0; }
.trabsky-summary-value { font-size: 14px !important; color: #333 !important; font-weight: 500 !important; margin: 0; padding: 0; }

/* ─── FORM GROUPS ─── */
.trabsky-form-group { margin: 0 0 24px; padding: 0; }
.trabsky-form-row { display: flex; gap: 20px; margin: 0; padding: 0; }
.trabsky-form-row .trabsky-form-group, .trabsky-half { flex: 1; }

/* ─── INPUTS ─── */
.trabsky-form-input, .trabsky-form-textarea {
	width: 100%; padding: 12px 16px; margin: 0;
	border: 1px solid #ccc !important; border-radius: 1em !important;
	font-size: 14px !important; font-family: inherit; box-sizing: border-box; background: #fff !important;
}
.trabsky-form-input:focus, .trabsky-form-textarea:focus {
	outline: none; border-color: #1343F0 !important; box-shadow: 0 0 0 3px rgba(19,67,240,.08) !important;
}

/* ─── RADIO / CHECKBOX ─── */
.trabsky-checkbox-group, .trabsky-radio-group { display: grid; gap: 8px; margin: 0; padding: 0; }
.trabsky-checkbox-item, .trabsky-radio-item {
	display: flex; align-items: center; padding: 11px 14px; margin: 0;
	border: 1px solid #ccc; border-radius: 1em !important; cursor: pointer; font-size: 14px !important; background: #fff;
}
.trabsky-checkbox-item:hover, .trabsky-radio-item:hover { border-color: #1343F0; background: #f8f9ff; }
.trabsky-checkbox-item input, .trabsky-radio-item input { margin: 0 12px 0 0; padding: 0; accent-color: #1343F0; }
.trabsky-checkbox-item.checked, .trabsky-radio-item.checked { border-color: #1343F0 !important; background: #f8f9ff !important; }

/* ─── CONSENT ─── */
.trabsky-consent-item { align-items: flex-start; padding: 16px; }
.trabsky-consent-item input { margin: 3px 12px 0 0; padding: 0; }
.trabsky-consent-item span { line-height: 1.6 !important; font-size: 13px !important; margin: 0; padding: 0; }

/* ─── HELPER TEXT ─── */
.trabsky-helper-text { font-size: 12px !important; color: #999 !important; margin: 6px 0 0 !important; padding: 0; }
.trabsky-helper-text a { color: #1343F0 !important; text-decoration: none; }

/* ─── NAVIGATION ─── */
.trabsky-form-navigation {
	display: flex; gap: 12px; margin: 40px 0 0; padding: 30px 0 0;
	border-top: 1px solid #e0e0e0;
}
.trabsky-btn-prev, .trabsky-btn-next {
	flex: 1; background: #fff !important; color: #1343F0 !important;
	border: 1.5px solid #1343F0 !important; border-radius: 1em !important;
	padding: 13px 28px; margin: 0; font-size: 14px !important; font-weight: 500 !important; cursor: pointer;
}
.trabsky-btn-prev:hover, .trabsky-btn-next:hover { background: #f8f9ff !important; }
.trabsky-form-submit {
	flex: 1; background: #1343F0 !important; color: #fff !important;
	border: none !important; border-radius: 1em !important;
	padding: 13px 28px; margin: 0; font-size: 14px !important; font-weight: 500 !important; cursor: pointer;
}
.trabsky-form-submit:hover { background: #0f35c7 !important; }
.trabsky-form-submit:disabled { opacity: .5; cursor: not-allowed; }

/* ─── FOOTER ─── */
.trabsky-footer-note { text-align: center; margin: 20px 0 0; padding: 0; font-size: 12px !important; color: #999 !important; }
.trabsky-footer-note a { color: #1343F0 !important; text-decoration: none; }

/* ─── RESULTS STEP (report inside form) ─── */
.mindx-showing-results {
	border: none !important; border-radius: 0 !important; padding: 0 !important;
	box-shadow: none !important; background: transparent !important; max-width: none !important;
}
.mindx-showing-results .trabsky-form-navigation { display: none !important; }
.trabsky-results-step { margin: 0 !important; padding: 0 !important; }

/* ─── PREVIOUS AUDIT ACTIONS ─── */
.trabsky-prev-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin: 24px 0; padding: 0; }
.trabsky-prev-btn {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 12px 24px; margin: 0; border-radius: 10px;
	font-size: 14px; font-weight: 500; text-decoration: none; border: none; cursor: pointer; transition: opacity .2s;
}

/* ─── RESPONSIVE ─── */
@media (max-width: 768px) {
	.trabsky-ai-audit-form { padding: 24px; }
	.trabsky-form-row { flex-direction: column; gap: 0; }
	.trabsky-form-navigation { flex-direction: column; }
	.trabsky-summary-grid { grid-template-columns: 1fr; }
}
