:root{
  color-scheme:dark;
  --bg:#030406;
  --panel:rgba(255,255,255,.033);
  --panel-soft:rgba(255,255,255,.032);
  --line:rgba(255,255,255,.105);
  --line-soft:rgba(255,255,255,.065);
  --text:#f4f4f5;
  --muted:rgba(244,244,245,.62);
  --green:#d8c27a;
  --green2:#e7c76a;
  --gold:#e7c76a;
  --blue:#bfc4ca;
  --red:#c79778;
  --violet:#c8bdaf;
  --amber:#d99a35;
  --radius:18px;
  --radius-lg:24px}

*{box-sizing:border-box}
html{background:#000;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(ellipse 78% 44% at 50% -12%,rgba(217,154,53,.060),transparent 66%),
    radial-gradient(ellipse 44% 30% at 12% 4%,rgba(231,199,106,.028),transparent 64%),
    var(--bg);
  color:var(--text);
  font-family:'Be Vietnam Pro',Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
  line-height:1.68;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased}

a{color:inherit;text-decoration:none}
button,input{font:inherit}
img,svg,canvas{max-width:100%}
[id]{scroll-margin-top:86px}

.dkc-main-anchor{position:absolute;top:0}

.dkc-logo-img{
  width:30px;
  height:30px;
  object-fit:contain;
  border-radius:8px}

.dkc-logo-text{
  color:var(--dkc-gold);
  font-size:12px;
  letter-spacing:.10em;
  font-weight:950}

.dkc-ai-nav{color:#f2d982}#dkc-top-btn{
  position:fixed;
  right:18px;
  bottom:20px;
  z-index:999;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(0,0,0,.72);
  color:#fff;
  cursor:pointer}


.container{
  width:min(1120px,calc(100% - 36px));
  margin:0 auto}

.section{
  padding:82px 0;
  border-top:1px solid var(--line-soft)}

.section:first-of-type{border-top:0}

.section-label,
.na-section-title{
  margin:0 0 12px;
  color:var(--green2);
  font-size:11px;
  line-height:1.2;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:950}

.section-title{
  max-width:980px;
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(2.35rem,5.2vw,4.1rem);
  line-height:1.02;
  letter-spacing:-.058em;
  font-weight:950}

.section-title span{color:var(--green2)}

.section-note,
.hero-sub,
p{
  color:var(--muted)}

.na-panel-intro{
  max-width:760px;
  margin:-2px 0 20px;
  font-size:13px;
  line-height:1.65}


.hero{
  min-height:auto;
  padding:118px 0 78px;
  background:radial-gradient(ellipse 82% 60% at 50% 0%,rgba(231,199,106,.075),rgba(3,3,3,.88) 72%,var(--bg) 100%);
  border-bottom:1px solid var(--line-soft)}

.hero-inner{
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center}

.hero h1{
  margin:0;
  color:#fff;
  font-size:clamp(3.2rem,8vw,7rem);
  line-height:.94;
  letter-spacing:-.075em;
  font-weight:950}

.hero-badge,
.hero-author,
.hero-sub,
.hero-cycle-bar,
.hero-nav,
.mini-entry,

.na-flow-strip{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  margin-top:24px}

.na-flow-card{
  padding:18px 16px;
  border-radius:20px;
  border:1px solid var(--line);
  background:var(--panel);
  border-top:2px solid var(--c,var(--green))}

.na-flow-year{
  color:#aebbb0;
  font-size:11px;
  line-height:1.2;
  letter-spacing:.10em;
  text-transform:uppercase}

.na-flow-name{
  margin-top:8px;
  color:#fff;
  font-size:1.05rem;
  line-height:1.24;
  font-weight:950}

.na-flow-img{
  margin-top:6px;
  color:#9cc4a4;
  font-size:12px;
  font-weight:800}

.na-flow-sub{
  margin-top:8px;
  color:#adbaaf;
  font-size:12px;
  line-height:1.48}


.dkc-v3-table-wrap{background:transparent;border:0;box-shadow:none;padding:0;margin:0;overflow:visible;border-radius:0}

.dkc-v3-table,
.compact-signal-table{
  width:100%;
  min-width:860px;
  border-collapse:collapse}

.dkc-v3-table th,
.dkc-v3-table td,
.compact-signal-table th,
.compact-signal-table td{
  padding:13px 14px;
  border-bottom:1px solid var(--line-soft);
  vertical-align:top;
  text-align:left}

.dkc-v3-table tr:last-child td,
.compact-signal-table tr:last-child td{
  border-bottom:0}

.dkc-v3-table th,
.compact-signal-table th{
  color:#a7d6af;
  font-size:10px;
  line-height:1.35;
  letter-spacing:.10em;
  text-transform:uppercase;
  font-weight:950}

.dkc-v3-table td,
.compact-signal-table td{
  color:#e5eee7;
  font-size:13px;
  line-height:1.58}


.na-year-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:start}

.dkc-year-jump{
  position:static;
  display:flex;
  justify-content:center;
  gap:7px;
  overflow-x:auto;
  margin:0 0 22px;
  padding:9px 0;
  border:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none}

.dkc-year-jump a{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:8px;
  color:rgba(255,255,255,.68);
  font-size:11px;
  font-weight:800}

.dkc-year-jump a:hover,
.dkc-year-jump a:focus-visible{
  background:rgba(231,199,106,.09);
  color:#ecd28d}

.na-year-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:24px;
  background:var(--panel);
  border-top:3px solid var(--c,var(--green))}

.na-year-head{
  display:block;
  padding:22px 24px 18px;
  background:linear-gradient(180deg,rgba(255,255,255,.036),rgba(255,255,255,.010));
  border-bottom:1px solid var(--line-soft)}

.na-year-num{
  display:block;
  margin:0 0 10px;
  color:#fff;
  font-size:42px;
  line-height:.95;
  letter-spacing:-.055em;
  font-weight:950}

.na-year-meta{
  display:block;
  margin:0 0 8px;
  color:#9fb1a3;
  font-size:10.5px;
  line-height:1.3;
  letter-spacing:.11em;
  text-transform:uppercase;
  font-weight:850}

.na-year-name{
  display:block;
  margin:0;
  color:#fff;
  font-size:1.28rem;
  line-height:1.22;
  letter-spacing:-.02em;
  font-weight:950}

.na-year-summary{
  display:block;
  margin-top:8px;
  max-width:620px;
  color:rgba(244,244,245,.66);
  font-size:13px;
  line-height:1.55}

.na-year-body{
  padding:20px 24px 24px}

.na-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px}

.na-tag{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.032);
  color:var(--dkc-gold);
  font-size:12px;
  line-height:1.15;
  font-weight:850}

.na-section-title{
  margin:20px 0 10px}

.na-section-title h3{
  margin:0;
  display:inline-flex;
  padding:6px 10px;
  border:1px solid var(--line-soft);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:#d9e4dc;
  font-size:11px;
  line-height:1.2;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:950}

.na-step-grid,
.na-clean-grid,
.na-state-grid,
.na-rhythm{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px}

.na-rhythm{
  grid-template-columns:repeat(3,minmax(0,1fr))}

.na-step,
.na-rhythm > div,
.na-core-box{
  padding:14px 15px;
  border:1px solid var(--line-soft);
  border-radius:16px;
  background:rgba(255,255,255,.024)}

.na-step b,
.na-rhythm b,
.na-core-box strong{
  display:block;
  margin-bottom:6px;
  color:#9cc4a4;
  font-size:10.8px;
  line-height:1.25;
  letter-spacing:.10em;
  text-transform:uppercase;
  font-weight:950}

.na-step span,
.na-rhythm span,
.na-core-box{
  color:#c6d0c8;
  font-size:12.6px;
  line-height:1.58}

.na-core-box{
  margin-top:14px}

.na-core-words{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px}

.na-core-words span{
  display:inline-flex;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid var(--line-soft);
  background:rgba(255,255,255,.022);
  color:#c4d0c7;
  font-size:12px;
  line-height:1.35}


.dkc-footer-unified{
  padding:40px 22px 24px;
  border-top:1px solid var(--line-soft);
  background:#020202;
  color:#9dafA2;
  font-size:12px}

.dkc-footer-inner{
  width:min(1120px,100%);
  margin:0 auto}

.dkc-footer-brand{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:start;
  padding-bottom:24px;
  border-bottom:1px solid var(--line-soft)}

.dkc-footer-logo{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
  font-weight:950}

.dkc-logo-footer{
  width:34px;
  height:34px}

.dkc-footer-brand p{
  max-width:620px;
  margin:10px 0 0;
  color:#aab9ad}

.dkc-footer-contact{
  text-align:right;
  color:#c8d7cb}

.dkc-footer-contact span{
  display:block;
  color:#fff;
  font-weight:900}

.dkc-footer-cols{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:24px}

.dkc-footer-col-title{
  margin-bottom:10px;
  color:#fff;
  font-size:12px;
  font-weight:950}

.dkc-footer-col a{
  display:block;
  margin:6px 0;
  color:#c8d7cb}

.dkc-footer-bottom{
  width:min(1120px,100%);
  margin:22px auto 0;
  padding-top:16px;
  border-top:1px solid var(--line-soft);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  color:#87998b}

body *,
body *::before,
body *::after{
  filter:none}

body::before,
body::after,
html::before,
html::after,
.hero::before,
.hero::after,
.section::before,
.section::after,
main::before,
main::after{
  display:none;
  content:none}

@media(max-width:980px){.section{padding:64px 0}
  .na-flow-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .na-year-grid{grid-template-columns:1fr}
  .dkc-footer-brand,
  .dkc-footer-cols{grid-template-columns:1fr}
  .dkc-footer-contact{text-align:left}
}

@media(max-width:640px){
  .container{width:min(100% - 28px,1120px)}
  .hero{padding:98px 0 58px}
  .hero h1{font-size:clamp(2.75rem,14vw,4.4rem)}
  .section-title{font-size:clamp(2rem,10vw,2.9rem)}
  .na-flow-strip{grid-template-columns:1fr}
  .na-year-head{padding:20px 18px 16px}
  .na-year-num{font-size:34px}
  .na-year-body{padding:18px}
  .na-clean-grid,
  .na-state-grid,
  .na-step-grid,
  .na-rhythm{grid-template-columns:1fr}
  .dkc-footer-bottom{display:block}
  .dkc-footer-bottom span{display:block;margin-top:8px}
}
.dkc-ai-nav{color:#fff}
.dkc-footer-unified,
.footer-wrap,
.mp-site-footer{
  padding:44px 22px 26px;
  background:#020202;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.64);
  font-size:12px;
}
.dkc-footer-inner{
  width:min(1120px,100%);
  margin:0 auto;
}
.dkc-footer-brand{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:start;
}
.dkc-footer-logo{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
  font-weight:950;
}
.dkc-logo-footer{width:34px;height:34px;object-fit:contain;border-radius:9px}
.dkc-footer-brand p{max-width:620px;margin:10px 0 0;color:rgba(255,255,255,.58);line-height:1.7}
.dkc-footer-contact{text-align:right;color:rgba(255,255,255,.68);line-height:1.7}
.dkc-footer-contact span{display:block;color:#fff;font-weight:900}
.dkc-footer-cols{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:26px;
}
.dkc-footer-col-title{margin-bottom:10px;color:#fff;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.dkc-footer-col a{display:block;margin:6px 0;color:rgba(255,255,255,.70)}
.dkc-footer-col a:hover{color:#fff}
.dkc-footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-top:26px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.46);
}
.bc-filter-bar{
  justify-content:center;
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:980px){
  .dkc-footer-brand{grid-template-columns:1fr}
  .dkc-footer-cols{grid-template-columns:1fr}
  .bc-filter-bar{justify-content:center}
}


/* DKC focused cleanup local footer override */
.dkc-footer-contact{display:none}
.dkc-footer-bottom{justify-content:center;text-align:center}
.dkc-footer-bottom span{width:100%;display:block;margin:0}


.dkc-footer-col a.dkc-ai-footer{color:rgba(242,217,130,.96);font-weight:850}
.dkc-footer-col a.dkc-ai-footer:hover{color:#fff}


/* Mobile readability pass: compact Nạp Âm overview */
.na-relation-block{margin:26px 0 0}
.na-relation-title{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(231,199,106,.86);font-weight:900;margin-bottom:12px}
.na-relation-list{display:grid;gap:10px}
.na-relation-item{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:14px;line-height:1.45;color:rgba(244,244,245,.78)}
.na-relation-item strong{color:#f4f4f5;font-weight:850}.na-relation-item strong span{color:rgba(244,244,245,.50);font-weight:650;margin-left:4px}.na-relation-item em{color:rgba(244,244,245,.42);font-style:normal}.na-relation-item b{padding:3px 8px;border-radius:8px;background:rgba(255,255,255,.035);color:rgba(244,244,245,.76);font-weight:800}.na-relation-item p{flex:0 0 100%;margin:0;color:rgba(244,244,245,.58);font-size:13px;line-height:1.5}
@media(max-width:640px){
  .na-flow-strip{gap:14px;margin-top:12px}
  .na-flow-card{padding:0 0 14px;border:0;border-radius:0;background:transparent;border-bottom:1px solid rgba(255,255,255,.045)}
  .na-flow-year{font-size:11px;letter-spacing:.14em;color:rgba(244,244,245,.48)}
  .na-flow-name{font-size:23px;line-height:1.08;margin-top:6px}
  .na-flow-img{font-size:14px;margin-top:6px;color:rgba(174,211,184,.88)}
  .na-flow-sub{font-size:14px;line-height:1.38;margin-top:8px;color:rgba(244,244,245,.64)}
  .na-relation-block{margin-top:22px}
  .na-relation-title{font-size:10px;margin-bottom:12px}
  .na-relation-list{gap:16px}
  .na-relation-item{display:block;font-size:14px;line-height:1.45}
  .na-relation-item strong{display:inline;color:rgba(231,199,106,.92)}
  .na-relation-item strong span{display:inline;color:rgba(244,244,245,.44)}
  .na-relation-item em{display:inline-block;margin:0 7px;color:rgba(244,244,245,.36)}
  .na-relation-item b{display:inline-block;margin:8px 0 6px;background:rgba(255,255,255,.026)}
  .na-relation-item p{display:block;font-size:13px;line-height:1.48;margin:0;color:rgba(244,244,245,.58)}
}

/* Ngũ Hành — premium dark surface, same tone as Bối Cảnh */
body.mp-napm .dkc-v3-table,
body.mp-napm .compact-signal-table,
body.mp-napm .na-year-card,
body.mp-napm .na-step,
body.mp-napm .na-rhythm > div,
body.mp-napm .na-core-box{
  border-color:rgba(255,255,255,.085);
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.007)),#070707;
  box-shadow:none;
}
body.mp-napm .na-year-head{
  background:linear-gradient(180deg,rgba(255,255,255,.020),rgba(255,255,255,.005));
  border-bottom-color:rgba(255,255,255,.070);
}
body.mp-napm .dkc-v3-table th,
body.mp-napm .compact-signal-table th,
body.mp-napm .na-section-title h3,
body.mp-napm .na-step b,
body.mp-napm .na-rhythm b,
body.mp-napm .na-core-box strong{
  color:#ecd28d;
}
body.mp-napm .dkc-v3-table th,
body.mp-napm .compact-signal-table th{
  background:rgba(231,199,106,.030);
  border-bottom-color:rgba(255,255,255,.075);
}
body.mp-napm .dkc-v3-table td,
body.mp-napm .compact-signal-table td{
  color:rgba(255,255,255,.74);
  background:rgba(255,255,255,.004);
  border-bottom-color:rgba(255,255,255,.055);
}
body.mp-napm .dkc-v3-table tbody tr:nth-child(even) td,
body.mp-napm .compact-signal-table tbody tr:nth-child(even) td{
  background:rgba(255,255,255,.008);
}
body.mp-napm .na-year-name{
  color:rgba(255,255,255,.92);
}
body.mp-napm .na-year-summary,
body.mp-napm .na-step span,
body.mp-napm .na-rhythm span,
body.mp-napm .na-core-box{
  color:rgba(255,255,255,.70);
}
body.mp-napm .na-section-title h3,
body.mp-napm .na-core-words span{
  border-color:rgba(255,255,255,.075);
  background:rgba(255,255,255,.010);
}
body.mp-napm .na-core-words span{
  color:rgba(255,255,255,.68);
}

/* Opening rhythm: separate the first content block from the hero. */
body.mp-napm > main.container{
  padding-top:48px;
}

body.mp-napm .dkc-year-jump{
  box-shadow:none;
}

@media(max-width:720px){
  body.mp-napm > main.container{
    padding-top:34px;
  }

  body.mp-napm .dkc-year-jump{
    justify-content:flex-start;
  }
}


/* Generated from inline styles in ngu-hanh-nap-am.html. Keeps original visual output while removing style attributes. */
.dkc_inline_ngu_hanh_nap_am_001{margin:21px 0 21px;}
.dkc_inline_ngu_hanh_nap_am_002{--c:#ef4444;}
.dkc_inline_ngu_hanh_nap_am_003{--c:#f59e0b;}
.dkc_inline_ngu_hanh_nap_am_004{--c:#84cc16;}
.dkc_inline_ngu_hanh_nap_am_005{--c:#10b981;}
.dkc_inline_ngu_hanh_nap_am_006{--c:#38bdf8;}
.dkc_inline_ngu_hanh_nap_am_007{--c:#a855f7;}
.dkc_inline_ngu_hanh_nap_am_008{--c:#22c55e;}
