.nb-document{container:nb/inline-size;background:var(--nb-paper,#f7f5ef);color:#263a31;padding:40px 24px;font:16px/1.8 'Be Vietnam Pro',Arial,sans-serif;overflow-wrap:anywhere}
.nb-document *{box-sizing:border-box}.nb-document h1,.nb-document h2,.nb-document h3,.nb-document h4{font-family:var(--nb-heading,Georgia,serif);line-height:1.18;font-weight:400;color:inherit}
.nb-header{max-width:var(--nb-width,800px);margin:0 auto 38px}.nb-header h1{font-size:clamp(34px,5vw,64px);margin:20px 0}.nb-header small{font-size:10px;letter-spacing:2px}
.nb-summary{font-size:18px;color:#657266}.nb-byline{font-size:11px;color:#657266;margin:20px 0}.nb-cover img{width:100%;max-height:620px;object-fit:cover}
.nb-layout-wide .nb-header,.nb-layout-longform .nb-header{max-width:1200px}.nb-layout-wide .nb-header>div:first-child{max-width:800px;margin:auto}.nb-layout-split .nb-header{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;max-width:1200px}
.nb-layout-longform .nb-header{text-align:center}.nb-reading{max-width:var(--nb-width,800px);margin:auto}.nb-body{min-width:0}.nb-node{--nb-padding:0px;--nb-gap:24px;--nb-size:inherit;--nb-font:inherit;--nb-align:inherit;--nb-color:inherit;--nb-background:transparent;--nb-radius:0px;padding:var(--nb-padding);font-size:var(--nb-size);font-family:var(--nb-font);text-align:var(--nb-align);color:var(--nb-color);background:var(--nb-background);border-radius:var(--nb-radius);min-width:0;margin:0 0 20px}
.nb-node h2{font-size:2em}.nb-node h3{font-size:1.5em}.nb-node p{margin:0 0 16px}.nb-document figure{margin:0}.nb-document img{max-width:100%;width:100%;object-fit:cover;display:block;border-radius:var(--nb-radius)}.nb-document figcaption{font-size:11px;color:#647265;margin:10px 0}.nb-document a{color:inherit}.nb-rich a{text-decoration:underline}.nb-rich ul,.nb-rich ol{padding-left:25px}
.nb-columns{display:grid;grid-template-columns:var(--nb-columns,var(--nb-ratio,1fr 1fr));gap:var(--nb-gap,24px)}.nb-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.nb-gallery img{aspect-ratio:1}
.nb-document blockquote{border-left:3px solid var(--nb-accent);font:italic 28px/1.5 Georgia,serif;margin:20px 0;padding:18px 26px}.nb-document cite{display:block;font:12px Arial;margin-top:12px}
.nb-button{display:inline-block;background:var(--nb-accent);color:white!important;padding:13px 22px;text-decoration:none}.nb-callout{background:#eaece2;padding:24px;border-left:3px solid var(--nb-accent)}
.nb-document iframe{width:100%;aspect-ratio:16/9;border:0}.nb-table{overflow:auto}.nb-table table{border-collapse:collapse;width:100%;font-size:14px}.nb-table td,.nb-table th{border:1px solid #d0d7ca;padding:12px;text-align:left}.nb-document summary{cursor:pointer;font-weight:600;padding:15px 0}.nb-placeholder{padding:28px;background:#eceee5;border:1px dashed #b8c3ad;font-size:13px;text-align:center}
.nb-toc{border:1px solid #d0d7ca;padding:20px;margin-bottom:30px;font-size:12px}.nb-toc a{display:block;padding:5px 0}.nb-layout-sidebar .nb-reading{display:grid;grid-template-columns:200px minmax(0,1fr);max-width:1150px;gap:35px}.nb-layout-sidebar .nb-toc{align-self:start;position:sticky;top:110px}
.nb-tags,.nb-share{max-width:var(--nb-width);margin:30px auto;font-size:12px}.nb-share button{padding:12px;border:1px solid #b7c0b2;background:transparent;cursor:pointer}
.nb-reference{display:flex;align-items:center;gap:22px;border:1px solid #d4dace;padding:20px;text-decoration:none}.nb-reference>img{width:30%;aspect-ratio:1;object-fit:cover}.nb-reference h3{margin:10px 0}.nb-reference p,.nb-reference span{font-size:12px}.nb-reference small{font-size:9px;letter-spacing:1px}
@container nb (max-width:1000px){.nb-layout-split .nb-header{grid-template-columns:1fr}.nb-layout-sidebar .nb-reading{grid-template-columns:1fr}.nb-layout-sidebar .nb-toc{position:static}.nb-header h1{font-size:42px}}
@container nb (max-width:600px){.nb-columns{grid-template-columns:var(--nb-columns,1fr)}.nb-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.nb-header h1{font-size:34px}.nb-summary{font-size:16px}.nb-document blockquote{font-size:23px}.nb-node{margin-bottom:16px}}

/* Standalone pages: no magazine header, wider canvas; the title stays available to assistive tech and search. */
.nb-header[hidden]{display:none}.nb-page-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.nb-layout-landing{padding:0 0 48px}.nb-layout-landing .nb-reading{max-width:var(--nb-width,1100px);padding:32px 24px 0}
.nb-body{overflow-x:clip}.nb-embed-host{display:block}.nb-rich table{border-collapse:collapse;max-width:100%}.nb-rich td,.nb-rich th{border:1px solid #d0d7ca;padding:8px 12px;vertical-align:top}/* The block wrapper shares its type class with the inner layout element; only the inner one lays out columns/tiles. */
.nb-node.nb-columns,.nb-node.nb-gallery{display:block}.nb-node.nb-callout{background:var(--nb-background);padding:var(--nb-padding);border-left:0}
.nb-document .nb-natural img{width:auto;max-width:100%;height:auto}
/* Full-bleed custom block on landing pages; the editor canvas keeps it inside the frame. */
body:has(.nb-bleed){overflow-x:clip}.nb-layout-landing .nb-bleed{width:100vw;margin-left:calc(50% - 50vw)}.ne-stage .nb-layout-landing .nb-bleed,.ne-stage .nb-bleed{width:auto;margin-left:0}.nb-layout-landing .nb-reading:has(> .nb-body > .nb-embed:first-child .nb-bleed){padding-top:0}
.nb-layout-landing .nb-body:has(.nb-bleed){overflow:visible}
/* Georgia has no glyphs for stacked Vietnamese diacritics; quotes use the heading face, which does. */
.nb-document blockquote{font-family:var(--nb-heading,'Playfair Display',Georgia,serif);font-weight:400}.nb-document blockquote cite{font-family:'Be Vietnam Pro',Arial,sans-serif}
