/* GC Defect Analyzer - استایل فرانت‌اند
   هم‌راستا با هویت بصری تیم (تیل، کارت‌های گرد، سایه ملایم) — بخش زیادی
   از متغیرها و کلاس‌های پایه با افزونه «مشاور هوشمند کارخانه» مشترک است
   تا در کنار هم روی سایت یکدست دیده شوند. */
.gc-da {
	--gc-da-dark: #0B6E6E;
	--gc-da-mid: #0E9A9A;
	--gc-da-light: #C5E5E5;
	--gc-da-lighter: #E0F5F5;
	--gc-da-lightest: #F0FAFA;
	--gc-da-border: #A8D8D8;
	--gc-da-text: #0D2A2A;
	--gc-da-text-mid: #2A5050;
	--gc-da-text-soft: #4A7878;
	--gc-da-red: #c0392b;
	--gc-da-green: #1f9d6c;
	--gc-da-amber: #a56b00;
	--gc-da-radius: 16px;
	--gc-da-shadow: 0 6px 24px rgba(11,110,110,.08);
	font-family: 'Vazirmatn', Tahoma, sans-serif;
	color: var(--gc-da-text);
	direction: rtl;
	max-width: 760px;
	width: 100%;
	margin: 0 auto;
	line-height: 1.95;
	font-size: 15px;
	padding: 10px 4px 60px;
	overflow-x: hidden;
	position: relative;
}
.gc-da * { box-sizing: border-box; min-width: 0; }
.gc-da a { color: var(--gc-da-dark); }
.gc-da h1 { font-size: 26px; font-weight: 800; margin: 6px 0 16px; line-height: 1.5; }
.gc-da h2, .gc-da h3 { font-weight: 700; color: var(--gc-da-text); line-height: 1.6; margin-top: 0; }
.gc-fa-muted { color: var(--gc-da-text-soft); font-size: 14px; margin: 0; line-height: 1.8; }
.gc-fa-section-title, .gc-da-section-title { margin: 30px 0 14px; font-size: 18px; font-weight: 700; display:inline-block; padding-bottom: 6px; border-bottom: 2px solid var(--gc-da-mid) !important; }

/* کارت اصلی ویزارد: پس‌زمینه سفید + سایه + گردی گوشه‌ها تا روی هر
   پس‌زمینه‌ای از قالب سایت، شناور و بی‌قاب به‌نظر نرسد. سلکتور دوکلاسه
   (gc-da + gc-da-wizard) عمداً استفاده شده تا specificity آن از هر
   قانون دیگری که فقط با یک کلاس به همین المان اشاره می‌کند، بالاتر
   باشد و هیچ‌وقت این پس‌زمینه گم نشود. */
.gc-da.gc-da-wizard {
	background: #fff !important;
	border: 1px solid var(--gc-da-border);
	border-radius: 22px;
	box-shadow: var(--gc-da-shadow);
	padding: 26px 24px 34px;
}
@media (max-width: 560px) {
	.gc-da.gc-da-wizard { padding: 18px 14px 26px; border-radius: 16px; }
}

/* صفحه معرفی فرآیند و صفحه اختصاصی هر خرابی هم باید همین جلوه کارتی
   را داشته باشند — وگرنه محتوایشان مثل متن خام روی پس‌زمینه قالب سایت
   شناور به‌نظر می‌رسد. */
.gc-da.gc-da-process-page,
.gc-da.gc-da-single-defect {
	background: #fff;
	border: 1px solid var(--gc-da-border);
	border-radius: 22px;
	box-shadow: var(--gc-da-shadow);
	padding: 28px 28px 36px;
}
/* ویزارد داخل این صفحات هم کارت مستقل خودش را نگه می‌دارد (تو‌درتو
   بودن ظریف است چون هر دو سفیدند و مرز واضحی ایجاد نمی‌کند)، فقط کمی
   از بالا فاصله می‌گیرد تا از تیتر «مشکل خود را پیدا نمی‌کنید؟» جدا
   شود. */
.gc-da.gc-da-process-page .gc-da-wizard,
.gc-da.gc-da-single-defect .gc-da-wizard {
	margin-top: 16px;
}
@media (max-width: 560px) {
	.gc-da.gc-da-process-page,
	.gc-da.gc-da-single-defect { padding: 18px 16px 26px; border-radius: 16px; }
}

.gc-fa-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 13px 24px; border-radius: 12px; border: none; background: var(--gc-da-mid); color: #fff; font-family: inherit; font-size: 15px; font-weight: 700; cursor: pointer; box-shadow: 0 4px 14px rgba(14,154,154,.25); transition: background .18s ease, transform .1s ease, box-shadow .18s ease; }
.gc-fa-btn:hover { background: var(--gc-da-dark); color:#fff; box-shadow: 0 6px 18px rgba(14,154,154,.3); }
.gc-fa-btn:active { transform: scale(.98); }
.gc-fa-btn-primary { background: var(--gc-da-mid); }
.gc-fa-btn-outline { background: var(--gc-da-lightest); border: 1.5px solid var(--gc-da-border); color: var(--gc-da-text-mid); box-shadow:none; font-weight:600; }
.gc-fa-btn-outline:hover { background: var(--gc-da-lighter); border-color: var(--gc-da-mid); color: var(--gc-da-text); }
.gc-fa-btn-sm { padding: 9px 18px; font-size: 13.5px; border-radius: 9px; }

.gc-da-progress { margin-bottom: 26px; }
.gc-da-progress-bar { height:5px; background:var(--gc-da-light); border-radius:6px; overflow:hidden; }
.gc-da-progress-fill { height:100%; background: var(--gc-da-mid); transition: width .25s ease; }
.gc-da-progress-steps { display:flex; justify-content:space-between; margin-top:12px; font-size:12.5px; color:var(--gc-da-text-soft); flex-wrap:wrap; gap:6px; }
.gc-da-step-dot.active { color: var(--gc-da-dark); font-weight:700; }

.gc-da-step { display:none; }
.gc-da-step.active { display:block; animation: gcda-fade .2s ease; }
@keyframes gcda-fade { from{opacity:0; transform:translateY(4px);} to{opacity:1; transform:translateY(0);} }

.gc-da-choice-grid { display:grid; grid-template-columns: repeat(auto-fill,minmax(160px,1fr)); gap:14px; margin-top:18px; }
.gc-da-choice-grid-wide { grid-template-columns: 1fr; }
.gc-da-choice-btn { text-align:right; background: var(--gc-da-lightest); border:1.5px solid var(--gc-da-border); border-radius: var(--gc-da-radius); padding: 16px 18px; cursor:pointer; font-family:inherit; font-size:14.5px; color: var(--gc-da-text); transition: all .15s ease; display:flex; flex-direction:column; gap:6px; line-height: 1.7; }
.gc-da-choice-btn:hover { border-color: var(--gc-da-mid); background: #fff; box-shadow: var(--gc-da-shadow); transform: translateY(-1px); }
.gc-da-choice-btn span { font-size:13px; color: var(--gc-da-text-soft); font-weight: 400; margin-top: 2px; }
.gc-da-choice-wide strong { font-size:15px; }

.gc-da-question-row { background: var(--gc-da-lightest); border: 1px solid var(--gc-da-lighter); border-radius: 14px; padding: 16px 16px 14px; margin-bottom: 14px; }
.gc-fa-field label { display:block; font-size:14.5px; margin-bottom:12px; font-weight:600; color: var(--gc-da-text); line-height: 1.7; }
.gc-fa-req { color: var(--gc-da-red); }
.gc-fa-input { width:100%; padding: 12px 14px; border: 1.5px solid var(--gc-da-border); border-radius: 10px; font-family: inherit; font-size: 15px; background: var(--gc-da-lightest); color: var(--gc-da-text); transition: border-color .15s ease, background .15s ease; }
.gc-fa-input:focus { outline: none; border-color: var(--gc-da-mid); background: #fff; box-shadow: 0 0 0 3px rgba(14,154,154,.15); }

.gc-fa-state-toggle { display:flex; gap:10px; }
.gc-fa-state-btn { flex:1; font-family: inherit; font-size: 13px; padding: 11px 4px; border-radius: 10px; border: 1.5px solid var(--gc-da-border); background: #fff; cursor:pointer; color: var(--gc-da-text-mid); font-weight: 600; transition: all .15s ease; }
.gc-fa-state-btn:hover { border-color: var(--gc-da-mid); background: var(--gc-da-lighter); }
.gc-fa-state-btn.active { background: var(--gc-da-dark); color:#fff; border-color: var(--gc-da-dark); }
.gc-fa-state-btn[data-state="unknown"].active { background: var(--gc-da-amber); border-color: var(--gc-da-amber); color:#fff; }

.gc-da-wizard-nav { display:flex; justify-content:space-between; margin: 30px 0 10px; gap: 10px; padding-top: 18px; border-top: 1px solid var(--gc-da-lighter); }

.gc-fa-alert, .gc-da-alert { padding:14px 18px; border-radius:10px; margin-bottom:18px; font-size:14px; }
.gc-fa-alert-error, .gc-da-alert-error { background:#fdecea; color:var(--gc-da-red); }

.gc-fa-loading-overlay { text-align:center; padding: 40px 0; color: var(--gc-da-text-soft); font-size: 15px; display:flex; flex-direction:column; align-items:center; }
.gc-fa-spinner { width:36px; height:36px; border:3px solid var(--gc-da-light); border-top-color: var(--gc-da-mid); border-radius:50%; margin:0 auto 14px; animation: gcda-spin .8s linear infinite; }
@keyframes gcda-spin { to { transform: rotate(360deg); } }

.gc-da-risk-row { display:flex; gap:8px; flex-wrap:wrap; margin: 10px 0 20px; }
.gc-da-badge { display:inline-block; padding: 6px 14px; border-radius: 20px; font-size: 13px; font-weight:600; }
.gc-da-badge-red { background:#fdecea; color:var(--gc-da-red); }
.gc-da-badge-amber { background:#fff4d6; color:var(--gc-da-amber); }
.gc-da-badge-green { background:#e7f7ef; color:var(--gc-da-green); }
.gc-da-badge-info { background: var(--gc-da-lighter); color: var(--gc-da-dark); }

.gc-fa-bar-list { display:flex; flex-direction:column; gap:16px; }
.gc-fa-bar-row { background: var(--gc-da-lightest); border:1px solid var(--gc-da-border); border-radius: var(--gc-da-radius); padding:16px 18px; box-shadow: var(--gc-da-shadow); }
.gc-fa-bar-row .top { display:flex; justify-content:space-between; font-size:14.5px; margin-bottom:10px; font-weight:700; color: var(--gc-da-text); }
.gc-fa-bar-row .track { height:9px; border-radius:6px; background: var(--gc-da-light); overflow:hidden; }
.gc-fa-bar-row .track span { display:block; height:100%; background: var(--gc-da-mid); border-radius:6px; }
.gc-da-mini-list { list-style:none; padding:0; margin: 12px 0 0; font-size:13.5px; color: var(--gc-da-text-mid); line-height: 1.8; }
.gc-da-mini-list li { margin-bottom:6px; }

.gc-da-params-table { width:100%; border-collapse: collapse; font-size:14px; margin-top:10px; }
.gc-da-params-table td { padding: 10px 6px; border-top:1px solid var(--gc-da-lighter); }

.gc-da-disclaimer { margin-top: 22px; padding: 14px 18px; background: #fff4d6; color: var(--gc-da-amber); border-radius: var(--gc-da-radius); font-size: 13.5px; }

.gc-da-lead-card { background: var(--gc-da-lightest); border:1px solid var(--gc-da-border); border-radius: var(--gc-da-radius); padding:20px 22px; box-shadow: var(--gc-da-shadow); margin-top: 24px; line-height: 1.8; }

.gc-da-defect-grid { display:grid; grid-template-columns: repeat(auto-fill,minmax(220px,1fr)); gap:16px; margin: 18px 0 32px; }
.gc-da-defect-card { display:block; background: var(--gc-da-lightest); border:1px solid var(--gc-da-border); border-radius: var(--gc-da-radius); padding:18px 20px; box-shadow: var(--gc-da-shadow); text-decoration:none; color: inherit; transition: all .15s ease; line-height: 1.7; }
.gc-da-defect-card:hover { border-color: var(--gc-da-mid); background:#fff; transform: translateY(-2px); }
.gc-da-defect-card h3 { margin:0 0 8px; font-size:15.5px; color: var(--gc-da-dark); }
.gc-da-defect-card p { margin:0; font-size:13.5px; color: var(--gc-da-text-soft); }

.gc-da-breadcrumb { font-size:13px; color: var(--gc-da-text-soft); margin-bottom:14px; }
.gc-da-breadcrumb a { color: var(--gc-da-text-soft); text-decoration:none; }
.gc-da-causes-preview, .gc-da-references, .gc-da-related-list { padding-inline-start: 20px; }
.gc-da-causes-preview li, .gc-da-related-list li { margin-bottom: 10px; }
.gc-da-reviewed { margin-top: 26px; font-size:12.5px; }

/* اشتراک‌گذاری در واتساپ/تلگرام — مسیر رایگان و مؤثر برای رسیدن به
   مخاطب بیشتر در بین مخاطبان فارسی‌زبان. */
.gc-da-share-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-top: 24px; padding: 16px 18px; background: var(--gc-da-lightest); border: 1px solid var(--gc-da-lighter); border-radius: 14px; }
.gc-da-share-buttons { display:flex; gap:8px; }
.gc-da-share-btn { display:inline-flex; align-items:center; padding: 9px 18px; border-radius: 20px; font-size: 13.5px; font-weight: 600; text-decoration: none; color:#fff; transition: opacity .15s ease; }
.gc-da-share-btn:hover { opacity: .85; }
.gc-da-share-whatsapp { background: #25D366; }
.gc-da-share-telegram { background: #229ED9; }

/* لینک محصولات/خدمات مرتبط سایت اصلی */
.gc-da-product-links { margin-top: 24px; }
.gc-da-product-links-grid { display:grid; grid-template-columns: repeat(auto-fill,minmax(200px,1fr)); gap:10px; margin-top: 12px; }
.gc-da-product-link { display:block; padding: 12px 16px; background: var(--gc-da-lightest); border: 1px solid var(--gc-da-border); border-radius: 12px; text-decoration:none; color: var(--gc-da-dark); font-size: 14px; font-weight: 600; transition: all .15s ease; }
.gc-da-product-link:hover { background: var(--gc-da-lighter); border-color: var(--gc-da-mid); transform: translateY(-1px); }

/* جعبه جستجوی زنده */
.gc-da-search-box { position: relative; max-width: 560px; }
.gc-da-search-input-wrap .gc-fa-input { font-size: 16px; padding: 14px 18px; }
.gc-da-search-results { position: absolute; z-index: 40; top: calc(100% + 6px); right: 0; left: 0; background: #fff; border: 1px solid var(--gc-da-border); border-radius: 14px; box-shadow: var(--gc-da-shadow); overflow: hidden; display: none; max-height: 360px; overflow-y: auto; }
.gc-da-search-result { display: block; padding: 12px 16px; text-decoration: none; border-bottom: 1px solid var(--gc-da-lighter); color: inherit; }
.gc-da-search-result:last-child { border-bottom: none; }
.gc-da-search-result:hover { background: var(--gc-da-lightest); }
.gc-da-search-result strong { display: block; font-size: 14.5px; color: var(--gc-da-dark); margin-bottom: 3px; }
.gc-da-search-result span { display: block; font-size: 12.5px; color: var(--gc-da-text-soft); }
.gc-da-search-empty { padding: 14px 16px; color: var(--gc-da-text-soft); font-size: 13.5px; }

/* صفحه فهرست کامل خرابی‌ها (Hub) */
.gc-da-all-defects h2 { margin-top: 34px; }
.gc-da-all-defects ul { columns: 2; column-gap: 24px; }
@media (max-width: 640px) {
	.gc-da-all-defects ul { columns: 1; }
}

@media (min-width: 900px) {
	.gc-da { font-size: 16px; padding: 6px 4px 60px; }
}
@media (max-width: 560px) {
	.gc-da { padding: 8px 6px 40px; }
	.gc-da-wizard-nav .gc-fa-btn { flex:1; }
	.gc-fa-state-toggle { gap: 5px; }
	.gc-fa-state-btn { font-size: 11.5px; padding: 9px 2px; }
	.gc-da-defect-grid { grid-template-columns: 1fr; }
}
