Molbap's picture
Molbap HF Staff
migrate template
b565d01
/* ============================================================================ */
/* Layout – 3-column grid (Table of Contents / Article / Aside) */
/* ============================================================================ */
.content-grid {
max-width: 1280px;
margin: 0 auto;
padding: 0 var(--content-padding-x);
margin-top: 40px;
display: grid;
grid-template-columns: 260px minmax(0, 680px) 260px;
gap: 32px;
align-items: start;
}
.content-grid>main {
max-width: 100%;
margin: 0;
padding: 0;
}
.content-grid>main>*:first-child {
margin-top: 0;
}
@media (--bp-content-collapse) {
.content-grid {
overflow: hidden;
display: block;
margin-top: var(--spacing-2);
}
.content-grid {
grid-template-columns: 1fr;
}
.table-of-contents {
position: static;
display: none;
}
.table-of-contents-mobile {
display: block;
}
.footer-inner {
grid-template-columns: 1fr;
gap: 16px;
}
.footer-inner>h3 {
grid-column: auto;
margin-top: 16px;
}
.footer-inner {
display: block;
padding: 40px 16px;
}
}
/* ============================================================================ */
/* Width helpers – slightly wider than main column, and full-width to viewport */
/* ---------------------------------------------------------------------------- */
.wide,
.full-width {
box-sizing: border-box;
position: relative;
z-index: var(--z-elevated);
background-color: var(--background-color);
}
.wide {
/* Target up to ~1100px while staying within viewport minus page gutters */
width: min(1100px, 100vw - var(--content-padding-x) * 2);
margin-left: 50%;
transform: translateX(-50%);
padding: var(--content-padding-x);
border-radius: var(--button-radius);
background-color: var(--page-bg);
}
.full-width {
/* Span the full viewport width and center relative to viewport */
width: 100vw;
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw);
}
@media (--bp-content-collapse) {
.wide,
.full-width {
width: 100%;
margin-left: 0;
margin-right: 0;
padding: 0;
transform: none;
}
}
/* ============================================================================ */
/* Theme toggle placement */
/* ============================================================================ */
#theme-toggle {
position: fixed;
top: calc(var(--spacing-4) + var(--hf-spaces-topbar, 0px));
right: var(--spacing-3);
margin: 0;
z-index: var(--z-overlay);
}
/* ------------------------------------------------------------------------- */
/* Hero meta bar responsiveness */
/* Two columns at collapse breakpoint, then one column below small screens */
/* ------------------------------------------------------------------------- */
@media (--bp-sm) {
header.meta .meta-container {
display: flex;
flex-wrap: wrap;
row-gap: 12px;
column-gap: 8px;
max-width: 100%;
padding: 0 var(--spacing-4);
}
header.meta .meta-container .meta-container-cell {
flex: 1 1 calc(50% - 8px);
min-width: 0;
}
}
@media (--bp-xxs) {
header.meta .meta-container .meta-container-cell {
flex-basis: 100%;
text-align: center;
}
/* Center ordered list numbers within meta (e.g., affiliations) */
header.meta .affiliations {
list-style-position: inside;
padding-left: 0;
margin-left: 0;
}
header.meta .affiliations li {
text-align: center;
}
}
/* ------------------------------------------------------------------------- */
/* D3 neural embed responsiveness */
/* Stack canvas (left) over network (right) on small screens */
/* ------------------------------------------------------------------------- */
@media (--bp-md) {
.d3-neural .panel {
flex-direction: column;
}
.d3-neural .panel .left {
flex: 0 0 auto;
width: 100%;
}
.d3-neural .panel .right {
flex: 0 0 auto;
width: 100%;
min-width: 0;
}
}