/**
 * Trang /huong-dan-kich-hoat — hướng dẫn nhập mã bản quyền cho khách.
 *
 * Toàn bộ CSS để ở đây, kể cả phần nav/hero/footer dùng chung, vì quy tắc dự
 * án cấm thêm khối <style> mới vào HTML. Giá trị màu, kích thước và điểm ngắt
 * lấy đúng theo các trang công khai hiện có (lien-he, khoa-hoc) để trang mới
 * không lệch tông.
 */
:root{--ink:#080808;--paper:#eeece5;--red:#d81820;--gray:#69655f;--line:#c9c5bc}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
a:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.shell{width:min(100% - 40px,1180px);margin-inline:auto}
.skip-link{position:fixed;z-index:1000;top:10px;left:10px;padding:10px 14px;background:#fff;transform:translateY(-150%)}
.skip-link:focus{transform:none}

/* ---- Thanh điều hướng (giữ nguyên cấu trúc để js/mobile-nav.js nhận ra) ---- */
.nav{position:sticky;z-index:30;top:0;min-height:84px;display:flex;align-items:center;gap:34px;padding:14px clamp(20px,4vw,64px);border-bottom:1px solid #292929;background:rgba(8,8,8,.96);color:#fff;backdrop-filter:blur(18px)}
.brand{width:190px;margin-right:auto}
.brand img{display:block;width:100%;height:auto;filter:invert(1)}
.nav-links{display:flex;align-items:center;gap:clamp(14px,2.2vw,32px);font-size:12px}
.nav-links a[aria-current]{color:#ff4a50}
.nav-zalo{padding:15px 18px;border-radius:999px;background:var(--red);font-size:11px;font-weight:700;white-space:nowrap}

/* ---- Hero ---- */
.hero{padding:clamp(52px,5.5vw,88px) 0 clamp(48px,6vw,72px);background:var(--ink);color:#fff}
.eyebrow{margin:0 0 24px;color:#aaa;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.hero h1{max-width:22ch;text-wrap:balance;margin:0;font-size:clamp(46px,7vw,96px);line-height:.98;letter-spacing:-.05em}
.hero h1 .accent{color:var(--red)}
.hero p{max-width:60ch;margin:32px 0 0;color:#b8b8b8;font-size:clamp(16px,1.4vw,20px);line-height:1.7}
/* Dòng nhỏ trên tiêu đề: .hero .eyebrow (0,2,0) phải thắng .hero p (0,1,1) — trước
   04/10/2026 quy tắc .hero p đè mất cỡ chữ 10px và lề dưới nên dòng này to 18px,
   dính sát tiêu đề. */
.hero .eyebrow{max-width:none;margin:0 0 24px;color:#aaa;font-size:10px;line-height:1.4}
.hero-meta{display:flex;flex-wrap:wrap;gap:10px 28px;margin:30px 0 0;padding:0;list-style:none}
.hero-meta li{position:relative;padding-left:16px;color:#8d8d8d;font-size:12.5px;letter-spacing:.02em}
.hero-meta li::before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:var(--red)}

/* ---- Nội dung ---- */
main{padding:clamp(56px,7vw,90px) 0 clamp(80px,10vw,120px)}
.block{max-width:80ch;margin:0 0 clamp(48px,6vw,72px)}
.block:last-child{margin-bottom:0}
.sec-label{margin:0 0 12px;color:var(--gray);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.block h2{margin:0 0 20px;font-size:clamp(26px,3vw,40px);line-height:1.1;letter-spacing:-.035em}
.block h3{margin:0 0 8px;font-size:18px;letter-spacing:-.01em}
.block p{margin:0 0 16px;font-size:16px;line-height:1.75;color:#3a3733}
/* Nhãn nhỏ trên tiêu đề mục: .block .sec-label (0,2,0) phải thắng .block p (0,1,1),
   nếu không nhãn 10px bị phóng thành chữ đoạn văn 16px (lỗi có từ trước 04/10/2026). */
.block .sec-label{margin:0 0 12px;color:var(--gray);font-size:10px;line-height:1.4}
.block p:last-child{margin-bottom:0}
.block strong{font-weight:700}
.code{display:inline-block;padding:2px 8px;border:1px solid var(--line);border-radius:3px;background:#f7f5f0;font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;font-size:14px;font-weight:700;letter-spacing:.02em;word-break:break-all}

/* ---- Video trong từng bước: khung 16:9, không cố định pixel ---- */
.step-video{margin:14px 0 0;border:1px solid var(--line);background:#000}
.step-video .ratio{position:relative;width:100%;padding-top:56.25%}
.step-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}

/* ---- Câu hỏi thường gặp: chữ trên trang phải trùng từng chữ với khối schema ---- */
.faq-list{display:grid;gap:14px}
.faq-item{padding:18px 20px;border:1px solid var(--line);background:#f4f2ec}
.faq-item h3{margin:0 0 8px;font-size:17px;letter-spacing:-.01em}
.faq-item p{margin:0;font-size:15px;line-height:1.7;color:#3a3733}

.note-box{background:#e6e3db;border-left:3px solid var(--red);padding:16px 18px;font-size:15px;line-height:1.7;color:#3a3733}
.note-box strong{color:var(--ink)}

/* ---- Bảng lỗi ---- */
.table-wrap{border:1px solid var(--line);background:#f4f2ec;overflow-x:auto}
.faq-table{width:100%;border-collapse:collapse;min-width:620px}
.faq-table thead tr{background:var(--ink)}
.faq-table thead th{padding:13px 18px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;text-align:left}
.faq-table tbody tr{border-bottom:1px solid var(--line)}
.faq-table tbody tr:last-child{border-bottom:0}
.faq-table tbody td{padding:15px 18px;font-size:15px;line-height:1.6;color:#3a3733;vertical-align:top}
.faq-table tbody td:first-child{font-weight:700;color:var(--ink)}

/* ---- Nút ---- */
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.btn{min-height:56px;display:inline-flex;align-items:center;padding:0 26px;border:1px solid var(--ink);font-size:13px;font-weight:700;letter-spacing:.04em}
.btn-red{border-color:var(--red);background:var(--red);color:#fff}

/* ---- Chân trang ---- */
.footer{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:32px clamp(20px,4vw,64px);background:#080808;color:#aaa;font-size:11px}
.footer a{color:#fff}

@media(max-width:900px){
  .nav{gap:8px;padding:8px 12px;min-height:78px}
  .brand{width:110px}
  .nav-links{display:flex;align-items:center;gap:6px;margin-right:4px;font-size:12px}
  .nav-links a{padding:8px 2px;min-width:0;white-space:nowrap}
  .nav-links a:nth-child(2),.nav-links a:nth-child(6){display:none}
  .nav-zalo{padding:0 9px;height:40px;display:inline-flex;align-items:center;font-size:11px;letter-spacing:.01em}
}
@media(min-width:861px){.nav-links a.nav-intro{display:none}}
@media(max-width:640px){
  .faq-table tbody td,.faq-table thead th{padding:12px 14px}
  .cta-row .btn{width:100%;justify-content:center}
}

/* =====================================================================
 * Hướng dẫn theo phần mềm (04/10/2026)
 * Thẻ chọn phần mềm nằm cuối hero (nền tối), bảng hướng dẫn trên nền kem.
 * Markup dựng ở js/huong-dan-content.js (renderPicker / renderGuides).
 * ===================================================================== */

/* ---- Thẻ chọn phần mềm: các thẻ bằng nhau, cụm thẻ cân giữa ---- */
.picker-wrap{margin-top:clamp(40px,5vw,60px);padding-top:clamp(28px,3.4vw,40px);border-top:1px solid rgba(255,255,255,.14);scroll-margin-top:100px}
/* .hero .picker-label (0,2,0) thắng .hero p (0,1,1) — không cần !important. */
.hero .picker-label{max-width:none;margin:0 0 18px;text-align:center;color:#9a9a9a;font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.2em;text-transform:uppercase}
.sw-picker{display:grid;grid-template-columns:repeat(3,minmax(0,184px));justify-content:center;gap:14px}
.sw-card{display:flex;flex-direction:column;align-items:center;gap:10px;min-height:178px;margin:0;padding:22px 14px 18px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:#121212;color:#fff;font:inherit;text-align:center;cursor:pointer;transition:transform .2s,border-color .2s,background-color .2s;-webkit-tap-highlight-color:transparent}
.sw-card .sw-icon{width:64px;height:64px;object-fit:contain}
.sw-name{font-size:15px;font-weight:700;line-height:1.25;letter-spacing:-.01em}
.sw-meta{margin-top:auto;color:#8d8a85;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.sw-card:hover{border-color:rgba(255,255,255,.45);transform:translateY(-2px)}
/* Đang chọn: nền sáng + viền đỏ 2px. Bớt 1px đệm để thẻ không to hơn thẻ khác. */
.sw-card[aria-selected="true"]{padding:21px 13px 17px;border:2px solid var(--red);background:var(--paper);color:var(--ink)}
.sw-card[aria-selected="true"] .sw-meta{color:var(--red)}
.sw-card[aria-selected="true"]:hover{transform:none}
.sw-card.is-soon{opacity:.5;cursor:not-allowed}
.sw-card.is-soon:hover{border-color:rgba(255,255,255,.18);transform:none}
.sw-card:focus-visible{outline:3px solid var(--red);outline-offset:3px}

/* ---- Bảng hướng dẫn của một phần mềm ---- */
.sw-panel{scroll-margin-top:100px}
.sw-panel[hidden]{display:none}
.sw-head{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}
.sw-head-icon{flex:0 0 auto;width:60px;height:60px}
.sw-head-text{min-width:0}
.sw-head .sec-label{margin:0 0 6px}
.sw-head h2{margin:0;font-size:clamp(28px,3.2vw,40px);line-height:1.05;letter-spacing:-.04em}
.sw-switch{margin-left:auto;display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1px solid var(--ink);border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;transition:background-color .2s,color .2s}
.sw-switch:hover{background:var(--ink);color:#fff}

/* ---- Phần 1 / Phần 2: tiêu đề lớn để ngắt nhịp rõ ràng ---- */
.guide-part{margin-top:clamp(44px,5.4vw,72px)}
.part-head{padding-top:clamp(20px,2.4vw,28px);border-top:2px solid var(--ink)}
.part-label{margin:0 0 10px;color:var(--red);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.part-title{margin:0;font-size:clamp(34px,4.6vw,60px);line-height:1.04;letter-spacing:-.05em;text-wrap:balance}

/* ---- Từng bước: chữ trái, ảnh phải; số thứ tự đánh lại từ 1 ở mỗi phần ---- */
.guide-steps{margin:clamp(6px,1.4vw,14px) 0 0;padding:0;list-style:none}
.guide-step{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,4vw,52px);align-items:start;padding-block:clamp(24px,3vw,34px);border-bottom:1px solid var(--line)}
.guide-step:last-child{border-bottom:0}
.guide-step.no-media{grid-template-columns:minmax(0,1fr)}
.step-copy{display:flex;gap:16px;align-items:flex-start;min-width:0}
.step-num{flex:0 0 auto;width:38px;height:38px;border-radius:50%;background:var(--red);color:#fff;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}
.step-text{min-width:0}
.step-text h4{margin:6px 0 10px;font-size:clamp(18px,1.6vw,21px);line-height:1.3;letter-spacing:-.02em}
.step-text p{margin:0;font-size:16px;line-height:1.75;color:#3a3733}
.step-text .step-tip{margin-top:14px;padding:12px 16px;border-left:3px solid var(--red);background:rgba(16,16,16,.05);font-size:14.5px;line-height:1.65}
.step-text strong{color:var(--ink)}

/* Ảnh: width/height có sẵn trong thẻ img nên trình duyệt dự trữ đúng chỗ. */
.step-shots{display:grid;gap:14px;min-width:0}
.shot{margin:0;min-width:0}
.shot img{display:block;width:100%;height:auto;border:1px solid #1c1c1c;background:#151515}
.shot figcaption{margin-top:7px;color:var(--gray);font-size:13px;line-height:1.5}
/* Hai ảnh một hàng: cột chia theo tỉ lệ khung (--cols đặt ở thẻ) nên hai ảnh cao bằng nhau. */
.shot-row{display:grid;grid-template-columns:var(--cols);gap:12px;align-items:start}

/* ---- Khung phụ cuối mỗi phần mềm (khi dán sai mã...) ---- */
.guide-extra{margin-top:clamp(32px,4vw,48px);padding:clamp(20px,2.6vw,28px);border:1px solid var(--line);background:#f4f2ec}
.guide-extra h4{margin:0 0 8px;font-size:19px;letter-spacing:-.02em}
.guide-extra p{max-width:720px;margin:0;font-size:15.5px;line-height:1.7;color:#3a3733}
.extra-shots{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px;margin-top:18px}
.extra-shots .shot{flex:1 1 260px;max-width:400px}

.guide-note{max-width:820px;margin:clamp(44px,5vw,64px) 0 clamp(56px,7vw,88px)}

@media(max-width:820px){
  .guide-step,.shot-row{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:640px){
  .sw-switch{margin-left:0}
  .sw-head-icon{width:48px;height:48px}
}
@media(max-width:480px){
  .sw-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .sw-card{min-height:138px;gap:8px;padding:16px 8px 14px}
  .sw-card[aria-selected="true"]{padding:15px 7px 13px}
  .sw-card .sw-icon{width:46px;height:46px}
  .sw-name{font-size:13px}
  .sw-meta{letter-spacing:.08em}
  .step-copy{gap:12px}
  .step-num{width:32px;height:32px;font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .sw-card,.sw-switch{transition:none}
  .sw-card:hover{transform:none}
}
