/**
 * Eclick - CSS bổ sung của team dev (KHÔNG sửa style.css của HTML team để copy đè được khi họ cập nhật).
 * Nạp SAU style.css.
 */

/* Lang switch: mục chọn ngôn ngữ là <a> (link thật) thay vì <button> */
.lang-switch__opt { display: block; text-decoration: none; }

/* Neo #tu-van: chừa khoảng cho header khi cuộn tới form */
#tu-van, #uu-dai { scroll-margin-top: 90px; }

/* Form tư vấn: thông báo, lỗi từng field, trạng thái đang gửi (static/js/layout.js) */
.consult-form__msg { margin-top: 12px; font-size: 1.4rem; color: #12C6B6; font-weight: 600; }
.consult-form__msg.is-error { color: #e5484d; }
.consult-form .btn-submit:disabled { opacity: .6; cursor: wait; }
/* Turnstile render bằng JS khi form điền đủ (layout.js) */
.consult-form .consult-form__captcha { margin-top: 12px; }
.consult-form .consult-form__captcha[hidden] { display: none; }
/* Honeypot chống bot: ẩn khỏi người dùng nhưng vẫn nằm trong form (không dùng display:none để bot vẫn điền) */
.form-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Trang lỗi 404 / 500 */
.error-page { min-height: 60vh; display: flex; align-items: center; justify-content: center; text-align: center; padding: 140px 20px 80px; }
.error-page__code { display: block; font-size: clamp(7rem, 18vw, 14rem); font-weight: 800; line-height: 1; background: linear-gradient(90deg, #25E295 19.23%, #12C6B6 29.81%, #0A98F2 43.27%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.error-page__title { margin: 16px 0 8px; font-size: 2.8rem; font-weight: 700; color: #0b1528; }
.error-page__lead { margin: 0 0 28px; font-size: 1.6rem; color: #4B5568; }
.error-page__debug { margin-top: 24px; max-width: 100%; overflow: auto; text-align: left; font-size: 1.2rem; color: #b91c1c; white-space: pre-wrap; }

/* Case Study: thông báo / lỗi của form "Nhận chi tiết Case Study" (static/js/case-study.js) */
.case-lead-form__msg { margin: 8px 0 0; font-size: 1.4rem; color: #12C6B6; font-weight: 500; }
.case-lead-form__msg.is-error { color: #ff3a0b; }
.case-lead-form__input.is-error { border-color: #ff3a0b !important; }

/* Form tư vấn: nhãn "Ngành hàng" là <span> (không phải <label>) vì custom select không có input để gắn for=...
   -> Chrome không báo "No label associated with a form field". Style copy từ .consult-form .form-group label */
.consult-form .form-group .form-label { display: block; font-size: 2.25rem; font-weight: 400; color: #000; margin-bottom: 8px; }
.consult-form .form-group .form-label .required { color: red; margin-left: 3px; }
@media (max-width: 640px) { .consult-form .form-group .form-label { font-size: 1.45rem; } }

/* Logo đối tác chạy ngang: người dùng bật "giảm chuyển động" (hệ điều hành) -> dừng, cho cuộn ngang bằng tay */
@media (prefers-reduced-motion: reduce) {
    .partner-showcase__track { animation: none !important; -webkit-animation: none !important; }
    .partner-showcase__row { overflow-x: auto; }
    .partner-showcase__track[aria-hidden="true"] { display: none; }
}

/* Trang Giải pháp: nút tab nằm trong <h3> (yêu cầu SEO) - h3 không tạo hộp để nút vẫn là phần tử flex của .solutions-tabs */
.solutions-tab-heading { display: contents; }

/* FMCG: nút "Xem tất cả Case Study" dưới lưới case (CSV có, HTML chưa có) */
.section-case-study-hub .case-study-hub__action { margin-top: 40px; text-align: center; }
/* FMCG: tag chạy ngang - người dùng bật "giảm chuyển động" -> đứng yên, cho cuộn ngang */
@media (prefers-reduced-motion: reduce) {
    .marquee-row .marquee-track { animation: none !important; -webkit-animation: none !important; }
    .marquee-row { overflow-x: auto; }
    .marquee-row .marquee-track[aria-hidden="true"] { display: none; }
}

/* Ảnh có width/height (kích thước gốc, để trình duyệt giữ chỗ trước khi tải - chống giật layout/CLS):
   giữ nguyên cách hiển thị cũ = auto. :where() độ ưu tiên 0 -> mọi rule kích thước của style.css vẫn thắng. */
:where(img[width][height]) { width: auto; height: auto; }

/* Case Study: Turnstile render khi email hợp lệ (case-study.js); nút xám dùng class .disabled của HTML team */
.case-lead-form .case-lead-form__captcha { margin-top: 12px; }
.case-lead-form .case-lead-form__captcha[hidden] { display: none; }
.case-lead-form .case-lead-form__btn:disabled { cursor: not-allowed; }

/* Nút / ô nhập không tự kế thừa font (trình duyệt mặc định Arial) -> đồng bộ Be Vietnam Pro toàn site, kể cả nút "Gửi thông tin" (QA BUG-21) */
button, input, select, textarea { font-family: inherit; }

/* Thẻ hệ sinh thái: có URL -> cả thẻ là link (QA BUG-30); chưa có URL -> thẻ thường, không hiện con trỏ tay (QA BUG-15) */
.ecosystem__card { cursor: default; color: inherit; text-decoration: none; }
.ecosystem__card--link { cursor: pointer; }
.ecosystem__card--link:focus-visible { outline: 2px solid #0a98f2; outline-offset: 4px; }

/* Case Study: 4 thẻ tổng quan click được -> mở đúng case ở slider bên dưới (#mã-case, case-study.js - QA BUG-31) */
.case-item { position: relative; }
.case-item__link { color: inherit; text-decoration: none; }
.case-item__link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.case-item:hover .case-item__link { text-decoration: underline; }
.case-results { scroll-margin-top: 90px; }

/* About: eyebrow "Innovative Technology" giữ chữ thường theo MKT (HTML team mặc định in hoa - QA EN47) */
.innovation__tagline--normal { text-transform: none; }
