:root {

  --accent: var(--c-accent, #0f8f7c);
  --accent-strong: var(--c-accent-strong, #0b6f60);
  --accent-ink: #ffffff;

  --bg: #f6f7f8;
  --surface: #ffffff;
  --surface-2: #f0f2f4;
  --line: #e2e6ea;
  --ink: #16202a;
  --ink-2: #4a5765;
  --ink-3: #74818f;
  --shadow: 0 1px 2px rgba(16,32,42,.06), 0 8px 24px rgba(16,32,42,.06);
  --radius: 14px;
  --radius-sm: 9px;
  --maxw: 1080px;
  --font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0; background: var(--bg); color: var(--ink);
  font-family: var(--font); font-size: 18.5px; line-height: 1.68;
  -webkit-font-smoothing: antialiased;
}
img, svg { max-width: 100%; }
a { color: var(--accent-strong); }
h1, h2, h3 { line-height: 1.2; letter-spacing: -.01em; color: var(--ink); }
h1 { font-size: clamp(2rem, 5vw, 3.1rem); margin: 0 0 .4em; }
h2 { font-size: clamp(1.5rem, 3.2vw, 2.1rem); margin: 0 0 .5em; }
h3 { font-size: 1.15rem; margin: 0 0 .35em; }
p { margin: 0 0 1em; color: var(--ink-2); }

.NplWrap { max-width: var(--maxw); margin: 0 auto; padding: 0 20px; }
.NplSection { padding: 72px 0; }
.NplSection + .NplSection { border-top: 1px solid var(--line); }
.NplEyebrow { text-transform: uppercase; letter-spacing: .12em; font-size: .78rem; font-weight: 700; color: var(--accent-strong); margin: 0 0 .8em; }
.NplLead { font-size: 1.1rem; color: var(--ink-2); max-width: 54ch; }
.NplCenter { text-align: center; }
.NplCenter .NplLead { margin-inline: auto; }

.NplBtn { display: inline-flex; align-items: center; gap: .5em; font-weight: 650; font-size: 1rem;
  padding: .8em 1.4em; border-radius: var(--btn-radius, 999px); border: 1px solid transparent; cursor: pointer;
  text-decoration: none; transition: transform .08s ease, background .15s ease; }
.NplBtnUpper .NplBtn { text-transform: uppercase; letter-spacing: .04em; font-weight: 700; font-size: .92rem; }
.NplBtn:active { transform: translateY(1px); }
.NplBtnPrimary { background: var(--accent); color: var(--accent-ink); }
.NplBtnPrimary:hover { background: var(--accent-strong); }
.NplBtnGhost { background: transparent; color: var(--ink); border-color: var(--line); }
.NplBtnGhost:hover { background: var(--surface-2); }
.NplBtnSm { padding: .55em 1em; font-size: .92rem; }

.NplSiteHeader { position: sticky; top: 0; z-index: 40; background: color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter: saturate(140%) blur(10px); border-bottom: 1px solid var(--line); }
.NplHeaderRow { display: flex; align-items: center; gap: 18px; height: 66px; }
.NplBrand { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--ink); font-weight: 750; }
.NplBrand img, .NplBrand svg { height: 30px; width: auto; }
.NplNav { display: flex; gap: 22px; margin-left: auto; }
.NplNav a { color: var(--ink-2); text-decoration: none; font-weight: 550; font-size: .97rem; }
.NplNav a:hover { color: var(--ink); }
.NplHeaderCta { margin-left: 8px; }
.NplBurger { margin-left: auto; display: none; background: none; border: 1px solid var(--line);
  border-radius: 10px; width: 42px; height: 40px; cursor: pointer; color: var(--ink); }

.NplHero { padding: 76px 0 40px; }
.NplHero .NplTrustLine { color: var(--ink-3); font-size: .9rem; margin-top: 18px; }
.NplHeroCta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }

.NplRankHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; flex-wrap: wrap; margin-bottom: 26px; }
.NplRankNote { color: var(--ink-3); font-size: .92rem; max-width: 42ch; }
.NplRankList { display: grid; gap: 14px; }
.NplRankCard { display: grid; grid-template-columns: 44px 190px 1fr auto; align-items: center; gap: 18px;
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 16px 18px; box-shadow: var(--shadow); }
.NplRankCard.NplIsTop { border-color: color-mix(in srgb, var(--accent) 55%, var(--line)); box-shadow: 0 0 0 1px var(--accent) inset, var(--shadow); }
.NplRankNum { font-weight: 800; font-size: 1.5rem; color: var(--ink-3); text-align: center; }
.NplRankCard.NplIsTop .NplRankNum { color: var(--accent-strong); }
.NplRankBrand { display: flex; align-items: center; gap: 12px; }
.NplRankBrand img { height: 30px; width: auto; }
.NplRankBrand .NplNm { font-weight: 700; }
.NplRankBrand .NplTag { display: inline-block; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em;
  color: var(--accent-strong); background: color-mix(in srgb, var(--accent) 14%, transparent); padding: 2px 8px; border-radius: 999px; margin-top: 3px; }
.NplRankFacts { display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: .9rem; }
.NplRankFacts b { color: var(--ink); font-weight: 650; }
.NplRankFacts span { color: var(--ink-3); display: block; font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; }
.NplRankRight { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.NplScore { font-weight: 800; font-size: 1.15rem; }
.NplScore small { color: var(--ink-3); font-weight: 600; font-size: .8rem; }
.NplRankMobileNote { display: none; color: var(--ink-2); font-size: .9rem; }

.NplGrid { display: grid; gap: 18px; grid-template-columns: repeat(4, 1fr); }
.NplGrid3 { grid-template-columns: repeat(3, 1fr); }
.NplCard { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow); }
.NplCard .NplIc { width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center; margin-bottom: 12px;
  background: color-mix(in srgb, var(--accent) 14%, transparent); color: var(--accent-strong); }
.NplCard p { margin: 0; font-size: .95rem; }

.NplProse { max-width: 68ch; }
.NplProse h2 { margin-top: 0; }
.NplProse p:last-child { margin-bottom: 0; }
.NplEditorialBlock + .NplEditorialBlock { margin-top: 42px; }

.NplCallout { background: var(--surface-2); border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; }

.NplFaq { max-width: 760px; }
.NplFaq details { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 2px 18px; margin-bottom: 10px; }
.NplFaq summary { cursor: pointer; font-weight: 650; padding: 15px 0; list-style: none; color: var(--ink); }
.NplFaq summary::-webkit-details-marker { display: none; }
.NplFaq summary::after { content: "+"; float: right; color: var(--accent-strong); font-weight: 800; }
.NplFaq details[open] summary::after { content: "\2013"; }
.NplFaq details p { padding-bottom: 15px; margin: 0; font-size: .97rem; }

.NplCtaBand { background: linear-gradient(135deg, var(--accent), var(--accent-strong)); color: var(--accent-ink); border-radius: calc(var(--radius) + 6px); padding: 44px; text-align: center; }
.NplCtaBand h2 { color: var(--accent-ink); }
.NplCtaBand p { color: color-mix(in srgb, var(--accent-ink) 82%, transparent); max-width: 46ch; margin-inline: auto; }
.NplCtaBand .NplBtnPrimary { background: var(--accent-ink); color: var(--accent-strong); margin-top: 18px; }

.NplSiteFooter { background: var(--surface); border-top: 1px solid var(--line); padding: 48px 0 32px; }
.NplFooterTop { display: flex; flex-wrap: wrap; gap: 28px; justify-content: space-between; }
.NplFooterLinks { display: flex; flex-wrap: wrap; gap: 10px 26px; }
.NplFooterLinks a { color: var(--ink-2); text-decoration: none; font-size: .93rem; }
.NplFooterLinks a:hover { color: var(--ink); }
.NplFooterNote { color: var(--ink-3); font-size: .83rem; margin-top: 26px; max-width: 72ch; }
.NplAgeBadge { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%;
  border: 2px solid var(--ink-3); color: var(--ink-2); font-weight: 800; font-size: .82rem; }

.NplDoc { padding: 48px 0 72px; }
.NplDoc .NplProse h1 { font-size: clamp(1.8rem, 4vw, 2.6rem); }
.NplBreadcrumb { color: var(--ink-3); font-size: .9rem; margin-bottom: 18px; }
.NplBreadcrumb a { color: var(--ink-3); }

.NplByline { color: var(--ink-3); font-size: .9rem; margin-top: 16px; }
.NplByline b { color: var(--ink-2); font-weight: 650; }

.NplScorecardsSec { padding: 28px 0; }
.NplScorecards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.NplScorecard { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 18px 20px; box-shadow: var(--shadow); }
.NplScBig { font-size: 1.9rem; font-weight: 800; color: var(--ink); line-height: 1; }
.NplScOf { font-size: .9rem; font-weight: 600; color: var(--ink-3); }
.NplScSmall { color: var(--ink-2); font-size: .9rem; margin-top: 6px; }

.NplWrapWide { max-width: 1280px; }
.NplTableScroll { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
table.NplCmp { width: 100%; border-collapse: collapse; font-size: .92rem; table-layout: fixed; }
table.NplCmp thead th { text-align: left; padding: 12px 9px; font-size: .76rem; text-transform: uppercase; letter-spacing: .04em;
  color: var(--ink-3); font-weight: 700; border-bottom: 1px solid var(--line); vertical-align: bottom; }
table.NplCmp thead th span { display: block; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--ink-3); opacity: .8; }
table.NplCmp tbody td { padding: 12px 9px; border-bottom: 1px solid var(--line); vertical-align: middle; color: var(--ink-2); word-wrap: break-word; }

table.NplCmp .NplCNum { width: 38px; white-space: nowrap; text-align: center; padding-left: 4px; padding-right: 4px; }
table.NplCmp .NplCBrand { width: 22%; }
table.NplCmp .NplColScore { width: 72px; }
table.NplCmp .NplColKyc { width: 92px; }
table.NplCmp .NplColCustody { width: 13%; }
table.NplCmp .NplColCoins { width: 10%; }
table.NplCmp .NplColMin { width: 10%; }
table.NplCmp .NplColWd { width: 11%; }
table.NplCmp .NplColLic { width: 10%; }
table.NplCmp .NplColEst { width: 54px; }
table.NplCmp .NplCCta { width: 70px; }
table.NplCmp tbody tr:last-child td { border-bottom: none; }
table.NplCmp tbody tr.NplIsTop { background: color-mix(in srgb, var(--accent) 7%, transparent); }
.NplCNum { color: var(--ink-3); font-weight: 800; width: 34px; }
tr.NplIsTop .NplCNum { color: var(--accent-strong); }
.NplCCta { text-align: right; white-space: nowrap; }
.NplCMin { white-space: nowrap; }
.NplTbBrand { display: flex; align-items: center; gap: 10px; min-width: 200px; }
.NplTbBrand img { height: 26px; width: auto; flex: none; }
.NplTbDot { width: 26px; height: 26px; border-radius: 7px; flex: none; display: grid; place-items: center; font-weight: 800; color: var(--accent-ink); background: var(--accent); font-size: .85rem; }
.NplTbBrand .NplNm { font-weight: 700; color: var(--ink); white-space: nowrap; }
.NplTbNote { color: var(--ink-3); font-size: .78rem; max-width: 34ch; }
.NplTbBrand .NplTag { display: inline-block; font-size: .64rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em;
  color: var(--accent-strong); background: color-mix(in srgb, var(--accent) 16%, transparent); padding: 1px 6px; border-radius: 999px; vertical-align: middle; }
.NplCScore b { color: var(--ink); font-weight: 800; }
.NplBar { display: block; height: 4px; border-radius: 3px; background: var(--surface-2); margin-top: 5px; min-width: 56px; overflow: hidden; }
.NplBarFill { display: block; height: 100%; background: var(--accent); border-radius: 3px; }
.NplPill { display: inline-block; font-size: .74rem; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
.NplPillNokyc { color: #04512f; background: #bde9ce; }
.NplPillRiskbased, .NplPillThreshold { color: #6f4400; background: #f3dca2; }
.NplPillMandatory { color: #7d2727; background: #f0c4c4; }
.NplPill-2\2014 { color: var(--ink-3); background: var(--surface-2); }
.NplTableFoot { color: var(--ink-3); font-size: .82rem; margin-top: 14px; }

table.NplCmp[data-folded="true"] tbody tr.NplRowExtra { display: none; }
.NplShowAllWrap { text-align: center; margin-top: 18px; }
.NplShowAll { min-width: 240px; }

.NplPromoSec { padding: 10px 0 44px; }
.NplPromo { position: relative; display: block; text-decoration: none; border-radius: calc(var(--radius) + 4px); overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--line)); }
.NplPromoFlag { position: absolute; top: 12px; right: 12px; z-index: 2; font-size: .64rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .06em; color: var(--ink-3); background: color-mix(in srgb, var(--surface) 85%, transparent); border: 1px solid var(--line);
  padding: 2px 8px; border-radius: 999px; }
.NplPromoImg img { display: block; width: 100%; height: auto; }
.NplPromoBody { background:
    radial-gradient(1200px 300px at 85% -40%, color-mix(in srgb, var(--accent) 30%, transparent), transparent),
    linear-gradient(120deg, var(--surface), var(--surface-2)); padding: 34px 36px; }
.NplPromoEyebrow { color: var(--accent-strong); text-transform: uppercase; letter-spacing: .1em; font-size: .72rem; font-weight: 700; margin: 0 0 8px; }
.NplPromoTitle { color: var(--ink); font-size: clamp(1.3rem, 2.6vw, 1.9rem); margin: 0 0 8px; max-width: 24ch; }
.NplPromoText { color: var(--ink-2); margin: 0 0 18px; max-width: 60ch; }
.NplPromoBody .NplBtn { pointer-events: none; }

.NplSrcLine { color: var(--ink-3); font-size: .82rem; margin-top: 18px; }

@media (min-width: 561px) {
  body.NplDCompact { font-size: 16px; }
  body.NplDSpacious { font-size: 18px; }
}
.NplDCompact .NplSection { padding: 56px 0; }
.NplDCompact table.NplCmp { font-size: .8rem; }
.NplDCompact table.NplCmp thead th, .NplDCompact table.NplCmp tbody td { padding: 9px 8px; }
.NplDCompact .NplHero { padding: 60px 0 32px; }
.NplDSpacious .NplSection { padding: 92px 0; }
.NplDSpacious .NplHero { padding: 92px 0 48px; }
.NplDSpacious .NplLead { font-size: 1.2rem; }
.NplDSpacious table.NplCmp tbody td { padding: 15px 10px; }
.NplDSpacious .NplCard { padding: 26px; }

.NplCardsOutline .NplCard, .NplCardsOutline .NplScorecard, .NplCardsOutline .NplTableScroll,
.NplCardsOutline .NplRankCard, .NplCardsOutline .NplCallout { box-shadow: none; border-width: 1.5px; }
.NplCardsFlat .NplCard, .NplCardsFlat .NplScorecard { box-shadow: none; border: none; background: var(--surface-2); }
.NplCardsFlat .NplTableScroll { box-shadow: none; }
.NplCardsFlat .NplCard .NplIc { background: color-mix(in srgb, var(--accent) 18%, transparent); }

.NplHdrCenter .NplNav { margin-left: auto; margin-right: auto; }

.NplHeroCenter .NplHero .NplWrap { text-align: center; }
.NplHeroCenter .NplHero .NplLead { margin-inline: auto; }
.NplHeroCenter .NplHeroCta { justify-content: center; }

.NplHeroSplit { display: grid; grid-template-columns: 1.4fr .9fr; gap: 44px; align-items: center; }
.NplToppickCard { position: relative; background: var(--surface); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 24px; box-shadow: var(--shadow); }
.NplCardsFlat .NplToppickCard { box-shadow: none; }
.NplCardsOutline .NplToppickCard { box-shadow: none; border-width: 1.5px; }
.NplTpFlag { position: absolute; top: 14px; right: 14px; font-size: .66rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .06em; color: var(--accent-strong); background: color-mix(in srgb, var(--accent) 14%, transparent); padding: 3px 9px; border-radius: 999px; }
.NplTpHead { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.NplTpHead img { height: 40px; width: auto; }
.NplTpName { font-weight: 750; font-size: 1.1rem; color: var(--ink); }
.NplTpScore { font-weight: 800; font-size: 1.6rem; color: var(--accent-strong); line-height: 1; }
.NplTpScore small { font-size: .9rem; color: var(--ink-3); font-weight: 600; }
.NplTpFacts { list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 9px; }
.NplTpFacts li { display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--line); padding-bottom: 8px; font-size: .92rem; }
.NplTpFacts li:last-child { border-bottom: none; padding-bottom: 0; }
.NplTpFacts span { color: var(--ink-3); }
.NplTpFacts b { color: var(--ink); font-weight: 650; text-align: right; }
.NplTpCta { width: 100%; justify-content: center; }

.NplHeroStats { display: flex; flex-wrap: wrap; gap: 16px 30px; margin-top: 30px; }
.NplHeroCenter .NplHeroStats { justify-content: center; }
.NplHstat { display: flex; flex-direction: column; }
.NplHstat b { font-size: 1.5rem; font-weight: 800; color: var(--ink); line-height: 1; }
.NplHstat span { color: var(--ink-3); font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; margin-top: 5px; }

.NplNav a { transition: color .15s ease, background .15s ease; }
.NplNav a:hover { color: var(--accent-strong); }
.NplNavPills .NplNav { gap: 8px; }
.NplNavPills .NplNav a { padding: 7px 14px; border-radius: 999px; font-weight: 600;
  color: var(--accent-strong); background: color-mix(in srgb, var(--accent) 12%, transparent); }
.NplNavPills .NplNav a:hover { background: color-mix(in srgb, var(--accent) 22%, transparent); color: var(--accent-strong); }
.NplNavAccent .NplNav a { color: var(--accent-strong); font-weight: 600; }
.NplNavAccent .NplNav a:hover { color: var(--accent); }

table.NplCmp.NplTblStriped thead th { background: color-mix(in srgb, var(--accent) 9%, var(--surface));
  border-bottom: 2px solid color-mix(in srgb, var(--accent) 32%, var(--line)); }
table.NplCmp.NplTblStriped tbody td { border-bottom: none; }
table.NplCmp.NplTblStriped tbody tr:nth-child(even) { background: var(--surface-2); }
table.NplCmp.NplTblStriped tbody tr.NplIsTop { background: color-mix(in srgb, var(--accent) 12%, transparent); }
table.NplCmp.NplTblDivided th, table.NplCmp.NplTblDivided td { border-right: 1px solid var(--line); }
table.NplCmp.NplTblDivided th:last-child, table.NplCmp.NplTblDivided td:last-child { border-right: none; }
table.NplCmp.NplTblDivided thead th { background: color-mix(in srgb, var(--accent) 10%, var(--surface)); color: var(--accent-strong); }

.NplStatBand { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--surface);
  border: 1.5px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.NplStatB { padding: 22px 24px; border-left: 1px solid var(--line); }
.NplStatB:first-child { border-left: none; }
.NplSbBig { font-size: 2.1rem; font-weight: 800; color: var(--accent-strong); line-height: 1; }
.NplSbOf { font-size: .95rem; font-weight: 600; color: var(--ink-3); }
.NplSbSmall { color: var(--ink-2); font-size: .9rem; margin-top: 8px; }
.NplStatLedger { display: flex; flex-wrap: wrap; gap: 10px; }
.NplStatL { flex: 1 1 180px; display: flex; align-items: baseline; gap: 10px; background: var(--surface-2);
  border-radius: var(--radius-sm); padding: 14px 16px; }
.NplSlBig { font-size: 1.5rem; font-weight: 800; color: var(--accent-strong); line-height: 1; white-space: nowrap; }
.NplSlOf { font-size: .85rem; font-weight: 600; color: var(--ink-3); }
.NplSlSmall { color: var(--ink-2); font-size: .85rem; }

.NplWhyReasons { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 24px; }
.NplWhyCard { display: flex; gap: 14px; background: var(--surface); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 20px; box-shadow: var(--shadow); }
.NplCardsOutline .NplWhyCard { box-shadow: none; border-width: 1.5px; }
.NplCardsFlat .NplWhyCard { box-shadow: none; border: none; background: var(--surface-2); }
.NplWhyIc { flex: none; width: 36px; height: 36px; border-radius: 9px; display: grid; place-items: center;
  color: var(--accent-strong); background: color-mix(in srgb, var(--accent) 14%, transparent); }
.NplWhyCard h3 { margin: 0 0 4px; font-size: 1.05rem; }
.NplWhyCard p { margin: 0; font-size: .93rem; }
.NplWhyShots { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; margin-top: 28px; }
.NplShot { margin: 0; }
.NplShotFrame { position: relative; background: var(--surface-2); border: 1px solid var(--line);
  border-radius: var(--radius-sm); padding: 28px 10px 10px; overflow: hidden; }
.NplShotFrame .NplDot { position: absolute; top: 11px; width: 9px; height: 9px; border-radius: 50%; background: var(--line); }
.NplShotFrame .NplDot:nth-child(1) { left: 12px; }
.NplShotFrame .NplDot:nth-child(2) { left: 28px; }
.NplShotFrame .NplDot:nth-child(3) { left: 44px; }
.NplShotFrame img { display: block; width: 100%; max-height: 360px; object-fit: cover; object-position: top;
  border-radius: 6px; border: 1px solid var(--line); }
.NplShot figcaption { color: var(--ink-3); font-size: .85rem; margin-top: 10px; text-align: center; }

.NplMarketStripWrap { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface); }
.NplMarketStrip { display: flex; align-items: center; gap: 8px 22px; flex-wrap: wrap; padding: 14px 0; }
.NplMsLive { display: inline-flex; align-items: center; gap: 8px; font-size: .72rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .07em; color: var(--ink-2); margin-right: 4px; }
.NplMsTile { display: flex; align-items: baseline; gap: 7px; white-space: nowrap; }
.NplMsLabel { color: var(--ink-3); font-size: .74rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.NplMsVal { color: var(--ink); font-weight: 750; font-size: .95rem; }
.NplMsSub { font-size: .78rem; font-weight: 600; }
.NplMsUp { color: #0a7d4d; }
.NplMsDown { color: #b4232a; }
.NplMsWatch { color: #9a6400; }
.NplMsNeutral { color: var(--ink-3); }
.NplMsUpdated { color: var(--ink-3); font-size: .72rem; margin-left: auto; }

.NplFeatHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; flex-wrap: wrap; margin-bottom: 28px; }
.NplFeatHead h2 { margin: 0; }
.NplFeatNote { color: var(--ink-3); font-size: .92rem; max-width: 42ch; margin: 0; }
.NplFeatDisclaimer { color: var(--ink-3); font-size: .82rem; margin-top: 20px; }

.NplNewsfeed { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.NplNewsItem { display: flex; flex-direction: column; background: var(--surface); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 22px 24px; box-shadow: var(--shadow); }
.NplCardsOutline .NplNewsItem { box-shadow: none; border-width: 1.5px; }
.NplCardsFlat .NplNewsItem { box-shadow: none; border: none; background: var(--surface-2); }
.NplNewsItem.NplNewsLead { grid-column: 1 / -1; border-color: color-mix(in srgb, var(--accent) 45%, var(--line)); }
.NplNewsMeta { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.NplNewsTag { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--accent-strong);
  background: color-mix(in srgb, var(--accent) 13%, transparent); padding: 3px 9px; border-radius: 999px; }
.NplNewsMeta time { color: var(--ink-3); font-size: .8rem; }
.NplNewsItem h3 { margin: 0 0 8px; font-size: 1.12rem; }
.NplNewsLead h3 { font-size: 1.5rem; }
.NplNewsItem p { margin: 0 0 16px; font-size: .95rem; color: var(--ink-2); }
.NplNewsFoot { margin-top: auto; }
.NplNewsSrc { color: var(--ink-3); font-size: .8rem; font-weight: 600; }

.NplNewsHero { padding: 56px 0 44px; }
.NplNhGrid { display: grid; grid-template-columns: 1.5fr .9fr; gap: 48px; align-items: start; }
.NplNhLead .NplNewsMeta { margin: 0 0 12px; }
.NplNhLead h1 { font-size: clamp(1.8rem, 4vw, 2.7rem); margin: 0 0 .35em; }
.NplNhLead h1 a { color: inherit; text-decoration: none; }
.NplNhLead h1 a:hover { color: var(--accent-strong); }
.NplNhLead .NplLead { max-width: 56ch; }
.NplNhSide { border-left: 1px solid var(--line); padding-left: 28px; }
.NplNhSideH { text-transform: uppercase; letter-spacing: .1em; font-size: .72rem; font-weight: 700; color: var(--ink-3); margin: 0 0 14px; }
.NplNhList { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.NplNhList li { border-bottom: 1px solid var(--line); padding-bottom: 14px; }
.NplNhList li:last-child { border-bottom: none; padding-bottom: 0; }
.NplNhList a { display: grid; gap: 5px; text-decoration: none; }
.NplNhList .NplNhListT { color: var(--ink); font-weight: 650; font-size: .98rem; line-height: 1.35; }
.NplNhList a:hover .NplNhListT { color: var(--accent-strong); }
.NplNhList time { color: var(--ink-3); font-size: .78rem; }

.NplNewsItem h3 a { color: inherit; text-decoration: none; }
.NplNewsItem h3 a:hover { color: var(--accent-strong); }
.NplNewsMore { color: var(--accent-strong); font-size: .85rem; font-weight: 650; text-decoration: none; }
.NplNewsMore:hover { text-decoration: underline; }

.NplPager { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin-top: 36px; }
.NplPg { display: inline-grid; place-items: center; min-width: 40px; height: 40px; padding: 0 12px; border-radius: var(--radius-sm);
  border: 1px solid var(--line); background: var(--surface); color: var(--ink-2); text-decoration: none; font-weight: 650; font-size: .95rem; }
.NplPg:hover { border-color: color-mix(in srgb, var(--accent) 45%, var(--line)); color: var(--accent-strong); }
.NplPgCur { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
.NplPgStep { font-weight: 600; }

.NplArticleBody { max-width: 72ch; }
.NplArticleBody .NplNewsMeta { margin: 0 0 10px; }
.NplArticleBody h1 { font-size: clamp(1.7rem, 3.8vw, 2.5rem); }
.NplArticleBody > p { font-size: 1.05rem; }
.NplArticleCta { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
  margin: 36px 0 8px; padding: 24px 26px; border-radius: var(--radius); border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--line));
  background: radial-gradient(900px 240px at 90% -40%, color-mix(in srgb, var(--accent) 22%, transparent), transparent), var(--surface); }
.NplAcEyebrow { color: var(--accent-strong); text-transform: uppercase; letter-spacing: .08em; font-size: .7rem; font-weight: 700; margin: 0 0 6px; }
.NplAcLine { margin: 0; color: var(--ink-2); font-size: .95rem; max-width: 46ch; }
.NplArticleCta .NplBtn { flex: none; }
.NplPostNav { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 40px 0 0; }
.NplPn { display: grid; gap: 4px; padding: 16px 18px; border: 1px solid var(--line); border-radius: var(--radius);
  background: var(--surface); text-decoration: none; }
.NplPn:hover { border-color: color-mix(in srgb, var(--accent) 45%, var(--line)); }
.NplPn span { color: var(--ink-3); font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; }
.NplPn b { color: var(--ink); font-weight: 650; font-size: .95rem; line-height: 1.35; }
.NplPnNewer { text-align: right; }
.NplBackToNews { margin-top: 28px; }
.NplBackToNews a { color: var(--accent-strong); font-weight: 650; text-decoration: none; }

.NplSigUpdated { display: flex; align-items: center; gap: 8px; color: var(--ink-3); font-size: .85rem; margin: -10px 0 20px; }
.NplLiveDot { width: 9px; height: 9px; border-radius: 50%; background: #16a34a; box-shadow: 0 0 0 3px color-mix(in srgb, #16a34a 22%, transparent); }
.NplSignalfeed { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.NplSignalCard { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 18px 20px; box-shadow: var(--shadow); }
.NplCardsOutline .NplSignalCard { box-shadow: none; border-width: 1.5px; }
.NplCardsFlat .NplSignalCard { box-shadow: none; border: none; background: var(--surface-2); }
.NplSigTop { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.NplSigType { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--accent-strong);
  background: color-mix(in srgb, var(--accent) 13%, transparent); padding: 3px 9px; border-radius: 999px; }
.NplSigTop time { color: var(--ink-3); font-size: .78rem; }
.NplSigMarket { font-weight: 750; font-size: 1.1rem; color: var(--ink); margin-bottom: 10px; }
.NplSigDir { display: inline-block; font-size: .78rem; font-weight: 700; padding: 3px 11px; border-radius: 999px; margin-bottom: 14px; }
.NplSigBullish { color: #04512f; background: #bde9ce; }
.NplSigBearish { color: #7d2727; background: #f0c4c4; }
.NplSigWatch   { color: #6f4400; background: #f3dca2; }
.NplSigNeutral { color: var(--ink-2); background: var(--surface-2); }
.NplSigConf { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.NplScLabel { color: var(--ink-3); font-size: .74rem; text-transform: uppercase; letter-spacing: .04em; white-space: nowrap; }
.NplConfBar { flex: 1; height: 6px; border-radius: 3px; background: var(--surface-2); overflow: hidden; }
.NplConfFill { display: block; height: 100%; background: var(--accent); border-radius: 3px; }
.NplScVal { color: var(--ink); font-weight: 700; font-size: .82rem; white-space: nowrap; }
.NplSigNote { color: var(--ink-2); font-size: .9rem; margin: 0; }

.NplTokenHero { padding: 52px 0 44px; }
.NplThGrid { display: grid; grid-template-columns: .95fr 1.15fr; gap: 48px; align-items: center; }
.NplThCopy h1 { font-size: clamp(1.8rem, 3.6vw, 2.7rem); }
.NplThCopy .NplLead { max-width: 46ch; }
.NplThPanel .NplTokenwrap { margin: 0; }

.NplThPanel .NplTokenMetrics { grid-template-columns: repeat(2, 1fr); }
.NplThPanel .NplTkMetric:nth-child(3n) { border-right: 1px solid var(--line); }
.NplThPanel .NplTkMetric:nth-child(2n) { border-right: none; }
.NplThPanel .NplTkPx { font-size: clamp(1.6rem, 3vw, 2.2rem); }
.NplThPanel .NplTkUtility { display: none; }

.NplTkBadgeImg { background: #ffffff; border: 1px solid var(--line); overflow: hidden; }
.NplTkBadgeImg img { width: 100%; height: 100%; object-fit: contain; padding: 6px; }

.NplTokenwrap { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); overflow: hidden; }
.NplCardsOutline .NplTokenwrap { box-shadow: none; border-width: 1.5px; }
.NplCardsFlat .NplTokenwrap { box-shadow: none; }
.NplTokenHead { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap;
  padding: 26px 28px; background: radial-gradient(900px 260px at 92% -60%, color-mix(in srgb, var(--accent) 22%, transparent), transparent), var(--surface-2); border-bottom: 1px solid var(--line); }
.NplTkId { display: flex; align-items: center; gap: 14px; }
.NplTkBadge { width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; flex: none;
  background: var(--accent); color: var(--accent-ink); font-weight: 800; font-size: 1.4rem; }
.NplTkName { font-weight: 750; font-size: 1.15rem; color: var(--ink); }
.NplTkSym { color: var(--ink-3); font-size: .85rem; font-weight: 600; letter-spacing: .04em; }
.NplTkPrice { text-align: right; }
.NplTkPx { font-size: clamp(1.8rem, 4vw, 2.6rem); font-weight: 800; color: var(--ink); line-height: 1; }
.NplTkChg { font-weight: 700; font-size: .95rem; margin-top: 6px; }
.NplTkChg span { color: var(--ink-3); font-weight: 600; font-size: .78rem; }
.NplTkUp { color: #0a7d4d; }
.NplTkDown { color: #b4232a; }
.NplTokenMetrics { display: grid; grid-template-columns: repeat(3, 1fr); }
.NplTkMetric { padding: 20px 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.NplTkMetric:nth-child(3n) { border-right: none; }
.NplTkmLabel { display: block; color: var(--ink-3); font-size: .74rem; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 6px; }
.NplTkmVal { color: var(--ink); font-weight: 750; font-size: 1.15rem; }
.NplTkSupply { padding: 22px 28px; border-bottom: 1px solid var(--line); }
.NplTksHead { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 10px; font-size: .9rem; color: var(--ink-2); }
.NplTksHead b { color: var(--ink); font-weight: 700; }
.NplTksBar { height: 10px; border-radius: 6px; background: var(--surface-2); overflow: hidden; }
.NplTksFill { display: block; height: 100%; background: linear-gradient(90deg, var(--accent), var(--accent-strong)); border-radius: 6px; }
.NplTkUtility { padding: 24px 28px; }
.NplTkUtility h3 { margin: 0 0 14px; font-size: 1.05rem; }
.NplTkUtility ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.NplTkUtility li { display: flex; gap: 10px; align-items: flex-start; color: var(--ink-2); font-size: .95rem; }
.NplTkUtility li svg { flex: none; width: 18px; height: 18px; color: var(--accent-strong); margin-top: 2px; }

.NplSponsorRow { display: grid; grid-template-columns: 1.2fr .9fr; gap: 44px; align-items: center; }
.NplSponsorCopy h2 { margin-top: 0; }
.NplTpSponsored { text-align: center; color: var(--ink-3); font-size: .7rem; text-transform: uppercase; letter-spacing: .08em; margin: 12px 0 0; }

.NplMobileCta { display: none; }

.NplDrawer { display: none; }
@media (max-width: 860px) {
  .NplNav, .NplHeaderCta { display: none; }
  .NplBurger { display: inline-grid; place-items: center; }
  .NplGrid { grid-template-columns: repeat(2, 1fr); }
  .NplScorecards { grid-template-columns: repeat(2, 1fr); }
  .NplStatBand { grid-template-columns: repeat(2, 1fr); }
  .NplStatB:nth-child(2) { border-left: none; }
  .NplWhyReasons { grid-template-columns: 1fr; }
  .NplWhyShots { grid-template-columns: 1fr; }
  .NplHeroSplit { grid-template-columns: 1fr; gap: 28px; }
  .NplNewsfeed { grid-template-columns: 1fr; }
  .NplSponsorRow { grid-template-columns: 1fr; gap: 28px; }
  .NplSignalfeed { grid-template-columns: 1fr; }
  .NplTokenMetrics { grid-template-columns: repeat(2, 1fr); }
  .NplTkMetric:nth-child(3n) { border-right: 1px solid var(--line); }
  .NplTkMetric:nth-child(2n) { border-right: none; }
  .NplThGrid { grid-template-columns: 1fr; gap: 28px; }
  .NplNhGrid { grid-template-columns: 1fr; gap: 30px; }
  .NplNhSide { border-left: none; border-top: 1px solid var(--line); padding-left: 0; padding-top: 24px; }
  .NplPostNav { grid-template-columns: 1fr; }
  .NplPnNewer { text-align: left; }

  table.NplCmp { table-layout: auto; min-width: 860px; }
  .NplRankCard { grid-template-columns: 38px 1fr auto; grid-template-areas: "num brand right" "facts facts facts"; row-gap: 12px; }
  .NplRankNum { grid-area: num; } .NplRankBrand { grid-area: brand; } .NplRankRight { grid-area: right; } .NplRankFacts { grid-area: facts; }
  .NplMobileCta { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 38;
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
    background: color-mix(in srgb, var(--bg) 86%, transparent); backdrop-filter: saturate(140%) blur(10px);
    border-top: 1px solid var(--line); }
  .NplMobileCta .NplBtn { width: 100%; justify-content: center; }
  body { padding-bottom: 78px; }
  .NplDrawer[data-reveal="true"] { display: block; position: fixed; inset: 66px 0 0; background: var(--bg); z-index: 39; padding: 20px; }
  .NplDrawer a:not(.NplBtn) { display: block; padding: 14px 4px; border-bottom: 1px solid var(--line); color: var(--ink); text-decoration: none; font-weight: 600; }
  .NplDrawer .NplBtn { margin-top: 18px; width: 100%; justify-content: center; }
}
@media (max-width: 560px) {
  body { font-size: 16px; }

  .NplDSpacious .NplSection, .NplDCompact .NplSection, .NplSection { padding: 48px 0; }

  .NplDSpacious .NplPromoSec, .NplDCompact .NplPromoSec, .NplPromoSec { padding: 4px 0 16px; }
  .NplGrid { grid-template-columns: 1fr; }
  .NplCtaBand { padding: 32px 22px; }
}

.NplTablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 22px}
.NplScoresStandings{width:100%;border-collapse:collapse;font-size:14px;min-width:460px}
.NplScoresStandings th{text-align:right;padding:9px 10px;color:var(--ink-3);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--line)}
.NplScoresStandings th:nth-child(1),.NplScoresStandings th:nth-child(2){text-align:left}
.NplScoresStandings td{padding:9px 10px;text-align:right;border-bottom:1px solid var(--line);color:var(--ink-2);font-variant-numeric:tabular-nums}
.NplScoresStandings td.NplStPos{color:var(--ink-3);width:2em}
.NplScoresStandings td.NplStTeam{text-align:left;color:var(--ink);font-weight:600}
.NplScoresStandings td.NplStTeam span{display:inline-flex;align-items:center;gap:9px}
.NplScoresStandings td.NplStTeam img{width:20px;height:20px;object-fit:contain;flex:none;margin-right:9px}
.NplScoresStandings tbody tr:hover{background:var(--surface-2)}
.NplScoresCols{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.NplEsportLane{margin:0 0 26px}
.NplLaneH{font-size:18px;margin:0 0 12px;padding-bottom:7px;border-bottom:2px solid var(--accent);display:inline-block;color:var(--ink)}
.NplScoresH{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin:0 0 10px;font-weight:700}
.NplMatchList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.NplMatch{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;background:var(--surface)}
.NplMMeta{display:block;font-size:11.5px;color:var(--ink-3);margin-bottom:6px}
.NplMTeams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}
.NplMTeam{display:flex;align-items:center;gap:7px;min-width:0;font-weight:600;color:var(--ink);font-size:14px}
.NplMTeam.NplMAway{flex-direction:row-reverse;text-align:right}
.NplMTeam img{width:18px;height:18px;object-fit:contain;flex:none}
.NplMName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.NplMVs{font-size:11px;color:var(--ink-3);font-weight:600}
.NplMScore{font-weight:800;color:var(--accent-strong);font-variant-numeric:tabular-nums;white-space:nowrap}

.NplOddsTable{width:100%;border-collapse:collapse;font-size:14px;min-width:620px}
.NplOddsTable th{text-align:left;padding:10px 12px;color:var(--ink-3);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--line)}
.NplOddsTable td{padding:11px 12px;border-bottom:1px solid var(--line);color:var(--ink-2);vertical-align:middle}
.NplOddsTable tbody tr:hover{background:var(--surface-2)}
.NplOdQ{color:var(--ink);font-weight:600;max-width:340px}
.NplOdLead,.NplOdChance,.NplOdVol,.NplOdEnds{white-space:nowrap}
.NplOdVol,.NplOdEnds{font-variant-numeric:tabular-nums}
.NplOdChance .NplConfBar{display:inline-block;width:68px;vertical-align:middle;margin-right:8px}

@media(max-width:560px){
  .NplOddsTable{min-width:0;display:block;font-size:14px}
  .NplOddsTable thead{display:none}
  .NplOddsTable tbody,.NplOddsTable tr,.NplOddsTable td{display:block;width:auto}
  .NplOddsTable tr{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 12px;background:var(--surface)}
  .NplOddsTable tbody tr:hover{background:var(--surface)}
  .NplOddsTable td{border:0;padding:5px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;white-space:normal}
  .NplOddsTable td.NplOdQ{display:block;max-width:none;color:var(--ink);font-size:15px;font-weight:700;padding:0 0 8px;margin:0 0 6px;border-bottom:1px solid var(--line)}
  .NplOddsTable td::before{content:attr(data-th);color:var(--ink-3);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;flex:0 0 auto}
  .NplOddsTable td.NplOdQ::before{display:none}
  .NplOdLead,.NplOdChance,.NplOdVol,.NplOdEnds{white-space:normal;text-align:right}
  .NplOdLead{color:var(--ink);font-weight:600}
  .NplOdChance .NplConfBar{width:60px;margin-right:0}
}

@media(max-width:720px){.NplScoresCols{grid-template-columns:1fr;gap:18px}}

.NplScoresCols1{grid-template-columns:1fr}
.NplScoresCols1 .NplMatchList{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}
@media(max-width:700px){.NplScoresCols1 .NplMatchList{grid-template-columns:1fr}}

.NplInfoPage .NplInfoBody, .NplAuthorPage .NplProse{max-width:760px;margin:0 auto}
.NplInfoByline{color:var(--ink-3);font-size:14px;margin:-4px 0 22px}
.NplInfoByline a{color:var(--accent-strong);font-weight:600;text-decoration:none}
.NplInfoByline .NplIbRole,.NplInfoByline .NplIbDate{color:var(--ink-3)}
.NplInfoHero{margin:0 0 26px}
.NplInfoHero img{display:block;width:100%;height:auto;border-radius:10px}
.NplInfoBody h2{margin:30px 0 10px}
.NplInfoCta{margin:30px 0;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);text-align:center}
.NplAuthorBox{display:flex;gap:16px;align-items:flex-start;margin:34px 0 0;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.NplAuthorBox .NplAbName{margin:0 0 6px;font-weight:700}
.NplAuthorBox .NplAbName a{color:var(--ink);text-decoration:none}
.NplAuthorBox .NplAbRole{color:var(--ink-3);font-weight:500}
.NplAuthorBox .NplAbBio{margin:0;color:var(--ink-2);font-size:14.5px}
.NplAuthorMono{flex:none;width:52px;height:52px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  background:var(--accent);color:#fff;font-weight:800;font-size:19px;letter-spacing:.02em}
.NplAuthorMonoLg{width:72px;height:72px;font-size:26px}
.NplAuthorHead{display:flex;gap:18px;align-items:center;margin:0 0 18px}
.NplAuthorHead h1{margin:0}
.NplAuthorHead .NplAhRole{color:var(--ink-3);margin:4px 0 0}
.NplAhBio{font-size:16px;color:var(--ink-2)}
.NplAhExp{color:var(--ink-2);font-size:14.5px}
.NplAuthorArticles{padding-left:0}
.NplAuthorArticles li{margin:6px 0}
.NplAuthorArticles a{color:var(--accent-strong);text-decoration:none;font-weight:600}
.NplProse h2.NplAaHead{margin-top:36px}
.NplAuthorArticles.NplAaCollapsed .NplAaExtra{display:none}
.NplHubList{padding-left:20px}
.NplHubList li{margin:8px 0}
.NplHubList a{color:var(--accent-strong);text-decoration:none;font-weight:600}

.NplAuthorPhoto{flex:none;width:52px;height:52px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}
.NplAuthorPhotoLg{width:96px;height:96px}

.NplInfoBody p a{color:var(--accent-strong);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.NplInfoBody p a:hover{text-decoration-thickness:2px}

.NplRelated{margin-top:42px;border-top:1px solid var(--line);padding-top:24px}
.NplRelated>h2{margin:0 0 16px}
.NplRelatedGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.NplRelatedCard,.NplGuideCard{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease}
.NplRelatedCard:hover,.NplGuideCard:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.10)}
.NplRcThumb,.NplGcThumb{display:block;aspect-ratio:16/10;background:var(--surface-2);overflow:hidden}
.NplRcThumb img,.NplGcThumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.NplRcBody{padding:12px 14px 14px}
.NplRcTitle{display:block;font-weight:700;font-size:.98rem;line-height:1.3}
.NplRcMeta{display:block;margin-top:6px;color:var(--ink-3);font-size:13px}

.NplGuidesHead{max-width:640px}
.NplGuideGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:20px}
.NplGcBody{padding:12px 14px 14px}
.NplGcT{display:block;font-weight:700;line-height:1.3}
.NplGcMeta{display:block;margin-top:6px;color:var(--ink-3);font-size:13px}
.NplGuidesAll{margin-top:18px}
.NplGuidesAll a{color:var(--accent-strong);font-weight:600;text-decoration:none}

.NplHubHead{max-width:640px;margin-bottom:8px}
.NplHubGrid{display:grid;gap:16px;margin-top:22px}
.NplHubGuides{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}
.NplHubAuthors{grid-template-columns:repeat(auto-fill,minmax(310px,1fr))}
.NplHubCard{display:flex;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease}
.NplHubCard:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.10)}
.NplHubThumb{flex:none;width:92px;height:92px;border-radius:10px;overflow:hidden;background:var(--surface-2)}
.NplHubThumb img{width:100%;height:100%;object-fit:cover;object-position:top}
.NplHubMono{flex:none;width:64px;height:64px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-strong);font-weight:800;font-size:22px}
.NplHubCbody{display:flex;flex-direction:column}
.NplHubCt{font-weight:700;font-size:1.02rem;line-height:1.3}
.NplHubCsub{color:var(--accent-strong);font-weight:600;font-size:13px;margin-top:3px}
.NplHubCdesc{color:var(--ink-3);font-size:.9rem;margin-top:7px;line-height:1.5}
.NplHubCmeta{color:var(--ink-3);font-size:12px;margin-top:8px}

.NplEditorialNote{margin:16px 0 0;padding:12px 14px;border:1px dashed var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-3);font-size:13px;line-height:1.5}
.NplEditorialNote a{color:var(--accent-strong);text-decoration:underline;text-underline-offset:2px}

.NplFooterCols{display:flex;flex-wrap:wrap;gap:28px 56px;margin:18px 0 2px}
.NplFooterCol{min-width:180px}
.NplFooterCol .NplFcH{margin:0 0 10px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2,var(--ink-3))}
.NplFooterCol .NplFcH a{color:inherit;text-decoration:none}
.NplFooterCol .NplFcH a:hover{color:var(--accent-strong)}
.NplFooterCol ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.NplFooterCol li a{color:var(--ink-3);text-decoration:none;font-size:14px;line-height:1.35}
.NplFooterCol li a:hover{color:var(--accent-strong)}
@media(max-width:560px){.NplFooterCols{gap:22px 32px}.NplFooterCol{min-width:140px}}

@media(max-width:560px){
  .NplRelatedGrid,.NplGuideGrid{grid-template-columns:1fr}
  .NplHubGrid{grid-template-columns:1fr}
  .NplHubThumb{width:72px;height:72px}
  .NplAuthorPhotoLg{width:80px;height:80px}
}
