/* Công cụ tư vấn cấu hình – /cong-cu-chon-cau-hinh/ */
.tv-wrap{padding:32px 0 64px;background:#fff}
.tv-app{min-height:400px}
.tv-steps{display:flex;gap:6px;margin-bottom:22px;flex-wrap:wrap}
.tv-steps span,.tv-steps button{font:inherit;font-size:13.5px;font-weight:600;padding:7px 14px;border-radius:999px;background:var(--bg);color:var(--muted);border:1px solid var(--line)}
.tv-steps button{cursor:pointer;color:var(--ink2)}
.tv-steps button:hover{border-color:var(--navy)}
.tv-steps .on{background:var(--navy);color:#fff;border-color:var(--navy)}
.tv-h{margin:0 0 6px;font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.25;color:var(--navy);letter-spacing:-.01em}
.tv-sub{margin:0 0 20px;color:var(--ink2)}
.tv-kicker{margin:0 0 4px;color:var(--acc);font-weight:700;font-size:13.5px}
.tv-inds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.tv-ind{font:inherit;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:var(--r-lg);padding:20px 18px;cursor:pointer;display:flex;flex-direction:column;gap:6px;color:var(--ink);transition:border-color .15s}
.tv-ind:hover,.tv-ind:focus-visible{border-color:var(--navy)}
.tv-ico{font-size:28px;line-height:1}
.tv-ind b{font-size:16px;color:var(--navy);line-height:1.3}
.tv-ind small{color:var(--ink2);font-size:13.5px;line-height:1.45}
.tv-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:36px;align-items:start}
.tv-form{min-width:0}
.tv-group{display:grid;gap:16px}
.tv-gh{font-size:15px;color:var(--navy);margin:26px 0 12px;padding-top:18px;border-top:1px solid var(--line)}
.tv-f{display:block;border:0;padding:0;margin:0;min-width:0}
.tv-f>span,.tv-f legend{display:block;font-weight:700;font-size:14.5px;color:var(--ink);margin-bottom:8px;padding:0}
.tv-f input:not([type=radio]):not([type=checkbox]),.tv-f select,.tv-f textarea{width:100%;font:inherit;font-size:15.5px;border:1.5px solid #cdd6e3;border-radius:10px;padding:10px 12px;background:#fff;color:var(--ink)}
.tv-f input:focus,.tv-f select:focus,.tv-f textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(15,35,64,.12)}
.tv-num{display:flex;align-items:center;gap:8px}
.tv-num input{max-width:120px;text-align:center;font-weight:700}
.tv-num button{width:42px;height:44px;flex-shrink:0;border:1.5px solid #cdd6e3;background:#fff;border-radius:10px;font-size:20px;line-height:1;cursor:pointer;color:var(--navy)}
.tv-num button:hover{border-color:var(--navy)}
.tv-num em{font-style:normal;color:var(--ink2);font-size:14px}
.tv-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.tv-opt{position:relative;display:block;cursor:pointer}
.tv-opt input{position:absolute;opacity:0;inset:0;margin:0}
.tv-opt span{display:block;border:1.5px solid #cdd6e3;border-radius:10px;padding:10px 12px;height:100%;background:#fff}
.tv-opt b{display:block;font-size:14.5px;color:var(--ink)}
.tv-opt small{display:block;font-size:12.5px;color:var(--ink2);margin-top:2px;line-height:1.4}
.tv-opt input:checked+span{border-color:var(--navy);background:#f1f5fb;box-shadow:inset 0 0 0 1px var(--navy)}
.tv-opt input:focus-visible+span{outline:3px solid #f5a524;outline-offset:2px}
.tv-yn{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-weight:600;font-size:14.5px;line-height:1.45}
.tv-yn input{width:20px;height:20px;margin-top:1px;accent-color:var(--navy);flex-shrink:0}
.tv-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.tv-live{position:sticky;top:84px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}
.tv-live h3,.tv-box h3{font-size:14px;letter-spacing:.02em;color:var(--muted);text-transform:uppercase;margin:0 0 10px}
.tv-live h3+ul{margin-bottom:18px}
.tv-needs{margin:0;padding-left:18px;display:grid;gap:6px;color:var(--ink);font-size:14.5px;line-height:1.5}
.tv-items{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tv-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 12px 8px 8px}
.tv-item img,.tv-noimg{width:44px;height:44px;object-fit:contain;border-radius:8px;background:#f3f5f8;display:block}
.tv-item b{display:block;font-size:14px;color:var(--navy);line-height:1.3}
.tv-item small{display:block;color:var(--ink2);font-size:13px;line-height:1.45;margin-top:3px}
.tv-item.opt{border-style:dashed}
.tv-model,.tv-model-t{font:inherit;font-size:12.5px;font-weight:700;color:var(--link);background:none;border:0;padding:0;margin-right:8px;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.tv-model-t{color:var(--ink2);text-decoration:none;cursor:default}
.tv-tag{display:inline-block;font-size:11.5px;font-weight:700;border-radius:999px;padding:1px 8px;background:#eef2f7;color:var(--ink2);margin-right:4px}
.tv-tag.warn{background:#fff3e6;color:#a15c00}
.tv-qty{font-size:20px;font-weight:800;color:var(--navy);text-align:right;line-height:1}
.tv-qty small{display:block;font-size:11.5px;font-weight:600;color:var(--muted);margin-top:3px}
.tv-wide{width:100%;margin-top:16px}
.tv-result{max-width:880px}
.tv-rhead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.tv-box{border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;margin-bottom:16px;background:#fff}
.tv-items.full .tv-item{grid-template-columns:56px minmax(0,1fr) auto;padding:10px 14px 10px 10px}
.tv-items.full .tv-item img,.tv-items.full .tv-noimg{width:56px;height:56px}
.tv-checks{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14.5px}
.tv-link{font:inherit;font-size:14px;font-weight:700;color:var(--link);background:none;border:0;padding:0;margin-top:12px;cursor:pointer;text-decoration:underline}
.tv-note{font-size:13.5px;color:var(--ink2);background:var(--bg);border-radius:10px;padding:12px 14px;margin:0 0 24px}
.tv-contact,.tv-sent{max-width:880px;border:2px solid var(--navy);border-radius:var(--r-lg);padding:24px;background:#fff}
.tv-contact h3,.tv-sent h3{margin:0 0 6px;font-size:1.2rem;color:var(--navy)}
.tv-sent h3 span{display:inline-block;background:var(--navy);color:#fff;border-radius:8px;padding:2px 10px;margin-left:6px;font-size:.95rem}
.tv-sent{border-color:#1d7a4c;background:#f3faf6}
.tv-cgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tv-span{grid-column:1/-1}
.tv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.tv-err{color:#b42318;font-weight:600;margin:12px 0 0}
.tv-flow li::before{background:#ff5a36}
@media(max-width:1020px){.tv-inds{grid-template-columns:repeat(2,minmax(0,1fr))}.tv-grid{grid-template-columns:minmax(0,1fr)}.tv-live{position:static}}
@media(max-width:600px){
  .tv-wrap{padding:22px 0 44px}
  .tv-inds{grid-template-columns:1fr;gap:10px}
  .tv-ind{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:12px;padding:14px 16px}
  .tv-ind small{flex-basis:100%;padding-left:40px;margin-top:-4px}
  .tv-cgrid{grid-template-columns:1fr}
  .tv-box{padding:16px}
  .tv-contact,.tv-sent{padding:18px}
  .tv-actions .s-btn{flex:1 1 100%}
}
@media print{
  .s-top,.s-header,.s-footer-pro,.s-float,.tv-noprint,.tv-steps,.tv-head,.hm-sec{display:none!important}
  .tv-model{color:#000;text-decoration:none}
  .tv-wrap{padding:0}.tv-box{break-inside:avoid;border-color:#bbb}
  .tv-model-t{display:inline}
}
.tv-result,.tv-contact,.tv-sent{margin-left:auto;margin-right:auto}
.tv-num input::-webkit-outer-spin-button,.tv-num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tv-num input{-moz-appearance:textfield;appearance:textfield}
.tv-file{display:block;border:1.5px dashed #cdd6e3;border-radius:10px;padding:12px;background:#fafbfd}
.tv-file input{font-size:14px;width:100%}
.tv-file small{display:block;color:var(--ink2);font-size:12.5px;margin-top:6px}
