:root {
  --pn-ink: #14213d;
  --pn-muted: #607089;
  --pn-line: #d9e1ec;
  --pn-paper: #f4f7fb;
  --pn-surface: #ffffff;
  --pn-blue: #3257d5;
  --pn-blue-dark: #213b96;
  --pn-teal: #087f8c;
  --pn-amber: #d48a16;
  --pn-radius: 18px;
  --pn-shadow: 0 18px 52px rgba(20, 33, 61, .09);
}

[data-bs-theme="dark"] {
  --pn-ink: #edf2ff;
  --pn-muted: #a9b7cb;
  --pn-line: #344157;
  --pn-paper: #101724;
  --pn-surface: #192233;
  --pn-blue: #88a4ff;
  --pn-blue-dark: #b9c8ff;
  --pn-shadow: 0 18px 52px rgba(0, 0, 0, .22);
}

html { scroll-behavior: smooth; }
.pn2-search-facets{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 .5rem}.pn2-search-facets a{display:flex;gap:.5rem;align-items:center;padding:.5rem .8rem;border:1px solid var(--pn-line);border-radius:999px;color:var(--pn-ink);text-decoration:none;font-size:.8rem}.pn2-search-facets .is-current{color:var(--pn-surface);background:var(--pn-ink);border-color:var(--pn-ink)}.pn2-search-facets span{opacity:.75}.pn2-search-caption{color:var(--pn-muted);font-size:.75rem}.pn2-search-results{display:grid;gap:.75rem;margin-top:1rem}.pn2-search-results article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--pn-line);border-radius:10px;background:var(--pn-surface)}.pn2-search-results h3{font-size:1.1rem;margin:.35rem 0}.pn2-search-results h3 a{color:var(--pn-ink);text-decoration:none}.pn2-search-results p{color:var(--pn-muted);font-size:.85rem;line-height:1.6;margin:.4rem 0}.pn2-search-results small{color:var(--pn-muted)}.pn2-search-type{font-size:.68rem;font-weight:800;text-transform:uppercase;color:var(--pn-blue)}.pn2-search-open{color:var(--pn-blue);font-weight:750;white-space:nowrap}.pn2-reader-home{padding:1.1rem;margin-bottom:1rem;border:1px solid var(--pn-line);border-radius:12px;background:var(--pn-surface)}.pn2-reader-home>header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pn2-reader-home h2{font-size:1.25rem;margin:.2rem 0}.pn2-reader-home>header>a{font-size:.75rem;color:var(--pn-blue)}.pn2-reader-home>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:.8rem}.pn2-reader-home h3{color:var(--pn-muted);font-size:.72rem;text-transform:uppercase}.pn2-reader-home section>a{display:grid;gap:.3rem;padding:.65rem 0;border-top:1px solid var(--pn-line);text-decoration:none}.pn2-reader-home strong{color:var(--pn-ink);font-size:.85rem}.pn2-reader-home section>a>span{color:var(--pn-muted);font-size:.7rem;line-height:1.5}@media(max-width:600px){.pn2-search-results article,.pn2-reader-home>div{grid-template-columns:1fr}.pn2-reader-home>header{align-items:start;flex-direction:column}}
body.pn2-shell { background: var(--pn-paper); color: var(--pn-ink); }
.pn2-shell a { transition: color .18s ease, border-color .18s ease, background-color .18s ease, transform .18s ease; }
.pn2-skip-link { position: fixed; left: 1rem; top: -4rem; z-index: 10000; background: var(--pn-ink); color: #fff; padding: .75rem 1rem; border-radius: .5rem; }
.pn2-skip-link:focus { top: 1rem; color: #fff; }
.pn2-brand-header { background: var(--pn-surface); border-bottom: 1px solid var(--pn-line); }
.pn2-brand-row { min-height: 104px; display: flex; justify-content: space-between; align-items: center; gap: 2rem; }
.pn2-brand { display: inline-flex; align-items: center; gap: 1rem; color: var(--pn-ink); text-decoration: none; }
.pn2-logo-wrap img { max-width: 210px; max-height: 54px; object-fit: contain; }
.pn2-brand-copy { display: grid; line-height: 1.15; border-left: 1px solid var(--pn-line); padding-left: 1rem; }
.pn2-brand-copy strong { font-size: 1.02rem; letter-spacing: .03em; }
.pn2-brand-copy small { color: var(--pn-muted); margin-top: .3rem; }
.pn2-sticky-nav { z-index: 1019; box-shadow: 0 8px 24px rgba(20, 33, 61, .06); }
.pn2-research-nav { background: var(--pn-ink); }
.pn2-research-nav .container-xl { display: flex; gap: .25rem; overflow-x: auto; scrollbar-width: none; }
.pn2-research-nav a { color: #dfe7fb; text-decoration: none; font-size: .78rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; padding: .72rem .9rem; white-space: nowrap; border-bottom: 2px solid transparent; }
.pn2-research-nav a:hover, .pn2-research-nav a:focus { color: #fff; border-bottom-color: #92aaff; }
.pn2-shell #mega-menu-wrapper { background: var(--pn-surface); }

.pn2-hero { padding: clamp(3rem, 7vw, 7rem) 0 4rem; background: radial-gradient(circle at 80% 15%, rgba(50, 87, 213, .16), transparent 30%), linear-gradient(155deg, var(--pn-surface) 0%, var(--pn-paper) 72%); border-bottom: 1px solid var(--pn-line); }
.pn2-hero-grid { display: grid; grid-template-columns: minmax(0, .88fr) minmax(420px, 1.12fr); align-items: center; gap: clamp(2rem, 6vw, 6rem); }
.pn2-kicker { display: inline-block; color: var(--pn-blue); font-size: .76rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; margin-bottom: .8rem; }
.pn2-hero h1 { max-width: 12ch; font-size: clamp(2.8rem, 6vw, 5.7rem); line-height: .94; letter-spacing: -.055em; margin: 0 0 1.4rem; color: var(--pn-ink); }
.pn2-hero-copy > p { max-width: 56ch; color: var(--pn-muted); font-size: clamp(1.05rem, 1.7vw, 1.28rem); line-height: 1.7; }
.pn2-search { display: flex; margin: 2rem 0; padding: .38rem; border: 1px solid var(--pn-line); background: var(--pn-surface); border-radius: 12px; box-shadow: var(--pn-shadow); }
.pn2-search input { min-width: 0; flex: 1; padding: .8rem 1rem; border: 0; background: transparent; color: var(--pn-ink); outline: 0; }
.pn2-search button { border: 0; border-radius: 8px; padding: .78rem 1.15rem; background: var(--pn-blue); color: #fff; font-weight: 700; }
.pn2-snapshot { display: flex; gap: 2rem; margin: 0; }
.pn2-snapshot div { display: grid; }
.pn2-snapshot dt { font-size: 1.35rem; color: var(--pn-ink); }
.pn2-snapshot dd { margin: 0; color: var(--pn-muted); font-size: .78rem; }
.pn2-lead-card { overflow: hidden; border: 1px solid var(--pn-line); border-radius: var(--pn-radius); background: var(--pn-surface); box-shadow: var(--pn-shadow); }
.pn2-lead-image { display: block; position: relative; min-height: 280px; background: var(--pn-ink); }
.pn2-lead-image img { width: 100%; height: clamp(280px, 35vw, 430px); object-fit: cover; }
.pn2-lead-image > span { position: absolute; left: 1rem; top: 1rem; padding: .4rem .62rem; border-radius: 999px; background: rgba(20,33,61,.92); color: #fff; font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.pn2-lead-body { padding: clamp(1.3rem, 3vw, 2.3rem); }
.pn2-lead-body h2 { margin: .55rem 0 .8rem; font-size: clamp(1.55rem, 3vw, 2.45rem); line-height: 1.08; letter-spacing: -.025em; }
.pn2-lead-body h2 a, .pn2-research-card h3 a, .pn2-start-card h3 a { color: var(--pn-ink); text-decoration: none; }
.pn2-lead-body p, .pn2-research-card p, .pn2-start-card p { color: var(--pn-muted); line-height: 1.65; }
.pn2-topic { color: var(--pn-blue); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.pn2-topic-origins { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.pn2-topic-origins a { padding: .38rem .58rem; border: 1px solid var(--pn-line); border-radius: 999px; color: var(--pn-blue); background: var(--pn-surface); font-size: .68rem; font-weight: 750; text-decoration: none; }

.pn2-section { padding: clamp(3.6rem, 7vw, 6.5rem) 0; }
.pn2-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 2rem; margin-bottom: 2rem; }
.pn2-section-heading h2, .pn2-method h2, .pn2-nexus-teaser h2 { margin: 0; color: var(--pn-ink); font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.04em; }
.pn2-section-heading > p { max-width: 52ch; color: var(--pn-muted); line-height: 1.7; }
.pn2-section-heading > a { color: var(--pn-blue); font-weight: 700; text-decoration: none; white-space: nowrap; }
.pn2-start { background: var(--pn-surface); }
.pn2-start-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--pn-line); border-radius: var(--pn-radius); overflow: hidden; }
.pn2-start-card { min-width: 0; padding: 2rem; position: relative; }
.pn2-start-card + .pn2-start-card { border-left: 1px solid var(--pn-line); }
.pn2-step { display: block; color: var(--pn-line); font-size: 3.5rem; font-weight: 800; line-height: 1; margin-bottom: 1.5rem; }
.pn2-start-card h3 { font-size: 1.45rem; line-height: 1.2; margin: .6rem 0; }
.pn2-signal { background: #f0c35a; color: #342609; border-block: 1px solid #d8a62f; }
.pn2-signal .container-xl { display: flex; align-items: center; gap: 1rem; }
.pn2-signal .container-xl > span { white-space: nowrap; text-transform: uppercase; letter-spacing: .1em; font-size: .68rem; font-weight: 900; }
.pn2-research-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.2rem; }
.pn2-research-card { overflow: hidden; min-width: 0; background: var(--pn-surface); border: 1px solid var(--pn-line); border-radius: 14px; }
.pn2-research-card:hover { transform: translateY(-3px); box-shadow: var(--pn-shadow); }
.pn2-card-image { display: block; aspect-ratio: 1.65; overflow: hidden; background: var(--pn-ink); }
.pn2-card-image img { width: 100%; height: 100%; object-fit: cover; }
.pn2-card-body { padding: 1.25rem; }
.pn2-research-card h3 { margin: .5rem 0; font-size: 1.18rem; line-height: 1.25; }
.pn2-research-card p { font-size: .9rem; }
.pn2-empty-state { padding: 3rem; border: 1px dashed var(--pn-line); border-radius: var(--pn-radius); color: var(--pn-muted); background: var(--pn-surface); }
.pn2-method { background: var(--pn-ink); color: #fff; }
.pn2-method .pn2-kicker { color: #9fb4ff; }
.pn2-method h2 { color: #fff; max-width: 13ch; }
.pn2-method-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2rem, 8vw, 8rem); }
.pn2-method ol { list-style: none; counter-reset: method; margin: 0; padding: 0; }
.pn2-method li { counter-increment: method; display: grid; grid-template-columns: 2rem 8rem 1fr; gap: 1rem; padding: 1.2rem 0; border-top: 1px solid rgba(255,255,255,.2); }
.pn2-method li::before { content: "0" counter(method); color: #92aaff; font-weight: 800; }
.pn2-method li span { color: #bdc8da; }
.pn2-nexus-teaser { text-align: center; background: linear-gradient(145deg, rgba(50,87,213,.1), rgba(8,127,140,.08)); }
.pn2-object-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 1rem; margin: 2rem 0; }
.pn2-object-row span { padding: .7rem 1rem; border: 1px solid var(--pn-line); border-radius: 999px; background: var(--pn-surface); font-weight: 700; }

/* Existing article, account, payment and publishing views inherit the shell. */
.pn2-shell #postDetailsPage { padding-top: clamp(2.5rem, 6vw, 5rem); }
.pn2-shell #postDetailsPage .post-content { background: var(--pn-surface); border: 1px solid var(--pn-line); border-radius: var(--pn-radius); padding: clamp(1.25rem, 4vw, 3.25rem); box-shadow: 0 12px 40px rgba(20,33,61,.05); }
.pn2-shell .post-title { color: var(--pn-ink); font-size: clamp(2.2rem, 5vw, 4.6rem); line-height: 1.03; letter-spacing: -.045em; }
.pn2-shell .post-summary { color: var(--pn-muted); font-weight: 400; line-height: 1.6; }
.pn2-shell .entry-content { max-width: 76ch; margin-inline: auto; font-size: 1.08rem; line-height: 1.85; }
.pn2-shell .section-title { border-bottom-color: var(--pn-line); }
.pn2-reading-time { display: inline-flex; align-items: center; color: var(--pn-muted); font-size: .82rem; }

.pn2-footer { padding: 4rem 0 1.5rem; background: #0c1425; color: #b9c5d8; margin-bottom: 0; }
.pn2-footer-grid { display: grid; grid-template-columns: 1.2fr 1fr .7fr; gap: 4rem; }
.pn2-footer-wordmark { display: inline-block; margin-bottom: 1.2rem; color: #fff !important; }
.pn2-footer-wordmark img { width: auto; max-width: 210px; max-height: 48px; object-fit: contain; }
.pn2-footer strong { display: block; color: #fff; margin-bottom: 1rem; }
.pn2-footer p { line-height: 1.7; }
.pn2-footer ul { list-style: none; padding: 0; }
.pn2-footer li { margin: .55rem 0; }
.pn2-footer a { color: #dbe4f5; text-decoration: none; }
.pn2-footer-base { display: flex; justify-content: space-between; gap: 2rem; border-top: 1px solid #26344c; margin-top: 3rem; padding-top: 1.5rem; font-size: .82rem; }
.pn2-footer-base nav { display: flex; flex-wrap: wrap; gap: 1rem; }
.pn2-mobile-dock { position: fixed; z-index: 1025; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(64px, 1fr)); background: var(--pn-surface); border-top: 1px solid var(--pn-line); padding-bottom: env(safe-area-inset-bottom); box-shadow: 0 -8px 24px rgba(20,33,61,.1); }
.pn2-mobile-dock a, .pn2-mobile-dock button { min-width: 0; border: 0; background: transparent; color: var(--pn-muted); text-decoration: none; display: grid; place-items: center; gap: .08rem; padding: .52rem .15rem; }
.pn2-mobile-dock span { color: var(--pn-ink); font-size: 1.25rem; line-height: 1; }
.pn2-mobile-dock small { font-size: .62rem; }

/* Dashboard shell — compact, data-dense, and intentionally free of fake metrics. */
.pn2-shell > .pn2-appbar { position: sticky; top: 0; z-index: 1020; background: var(--pn-surface); border-bottom: 1px solid var(--pn-line); box-shadow: 0 6px 22px rgba(20,33,61,.05); }
.pn2-appbar-row { min-height: 64px; max-width: 1680px; margin: 0 auto; display: flex; align-items: center; gap: clamp(1rem, 2.2vw, 2.4rem); padding-inline: 1.5rem; }
.pn2-wordmark { flex: 0 0 auto; display: inline-flex; align-items: center; color: var(--pn-ink); text-decoration: none; white-space: nowrap; }
.pn2-wordmark img { width: auto; max-width: 165px; max-height: 36px; object-fit: contain; }
.pn2-primary-nav { align-self: stretch; display: flex; align-items: stretch; gap: .2rem; }
.pn2-primary-nav a { display: flex; align-items: center; color: var(--pn-ink); text-decoration: none; font-size: .78rem; font-weight: 700; padding: 0 .62rem; border-bottom: 2px solid transparent; }
.pn2-primary-nav a:hover, .pn2-primary-nav a:focus { color: var(--pn-blue); border-bottom-color: var(--pn-blue); }
.pn2-explore-menu { position: relative; align-self: center; }
.pn2-explore-menu summary { min-height: 64px; display: flex; align-items: center; gap: .28rem; padding: 0 .62rem; border-bottom: 2px solid transparent; color: var(--pn-ink); cursor: pointer; font-size: .78rem; font-weight: 700; list-style: none; }
.pn2-explore-menu summary::-webkit-details-marker { display: none; }
.pn2-explore-menu summary:hover, .pn2-explore-menu summary:focus-visible, .pn2-explore-menu[open] summary { color: var(--pn-blue); border-bottom-color: var(--pn-blue); outline: 0; }
.pn2-explore-panel { position: fixed; z-index: 1100; top: 65px; left: max(16px, calc((100vw - 980px) / 2)); width: min(980px, calc(100vw - 32px)); max-height: min(760px, calc(100vh - 84px)); max-height: min(760px, calc(100dvh - 84px)); box-sizing: border-box; overflow-y: auto; overflow-x: hidden; overscroll-behavior-y: contain; touch-action: pan-y; scrollbar-gutter: stable; display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1.2rem; padding: 1.1rem; border: 1px solid var(--pn-line); border-radius: 0 0 12px 12px; background: var(--pn-surface); box-shadow: 0 20px 45px rgba(20,33,61,.16); }
.pn2-explore-panel:focus-visible { outline: 2px solid var(--pn-blue); outline-offset: 2px; }
.pn2-explore-panel h2 { margin: 0 0 .45rem; color: var(--pn-muted); font-size: .62rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.pn2-explore-panel section > a { display: block; padding: .55rem 0; border: 0; border-top: 1px solid var(--pn-line); }
.pn2-explore-panel section > a:hover, .pn2-explore-panel section > a:focus { border-top-color: var(--pn-blue); }
.pn2-explore-panel strong, .pn2-explore-panel span { display: block; }
.pn2-explore-panel strong { color: var(--pn-ink); font-size: .72rem; }
.pn2-explore-panel span { margin-top: .18rem; color: var(--pn-muted); font-size: .6rem; font-weight: 500; line-height: 1.35; }
.pn2-explore-panel .pn2-explore-all { grid-column: 1/-1; display: block; padding: .85rem 1rem; border: 1px solid var(--pn-line); border-radius: 8px; background: var(--pn-paper); text-decoration: none; }
.pn2-explore-panel .pn2-explore-all:hover { border-color: var(--pn-blue); }

.pn2-explore-page { min-height: 70vh; padding-bottom: 4rem; background: var(--pn-paper); }
.pn2-explore-page>.container-fluid { max-width: 1320px; }
.pn2-explore-hero { padding: clamp(2rem,5vw,4rem); border-radius: 18px; color: #fff; background: radial-gradient(circle at 88% 0,rgba(8,127,140,.52),transparent 38%),linear-gradient(135deg,#07162f,#254a92); }
.pn2-explore-hero .pn2-kicker { color: #79d6de; }
.pn2-explore-hero h1 { margin: .45rem 0 .65rem; color: #fff; font-size: clamp(2.4rem,5vw,4.8rem); letter-spacing: -.055em; }
.pn2-explore-hero>p { max-width: 760px; color: #d0dcf0; line-height: 1.7; }
.pn2-explore-hero form { display: grid; grid-template-columns: minmax(0,1fr) auto; max-width: 820px; margin-top: 1.5rem; overflow: hidden; border-radius: 9px; background: #fff; }
.pn2-explore-hero input { min-width: 0; padding: 1rem; border: 0; outline: 0; }
.pn2-explore-hero button { border: 0; padding: 0 1.3rem; color: #fff; background: var(--pn-blue); font-weight: 800; }
.pn2-explore-group { margin-top: 1.25rem; padding: clamp(1rem,2.5vw,1.6rem); border: 1px solid var(--pn-line); border-radius: 14px; background: var(--pn-surface); }
.pn2-explore-group>header { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem; }
.pn2-explore-group h2 { margin: 0; font-size: 1.5rem; }
.pn2-explore-group>header>strong { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; color: #fff; background: var(--pn-blue); font-size: .72rem; }
.pn2-explore-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; }
.pn2-explore-grid>a { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: .8rem; align-items: start; padding: 1rem; border: 1px solid var(--pn-line); border-radius: 10px; color: inherit; text-decoration: none; }
.pn2-explore-grid>a:hover { border-color: var(--pn-blue); transform: translateY(-2px); }
.pn2-explore-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 9px; color: #fff; background: var(--pn-ink); font-size: .72rem; font-weight: 850; }
.pn2-explore-grid h3 { margin: 0 0 .35rem; font-size: .92rem; }
.pn2-explore-grid p { margin: 0 0 .55rem; color: var(--pn-muted); font-size: .68rem; line-height: 1.5; }
.pn2-explore-grid small { color: var(--pn-teal); font-size: .58rem; font-weight: 750; }
.pn2-explore-grid b { color: var(--pn-blue); }
@media(max-width:900px){.pn2-explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.pn2-explore-hero form,.pn2-explore-grid{grid-template-columns:1fr}.pn2-explore-hero button{min-height:48px}}
.pn2-appbar-actions { min-width: 0; margin-left: auto; display: flex; align-items: center; gap: .65rem; }
.pn2-header-search { width: clamp(190px, 18vw, 300px); height: 36px; display: flex; align-items: center; border: 1px solid var(--pn-line); border-radius: 8px; background: var(--pn-paper); overflow: hidden; }
.pn2-header-search input { min-width: 0; flex: 1; border: 0; outline: 0; padding: 0 .75rem; color: var(--pn-ink); background: transparent; font-size: .78rem; }
.pn2-header-search button { width: 36px; height: 36px; border: 0; background: transparent; color: var(--pn-muted); font-size: 1.1rem; }
.pn2-premium-link, .pn2-account-link, .pn2-admin-link { border: 0; border-radius: 8px; padding: .55rem .75rem; background: transparent; color: var(--pn-ink); font-size: .76rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.pn2-premium-link { background: var(--pn-blue); color: #fff; }
.pn2-admin-link { border: 1px solid var(--pn-line); color: var(--pn-blue); }

.pn2-market-pulse { border-bottom: 1px solid var(--pn-line); background: var(--pn-surface); }
.pn2-market-pulse > .container-fluid { max-width: 1680px; min-height: 66px; margin: 0 auto; display: grid; grid-template-columns: 96px minmax(0,1fr); align-items: stretch; padding-inline: 1.5rem; }
.pn2-market-pulse > .container-fluid > header { align-self: center; padding-right: .8rem; }
.pn2-market-pulse > .container-fluid > header span, .pn2-market-pulse > .container-fluid > header small { display: block; }
.pn2-market-pulse > .container-fluid > header span { color: var(--pn-ink); font-size: .62rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.pn2-market-pulse > .container-fluid > header small { margin-top: .2rem; color: var(--pn-muted); font-size: .52rem; line-height: 1.25; }
.pn2-market-pulse-grid { min-width: 0; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(128px,1fr); overflow-x: auto; }
.pn2-market-pulse-grid > a { min-width: 0; display: grid; align-content: center; padding: .72rem .8rem; border-left: 1px solid var(--pn-line); color: var(--pn-ink); text-decoration: none; }
.pn2-market-pulse-grid strong, .pn2-market-pulse-grid span, .pn2-market-pulse-grid small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pn2-market-pulse-grid strong { font-size: .67rem; }
.pn2-market-pulse-grid span { margin-top: .15rem; color: var(--pn-blue); font-size: .57rem; font-weight: 800; }
.pn2-market-pulse-grid small { margin-top: .14rem; color: var(--pn-muted); font-size: .52rem; }
.pn2-market-pulse-grid > a:hover strong { color: var(--pn-blue); }
.pn2-market-pulse-more { text-align: center; }

.pn2-dashboard { min-height: 70vh; padding: 1.5rem 0 2rem; background: var(--pn-paper); }
.pn2-dashboard > .container-fluid, .pn2-method-strip > .container-fluid { max-width: 1680px; margin: 0 auto; padding-inline: 1.5rem; }
.pn2-dashboard-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 1rem; }
.pn2-dashboard-heading .pn2-kicker { margin-bottom: .32rem; }
.pn2-dashboard-heading h1 { margin: 0; color: var(--pn-ink); font-size: clamp(1.8rem, 2.8vw, 2.7rem); letter-spacing: -.04em; }
.pn2-dashboard-heading p { margin: .3rem 0 0; color: var(--pn-muted); font-size: .88rem; }
.pn2-dashboard-heading .pn2-snapshot { margin: 0; }
.pn2-admin-home-action { align-self: center; padding: .65rem .85rem; border: 1px solid var(--pn-line); border-radius: 8px; color: var(--pn-blue); background: var(--pn-surface); font-size: .7rem; font-weight: 800; text-decoration: none; }
.pn2-admin-home-action:hover { border-color: var(--pn-blue); color: var(--pn-blue-dark); }
.pn2-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 1rem; align-items: start; }
.pn2-workspace { min-width: 0; display: grid; gap: 1rem; }
.pn2-feature-grid { min-width: 0; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(360px, .85fr); gap: 1rem; }
.pn2-lead-analysis { min-width: 0; min-height: 340px; display: grid; grid-template-columns: minmax(240px, .88fr) minmax(280px, 1.12fr); overflow: hidden; border-radius: 12px; background: #101c34; color: #fff; box-shadow: var(--pn-shadow); }
.pn2-lead-visual { order: 2; }
.pn2-lead-content { order: 1; }
.pn2-lead-visual { min-height: 100%; position: relative; overflow: hidden; background: radial-gradient(circle at 72% 30%, rgba(75,115,255,.45), transparent 22%), linear-gradient(145deg, transparent 49%, rgba(117,149,255,.24) 50%, transparent 51%), linear-gradient(28deg, #0b1529 0%, #17284c 58%, #24406f 100%); }
.pn2-lead-visual::after { content: ""; position: absolute; inset: 22% 9% 15%; opacity: .55; background: linear-gradient(164deg, transparent 45%, #78a0ff 46% 47%, transparent 48%), linear-gradient(188deg, transparent 55%, #30b6a7 56% 57%, transparent 58%); }
.pn2-lead-visual.has-image::after { display: none; }
.pn2-lead-visual img { width: 100%; height: 100%; object-fit: cover; opacity: .78; }
.pn2-lead-visual > span { position: absolute; z-index: 1; left: 1rem; top: 1rem; color: #dfe7ff; font-size: .67rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.pn2-lead-content { min-width: 0; padding: clamp(1.25rem, 2.5vw, 2.4rem); display: flex; flex-direction: column; justify-content: center; }
.pn2-lead-content .pn2-topic { color: #91adff; }
.pn2-lead-content h2 { margin: .55rem 0 .8rem; font-size: clamp(1.55rem, 2vw, 2.15rem); line-height: 1.05; letter-spacing: -.04em; }
.pn2-lead-content h2 a { color: #fff; text-decoration: none; }
.pn2-lead-content > p { color: #bfcbe0; line-height: 1.55; font-size: .82rem; }
.pn2-lead-footer { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; margin-top: 1rem; }
.pn2-lead-footer .post-meta { color: #aebbd0; }
.pn2-read-button { padding: .68rem .9rem; border: 1px solid rgba(255,255,255,.55); border-radius: 7px; color: #fff; text-decoration: none; font-size: .75rem; font-weight: 800; }
.pn2-read-button:hover { color: #101c34; background: #fff; }

.pn2-active-panel, .pn2-latest-panel, .pn2-path-panel, .pn2-my-nexus { background: var(--pn-surface); border: 1px solid var(--pn-line); border-radius: 12px; }
.pn2-active-panel { min-width: 0; padding: 1rem; }
.pn2-active-panel > header, .pn2-latest-panel > header, .pn2-my-nexus > header { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: .8rem; }
.pn2-active-panel h2, .pn2-latest-panel h2, .pn2-my-nexus h2, .pn2-path-panel h2 { margin: 0; color: var(--pn-ink); font-size: 1.06rem; letter-spacing: -.02em; }
.pn2-active-panel header > a, .pn2-latest-panel header > a, .pn2-my-nexus header > a { color: var(--pn-blue); text-decoration: none; font-size: .68rem; font-weight: 800; white-space: nowrap; }
.pn2-active-panel .pn2-kicker, .pn2-latest-panel .pn2-kicker, .pn2-my-nexus .pn2-kicker, .pn2-path-panel .pn2-kicker { margin: 0 0 .16rem; font-size: .58rem; }
.pn2-active-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); border: 1px solid var(--pn-line); border-radius: 9px; overflow: hidden; }
.pn2-active-grid article { min-width: 0; min-height: 142px; padding: .85rem; }
.pn2-active-grid article:nth-child(even) { border-left: 1px solid var(--pn-line); }
.pn2-active-grid article:nth-child(n+3) { border-top: 1px solid var(--pn-line); }
.pn2-active-icon { display: inline-grid; place-items: center; width: 25px; height: 25px; border-radius: 50%; color: #fff; background: var(--pn-blue); font-size: .6rem; font-weight: 900; }
.pn2-active-grid article:nth-child(2) .pn2-active-icon { background: var(--pn-teal); }
.pn2-active-grid article:nth-child(3) .pn2-active-icon { background: var(--pn-amber); }
.pn2-active-grid article:nth-child(4) .pn2-active-icon { background: #7656c8; }
.pn2-active-topic { margin-left: .4rem; color: var(--pn-muted); font-size: .58rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.pn2-active-grid h3 { margin: .62rem 0 .5rem; font-size: .9rem; line-height: 1.25; }
.pn2-active-grid h3 a { color: var(--pn-ink); text-decoration: none; }
.pn2-thesis-meter { height: 3px; margin: .65rem 0 .35rem; overflow: hidden; border-radius: 999px; background: var(--pn-line); }
.pn2-thesis-meter span { display: block; height: 100%; background: var(--pn-blue); }
.pn2-active-grid article > small { color: var(--pn-muted); font-size: .56rem; }

.pn2-forecast-panel { min-width: 0; padding: .85rem 1rem 1rem; border: 1px solid var(--pn-line); border-radius: 12px; background: var(--pn-surface); }
.pn2-forecast-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .7rem; }
.pn2-forecast-panel > header a { color: var(--pn-blue); text-decoration: none; font-size: .65rem; font-weight: 800; }
.pn2-forecast-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); border: 1px solid var(--pn-line); border-radius: 9px; overflow: hidden; }
.pn2-forecast-grid article { min-width: 0; padding: .78rem; }
.pn2-forecast-grid article + article { border-left: 1px solid var(--pn-line); }
.pn2-forecast-grid article > span { color: var(--pn-muted); font-size: .54rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.pn2-forecast-grid h3 { min-height: 2.5em; margin: .35rem 0 .65rem; font-size: .72rem; line-height: 1.25; }
.pn2-forecast-grid h3 a { color: var(--pn-ink); text-decoration: none; }
.pn2-forecast-grid dl { margin: 0; }
.pn2-forecast-grid dl div { display: flex; justify-content: space-between; gap: .5rem; padding-top: .32rem; border-top: 1px solid var(--pn-line); font-size: .55rem; }
.pn2-forecast-grid dt { color: var(--pn-muted); font-weight: 600; }
.pn2-forecast-grid dd { margin: 0; color: var(--pn-ink); font-weight: 850; text-align: right; }

.pn2-lower-grid { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) 270px; gap: 1rem; }
.pn2-latest-panel { min-width: 0; padding: 1rem; }
.pn2-compact-research-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .75rem; }
.pn2-compact-research-grid article { min-width: 0; overflow: hidden; border: 1px solid var(--pn-line); border-radius: 9px; background: var(--pn-surface); }
.pn2-compact-research-grid article > div { padding: .8rem; }
.pn2-compact-image { display: block; aspect-ratio: 1.75; background: #14213d; overflow: hidden; }
.pn2-compact-image img { width: 100%; height: 100%; object-fit: cover; }
.pn2-compact-research-grid h3 { margin: .35rem 0 .7rem; font-size: .9rem; line-height: 1.24; }
.pn2-compact-research-grid h3 a { color: var(--pn-ink); text-decoration: none; }
.pn2-compact-research-grid .pn2-topic { font-size: .58rem; }
.pn2-compact-research-grid .post-meta, .pn2-active-grid .post-meta { font-size: .61rem; }
.pn2-path-panel { padding: 1rem; }
.pn2-path-panel > p { color: var(--pn-muted); font-size: .75rem; line-height: 1.5; }
.pn2-path-panel ol { margin: 1rem 0; padding-left: 1.25rem; }
.pn2-path-panel li { padding: .45rem 0 .45rem .25rem; border-bottom: 1px solid var(--pn-line); font-size: .75rem; line-height: 1.35; }
.pn2-path-panel li a { color: var(--pn-ink); text-decoration: none; }
.pn2-path-button { display: block; padding: .7rem; border-radius: 7px; color: #fff; background: var(--pn-blue); text-align: center; text-decoration: none; font-size: .7rem; font-weight: 800; }

.pn2-my-nexus { position: sticky; top: 114px; overflow: hidden; }
.pn2-my-nexus > header { padding: 1rem; margin: 0; border-bottom: 1px solid var(--pn-line); }
.pn2-my-nexus > section { padding: 1rem; border-bottom: 1px solid var(--pn-line); }
.pn2-rail-label { display: block; margin-bottom: .42rem; color: var(--pn-muted); font-size: .58rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.pn2-my-nexus section > strong { display: block; color: var(--pn-ink); font-size: .88rem; }
.pn2-my-nexus section p { margin: .45rem 0 0; color: var(--pn-muted); font-size: .72rem; line-height: 1.55; }
.pn2-my-nexus section > a { display: inline-block; margin-top: .6rem; color: var(--pn-blue); font-size: .68rem; font-weight: 800; text-decoration: none; }
.pn2-rail-links { display: grid; }
.pn2-rail-links a { display: flex; justify-content: space-between; padding: .8rem 1rem; border-bottom: 1px solid var(--pn-line); color: var(--pn-ink); text-decoration: none; font-size: .74rem; }
.pn2-signin-card h3 { color: var(--pn-ink); font-size: 1.1rem; line-height: 1.25; }
.pn2-signin-card button { width: 100%; margin-top: .9rem; padding: .7rem; border: 0; border-radius: 7px; color: #fff; background: var(--pn-blue); font-size: .72rem; font-weight: 800; }
.pn2-rail-standard ul { margin: 0; padding-left: 1rem; color: var(--pn-muted); font-size: .72rem; }
.pn2-rail-standard li { margin: .42rem 0; }

.pn2-method-strip { padding: 1.15rem 0; border-block: 1px solid var(--pn-line); background: var(--pn-surface); }
.pn2-method-strip .container-fluid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; }
.pn2-method-strip article { min-width: 0; padding-left: 1rem; border-left: 2px solid var(--pn-line); }
.pn2-method-strip strong { display: block; color: var(--pn-ink); font-size: .76rem; }
.pn2-method-strip span { display: block; margin-top: .24rem; color: var(--pn-muted); font-size: .66rem; line-height: 1.45; }
.pn2-shell .mobile-header .header-logo img, .pn2-shell .custom-offcanvas .offcanvas-logo img { width: auto; max-width: 180px; max-height: 38px; object-fit: contain; }

/* Native market, trade research, and research discussion workspaces. */
.pn2-product-page { min-height: 75vh; padding: 1.2rem 0 4rem; color: var(--pn-ink); background: var(--pn-paper); }
.pn2-product-page > .container-fluid { max-width: 1680px; margin: 0 auto; padding-inline: 1.5rem; }
.pn2-product-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(240px,320px); align-items: center; gap: 2rem; padding: clamp(1.5rem,3vw,2.8rem); border-radius: 15px; color: #fff; background: radial-gradient(circle at 76% 30%,rgba(68,111,239,.4),transparent 30%),linear-gradient(135deg,#0b1529,#183263 70%,#154457); box-shadow: var(--pn-shadow); }
.pn2-community-hero { background: radial-gradient(circle at 76% 30%,rgba(28,177,156,.34),transparent 30%),linear-gradient(135deg,#0b1529,#1b3262 68%,#13515b); }
.pn2-product-hero h1 { margin: .35rem 0 .5rem; color: #fff; font-size: clamp(2.4rem,5vw,4.4rem); line-height: .98; letter-spacing: -.055em; }
.pn2-product-hero p { max-width: 68ch; margin: 0; color: #c7d2e7; line-height: 1.6; }
.pn2-product-hero .pn2-kicker { color: #9fb5e8; }
.pn2-product-hero-state { padding-left: 1.2rem; border-left: 1px solid rgba(255,255,255,.24); }
.pn2-product-hero-state span,.pn2-product-hero-state small,.pn2-product-hero-state strong { display: block; }
.pn2-product-hero-state span,.pn2-product-hero-state small { color: #aebdd9; font-size: .68rem; }
.pn2-product-hero-state strong { margin: .45rem 0; font-size: 1rem; }
.pn2-data-banner { display: flex; align-items: center; gap: .8rem; margin: 1rem 0; padding: .8rem 1rem; border: 1px solid #d6a92a; border-radius: 9px; color: #654700; background: #fff5cf; font-size: .72rem; line-height: 1.45; }
.pn2-data-banner strong { flex: 0 0 auto; padding: .25rem .45rem; border-radius: 5px; color: #fff; background: #9a6800; font-size: .6rem; letter-spacing: .06em; }
.pn2-data-banner.is-neutral { border-color: var(--pn-line); color: var(--pn-ink); background: var(--pn-surface); }
.pn2-data-banner.is-neutral strong { background: var(--pn-ink); }
.pn2-product-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 1rem 0; border: 1px solid var(--pn-line); border-radius: 11px; overflow: hidden; background: var(--pn-surface); }
.pn2-product-stats article { min-width: 0; padding: 1rem; }
.pn2-trade-filters > div { display: grid !important; grid-template-columns: minmax(220px,1fr) 170px 170px auto auto; gap: .55rem; }
.pn2-trade-filters select { min-width: 0; padding: .72rem .78rem; border: 1px solid var(--pn-line); border-radius: 7px; color: var(--pn-ink); background: var(--pn-surface); font-size: .75rem; }
.pn2-trade-decision-board { margin-bottom: 1rem; overflow: hidden; }
.pn2-trade-table { overflow-x: auto; border: 1px solid var(--pn-line); border-radius: 9px; }
.pn2-trade-row { min-width: 960px; display: grid; grid-template-columns: 1.05fr 2fr .62fr .62fr .72fr 1.35fr; align-items: center; gap: .75rem; padding: .82rem .9rem; border-top: 1px solid var(--pn-line); color: var(--pn-ink); text-decoration: none; }
.pn2-trade-row:first-child { border-top: 0; }
.pn2-trade-row:not(.is-heading):hover { background: color-mix(in srgb, var(--pn-blue) 6%, var(--pn-surface)); }
.pn2-trade-row > span { min-width: 0; display: grid; gap: .18rem; }
.pn2-trade-row strong { overflow: hidden; text-overflow: ellipsis; color: var(--pn-ink); font-size: .74rem; white-space: nowrap; }
.pn2-trade-row b { color: var(--pn-blue); font-size: 1rem; }
.pn2-trade-row small { overflow: hidden; text-overflow: ellipsis; color: var(--pn-muted); font-size: .62rem; white-space: nowrap; }
.pn2-trade-row.is-heading { border: 0; color: var(--pn-muted); background: var(--pn-paper); font-size: .58rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.pn2-product-stats article + article { border-left: 1px solid var(--pn-line); }
.pn2-product-stats span,.pn2-product-stats small,.pn2-product-stats strong { display: block; }
.pn2-product-stats span,.pn2-product-stats small { color: var(--pn-muted); font-size: .65rem; }
.pn2-product-stats strong { margin: .28rem 0; font-size: 1.05rem; }
.pn2-product-search { margin: 1rem 0; padding: .85rem 1rem; border: 1px solid var(--pn-line); border-radius: 10px; background: var(--pn-surface); }
.pn2-product-search > label { display: block; margin-bottom: .4rem; font-size: .68rem; font-weight: 800; }
.pn2-product-search > div { display: flex; gap: .5rem; }
.pn2-product-search input,.pn2-product-search select,.pn2-discussion-compose input,.pn2-discussion-compose select,.pn2-discussion-compose textarea,.pn2-reply-list input,.pn2-reply-list select { width: 100%; min-height: 42px; padding: .62rem .72rem; border: 1px solid var(--pn-line); border-radius: 7px; color: var(--pn-ink); background: var(--pn-paper); font-size: .75rem; }
.pn2-product-search select { max-width: 230px; }
.pn2-product-search button,.pn2-discussion-compose form > button,.pn2-reply-list form button { min-height: 42px; padding: .6rem 1rem; border: 0; border-radius: 7px; color: #fff; background: var(--pn-blue); font-size: .7rem; font-weight: 800; white-space: nowrap; }
.pn2-product-search a { align-self: center; color: var(--pn-blue); font-size: .7rem; text-decoration: none; }
.pn2-product-panel { min-width: 0; padding: 1rem; border: 1px solid var(--pn-line); border-radius: 12px; background: var(--pn-surface); }
.pn2-product-panel > header { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: .9rem; }
.pn2-product-panel > header h2 { margin: 0; font-size: 1.1rem; }
.pn2-product-panel > header .pn2-kicker { margin: 0 0 .15rem; font-size: .58rem; }
.pn2-product-panel > header > p { max-width: 50ch; margin: 0; color: var(--pn-muted); font-size: .68rem; text-align: right; }
.pn2-quote-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.pn2-quote-grid article { min-width: 0; padding: .9rem; border: 1px solid var(--pn-line); border-radius: 9px; }
.pn2-quote-grid article > header { display: flex; justify-content: space-between; gap: .7rem; }
.pn2-quote-grid article > header strong,.pn2-quote-grid article > header span { display: block; }
.pn2-quote-grid article > header strong { font-size: .85rem; }
.pn2-quote-grid article > header span { color: var(--pn-muted); font-size: .62rem; }
.pn2-state-badge { align-self: start; padding: .24rem .38rem; border-radius: 4px; color: #45526a; background: #edf1f7; font-size: .54rem; }
.pn2-state-badge.is-demo { color: #674800; background: #ffe8a0; }
.pn2-state-badge.is-live { color: #075840; background: #c9f3e6; }
.pn2-quote-value { margin: 1rem 0 .1rem; font-size: 1.45rem; font-weight: 850; letter-spacing: -.03em; }
.pn2-quote-change { color: #087c5e; font-size: .72rem; font-weight: 800; }
.pn2-quote-change.is-down,.pn2-market-pulse small .is-down { color: #b74444; }
.pn2-market-pulse small .is-up { color: #087c5e; }
.pn2-quote-grid footer { display: flex; justify-content: space-between; gap: .5rem; margin-top: .8rem; padding-top: .6rem; border-top: 1px solid var(--pn-line); color: var(--pn-muted); font-size: .56rem; }
.pn2-quote-grid article > a { display: inline-block; margin-top: .65rem; color: var(--pn-blue); font-size: .62rem; font-weight: 800; text-decoration: none; }
.pn2-product-columns { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.32fr); gap: 1rem; margin-top: 1rem; align-items: start; }
.pn2-signal-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.pn2-signal-list article { min-width: 0; padding: 1rem; border: 1px solid var(--pn-line); border-radius: 9px; }
.pn2-signal-heading { display: flex; align-items: center; gap: .4rem; color: var(--pn-muted); font-size: .58rem; font-weight: 800; text-transform: uppercase; }
.pn2-signal-heading span,.pn2-signal-heading b,.pn2-signal-heading em,.pn2-thread-meta span,.pn2-thread-meta b,.pn2-thread-meta em,.pn2-reply-list header em { padding: .24rem .4rem; border-radius: 4px; background: #edf1f7; font-style: normal; }
.pn2-signal-heading b { color: #0a5c47; background: #d5f3e8; }
.pn2-signal-heading em,.pn2-thread-meta em,.pn2-reply-list header em { color: #6a4900; background: #ffe6a0; }
.pn2-signal-list h3 { margin: .65rem 0 .45rem; font-size: 1rem; line-height: 1.25; }
.pn2-signal-list h3 a { color: var(--pn-ink); text-decoration: none; }
.pn2-signal-list p { color: var(--pn-muted); font-size: .72rem; line-height: 1.55; }
.pn2-signal-list footer { display: flex; justify-content: space-between; gap: .7rem; color: var(--pn-muted); font-size: .6rem; }
.pn2-provider-panel article { padding: .8rem 0; border-bottom: 1px solid var(--pn-line); }
.pn2-provider-panel article > div { display: flex; justify-content: space-between; gap: .6rem; }
.pn2-provider-panel article strong,.pn2-provider-panel article span { display: block; }
.pn2-provider-panel article strong { font-size: .76rem; }
.pn2-provider-panel article span,.pn2-provider-panel article small,.pn2-provider-panel article p { color: var(--pn-muted); font-size: .62rem; }
.pn2-provider-panel article > b { display: inline-block; margin-top: .4rem; color: var(--pn-blue); font-size: .56rem; }
.pn2-provider-panel article p { line-height: 1.45; }
.pn2-signal-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.34fr); gap: 2rem; padding: clamp(1.5rem,3vw,2.8rem); border-radius: 15px; color: #fff; background: linear-gradient(135deg,#0b1529,#183263 75%,#124654); }
.pn2-signal-hero h1 { margin: .7rem 0; color: #fff; font-size: clamp(2rem,4vw,3.6rem); line-height: 1; }
.pn2-signal-hero p { color: #c5d0e4; line-height: 1.6; }
.pn2-signal-hero dl { margin: 0; }
.pn2-signal-hero dl div { display: flex; justify-content: space-between; gap: 1rem; padding: .65rem 0; border-bottom: 1px solid rgba(255,255,255,.18); font-size: .7rem; }
.pn2-signal-hero dt { color: #aebbd3; }
.pn2-signal-hero dd { margin: 0; font-weight: 800; text-align: right; }
.pn2-signal-detail > article { padding: 1rem 0; border-bottom: 1px solid var(--pn-line); }
.pn2-signal-detail > article:first-child { padding-top: 0; }
.pn2-signal-detail h2 { margin: .25rem 0 .5rem; font-size: 1.15rem; }
.pn2-signal-detail p { color: var(--pn-muted); line-height: 1.7; }
.pn2-event-list { margin: .8rem 0 0; padding: 0; list-style: none; }
.pn2-event-list li { display: grid; grid-template-columns: 120px minmax(0,1fr) auto; gap: .7rem; padding: .7rem 0; border-top: 1px solid var(--pn-line); font-size: .68rem; }
.pn2-event-list span,.pn2-event-list time { color: var(--pn-muted); }
.pn2-community-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,.34fr); gap: 1rem; align-items: start; }
.pn2-thread-list article { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: .85rem; padding: 1rem 0; border-bottom: 1px solid var(--pn-line); }
.pn2-thread-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; color: #fff; background: #11213e; font-size: .7rem; font-weight: 900; }
.pn2-thread-meta { display: flex; gap: .35rem; color: var(--pn-muted); font-size: .55rem; font-weight: 800; text-transform: uppercase; }
.pn2-thread-meta b { color: #174ab3; background: #dfe8ff; }
.pn2-thread-list h3 { margin: .48rem 0 .35rem; font-size: 1rem; }
.pn2-thread-list h3 a { color: var(--pn-ink); text-decoration: none; }
.pn2-thread-list p { margin: 0; color: var(--pn-muted); font-size: .72rem; line-height: 1.5; }
.pn2-source-link { display: inline-block; margin-top: .5rem; color: var(--pn-blue); font-size: .64rem; font-weight: 750; text-decoration: none; }
.pn2-thread-list footer { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: .55rem; color: var(--pn-muted); font-size: .58rem; }
.pn2-discussion-compose { position: sticky; top: 114px; }
.pn2-discussion-compose form { display: grid; gap: .75rem; }
.pn2-discussion-compose label { display: grid; gap: .35rem; font-size: .68rem; font-weight: 750; }
.pn2-discussion-compose label small,.pn2-discussion-compose form > p { color: var(--pn-muted); font-size: .6rem; font-weight: 500; }
.pn2-discussion-compose textarea { min-height: 120px; resize: vertical; }
.pn2-thread-page { display: grid; gap: 1rem; }
.pn2-thread-original h1 { margin: .7rem 0; font-size: clamp(1.8rem,3vw,2.8rem); line-height: 1.08; }
.pn2-thread-original > p { color: var(--pn-ink); font-size: .86rem; line-height: 1.75; }
.pn2-thread-original > footer { display: flex; flex-wrap: wrap; gap: .8rem; color: var(--pn-muted); font-size: .64rem; }
.pn2-connected-source { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .25rem 1rem; margin-top: 1rem; padding: .8rem; border: 1px solid var(--pn-line); border-radius: 8px; color: var(--pn-ink); text-decoration: none; }
.pn2-connected-source span { grid-column: 1 / -1; color: var(--pn-muted); font-size: .58rem; text-transform: uppercase; }
.pn2-connected-source strong { font-size: .75rem; }
.pn2-connected-source b { color: var(--pn-blue); font-size: .65rem; }
.pn2-discussion-action { display: flex; justify-content: space-between; gap: 1rem; margin: .7rem 0 1rem; padding: .7rem .85rem; border: 1px solid var(--pn-line); border-radius: 8px; color: var(--pn-ink); background: var(--pn-surface); text-decoration: none; }
.pn2-discussion-action strong { font-size: .72rem; }
.pn2-discussion-action span { color: var(--pn-blue); font-size: .66rem; font-weight: 750; text-align: right; }
.pn2-reply-list > article { padding: 1rem 0; border-top: 1px solid var(--pn-line); }
.pn2-reply-list > article > header { display: flex; align-items: center; gap: .6rem; font-size: .67rem; }
.pn2-reply-list > article > header time { margin-left: auto; color: var(--pn-muted); }
.pn2-reply-list > article > p { color: var(--pn-ink); font-size: .78rem; line-height: 1.65; }
.pn2-reply-list details summary { color: var(--pn-muted); cursor: pointer; font-size: .6rem; }
.pn2-reply-list details form { display: grid; grid-template-columns: 160px minmax(0,1fr) auto; gap: .5rem; margin-top: .6rem; }
.pn2-reactions { display: flex; flex-wrap: wrap; gap: .35rem; margin: .65rem 0; }
.pn2-reactions form { margin: 0; }
.pn2-reactions button,.pn2-reactions span { min-height: 0; padding: .3rem .5rem; border: 1px solid var(--pn-line); border-radius: 999px; color: var(--pn-muted); background: var(--pn-paper); font-size: .56rem; }
.pn2-reactions button.is-active { color: #fff; border-color: var(--pn-blue); background: var(--pn-blue); }
.pn2-discussion-compose .pn2-subscribe-form { margin-bottom: 1rem; }
.pn2-discussion-compose .pn2-subscribe-form button { width: 100%; color: var(--pn-blue); border: 1px solid var(--pn-blue); background: transparent; }

@media (max-width: 991.98px) {
  .pn2-trade-filters > div { grid-template-columns:1fr 1fr; }
  .pn2-trade-filters input { grid-column:1/-1; }
  .pn2-product-hero,.pn2-signal-hero,.pn2-product-columns,.pn2-community-layout { grid-template-columns: 1fr; }
  .pn2-product-hero-state { padding: 1rem 0 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.2); }
  .pn2-quote-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pn2-discussion-compose { position: static; }
}
@media (max-width: 575.98px) {
  .pn2-trade-filters > div { grid-template-columns:1fr; }
  .pn2-trade-filters input { grid-column:auto; }
  .pn2-product-page > .container-fluid { padding-inline: .8rem; }
  .pn2-product-stats,.pn2-quote-grid,.pn2-signal-list { grid-template-columns: 1fr; }
  .pn2-product-stats article + article { border-left: 0; border-top: 1px solid var(--pn-line); }
  .pn2-product-search > div { display: grid; }
  .pn2-product-search select { max-width: none; }
  .pn2-product-panel > header,.pn2-data-banner { align-items: start; flex-direction: column; }
  .pn2-product-panel > header > p { text-align: left; }
  .pn2-event-list { font-size: .65rem; }
  .pn2-event-list li { grid-template-columns: 1fr; }
  .pn2-reply-list details form { grid-template-columns: 1fr; }
}

/* Feature-flagged PN2 research module surfaces. */
.pn2-module-page { min-height: 75vh; padding: 1.2rem 0 4rem; background: var(--pn-paper); }
.pn2-module-page > .container-fluid { max-width: 1680px; margin: 0 auto; padding-inline: 1.5rem; }
.pn2-breadcrumbs { display: flex; gap: .55rem; margin-bottom: 1rem; color: var(--pn-muted); font-size: .72rem; }
.pn2-breadcrumbs a { color: var(--pn-blue); text-decoration: none; }
.pn2-module-hero { display: grid; grid-template-columns: 70px minmax(0,1fr) minmax(220px,300px); gap: 1.2rem; align-items: center; padding: clamp(1.4rem,3vw,2.4rem); border-radius: 14px; color: #fff; background: radial-gradient(circle at 78% 25%,rgba(69,111,238,.42),transparent 28%),linear-gradient(135deg,#0b1529,#172a4d 72%,#153a4c); box-shadow: var(--pn-shadow); }
.pn2-module-mark { width: 64px; height: 64px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.28); border-radius: 16px; background: rgba(255,255,255,.08); font-size: 1.45rem; font-weight: 900; }
.pn2-module-meta { display: flex; gap: .65rem; color: #9fb4de; font-size: .65rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.pn2-module-meta b { padding: .25rem .45rem; border-radius: 999px; color: #13203b; background: #f0c35a; font-size: .57rem; }
.pn2-module-intro h1 { margin: .42rem 0 .35rem; color: #fff; font-size: clamp(2rem,4vw,3.7rem); line-height: 1; letter-spacing: -.05em; }
.pn2-module-intro p { max-width: 64ch; margin: 0; color: #c2cde0; line-height: 1.6; }
.pn2-module-state { padding-left: 1.1rem; border-left: 1px solid rgba(255,255,255,.22); }
.pn2-module-state span,.pn2-module-state small { display: block; color: #9fb0ca; font-size: .65rem; }
.pn2-module-state strong { display: block; margin: .35rem 0; font-size: .87rem; }
.pn2-module-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 1rem 0; border: 1px solid var(--pn-line); border-radius: 11px; overflow: hidden; background: var(--pn-surface); }
.pn2-module-stats article { min-width: 0; padding: 1rem; }
.pn2-module-stats article + article { border-left: 1px solid var(--pn-line); }
.pn2-module-stats span,.pn2-module-stats small { display: block; color: var(--pn-muted); font-size: .64rem; }
.pn2-module-stats strong { display: block; margin: .28rem 0; color: var(--pn-ink); font-size: .9rem; overflow-wrap: anywhere; }
.pn2-module-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.34fr); gap: 1rem; }
.pn2-module-panel,.pn2-data-preview,.pn2-module-explorer { border: 1px solid var(--pn-line); border-radius: 12px; background: var(--pn-surface); }
.pn2-module-panel,.pn2-data-preview,.pn2-module-explorer { padding: 1rem; }
.pn2-module-panel > header,.pn2-data-preview > header,.pn2-module-explorer > header { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: .8rem; }
.pn2-module-panel h2,.pn2-data-preview h2,.pn2-module-explorer h2 { margin: 0; color: var(--pn-ink); font-size: 1.08rem; }
.pn2-module-panel .pn2-kicker,.pn2-data-preview .pn2-kicker,.pn2-module-explorer .pn2-kicker { margin: 0 0 .15rem; font-size: .58rem; }
.pn2-lab-chip { padding: .28rem .46rem; border-radius: 5px; color: #5d3e00; background: #f0c35a; font-size: .58rem; font-weight: 900; }
.pn2-capability-list { border: 1px solid var(--pn-line); border-radius: 9px; overflow: hidden; }
.pn2-capability-list article { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: .75rem; padding: .78rem; }
.pn2-capability-list article + article { border-top: 1px solid var(--pn-line); }
.pn2-check-index { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; color: #fff; background: var(--pn-blue); font-size: .6rem; font-weight: 900; }
.pn2-capability-list strong,.pn2-capability-list small { display: block; }
.pn2-capability-list strong { color: var(--pn-ink); font-size: .78rem; }
.pn2-capability-list small { margin-top: .2rem; color: var(--pn-muted); font-size: .64rem; }
.pn2-check-state { color: var(--pn-teal); font-size: .56rem; font-weight: 900; }
.pn2-test-actions p,.pn2-action-result { color: var(--pn-muted); font-size: .74rem; line-height: 1.55; }
.pn2-test-actions label { display: block; margin-bottom: .4rem; font-size: .7rem; font-weight: 800; }
.pn2-test-actions textarea { width: 100%; padding: .7rem; border: 1px solid var(--pn-line); border-radius: 8px; color: var(--pn-ink); background: var(--pn-paper); }
.pn2-test-actions button,.pn2-primary-action,.pn2-secondary-action { display: block; width: 100%; margin-top: .7rem; padding: .68rem; border: 0; border-radius: 7px; color: #fff; background: var(--pn-blue); text-align: center; text-decoration: none; font-size: .7rem; font-weight: 800; }
.pn2-secondary-action { color: var(--pn-blue); background: transparent; border: 1px solid var(--pn-blue); }
.pn2-test-actions dl { margin: 1rem 0 0; border-top: 1px solid var(--pn-line); }
.pn2-test-actions dl div { display: flex; justify-content: space-between; gap: 1rem; padding: .52rem 0; border-bottom: 1px solid var(--pn-line); font-size: .64rem; }
.pn2-test-actions dt { color: var(--pn-muted); font-weight: 600; }
.pn2-test-actions dd { margin: 0; font-weight: 800; text-align: right; overflow-wrap: anywhere; }
.pn2-data-preview { margin-top: 1rem; }
.pn2-preview-table { border: 1px solid var(--pn-line); border-radius: 9px; overflow: hidden; }
.pn2-preview-row { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
.pn2-preview-head { background: var(--pn-paper); }
.pn2-preview-head span { padding: .68rem; color: var(--pn-muted); font-size: .6rem; font-weight: 900; text-transform: uppercase; }
.pn2-preview-empty { min-height: 150px; display: grid; place-items: center; padding: 1.2rem; text-align: center; }
.pn2-preview-empty strong { display: block; }
.pn2-preview-empty p { max-width: 68ch; margin: .35rem auto 0; color: var(--pn-muted); font-size: .72rem; }
.pn2-module-explorer { margin-top: 1rem; }
.pn2-module-explorer > h3 { margin: 1rem 0 .5rem; color: var(--pn-muted); font-size: .62rem; font-weight: 900; text-transform: uppercase; }
.pn2-module-card-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .55rem; }
.pn2-module-card { min-width: 0; display: grid; grid-template-columns: 30px minmax(0,1fr); align-items: center; gap: .6rem; padding: .68rem; border: 1px solid var(--pn-line); border-radius: 8px; color: var(--pn-ink); text-decoration: none; }
.pn2-module-card > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 7px; color: #fff; background: var(--pn-ink); font-size: .68rem; font-weight: 900; }
.pn2-module-card strong,.pn2-module-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pn2-module-card strong { font-size: .7rem; }.pn2-module-card small { color: var(--pn-muted); font-size: .55rem; }
.pn2-module-card:hover,.pn2-module-card.is-active { border-color: var(--pn-blue); }
.pn2-module-menu { color: var(--pn-ink); background: var(--pn-surface); }
.pn2-module-menu .offcanvas-header { border-bottom: 1px solid var(--pn-line); }
.pn2-module-menu nav { display: grid; grid-template-columns: 1fr 1fr; gap: .45rem; }
.pn2-module-menu nav a { padding: .7rem; border: 1px solid var(--pn-line); border-radius: 7px; color: var(--pn-ink); text-decoration: none; font-size: .7rem; font-weight: 750; }

@media (max-width:1399.98px) and (min-width:992px) {
  .pn2-appbar-row { gap:.65rem; padding-inline:.8rem; }
  .pn2-primary-nav a { padding-inline:.35rem; font-size:.66rem; }
  .pn2-explore-menu summary { padding-inline:.35rem; font-size:.66rem; }
  .pn2-header-search { width:160px; }
  .pn2-account-link { display:none; }
}

@media (max-width: 1199.98px) {
  .pn2-research-grid { grid-template-columns: repeat(3, 1fr); }
  .pn2-dashboard-grid { grid-template-columns: minmax(0,1fr) 270px; }
  .pn2-feature-grid { grid-template-columns: minmax(0,1.2fr) minmax(330px,.8fr); }
  .pn2-lead-analysis { grid-template-columns: 1fr; }
  .pn2-lead-visual { min-height: 180px; }
  .pn2-compact-research-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .pn2-forecast-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .pn2-forecast-grid article:nth-child(4) { border-left: 0; }
  .pn2-forecast-grid article:nth-child(n+4) { border-top: 1px solid var(--pn-line); }
}
@media (max-width: 991.98px) {
  .pn2-shell { padding-bottom: 63px; }
  .pn2-hero { padding-top: 3rem; }
  .pn2-hero-grid { grid-template-columns: 1fr; }
  .pn2-lead-card { max-width: 760px; }
  .pn2-start-grid { grid-template-columns: 1fr; }
  .pn2-start-card + .pn2-start-card { border-left: 0; border-top: 1px solid var(--pn-line); }
  .pn2-research-grid { grid-template-columns: repeat(2, 1fr); }
  .pn2-method-grid { grid-template-columns: 1fr; }
  .pn2-footer-grid { grid-template-columns: 1fr 1fr; }
  .pn2-dashboard-grid { grid-template-columns: 1fr; }
  .pn2-feature-grid { grid-template-columns: 1fr; }
  .pn2-lead-analysis { grid-template-columns: minmax(220px,.8fr) minmax(280px,1.2fr); }
  .pn2-my-nexus { position: static; }
  .pn2-method-strip .container-fluid { grid-template-columns: repeat(2,1fr); }
  .pn2-module-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .pn2-market-pulse > .container-fluid { padding-inline: .8rem; }
}
@media (max-width: 575.98px) {
  .pn2-hero h1 { font-size: 3rem; }
  .pn2-search { display: grid; }
  .pn2-search button { width: 100%; }
  .pn2-snapshot { gap: 1rem; justify-content: space-between; }
  .pn2-section-heading { display: block; }
  .pn2-section-heading > p, .pn2-section-heading > a { display: block; margin-top: 1rem; }
  .pn2-research-grid { grid-template-columns: 1fr; }
  .pn2-method li { grid-template-columns: 2rem 1fr; }
  .pn2-method li span { grid-column: 2; }
  .pn2-footer-grid { grid-template-columns: 1fr; gap: 2rem; }
  .pn2-footer-base { display: block; }
  .pn2-footer-base nav { margin-top: 1rem; }
  .pn2-dashboard { padding-top: 1rem; }
  .pn2-dashboard > .container-fluid, .pn2-method-strip > .container-fluid { padding-inline: .8rem; }
  .pn2-dashboard-heading { display: block; }
  .pn2-dashboard-heading .pn2-snapshot { margin-top: 1rem; }
  .pn2-lead-analysis { grid-template-columns: 1fr; }
  .pn2-lead-content { order: 1; }
  .pn2-lead-visual { order: 2; min-height: 190px; }
  .pn2-lead-content h2 { font-size: 2rem; }
  .pn2-active-grid { grid-template-columns: 1fr; }
  .pn2-active-grid article:nth-child(even) { border-left: 0; }
  .pn2-active-grid article:nth-child(n+2) { border-top: 1px solid var(--pn-line); }
  .pn2-lower-grid, .pn2-compact-research-grid { grid-template-columns: 1fr; }
  .pn2-forecast-grid { grid-template-columns: 1fr; }
  .pn2-forecast-grid article + article { border-left: 0; border-top: 1px solid var(--pn-line); }
  .pn2-method-strip .container-fluid { grid-template-columns: 1fr; }
  .pn2-module-page > .container-fluid { padding-inline: .8rem; }
  .pn2-module-hero { grid-template-columns: 52px minmax(0,1fr); padding: 1rem; }
  .pn2-module-mark { width: 48px; height: 48px; border-radius: 12px; }
  .pn2-module-state { grid-column: 1 / -1; padding: .8rem 0 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.22); }
  .pn2-module-stats { grid-template-columns: 1fr 1fr; }
  .pn2-module-stats article:nth-child(3) { border-left: 0; }
  .pn2-module-stats article:nth-child(n+3) { border-top: 1px solid var(--pn-line); }
  .pn2-module-grid { grid-template-columns: 1fr; }
  .pn2-capability-list article { grid-template-columns: 30px minmax(0,1fr); }
  .pn2-check-state { grid-column: 2; }
  .pn2-module-card-grid { grid-template-columns: 1fr 1fr; }
}

/* Database-backed PN2 records and evidence detail pages. */
.pn2-module-filter { margin-bottom: 1rem; padding: .85rem; border: 1px solid var(--pn-line); border-radius: 9px; background: var(--pn-paper); }
.pn2-module-filter > label { display: block; margin-bottom: .42rem; color: var(--pn-ink); font-size: .68rem; font-weight: 850; }
.pn2-module-filter > div { display: flex; gap: .5rem; }
.pn2-module-filter input { min-width: 0; flex: 1; padding: .72rem .8rem; border: 1px solid var(--pn-line); border-radius: 7px; color: var(--pn-ink); background: var(--pn-surface); }
.pn2-module-filter button,.pn2-module-filter a { display: inline-grid; place-items: center; padding: .7rem 1rem; border: 0; border-radius: 7px; color: #fff; background: var(--pn-blue); text-decoration: none; font-size: .7rem; font-weight: 850; }
.pn2-module-filter a { color: var(--pn-ink); background: var(--pn-surface); border: 1px solid var(--pn-line); }
.pn2-record-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; }
.pn2-record-card { min-width: 0; display: flex; flex-direction: column; padding: 1rem; border: 1px solid var(--pn-line); border-radius: 10px; background: var(--pn-surface); }
.pn2-record-meta { display: flex; align-items: center; justify-content: space-between; gap: .7rem; color: var(--pn-muted); font-size: .59rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.pn2-record-meta b { color: var(--pn-teal); }
.pn2-record-card h3 { margin: .72rem 0 .5rem; color: var(--pn-ink); font-size: 1rem; line-height: 1.28; }
.pn2-record-card h3 a { color: inherit; text-decoration: none; }
.pn2-record-card h3 a:hover { color: var(--pn-blue); }
.pn2-record-card > p { flex: 1; margin: 0; color: var(--pn-muted); font-size: .72rem; line-height: 1.58; }
.pn2-record-card footer { display: flex; justify-content: space-between; gap: .7rem; margin-top: 1rem; padding-top: .7rem; border-top: 1px solid var(--pn-line); color: var(--pn-muted); font-size: .6rem; }
.pn2-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; margin-top: 1rem; }
.pn2-pagination a { min-width: 34px; padding: .48rem; border: 1px solid var(--pn-line); border-radius: 6px; color: var(--pn-ink); background: var(--pn-surface); text-align: center; text-decoration: none; font-size: .68rem; font-weight: 800; }
.pn2-pagination a.is-current { color: #fff; border-color: var(--pn-blue); background: var(--pn-blue); }

.pn2-detail-page { min-height: 76vh; padding: 1.2rem 0 5rem; background: var(--pn-paper); }
.pn2-detail-page > .container-fluid { max-width: 1440px; margin: 0 auto; padding-inline: 1.5rem; }
.pn2-detail-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(250px,.35fr); gap: clamp(1.5rem,4vw,4rem); align-items: end; padding: clamp(1.5rem,4vw,3.8rem); border-radius: 16px; color: #fff; background: radial-gradient(circle at 80% 12%,rgba(57,181,168,.32),transparent 30%),linear-gradient(138deg,#0a1428,#172b4d 65%,#16414b); }
.pn2-detail-hero .pn2-kicker { color: #91adff; }
.pn2-detail-hero h1 { max-width: 24ch; margin: .6rem 0 .8rem; color: #fff; font-size: clamp(2.2rem,5vw,5rem); line-height: .98; letter-spacing: -.05em; }
.pn2-detail-hero > div > p { max-width: 70ch; margin: 0; color: #c5d0e2; font-size: clamp(.95rem,1.5vw,1.15rem); line-height: 1.65; }
.pn2-detail-hero > aside { padding: 1.15rem; border: 1px solid rgba(255,255,255,.2); border-radius: 10px; background: rgba(255,255,255,.06); }
.pn2-detail-hero > aside strong { display: block; font-size: .82rem; }
.pn2-detail-hero > aside p { margin: .5rem 0 0; color: #aebed5; font-size: .7rem; line-height: 1.55; }
.pn2-detail-badges { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1.25rem; }
.pn2-detail-badges span { padding: .35rem .58rem; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; color: #d7e1f1; font-size: .6rem; font-weight: 800; }
.pn2-detail-grid { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 1rem; align-items: start; margin-top: 1rem; }
.pn2-detail-content,.pn2-detail-rail > section { border: 1px solid var(--pn-line); border-radius: 12px; background: var(--pn-surface); }
.pn2-detail-content > section { padding: clamp(1.1rem,3vw,2rem); }
.pn2-detail-content > section + section { border-top: 1px solid var(--pn-line); }
.pn2-detail-content h2,.pn2-detail-rail h2 { margin: 0 0 1rem; color: var(--pn-ink); font-size: 1.2rem; }
.pn2-detail-content h3 { margin: 1.2rem 0 .4rem; color: var(--pn-ink); font-size: .8rem; }
.pn2-prose { color: var(--pn-ink); font-size: .9rem; line-height: 1.85; }
.pn2-detail-highlight { color: #fff; background: linear-gradient(135deg,#173664,#1f5480); }
.pn2-detail-highlight span { color: #a9c2f2; font-size: .62rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.pn2-detail-highlight p { margin: .7rem 0 0; font-size: 1.08rem; line-height: 1.65; }
.pn2-detail-caveats { border-left: 4px solid var(--pn-amber); }
.pn2-detail-caveats p { color: var(--pn-muted); font-size: .82rem; line-height: 1.7; }
.pn2-evidence-list { display: grid; gap: .55rem; }
.pn2-entity-coverage .pn2-evidence-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.pn2-entity-coverage .pn2-evidence-list>article{min-width:0;padding:1rem;border:1px solid var(--pn-line);border-radius:10px;background:var(--pn-surface)}
.pn2-entity-coverage .pn2-evidence-list h4{margin:0 0 .5rem;font-size:1rem;line-height:1.4}
.pn2-entity-coverage .pn2-evidence-list p{margin:.4rem 0;color:var(--pn-muted);font-size:.8rem}
.pn2-entity-coverage .pn2-evidence-list a{overflow-wrap:anywhere;color:var(--pn-blue)}
.pn2-entity-coverage .pn2-category-topics a{background:var(--pn-surface);border-color:var(--pn-line);color:var(--pn-ink)}
.pn2-entity-coverage h3{font-size:1rem;margin:1.5rem 0 .65rem}
@media(max-width:650px){.pn2-entity-coverage .pn2-evidence-list{grid-template-columns:1fr}}
.pn2-evidence-list > a { display: block; padding: .85rem; border: 1px solid var(--pn-line); border-radius: 8px; color: var(--pn-ink); text-decoration: none; }
.pn2-evidence-list strong,.pn2-evidence-list span,.pn2-evidence-list small { display: block; }
.pn2-evidence-list strong { font-size: .8rem; line-height: 1.4; }
.pn2-evidence-list span { margin-top: .35rem; color: var(--pn-teal); font-size: .62rem; font-weight: 800; }
.pn2-evidence-list small { margin-top: .45rem; color: var(--pn-muted); font-size: .68rem; line-height: 1.5; }
.pn2-detail-rail { display: grid; gap: 1rem; }
.pn2-detail-rail > section { padding: 1rem; }
.pn2-detail-rail dl,.pn2-source-facts { margin: 0; }
.pn2-detail-rail dl div,.pn2-source-facts div { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem 0; border-bottom: 1px solid var(--pn-line); font-size: .68rem; }
.pn2-detail-rail dt,.pn2-source-facts dt { color: var(--pn-muted); font-weight: 650; }
.pn2-detail-rail dd,.pn2-source-facts dd { margin: 0; color: var(--pn-ink); font-weight: 800; text-align: right; }
.pn2-rail-record { display: block; padding: .7rem 0; border-bottom: 1px solid var(--pn-line); color: var(--pn-ink); text-decoration: none; }
.pn2-rail-record strong,.pn2-rail-record span { display: block; }
.pn2-rail-record strong { font-size: .72rem; line-height: 1.4; }.pn2-rail-record span { margin-top: .25rem; color: var(--pn-muted); font-size: .6rem; }
.pn2-inline-action { width: auto; display: inline-block; padding-inline: 1rem; }

/* Typed topic, article-routing, thesis, forecast, and asset domains. */
.pn2-topic-page { min-height:76vh; padding:1.2rem 0 5rem; background:var(--pn-paper); }
.pn2-topic-page > .container-fluid { max-width:1440px; margin:0 auto; padding-inline:1.5rem; }
.pn2-topic-hero { padding:clamp(1.5rem,4vw,4rem); border-radius:16px; color:#fff; background:radial-gradient(circle at 86% 16%,rgba(49,190,176,.35),transparent 30%),linear-gradient(138deg,#09162b,#183968 67%,#155159); }
.pn2-topic-hero .pn2-kicker { color:#91adff; }
.pn2-topic-hero h1 { margin:.6rem 0; color:#fff; font-size:clamp(2.4rem,6vw,5.5rem); line-height:.95; letter-spacing:-.055em; }
.pn2-topic-hero > p { max-width:70ch; margin:0; color:#c9d5e8; font-size:1rem; line-height:1.7; }
.pn2-topic-section { margin-top:1rem; padding:clamp(1rem,3vw,2rem); border:1px solid var(--pn-line); border-radius:12px; background:var(--pn-surface); }
.pn2-topic-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; }
.pn2-topic-card { display:flex; min-width:0; flex-direction:column; padding:1rem; border:1px solid var(--pn-line); border-radius:9px; color:var(--pn-ink); text-decoration:none; background:var(--pn-paper); }
.pn2-topic-card > span { color:var(--pn-teal); font-size:.6rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.pn2-topic-card h3 { margin:.65rem 0 .5rem; color:var(--pn-ink); font-size:1rem; line-height:1.3; }
.pn2-topic-card p { flex:1; margin:0; color:var(--pn-muted); font-size:.72rem; line-height:1.6; }
.pn2-topic-card small { display:block; margin-top:.9rem; padding-top:.65rem; border-top:1px solid var(--pn-line); color:var(--pn-muted); font-size:.6rem; }

.pn2-article-context { display:grid; gap:1rem; margin:1.5rem 0; }
.pn2-article-taxonomy { padding:.9rem 1rem; border:1px solid var(--pn-line); border-radius:9px; background:var(--pn-paper); }
.pn2-article-taxonomy > span,.pn2-article-linked header > span { color:var(--pn-muted); font-size:.61rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.pn2-article-taxonomy > div { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.55rem; }
.pn2-article-taxonomy a { padding:.34rem .58rem; border-radius:999px; color:#1c467a; background:#e9f0fc; text-decoration:none; font-size:.65rem; font-weight:800; }
.pn2-article-continue { display:block; padding:1.2rem; border-radius:10px; color:#fff; text-decoration:none; background:radial-gradient(circle at 90% 20%,rgba(43,188,173,.35),transparent 33%),linear-gradient(135deg,#0b1b37,#193e6b); }
.pn2-article-continue > span { color:#8eb7f0; font-size:.61rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.pn2-article-continue strong { display:block; margin:.5rem 0; color:#fff; font-size:1.2rem; }
.pn2-article-continue p { margin:0; color:#c4d1e5; font-size:.75rem; line-height:1.6; }
.pn2-article-continue small { display:block; margin-top:.7rem; color:#74d8cf; font-weight:800; }
.pn2-article-linked { padding:1rem; border:1px solid var(--pn-line); border-radius:10px; background:var(--pn-surface); }
.pn2-article-linked header h2 { margin:.25rem 0 1rem; color:var(--pn-ink); font-size:1.25rem; }
.pn2-article-linked > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.pn2-article-linked a { display:flex; min-width:0; flex-direction:column; padding:.9rem; border:1px solid var(--pn-line); border-radius:8px; color:var(--pn-ink); text-decoration:none; }
.pn2-article-linked a > span { color:var(--pn-teal); font-size:.58rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.pn2-article-linked a strong { margin:.45rem 0; font-size:.86rem; line-height:1.4; }
.pn2-article-linked a p { flex:1; margin:0; color:var(--pn-muted); font-size:.68rem; line-height:1.5; }
.pn2-article-linked a small { margin-top:.7rem; color:var(--pn-muted); font-size:.6rem; }
.pn2-article-linked header p{margin:-.55rem 0 1rem;color:var(--pn-muted);font-size:.65rem;line-height:1.5}.pn2-more-sources{margin-top:.8rem}.pn2-more-sources summary{cursor:pointer;color:var(--pn-blue);font-size:.68rem;font-weight:850}.pn2-more-sources>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.8rem}

.pn2-domain-profile { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:0 !important; }
.pn2-domain-stat { padding:1rem; border-bottom:1px solid var(--pn-line); }
.pn2-domain-stat + .pn2-domain-stat { border-left:1px solid var(--pn-line); }
.pn2-domain-stat span,.pn2-domain-stat strong { display:block; }
.pn2-domain-stat span { color:var(--pn-muted); font-size:.59rem; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.pn2-domain-stat strong { margin-top:.35rem; color:var(--pn-ink); font-size:1.1rem; }
.pn2-domain-copy { grid-column:1/-1; padding:clamp(1.1rem,3vw,2rem); }
.pn2-domain-copy p { margin:.45rem 0 0; color:var(--pn-ink); font-size:.85rem; line-height:1.75; }
.pn2-domain-copy small { display:block; margin-top:.7rem; color:var(--pn-muted); }
.pn2-update-ledger { display:grid; }
.pn2-update-ledger article { display:grid; grid-template-columns:105px minmax(0,1fr); gap:1rem; padding:.9rem 0; border-top:1px solid var(--pn-line); }
.pn2-update-ledger article:first-child { border-top:0; padding-top:0; }
.pn2-update-ledger time { color:var(--pn-muted); font-size:.65rem; font-weight:800; }
.pn2-update-ledger strong,.pn2-update-ledger small { display:block; }
.pn2-update-ledger strong { color:var(--pn-ink); font-size:.78rem; line-height:1.45; }
.pn2-update-ledger p { margin:.4rem 0; color:var(--pn-muted); font-size:.7rem; line-height:1.5; }
.pn2-update-ledger small { color:var(--pn-teal); font-size:.61rem; font-weight:800; }

/* Private My Nexus workspace and reusable save/follow controls. */
.pn2-flash-wrap { max-width:1440px; margin:.8rem auto 0; padding-inline:1.5rem; }
.pn2-flash { display:flex; gap:.75rem; align-items:center; padding:.8rem 1rem; border:1px solid #acd9c9; border-radius:9px; color:#155e4b; background:#eaf8f2; font-size:.75rem; }
.pn2-flash.is-error { border-color:#efb7b7; color:#8b2828; background:#fff0f0; }
.pn2-flash strong { white-space:nowrap; }
[data-bs-theme="dark"] .pn2-flash { color:#b8f4df; background:#17352e; } [data-bs-theme="dark"] .pn2-flash.is-error { color:#ffc8c8; background:#3c2024; }
.pn2-workspace-actions { display:flex; flex-wrap:wrap; gap:.5rem; margin:.7rem 0 1rem; }
.pn2-workspace-actions form { margin:0; }
.pn2-workspace-action { display:inline-flex; align-items:center; gap:.42rem; min-height:36px; padding:.52rem .78rem; border:1px solid var(--pn-line); border-radius:8px; color:var(--pn-ink); background:var(--pn-surface); text-decoration:none; font-size:.66rem; font-weight:850; }
.pn2-workspace-action:hover { border-color:var(--pn-blue); color:var(--pn-blue); transform:translateY(-1px); }
.pn2-workspace-action.is-active { border-color:#9ddbd2; color:#087568; background:#e9f8f5; }
.pn2-workspace-action:disabled { opacity:1; cursor:default; transform:none; }
.pn2-workspace-action span { display:grid; width:18px; height:18px; place-items:center; border-radius:50%; background:var(--pn-paper); }
[data-bs-theme="dark"] .pn2-workspace-action.is-active { color:#8be0d4; background:#173a36; }
.pn2-notification-link { position:relative; display:grid; width:30px; height:30px; place-items:center; border:1px solid var(--pn-line); border-radius:50%; color:var(--pn-muted); text-decoration:none; }
.pn2-notification-link strong { position:absolute; right:-5px; top:-6px; display:grid; min-width:16px; height:16px; padding:0 3px; place-items:center; border-radius:999px; color:#fff; background:#d94f5c; font-size:.5rem; }

.pn2-account-page { min-height:78vh; padding:1rem 0 5rem; background:var(--pn-paper); }
.pn2-account-page > .container-fluid { max-width:1440px; margin:0 auto; padding-inline:1.5rem; }
.pn2-account-hero { display:flex; justify-content:space-between; gap:2rem; align-items:flex-end; padding:clamp(1.5rem,4vw,3.6rem); border-radius:16px; color:#fff; background:radial-gradient(circle at 78% 18%,rgba(66,201,185,.34),transparent 27%),linear-gradient(138deg,#09162b,#183963 65%,#14545a); }
.pn2-account-hero h1 { margin:.35rem 0 .7rem; color:#fff; font-size:clamp(2.5rem,6vw,5.6rem); line-height:.9; letter-spacing:-.06em; }
.pn2-account-hero p { max-width:64ch; margin:0; color:#c5d4e7; font-size:.88rem; line-height:1.65; }
.pn2-account-hero .pn2-kicker { color:#8fb9f5; }
.pn2-account-identity { display:flex; min-width:230px; gap:.75rem; align-items:center; padding:.8rem 1rem; border:1px solid rgba(255,255,255,.2); border-radius:10px; background:rgba(255,255,255,.07); }
.pn2-account-identity > span { display:grid; width:42px; height:42px; place-items:center; border-radius:50%; color:#fff; background:#3257d5; font-size:.7rem; font-weight:900; }
.pn2-account-identity strong,.pn2-account-identity small { display:block; }.pn2-account-identity strong { color:#fff; font-size:.75rem; }.pn2-account-identity small { margin-top:.25rem; color:#b9c9dc; font-size:.57rem; }
.pn2-account-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:.8rem 0; border:1px solid var(--pn-line); border-radius:11px; background:var(--pn-surface); }
.pn2-account-stats > div { display:grid; padding:1rem 1.2rem; }.pn2-account-stats > div + div { border-left:1px solid var(--pn-line); }
.pn2-account-stats span { color:var(--pn-muted); font-size:.58rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.pn2-account-stats strong { margin:.2rem 0; color:var(--pn-ink); font-size:1.7rem; line-height:1; }.pn2-account-stats small { color:var(--pn-muted); font-size:.58rem; }
.pn2-account-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(350px,.75fr); gap:.8rem; align-items:start; }
.pn2-account-main,.pn2-account-rail { display:grid; gap:.8rem; min-width:0; }
.pn2-account-panel { min-width:0; padding:clamp(1rem,2.5vw,1.6rem); border:1px solid var(--pn-line); border-radius:12px; background:var(--pn-surface); }
.pn2-account-panel > header { display:flex; justify-content:space-between; gap:1rem; align-items:end; margin-bottom:1rem; }
.pn2-account-panel > header h2 { margin:.2rem 0 0; color:var(--pn-ink); font-size:1.35rem; letter-spacing:-.03em; }
.pn2-account-panel > header p { max-width:48ch; margin:0; color:var(--pn-muted); font-size:.66rem; line-height:1.55; text-align:right; }
.pn2-account-create { margin:.75rem 0; border:1px solid var(--pn-line); border-radius:9px; background:var(--pn-paper); }
.pn2-account-create > summary { padding:.75rem .9rem; color:var(--pn-blue); cursor:pointer; font-size:.68rem; font-weight:900; list-style:none; }.pn2-account-create > summary::-webkit-details-marker { display:none; }
.pn2-account-form { display:grid; gap:.7rem; padding:.9rem; border-top:1px solid var(--pn-line); }
.pn2-account-form label { display:grid; gap:.3rem; margin:0; }.pn2-account-form label > span { color:var(--pn-muted); font-size:.58rem; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.pn2-account-form input,.pn2-account-form textarea,.pn2-account-form select,.pn2-add-record-form input,.pn2-add-record-form select { width:100%; min-width:0; border:1px solid var(--pn-line); border-radius:7px; padding:.62rem .7rem; color:var(--pn-ink); background:var(--pn-surface); font-size:.68rem; outline:0; }
.pn2-account-form input:focus,.pn2-account-form textarea:focus,.pn2-account-form select:focus,.pn2-add-record-form input:focus,.pn2-add-record-form select:focus { border-color:var(--pn-blue); box-shadow:0 0 0 3px rgba(50,87,213,.1); }
.pn2-account-form .pn2-check { display:flex; flex-direction:row; align-items:center; }.pn2-account-form .pn2-check input { width:auto; }.pn2-account-form .pn2-check span { text-transform:none; letter-spacing:0; }
.pn2-account-form button,.pn2-add-record-form button,.pn2-watchlist-settings button,.pn2-alert-stack button,.pn2-follow-grid button { border:0; border-radius:7px; padding:.62rem .8rem; color:#fff; background:var(--pn-blue); font-size:.62rem; font-weight:850; }
.pn2-account-form .pn2-primary-action { width:100%; text-align:center; }
.pn2-form-pair { display:grid; grid-template-columns:1fr 1fr; gap:.65rem; }
.pn2-watchlist-stack { display:grid; gap:.75rem; }
.pn2-watchlist-card { overflow:hidden; border:1px solid var(--pn-line); border-radius:10px; background:var(--pn-surface); }
.pn2-watchlist-card > header { display:flex; justify-content:space-between; gap:1rem; align-items:start; padding:1rem; background:linear-gradient(135deg,var(--pn-paper),var(--pn-surface)); }
.pn2-watchlist-card > header span { color:var(--pn-teal); font-size:.56rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.pn2-watchlist-card > header h3 { margin:.25rem 0; color:var(--pn-ink); font-size:1rem; }.pn2-watchlist-card > header p { margin:0; color:var(--pn-muted); font-size:.65rem; }
.pn2-watchlist-card > header > strong { display:grid; min-width:35px; height:35px; place-items:center; border-radius:50%; color:var(--pn-blue); background:var(--pn-surface); font-size:.8rem; box-shadow:0 5px 16px rgba(20,33,61,.08); }
.pn2-saved-records { border-top:1px solid var(--pn-line); }
.pn2-saved-record { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:.7rem; padding:.75rem 1rem; border-bottom:1px solid var(--pn-line); }
.pn2-saved-record > a { min-width:0; color:var(--pn-ink); text-decoration:none; }.pn2-saved-record span,.pn2-saved-record strong,.pn2-saved-record small { display:block; }
.pn2-saved-record span { color:var(--pn-teal); font-size:.54rem; font-weight:900; text-transform:uppercase; }.pn2-saved-record strong { margin:.2rem 0; overflow:hidden; text-overflow:ellipsis; font-size:.72rem; white-space:nowrap; }.pn2-saved-record small { color:var(--pn-muted); font-size:.58rem; }
.pn2-saved-record form { margin:0; }.pn2-saved-record button { width:26px; height:26px; border:1px solid var(--pn-line); border-radius:50%; color:var(--pn-muted); background:transparent; }
.pn2-account-empty { display:grid; gap:.25rem; padding:1rem; border-top:1px solid var(--pn-line); color:var(--pn-muted); font-size:.62rem; }.pn2-account-empty strong { color:var(--pn-ink); font-size:.68rem; }
.pn2-add-record-form { display:grid; grid-template-columns:minmax(160px,1.25fr) minmax(120px,1fr) auto; gap:.5rem; padding:.75rem 1rem; background:var(--pn-paper); }
.pn2-add-record-form label { margin:0; }.pn2-add-record-form button { min-width:58px; }
.pn2-watchlist-settings { padding:.6rem 1rem; border-top:1px solid var(--pn-line); }.pn2-watchlist-settings > summary { color:var(--pn-muted); cursor:pointer; font-size:.58rem; font-weight:800; }
.pn2-account-form.compact { grid-template-columns:1fr 1.4fr auto auto; align-items:end; margin-top:.55rem; padding:.7rem 0 0; border-top:0; }.pn2-account-form.compact button { height:34px; }
.pn2-delete-form { margin:.65rem 0 0; }.pn2-delete-form button { padding:0; color:#b43b3b; background:transparent; }
.pn2-follow-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.6rem; }
.pn2-follow-grid article { display:flex; justify-content:space-between; gap:.7rem; align-items:center; padding:.8rem; border:1px solid var(--pn-line); border-radius:8px; background:var(--pn-paper); }
.pn2-follow-grid a { min-width:0; color:var(--pn-ink); text-decoration:none; }.pn2-follow-grid span,.pn2-follow-grid strong,.pn2-follow-grid small { display:block; }.pn2-follow-grid span { color:var(--pn-teal); font-size:.53rem; font-weight:900; text-transform:uppercase; }.pn2-follow-grid strong { margin:.2rem 0; overflow:hidden; text-overflow:ellipsis; font-size:.7rem; white-space:nowrap; }.pn2-follow-grid small { color:var(--pn-muted); font-size:.54rem; }.pn2-follow-grid form { margin:0; }.pn2-follow-grid button { color:var(--pn-blue); background:transparent; border:1px solid var(--pn-line); }
.pn2-account-notice { margin:.7rem 0; padding:.8rem; border:1px solid #e8cf94; border-radius:8px; color:#76520d; background:#fff9e9; }.pn2-account-notice strong { display:block; font-size:.66rem; }.pn2-account-notice p { margin:.25rem 0 0; font-size:.59rem; line-height:1.5; }.pn2-account-notice.is-error { border-color:#efb7b7; color:#842727; background:#fff0f0; }
[data-bs-theme="dark"] .pn2-account-notice { color:#f2d491; background:#3d321c; }
.pn2-alert-stack { display:grid; gap:.55rem; margin-top:.8rem; }.pn2-alert-stack article { display:flex; justify-content:space-between; gap:.8rem; padding:.8rem; border:1px solid var(--pn-line); border-left:3px solid var(--pn-teal); border-radius:7px; }.pn2-alert-stack article.is-paused { border-left-color:var(--pn-muted); opacity:.75; }
.pn2-alert-stack span,.pn2-alert-stack strong,.pn2-alert-stack small { display:block; }.pn2-alert-stack span { color:var(--pn-teal); font-size:.52rem; font-weight:900; text-transform:uppercase; }.pn2-alert-stack strong { margin:.2rem 0; font-size:.69rem; }.pn2-alert-stack p { margin:0; color:var(--pn-muted); font-size:.58rem; }.pn2-alert-stack small { margin-top:.4rem; color:var(--pn-muted); font-size:.53rem; }.pn2-alert-stack article > div:last-child { display:flex; gap:.3rem; align-items:start; }.pn2-alert-stack form { margin:0; }.pn2-alert-stack button { padding:.4rem .5rem; color:var(--pn-muted); background:var(--pn-paper); border:1px solid var(--pn-line); }
.pn2-legacy-saves { display:grid; }.pn2-legacy-saves a { display:grid; gap:.2rem; padding:.7rem 0; border-top:1px solid var(--pn-line); color:var(--pn-ink); text-decoration:none; }.pn2-legacy-saves a:first-child { border-top:0; }.pn2-legacy-saves strong { font-size:.67rem; line-height:1.4; }.pn2-legacy-saves span { color:var(--pn-muted); font-size:.54rem; }
.pn2-notification-stack { display:grid; gap:.5rem; }
.pn2-notification-stack article { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.75rem; align-items:start; padding:.8rem; border:1px solid var(--pn-line); border-left:3px solid var(--pn-blue); border-radius:8px; background:var(--pn-paper); }
.pn2-notification-stack article.is-read { border-left-color:var(--pn-line); opacity:.72; }
.pn2-notification-stack a { color:var(--pn-ink); text-decoration:none; }.pn2-notification-stack span,.pn2-notification-stack strong,.pn2-notification-stack small { display:block; }
.pn2-notification-stack span { color:var(--pn-teal); font-size:.52rem; font-weight:900; text-transform:uppercase; }.pn2-notification-stack strong { margin:.2rem 0; font-size:.7rem; }.pn2-notification-stack p { margin:.2rem 0; color:var(--pn-muted); font-size:.59rem; line-height:1.45; }.pn2-notification-stack small { color:var(--pn-muted); font-size:.52rem; }
.pn2-notification-stack form { margin:0; }.pn2-notification-stack button,.pn2-mark-all { border:1px solid var(--pn-line); border-radius:6px; padding:.38rem .5rem; color:var(--pn-blue); background:var(--pn-surface); font-size:.55rem; font-weight:800; }
.pn2-notification-heading-action { display:flex; justify-content:space-between; gap:.75rem; align-items:center; margin-bottom:.8rem; }.pn2-notification-heading-action p { margin:0; color:var(--pn-muted); font-size:.6rem; }
.pn2-update-feed { display:grid; }
.pn2-update-feed > a { display:grid; grid-template-columns:90px minmax(0,1fr); gap:1rem; padding:.85rem 0; border-top:1px solid var(--pn-line); color:var(--pn-ink); text-decoration:none; }.pn2-update-feed > a:first-child { padding-top:0; border-top:0; }
.pn2-update-feed time { color:var(--pn-muted); font-size:.58rem; font-weight:800; }.pn2-update-feed span,.pn2-update-feed strong { display:block; }.pn2-update-feed span { color:var(--pn-teal); font-size:.54rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }.pn2-update-feed strong { margin:.2rem 0; font-size:.78rem; }.pn2-update-feed p { margin:0; color:var(--pn-muted); font-size:.63rem; line-height:1.5; }

@media (max-width: 991.98px) {
  .pn2-record-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pn2-detail-grid { grid-template-columns: 1fr; }
  .pn2-detail-hero { grid-template-columns: 1fr; }
  .pn2-topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pn2-account-grid { grid-template-columns:1fr; }
  .pn2-account-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pn2-account-form.compact { grid-template-columns:1fr 1fr; }
}
@media (max-width: 575.98px) {
  .pn2-module-filter > div { display: grid; }
  .pn2-record-grid { grid-template-columns: 1fr; }
  .pn2-detail-page > .container-fluid { padding-inline: .8rem; }
  .pn2-detail-hero { padding: 1.2rem; }
  .pn2-detail-hero h1 { font-size: 2.35rem; }
  .pn2-topic-page > .container-fluid { padding-inline:.8rem; }
  .pn2-topic-hero { padding:1.25rem; }
  .pn2-topic-grid,.pn2-article-linked > div { grid-template-columns:1fr; }
  .pn2-domain-profile { grid-template-columns:1fr; }
  .pn2-domain-stat + .pn2-domain-stat { border-left:0; }
  .pn2-update-ledger article { grid-template-columns:1fr; gap:.35rem; }
  .pn2-flash-wrap,.pn2-account-page > .container-fluid { padding-inline:.8rem; }
  .pn2-flash { align-items:flex-start; flex-direction:column; gap:.2rem; }
  .pn2-account-hero { align-items:stretch; flex-direction:column; padding:1.25rem; }
  .pn2-account-hero h1 { font-size:2.6rem; }.pn2-account-identity { min-width:0; }
  .pn2-account-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.pn2-account-stats > div:nth-child(3) { border-left:0; border-top:1px solid var(--pn-line); }.pn2-account-stats > div:nth-child(4) { border-top:1px solid var(--pn-line); }
  .pn2-account-panel > header { align-items:start; flex-direction:column; }.pn2-account-panel > header p { text-align:left; }
  .pn2-account-rail { grid-template-columns:1fr; }.pn2-follow-grid { grid-template-columns:1fr; }
  .pn2-add-record-form,.pn2-account-form.compact,.pn2-form-pair { grid-template-columns:1fr; }
  .pn2-alert-stack article { flex-direction:column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .pn2-shell *, .pn2-shell *::before, .pn2-shell *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
.pn2-persona-console{margin:0 0 22px;border:1px solid var(--pn2-border,#dce4ef);border-radius:14px;background:#fff;overflow:hidden}.pn2-persona-console>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid var(--pn2-border,#dce4ef)}.pn2-persona-console>header h2{margin:3px 0 0;font-size:1.15rem}.pn2-persona-console>header>a{font-weight:700;color:var(--pn2-primary,#3159d9)}.pn2-persona-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.pn2-persona-metrics>a{display:flex;min-height:116px;padding:18px 20px;flex-direction:column;border-right:1px solid var(--pn2-border,#dce4ef);color:inherit}.pn2-persona-metrics>a:last-child{border-right:0}.pn2-persona-metrics span,.pn2-personal-columns span{color:#58708f;font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.pn2-persona-metrics strong{margin:7px 0 4px;font-size:1.6rem;color:#102039}.pn2-persona-metrics small{color:#6c7c91}.pn2-member-console{background:linear-gradient(135deg,#f7f9ff,#fff)}.pn2-personal-columns{display:grid;grid-template-columns:1fr 1fr;gap:0}.pn2-personal-columns>div{padding:18px 20px}.pn2-personal-columns>div+div{border-left:1px solid var(--pn2-border,#dce4ef)}.pn2-personal-columns h3{font-size:.92rem;margin:0 0 10px}.pn2-personal-columns a{display:grid;gap:2px;padding:9px 0;border-top:1px solid #e8edf5;color:inherit}.pn2-personal-columns a:first-of-type{border-top:0}.pn2-personal-columns small,.pn2-personal-columns p{color:#6c7c91}@media(max-width:991px){.pn2-persona-metrics{grid-template-columns:1fr 1fr}.pn2-persona-metrics>a:nth-child(2){border-right:0}.pn2-persona-metrics>a:nth-child(-n+2){border-bottom:1px solid var(--pn2-border,#dce4ef)}}@media(max-width:640px){.pn2-persona-console>header{align-items:flex-start;flex-direction:column}.pn2-persona-metrics,.pn2-personal-columns{grid-template-columns:1fr}.pn2-persona-metrics>a{border-right:0;border-bottom:1px solid var(--pn2-border,#dce4ef)}.pn2-personal-columns>div+div{border-left:0;border-top:1px solid var(--pn2-border,#dce4ef)}}

/* Purpose-built module workspaces. These intentionally do not share one card grid. */
.pn2-module-hero.is-research{background:radial-gradient(circle at 78% 25%,rgba(62,121,255,.42),transparent 28%),linear-gradient(135deg,#08172f,#183f7b)}
.pn2-module-hero.is-forecast{background:radial-gradient(circle at 72% 18%,rgba(146,107,255,.34),transparent 30%),linear-gradient(135deg,#17122d,#372263)}
.pn2-module-hero.is-market{background:radial-gradient(circle at 78% 20%,rgba(13,184,166,.3),transparent 30%),linear-gradient(135deg,#071d28,#0b4c58)}
.pn2-module-hero.is-graph{background:radial-gradient(circle at 78% 20%,rgba(76,137,238,.35),transparent 30%),linear-gradient(135deg,#101a30,#273f69)}
.pn2-module-hero.is-evidence{background:radial-gradient(circle at 80% 18%,rgba(224,160,54,.28),transparent 30%),linear-gradient(135deg,#211a12,#594320)}
.pn2-module-hero.is-operations{background:radial-gradient(circle at 78% 22%,rgba(122,139,165,.32),transparent 30%),linear-gradient(135deg,#161d29,#344156)}
.pn2-purpose-empty{display:grid;place-items:center;min-height:210px;padding:2rem;text-align:center;border:1px dashed var(--pn-line);border-radius:10px;background:var(--pn-paper)}
.pn2-purpose-empty strong{font-size:1.05rem}.pn2-purpose-empty p{max-width:62ch;margin:.55rem auto 0;color:var(--pn-muted)}
.pn2-research-stream{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:1rem}.pn2-research-stream-lead{padding:clamp(1.4rem,3vw,2.5rem);border-radius:12px;color:#fff;background:linear-gradient(145deg,#101e38,#274b8a)}.pn2-research-stream-lead>span,.pn2-research-stream-list span{font-size:.69rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pn2-research-stream-lead h3{margin:.8rem 0;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.05}.pn2-research-stream-lead a{color:#fff}.pn2-research-stream-lead p{color:#dce7fb}.pn2-research-stream-lead footer{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;color:#b7c9ea}.pn2-research-stream-list{display:grid;border:1px solid var(--pn-line);border-radius:12px}.pn2-research-stream-list a{display:grid;gap:.25rem;padding:1rem;color:var(--pn-ink);border-top:1px solid var(--pn-line)}.pn2-research-stream-list a:first-child{border-top:0}.pn2-research-stream-list p{margin:0;color:var(--pn-muted)}
.pn2-forecast-ledger{display:grid;border:1px solid var(--pn-line);border-radius:12px;overflow:hidden}.pn2-forecast-ledger article{display:grid;grid-template-columns:54px minmax(0,1fr) 180px;gap:1rem;align-items:center;padding:1rem;border-top:1px solid var(--pn-line)}.pn2-forecast-ledger article:first-child{border-top:0}.pn2-forecast-sequence{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;font-weight:800;color:#fff;background:#6a4dcc}.pn2-forecast-ledger span{color:var(--pn-muted);font-size:.72rem;text-transform:uppercase}.pn2-forecast-ledger h3{margin:.2rem 0}.pn2-forecast-ledger p{margin:0;color:var(--pn-muted)}.pn2-forecast-ledger aside{display:grid;text-align:right}.pn2-forecast-ledger aside small{color:var(--pn-muted)}
.pn2-market-board{border:1px solid var(--pn-line);border-radius:12px;overflow:hidden}.pn2-market-board-head,.pn2-market-board>a{display:grid;grid-template-columns:minmax(170px,.9fr) minmax(240px,1.5fr) minmax(120px,.65fr) 110px;gap:1rem;align-items:center;padding:.9rem 1rem}.pn2-market-board-head{color:var(--pn-muted);background:var(--pn-paper);font-size:.68rem;font-weight:800;text-transform:uppercase}.pn2-market-board>a{color:var(--pn-ink);border-top:1px solid var(--pn-line)}.pn2-market-board>a:hover{background:var(--pn-paper)}.pn2-market-board>a span,.pn2-market-board>a time{color:var(--pn-muted)}
.pn2-graph-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.pn2-graph-directory>a{display:flex;min-height:210px;padding:1rem;flex-direction:column;color:var(--pn-ink);border:1px solid var(--pn-line);border-radius:12px;background:var(--pn-surface)}.pn2-graph-directory>a>div{display:grid;place-items:center;width:44px;height:44px;margin-bottom:1rem;border-radius:12px;color:#fff;background:#3159d9;font-weight:800}.pn2-graph-directory span{color:var(--pn-muted);font-size:.68rem;text-transform:uppercase}.pn2-graph-directory strong{font-size:1.05rem;margin:.2rem 0}.pn2-graph-directory p{color:var(--pn-muted);flex:1}.pn2-graph-directory small{color:var(--pn-blue);font-weight:700}
.pn2-evidence-ledger{display:grid;border:1px solid var(--pn-line);border-radius:12px;overflow:hidden}.pn2-evidence-ledger article{display:grid;grid-template-columns:110px minmax(0,1fr) 160px;gap:1rem;padding:1rem;border-top:1px solid var(--pn-line)}.pn2-evidence-ledger article:first-child{border-top:0}.pn2-evidence-ledger>article>span{color:#9c6a13;font-size:.7rem;font-weight:800;text-transform:uppercase}.pn2-evidence-ledger h3{margin:0 0 .3rem}.pn2-evidence-ledger p{margin:0;color:var(--pn-muted)}.pn2-evidence-ledger aside{display:grid;align-content:start;text-align:right}.pn2-evidence-ledger aside small{color:var(--pn-muted)}
.pn2-nexus-search,.pn2-question-workspace{padding:clamp(1.25rem,3vw,2.2rem);border-radius:12px;background:linear-gradient(135deg,#edf3ff,var(--pn-surface))}.pn2-nexus-search label,.pn2-question-workspace>label{display:block;margin-bottom:.8rem;font-size:1rem;font-weight:800}.pn2-nexus-search>div{display:flex;gap:.5rem}.pn2-nexus-search input,.pn2-question-workspace textarea{width:100%;padding:.9rem 1rem;border:1px solid var(--pn-line);border-radius:8px;background:var(--pn-surface);color:var(--pn-ink)}.pn2-nexus-search button,.pn2-question-workspace button{padding:.8rem 1.1rem;border:0;border-radius:8px;background:var(--pn-blue);color:#fff;font-weight:800}.pn2-question-workspace>div{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0}.pn2-question-workspace>div span{padding:.4rem .6rem;border-radius:99px;background:var(--pn-surface);color:var(--pn-muted);font-size:.72rem}.pn2-workspace-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}.pn2-workspace-results a{display:flex;min-height:170px;padding:1rem;flex-direction:column;color:var(--pn-ink);border:1px solid var(--pn-line);border-radius:10px}.pn2-workspace-results span{font-size:.68rem;color:var(--pn-blue);text-transform:uppercase}.pn2-workspace-results p{color:var(--pn-muted);flex:1}
.pn2-operations-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.pn2-operations-grid article{display:grid;min-height:140px;padding:1rem;align-content:start;border:1px solid var(--pn-line);border-radius:10px;background:var(--pn-paper)}.pn2-operations-grid article span{color:var(--pn-blue);font-weight:800}.pn2-operations-grid article strong{margin:.6rem 0}.pn2-operations-grid article small{color:var(--pn-muted)}.pn2-operations-list{display:grid;margin-top:1rem;border:1px solid var(--pn-line);border-radius:10px}.pn2-operations-list article{display:grid;grid-template-columns:minmax(0,1fr) 220px 120px;gap:1rem;padding:.8rem 1rem;border-top:1px solid var(--pn-line)}.pn2-operations-list article:first-child{border-top:0}
[data-bs-theme="dark"] .pn2-persona-console{background:var(--pn-surface)}[data-bs-theme="dark"] .pn2-persona-metrics strong{color:var(--pn-ink)}[data-bs-theme="dark"] .pn2-member-console,[data-bs-theme="dark"] .pn2-nexus-search,[data-bs-theme="dark"] .pn2-question-workspace{background:linear-gradient(135deg,#172239,var(--pn-surface))}
@media(max-width:991px){.pn2-research-stream{grid-template-columns:1fr}.pn2-graph-directory,.pn2-operations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pn2-market-board-head,.pn2-market-board>a{grid-template-columns:minmax(150px,.8fr) minmax(220px,1.2fr) 110px}.pn2-market-board-head span:last-child,.pn2-market-board>a time{display:none}}
@media(max-width:700px){.pn2-forecast-ledger article,.pn2-evidence-ledger article{grid-template-columns:44px minmax(0,1fr)}.pn2-forecast-ledger aside,.pn2-evidence-ledger aside{grid-column:2;text-align:left}.pn2-graph-directory,.pn2-workspace-results,.pn2-operations-grid{grid-template-columns:1fr}.pn2-market-board-head{display:none}.pn2-market-board>a{grid-template-columns:1fr}.pn2-nexus-search>div{flex-direction:column}.pn2-operations-list article{grid-template-columns:1fr}}

/* Reader-first PN2 module and My Nexus entry surfaces. */
.pn2-module-hero-simple{grid-template-columns:70px minmax(0,1fr) auto;margin-bottom:1rem;box-shadow:none}
.pn2-module-hero-simple .pn2-module-intro>small{display:block;max-width:74ch;margin-top:.75rem;color:#9fb4d6;line-height:1.55}
.pn2-module-count{min-width:150px;padding-left:1.25rem;border-left:1px solid rgba(255,255,255,.2);text-align:right}
.pn2-module-count strong,.pn2-module-count span{display:block}.pn2-module-count strong{font-size:1.8rem}.pn2-module-count span{color:#aebed5;font-size:.64rem;text-transform:uppercase;letter-spacing:.06em}
.pn2-pagination-compact{align-items:center}.pn2-pagination-compact>span{color:var(--pn-muted)}
.pn2-related-destinations{margin-top:1.2rem;padding:clamp(1rem,2vw,1.5rem);border:1px solid var(--pn-line);border-radius:12px;background:var(--pn-surface)}
.pn2-related-destinations>header{display:flex;align-items:end;gap:.7rem 1.2rem;flex-wrap:wrap;margin-bottom:1rem}.pn2-related-destinations h2{margin:0;font-size:1.12rem}.pn2-related-destinations header>p{margin:0 0 .05rem auto;color:var(--pn-muted);font-size:.7rem}.pn2-related-destinations .pn2-kicker{width:100%;margin:0}
.pn2-related-destinations>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.pn2-related-destinations a{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.9rem;border:1px solid var(--pn-line);border-radius:9px;color:var(--pn-ink);text-decoration:none}.pn2-related-destinations a:hover{border-color:var(--pn-blue);transform:translateY(-1px)}.pn2-related-destinations a>span{display:grid;width:36px;height:36px;place-items:center;border-radius:8px;color:#fff;background:var(--pn-ink);font-weight:850}.pn2-related-destinations strong,.pn2-related-destinations small{display:block}.pn2-related-destinations strong{font-size:.75rem}.pn2-related-destinations small{margin-top:.2rem;color:var(--pn-muted);font-size:.59rem;line-height:1.4}.pn2-related-destinations b{color:var(--pn-blue)}
.pn2-admin-diagnostics{margin-top:1rem;padding:.8rem 1rem;border:1px dashed var(--pn-line);border-radius:9px;color:var(--pn-muted);font-size:.64rem}.pn2-admin-diagnostics summary{cursor:pointer;font-weight:850}.pn2-admin-diagnostics>div{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--pn-line)}.pn2-admin-diagnostics>a{display:inline-block;margin-top:.7rem;color:var(--pn-blue);font-weight:800}
.pn2-workspace-guest{padding-bottom:4rem}.pn2-workspace-welcome{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);overflow:hidden;border-radius:16px;color:#fff;background:radial-gradient(circle at 82% 18%,rgba(74,118,241,.38),transparent 30%),linear-gradient(135deg,#08152b,#172d57)}
.pn2-workspace-welcome-copy{padding:clamp(1.6rem,5vw,4rem)}.pn2-workspace-welcome h1{max-width:14ch;margin:.65rem 0 1rem;color:#fff;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.98;letter-spacing:-.055em}.pn2-workspace-welcome-copy>p{max-width:58ch;color:#c5d2e7;font-size:1rem;line-height:1.7}.pn2-workspace-welcome-copy>small{display:block;margin-top:1rem;color:#92a8c9}
.pn2-workspace-welcome-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.4rem}.pn2-workspace-welcome-actions .pn2-primary-action,.pn2-workspace-welcome-actions .pn2-secondary-action{width:auto;min-width:150px;margin:0;padding:.82rem 1rem}.pn2-workspace-welcome-actions .pn2-secondary-action{color:#fff;border-color:rgba(255,255,255,.45)}
.pn2-workspace-preview{display:grid;align-content:center;padding:clamp(1.2rem,3vw,2.5rem);background:rgba(255,255,255,.055)}.pn2-workspace-preview>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.2rem .8rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.15)}.pn2-workspace-preview>div:first-child{border-top:0}.pn2-workspace-preview span{grid-row:1/3;display:grid;width:32px;height:32px;place-items:center;border-radius:50%;color:#fff;background:var(--pn-blue);font-size:.6rem;font-weight:900}.pn2-workspace-preview strong{font-size:.82rem}.pn2-workspace-preview p{margin:.25rem 0 0;color:#aebed5;font-size:.67rem;line-height:1.5}
.pn2-workspace-how{margin-top:1rem;padding:clamp(1.2rem,3vw,2.2rem);border:1px solid var(--pn-line);border-radius:13px;background:var(--pn-surface)}.pn2-workspace-how>header{max-width:780px}.pn2-workspace-how h2{margin:.35rem 0;font-size:1.45rem}.pn2-workspace-how header p{color:var(--pn-muted)}.pn2-workspace-how>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1.3rem}.pn2-workspace-how article{padding:1.1rem;border:1px solid var(--pn-line);border-radius:10px}.pn2-workspace-how article>span{color:var(--pn-blue);font-size:.6rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.pn2-workspace-how h3{margin:.45rem 0;font-size:.9rem}.pn2-workspace-how article p{min-height:3.2em;color:var(--pn-muted);font-size:.68rem;line-height:1.55}.pn2-workspace-how a,.pn2-workspace-how article button{padding:0;border:0;color:var(--pn-blue);background:transparent;font-size:.67rem;font-weight:850;text-decoration:none}
@media(max-width:900px){.pn2-workspace-welcome{grid-template-columns:1fr}.pn2-workspace-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.pn2-workspace-preview>div{display:block;border-top:0}.pn2-workspace-preview span{margin-bottom:.7rem}.pn2-related-destinations>div,.pn2-workspace-how>div{grid-template-columns:1fr}}
@media(max-width:575.98px){.pn2-module-hero-simple{grid-template-columns:48px minmax(0,1fr)}.pn2-module-count{grid-column:1/-1;padding:1rem 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.2);text-align:left}.pn2-workspace-preview{grid-template-columns:1fr;gap:0}.pn2-workspace-preview>div{display:grid;border-top:1px solid rgba(255,255,255,.15)}.pn2-workspace-welcome-actions{display:grid}.pn2-workspace-welcome-actions .pn2-primary-action,.pn2-workspace-welcome-actions .pn2-secondary-action{width:100%}}

.pn2-reading-page{min-height:75vh;padding:1.2rem 0 5rem;background:var(--pn-paper)}.pn2-reading-page>.container-fluid{max-width:1160px;margin:auto;padding-inline:1.5rem}.pn2-reading-article{padding:clamp(1.4rem,5vw,4.5rem)!important}.pn2-reading-header{max-width:850px;margin:0 auto 2rem}.pn2-reading-labels{display:flex;gap:.5rem}.pn2-reading-labels a,.pn2-reading-labels span{padding:.3rem .55rem;border-radius:999px;color:var(--pn-blue);background:#edf2ff;font-size:.6rem;font-weight:900;text-decoration:none;text-transform:uppercase}.pn2-reading-header h1{margin:.8rem 0 1rem;color:var(--pn-ink);font-size:clamp(2.3rem,6vw,5rem);line-height:1;letter-spacing:-.055em}.pn2-reading-deck{max-width:68ch;color:var(--pn-muted);font-size:clamp(1rem,2vw,1.25rem);line-height:1.6}.pn2-reading-byline{display:flex;flex-wrap:wrap;gap:.45rem 1rem;align-items:center;margin-top:1.2rem;color:var(--pn-muted);font-size:.65rem}.pn2-reading-byline a{color:var(--pn-ink);font-weight:800}.pn2-reading-byline .pn2-reading-edit{margin-left:auto;color:var(--pn-blue)}
.pn2-reading-article>.post-image,.pn2-reading-article>.post-image-container,.pn2-reading-article>.post-video{max-width:980px;margin-inline:auto}.pn2-quick-read{max-width:760px;margin:2rem auto;padding:1.2rem 1.35rem;border-left:4px solid var(--pn-blue);border-radius:0 10px 10px 0;background:#edf3ff}.pn2-quick-read>span,.pn2-reading-next>span,.pn2-reading-topics>span{color:var(--pn-blue);font-size:.6rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.pn2-quick-read p{margin:.45rem 0;color:var(--pn-ink);font-size:.88rem;line-height:1.65}.pn2-quick-read a{color:var(--pn-blue);font-size:.64rem;font-weight:850;text-decoration:none}.pn2-reading-article .pn2-article-context{max-width:860px;margin:2.5rem auto}.pn2-automation-diagnostics summary{cursor:pointer;color:var(--pn-muted);font-size:.61rem;font-weight:850}.pn2-automation-diagnostics>span{display:block;margin-top:.7rem}
.pn2-reading-next{max-width:800px;margin:2.5rem auto 0;padding:1.4rem;border-radius:12px;color:#fff;background:linear-gradient(135deg,#0a1830,#204983)}.pn2-reading-next h2{margin:.4rem 0;color:#fff}.pn2-reading-next p{color:#c5d2e5}.pn2-reading-next a{color:#83ddd4;font-weight:850}.pn2-reading-topics{max-width:860px;margin:2rem auto 0;padding-top:1rem;border-top:1px solid var(--pn-line)}.pn2-reading-topics>div{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.pn2-reading-topics a{padding:.35rem .55rem;border-radius:999px;color:var(--pn-ink);background:var(--pn-paper);font-size:.62rem;text-decoration:none}
.pn2-start-banner{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(360px,1.2fr) auto;gap:clamp(1rem,3vw,2.5rem);align-items:center;margin-top:1rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid #bdd0f5;border-radius:13px;background:linear-gradient(135deg,#edf3ff,var(--pn-surface))}.pn2-start-banner h2{margin:.35rem 0;font-size:1.35rem}.pn2-start-banner p{margin:0;color:var(--pn-muted);font-size:.72rem;line-height:1.6}.pn2-start-banner ol{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin:0;padding:0;list-style:none}.pn2-start-banner li{display:grid;grid-template-columns:25px minmax(0,1fr);gap:.5rem;align-items:center}.pn2-start-banner li>span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;color:#fff;background:var(--pn-blue);font-size:.53rem;font-weight:900}.pn2-start-banner li a{color:var(--pn-ink);font-size:.64rem;font-weight:750;line-height:1.35;text-decoration:none}.pn2-start-banner>.pn2-path-button{min-width:135px}.pn2-lower-grid.is-single{grid-template-columns:1fr}
.pn2-path-freshness{display:block;margin-top:.45rem;color:var(--pn-blue);font-size:.58rem;font-weight:800}

/* The core path is a reader-facing sequence, not another generic module grid. */
.pn2-reading-path-page{min-height:70vh;padding:0 0 4rem;background:var(--pn-page)}
.pn2-reading-path-page>.container-fluid{max-width:1320px}
.pn2-reading-path-hero{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:2rem;align-items:end;padding:clamp(2rem,6vw,5rem);border-radius:18px;color:#fff;background:radial-gradient(circle at 90% 10%,rgba(51,103,211,.72),transparent 45%),linear-gradient(135deg,#07162f,#132f69 65%,#0b4f62)}
.pn2-reading-path-hero .pn2-kicker{color:#86c9ff}.pn2-reading-path-hero h1{max-width:800px;margin:.6rem 0 1rem;color:#fff;font-size:clamp(2.2rem,5vw,4.6rem);line-height:.98;letter-spacing:-.055em}.pn2-reading-path-hero p{max-width:720px;margin:0;color:#cbdaf4;font-size:clamp(.9rem,1.4vw,1.08rem);line-height:1.75}
.pn2-reading-path-hero aside{display:flex;flex-direction:column;padding-left:1.5rem;border-left:1px solid rgba(255,255,255,.25)}.pn2-reading-path-hero aside strong{font-size:3.5rem;line-height:1}.pn2-reading-path-hero aside span{margin-top:.35rem;font-weight:750}.pn2-reading-path-hero aside small{margin-top:1rem;color:#9fb4d8;font-size:.67rem}
.pn2-reading-sequence{display:grid;gap:1rem;margin:1.25rem 0 0;padding:0;list-style:none;counter-reset:path-step}.pn2-reading-sequence>li{display:grid;grid-template-columns:52px minmax(190px,300px) minmax(0,1fr);gap:clamp(1rem,3vw,2.4rem);align-items:center;padding:clamp(1rem,2.4vw,1.6rem);border:1px solid var(--pn-line);border-radius:14px;background:var(--pn-surface)}
.pn2-reading-step{display:grid;width:48px;height:48px;place-items:center;border-radius:50%;color:#fff;background:var(--pn-blue);font-size:.72rem;font-weight:900}.pn2-reading-image{display:block;overflow:hidden;border-radius:10px;aspect-ratio:1.68;background:#dfe7f4}.pn2-reading-image img{width:100%;height:100%;object-fit:cover}.pn2-reading-sequence article{min-width:0}.pn2-reading-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;color:var(--pn-blue);font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.pn2-reading-meta b,.pn2-reading-meta em{padding-left:.5rem;border-left:1px solid var(--pn-line);color:var(--pn-muted);font-style:normal}.pn2-reading-meta em{color:#7b4fd5}.pn2-reading-sequence h2{margin:.55rem 0;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.16;letter-spacing:-.03em}.pn2-reading-sequence h2 a{color:var(--pn-ink);text-decoration:none}.pn2-reading-sequence p{margin:.4rem 0;color:var(--pn-muted);font-size:.8rem;line-height:1.65}.pn2-reading-sequence article>small{display:block;margin:.75rem 0;color:var(--pn-muted);font-size:.66rem;line-height:1.55}.pn2-reading-open{display:inline-flex;margin-top:.35rem;color:var(--pn-blue);font-size:.7rem;font-weight:850;text-decoration:none}
.pn2-path-method{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1fr);gap:2rem;margin-top:1.25rem;padding:clamp(1.5rem,4vw,2.5rem);border:1px solid var(--pn-line);border-radius:14px;background:#eef4ff}.pn2-path-method h2{margin:.35rem 0 0;font-size:1.5rem}.pn2-path-method p{margin:0;color:var(--pn-muted);font-size:.8rem;line-height:1.75}
@media(max-width:780px){.pn2-reading-path-hero{grid-template-columns:1fr}.pn2-reading-path-hero aside{padding:1rem 0 0;border-top:1px solid rgba(255,255,255,.25);border-left:0}.pn2-reading-sequence>li{grid-template-columns:40px minmax(0,1fr)}.pn2-reading-step{width:38px;height:38px}.pn2-reading-image{grid-column:2}.pn2-reading-sequence article{grid-column:2}.pn2-path-method{grid-template-columns:1fr}}

/* Ask PN is grounded retrieval over the PN archive; it never invents an answer. */
.pn2-ask-page{min-height:70vh;padding-bottom:4rem;background:var(--pn-page)}.pn2-ask-page>.container-fluid{max-width:1320px}.pn2-ask-hero{padding:clamp(2rem,5vw,4.5rem);border-radius:18px;color:#fff;background:radial-gradient(circle at 84% 0,rgba(31,151,170,.52),transparent 38%),linear-gradient(135deg,#07162f,#163d75)}.pn2-ask-hero .pn2-kicker{color:#79d6de}.pn2-ask-hero h1{margin:.5rem 0;font-size:clamp(2.5rem,6vw,5.2rem);letter-spacing:-.06em}.pn2-ask-hero>p{max-width:760px;color:#cad9ef;font-size:1rem;line-height:1.7}.pn2-ask-hero form{max-width:980px;margin-top:2rem}.pn2-ask-hero form label{display:block;margin-bottom:.55rem;color:#fff;font-size:.72rem;font-weight:850}.pn2-ask-hero form>div{display:grid;grid-template-columns:minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:#fff}.pn2-ask-hero input{min-width:0;padding:1rem 1.1rem;border:0;outline:0;color:var(--pn-ink);font-size:.86rem}.pn2-ask-hero button{border:0;padding:0 1.4rem;color:#fff;background:var(--pn-blue);font-size:.72rem;font-weight:850}.pn2-ask-contract{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.pn2-ask-contract span{padding:.4rem .65rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#bdcce5;font-size:.6rem;font-weight:750}
.pn2-ai-answer{margin-top:1.25rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid #9fc9cc;border-radius:14px;background:linear-gradient(145deg,var(--pn-surface),rgba(8,127,140,.07))}.pn2-ai-answer>header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.pn2-ai-answer h2{margin:.2rem 0 1rem;font-size:1.55rem}.pn2-ai-answer>header>span{padding:.35rem .6rem;border-radius:999px;color:#075f68;background:rgba(8,127,140,.12);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.pn2-ai-answer-text{max-width:900px;color:var(--pn-ink);font-size:.88rem;line-height:1.8}.pn2-ai-answer>p,.pn2-ai-answer>small{color:var(--pn-muted);line-height:1.6}.pn2-ai-answer>small{display:block;margin-top:1rem;font-size:.62rem}.pn2-ai-answer.is-error,.pn2-ai-answer.is-unavailable,.pn2-ai-answer.is-rate_limited{border-color:#e5bd73;background:linear-gradient(145deg,var(--pn-surface),rgba(212,138,22,.08))}.pn2-ai-citations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:1.25rem 0 0;padding:0;list-style:none;counter-reset:pn2-citation}.pn2-ai-citations li{counter-increment:pn2-citation}.pn2-ai-citations a{display:grid;grid-template-columns:28px minmax(0,1fr);gap:.6rem;padding:.7rem;border:1px solid var(--pn-line);border-radius:8px;color:inherit;background:var(--pn-surface);text-decoration:none}.pn2-ai-citations a:before{content:counter(pn2-citation);display:grid;width:26px;height:26px;place-items:center;border-radius:50%;color:#fff;background:var(--pn-blue);font-size:.58rem;font-weight:850}.pn2-ai-citations strong,.pn2-ai-citations span{grid-column:2;display:block}.pn2-ai-citations strong{font-size:.7rem}.pn2-ai-citations span{color:var(--pn-muted);font-size:.58rem}.pn2-ai-citations a:hover{border-color:var(--pn-blue)}
.pn2-answer-overview{display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);gap:1rem;margin-top:1.25rem}.pn2-answer-overview>div,.pn2-answer-overview>article{padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--pn-line);border-radius:13px;background:var(--pn-surface)}.pn2-answer-overview h2{margin:.35rem 0;font-size:1.6rem}.pn2-answer-overview>div p{margin:0;color:var(--pn-muted);font-size:.75rem}.pn2-answer-overview article>span{color:var(--pn-blue);font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.pn2-answer-overview h3{margin:.55rem 0;font-size:1.25rem}.pn2-answer-overview h3 a{color:var(--pn-ink);text-decoration:none}.pn2-answer-overview article p{margin:.45rem 0;color:var(--pn-muted);font-size:.75rem;line-height:1.6}.pn2-answer-overview article small{color:var(--pn-muted);font-size:.62rem}.pn2-answer-overview article.is-empty{border-color:#e7bf8c;background:#fff9f1}
.pn2-answer-group{margin-top:1.25rem;padding:clamp(1.1rem,2.5vw,1.7rem);border:1px solid var(--pn-line);border-radius:13px;background:var(--pn-surface)}.pn2-answer-group>header{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1rem}.pn2-answer-group h2{margin:.25rem 0 0;font-size:1.35rem}.pn2-answer-group>header>strong{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;color:#fff;background:var(--pn-blue);font-size:.72rem}.pn2-answer-group>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.pn2-answer-group>div>a{display:flex;flex-direction:column;padding:1rem;border:1px solid var(--pn-line);border-radius:9px;color:inherit;text-decoration:none}.pn2-answer-group a>span{color:var(--pn-blue);font-size:.56rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.pn2-answer-group h3{margin:.45rem 0;font-size:.95rem;line-height:1.25}.pn2-answer-group p{margin:0 0 .65rem;color:var(--pn-muted);font-size:.7rem;line-height:1.55}.pn2-answer-group small{margin-top:auto;color:var(--pn-muted);font-size:.58rem}.pn2-ask-start{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.25rem}.pn2-ask-start>div{padding:1.5rem;border:1px solid var(--pn-line);border-radius:12px;background:var(--pn-surface)}.pn2-ask-start strong{color:var(--pn-blue);font-size:.7rem}.pn2-ask-start h2{margin:.5rem 0;font-size:1.1rem}.pn2-ask-start p{margin:0;color:var(--pn-muted);font-size:.72rem;line-height:1.6}
@media(max-width:800px){.pn2-ask-hero form>div{grid-template-columns:1fr}.pn2-ask-hero button{min-height:48px}.pn2-answer-overview{grid-template-columns:1fr}.pn2-answer-group>div,.pn2-ai-citations{grid-template-columns:1fr}.pn2-ask-start{grid-template-columns:1fr}}
.pn2-signin-card a.pn2-primary-action{color:#fff}
@media(max-width:900px){.pn2-start-banner{grid-template-columns:1fr}.pn2-start-banner>.pn2-path-button{width:max-content}}
@media(max-width:575.98px){.pn2-reading-page>.container-fluid{padding-inline:.8rem}.pn2-reading-article{padding:1.15rem!important}.pn2-reading-header h1{font-size:2.55rem}.pn2-reading-byline .pn2-reading-edit{width:100%;margin-left:0}}
.pn2-compose-attachment{display:grid;gap:.2rem;padding:.8rem;border:1px solid #a9c5ef;border-radius:8px;background:#edf3ff}.pn2-compose-attachment span{color:var(--pn-blue);font-size:.56rem;font-weight:900;text-transform:uppercase}.pn2-compose-attachment strong{font-size:.72rem}.pn2-compose-attachment a{color:var(--pn-blue);font-size:.6rem;font-weight:800}.pn2-compose-help{margin:0;padding:.75rem;border-radius:8px;color:var(--pn-muted);background:var(--pn-paper);font-size:.63rem;line-height:1.55}

/* The publishing taxonomy, not a second hand-entered PN2 menu, drives discovery. */
.pn2-research-universe{margin-top:1.2rem;padding:clamp(1.2rem,2.5vw,2rem);border:1px solid var(--pn-line);border-radius:14px;background:var(--pn-surface)}
.pn2-research-universe>header{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:1.25rem}.pn2-research-universe h2{margin:.25rem 0;font-size:clamp(1.5rem,2vw,2rem);letter-spacing:-.035em}.pn2-research-universe header p{max-width:60ch;margin:0;color:var(--pn-muted);font-size:.76rem;line-height:1.6}.pn2-research-universe dl{display:flex;gap:1rem;margin:0}.pn2-research-universe dl div{min-width:76px;padding-left:.8rem;border-left:1px solid var(--pn-line)}.pn2-research-universe dt{color:var(--pn-muted);font-size:.57rem;text-transform:uppercase}.pn2-research-universe dd{margin:.2rem 0 0;font-size:1.3rem;font-weight:900;color:var(--pn-ink)}
.pn2-family-index{display:flex;gap:.45rem;overflow-x:auto;margin:1.3rem 0;padding:.35rem 0 .7rem;scrollbar-width:thin}.pn2-family-index a{flex:none;display:flex;gap:.45rem;align-items:center;padding:.5rem .75rem;border:1px solid var(--pn-line);border-radius:999px;color:var(--pn-ink);font-size:.64rem;font-weight:750;text-decoration:none}.pn2-family-index a:hover{border-color:var(--pn-blue);color:var(--pn-blue)}.pn2-family-index span{color:var(--pn-blue);font-weight:900}.pn2-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.pn2-family-card{min-width:0;padding:1.1rem;border:1px solid var(--pn-line);border-top:3px solid var(--pn2-family-color);border-radius:10px;background:var(--pn-surface);scroll-margin-top:100px}.pn2-family-card>header{display:flex;gap:.8rem;align-items:start}.pn2-family-card>header>span{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:8px;color:#fff;background:var(--pn2-family-color);font-size:.6rem;font-weight:900}.pn2-family-card h3{margin:0;font-size:1.1rem;line-height:1.2}.pn2-family-card h3 a{color:var(--pn-ink);text-decoration:none}.pn2-family-card header small{color:var(--pn-muted);font-size:.58rem}.pn2-family-lead{display:block;overflow:hidden;margin-top:1rem;border-radius:9px;color:#fff;background:linear-gradient(135deg,#13243e,#2b5696);text-decoration:none}.pn2-family-lead img{display:block;width:100%;max-height:185px;object-fit:cover}.pn2-family-lead>span{display:grid;gap:.35rem;padding:1rem}.pn2-family-lead small{color:#9ed4f4;font-size:.57rem;font-weight:850;text-transform:uppercase}.pn2-family-lead strong{font-size:.95rem;line-height:1.3}.pn2-family-latest{margin:.8rem 0;padding:0;list-style:none}.pn2-family-latest li{padding:.5rem 0;border-bottom:1px solid var(--pn-line)}.pn2-family-latest a{color:var(--pn-ink);font-size:.68rem;font-weight:750;line-height:1.4;text-decoration:none}.pn2-family-empty{min-height:4rem;margin:.9rem 0;color:var(--pn-muted);font-size:.7rem}.pn2-family-children{display:flex;flex-wrap:wrap;gap:.35rem;margin:.8rem 0}.pn2-family-children a{display:inline-flex;gap:.4rem;padding:.3rem .45rem;border-radius:5px;background:var(--pn-paper);color:var(--pn-ink);font-size:.57rem;text-decoration:none}.pn2-family-children span{color:var(--pn2-family-color);font-weight:850}.pn2-family-open{display:inline-block;margin-top:.7rem;color:var(--pn-blue);font-size:.65rem;font-weight:850;text-decoration:none}
.pn2-rail-discovery ol{margin:.6rem 0 0;padding:0;list-style:none}.pn2-rail-discovery li{padding:.55rem 0;border-bottom:1px solid var(--pn-line)}.pn2-rail-discovery li a,.pn2-rail-discovery li small{display:block}.pn2-rail-discovery li a{color:var(--pn-ink);font-size:.69rem;font-weight:750;line-height:1.4;text-decoration:none}.pn2-rail-discovery li small{margin-top:.25rem;color:var(--pn-muted);font-size:.55rem}.pn2-rail-topics div{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.6rem}.pn2-rail-topics a{padding:.32rem .5rem;border-radius:6px;background:var(--pn-paper);color:var(--pn-blue);font-size:.57rem;text-decoration:none}

/* Reading is a two-column experience with contextual, automatically updated tools. */
.pn2-reading-page>.container-fluid{max-width:1500px}.pn2-reading-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,305px);align-items:start;gap:1rem}.pn2-reading-article{min-width:0;padding:clamp(1.2rem,3vw,3rem)!important;border:1px solid var(--pn-line);border-radius:13px;background:var(--pn-surface)}.pn2-reading-header{max-width:none}.pn2-reading-header h1{font-size:clamp(2.35rem,4.2vw,4.25rem);line-height:1.06}.pn2-reading-labels{flex-wrap:wrap}.pn2-reading-share{margin-top:1rem;padding-top:.6rem;border-top:1px solid var(--pn-line)}.pn2-reading-share .share-flex-wrapper{padding:0!important}.pn2-reading-article .entry-content{max-width:78ch;margin:1.5rem auto;overflow-wrap:anywhere;line-height:1.82}.pn2-reading-article .entry-content h2,.pn2-reading-article .entry-content h3{scroll-margin-top:95px}.pn2-reading-article .entry-content img,.pn2-reading-article .entry-content iframe{max-width:100%;height:auto}.pn2-reading-article .entry-content table{display:block;max-width:100%;overflow-x:auto}.pn2-quick-read{max-width:78ch}.pn2-source-cta a{display:inline-block;padding:.65rem .8rem;border:1px solid var(--pn-line);border-radius:7px;color:var(--pn-blue);font-weight:800}
.pn2-reader-rail{position:sticky;top:1rem;display:grid;gap:.75rem;max-height:calc(100vh - 2rem);overflow:auto;scrollbar-width:thin}.pn2-reader-rail>section{padding:1rem;border:1px solid var(--pn-line);border-radius:10px;background:var(--pn-surface)}.pn2-rail-kicker,.pn2-related-research header>span,.pn2-author-card span{color:var(--pn-blue);font-size:.57rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.pn2-reader-rail h2{margin:.35rem 0 .8rem;font-size:.93rem;line-height:1.3}.pn2-outline{display:grid;gap:.1rem;max-height:35vh;overflow:auto;margin:0;padding:0;list-style:none}.pn2-outline a{display:block;padding:.38rem .25rem;color:var(--pn-ink);font-size:.63rem;line-height:1.45;text-decoration:none}.pn2-outline a:hover,.pn2-outline a:focus{color:var(--pn-blue)}.pn2-outline .level-3{margin-left:.8rem;border-left:1px solid var(--pn-line)}.pn2-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.pn2-profile-grid div{display:grid;padding:.55rem;border-radius:6px;background:var(--pn-paper)}.pn2-profile-grid strong{font-size:1rem;color:var(--pn-ink)}.pn2-profile-grid span{color:var(--pn-muted);font-size:.55rem;text-transform:uppercase}.pn2-reader-rail .pn2-rail-links{display:flex;flex-wrap:wrap;gap:.35rem}.pn2-reader-rail .pn2-rail-links a{display:inline-flex;padding:.32rem .5rem;border:1px solid var(--pn-line);border-radius:999px;color:var(--pn-blue);font-size:.58rem;text-decoration:none}.pn2-rail-posts{display:grid;margin:0;padding:0;list-style:none}.pn2-rail-posts li{display:grid;grid-template-columns:24px 1fr;gap:.45rem;padding:.45rem 0;border-top:1px solid var(--pn-line)}.pn2-rail-posts span{color:var(--pn-blue);font-size:.56rem;font-weight:900}.pn2-rail-posts a{color:var(--pn-ink);font-size:.63rem;font-weight:750;line-height:1.45;text-decoration:none}.pn2-rail-open{display:inline-block;margin-top:.6rem;color:var(--pn-blue);font-size:.6rem;font-weight:850}
.pn2-adjacent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:2rem 0}.pn2-adjacent a{display:grid;gap:.35rem;padding:1rem;border:1px solid var(--pn-line);border-radius:9px;color:var(--pn-ink);text-decoration:none}.pn2-adjacent span{color:var(--pn-blue);font-size:.57rem;font-weight:900;text-transform:uppercase}.pn2-adjacent strong{font-size:.8rem;line-height:1.35}.pn2-author-card{display:flex;gap:1rem;align-items:center;margin:1.6rem 0;padding:1rem;border:1px solid var(--pn-line);border-radius:10px}.pn2-author-card img{flex:none;border-radius:50%;object-fit:cover}.pn2-author-card h2{margin:.2rem 0;font-size:1rem}.pn2-author-card h2 a{color:var(--pn-ink)}.pn2-author-card p{margin:0;color:var(--pn-muted);font-size:.67rem}.pn2-related-research{margin:2rem 0}.pn2-related-research h2{margin:.2rem 0 1rem;font-size:1.4rem}.pn2-related-research>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.pn2-related-research article{overflow:hidden;border:1px solid var(--pn-line);border-radius:9px}.pn2-related-image{display:block;aspect-ratio:1.8;overflow:hidden}.pn2-related-image img{width:100%;height:100%;object-fit:cover}.pn2-related-research article>div{padding:.8rem}.pn2-related-research article span{color:var(--pn-blue);font-size:.55rem;text-transform:uppercase}.pn2-related-research h3{margin:.35rem 0;font-size:.85rem;line-height:1.35}.pn2-related-research h3 a{color:var(--pn-ink);text-decoration:none}.pn2-related-research p,.pn2-related-research small{color:var(--pn-muted);font-size:.61rem;line-height:1.5}.pn2-comments{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--pn-line)}
@media(max-width:1100px){.pn2-reading-shell{grid-template-columns:1fr}.pn2-reader-rail{position:static;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible}.pn2-reader-rail>section:first-child{grid-column:1/-1}}
@media(max-width:800px){.pn2-family-grid,.pn2-related-research>div,.pn2-more-sources>div{grid-template-columns:1fr}.pn2-research-universe dl{width:100%}}
@media(max-width:650px){.pn2-reader-rail{grid-template-columns:1fr}.pn2-adjacent{grid-template-columns:1fr}.pn2-reading-article{padding:1.15rem!important}.pn2-reading-header h1{font-size:2.35rem}}

/* Automatic primary-desk routing and module-specific research workspaces. */
.pn2-data-preview>header p{max-width:78ch;margin:.35rem 0 0;color:var(--pn-muted);font-size:.72rem;line-height:1.55}.pn2-auto-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1rem;border:1px solid var(--pn-line);border-radius:11px;overflow:hidden;background:var(--pn-surface)}
.pn2-auto-overview>div{min-width:0;padding:1rem}.pn2-auto-overview>div+div{border-left:1px solid var(--pn-line)}.pn2-auto-overview span,.pn2-auto-overview strong,.pn2-auto-overview small{display:block}.pn2-auto-overview span{color:var(--pn-blue);font-size:.58rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.pn2-auto-overview strong{margin:.25rem 0;font-size:1.55rem}.pn2-auto-overview small{color:var(--pn-muted);font-size:.62rem;line-height:1.4}
.pn2-module-taxonomy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.pn2-module-taxonomy>div{display:flex;flex-wrap:wrap;gap:.45rem;padding:1rem;border:1px solid var(--pn-line);border-radius:11px;background:var(--pn-surface)}.pn2-module-taxonomy>div>span{width:100%}.pn2-module-taxonomy a{display:flex;align-items:center;gap:.45rem;padding:.42rem .58rem;border:1px solid var(--pn-line);border-radius:999px;color:var(--pn-ink);font-size:.64rem;font-weight:750;text-decoration:none}.pn2-module-taxonomy a:hover{border-color:var(--pn-blue);color:var(--pn-blue)}.pn2-module-taxonomy a b{color:var(--pn-muted);font-size:.55rem}
.pn2-automation-note{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem 1rem;margin-top:1rem;padding:1rem 1.15rem;border:1px solid #b9d9d1;border-radius:11px;background:#f1faf7}.pn2-automation-note strong{color:#096951}.pn2-automation-note p{flex:1 1 560px;margin:0;color:#34564f;font-size:.68rem;line-height:1.55}.pn2-automation-note span{color:#096951;font-size:.62rem;font-weight:800}
.pn2-intelligence-layout,.pn2-forecast-research-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,.72fr);gap:1rem;align-items:start}.pn2-intelligence-stream,.pn2-forecast-research-layout>div{min-width:0}.pn2-intelligence-stream>header,.pn2-forecast-research-layout>div>header{margin:0 0 .75rem}.pn2-intelligence-stream>header h3,.pn2-forecast-research-layout>div>header h3,.pn2-formal-records h3{margin:.2rem 0 0;font-size:1.15rem}.pn2-intelligence-stream>article{padding:1rem 1.1rem;border:1px solid var(--pn-line);border-radius:11px;background:var(--pn-surface)}.pn2-intelligence-stream>article+article{margin-top:.65rem}.pn2-intelligence-stream>article>div,.pn2-intelligence-stream footer{display:flex;justify-content:space-between;gap:1rem;color:var(--pn-muted);font-size:.6rem}.pn2-intelligence-stream>article>div span{color:var(--pn-blue);font-weight:900;text-transform:uppercase}.pn2-intelligence-stream>article>div b{font-weight:750}.pn2-intelligence-stream h3{margin:.42rem 0 .35rem;font-size:1.08rem;line-height:1.3}.pn2-intelligence-stream h3 a{color:var(--pn-ink);text-decoration:none}.pn2-intelligence-stream h3 a:hover{color:var(--pn-blue)}.pn2-intelligence-stream p{margin:0 0 .8rem;color:var(--pn-muted);font-size:.72rem;line-height:1.58}
.pn2-intelligence-rail{display:grid;gap:.75rem}.pn2-intelligence-rail>section{padding:1rem;border:1px solid var(--pn-line);border-radius:11px;background:var(--pn-surface)}.pn2-intelligence-links{display:grid;margin-top:.55rem}.pn2-intelligence-links a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.08rem .5rem;padding:.55rem 0;border-top:1px solid var(--pn-line);color:var(--pn-ink);text-decoration:none}.pn2-intelligence-links a:first-child{border-top:0}.pn2-intelligence-links a strong{font-size:.7rem}.pn2-intelligence-links a span{grid-column:1;color:var(--pn-muted);font-size:.56rem}.pn2-intelligence-links a b{grid-column:2;grid-row:1/3;align-self:center;color:var(--pn-blue);font-size:.66rem}.pn2-intelligence-links.compact a{grid-template-columns:minmax(0,1fr) auto}.pn2-intelligence-links.compact a b{grid-row:1}.pn2-integrity-panel dl{margin:.6rem 0}.pn2-integrity-panel dl div{display:flex;justify-content:space-between;gap:1rem;padding:.42rem 0;border-top:1px solid var(--pn-line);font-size:.64rem}.pn2-integrity-panel dt{color:var(--pn-muted)}.pn2-integrity-panel dd{margin:0;font-weight:850}.pn2-integrity-panel p{margin:.6rem 0 0;color:var(--pn-muted);font-size:.62rem;line-height:1.5}
.pn2-formal-records{margin-top:1rem;padding:1rem;border:1px solid var(--pn-line);border-radius:11px;background:var(--pn-surface)}.pn2-formal-records>header p{margin:.25rem 0 0;color:var(--pn-muted);font-size:.65rem}.pn2-formal-records>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-top:.75rem}.pn2-formal-records>div>a{display:grid;align-content:start;padding:.85rem;border:1px solid var(--pn-line);border-radius:9px;color:var(--pn-ink);text-decoration:none}.pn2-formal-records>div>a>span{color:var(--pn-blue);font-size:.55rem;font-weight:900;text-transform:uppercase}.pn2-formal-records>div>a>strong{margin:.3rem 0;font-size:.78rem}.pn2-formal-records>div>a>p{margin:0 0 .55rem;color:var(--pn-muted);font-size:.62rem;line-height:1.5}.pn2-formal-records>div>a>small{margin-top:auto;color:var(--pn-muted);font-size:.56rem}.pn2-formal-records.is-forecast{margin:0 0 1rem}.pn2-forecast-ledger.is-articles article{grid-template-columns:44px minmax(0,1fr) minmax(135px,190px)}
@media(max-width:1000px){.pn2-auto-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.pn2-auto-overview>div:nth-child(3){border-left:0;border-top:1px solid var(--pn-line)}.pn2-auto-overview>div:nth-child(4){border-top:1px solid var(--pn-line)}.pn2-intelligence-layout,.pn2-forecast-research-layout{grid-template-columns:1fr}.pn2-intelligence-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.pn2-formal-records>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.pn2-auto-overview,.pn2-module-taxonomy,.pn2-intelligence-rail,.pn2-formal-records>div{grid-template-columns:1fr}.pn2-auto-overview>div+div,.pn2-auto-overview>div:nth-child(3){border-left:0;border-top:1px solid var(--pn-line)}.pn2-forecast-ledger.is-articles article{grid-template-columns:40px minmax(0,1fr)}.pn2-intelligence-stream>article>div,.pn2-intelligence-stream footer{align-items:flex-start;flex-direction:column;gap:.2rem}}

/* Reuse existing language-specific ad slots and the inherited ad-free rule. */
.pn2-ad-band{max-width:1680px;margin:1rem auto;min-width:0;padding-inline:1.5rem}.pn2-ad-band--header{margin-block:.75rem}.pn2-ad-band--index,.pn2-ad-band--listing{padding-inline:0}.pn2-ad-band--post{padding-inline:0;margin-block:1.4rem}
.pn2-ad-band>.container,.pn2-rail-ad .container{width:100%;max-width:100%;padding-inline:0}.pn2-ad-band img,.pn2-ad-band iframe,.pn2-rail-ad img,.pn2-rail-ad iframe{max-width:100%}
.pn2-my-nexus.has-ads,.pn2-reader-rail.has-ads{position:static}.pn2-reader-rail.has-ads{max-height:none;overflow:visible}.pn2-rail-ad{min-width:0;padding:1rem;border-bottom:1px solid var(--pn-line);background:var(--pn-surface)}.pn2-reader-rail>.pn2-rail-ad{border:1px solid var(--pn-line);border-radius:10px}
@media(max-width:575.98px){.pn2-ad-band{padding-inline:.8rem}}
.pn2-event-sequence{list-style:none;padding:0}.pn2-event-sequence h3{margin:1.5rem 0 .8rem}.pn2-event-sequence article{display:flex;align-items:flex-start;gap:1.3rem;padding:1.3rem 0;border-bottom:1px solid var(--pn-line)}.pn2-event-sequence time{min-width:65px;color:var(--pn-muted);font-weight:700}.pn2-event-sequence h4{font-size:1.1rem;margin:.4rem 0}.pn2-event-sequence p{line-height:1.7}.pn2-event-sequence small{color:var(--pn-muted)}.pn2-event-calendar>p{line-height:1.7;max-width:75ch}
.pn2-path-progress{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding:1.2rem;border:1px solid var(--pn-line);border-radius:10px;margin:1rem 0;background:var(--pn-surface)}.pn2-path-progress progress{width:160px;accent-color:var(--pn-blue,#3156d7)}.pn2-path-complete{margin-top:1rem}.pn2-path-complete button{border:1px solid var(--pn-line);border-radius:6px;padding:.5rem .8rem;background:var(--pn-surface);color:var(--pn-text);cursor:pointer}.pn2-path-catalog{margin:2rem 0}.pn2-path-catalog>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.pn2-path-catalog>div>a{display:block;padding:1.2rem;border:1px solid var(--pn-line);border-radius:10px;background:var(--pn-surface);color:inherit}.pn2-path-catalog p{font-size:.9rem}.pn2-path-catalog small{color:var(--pn-muted)}.pn2-path-complete button:focus-visible{outline:3px solid var(--pn-blue,#3156d7);outline-offset:2px}
.pn2-category-page{padding:24px clamp(16px,3vw,48px) 48px}.pn2-category-topics{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.pn2-category-topics a{border:1px solid #dce4f0;border-radius:24px;padding:8px 16px;background:var(--pn2-surface,#fff)}.pn2-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.pn2-category-card{overflow:hidden;border:1px solid #dce4f0;border-radius:14px;background:var(--pn2-surface,#fff)}.pn2-category-card img{width:100%;height:auto;aspect-ratio:416/248;object-fit:cover}.pn2-category-card>div{padding:22px}.pn2-category-card h2{font-size:1.35rem;line-height:1.35;margin:10px 0}.pn2-category-card p{line-height:1.65}.pn2-category-ad{grid-column:1/-1}@media(max-width:600px){.pn2-category-grid{grid-template-columns:1fr}}
.pn2-wiki{padding:24px clamp(16px,3vw,48px) 48px}.pn2-wiki-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.pn2-wiki label{display:block;font-weight:600;margin:12px 0}.pn2-wiki input,.pn2-wiki textarea,.pn2-wiki select{display:block;width:100%;border:1px solid #ccd7e8;border-radius:8px;padding:12px;margin-top:6px;background:var(--pn2-surface,#fff);color:inherit}.pn2-wiki button{padding:10px 18px;border:0;border-radius:8px;background:#3157cc;color:white;margin:8px 8px 8px 0}.pn2-wiki-editor,.pn2-wiki-article{max-width:900px}.pn2-wiki-article p,.pn2-wiki-source{line-height:1.75;overflow-wrap:anywhere}.pn2-wiki-source{max-height:480px;overflow:auto;padding:16px;background:#f4f7fc}.pn2-wiki article{margin:16px 0}@media(max-width:650px){.pn2-wiki-filters{grid-template-columns:1fr}}
.pn2-analyst-page {max-width:1100px; margin-inline:auto; padding-inline:clamp(16px,3vw,40px)}
.pn2-analyst-page h1 {font-size:clamp(28px,4vw,44px);letter-spacing:-.035em}
.pn2-analyst-page h2 {margin-block:28px 16px;font-size:23px}
.pn2-analyst-page>p {max-width:78ch;line-height:1.65;color:var(--pn-muted,#52637b)}
.pn2-analyst-page .card {border:1px solid var(--pn-line,#dce5f1);border-radius:14px;background:var(--pn-surface,#fff);color:var(--pn-ink,#14233b);box-shadow:0 3px 12px #152d4b05;display:grid;gap:10px}
.pn2-analyst-page .card>a {font-size:18px;font-weight:700;overflow-wrap:anywhere}
.pn2-analyst-page .card small {color:var(--pn-muted,#53647a);font-size:13px}
.pn2-analyst-page .pn2-analyst-staff {border-inline-start:4px solid #3558d4}
.pn2-analyst-message {white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}
.pn2-analyst-state {display:inline-block;padding:3px 9px;border-radius:20px;background:#edf2fc;color:#254490;text-transform:capitalize}
.pn2-analyst-page form {border:1px solid var(--pn-line,#dce5f1);border-radius:14px;padding:20px;background:var(--pn-surface,#fff)}
.pn2-analyst-page label {display:block;font-weight:650;margin-block:10px 7px}
.pn2-analyst-page input,.pn2-analyst-page textarea,.pn2-analyst-page select {width:100%;max-width:100%;border:1px solid var(--pn-line,#c7d4e5);border-radius:8px;padding:11px;font:inherit;background:var(--pn-surface,#fff);color:var(--pn-ink,#14233b)}
.pn2-analyst-page :is(input,textarea,select,button,a):focus-visible {outline:3px solid #4568e8;outline-offset:3px}
.pn2-analyst-page nav {display:flex;gap:20px;flex-wrap:wrap;margin-block:18px}

/* Native phone layout: bounded navigation, readable cards, contained rich content. */
.pn2-mobile-header {position:relative;padding:12px 16px;background:var(--pn-surface);border-bottom:1px solid var(--pn-line);z-index:30}
.pn2-mobile-brand {display:inline-block;max-width:75%;font-size:1.1rem;font-weight:850;color:var(--pn-ink);text-decoration:none}
.pn2-mobile-menu {float:right}
.pn2-mobile-menu summary {min-height:44px;padding:8px;cursor:pointer;font-weight:750}
.pn2-mobile-menu nav {position:absolute;top:55px;inset-inline:12px;max-height:65dvh;overflow-y:auto;overscroll-behavior:contain;padding:16px;background:var(--pn-surface);border:1px solid var(--pn-line);border-radius:12px;box-shadow:var(--pn-shadow)}
.pn2-mobile-menu nav h2 {font-size:.85rem;margin:16px 0 4px;color:var(--pn-muted)}
.pn2-mobile-menu nav a {display:block;min-height:44px;padding:10px;color:var(--pn-ink)}
.pn2-mobile-header form {display:flex;clear:both;gap:8px;margin-top:10px}
.pn2-mobile-header input {min-width:0;flex:1;padding:10px;border:1px solid var(--pn-line);border-radius:8px;background:var(--pn-paper);color:var(--pn-ink);font-size:16px}
.pn2-mobile-header button {padding:10px;border:0;border-radius:8px;background:var(--pn-blue);color:#fff}
@media(min-width:1200px){.pn2-family-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){
 .pn2-shell {padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 .pn2-dashboard-grid,.pn2-feature-grid,.pn2-lower-grid {grid-template-columns:minmax(0,1fr)}
 .pn2-mobile-dock {padding-bottom:env(safe-area-inset-bottom);min-height:64px}
 .pn2-mobile-dock a,.pn2-mobile-dock button {min-width:0;min-height:48px;flex:1}
 .pn2-reading-article {min-width:0;overflow-wrap:anywhere}
 .pn2-reading-article :is(img,video,iframe,figure) {max-width:100%}
 .pn2-reading-article table {display:block;max-width:100%;overflow-x:auto}
 .pn2-reading-article pre {max-width:100%;overflow-x:auto;white-space:pre}
}
@media(max-width:600px){
 .pn2-lead-analysis {grid-template-columns:minmax(0,1fr);min-height:0}
 .pn2-lead-visual {order:0;min-height:0;height:220px}
 .pn2-lead-content {order:1;padding:20px}
 .pn2-lead-content h2 {font-size:1.65rem;line-height:1.15}
 .pn2-lead-content>p {font-size:.95rem}
 .pn2-compact-research-grid,.pn2-family-grid {grid-template-columns:minmax(0,1fr)}
 .pn2-family-index {flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}
 .pn2-family-index a {flex-shrink:0;min-height:44px}
 .pn2-dashboard-heading {margin-bottom:16px}
 .pn2-dashboard-heading p {font-size:.95rem;line-height:1.5}
 .pn2-research-universe {padding:16px}
 .pn2-research-universe dl {gap:8px;flex-wrap:wrap}
 .pn2-start-banner ol {max-height:240px;overflow:auto}
 .pn2-reading-header h1 {font-size:2rem;line-height:1.15;overflow-wrap:anywhere}
 .pn2-reading-article {font-size:1rem;line-height:1.75}
 .pn2-shell :is(input,select,textarea) {font-size:16px}
}
