/* Trang in A4/A3 ngang. Cùng CSS cho "Xem bản in" và khi in; --k = hệ số cỡ chữ (A4 = 1, A3 = 1.3). */
#print-root{display:none;--pw:297mm;--ph:210mm;--k:1;--nseg:3}
#print-root.measuring{display:block;position:absolute;left:-10000px;top:0;visibility:hidden;zoom:1!important}
body.previewing #print-root{display:block;padding:18px 0 40px;background:#8f847a}
body.previewing .page{margin:0 auto 18px;box-shadow:0 6px 24px rgba(0,0,0,.35)}
#print-root *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
.page{position:relative;width:var(--pw);height:var(--ph);overflow:hidden;background:#ffffff;color:var(--ink);display:flex;flex-direction:column;padding:calc(7mm*var(--k)) calc(9mm*var(--k)) calc(5.5mm*var(--k));font-family:var(--sans);font-size:calc(7.8pt*var(--k));line-height:1.36}
.page-cover{padding:0;container-type:inline-size;background:#c59a46}
.page-cover .cover{position:absolute;inset:0}
.pg-head{flex:none;display:flex;align-items:baseline;gap:calc(3mm*var(--k));padding-bottom:calc(2mm*var(--k));border-bottom:calc(.6pt*var(--k)) solid var(--ink);white-space:nowrap}
.pg-brand{font:600 calc(12pt*var(--k))/1 var(--serif);letter-spacing:.3em;color:var(--terra-d)}
.pg-doc{font-size:calc(7.5pt*var(--k));letter-spacing:.08em;text-transform:uppercase;color:var(--ink2)}
.pg-part{font-size:calc(7.5pt*var(--k));letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pg-part::before{content:"· ";color:var(--line2)}
.pg-group{margin-left:auto;font:600 calc(10pt*var(--k))/1.1 var(--sans);letter-spacing:.05em;overflow:hidden;text-overflow:ellipsis}
.pg-cols{flex:none}
.pg-body{flex:1;min-height:0;overflow:hidden}
.pg-foot{flex:none;display:flex;justify-content:space-between;gap:calc(4mm*var(--k));padding-top:calc(1.6mm*var(--k));border-top:calc(.4pt*var(--k)) solid var(--line2);font-size:calc(6.3pt*var(--k));color:var(--muted)}
.pg-no{font-weight:600;color:var(--ink2);white-space:nowrap}
#print-root .grid{font-size:calc(7.8pt*var(--k))}
#print-root .r{grid-template-columns:1.02fr 1.55fr 1.55fr 1.55fr;border-bottom:calc(.4pt*var(--k)) solid var(--line)}
#print-root .r>div{padding:calc(.95mm*var(--k)) calc(1.6mm*var(--k))}
#print-root .r .c{border-left:calc(.4pt*var(--k)) solid var(--line)}
#print-root .r-cols{position:static;background:none;border-bottom:calc(.6pt*var(--k)) solid var(--line2)}
#print-root .r-cols .lab,#print-root .r-cols .c{font-size:calc(6.2pt*var(--k))}
#print-root .r-cols .c b{font-size:calc(8.2pt*var(--k))}
#print-root .r-group .group-head{grid-column:1/-1;padding:calc(2.4mm*var(--k)) 0 calc(1.6mm*var(--k));border-bottom:calc(.8pt*var(--k)) solid var(--ink)}
#print-root .r-group{display:block;border:0}
#print-root .group-head .roman{font-size:calc(15pt*var(--k))}
#print-root .group-head h2{font-size:calc(11pt*var(--k))}
#print-root .part-tag,#print-root .src-rows{font-size:calc(6.5pt*var(--k))}
#print-root .no{font-size:calc(7.4pt*var(--k));min-width:calc(5mm*var(--k))}
#print-root .r-attr .lab{font-size:calc(7.3pt*var(--k));padding-left:calc(7mm*var(--k))}
#print-root .lvl2 .r-head .lab{padding-left:calc(5mm*var(--k))}
#print-root .ref{font-size:calc(6.4pt*var(--k));padding:0 calc(1.4mm*var(--k))}
#print-root .note{font-size:calc(7.3pt*var(--k));padding:calc(1mm*var(--k)) calc(2mm*var(--k)) calc(1mm*var(--k)) calc(7mm*var(--k))!important}
#print-root .note b{font-size:calc(6.4pt*var(--k))}
#print-root .branch{font-size:calc(7pt*var(--k))}
#print-root .src-red::after{font-size:calc(5.5pt*var(--k));top:calc(.6mm*var(--k));right:calc(.8mm*var(--k))}
#print-root .r-cont{background:#f7f4eb}
#print-root .r-cont .lab{display:flex;gap:calc(2mm*var(--k));font-size:calc(7.4pt*var(--k))}
#print-root .item-unit.first .r-head{border-top:calc(.8pt*var(--k)) solid var(--line2)}
#print-root .seg-badge{display:none}
/* Mục lục & phụ lục */
.toc-print{columns:2;column-gap:calc(12mm*var(--k));padding-top:calc(3mm*var(--k))}
.toc-print h2{column-span:all;margin:0 0 calc(3mm*var(--k));font:500 calc(20pt*var(--k))/1.2 var(--serif)}
.toc-print h3{break-after:avoid;margin:calc(3mm*var(--k)) 0 calc(1.2mm*var(--k));font:600 calc(8pt*var(--k)) var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--terra-d)}
.tp{display:flex;align-items:baseline;gap:calc(1.5mm*var(--k));margin:0;padding:calc(1mm*var(--k)) 0;break-inside:avoid;font-size:calc(9pt*var(--k))}
.tp em{display:inline-block;min-width:calc(9mm*var(--k));font:600 calc(9pt*var(--k)) var(--serif);font-style:normal;color:var(--terra)}
.tp small{color:var(--muted);font-size:calc(6.8pt*var(--k))}
.tp i{flex:1;border-bottom:calc(.5pt*var(--k)) dotted var(--line2)}
.tp b{min-width:calc(6mm*var(--k));text-align:right}
.toc-legend{column-span:all;margin-top:calc(6mm*var(--k));padding-top:calc(2mm*var(--k));border-top:calc(.4pt*var(--k)) solid var(--line);font-size:calc(7pt*var(--k));color:var(--ink2)}
.toc-legend .ref,.toc-legend .note-chip{font-size:calc(6.4pt*var(--k))}
.ap{padding:calc(1.2mm*var(--k)) 0;font-size:calc(7.8pt*var(--k))}
.ap h3{margin:calc(2mm*var(--k)) 0 calc(1mm*var(--k));font:600 calc(9pt*var(--k)) var(--sans);color:var(--terra-d)}
.ap p{margin:0}
.ap ul{margin:0;padding-left:calc(5mm*var(--k))}
.ap li{margin:0 0 calc(.8mm*var(--k));white-space:pre-line}
.ap .inv{font-size:calc(7.4pt*var(--k))}
.ap .inv th,.ap .inv td{padding:calc(.7mm*var(--k)) calc(1.5mm*var(--k))}
.page-toc .pg-body{overflow:hidden}
@media print{
  html,body{background:#fff!important;margin:0}
  body>*:not(#print-root){display:none!important}
  #print-root{display:block!important;padding:0!important;background:none!important;zoom:1!important}
  .page{margin:0!important;box-shadow:none!important;break-after:page;page-break-after:always}
  .page:last-child{break-after:auto;page-break-after:auto}
}

.page-divider{padding:0;background:#fcfaf3}
.page-divider>.pg-head{display:none}
.page-divider>.pg-body{overflow:hidden}
.page-divider .section-divider{height:100%;min-height:0;border-radius:0;padding:calc(12mm*var(--k)) calc(15mm*var(--k)) calc(7mm*var(--k))}
.page-divider .divider-top,.page-divider .divider-foot{font-size:calc(9pt*var(--k))}
.page-divider .divider-top>span:first-child{font-size:calc(20pt*var(--k))}
.page-divider .divider-main{padding:calc(8mm*var(--k)) 0}
.page-divider .divider-part{font-size:calc(13pt*var(--k))}
.page-divider .divider-number{font-size:calc(150pt*var(--k))}
.page-divider .divider-main h2{font-size:calc(50pt*var(--k));margin-top:calc(4mm*var(--k))}
.page-divider>.pg-foot{color:#76591f;border:0;padding:0 calc(15mm*var(--k)) calc(5mm*var(--k))}
.page-divider .pg-no{color:#76591f}
