section{padding-block:56px}
.draft{background:var(--seal-soft);color:var(--seal);font-size:.85rem;text-align:center;padding:8px 16px;font-weight:500}
header.top{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:12px}
.brand{font-family:var(--f-display);font-weight:800;font-size:1.1rem;display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}
.brand .mark{width:30px;height:30px;border:2px solid var(--seal);color:var(--seal);border-radius:50%;display:grid;place-items:center;font-size:.7rem;font-family:var(--f-mono)}
.sec-head{display:grid;gap:10px;max-width:720px;margin-bottom:26px}
.sec-head p{color:var(--muted)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding-block:44px 52px}
.hero h1{font-size:clamp(1.9rem,4.6vw,3rem);font-weight:800}
.hero h1 em{font-style:normal;color:var(--seal)}
.hero .lead{font-size:1.08rem;color:var(--muted);margin-top:16px;max-width:560px}
.price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:22px}
.price > b{font:800 2.4rem var(--f-display);color:var(--seal)}
.price span{color:var(--muted);font-size:.92rem}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.ctas .btn{font-size:1.05rem;padding:14px 22px}
.mock{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px;position:relative;overflow:hidden}
.mock .blur{filter:blur(3.5px);pointer-events:none;user-select:none;display:grid;gap:10px}
.mock .lock{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:20px}
.mock .lock div{background:var(--card);border:2px solid var(--seal);color:var(--seal);border-radius:8px;padding:12px 16px;font-weight:600;transform:rotate(-4deg)}
.mrow{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:6px 0;font-size:.9rem}
.gets{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.get{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:6px;align-content:start}
.get .n{font:600 .75rem var(--f-mono);color:var(--seal)}
.get p{color:var(--muted);font-size:.92rem}
.box{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px;display:grid;gap:14px;max-width:760px}
.row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.pay{display:grid;grid-template-columns:200px 1fr;gap:18px;align-items:start}
.pay img{width:200px;max-width:100%;border-radius:8px;background:#fff}
.kv{display:grid;grid-template-columns:auto 1fr auto;gap:8px 12px;align-items:center;font-size:.95rem}
.kv span{color:var(--muted)}
.okmsg{background:var(--green-soft);color:var(--green);border-radius:8px;padding:12px 14px;font-size:.92rem}
.errmsg{background:var(--seal-soft);color:var(--seal);border-radius:8px;padding:12px 14px;font-size:.92rem}
.modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.mode{border:2px solid var(--line);border-radius:10px;padding:14px;cursor:pointer;background:var(--card);display:grid;gap:4px;text-align:left;font:inherit;color:inherit}
.mode[aria-pressed="true"]{border-color:var(--green);background:var(--green-soft)}
.mode small{color:var(--muted)}
.checks{display:flex;flex-wrap:wrap;gap:6px 14px;border-top:1px dashed var(--line);padding-top:8px;font-size:.86rem}
.checks label{display:flex;align-items:center;gap:6px;cursor:pointer}
.checks input{width:auto}
.checks .t{width:100%;font:600 .7rem var(--f-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.willq{display:grid;gap:10px;border:1px solid var(--amber);border-radius:10px;padding:14px;background:var(--amber-soft)}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#tool .wrap,#toolForm,#formBody,.tk-report,.tk-sec,.pcards,.pcard,.box{grid-template-columns:minmax(0,1fr)}
#formBody{display:grid;gap:12px}
/* Báo cáo */
.tk-report{display:grid;gap:22px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px;position:relative}
.tk-stamp{font:600 .75rem var(--f-mono);color:var(--seal);border:1px dashed var(--seal);border-radius:6px;padding:6px 10px;justify-self:start}
.tk-meta{font-size:.82rem;color:var(--muted)}
.tk-sec{display:grid;gap:12px}
.tk-sec h3{font-size:1.2rem;border-bottom:2px solid var(--green);padding-bottom:6px}
.tk-list{margin:0;padding-left:20px;display:grid;gap:6px;font-size:.93rem}
.tk-steps{list-style:none;margin:0;padding:0;display:grid;gap:0}
.tk-steps li{display:grid;grid-template-columns:40px 1fr;gap:12px;position:relative;padding-bottom:16px}
.tk-steps li:not(:last-child)::before{content:"";position:absolute;left:19px;top:38px;bottom:0;width:2px;background:var(--line)}
.tk-n{width:38px;height:38px;border-radius:50%;background:var(--green);color:var(--on-green);display:grid;place-items:center;font:700 1rem var(--f-mono)}
.tk-steps p{font-size:.92rem;color:var(--muted);margin-top:2px}
.tk-steps small{font-size:.8rem;color:var(--green);font-weight:600}
.tk-docs{display:grid;gap:14px}
.tk-doc-g{display:grid;gap:6px}
.tk-doc-who{font-family:var(--f-display)}
.tk-doc{border-left:4px solid var(--line);background:var(--paper);border-radius:6px;padding:8px 12px;font-size:.9rem}
.tk-doc div{display:grid;gap:3px}
.tk-doc.ok{border-left-color:var(--green)} .tk-doc.bad{border-left-color:var(--seal)} .tk-doc.opt{border-left-color:var(--amber)}
.tk-doc small{color:var(--muted);font-size:.83rem}
.tk-doc.bad b{color:var(--seal)}
.tk-where{color:var(--ink)!important}
.tk-check{margin:0;padding-left:0;list-style:none;display:grid;gap:6px;font-size:.92rem}
.tk-check li{padding:8px 12px;border-radius:6px;background:var(--paper)}
.tk-check li.ok{background:var(--green-soft)} .tk-check li.risk{background:var(--amber-soft)} .tk-check li.bad{background:var(--seal-soft);color:var(--seal)}
.tk-cta{background:var(--green-soft);border-radius:10px;padding:14px;font-size:.95rem}
.cust input{width:90px;text-align:right}
.faq details{border-bottom:1px solid var(--line);padding:12px 0}
.faq summary{cursor:pointer;font-weight:600}
.faq p{color:var(--muted);margin-top:8px}
footer{border-top:1px solid var(--line);padding-block:28px;color:var(--muted);font-size:.88rem}
@media (max-width:820px){ .hero .wrap{grid-template-columns:1fr} .pay{grid-template-columns:1fr} }
@media print{
  header.top,.draft,#hero,#gets,#mua,#dung,#tool .toolbar,#toolForm,.faq,footer,.noprint{display:none!important}
  body{background:#fff} .tk-report{border:0;padding:0}
  .tk-sec{break-inside:avoid-page}
}
/* ---------- Trang Hồ sơ nhà đất (hoso.html) ---------- */
#lam .wrap,.formbox,.stepbody,.teaser,#tkResult{min-width:0}
#lam .wrap,.formbox,.stepbody{grid-template-columns:minmax(0,1fr)}
.formbox{display:grid;gap:14px}
.btn.big{font-size:1.05rem;padding:14px 22px}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px}
.svccard{display:grid;gap:10px;align-content:start;background:var(--card);border:2px solid var(--seal);border-radius:12px;padding:22px;text-decoration:none;color:var(--ink)}
.svccard h2{font-size:clamp(1.15rem,2.4vw,1.4rem)}
.svccard p{color:var(--muted)}
.svccard .btn{justify-self:start;white-space:normal;text-align:left}
.tabs{display:flex;gap:8px;flex-wrap:wrap}
.tabs button{font:700 1.05rem var(--f-display);padding:12px 22px;border-radius:999px;border:2px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}
.tabs button[aria-selected="true"]{border-color:var(--green);background:var(--green);color:var(--on-green)}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.steps button{display:flex;align-items:center;gap:8px;font:600 .88rem var(--f-body);padding:6px 12px 6px 6px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer}
.steps button span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--paper);font-family:var(--f-mono);font-size:.8rem}
.steps button[aria-current="step"]{border-color:var(--green);color:var(--green)}
.steps button[aria-current="step"] span{background:var(--green);color:var(--on-green)}
.stepbody{display:grid;gap:12px}
.stepnav{display:flex;justify-content:space-between;gap:10px}
.drows{display:grid;gap:0;border-top:1px dashed var(--line);padding-top:8px}
.drows .t{font:600 .7rem var(--f-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding-bottom:4px}
.drow{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.drow:last-child{border-bottom:0}
.dname{font-size:.92rem}
.drow .seg span{padding:7px 14px;font-size:.88rem}
.seg input.warn:checked + span{background:var(--amber);color:var(--card)}
.dreason{grid-column:1/-1;max-width:420px}
.dreason select{background:var(--card)}
.runbar{position:sticky;bottom:0;z-index:5;background:var(--paper);padding-block:10px;border-top:1px solid var(--line)}
.refund{background:var(--green-soft);color:var(--ink);border-left:4px solid var(--green);border-radius:6px;padding:10px 14px;font-size:.92rem}
.tk-sum{background:var(--green-soft);border:2px solid var(--green);border-radius:12px;padding:16px 18px;display:grid;gap:8px}
.tk-sum-h{font:800 1.15rem var(--f-display);color:var(--green)}
.tk-sum ul{margin:0;padding-left:20px;display:grid;gap:6px}
.teaser{border-color:var(--seal);background:var(--card)}
.tk-bar{height:8px;border-radius:4px;background:var(--line);overflow:hidden;margin-top:6px;max-width:360px}
.tk-bar i{display:block;height:100%;background:var(--green)}
.tk-refund{font-size:.88rem;background:var(--amber-soft);color:var(--ink);border-radius:6px;padding:8px 12px}
.tk-plan{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tk-plan li{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:start}
.tk-wk{font:700 .8rem var(--f-mono);color:var(--on-green);background:var(--green);border-radius:6px;padding:6px 8px;text-align:center}
.tk-plan p{font-size:.9rem;color:var(--muted);margin-top:4px}
.tk-draft{white-space:pre-wrap;font:inherit;font-size:.9rem;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:14px;margin:0;overflow-x:auto}
.reptools{max-width:none}
@media (max-width:600px){ .drow{grid-template-columns:1fr} .tk-plan li{grid-template-columns:1fr} .tabs button{flex:1} }
/* Tra giá đất Hà Nội 2026 */
.giabox{display:grid;gap:10px;border:1px solid var(--green);border-radius:10px;padding:14px;background:var(--card)}
.gialist{display:grid;gap:6px;max-height:340px;overflow:auto}
.giarow{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border:1px solid var(--line);border-radius:8px;padding:8px 10px;cursor:pointer;background:var(--paper)}
.giarow input{width:auto;margin-top:4px}
.giarow small{display:block;color:var(--muted);font-size:.82rem}
.giarow.on{border-color:var(--green);background:var(--green-soft)}
.giaused{background:var(--paper);border:1px dashed var(--green);border-radius:8px;padding:10px 14px;font-size:.92rem}
.warnli{color:var(--amber)}
/* ---------- Đợt 2: cá nhân hóa, ưu đãi, chi phí trung thực, hoàn tiền, giới thiệu ---------- */
.me{border:2px solid var(--green);border-radius:12px;padding:16px;background:var(--card);display:grid;gap:12px}
.me h3{font-size:1.1rem}
.me .row2{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
.me-ok{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:space-between;background:var(--green-soft);border-radius:10px;padding:12px 14px}
.welcome{background:var(--amber-soft);border:1px solid var(--amber);border-radius:10px;padding:12px 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:18px}
.prog{display:grid;gap:6px;font-size:.92rem;color:var(--green);font-weight:600}
.prog .tk-bar{max-width:none}
.partner{border:1px solid var(--green);background:var(--green-soft);border-radius:10px;padding:10px 14px;font-size:.92rem;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tk-hello{background:var(--paper);border-left:4px solid var(--seal);border-radius:8px;padding:12px 16px;display:grid;gap:6px;font-size:.95rem}
.tk-hi{font-family:var(--f-display);font-size:1.1rem;color:var(--seal)}
.tk-honest-top{font-size:.86rem;color:var(--muted);border:1px dashed var(--line);border-radius:8px;padding:8px 12px}
.tk-honest{background:var(--amber-soft);border:1px solid var(--amber);border-radius:10px;padding:12px 14px;font-size:.92rem;display:grid;gap:6px}
.tk-cost td small,.tk-cost th small{display:block;font-weight:400;color:var(--muted);font-size:.78rem}
.tk-cost-sum td{background:var(--green-soft)}
.tk-hard{background:var(--amber-soft);border:2px solid #D9822B;border-radius:10px;padding:12px 14px;display:grid;gap:6px;font-size:.92rem}
.tk-hard > b{color:var(--amber)}
.tk-locked{display:grid;border:2px dashed var(--seal);border-radius:12px;overflow:hidden;box-shadow:0 4px 16px rgba(184,50,42,0.08)}
.tk-locked > *{grid-area:1/1}
.tk-locked-in{filter:blur(4px);user-select:none;pointer-events:none;padding:16px;display:grid;gap:10px;color:var(--muted)}
.tk-locked-txt{position:relative;background:color-mix(in srgb,var(--card) 85%,transparent);padding:18px 20px;display:grid;gap:10px;align-content:center;font-size:.95rem}
.tk-locked-hdr{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;font-size:1.02rem;line-height:1.4}
.tk-locked-hdr-txt{color:var(--ink);font-weight:500}
.tk-locked-hdr-txt b{font-weight:700}
.tk-btn-nap-top,.tk-btn-nap-bottom{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--seal) 0%,#D9381E 100%)!important;border-color:var(--seal)!important;color:#fff!important;font-weight:700!important;padding:5px 14px!important;border-radius:20px!important;font-size:.85rem!important;text-decoration:none!important;box-shadow:0 2px 6px rgba(184,50,42,.3)!important;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease!important;white-space:nowrap}
.tk-btn-nap-top:hover,.tk-btn-nap-bottom:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(184,50,42,.45)!important;filter:brightness(1.08)}
.tk-locked-txt ul{margin:0;padding-left:20px;display:grid;gap:6px}
.tk-locked-price-li{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:6px;padding-top:8px;border-top:1px dashed var(--line);font-size:.95rem;font-weight:600;color:var(--seal);list-style:none;margin-left:-20px;padding-left:4px}
.tk-locked-price-li b{font-weight:800;color:var(--seal)}
.tk-locked-price-sep{color:var(--muted)}
.offer{border:2px solid var(--seal);border-radius:12px;padding:16px;background:var(--card);display:grid;gap:12px}
.offer-h{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:baseline}
.offer-h .now{font:800 2rem var(--f-display);color:var(--seal)}
.offer-h .old{text-decoration:line-through;color:var(--muted);font-size:1.05rem}
.cd{font:700 1.4rem var(--f-mono);color:var(--seal);background:var(--seal-soft);border-radius:8px;padding:4px 12px}
.offer.expired{border-color:var(--line)}
.offer.expired .cd{color:var(--muted);background:var(--paper)}
.tk-thanks{border-top:2px dashed var(--line);padding-top:12px;display:grid;gap:6px}
.tk-sign{font-size:.95rem}
.sig{font-family:"Dancing Script",cursive;font-size:1.6rem;color:var(--green);line-height:1.3}
.tk-mau{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tk-mau li{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--paper)}
.tk-mau li small{display:block;color:var(--muted);font-size:.82rem}
.tk-noweb{display:none}
.refbox,.affbox{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--card);display:grid;gap:10px}
.affbox{border-color:var(--green)}
.refbox .checks label,.chk label{display:flex;gap:8px;align-items:flex-start;font-size:.92rem;cursor:pointer}
.chk{display:grid;gap:6px}
.chk input{width:auto;margin-top:4px}
.hardnote{background:var(--amber-soft);border:2px solid #D9822B;border-radius:10px;padding:10px 14px;font-size:.9rem}
.hardnote b{color:var(--amber)}
.dl{color:var(--muted);font-size:1.05rem;line-height:1.65;margin:10px 0;padding:2px 0 2px 12px;border-left:3px solid var(--line)}
.dl[hidden]{display:none}
.toast{position:fixed;left:50%;bottom:86px;transform:translateX(-50%);z-index:30;background:var(--green);color:var(--on-green);padding:12px 18px;border-radius:999px;font-weight:600;box-shadow:0 6px 24px rgba(0,0,0,.18);max-width:calc(100vw - 32px);text-align:center}
@media (max-width:600px){ .tk-mau li{grid-template-columns:1fr} .offer-h .now{font-size:1.7rem} }
/* nhắc khách nhập giá tay khi không tìm được giá theo tên đường */
.fwarn.gia-red{background:#fdecec;color:#b42318;border:1px solid #f3b4ae;font-weight:500}
.f.need-manual input{border:2px solid #d92d20;background:#fff5f4;box-shadow:0 0 0 3px rgba(217,45,32,.18)}
.f.need-manual{color:#b42318;font-weight:600}
.goiy{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.92rem}
/* bảng giá nhiều loại đất x vị trí (VT1..VTk) */
.gtbl-wrap{overflow-x:auto}
.gtbl{width:100%;border-collapse:collapse;font-size:1.02rem;margin:6px 0}
.gtbl caption{text-align:left;font-weight:600;padding:4px 0;font-size:.95rem}
.gtbl th,.gtbl td{border:1px solid var(--line);padding:9px 8px;text-align:right}
.gtbl thead th{background:var(--green-soft);text-align:center}
.gtbl tbody th{text-align:left;font-weight:600;background:var(--paper)}
.gtbl .on{background:var(--green-soft);font-weight:700;outline:2px solid var(--green);outline-offset:-2px}
.gtbl-note{font-size:.92rem;color:var(--muted);margin:4px 0 0;line-height:1.5}
@media (max-width:620px){
  .gtbl,.gtbl tbody,.gtbl tr,.gtbl th,.gtbl td{display:block}
  .gtbl thead{display:none}
  .gtbl tr{border:1px solid var(--line);border-radius:10px;margin:0 0 10px;overflow:hidden}
  .gtbl tr.main{border-color:var(--green)}
  .gtbl tbody th{border:0;border-bottom:1px solid var(--line);font-size:1.05rem}
  .gtbl td{display:flex;justify-content:space-between;gap:10px;border:0;border-bottom:1px solid var(--line);font-size:1.08rem}
  .gtbl td:last-child{border-bottom:0}
  .gtbl td::before{content:attr(data-l);font-weight:600;color:var(--muted)}
  .gtbl td::after{content:" đ/m²";font-weight:400;color:var(--muted);font-size:.85rem;margin-left:4px}
  .gtbl td{justify-content:flex-start}.gtbl td::before{min-width:3.2em}
  .gtbl td.on{outline-offset:-2px}
}
.gtbl th{text-transform:none;letter-spacing:0;font-family:inherit;font-size:1rem}
@media (max-width:620px){.gtbl caption{display:block;width:100%;padding:4px 0 8px}.gtbl tbody th{font-size:1.1rem}}

/* ===== Trang hồ sơ: gọn, thiên về thao tác ===== */
.hs{font-size:16px}
.hs section{padding-block:22px}
.hs .hero{padding-block:18px 6px}
.hs .hero h1{font-size:clamp(1.45rem,5.2vw,2rem);line-height:1.25;margin:0 0 8px}
.hs .hero .lead{font-size:.98rem;margin:0;color:var(--muted)}
.hs .sec-head{margin-bottom:12px}
.hs .sec-head h2{font-size:1.3rem;line-height:1.3;margin:4px 0}
.hs .sec-head p,.hs .muted{font-size:.9rem;line-height:1.5}
.hs .eyebrow{font-size:.72rem;letter-spacing:.06em}
.hs .box{padding:14px 16px}
.hs .f,.hs label.f{font-size:.9rem;gap:4px}
.hs input,.hs select,.hs textarea{font-size:16px;padding:10px 12px;min-height:44px}
.hs .hint{font-size:.78rem;font-weight:400}
/* Ô đồng ý: chữ nhỏ */
.hs .chk{gap:6px;margin:10px 0}
.hs .chk label{font-size:.8rem;line-height:1.4;font-weight:400;color:var(--muted);align-items:flex-start;gap:8px}
.hs .chk .hint{font-size:.74rem}
.hs input[type=checkbox]{width:18px!important;height:18px!important;min-width:18px;margin-top:1px}
/* Nút */
.hs .btn{font-size:.95rem;padding:10px 16px}
.hs .btn.big{font-size:1rem;padding:12px 20px}
.hs .btn.small{font-size:.85rem;padding:7px 12px}
/* Gói: chữ nhỏ */
.hs #goi h3{font-size:1rem}
.hs #bangGoi table{font-size:.82rem}
.hs #bangGoi td,.hs #bangGoi th{padding:7px 8px;line-height:1.35}
.hs #goi .muted{font-size:.8rem}
.hs .offer{font-size:.88rem}
.hs .refund{font-size:.82rem}
/* Khối thu gọn */
.hs details.gdet{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0;margin:0 0 12px}
.hs details.gdet>summary{cursor:pointer;padding:11px 14px;font-weight:700;font-size:.92rem;list-style:none}
.hs details.gdet>summary::-webkit-details-marker{display:none}
.hs details.gdet>summary::after{content:"+";float:right;font-weight:800}
.hs details.gdet[open]>summary::after{content:"–"}
.hs details.gdet>*:not(summary){margin-inline:14px}
.hs details.gdet>*:last-child{margin-bottom:14px}
.hs .gets{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.hs .get{padding:10px 12px}
.hs .get b{font-size:.88rem}.hs .get p{font-size:.8rem;margin:2px 0 0}
.hs .faq summary{font-size:.95rem;padding:11px 14px}
.hs .faq p,.hs .faq li{font-size:.88rem}
.hs footer{font-size:.78rem}
@media(max-width:600px){
  .hs #bangGoi td{font-size:.86rem;padding:3px 0}
  .hs #bangGoi td:first-child{font-size:1rem}
  .hs #bangGoi td:nth-child(3){font-size:.95rem}
  .hs #bangGoi tr{padding:10px 12px;margin-bottom:10px}
}
.hs #hero #welcome,.hs #hero .dl{display:none}
.hs section,.hs .hero{padding-top:14px!important;padding-bottom:14px!important}
.hs .hero{padding-bottom:4px!important}
.hs .hero .wrap{padding-block:0}
.hs #lam .wrap{gap:12px!important}
.hs #dlBuy,.hs #dlSave,.hs #dlForm{display:none}

/* Ô đồng ý nhỏ gọn ngay trên hai nút xem kết quả */
.consent{margin:14px 0 6px;padding:8px 10px;border:1px solid transparent;border-radius:10px}
.consent label{display:flex;gap:8px;align-items:flex-start;font-size:.72rem;line-height:1.4;color:var(--muted);margin:0 0 4px;font-weight:400}
.consent input{width:16px;height:16px;margin:1px 0 0;flex:none}
.consent a{color:inherit;text-decoration:underline}
.consent.warn{border-color:#c62828;background:#fdeaea}
.consent.warn label{color:#a31515}
.hs .runbar{flex-wrap:nowrap;gap:8px}
.hs .runbar .btn{flex:1 1 0;min-width:0;padding-inline:8px;font-size:.95rem;text-align:center}
@media(max-width:420px){.hs .runbar .btn{font-size:.85rem;padding-block:12px}}
.nudge{outline:3px solid #c62828;outline-offset:2px;animation:nudge 1s ease-in-out 3}
@keyframes nudge{50%{transform:scale(1.04)}}

/* Nâng cấp UX Marketing: Visual Grouping, Mode Cards, Stepper */
.mode{transition:border-color .15s ease,background-color .15s ease,transform .15s ease,box-shadow .15s ease}
.mode:hover{border-color:var(--green);transform:translateY(-1px);box-shadow:0 3px 10px rgba(0,0,0,.04)}
.mode[aria-pressed="true"]{border-color:var(--green);background:var(--green-soft);box-shadow:0 0 0 1px var(--green)}
.mode-title{display:flex;align-items:center;gap:8px;font-size:1rem}
.mode-icon{font-size:1.15rem;line-height:1}

.sd-group{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:12px;margin-bottom:12px;transition:border-color .2s ease}
.sd-group:focus-within{border-color:var(--green)}
.sd-group-h{display:flex;align-items:center;gap:8px;font-size:.98rem;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:2px}
.sd-num{width:22px;height:22px;border-radius:50%;background:var(--green-soft);color:var(--green);font:700 .78rem var(--f-mono);display:grid;place-items:center;flex:none}
.sd-group-h b{font-weight:700}

.steps button{transition:all .15s ease}
.steps button:hover{border-color:var(--green);color:var(--green)}
.steps button[aria-current="step"]{box-shadow:0 2px 8px rgba(0,100,50,.15)}

.trust-badge{display:flex;align-items:center;gap:10px;background:var(--green-soft);border:1px solid var(--green);border-radius:10px;padding:10px 14px;font-size:.88rem;color:var(--ink);margin-top:10px}
.trust-badge .icon{font-size:1.2rem;flex:none}

/* Cải tiến hiển thị Quy hoạch: Callout card tương tác & Báo cáo */
.qh-box{display:grid;gap:8px}
.qh-callout{border-radius:10px;padding:12px 14px;display:grid;gap:6px;font-size:.88rem;line-height:1.5;transition:all .2s ease}
.qh-callout.qh-ok{background:var(--green-soft);border:1.5px solid var(--green);color:var(--ink)}
.qh-callout.qh-ok .qh-badge{color:var(--green)}
.qh-callout.qh-warn{background:var(--amber-soft);border:1.5px solid var(--amber);color:var(--ink)}
.qh-callout.qh-warn .qh-badge{color:var(--amber)}
.qh-callout.qh-bad{background:var(--seal-soft);border:1.5px solid var(--seal);color:var(--ink)}
.qh-callout.qh-bad .qh-badge{color:var(--seal)}
.qh-callout.qh-neutral{background:var(--paper);border:1px dashed var(--line);color:var(--muted)}
.qh-callout.qh-neutral .qh-badge{color:var(--muted)}
.qh-badge{font-weight:700;font-size:.86rem;display:flex;align-items:center;gap:6px}
.qh-desc{font-size:.85rem;color:var(--ink)}
.qh-callout.qh-neutral .qh-desc{color:var(--muted)}

.qh-report-card{border-radius:12px;padding:16px;margin:12px 0;display:grid;gap:10px;border:1.5px solid var(--line);background:var(--card)}
.qh-report-card.qh-ok{border-color:var(--green);background:var(--green-soft)}
.qh-report-card.qh-warn{border-color:var(--amber);background:var(--amber-soft)}
.qh-report-card.qh-bad{border-color:var(--seal);background:var(--seal-soft)}
.qh-r-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.qh-r-title{font-weight:800;font-size:1.02rem;display:flex;align-items:center;gap:8px;color:var(--ink)}
.qh-r-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:6px}
.qh-r-item{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:grid;gap:4px}
.qh-r-item b{font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}
.qh-r-item p{font-size:.88rem;color:var(--ink);line-height:1.45;margin:0}

/* Tinh chỉnh tương phản Dark Mode bổ sung */
@media (prefers-color-scheme: dark){
  .consent.warn{border-color:#ef4444;background:#3b1114}
  .consent.warn label{color:#fca5a5}
  .mode:hover{box-shadow:0 3px 12px rgba(0,0,0,.4)}
}

/* ============================================================
   KHỐI HỎI ĐÁP CHUYÊN SÂU (AI & CHUYÊN GIA TRẢ LỜI MIỄN PHÍ)
   ============================================================ */
.hoidap-card{background:var(--card);border:1.5px solid var(--green);border-radius:16px;padding:22px;display:grid;gap:14px;box-shadow:0 4px 18px rgba(0,0,0,.04);margin-top:20px;transition:all .2s ease}
.hoidap-badge{display:inline-flex;align-items:center;gap:6px;background:var(--green-soft);color:var(--green);font:700 .78rem var(--f-mono);padding:4px 12px;border-radius:999px;width:fit-content}
.hoidap-head h3{font-size:1.25rem;margin:4px 0 6px;color:var(--ink);line-height:1.35}
.hoidap-head p{color:var(--muted);font-size:.92rem;margin:0;line-height:1.5}
.hoidap-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.hoidap-chip{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.82rem;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s ease}
.hoidap-chip:hover{border-color:var(--green);background:var(--green-soft);color:var(--green)}
.hoidap-form{display:grid;gap:12px;margin-top:6px}
.hoidap-form textarea{min-height:90px;resize:vertical;font-family:inherit;font-size:.95rem;padding:12px;border:1.5px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);width:100%;box-sizing:border-box}
.hoidap-form textarea:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 3px rgba(31,107,79,.15)}
.hoidap-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.hoidap-f{display:grid;gap:4px;font-size:.88rem;font-weight:600;color:var(--ink)}
.hoidap-f input{font-size:.95rem;padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);width:100%;box-sizing:border-box}
.hoidap-f input:focus{border-color:var(--green);outline:none}
.hoidap-btn{font-size:1rem;font-weight:700;padding:14px 20px;border-radius:10px;background:var(--green);color:var(--on-green);border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:opacity .15s}
.hoidap-btn:hover{opacity:.92}
.hoidap-btn:disabled{opacity:.6;cursor:not-allowed}
.hoidap-soft-cta{background:var(--paper);border-left:4px solid var(--seal);border-radius:8px;padding:12px 14px;font-size:.88rem;color:var(--ink);margin-top:4px;line-height:1.5}
.hoidap-soft-cta a{color:var(--seal);font-weight:700;text-decoration:underline}
.hoidap-success{background:var(--green-soft);border:1.5px solid var(--green);border-radius:12px;padding:18px 20px;display:grid;gap:8px;color:var(--ink);text-align:center}
.hoidap-success h4{margin:0;font-size:1.15rem;color:var(--green)}
.hoidap-success p{margin:0;font-size:.92rem;line-height:1.5}

/* ============================================================
   KHO TÀI LIỆU PHÁP LÝ & 144 TÌNH HUỐNG (10.000Đ / TÀI LIỆU)
   ============================================================ */
.tailieu-sec{padding-block:48px 56px;border-top:1px solid var(--line);background:var(--card)}
.tailieu-sec .sec-head{margin-bottom:24px}
.tl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.tl-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:14px;transition:all .2s ease}
.tl-card:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.tl-card.combo{border:2px solid var(--seal);background:linear-gradient(180deg,var(--paper) 0%,var(--seal-soft) 100%)}
.tl-tag{font:700 .75rem var(--f-mono);padding:3px 8px;border-radius:4px;width:fit-content}
.tl-tag.std{background:var(--green-soft);color:var(--green)}
.tl-tag.hot{background:var(--seal-soft);color:var(--seal)}
.tl-h{font-size:1.05rem;font-weight:700;margin:6px 0 4px;color:var(--ink);line-height:1.35}
.tl-desc{font-size:.88rem;color:var(--muted);margin:0;line-height:1.5;flex:1}
.tl-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed var(--line);padding-top:12px;margin-top:6px;gap:10px}
.tl-price{font-size:1.25rem;font-weight:800;color:var(--seal);font-family:var(--f-display)}
.tl-old{font-size:.82rem;color:var(--muted);text-decoration:line-through;margin-left:4px;font-weight:400}
.tl-buy-btn{background:var(--green);color:var(--on-green);border:0;border-radius:8px;padding:9px 14px;font-weight:600;font-size:.9rem;cursor:pointer;transition:opacity .15s}
.tl-buy-btn:hover{opacity:.9}
.tl-card.combo .tl-buy-btn{background:var(--seal);color:#fff}

/* Modal VietQR cho tài liệu 10k */
.tl-modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.68);z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(3px)}
.tl-modal{background:var(--card);color:var(--ink);width:100%;max-width:440px;border-radius:16px;padding:22px;border:1px solid var(--line);box-shadow:0 12px 40px rgba(0,0,0,.25);display:grid;gap:14px;max-height:92vh;overflow-y:auto;position:relative}
.tl-modal-x{position:absolute;top:14px;right:16px;background:none;border:0;font-size:1.6rem;color:var(--muted);cursor:pointer;line-height:1}
.tl-modal h3{margin:0;font-size:1.2rem;color:var(--ink);padding-right:24px}
.tl-qr-box{text-align:center;background:#fff;padding:12px;border-radius:10px;border:1px solid var(--line)}
.tl-qr-box img{max-width:210px;width:100%;height:auto;display:block;margin:0 auto}

/* ============================================================
   KHỐI TRẢ LỜI TỨC THÌ TRONG TRANG (INSTANT AI ANSWER)
   ============================================================ */
.hoidap-instant-answer{background:var(--paper);border:1.5px solid var(--green);border-radius:14px;padding:20px;display:grid;gap:14px;animation:hoidapFadeIn .25s ease-out}
@keyframes hoidapFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.hoidap-ans-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px}
.hoidap-ans-badge{background:var(--green);color:var(--on-green);font:700 .76rem var(--f-mono);padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:5px}
.hoidap-ans-newbtn{background:none;border:1px solid var(--line);border-radius:6px;padding:4px 10px;font-size:.8rem;color:var(--muted);cursor:pointer;font-weight:600;transition:all .15s}
.hoidap-ans-newbtn:hover{color:var(--green);border-color:var(--green)}
.hoidap-ans-q{font-size:.95rem;color:var(--muted);margin:0;font-style:italic}
.hoidap-ans-card{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:8px;padding:14px;display:grid;gap:8px}
.hoidap-ans-part{font-size:.92rem;line-height:1.55;color:var(--ink);margin:0}
.hoidap-ans-part b{color:var(--green)}
.hoidap-ans-part.warn{border-top:1px dashed var(--line);padding-top:8px;font-size:.88rem;color:var(--seal)}
.hoidap-ans-part.warn b{color:var(--seal)}
.hoidap-ans-doc{background:var(--green-soft);border:1px solid var(--green);border-radius:10px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hoidap-ans-doc-info{display:grid;gap:2px}
.hoidap-ans-doc-title{font-size:.92rem;font-weight:700;color:var(--green);margin:0}
.hoidap-ans-doc-sub{font-size:.8rem;color:var(--muted);margin:0}
.hoidap-ans-doc-btn{background:var(--green);color:var(--on-green);border:0;border-radius:6px;padding:8px 14px;font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:opacity .15s}
.hoidap-ans-doc-btn:hover{opacity:.9}
.hoidap-ans-save{background:var(--card);border:1px dashed var(--line);border-radius:10px;padding:12px 14px;display:grid;gap:8px}
.hoidap-ans-save-head{font-size:.86rem;font-weight:600;color:var(--ink);margin:0}
.hoidap-ans-save-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}
@media(max-width:600px){.hoidap-ans-save-row{grid-template-columns:1fr}}
.hoidap-ans-save-row input{font-size:.88rem;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink)}
.hoidap-ans-save-btn{background:var(--ink);color:var(--paper);border:0;border-radius:6px;padding:8px 14px;font-size:.85rem;font-weight:600;cursor:pointer}

/* ============================================================
   CHATBOT AI NỔI GÓC MÀN HÌNH (FLOATING AI ASSISTANT 24/7)
   ============================================================ */
#chatFloatingWidget{position:fixed;bottom:74px;right:16px;z-index:999;font-family:inherit}
@media(min-width:769px){#chatFloatingWidget{bottom:24px;right:24px}}

.chat-float-btn{background:var(--green);color:var(--on-green);border:0;border-radius:999px;padding:12px 18px;display:inline-flex;align-items:center;gap:10px;box-shadow:0 8px 24px rgba(11,92,69,.32);cursor:pointer;font-weight:700;font-size:.92rem;transition:all .2s cubic-bezier(.34,1.56,.64,1);outline:none}
.chat-float-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 12px 28px rgba(11,92,69,.42)}
.chat-status-dot{width:9px;height:9px;background:#34d399;border-radius:50%;box-shadow:0 0 0 2px rgba(52,211,153,.4);animation:chatDotPulse 2s infinite}
@keyframes chatDotPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}

.chat-window{position:fixed;bottom:84px;right:16px;width:380px;max-width:calc(100vw - 32px);height:540px;max-height:calc(100vh - 110px);background:var(--card);border:1.5px solid var(--green);border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.28);display:none;flex-direction:column;overflow:hidden;z-index:1000;animation:chatWindowPop .22s cubic-bezier(.16,1,.3,1)}
@media(min-width:769px){.chat-window{bottom:88px;right:24px}}
@media(max-width:600px){
  #chatFloatingWidget{bottom:68px;right:14px}
  .chat-float-btn{padding:10px 14px;font-size:.85rem}
  .chat-window{position:fixed;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;border:0;bottom:0;right:0;left:0;top:0}
}
@keyframes chatWindowPop{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.chat-window.open{display:flex}

.chat-header{background:var(--green);color:var(--on-green);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.chat-hdr-left{display:flex;align-items:center;gap:10px}
.chat-avatar{width:36px;height:36px;background:rgba(255,255,255,.15);border:1.5px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center;font-size:1.15rem}
.chat-hdr-info{display:grid;gap:2px}
.chat-hdr-title{font-size:.96rem;font-weight:800;margin:0;line-height:1.2}
.chat-hdr-sub{font-size:.75rem;opacity:.88;margin:0;display:flex;align-items:center;gap:6px}
.chat-close-btn{background:none;border:0;color:var(--on-green);font-size:1.5rem;cursor:pointer;padding:0 4px;line-height:1;opacity:.85;transition:opacity .15s}
.chat-close-btn:hover{opacity:1}

.chat-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px;background:var(--paper);scroll-behavior:smooth}
.chat-msg{display:flex;gap:8px;max-width:88%;animation:chatMsgFade .18s ease-out}
@keyframes chatMsgFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.chat-msg.user{align-self:flex-end;flex-direction:row-reverse}
.chat-msg.bot{align-self:flex-start}
.chat-bubble{padding:10px 14px;border-radius:14px;font-size:.88rem;line-height:1.5;box-sizing:border-box}
.chat-msg.user .chat-bubble{background:var(--green);color:var(--on-green);border-bottom-right-radius:2px}
.chat-msg.bot .chat-bubble{background:var(--card);color:var(--ink);border:1px solid var(--line);border-bottom-left-radius:2px;box-shadow:0 2px 6px rgba(0,0,0,.03)}

.chat-bubble b{color:var(--green)}
.chat-msg.user .chat-bubble b{color:#fff}
.chat-doc-card{background:var(--green-soft);border:1px solid var(--green);border-radius:10px;padding:10px 12px;margin-top:8px;display:grid;gap:6px}
.chat-doc-title{font-size:.84rem;font-weight:700;color:var(--green);margin:0}
.chat-doc-meta{font-size:.76rem;color:var(--muted);margin:0}
.chat-doc-btn{background:var(--green);color:var(--on-green);border:0;border-radius:6px;padding:6px 10px;font-size:.78rem;font-weight:700;cursor:pointer;width:fit-content;display:inline-flex;align-items:center;gap:4px}

.chat-quick-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.chat-chip{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:5px 10px;font-size:.76rem;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s}
.chat-chip:hover{border-color:var(--green);background:var(--green-soft);color:var(--green)}

.chat-typing{display:inline-flex;align-items:center;gap:4px;padding:8px 12px;background:var(--card);border:1px solid var(--line);border-radius:12px;width:fit-content}
.chat-typing span{width:6px;height:6px;background:var(--muted);border-radius:50%;animation:chatTyping 1.4s infinite}
.chat-typing span:nth-child(2){animation-delay:.2s}
.chat-typing span:nth-child(3){animation-delay:.4s}
@keyframes chatTyping{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}

.chat-footer{padding:10px;background:var(--card);border-top:1px solid var(--line);display:flex;gap:8px;align-items:center}
.chat-input{flex:1;border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:.88rem;background:var(--paper);color:var(--ink);outline:none;font-family:inherit}
.chat-input:focus{border-color:var(--green)}
.chat-send-btn{background:var(--green);color:var(--on-green);border:0;border-radius:10px;padding:9px 14px;font-weight:700;font-size:.88rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:opacity .15s}
.chat-send-btn:hover{opacity:.9}
.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}

/* Badge đếm lượt câu hỏi */
.qa-quota-badge{display:inline-flex;align-items:center;gap:6px;background:var(--paper);border:1px solid var(--line);color:var(--muted);font:600 .78rem var(--f-mono);padding:3px 10px;border-radius:999px}
.qa-quota-badge.warn{background:var(--seal-soft);color:var(--seal);border-color:var(--seal)}
.qa-quota-badge.unlimited{background:var(--green-soft);color:var(--green);border-color:var(--green)}

/* Thẻ thông báo chạm giới hạn lượt hỏi (Paywall Card) */
.qa-limit-card{background:var(--paper);border:1.5px solid var(--seal);border-radius:14px;padding:18px 20px;display:grid;gap:12px;margin-top:12px;box-shadow:0 6px 20px rgba(184,50,42,.12);animation:hoidapFadeIn .25s ease-out}
.qa-limit-head{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:800;color:var(--seal);margin:0}
.qa-limit-desc{font-size:.9rem;line-height:1.6;color:var(--ink);margin:0}
.qa-limit-desc p{margin:0 0 8px}
.qa-limit-desc p:last-child{margin-bottom:0}
.qa-limit-cta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}
.qa-limit-btn{background:var(--seal);color:#fff;border:0;border-radius:8px;padding:10px 18px;font-size:.92rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:opacity .15s}
.qa-limit-btn:hover{opacity:.9}
.qa-limit-btn.green{background:var(--green)}
.qa-limit-btn.ghost{background:none;border:1px solid var(--line);color:var(--muted)}

/* ============================================================
   BỘ CHỌN 3 DỊCH VỤ TRỌNG TÂM (SỔ ĐỎ - THỪA KẾ - ĐỀN BÙ)
   ============================================================ */
.qa-service-selector{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:6px;
  margin-bottom:8px;
}
@media(max-width:768px){
  .qa-service-selector{
    grid-template-columns:1fr;
    gap:8px;
  }
}
.qa-service-btn{
  background:var(--paper);
  border:2px solid var(--line);
  border-radius:12px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  text-align:left;
  transition:all .2s ease;
  color:var(--ink);
  font-family:inherit;
}
.qa-service-btn:hover{
  border-color:var(--green);
  background:var(--card);
  transform:translateY(-1px);
}
.qa-service-btn.active{
  border-color:var(--green);
  background:var(--green-soft);
  box-shadow:0 0 0 1px var(--green),0 4px 12px rgba(11,92,69,.12);
}
.qa-svc-icon{
  font-size:1.5rem;
  flex:none;
}
.qa-svc-text{
  display:grid;
  gap:2px;
  flex:1;
}
.qa-svc-name{
  font-size:.92rem;
  font-weight:700;
  color:var(--ink);
  line-height:1.25;
}
.qa-service-btn.active .qa-svc-name{
  color:var(--green);
}
.qa-svc-sub{
  font-size:.76rem;
  color:var(--muted);
  line-height:1.3;
}
.qa-svc-badge{
  display:inline-block;
  font:600 .7rem var(--f-mono);
  padding:2px 6px;
  border-radius:4px;
  margin-top:2px;
  width:fit-content;
}
.qa-svc-badge.green{background:rgba(11,92,69,.12);color:var(--green)}
.qa-svc-badge.amber{background:rgba(217,119,6,.15);color:#b45309}

/* Trong Chatbot: 3 thẻ dịch vụ */
.chat-service-cards{
  display:grid;
  gap:8px;
  margin-top:8px;
  width:100%;
}
.chat-svc-card{
  background:var(--card);
  border:1.5px solid var(--line);
  border-radius:12px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  transition:all .18s ease;
  text-align:left;
  font-family:inherit;
  color:var(--ink);
  width:100%;
  box-sizing:border-box;
}
.chat-svc-card:hover{
  border-color:var(--green);
  background:var(--green-soft);
}
.chat-svc-card.active{
  border-color:var(--green);
  background:var(--green-soft);
  box-shadow:0 0 0 1px var(--green);
}
.chat-svc-card .qa-svc-name{
  font-size:.88rem;
}
.chat-svc-card .qa-svc-sub{
  font-size:.74rem;
}

/* Thẻ tag dịch vụ hiển thị đầu câu trả lời */
.qa-service-tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:var(--green-soft);
  color:var(--green);
  border:1px solid var(--green);
  border-radius:999px;
  padding:3px 10px;
  font-size:.78rem;
  font-weight:700;
  margin-bottom:8px;
}

/* Card Gợi ý Dịch vụ Kiểm tra quy hoạch sơ bộ 300k */
.qa-qh-card{
  background:linear-gradient(135deg, rgba(15,90,72,.07), rgba(217,119,6,.06));
  border:1.5px dashed var(--line);
  border-left:4px solid #b45309;
  border-radius:10px;
  padding:12px 14px;
  margin:10px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  transition:all .2s ease;
}
.qa-qh-card:hover{
  border-color:#b45309;
  background:rgba(217,119,6,.08);
}
.qa-qh-main{
  display:grid;
  gap:4px;
  flex:1;
  min-width:240px;
}
.qa-qh-badge{
  font:700 .7rem var(--f-mono);
  color:#b45309;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.qa-qh-info{
  font-size:.88rem;
  line-height:1.5;
  color:var(--ink);
}
.qa-qh-info b{
  color:#0F5A48;
}
.qa-qh-info i{
  color:var(--muted);
  display:inline-block;
}
.qa-qh-cta{
  background:#b45309;
  color:#fff;
  text-decoration:none;
  font-size:.82rem;
  font-weight:700;
  padding:8px 14px;
  border-radius:8px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  transition:opacity .15s;
}
.qa-qh-cta:hover{
  opacity:.9;
}

/* Khối truyền cảm hứng Jim Rohn trong Paywall */
.qa-motivation-quote{
  background:var(--paper);
  border-left:3px solid var(--seal);
  padding:10px 14px;
  border-radius:0 8px 8px 0;
  margin:10px 0 12px;
  font-size:.88rem;
  line-height:1.5;
  color:var(--ink);
  position:relative;
}
.qa-motivation-quote i{
  font-style:italic;
  color:#1e293b;
  display:block;
  margin-bottom:4px;
}
.qa-motivation-quote .quote-author{
  font-weight:700;
  font-size:.78rem;
  color:var(--seal);
  display:block;
  text-align:right;
}

/* Gợi ý quy hoạch trong Chatbot */
.chat-qh-tip{
  background:rgba(217,119,6,.08);
  border-left:3px solid #b45309;
  border-radius:0 8px 8px 0;
  padding:10px 12px;
  margin-top:8px;
  font-size:.82rem;
  line-height:1.45;
}
.chat-qh-tip ol{
  margin:4px 0 6px;
  padding-left:18px;
}
.chat-qh-tip li{
  margin-bottom:2px;
}
.chat-qh-tip .chat-open-qh-btn{
  border:none;
  outline:none;
  font-weight:700;
  transition:all .15s ease;
}
.chat-qh-tip .chat-open-qh-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
}

/* ============================================================
   RESPONSIVE ENHANCEMENTS FOR Q&A AND CHATBOT (NO OVERFLOW / NO LOST SEND BUTTON)
   ============================================================ */
.hoidap-action-row{
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
}
.hoidap-action-row .hoidap-btn{
  flex: 1;
  min-width: 220px;
  box-sizing: border-box;
}

@media(max-width: 600px){
  .hoidap-card{
    padding: 14px 12px !important;
    border-radius: 12px !important;
    margin-top: 14px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
  .hoidap-head h3{
    font-size: 1.15rem !important;
  }
  .hoidap-action-row{
    flex-direction: column !important;
    gap: 8px !important;
  }
  .hoidap-action-row .hoidap-btn{
    width: 100% !important;
    min-width: 0 !important;
    padding: 12px 14px !important;
    font-size: .92rem !important;
    white-space: normal !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .hoidap-action-row .hoidap-ans-newbtn{
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 10px 14px !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .qa-service-selector{
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .qa-service-btn{
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 10px 12px !important;
  }
  .qa-qh-card{
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .qa-qh-main{
    min-width: 0 !important;
    width: 100% !important;
  }
  .qa-qh-cta{
    justify-content: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .hoidap-chips{
    gap: 6px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: auto !important;
    flex-wrap: wrap !important;
  }
  .hoidap-chip{
    font-size: .78rem !important;
    padding: 5px 10px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    text-align: left !important;
  }
  .hoidap-ans-card{
    padding: 12px 10px !important;
  }
  .hoidap-instant-answer{
    padding: 14px 12px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  /* Chat window mobile fixes: sticky footer, flex-shrink 0, font-size 16px to prevent iOS zoom */
  .chat-window{
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border-radius: 0 !important;
    border: 0 !important;
    bottom: 0 !important;
    right: 0 !important;
    left: 0 !important;
    top: 0 !important;
    display: none !important;
    flex-direction: column !important;
    z-index: 99999 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .chat-window.open{
    display: flex !important;
  }
  .chat-header{
    flex-shrink: 0 !important;
  }
  .chat-body{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .chat-footer{
    flex-shrink: 0 !important;
    position: sticky !important;
    bottom: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: var(--card) !important;
    z-index: 10 !important;
    padding: 10px 12px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .chat-input{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    font-size: 16px !important;
  }
  .chat-send-btn{
    flex-shrink: 0 !important;
    min-width: 58px !important;
    white-space: nowrap !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    padding: 9px 14px !important;
  }
}

/* ============================================================
   SỔ ĐỎ & RUNBAR REFINEMENTS (NON-JUMPY RUNBAR, SMOOTH GIALIST)
   ============================================================ */
@media(max-width: 600px){
  .runbar{
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 16px 12px !important;
    background: transparent !important;
    border-top: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
  .runbar .btn{
    width: 100% !important;
    min-width: 0 !important;
    padding: 13px 14px !important;
    font-size: .92rem !important;
    line-height: 1.4 !important;
    white-space: normal !important;
    text-align: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
}

.gialist{
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}
.giarow{
  scroll-margin: 10px;
}

/* Bảng tài khoản đã kích hoạt */
#acct{background:var(--green-soft);border-bottom:1px solid var(--line,#e5e0d4)}
#acct .acct-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
#acct .acct-go{display:flex;gap:10px;flex-wrap:wrap}
#acct .acct-guide{background:var(--card,#fff);color:var(--ink,#1f2937);border:1px solid var(--line,#e5e0d4);border-radius:12px;padding:10px 14px}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) #acct .acct-guide{background:#1c2430;color:#e5e7eb;border-color:#3a4658}
}
:root[data-theme="dark"] #acct .acct-guide{background:#1c2430;color:#e5e7eb;border-color:#3a4658}
#acct .acct-guide>summary{cursor:pointer;font-weight:700}
#acct .acct-guide ol{margin:10px 0 4px;padding-left:20px;display:grid;gap:8px;line-height:1.55}
@media(max-width:640px){#acct .acct-go .btn{width:100%}}

/* Điện thoại: thanh đầu trang không dính (nhường chỗ nội dung), nút chat nổi chỉ còn biểu tượng tròn */
@media (max-width:640px){
  header.top{position:static}
  .chat-float-btn{padding:0;width:52px;height:52px;justify-content:center;font-size:0}
  .chat-float-btn .chat-status-dot{display:none}
  .chat-float-btn span{font-size:0}
  .chat-float-btn span::first-letter{font-size:1.5rem}
}

/* DARK-FIX 20261017: chữ trên thẻ pha màu cố định, tiêu đề, thẻ gói */
@media (prefers-color-scheme: dark){
  :where(:root:not([data-theme="light"])) :is(h1,h2,h3,h4,.get b){color:var(--ink)}
  :root:not([data-theme="light"]) .hk-y{background:#3a2c08!important;border-color:#d9a514!important}
  :root:not([data-theme="light"]) .hk-y h2{color:#fcd34d!important}
  :root:not([data-theme="light"]) .hk-r{background:#3a1416!important;border-color:#f87171!important}
  :root:not([data-theme="light"]) .hk-r h2{color:#fca5a5!important}
  :root:not([data-theme="light"]) .pkg-plan-card{background:var(--card)!important}
  :root:not([data-theme="light"]) .pkg-plan-card div,:root:not([data-theme="light"]) .pkg-plan-card p{color:var(--ink)!important}
  :root:not([data-theme="light"]) .pkg-plan-card b[style*="1D4ED8"],:root:not([data-theme="light"]) .pkg-plan-card span[style*="1D4ED8"]{color:#93c5fd!important}
  :root:not([data-theme="light"]) .pkg-plan-card b[style*="6D28D9"],:root:not([data-theme="light"]) .pkg-plan-card span[style*="6D28D9"]{color:#c4b5fd!important}
  :root:not([data-theme="light"]) .pkg-plan-card b[style*="0F5A48"],:root:not([data-theme="light"]) .pkg-plan-card span[style*="0F5A48"]{color:#6ee7b7!important}
}
:where(:root[data-theme="dark"]) :is(h1,h2,h3,h4,.get b){color:var(--ink)}

/* khách đã trả phí: không hiện lời mời mua gói trong khung Hỏi đáp */
.hs-paid .hoidap-soft-cta{display:none}

/* Chế độ tối: các khung nền sáng đặt trực tiếp trong HTML được đổi sang nền tối, chữ sáng để không bị chói hoặc mờ; nút đang xử lý vẫn rõ chữ */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) [style*="background:#F0FDF4"]{background:#10291f!important;color:#c3f2dc!important;border-color:#1f5a43!important}
  :root:not([data-theme="light"]) [style*="background:#FFFBEB"],:root:not([data-theme="light"]) [style*="background:#FEF3C7"],:root:not([data-theme="light"]) [style*="background:#FBF0D9"]{background:#3a2c08!important;color:#fde7a3!important;border-color:#8a6a12!important}
  :root:not([data-theme="light"]) [style*="background:#FFF1F2"],:root:not([data-theme="light"]) [style*="background:#fff5f4"]{background:#3a1416!important;color:#fecdd3!important;border-color:#9f3a43!important}
  :root:not([data-theme="light"]) [style*="background:#F8FAFC"],:root:not([data-theme="light"]) [style*="background:#E1EEE8"]{background:var(--green-soft)!important;color:var(--ink)!important}
  :root:not([data-theme="light"]) [style*="background:#F0FDF4"] *,:root:not([data-theme="light"]) [style*="background:#FFFBEB"] *{color:inherit!important}
  :root:not([data-theme="light"]) .btn:disabled{opacity:.8}
}
:root[data-theme="dark"] [style*="background:#F0FDF4"]{background:#10291f!important;color:#c3f2dc!important;border-color:#1f5a43!important}
:root[data-theme="dark"] [style*="background:#FFFBEB"],:root[data-theme="dark"] [style*="background:#FEF3C7"],:root[data-theme="dark"] [style*="background:#FBF0D9"]{background:#3a2c08!important;color:#fde7a3!important;border-color:#8a6a12!important}
:root[data-theme="dark"] [style*="background:#FFF1F2"],:root[data-theme="dark"] [style*="background:#fff5f4"]{background:#3a1416!important;color:#fecdd3!important;border-color:#9f3a43!important}
:root[data-theme="dark"] [style*="background:#F8FAFC"],:root[data-theme="dark"] [style*="background:#E1EEE8"]{background:var(--green-soft)!important;color:var(--ink)!important}
:root[data-theme="dark"] [style*="background:#F0FDF4"] *,:root[data-theme="dark"] [style*="background:#FFFBEB"] *{color:inherit!important}
:root[data-theme="dark"] .btn:disabled{opacity:.8}
