.page-contents { position:fixed;left:16px;top:var(--contents-top,120px);width:156px;z-index:20;background:#0c1015;border:1px solid #343c45;box-shadow:0 4px 14px #0003;color:#e9edf2;font-family:var(--f-head); }
.page-contents summary { padding:12px;font-size:12px;font-weight:800;text-transform:uppercase;cursor:pointer;list-style:none;border-bottom:1px solid #343c45; }
.page-contents summary::-webkit-details-marker { display:none; }
.page-contents summary::after { content:'+';float:right;color:#aab3bf; }
.page-contents[open] summary::after { content:'−'; }
.page-contents nav { padding:6px; }
.page-contents a { display:block;padding:10px 8px;font-size:12px;line-height:1.35;color:#aeb7c3;text-decoration:none;border-left:2px solid transparent; }
.page-contents a[hidden] { display:none; }
.page-contents a:hover { color:#fff;background:#ffffff08; }
.page-contents a[aria-current] { color:#fff;border-left-color:#df1b2b;background:#ffffff08; }
.page-contents :focus-visible { outline:2px solid #ef424b;outline-offset:1px; }
.page-jump-target { scroll-margin-top:calc(var(--contents-top,120px) + 12px); }

.page-contents.is-compact { top:auto;bottom:16px;left:12px;width:180px;max-height:60vh;overflow:auto; }
@media(prefers-reduced-motion:no-preference) { html { scroll-behavior:smooth; } }
@media(min-width:1100px) {

 body[data-contents-page] .masthead-row { flex-wrap:wrap; }
 body[data-contents-page] .masthead-row .nav { flex-wrap:wrap;max-width:100%; }
}

/* Miniature broadcast window, matching the main section panels. */
.page-contents { border-color:#343941;background:#101418;box-shadow:0 3px 10px #0005; }
.page-contents summary { padding:7px 10px;background:linear-gradient(90deg,#e51b2b,#8c0711);border-bottom:1px solid #660a11;color:#fff;font-style:italic;font-weight:900;font-size:11px;line-height:1;letter-spacing:.01em; }
.page-contents summary::after { color:#fff;font-style:normal; }
.contents-heading { padding:10px;background:linear-gradient(#f6f7f8,#dcdfe3);border-bottom:1px solid #9097a1;color:#090b0e;font-size:22px;line-height:1;font-weight:900;text-transform:uppercase;letter-spacing:-.035em; }
.page-contents nav { padding:5px 10px;background-image:var(--grain); }
.page-contents a { padding:11px 6px;border-bottom:1px solid #ffffff12;font-size:11px; }
.page-contents a:last-child { border-bottom:0; }
@media(max-width:1099px) { .page-contents summary { padding:10px;font-size:12px; } }

.page-contents:not(.is-compact) { left:var(--contents-left,12px);top:var(--contents-window-top,var(--contents-top)); }

.page-contents[hidden] { display:none; }

.page-contents summary { background:#e51b2b;min-height:var(--contents-bar-height,30px);box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:8px; }
.contents-heading { height:var(--contents-heading-height,64px);box-sizing:border-box;display:flex;align-items:center; }
.page-contents.is-compact .contents-heading { height:auto;min-height:44px; }
/* Selected design B: compact white header and numbered navbar buttons. */
.page-contents { border-top:3px solid #e51b2b; }
.page-contents summary { min-height:0;height:auto;padding:13px 12px;background:linear-gradient(#f7f8f9,#d9dde2);color:#101418;font-size:17px;font-weight:900;font-style:normal;letter-spacing:-.5px; }
.page-contents summary::after { color:#626a75; }
.page-contents .contents-heading { display:none; }
.page-contents nav { display:grid;gap:7px;padding:10px;counter-reset:contents-item; }
.page-contents nav a,.page-contents nav a:last-child,.page-contents nav a[aria-current] { display:flex;align-items:center;gap:10px;min-height:38px;margin:0;padding:10px 8px;border:1px solid #0009;border-radius:2px;background:linear-gradient(180deg,#2b3037 0%,#191d23 48%,#0e1116 100%);color:#eef0f4;font-size:10px;font-weight:700;text-transform:uppercase;box-shadow:inset 0 1px #ffffff38,inset 0 -1px #0007,inset 0 0 0 1px #ffffff0d,0 2px #0009,0 4px 10px #0005; }
.page-contents nav a::before { counter-increment:contents-item;content:counter(contents-item,decimal-leading-zero);color:#bfc5ce;font-weight:400;flex-shrink:0; }
.page-contents nav a[aria-current] { background:linear-gradient(180deg,#e02632,#a30e18);color:#fff; }
.page-contents nav a:hover { filter:brightness(1.15); }
.page-contents nav a:active { transform:translateY(2px);box-shadow:inset 0 2px 4px #0008; }
.page-contents nav a[hidden] { display:none; }

/* Red title bar and white heading above the selected numbered buttons. */
.page-contents { border-top:1px solid #343941; }
.page-contents summary { background:#e51b2b;color:#fff;padding:9px 10px;font-size:11px;font-weight:900;font-style:italic;line-height:1;letter-spacing:.01em; }
.page-contents summary::after { color:#fff; }
.page-contents .contents-heading { display:flex;align-items:center;height:64px;min-height:0;padding:12px 10px;background:linear-gradient(#f7f8f9,#d9dde2);color:#101418;font-size:22px;font-weight:900;letter-spacing:-.035em; }

/* Align both header bands with the adjacent main window. */
.page-contents:not(.is-compact) summary { height:var(--contents-bar-height,30px);min-height:var(--contents-bar-height,30px);box-sizing:border-box; }
.page-contents:not(.is-compact) .contents-heading { height:var(--contents-heading-height,64px);min-height:var(--contents-heading-height,64px);box-sizing:border-box; }

.page-contents summary {
 background:#e0242e;border-bottom:1px solid rgba(0,0,0,.5);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 -1px 0 rgba(0,0,0,.35);
 font-size:13px;padding:6px 10px;display:flex;align-items:center;line-height:1;
}

/* Stable dimensions: scrolling between sections must not resize the contents window. */
.page-contents:not(.is-compact) summary { height:var(--contents-bar-height,30px);min-height:var(--contents-bar-height,30px); }
.page-contents:not(.is-compact) .contents-heading { height:var(--contents-heading-height,64px);min-height:var(--contents-heading-height,64px); }
.page-contents { transition:none; }

/* The desktop home sidebar belongs to the content surface, below the hero.
   Native sticky positioning handles both the starting edge and the footer. */
.contents-sidebar { position:absolute;bottom:0;width:156px;z-index:20;pointer-events:none; }
.contents-sidebar[hidden] { display:none; }
.contents-sidebar > .page-contents:not(.is-compact) { position:sticky;top:var(--contents-top,120px);left:auto;pointer-events:auto; }
.contents-sidebar .page-contents > summary { background:#e0242e;color:#fff;border-bottom:1px solid rgba(0,0,0,.5); }

/* Keep the title bar red in every state, including inside the .nx button theme. */
body[data-contents-page] details.page-contents > summary,
body[data-contents-page] details.page-contents > summary:hover,
body[data-contents-page] details.page-contents > summary:active,
body[data-contents-page] details.page-contents > summary:focus {
 background:#e0242e;color:#fff;border-radius:0;
 border:0;border-bottom:1px solid rgba(0,0,0,.5);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 -1px 0 rgba(0,0,0,.35);
 transform:none;transition:none;
}

/* Match the shared section kicker without changing the sidebar's compact layout. */
body[data-contents-page] details.page-contents > summary {
 font-family:var(--f-head);font-size:clamp(12px,1.25vw,17px);
 font-weight:900;font-style:italic;line-height:1;letter-spacing:.01em;
 padding:8px 10px 4px;white-space:nowrap;
}

.page-contents[open] > summary::after { content:none;display:none; }

.nx-claim-surface.contents-layout { overflow:clip; }
