.v14-section h2{font-size:25px;line-height:1.25;margin:0 0 1.2rem}.v14-section p{line-height:1.7;max-width:none}
/* Section body: bỏ giới hạn ch hẹp gây dư khoảng trống trong .wrap */
.section .wrap>p,
.section-content>p,
.v9-section p,
.v10-reading-section .wrap>p,
.v10-ca .wrap>p,
.v11-section p,
.v13-section p{
  max-width:none!important;
  width:100%;
}.v14-section a,.v14-guide a{color:#96ece1;text-decoration:underline;text-underline-offset:3px}.v14-section code{overflow-wrap:anywhere}.v14-table{max-width:100%;overflow-x:auto;margin:1.25rem 0;border:1px solid #375365;border-radius:8px;scrollbar-color:#588899 #10232f}.v14-table table{width:100%;min-width:640px;border-collapse:collapse;table-layout:auto}.v14-table caption{text-align:left;font-weight:650;color:#eef7fb;padding:1rem;background:#112b36}.v14-table th{background:#173440;color:#f0f8fb}.v14-table th,.v14-table td{padding:1rem;vertical-align:top;border-bottom:1px solid #34515f;line-height:1.6;font-size:16px;overflow-wrap:anywhere}.v14-table td{color:#d5e4ee}.v14-table tbody tr:last-child td{border-bottom:0}.v14-table:focus-visible,.v14-section a:focus-visible,.v14-demo-toolbar select:focus-visible,.v14-guide summary:focus-visible{outline:3px solid #72e4d5;outline-offset:4px}.v14-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.25rem 0}.v14-route-grid article{min-width:0;padding:1.4rem;background:#102936;border:1px solid #385766;border-radius:8px}.v14-route-grid h3{font-size:16px;margin:0 0 .8rem;line-height:1.3}.v14-route-grid p{margin-bottom:1rem}.v14-route-grid a{display:inline-block;min-height:44px;padding:.45rem 0}.v14-flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.v14-flow li{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:1rem;padding:1.2rem;border:1px solid #395969;background:#102735;border-radius:6px}.v14-flow li>span{font:600 16px monospace;color:#8debdc}.v14-flow h3{margin:0 0 .6rem;font-size:16px}.v14-flow p{margin:0}.v14-demo-toolbar{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin-top:1.5rem}.v14-demo-toolbar label{font-weight:600}.v14-demo-toolbar select{font:inherit;color:#eef8fb;background:#142e3c;border:1px solid #4e7082;border-radius:6px;min-height:44px;padding:.6rem 1rem}.v14-demo-toolbar p{margin:0;color:#bed0db}.v14-guide{border-top:1px solid #416371;padding-top:1rem;margin-top:1rem}.v14-guide summary{cursor:pointer;font-weight:650;min-height:44px;line-height:1.5}.v14-guide p{font-size:16px;color:#c5d9e5}.v14-guide ol{padding-left:1.35rem}.v14-guide li{line-height:1.65;margin:.8rem 0}.v14-observation{display:inline-block;font-size:16px;line-height:1.5;padding:.6rem .9rem;background:#162e3b;border:1px solid #426171;color:#dceaf3;margin:.2rem 0 1.2rem;border-radius:5px}.v14-readiness-badge{border-left:3px solid #83d5c8;background:#132b37;padding:.8rem 1rem;color:#d6e8ee;line-height:1.55;margin:1rem 0;font-size:16px}.v13-demo-choice [hidden]{display:none!important}.v14-section .v11-code{margin-top:1rem}.v14-active-step{font-weight:650}
@media(max-width:1000px){.v14-route-grid{grid-template-columns:1fr}.v14-flow{grid-template-columns:1fr}}
@media(max-width:480px){.v14-table th,.v14-table td{padding:.8rem}.v14-demo-toolbar{align-items:flex-start;flex-direction:column;gap:.65rem}.v14-demo-toolbar select{max-width:100%;width:100%}.v14-flow li{padding:1rem;gap:.65rem;grid-template-columns:2rem minmax(0,1fr)}.v14-route-grid article{padding:1.1rem}}
.v14-coverage-details{border:1px solid #3c6071;border-radius:8px;padding:1rem;margin:1.2rem 0}.v14-coverage-details summary{cursor:pointer;font-weight:650;color:#e4f1f7;min-height:44px;line-height:1.5}.v14-coverage-details summary:focus-visible{outline:3px solid #72e4d5;outline-offset:4px}.v14-coverage-details .v14-table{margin-bottom:0}.v14-coverage-details[open] summary{margin-bottom:.8rem}

/* ===== Header layout final override: nav never covers search ===== */
.visual-header .visual-nav-shell{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  grid-template-areas:"brand nav actions"!important;
  align-items:center!important;
  gap:16px!important;
  position:relative!important;
  min-width:0!important;
  width:min(calc(100% - 80px),var(--max))!important;
  max-width:var(--max)!important;
  margin-inline:auto!important;
  box-sizing:border-box!important;
}
.visual-header .visual-nav-shell > .visual-primary-nav{
  flex:1 1 0%!important;
  width:100%!important;
  min-width:0!important;
}
.visual-header .visual-brand{grid-area:brand!important;min-width:0!important}
.visual-header .menu-toggle{display:none!important}
.visual-header .visual-primary-nav{
  grid-area:nav!important;
  position:relative!important;
  z-index:1!important;
  flex:1 1 0%!important;
  min-width:0!important;
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  overflow:visible!important; /* giữ mega dropdown */
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:0!important;
  height:80px!important;
  box-sizing:border-box!important;
}
.visual-header .visual-primary-nav:has(.visual-navdrop[open]){z-index:30!important}
.visual-header .visual-mega{z-index:40!important}
/* Active theo URL: header summary + mega item */
.visual-header .visual-navdrop.active>summary,
.visual-header .navdrop.active>summary{
  color:#e9fffb!important;
  background:rgba(103,227,199,.08)!important;
}
.visual-header .visual-navdrop.active>summary .nav-label,
.visual-header .navdrop.active>summary .nav-label{
  color:#e9fffb!important;
}
.visual-header .visual-mega-item.active,
.visual-header .mega-item.active,
.visual-header a.visual-mega-item[aria-current=page]{
  background:linear-gradient(90deg,rgba(103,227,199,.12),rgba(125,220,255,.05))!important;
  border-color:rgba(103,227,199,.32)!important;
  color:#eafffb!important;
}
.visual-header .visual-mega-item.active b,
.visual-header .mega-item.active b{
  color:#eafffb!important;
}
/* Cột preview: min-height + cao theo content, không stretch theo cột bên */
.visual-header .visual-mega-preview{
  align-self:start!important;
  height:auto!important;
  min-height:280px!important;
  max-height:none!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
.visual-header .visual-mega-preview h3,
.visual-header .visual-mega-preview p,
.visual-header .visual-mega-preview .visual-preview-text{
  overflow:visible!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
.visual-header .visual-nav-actions{
  grid-area:actions!important;
  position:relative!important;
  z-index:8!important;
  isolation:isolate!important;
  flex:0 0 auto!important;
  flex-shrink:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
/* Item theo nội dung, flex-grow chiếm hết khoảng trống — không bắt buộc bằng nhau */
.visual-header .visual-navdrop{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:none!important;
  width:auto!important;
  overflow:visible!important;
}
.visual-header .visual-navdrop>summary{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  padding:0 10px!important;
  min-height:80px!important;
  line-height:1.25!important;
  text-align:left!important;
  white-space:nowrap!important;
}
.visual-header .visual-navdrop>summary .nav-label{
  flex:1 1 auto!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.visual-header .visual-navdrop>summary .visual-chevron,
.visual-header .visual-navdrop>summary .v10-chevron{
  position:static!important;
  top:auto!important;
  right:auto!important;
  transform:none!important;
  margin:0!important;
  flex:0 0 auto!important;
  display:inline-block!important;
  width:16px!important;
  height:16px!important;
}
.visual-header .visual-navdrop[open]>summary .visual-chevron,
.visual-header .visual-navdrop[open]>summary .v10-chevron{
  transform:rotate(180deg)!important;
}
@media(max-width:1365px) and (min-width:1101px){
  .visual-header .visual-navdrop>summary{padding-inline:6px!important;font-size:13px!important}
}
@media(max-width:1240px) and (min-width:1101px){
  .visual-header .visual-navdrop>summary{padding-inline:4px!important;font-size:12px!important}
}
.visual-header .visual-search,.visual-header .visual-start,.visual-header .lang-select{position:relative;z-index:8}
/* Mobile: lang trong sidebar — menu static, không absolute overflow header */
.visual-header .lang-select.lang-in-sidebar{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  flex:0 0 auto!important;
}
.visual-header .lang-select.lang-in-sidebar .lang-select-menu{
  position:static!important;
  top:auto!important;
  right:auto!important;
  left:auto!important;
  width:100%!important;
  min-width:0!important;
  margin-top:8px!important;
  z-index:auto!important;
}
.visual-header .visual-search,
.visual-header .search-open{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  line-height:0!important;
  width:42px!important;
  height:44px!important;
  box-sizing:border-box!important;
}
.visual-header .visual-search .visual-ico,
.visual-header .visual-search svg{
  display:block!important;
  margin:0!important;
  width:19px!important;
  height:19px!important;
  flex:0 0 auto!important;
}

@media(max-width:1100px){
  /* Header giữ đúng 72px; menu absolute overlay bên dưới, không đẩy layout */
  .visual-header.site-header,
  .visual-header{
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    overflow:visible!important;
  }
  .visual-header .visual-nav-shell{
    display:flex!important;
    flex-wrap:nowrap!important;
    grid-template-columns:none!important;
    grid-template-areas:none!important;
    gap:4px!important;
    min-height:72px!important;
    height:72px!important;
    width:min(calc(100% - 80px),var(--max))!important;
    position:relative!important;
    overflow:visible!important;
  }
  .visual-header .visual-brand{grid-area:auto!important;flex:1 1 auto!important;order:1!important;min-width:0!important}
  .visual-header .visual-nav-actions{grid-area:auto!important;flex:0 0 auto!important;order:2!important;z-index:8!important;align-items:center!important;gap:2px!important}
  .visual-header .visual-search,
  .visual-header .search-open{
    width:44px!important;
    height:44px!important;
    flex:0 0 44px!important;
  }
  .visual-header .menu-toggle{
    display:inline-flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    padding:0!important;
    margin:0!important;
    order:3!important;
    line-height:0!important;
    box-sizing:border-box!important;
    background:none!important;
  }
  .visual-header .menu-toggle span{
    display:block!important;
    width:22px!important;
    height:2px!important;
    margin:0!important;
    background:var(--ink)!important;
    border-radius:1px!important;
    flex:0 0 2px!important;
  }
  .visual-header .visual-primary-nav,
  .visual-header .primary-nav,
  .visual-header .visual-nav-shell > .visual-primary-nav{
    grid-area:auto!important;
    display:none!important;
    order:unset!important;
    flex:none!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:100%!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    max-height:min(70vh,calc(100dvh - 72px))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    margin:0!important;
    padding:10px!important;
    background:#071722!important;
    border:1px solid var(--line)!important;
    border-radius:0 0 8px 8px!important;
    box-sizing:border-box!important;
    z-index:120!important;
    box-shadow:0 18px 40px rgba(0,0,0,.45)!important;
  }
  .visual-header .visual-primary-nav.open,
  .visual-header .primary-nav.open,
  .visual-header .visual-nav-shell > .visual-primary-nav.open{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    height:auto!important;
  }
  .visual-header .visual-navdrop{
    display:block!important;
    max-width:none!important;
    flex:0 0 auto!important;
    width:100%!important;
    flex-basis:auto!important;
    min-width:0!important;
  }
  .visual-header .visual-navdrop>summary{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-height:54px!important;
    height:auto!important;
    line-height:1.35!important;
    padding:12px 13px!important;
    text-align:left!important;
    overflow:visible!important;
    white-space:normal!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .visual-header .visual-navdrop>summary .nav-label{
    overflow:visible!important;
    text-overflow:unset!important;
    white-space:normal!important;
  }
  .visual-header .visual-navdrop>summary .visual-chevron,
  .visual-header .visual-navdrop>summary .v10-chevron{
    position:static!important;
    top:auto!important;
    right:auto!important;
    transform:none!important;
    display:inline-block!important;
    flex:0 0 auto!important;
  }
  .visual-header .visual-navdrop[open]>summary .visual-chevron,
  .visual-header .visual-navdrop[open]>summary .v10-chevron{
    transform:rotate(180deg)!important;
  }
  /* Mega = accordion panel, không absolute overlay */
  .visual-header .visual-mega{
    position:static!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:100%!important;
    min-width:0!important;
    max-height:none!important;
    margin:0!important;
    padding:12px 10px 16px!important;
    border:0!important;
    border-top:1px solid var(--line)!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
    overflow:visible!important;
    z-index:auto!important;
  }
  .visual-header .visual-mega-layout{
    display:block!important;
    grid-template-columns:none!important;
    gap:0!important;
  }
  .visual-header .visual-mega-preview{display:none!important}
  .visual-header .visual-mega-group+.visual-mega-group{margin-top:14px!important}
  .visual-header .visual-mega-item{
    min-height:52px!important;
    grid-template-columns:26px minmax(0,1fr) 14px!important;
  }
  .visual-header .visual-nav-actions .visual-start{display:none!important}
}
@media(max-width:800px){
  .visual-header .visual-nav-shell{
    width:min(calc(100% - 34px),var(--max))!important;
  }
}

/* Mega preview flow: dọc 1 cột; line bắt đầu/kết thúc tại tâm ô tròn */
.visual-header .visual-preview-stage{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
}
.visual-header .visual-preview-stage:before{
  /* node min-height 34px + stage padding 3px → tâm ô ≈ 20px */
  top:20px!important;
  bottom:20px!important;
  left:8px!important;
  right:auto!important;
  width:1px!important;
  height:auto!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(var(--visual-teal),rgba(125,220,255,.14))!important;
}
.visual-header .visual-preview-stage .visual-mini-node{
  flex:none!important;
  min-width:0!important;
  width:100%!important;
}
.visual-header .visual-preview-stage .visual-mini-node b{
  overflow:visible!important;
  white-space:normal!important;
}
