
.fr-page {
  --fr-ink: #0f1419; --fr-ink2: #475569; --fr-mute: #64748b; --fr-line: #e7edf1; --fr-line2: #cfd9de;
  --fr-brand: #0d9488; --fr-brand-dark: #0f766e; --fr-soft: #f8f9fb; --fr-warn: var(--status-warning, #92400e);
  background: #fff;
}
.fr { max-width: 1180px; margin: 0 auto; padding: 40px 28px 72px; box-sizing: border-box; color: var(--fr-ink); font-variant-numeric: tabular-nums; }
.fr-head { max-width: 720px; margin-bottom: 36px; }
.fr h1 { font-size: 30px; line-height: 1.2; font-weight: 600; letter-spacing: -0.02em; margin: 0 0 12px; }
.fr h2 { font-size: 18px; font-weight: 600; letter-spacing: -0.01em; margin: 40px 0 12px; }
.fr-lede { font-size: 16px; line-height: 1.55; color: var(--fr-ink2); margin: 0 0 8px; }
.fr-meta, .fr-note { font-size: 13.5px; line-height: 1.55; color: var(--fr-mute); margin: 0 0 12px; }
.fr a { color: var(--fr-brand-dark); text-decoration: none; }
.fr a:hover { text-decoration: underline; }
.fr a:focus-visible { outline: 2px solid var(--fr-brand); outline-offset: 2px; border-radius: 2px; }
.fr-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; border-top: 1px solid var(--fr-line2); }
.fr-t { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.fr-t th, .fr-t td { text-align: left; vertical-align: top; padding: 10px 14px 10px 0; border-bottom: 1px solid var(--fr-line); }
.fr-t thead th { font-size: 12px; font-weight: 500; color: var(--fr-mute); white-space: nowrap; }
.fr-t tbody th { font-weight: 500; white-space: nowrap; }
.fr-t .fr-num { text-align: right; white-space: nowrap; }
.fr-t code { font: 12px/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; color: var(--fr-ink2); }
.fr-sub { display: block; font-size: 12px; color: var(--fr-mute); margin-top: 2px; }
.fr-no { color: var(--fr-mute); }

.fr-warn { color: var(--fr-warn); font-weight: 500; }
.fr-files tbody th { white-space: normal; min-width: 220px; }
.fr-src { list-style: none; margin: 0; padding: 0; }
.fr-src li { margin: 0 0 4px; line-height: 1.45; }
.fr-lic { display: block; font-size: 12px; color: var(--fr-mute); }
.fr-dl { white-space: nowrap; }
.fr-dl a + a { margin-left: 12px; }
.fr-areas tbody th, .fr-areas thead th:first-child { position: sticky; left: 0; background: #fff; }
@media (max-width: 640px) {
  .fr { padding: 28px 16px 56px; }
  .fr h1 { font-size: 24px; }
}
.fr-src details summary { cursor: pointer; color: var(--fr-brand-dark); font-size: 13px; }
.fr-src details[open] summary { margin-bottom: 6px; }

@media (max-width: 640px) {
  .fr-ds thead { display: none; }
  .fr-ds, .fr-ds tbody, .fr-ds tr, .fr-ds th, .fr-ds td { display: block; }
  .fr-ds tr { padding: 12px 0; border-bottom: 1px solid var(--fr-line); }
  .fr-ds th, .fr-ds td { border: 0; padding: 2px 0; text-align: left; }
  .fr-ds tbody th { font-size: 15px; font-weight: 600; }
  .fr-ds td.fr-num { display: inline-block; text-align: left; margin-right: 12px; color: var(--fr-ink2); }
  .fr-ds td.fr-num:nth-of-type(2)::before { content: "Areas "; color: var(--fr-mute); }
  .fr-ds td:nth-of-type(4) { margin-top: 8px; }
}
