/* ═══════════════════════════════════════════════════════════════════════
   drivers.css — ศูนย์ดาวน์โหลดไดรเวอร์เครื่องพิมพ์ (2569-10-02)
   ทุกคลาสขึ้นต้นด้วย dv- · ใช้ได้ทั้งหน้าแรก (ส่วน .dv-home) และหน้าในศูนย์ดาวน์โหลด
   หน้าในศูนย์ดาวน์โหลดโหลดคู่กับ shop.css (sh-*) / howto.css (ho-* ใช้กับขั้นตอนติดตั้ง) / orderflow.css
   สร้างโดย notes/drivers/make_drivers.py (ตัวสร้างไม่ได้เขียนไฟล์นี้ ไฟล์นี้เขียนมือ)
   ═══════════════════════════════════════════════════════════════════════ */
.dv-home,.dv-page,.dv-search{
  --dv-blue:var(--sh-blue,#1d4ed8);--dv-ink:var(--ink,#101a2c);--dv-ink2:var(--ink-2,#2c3a52);--dv-mut:var(--mut,#5d6b81);
  --dv-ring:var(--sh-ring,#dbe4f2);--dv-ice:var(--sh-ice,#eef3fb);--dv-ice2:var(--sh-ice-2,#f6f9fd);--dv-ok:#15803d;
}
.dv-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ── ส่วนท้ายหน้าแรก (เงียบ ๆ ไม่แย่งสินค้า/โปรแกรม · อยู่หลังบริการหลังการขาย ก่อนท้ายเว็บ) ─────────── */
.dv-home{padding:6px 0 38px}
.dv-home-card{
  display:grid;gap:16px;align-items:center;padding:20px 18px;border-radius:20px;
  background:#fff;border:1px solid var(--dv-ring);box-shadow:0 1px 2px rgba(15,30,53,.04);
}
.dv-home-ic{
  position:relative;flex:none;display:grid;place-items:center;width:64px;height:64px;border-radius:18px;
  background:var(--dv-ice);color:var(--dv-blue);
}
.dv-home-ic svg{width:36px;height:36px}
.dv-home-ic .dv-dl-badge{
  position:absolute;right:-6px;bottom:-6px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;
  background:var(--dv-blue);color:#fff;border:3px solid #fff;
}
.dv-home-ic .dv-dl-badge svg{width:14px;height:14px}
.dv-home-txt{display:grid;gap:2px}
.dv-home-kick{margin:0 0 2px;font-size:12.5px;font-weight:700;letter-spacing:.6px;color:var(--dv-blue)}
.dv-home h2{margin:0;font-size:clamp(20px,5vw,26px);line-height:1.3;letter-spacing:-.2px;color:var(--dv-ink)}
.dv-home p.dv-home-p{margin:4px 0 0;font-size:15.5px;line-height:1.7;color:var(--dv-ink2);max-width:64ch}
.dv-home-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:12px;
  background:var(--dv-blue);color:#fff;font-size:16px;font-weight:700;line-height:1.3;text-decoration:none;white-space:nowrap;
  border:1px solid transparent;
}
.dv-home-btn svg{width:20px;height:20px;flex:none}
.dv-home-btn:hover{background:#1a45c0;color:#fff;text-decoration:none}
.dv-home-btn:focus-visible{outline:3px solid #0b1a38;outline-offset:3px}
@media (min-width:760px){
  .dv-home-card{grid-template-columns:auto minmax(0,1fr) auto;gap:22px;padding:22px 28px}
  .dv-home-ic{width:76px;height:76px;border-radius:22px}
  .dv-home-ic svg{width:42px;height:42px}
}
@media (max-width:759px){.dv-home-btn{width:100%}}

/* ── หน้า ศูนย์ดาวน์โหลด / หน้ารุ่น ───────────────────────────────────── */
.dv-page [id]{scroll-margin-top:150px}
@media (min-width:760px) and (max-width:1099px){.dv-page [id]{scroll-margin-top:180px}}
@media (max-width:759px){.dv-page [id]{scroll-margin-top:290px}}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ช่องค้นหา */
.dv-search{margin:20px 0 0;max-width:760px}
.dv-field{position:relative;display:block}
.dv-field svg{position:absolute;left:16px;top:50%;width:22px;height:22px;transform:translateY(-50%);color:#5b6b7f;pointer-events:none}
.dv-field input{
  width:100%;box-sizing:border-box;height:58px;padding:0 16px 0 50px;border-radius:14px;border:1.5px solid #b9c8dd;background:#fff;
  font:inherit;font-size:17px;color:var(--dv-ink);
}
.dv-field input::placeholder{color:#6b7a8e}
.dv-field input:focus{outline:none;border-color:var(--dv-blue);box-shadow:0 0 0 4px rgba(29,78,216,.18)}
.dv-search-row{display:grid;gap:10px}
.dv-search button{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;height:58px;padding:0 26px;border:0;border-radius:14px;
  background:var(--dv-blue);color:#fff;font:inherit;font-size:16.5px;font-weight:700;cursor:pointer;
}
.dv-search button:hover{background:#1a45c0}
.dv-search button:focus-visible{outline:3px solid #0b1a38;outline-offset:3px}
.dv-search button svg{width:20px;height:20px}
@media (min-width:600px){.dv-search-row{grid-template-columns:minmax(0,1fr) auto}}
.dv-hint{margin:10px 2px 0;font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.88)}
.dv-hint b{color:#fff}

/* ผลการค้นหา */
.dv-status{margin:0 0 14px;font-size:15px;font-weight:600;color:var(--dv-ink2)}
.dv-list{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.dv-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dv-card{display:grid;gap:14px;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--dv-ring)}
.dv-card[hidden]{display:none}
.dv-card-head{display:flex;gap:14px;align-items:center}
.dv-card-ic{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--dv-ice);color:var(--dv-blue)}
.dv-card-ic svg{width:32px;height:32px}
.dv-card-brand{margin:0 0 1px;font-size:12.5px;font-weight:700;letter-spacing:.5px;color:var(--dv-blue)}
.dv-card h3{margin:0;font-size:clamp(19px,4.6vw,22px);line-height:1.3;color:var(--dv-ink)}
.dv-card-type{margin:2px 0 0;font-size:14.5px;line-height:1.55;color:var(--dv-mut)}
.dv-card-meta{margin:0;display:flex;flex-wrap:wrap;gap:6px 8px;padding:0;list-style:none}
.dv-card-meta li{padding:4px 11px;border-radius:999px;background:var(--dv-ice2);border:1px solid var(--dv-ring);font-size:13.5px;line-height:1.5;color:var(--dv-ink2)}
.dv-card-btns{display:grid;gap:9px}
@media (min-width:480px){.dv-card-btns{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dv-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 18px;border-radius:12px;
  font-size:16px;font-weight:700;line-height:1.3;text-decoration:none;border:1.5px solid transparent;text-align:center;
}
.dv-btn svg{width:19px;height:19px;flex:none}
.dv-btn-main{background:var(--dv-blue);color:#fff}
.dv-btn-main:hover{background:#1a45c0;color:#fff;text-decoration:none}
.dv-btn-ghost{background:#fff;color:var(--dv-ink);border-color:var(--dv-ring)}
.dv-btn-ghost:hover{border-color:var(--dv-blue);color:var(--dv-blue);text-decoration:none}
.dv-btn:focus-visible{outline:3px solid #0b1a38;outline-offset:3px}

/* ไม่พบรุ่น */
.dv-empty{margin:0;padding:20px;border-radius:16px;background:#fff8e6;border:1px solid #f0d58a}
.dv-empty[hidden]{display:none}
.dv-empty h3{margin:0 0 6px;font-size:18px;line-height:1.4;color:var(--dv-ink)}
.dv-empty p{margin:0 0 8px;font-size:15px;line-height:1.7;color:var(--dv-ink2)}
.dv-empty p:last-child{margin-bottom:0}
.dv-empty-btns{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}
.dv-empty-btns .dv-btn{min-height:46px;font-size:15px}

/* หน้ารุ่น: ส่วนบน */
.dv-top{display:grid;gap:22px;align-items:start}
@media (min-width:900px){.dv-top{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:34px}}
.dv-pic{margin:0;padding:18px;border-radius:20px;background:var(--dv-ice);border:1px solid var(--dv-ring);text-align:center}
.dv-pic img,.dv-pic svg{display:block;width:100%;max-width:420px;height:auto;margin:0 auto}
.dv-pic figcaption{margin:8px 2px 0;font-size:13px;line-height:1.55;color:var(--dv-mut)}
.dv-facts{margin:0;display:grid;gap:0;border:1px solid var(--dv-ring);border-radius:16px;background:#fff;overflow:hidden}
.dv-facts>div{display:grid;gap:2px 14px;padding:11px 16px;border-top:1px solid var(--dv-ring)}
.dv-facts>div:first-child{border-top:0}
.dv-facts dt{margin:0;font-size:13.5px;font-weight:700;color:var(--dv-mut)}
.dv-facts dd{margin:0;font-size:15.5px;line-height:1.55;color:var(--dv-ink)}
@media (min-width:520px){.dv-facts>div{grid-template-columns:170px minmax(0,1fr)}}
.dv-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:999px;background:#e8f6ee;border:1px solid #9ad7b2;color:#0f6a35;font-size:13.5px;font-weight:700;line-height:1.5}
.dv-badge svg{width:14px;height:14px}
.dv-badge-warn{background:#fff8e6;border-color:#f0d58a;color:#7a5200}
.dv-cta{display:grid;gap:10px;margin-top:18px}
@media (min-width:520px){.dv-cta{grid-template-columns:auto auto;justify-content:start}}
.dv-cta .dv-btn-main{min-height:58px;font-size:17.5px;padding:0 28px}
.dv-small{margin:12px 0 0;font-size:14px;line-height:1.7;color:var(--dv-mut)}
.dv-small a{font-weight:600}
.dv-sechead{margin:0 0 8px;font-size:clamp(20px,4.6vw,27px);line-height:1.34;letter-spacing:-.2px;color:var(--dv-ink)}

/* ภาพประกอบ: ป้ายบอกชนิดภาพ (ภาพจริง / ภาพประกอบวาดเอง) */
.dv-imgtag{display:inline-block;margin:0 0 6px;padding:2px 10px;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.55}
.dv-imgtag-real{background:#e8f6ee;color:#0f6a35;border:1px solid #9ad7b2}
.dv-imgtag-ill{background:#eef3ff;color:#1d3fa8;border:1px solid #c9d8fb}
.dv-fig-zoom{display:block;cursor:zoom-in}
.dv-fig-zoom:focus-visible{outline:3px solid var(--dv-blue);outline-offset:3px;border-radius:10px}

/* ตารางสั้น ๆ (อินเทอร์เฟซ / ระบบปฏิบัติการ) */
.dv-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6;background:#fff;border:1px solid var(--dv-ring);border-radius:12px;overflow:hidden}
.dv-table th,.dv-table td{padding:10px 14px;text-align:left;border-top:1px solid var(--dv-ring);vertical-align:top}
.dv-table thead th{background:var(--dv-ice2);border-top:0;font-size:13.5px;color:var(--dv-mut)}
.dv-tablewrap{overflow-x:auto;max-width:100%}

/* ตัวขยายภาพ (กดภาพแล้วเปิดใหญ่) */
.dv-lb{position:fixed;inset:0;z-index:300;display:none;align-items:flex-start;justify-content:flex-start;padding:14px;background:rgba(8,16,32,.88);overflow:auto;touch-action:pan-x pan-y pinch-zoom}
.dv-lb.is-open{display:flex}
.dv-lb img{display:block;max-width:none;width:min(1100px,max(100%,900px));height:auto;margin:auto;border-radius:10px;background:#fff}
.dv-lb button{
  position:fixed;top:10px;right:10px;width:48px;height:48px;border-radius:50%;border:0;background:#fff;color:#0b1a38;
  font-size:28px;line-height:1;cursor:pointer;
}
.dv-lb button:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* ── ขั้นตอนติดตั้ง: ใช้ ho-* ของ howto.css แต่ภาพกว้างขึ้น (ภาพมีตัวอักษร) และสรุป 8 ขั้นเป็น 4 คอลัมน์ ───────── */
.dv-page .ho-grid{grid-template-columns:minmax(0,1fr) minmax(0,640px);gap:26px}
.dv-page .ho-grid>.ho-fig{max-width:640px}
@media (max-width:1099px){.dv-page .ho-grid{grid-template-columns:minmax(0,1fr)}.dv-page .ho-grid>.ho-fig{max-width:720px}}
.dv-page .ho-flow{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:759px){.dv-page .ho-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dv-page #walk .ho-step+.ho-step{margin-top:22px}
.dv-page .ho-step{padding:22px}
@media (max-width:759px){.dv-page .ho-step{padding:16px 12px}}
.dv-page .ho-fig .dv-imgtag{margin:2px 0 8px 2px}
.dv-page .ho-ans ol{margin:0;padding:0 0 0 22px;display:grid;gap:8px;font-size:15px;line-height:1.75;color:var(--dv-ink2)}
.dv-page .ho-ans p+ol,.dv-page .ho-ans ol+p{margin-top:10px}
.dv-page .ho-ans p{margin:0}

/* ไดรเวอร์ตัวสำรอง / แหล่งที่มา / วิธีใช้ศูนย์ */
.dv-alt,.dv-src{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px}
.dv-alt li{display:grid;gap:3px;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid var(--dv-ring)}
.dv-alt li a{font-size:16px;line-height:1.5;color:var(--dv-blue)}
.dv-alt li span{font-size:14.5px;line-height:1.65;color:var(--dv-ink2)}
.dv-src li{font-size:15px;line-height:1.65}
.dv-src a{font-weight:600;overflow-wrap:anywhere}
.dv-how{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:12px}
@media (min-width:900px){.dv-how{grid-template-columns:repeat(3,minmax(0,1fr))}}
.dv-how li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid var(--dv-ring)}
.dv-how b{display:block;font-size:16px;line-height:1.45;color:var(--dv-ink)}
.dv-how span:not(.ho-n){display:block;margin-top:2px;font-size:14.5px;line-height:1.65;color:var(--dv-ink2)}
.dv-page .dv-top .dv-btn svg:last-child{opacity:.9}
.dv-page a[target=_blank]{overflow-wrap:anywhere}

.dv-page .sh-h2+.ho-faq{margin-top:14px}

.dv-lb-hint{position:fixed;left:0;right:0;bottom:10px;margin:0;text-align:center;font-size:13.5px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8);pointer-events:none}
@media (min-width:1000px){.dv-lb-hint{display:none}}

/* ── เงื่อนไขบริการช่วยติดตั้งไดรเวอร์ (ทุกหน้า) · ค้นหา: ไม่ให้คำค้นยาวดันหน้าล้น ───────────────────────── */
.dv-svc{max-width:900px;padding:22px;border-radius:18px;background:#fff;border:1.5px solid #9db6f3}
.dv-svc .sh-h2{margin-bottom:12px}
.dv-svc-list{margin:0;display:grid;gap:10px}
.dv-svc-row{display:grid;gap:2px 16px;padding:12px 14px;border-radius:12px;background:var(--dv-ice2,#f6f9fd);border:1px solid var(--dv-ring,#dbe4f2)}
.dv-svc-row dt{margin:0;font-size:15.5px;font-weight:700;color:var(--dv-ink,#101a2c)}
.dv-svc-row dd{margin:0;font-size:15.5px;line-height:1.6;color:var(--dv-ink2,#2c3a52)}
@media (min-width:640px){.dv-svc-row{grid-template-columns:240px minmax(0,1fr)}}
.dv-svc-btn{margin-top:14px;min-width:220px}
@media (max-width:759px){.dv-svc{padding:16px 14px}.dv-svc-btn{width:100%}}
.dv-empty,.dv-empty p,#dv-echo,.dv-status{overflow-wrap:anywhere;word-break:break-word}
.dv-noscript{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#fff8e6;border:1px solid #f0d58a;font-size:15px;line-height:1.6}

/* ───── การ์ดเล็กไดรเวอร์เครื่องพิมพ์ ในหน้าหมวดเครื่องพิมพ์ (equip-printer.html · 3 ต.ค. 2569) · คลาส .dv-cat* ───── */
.dv-cat{
  --dv-blue:var(--sh-blue,#1d4ed8);--dv-ink:var(--ink,#101a2c);--dv-ink2:var(--ink-2,#2c3a52);--dv-ring:var(--sh-ring,#dbe4f2);--dv-ice:var(--sh-ice,#eef3fb);
  padding:6px 0 4px;
}
.dv-cat-card{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 16px;border-radius:16px;
  background:#fff;border:1px solid var(--dv-ring);box-shadow:0 1px 2px rgba(15,30,53,.04);
}
.dv-cat-ic{position:relative;flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--dv-ice);color:var(--dv-blue)}
.dv-cat-ic svg{width:28px;height:28px}
.dv-cat-ic .dv-dl-badge{position:absolute;right:-6px;bottom:-6px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--dv-blue);color:#fff;border:2px solid #fff}
.dv-cat-ic .dv-dl-badge svg{width:11px;height:11px}
.dv-cat-txt{flex:1 1 220px;min-width:0}
.dv-cat-txt h2{margin:0;font-size:clamp(17px,4.4vw,19px);line-height:1.35;color:var(--dv-ink)}
.dv-cat-txt p{margin:2px 0 0;font-size:14.5px;line-height:1.55;color:var(--dv-ink2)}
.dv-cat-btn{
  flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:12px;
  background:var(--dv-blue);color:#fff;font-size:15.5px;font-weight:700;line-height:1.3;text-decoration:none;white-space:nowrap;
}
.dv-cat-btn svg{width:18px;height:18px;flex:none}
.dv-cat-btn:hover{background:#1a45c0;color:#fff;text-decoration:none}
.dv-cat-btn:focus-visible{outline:3px solid #0b1a38;outline-offset:3px}
@media (max-width:559px){.dv-cat-card{gap:10px;padding:10px 12px}.dv-cat-ic{width:46px;height:46px;border-radius:14px}.dv-cat-btn{width:100%;min-height:44px}}
