.page-text { display: flex; flex-direction: column; min-height: 100%; }
.page-text main { flex: 1 1 auto; padding: var(--space-xl) var(--space-md) var(--space-2xl); }
.page-text .prose > h1:first-child {
padding-bottom: var(--space-sm);
border-bottom: 1px solid var(--color-line);
margin-bottom: var(--space-md);
}
.page-text .prose > h1:first-child + p {
font-size: var(--type-size-h3);
line-height: var(--type-line-body);
color: var(--color-ink-muted);
margin-bottom: var(--space-lg);
}
.page-text .prose { max-width: var(--type-measure); }
.page-text h1 {
font-size: 34px;
line-height: 1.12;
letter-spacing: -0.01em;
margin: 0 0 var(--space-md);
}
.page-text h2 {
font-size: var(--type-size-h2);
line-height: var(--type-line-tight);
letter-spacing: -0.01em;
margin: var(--space-xl) 0 var(--space-xs);
}
.page-text h3 { font-size: var(--type-size-h3); margin: var(--space-md) 0 var(--space-2xs); }
.page-text p, .page-text li { max-width: var(--type-measure); }
.table-scroll {
overflow-x: auto;
max-width: 100%;
margin-bottom: var(--space-md);
}
.page-text table {
border-collapse: collapse;
width: 100%;
max-width: var(--type-measure);
font-size: var(--type-size-small);
}
.page-text th, .page-text td {
border-bottom: 1px solid var(--color-line);
padding: var(--space-xs);
text-align: left;
vertical-align: top;
}
.page-text thead th {
color: var(--color-ink-muted);
font-weight: var(--type-weight-medium);
border-bottom: 1px solid var(--color-line-strong);
white-space: nowrap;
}
.page-text tbody tr:last-child th,
.page-text tbody tr:last-child td { border-bottom: 0; }
.page-text th[scope="row"] { font-weight: var(--type-weight-regular); color: var(--color-ink-muted); }
@media (max-width: 640px) {
.page-text thead th { white-space: normal; }
.page-text th, .page-text td { padding: var(--space-2xs); }
}
.page-text .formula {
background: var(--color-surface-alt);
border: 1px solid var(--color-line);
border-left: 3px solid var(--color-accent);
border-radius: var(--radius-sm);
padding: var(--space-md);
line-height: 1.9;
white-space: pre-wrap;
font-family: var(--type-family-mono);
font-size: var(--type-size-small);
overflow-x: auto;
}
.page-text .source-entry {
padding: var(--space-sm) 0;
border-bottom: 1px solid var(--color-line);
max-width: var(--type-measure);
}
.page-text .source-entry h3 { margin-top: 0; }
.page-text .source-entry:target {
background: var(--color-surface-alt);
border-left: 3px solid var(--color-accent);
padding-left: var(--space-sm);
scroll-margin-top: var(--space-lg);
}
.page-text .draft-note {
color: var(--color-ink-muted);
font-size: var(--type-size-small);
border-left: 2px solid var(--color-line-strong);
padding-left: var(--space-xs);
}
.partner-form { max-width: var(--type-measure); }
.partner-form p { margin: 0 0 var(--space-sm); }
.partner-form label {
display: block;
margin-bottom: var(--space-3xs);
font-size: var(--type-size-small);
color: var(--color-ink-muted);
}
.partner-form input,
.partner-form textarea {
width: 100%;
font: inherit;
color: var(--color-ink);
background: var(--color-surface);
border: 1px solid var(--color-line-strong);
border-radius: var(--radius-sm);
padding: var(--space-2xs) var(--space-xs);
}
.partner-form textarea { resize: vertical; }
.partner-form__hint {
margin-left: var(--space-xs);
font-size: var(--type-size-small);
color: var(--color-ink-muted);
}
