

@font-face{
  font-family: "Newsreader";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/Newsreader-Regular.d9be7ccd61cc.woff2") format("woff2"),
       url("../fonts/Newsreader-Regular.d9be7ccd61cc.woff2") format("woff2");
}
@font-face{
  font-family: "Newsreader";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/Newsreader-Bold.97c92e5b6928.woff2") format("woff2"),
       url("../fonts/Newsreader-Bold.97c92e5b6928.woff2") format("woff2");
}
:root{
  
  --color-ink: #1b1b1b;
  --color-ink-sub: #5b5b5b;
  --color-ink-weak: #6f6f6f;
  --color-bg: #ffffff;
  --color-surface: #f5f4f1;
  --color-invert-bg: #1b1b1b;
  --color-invert-ink: #ffffff;
  --color-invert-ink-sub: #c9c6bf;
  --color-accent: #17564a;
  --color-accent-ink: #ffffff;
  --color-accent-hover: #0f4438;
  --color-cta: #c2431f;
  --color-cta-ink: #ffffff;
  --color-cta-hover: #96300f;
  --color-link: #1a4f7a;
  --color-link-hover: #0f3a5c;
  --color-data-primary: #17564a;
  --color-data-up: #1b1b1b;
  --color-data-down: #4a4a4a;
  --color-data-up-alt: #1f4f7a;
  --color-data-down-alt: #8a5410;
  --color-direction-up: #1b7638;
  --color-direction-down: #a4262c;
  --color-caution: #8a5410;
  --color-focus: #17564a;
  --color-focus-invert: #ffffff;
  --colorScheme-yoy-chosen: C;
  --colorScheme-yoy-status: FROZEN;
  --colorScheme-yoy-up: #1b7638;
  --colorScheme-yoy-down: #a4262c;
  --colorScheme-yoy-flat: #1b1b1b;
  --colorScheme-yoy-reserve-up: #1f4f7a;
  --colorScheme-yoy-reserve-down: #8a5410;
  --font-family-ja: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic Medium", "Yu Gothic", "Segoe UI", sans-serif;
  --font-family-num: "Newsreader", "Helvetica Neue", "Roboto", Arial, "Hiragino Sans", sans-serif;
  --font-family-editorial: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  --font-weights: 400, 500, 700;
  --font-features-heading: "palt" 1;
  --font-features-body: "palt" 1;
  --font-features-num: "tnum" 1, "palt" 0;
  --font-measure-body: 42em;
  --font-scale-display-size: clamp(2.5rem, 8.5vw, 3.5rem);
  --font-scale-display-size-m: 40px;
  --font-scale-display-size-d: 56px;
  --font-scale-display-line-height: 1.05;
  --font-scale-display-weight: 700;
  --font-scale-display-letter-spacing: -0.02em;
  --font-scale-display-family: "Newsreader", "Helvetica Neue", "Roboto", Arial, "Hiragino Sans", sans-serif;
  --font-scale-display-feature: "tnum" 1, "palt" 0;
  --font-scale-h1-size: clamp(1.5rem, 5vw, 1.875rem);
  --font-scale-h1-size-m: 24px;
  --font-scale-h1-size-d: 30px;
  --font-scale-h1-line-height: 1.32;
  --font-scale-h1-weight: 700;
  --font-scale-h1-letter-spacing: 0.005em;
  --font-scale-h1-family: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic Medium", "Yu Gothic", "Segoe UI", sans-serif;
  --font-scale-h1-feature: "palt" 1;
  --font-scale-h2-size: clamp(1.1875rem, 3.4vw, 1.3125rem);
  --font-scale-h2-size-m: 19px;
  --font-scale-h2-size-d: 21px;
  --font-scale-h2-line-height: 1.4;
  --font-scale-h2-weight: 700;
  --font-scale-h2-letter-spacing: 0.02em;
  --font-scale-h2-family: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic Medium", "Yu Gothic", "Segoe UI", sans-serif;
  --font-scale-h2-feature: "palt" 1;
  --font-scale-body-size: clamp(1rem, 2.6vw, 1.0625rem);
  --font-scale-body-size-m: 16px;
  --font-scale-body-size-d: 17px;
  --font-scale-body-line-height: 1.8;
  --font-scale-body-weight: 400;
  --font-scale-body-letter-spacing: 0.01em;
  --font-scale-body-family: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic Medium", "Yu Gothic", "Segoe UI", sans-serif;
  --font-scale-body-feature: "palt" 1;
  --font-scale-caption-size: 0.8125rem;
  --font-scale-caption-size-m: 13px;
  --font-scale-caption-size-d: 13px;
  --font-scale-caption-line-height: 1.7;
  --font-scale-caption-weight: 400;
  --font-scale-caption-letter-spacing: 0.02em;
  --font-scale-caption-family: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic Medium", "Yu Gothic", "Segoe UI", sans-serif;
  --font-scale-caption-feature: "palt" 1;
  --font-scale-small-size: 0.75rem;
  --font-scale-small-size-m: 12px;
  --font-scale-small-size-d: 12px;
  --font-scale-small-line-height: 1.6;
  --font-scale-small-weight: 400;
  --font-scale-small-letter-spacing: 0.03em;
  --font-scale-small-family: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic Medium", "Yu Gothic", "Segoe UI", sans-serif;
  --font-scale-small-feature: "palt" 1;
  --font-scale-data-s-size: 0.75rem;
  --font-scale-data-s-size-m: 12px;
  --font-scale-data-s-size-d: 12px;
  --font-scale-data-s-line-height: 1.6;
  --font-scale-data-s-weight: 500;
  --font-scale-data-s-letter-spacing: 0.02em;
  --font-scale-data-s-family: "Newsreader", "Helvetica Neue", "Roboto", Arial, "Hiragino Sans", sans-serif;
  --font-scale-data-s-feature: "tnum" 1, "palt" 0;
  --font-line-height-body: 1.8;
  --font-line-height-heading: 1.35;
  --voice-editorial-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  --voice-editorial-size: 0.9375rem;
  --voice-editorial-line-height: 1.9;
  --voice-editorial-rule-color: #17564a;
  --space-unit: 4;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 40px;
  --space-8: 48px;
  --space-9: 56px;
  --space-10: 64px;
  --space-11: 80px;
  --space-12: 96px;
  --rhythm-section-tight-m: 24px;
  --rhythm-section-tight-d: 32px;
  --rhythm-section-base-m: 40px;
  --rhythm-section-base-d: 56px;
  --rhythm-section-loose-m: 56px;
  --rhythm-section-loose-d: 80px;
  --rhythm-block-m: 16px;
  --rhythm-block-d: 24px;
  --rhythm-element-m: 8px;
  --rhythm-element-d: 12px;
  --band-base-bg: #ffffff;
  --band-base-ink: #1b1b1b;
  --band-tint-bg: #f5f4f1;
  --band-tint-ink: #1b1b1b;
  --band-invert-bg: #1b1b1b;
  --band-invert-ink: #ffffff;
  --line-hairline-color: #e7e5df;
  --line-hairline-width: 1px;
  --line-rule-color: #d5d2ca;
  --line-rule-width: 1px;
  --line-divider-color: #1b1b1b;
  --line-divider-width: 2px;
  --line-quote-color: #1b1b1b;
  --line-quote-color-weak: #d5d2ca;
  --line-quote-width: 3px;
  --radius-base: 3px;
  --table-header-size: 0.75rem;
  --table-header-weight: 700;
  --table-header-color: #1b1b1b;
  --table-header-bg: #f5f4f1;
  --table-header-letter-spacing: 0.04em;
  --table-rowhead-size: 0.75rem;
  --table-rowhead-weight: 500;
  --table-rowhead-color: #1b1b1b;
  --table-rowhead-bg: #f5f4f1;
  --table-cell-size-m: 13px;
  --table-cell-size-d: 14px;
  --table-cell-color: #1b1b1b;
  --table-cell-padding-m: 8px 10px;
  --table-cell-padding-d: 10px 12px;
  --table-unit-size: 11px;
  --table-unit-color: #5b5b5b;
  --table-caption-size: 0.75rem;
  --table-caption-color: #5b5b5b;
  --table-empty-glyph: —;
  --table-empty-color: #5b5b5b;
  --table-hover-bg: #eef1ef;
  --table-sticky-border-width: 1px;
  --table-sticky-border-color: #5b5b5b;
  --table-scroll-fade-width: 28px;
  --table-mobile-chosen: scroll;
  --table-mobile-status: FROZEN;
  --table-mobile-scroll-sticky-first-col: true;
  --hero-sub-value-size-m: 19px;
  --hero-sub-value-size-d: 22px;
  --hero-sub-value-weight: 700;
  --hero-sub-label-size: 0.75rem;
  --hero-sub-unit-size: 11px;
  --rank-value-size: clamp(2.5rem, 8.5vw, 3.5rem);
  --rank-value-size-m: 40px;
  --rank-value-size-d: 56px;
  --rank-value-sub-size-m: 19px;
  --rank-value-sub-size-d: 22px;
  --rank-value-line-height: 1.05;
  --rank-value-weight: 700;
  --rank-value-letter-spacing: -0.02em;
  --rank-value-family: "Newsreader", "Helvetica Neue", "Roboto", Arial, "Hiragino Sans", sans-serif;
  --rank-value-feature: "tnum" 1, "palt" 0;
  --rank-value-numeric: tabular-nums;
  --rank-value-ink: #1b1b1b;
  --rank-label-size: 0.75rem;
  --rank-label-size-m: 12px;
  --rank-label-line-height: 1.35;
  --rank-label-weight: 400;
  --rank-label-ink: #5b5b5b;
  --rank-note-size: 0.75rem;
  --rank-note-size-m: 12px;
  --rank-note-line-height: 1.6;
  --rank-note-weight: 400;
  --rank-note-ink: #5b5b5b;
  --rank-note-numeric: tabular-nums;
  --cta-min-height: 48px;
  --cta-padding-m: 14px 20px;
  --cta-padding-d: 14px 28px;
  --cta-font-size: clamp(1rem, 2.6vw, 1.0625rem);
  --cta-font-weight: 700;
  --cta-bg: #c2431f;
  --cta-ink: #ffffff;
  --cta-hover-bg: #96300f;
  --cta-radius: 3px;
  --cta-transition: background .15s ease;
  --cta-hover-outline-width: 2px;
  --cta-hover-outline-color: #ffffff;
  --cta-pending-bg: #f5f4f1;
  --cta-pending-ink: #1b1b1b;
  --cta-pending-border-color: #5b5b5b;
  --cta-pending-border-width: 1px;
  --cta-pending-note-ink: #8a5410;
  --brand-wordmark-size: 1.0625rem;
  --brand-wordmark-weight: 700;
  --brand-wordmark-tracking: 0.14em;
  --banner-dev-bg: #2a2a2a;
  --banner-dev-ink: #ffffff;
  --banner-dev-mark: #ffd27a;
  --banner-dev-size: 0.75rem;
  --banner-dev-line-height: 1.5;
  --banner-dev-padding-block: 5px;
  --banner-dev-align: center;
  --sparse-bg: #f5f4f1;
  --sparse-ink: #1b1b1b;
  --sparse-rule-color: #8a5410;
  --sparse-rule-width: 3px;
  --sparse-padding-m: 24px;
  --sparse-padding-d: 32px;
  --sparse-slot-bg: #f0ece2;
  --sparse-slot-ink: #8a5410;
  --disclosure-summary-min-height: 44px;
  --disclosure-summary-padding-block: 12px;
  --disclosure-summary-gap: 8px;
  --disclosure-summary-size: 0.8125rem;
  --disclosure-summary-line-height: 1.7;
  --disclosure-summary-weight: 700;
  --disclosure-summary-ink: #1a4f7a;
  --disclosure-summary-hover-ink: #0f3a5c;
  --disclosure-summary-underline-offset: 3px;
  --disclosure-icon-size: 18px;
  --disclosure-icon-ink: #1a4f7a;
  --disclosure-icon-border-width: 1.5px;
  --disclosure-icon-glyph-size: 12px;
  --disclosure-state-size: 0.75rem;
  --disclosure-state-ink: #5b5b5b;
  --disclosure-state-label-closed: "開く";
  --disclosure-state-label-open: "閉じる";
  --disclosure-body-size: 0.8125rem;
  --disclosure-body-line-height: 1.8;
  --disclosure-body-ink: #1b1b1b;
  --disclosure-body-rule-color: #d5d2ca;
  --disclosure-body-rule-width: 3px;
  --disclosure-body-padding-inline: 16px;
  --disclosure-body-padding-block: 12px;
  --disclosure-body-gap: 12px;
  --freshness-badge-size: 0.75rem;
  --freshness-badge-line-height: 1.6;
  --freshness-badge-weight: 400;
  --freshness-badge-ink: #5b5b5b;
  --freshness-badge-label-ink: #5b5b5b;
  --freshness-badge-numeric: tabular-nums;
  --freshness-badge-margin-top: 8px;
  --freshness-unresolved-ink: #8a5410;
  --freshness-meta-label-size: 0.75rem;
  --freshness-meta-label-line-height: 1.35;
  --freshness-meta-label-ink: #5b5b5b;
  --freshness-meta-value-size: clamp(1rem, 2.6vw, 1.0625rem);
  --freshness-meta-value-line-height: 1.35;
  --freshness-meta-value-ink: #1b1b1b;
  --freshness-meta-row-gap: 4px;
  --freshness-meta-column-gap: 24px;
  --freshness-full-label-size: 0.75rem;
  --freshness-full-value-size: 0.8125rem;
  --freshness-full-row-gap: 12px;
  --placeholder-underline-color: #8a5410;
  --placeholder-underline-style: dashed;
  --placeholder-underline-width: 1px;
  --placeholder-badge-size: 0.75rem;
  --placeholder-badge-ink: #8a5410;
  --fv-viewport-m: 375x667;
  --fv-viewport-m2: 390x844;
  --fv-safe-height-m: 553px;
  --fv-budget: 480px;
  --fv-d26-target: 840px;
  --fv-header-height-m: 48px;
  --fv-header-height-d: 56px;
  --fv-pr-size: 0.75rem;
  --fv-pr-color: #6f6f6f;
  --fv-pr-align: right;
  --fv-pr-band: none;
  --fv-pr-padding: 6px 0 2px;
  --fv-pr-line-height: 1.4;
  --fv-pr-locked: true;
  --a11y-contrast-min-text: 4.5;
  --a11y-contrast-min-large-text: 3.0;
  --a11y-contrast-min-non-text: 3.0;
  --a11y-focus-width: 3px;
  --a11y-focus-offset: 2px;
  --a11y-focus-color: #17564a;
  --a11y-focus-color-invert: #ffffff;
  --a11y-tap-min: 44px;
  --a11y-tap-min-inline: 24px;
  --chart-background: #ffffff;
  --chart-axis: #d5d2ca;
  --chart-grid: #e7e5df;
  --chart-grid-direction: horizontal;
  --chart-grid-count: 5;
  --chart-line-width: 2;
  --chart-series: #17564a;
  --chart-marker-radius: 3.5;
  --chart-marker-last-only: true;
  --chart-marker-suppressed-radius: 3.0;
  --chart-marker-suppressed-fill: none;
  --chart-marker-suppressed-stroke-width: 1.6;
  --chart-annotation-size: 12px;
  --chart-annotation-weight: 700;
  --chart-annotation-color: #1b1b1b;
  --chart-label-size: 11px;
  --chart-label-color: #5b5b5b;
  --chart-label-family: "Newsreader", "Helvetica Neue", "Roboto", Arial, "Hiragino Sans", sans-serif;
  --chart-y-axis-zero-base: false;
  --chart-area-fill-top-opacity: 0.15;
  --chart-area-fill-bottom-opacity: 0;
  --chart-area-fill-color: #17564a;
  --chart-area-stroke-width: 2;
  --chart-bars-fill-color: #17564a;
  --chart-bars-fill-opacity: 0.65;
  --chart-bars-gap-ratio: 0.38;
  --chart-bars-min-width: 3px;
  --chart-bars-max-width: 28px;
  --chart-bars-baseline-color: #d5d2ca;
  --chart-bars-label-color: #5b5b5b;
  --chart-updown-up: #1b7638;
  --chart-updown-down: #a4262c;
  --chart-updown-flat: #1b1b1b;
  --chart-mix-seq-1-fill: #17564a;
  --chart-mix-seq-1-ink: #ffffff;
  --chart-mix-seq-2-fill: #33786a;
  --chart-mix-seq-2-ink: #ffffff;
  --chart-mix-seq-3-fill: #569a8a;
  --chart-mix-seq-3-ink: #1b1b1b;
  --chart-mix-seq-4-fill: #94bbb1;
  --chart-mix-seq-4-ink: #1b1b1b;
  --chart-mix-outside-ink: #1b1b1b;
  --chart-mix-gap-color: #ffffff;
  --chart-mix-gap-width: 1px;
  --chart-strip-price-height-m: 200;
  --chart-strip-price-height-d: 220;
  --chart-strip-count-height-m: 46;
  --chart-strip-count-height-d: 52;
  --chart-strip-gap: 12px;
  --chart-strip-xaxis-height: 22;
  --chart-strip-count-label-width: 34;
  --chart-annotation-latest-weight: 700;
  --chart-annotation-extremum-weight: 400;
  --chart-annotation-extremum-color: #5b5b5b;
  --chart-annotation-leader-color: #d5d2ca;
  --chart-annotation-halo-color: #ffffff;
  --chart-annotation-halo-width: 3px;
  --chart-event-line-color: #5b5b5b;
  --chart-event-line-width: 1px;
  --chart-event-line-dash: 3 3;
  --chart-event-label-size: 11px;
  --chart-event-label-color: #5b5b5b;
  --chart-xaxis-label-size: 11px;
  --chart-xaxis-label-color: #5b5b5b;
  --chart-xaxis-tick-color: #d5d2ca;
  --chart-xaxis-tick-length: 4;
  --motion-duration: 0.15s;
  --motion-easing: ease;
  --layout-width-text: 760px;
  --layout-width-wide: 920px;
  --layout-gutter-m: 16px;
  --layout-gutter-d: 32px;
  }

:root{
  --sp-sec-tight: var(--rhythm-section-tight-m);
  --sp-sec-base:  var(--rhythm-section-base-m);
  --sp-sec-loose: var(--rhythm-section-loose-m);
  --sp-block:     var(--rhythm-block-m);
  --sp-elem:      var(--rhythm-element-m);
  --gutter:       var(--layout-gutter-m);
  --header-h:     var(--fv-header-height-m);
  --cell-size:    var(--table-cell-size-m);
  --cell-pad:     var(--table-cell-padding-m);
  --cta-pad:      var(--cta-padding-m);
  --kpi-sub-size: var(--hero-sub-value-size-m);
  --sparse-pad:   var(--sparse-padding-m);
}
@media (min-width:768px){
  :root{
    --sp-sec-tight: var(--rhythm-section-tight-d);
    --sp-sec-base:  var(--rhythm-section-base-d);
    --sp-sec-loose: var(--rhythm-section-loose-d);
    --sp-block:     var(--rhythm-block-d);
    --sp-elem:      var(--rhythm-element-d);
    --gutter:       var(--layout-gutter-d);
    --header-h:     var(--fv-header-height-d);
    --cell-size:    var(--table-cell-size-d);
    --cell-pad:     var(--table-cell-padding-d);
    --cta-pad:      var(--cta-padding-d);
    --kpi-sub-size: var(--hero-sub-value-size-d);
    --sparse-pad:   var(--sparse-padding-d);
  }
}

*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--band-base-bg); color:var(--band-base-ink);
  font-family:var(--font-scale-body-family);
  font-size:var(--font-scale-body-size);
  line-height:var(--font-scale-body-line-height);
  font-weight:var(--font-scale-body-weight);
  letter-spacing:var(--font-scale-body-letter-spacing);
  font-feature-settings:var(--font-scale-body-feature);
  text-rendering:optimizeLegibility;
}
.num{
  font-family:var(--font-scale-display-family);
  font-feature-settings:var(--font-scale-display-feature);
  font-variant-numeric:tabular-nums; letter-spacing:0;
}
h1{ font-size:var(--font-scale-h1-size); line-height:var(--font-scale-h1-line-height);
  font-weight:var(--font-scale-h1-weight); letter-spacing:var(--font-scale-h1-letter-spacing);
  font-feature-settings:var(--font-scale-h1-feature); margin:0; }
h1 .sub{ display:block; font-size:.66em; color:var(--color-ink-sub); font-weight:500;
  letter-spacing:var(--font-scale-h2-letter-spacing); margin-top:2px; }
h2{ font-size:var(--font-scale-h2-size); line-height:var(--font-scale-h2-line-height);
  font-weight:var(--font-scale-h2-weight); letter-spacing:var(--font-scale-h2-letter-spacing);
  font-feature-settings:var(--font-scale-h2-feature); text-wrap:balance;
  margin:0 0 var(--sp-block); padding-bottom:var(--sp-elem);
  border-bottom:var(--line-hairline-width) solid var(--line-hairline-color); }
h3{ font-size:var(--font-scale-caption-size); line-height:var(--font-scale-caption-line-height);
  font-weight:700; letter-spacing:var(--font-scale-caption-letter-spacing); margin:0 0 var(--sp-elem); }

h4{ font-size:var(--font-scale-caption-size); line-height:var(--font-scale-caption-line-height);
  font-weight:600; letter-spacing:var(--font-scale-caption-letter-spacing); margin:0 0 var(--sp-elem); }
p + h4{ margin-top:var(--sp-block); }
p{ margin:0 0 var(--sp-block); }
p:last-child{ margin-bottom:0; }
.cap{ font-size:var(--font-scale-caption-size); line-height:var(--font-scale-caption-line-height);
  letter-spacing:var(--font-scale-caption-letter-spacing); color:var(--color-ink-sub); }
.small{ font-size:var(--font-scale-small-size); line-height:var(--font-scale-small-line-height);
  letter-spacing:var(--font-scale-small-letter-spacing); }
a{ color:var(--color-link); text-decoration:underline; text-underline-offset:2px; text-decoration-thickness:1px; }
a:hover{ color:var(--color-link-hover); }
:focus-visible{ outline:var(--a11y-focus-width) solid var(--a11y-focus-color);
  outline-offset:var(--a11y-focus-offset); }
.band-invert :focus-visible{ outline-color:var(--a11y-focus-color-invert); }

[data-placeholder="d30-naming"]{
  text-decoration:underline var(--placeholder-underline-style) var(--placeholder-underline-color);
  text-underline-offset:3px; text-decoration-thickness:var(--placeholder-underline-width);
}
svg[data-placeholder="d30-naming"]{
  outline:var(--placeholder-underline-width) var(--placeholder-underline-style) var(--placeholder-underline-color);
  outline-offset:2px;
}

:root{
  
  --layout-measure: calc(var(--layout-width-text) - var(--gutter) * 2);
}
.wrap{ max-width:var(--layout-width-text); margin-inline:auto; padding-inline:var(--gutter); }
.wrap-wide{ max-width:var(--layout-width-wide); margin-inline:auto; padding-inline:var(--gutter); }

.measure{ max-width:var(--layout-measure); margin-inline:auto; }

.wrap-wide > h2,
.wrap-wide .tbl-cap,
.wrap-wide figcaption,
.wrap-wide > .disclosure{ max-width:var(--layout-measure); margin-inline:auto; }

.panel, .sparse-block{
  margin-inline:calc(var(--gutter) * -1);
  padding-inline-start:calc(var(--gutter) - var(--face-edge-start, 0px));
  padding-inline-end:calc(var(--gutter) - var(--face-edge-end, 0px));
}

.disclosure-body, .editorial, .sources .doc, .thin-note, .gate-below{ position:relative; }
.disclosure-body::before, .editorial::before, .sources .doc::before,
.thin-note::before, .gate-below::before{
  content:""; position:absolute; inset-block:0;
  inset-inline-start:calc(var(--gutter) * -1);
  width:var(--rule-w, var(--line-quote-width));
  background:var(--rule-c, var(--line-quote-color-weak));
}

section{ padding-top:var(--sec-t,var(--sp-sec-base)); padding-bottom:var(--sec-b,var(--sp-sec-base)); }
.t-tight{ --sec-t:var(--sp-sec-tight); } .t-loose{ --sec-t:var(--sp-sec-loose); }
.b-tight{ --sec-b:var(--sp-sec-tight); } .b-loose{ --sec-b:var(--sp-sec-loose); }
.band-tint{ background:var(--band-tint-bg); color:var(--band-tint-ink); }
.band-invert{ background:var(--band-invert-bg); color:var(--band-invert-ink); }
.rule-top{ border-top:var(--line-rule-width) solid var(--line-rule-color); }

.dev{ background:var(--banner-dev-bg); color:var(--banner-dev-ink);
  font-size:var(--banner-dev-size); line-height:var(--banner-dev-line-height);
  padding-block:var(--banner-dev-padding-block); text-align:var(--banner-dev-align); }
.dev b{ color:var(--banner-dev-mark); }
.dev .dev-why{ display:block; }

.pr p{ margin:0; padding:var(--fv-pr-padding);
  font-size:var(--fv-pr-size); line-height:var(--fv-pr-line-height);
  color:var(--fv-pr-color); text-align:var(--fv-pr-align); }

.site-header{ border-bottom:var(--line-rule-width) solid var(--line-rule-color); }
.site-header .wrap-wide{ display:flex; align-items:center; justify-content:space-between; min-height:var(--header-h); }
.wordmark{ font-weight:var(--brand-wordmark-weight); letter-spacing:var(--brand-wordmark-tracking);
  font-size:var(--brand-wordmark-size); text-decoration:none; color:var(--color-ink); padding-block:var(--sp-elem); }
.area-link{ font-size:var(--font-scale-caption-size); display:inline-flex; align-items:center;
  min-height:var(--a11y-tap-min); }
.crumbs{ padding-top:var(--sp-elem); }
.crumbs ol{ list-style:none; display:flex; flex-wrap:wrap; gap:0 var(--sp-elem); margin:0; padding:0;
  font-size:var(--font-scale-small-size); line-height:var(--font-scale-small-line-height); color:var(--color-ink-sub); }
.crumbs li::after{ content:"›"; margin-left:var(--sp-elem); color:var(--color-ink-sub); }
.crumbs li:last-child::after{ content:""; }
.crumbs a{ color:var(--color-ink-sub); display:inline-block; min-height:var(--a11y-tap-min-inline); }
.crumbs [aria-current]{ color:var(--color-ink); }
.head{ padding-top:var(--sp-block); }

.meta{ display:flex; flex-wrap:wrap; gap:2px var(--sp-elem); margin:var(--sp-elem) 0 0; padding:0; list-style:none;
  font-size:var(--font-scale-small-size); line-height:var(--font-scale-small-line-height); color:var(--color-ink-sub); }
.lag .lag-label{ font-weight:700; color:var(--color-ink); }
.coverage-note{ margin:var(--sp-elem) 0 0; }
.coverage-note .lag-label{ font-weight:700; color:var(--color-ink); }

.fresh-meta{ display:flex; flex-wrap:wrap;
  row-gap:var(--freshness-meta-row-gap); column-gap:var(--freshness-meta-column-gap);
  margin:var(--sp-elem) 0 0; padding:0; }
.fresh-meta .fresh-item{ display:block; }

.fresh-meta .mlabel{ margin:0; font-size:var(--freshness-meta-label-size);
  line-height:var(--freshness-meta-label-line-height);
  letter-spacing:var(--font-scale-small-letter-spacing);
  color:var(--freshness-meta-label-ink); }

.fresh-meta .mval{ margin:0; font-size:var(--freshness-meta-value-size);
  line-height:var(--freshness-meta-value-line-height);
  color:var(--freshness-meta-value-ink); }

.fresh-meta .mval .num, .fresh-meta .mval time{ white-space:nowrap; }

.fresh-na{ color:var(--freshness-unresolved-ink); font-weight:700; }

.fresh-varies{ color:var(--color-ink-sub); }
.tx-period, .agg-window{ font-variant-numeric:tabular-nums; }

.byline{ display:flex; flex-wrap:wrap; gap:2px var(--sp-elem);
  margin:var(--space-1) 0 0; padding:0; list-style:none; }
.site-footer .byline{ margin-top:var(--sp-elem); }

.fresh-badge .mlabel{ font-size:var(--rank-label-size);
  font-weight:var(--rank-label-weight); color:var(--rank-label-ink); }

.fresh-badge{ font-weight:var(--rank-note-weight); }

[data-rank="note"], [data-rank="3"], [data-rank="note-legal"]{
  font-size:var(--rank-note-size);
  line-height:var(--rank-note-line-height);
  color:var(--rank-note-ink);
}

[data-rank="note-legal"]{ font-size:var(--font-scale-caption-size); }
[data-rank="note"] :is(h2,h3,h4), [data-rank="3"] :is(h2,h3,h4),
[data-rank="note-legal"] :is(h2,h3,h4){ color:var(--color-ink); }

[data-rank="note"] a, [data-rank="3"] a, [data-rank="note-legal"] a{ color:var(--color-link); }

.band-invert [data-rank="note"], .band-invert [data-rank="3"],
.band-invert [data-rank="note-legal"]{
  color:var(--color-invert-ink-sub);
}

#dev-banner{ font-size:var(--banner-dev-size); line-height:var(--banner-dev-line-height);
  color:var(--banner-dev-ink); }

.fresh-badge{ display:flex; flex-wrap:wrap;
  column-gap:var(--freshness-meta-column-gap); row-gap:0; }
.fresh-badge-item{ white-space:nowrap; }

.val-i{ display:inline-flex; align-items:center; justify-content:center;
  min-width:var(--a11y-tap-min-inline); min-height:var(--a11y-tap-min-inline);
  margin-left:2px; color:var(--disclosure-icon-ink); text-decoration:none;
  vertical-align:middle; }
.val-i:hover{ color:var(--disclosure-summary-hover-ink); }

.a11y-only{ position:absolute; width:1px; height:1px; margin:-1px; padding:0;
  overflow:hidden; clip-path:polygon(0 0, 0 0, 0 0); white-space:nowrap; border:0; }

.disclosure-sum h2.disclosure-lab{
  font:inherit; letter-spacing:inherit; font-feature-settings:inherit;
  color:inherit; text-wrap:inherit;
  margin:0; padding:0; border:0;
}

.about-sec + .about-sec{ margin-top:var(--sp-block);
  border-top:var(--line-hairline-width) solid var(--line-hairline-color);
  padding-top:var(--sp-elem); }
.about-h{ margin:0 0 var(--space-1); font-size:var(--disclosure-body-size);
  line-height:var(--font-scale-caption-line-height); font-weight:700;
  color:var(--color-ink); }

.about-meta{ margin:0 0 var(--space-1); }
.about-meta .mval{ font-size:var(--disclosure-body-size); }

.about-sec:target{ border-left:var(--line-quote-width) solid var(--color-accent);
  padding-left:var(--sp-elem); margin-left:calc(-1 * var(--sp-elem)); }

.fresh-k{ font-weight:700; color:var(--color-ink); margin-right:var(--sp-elem); }
.fresh-list{ margin:var(--disclosure-body-gap) 0 0; padding:0; }
.fresh-row{ border-top:var(--line-hairline-width) solid var(--line-hairline-color);
  padding:var(--sp-elem) 0; }
.fresh-row:last-child{ border-bottom:var(--line-hairline-width) solid var(--line-hairline-color); }
.fresh-list dt{ font-size:var(--freshness-full-value-size);
  line-height:var(--font-scale-caption-line-height); color:var(--color-ink); }
.fresh-list dd{ margin:2px 0 0; font-size:var(--freshness-full-label-size);
  line-height:var(--font-scale-caption-line-height); color:var(--color-ink-sub); }
.fresh-src{ display:block; }
.disclosure-body .fresh-list + p{ margin-top:var(--disclosure-body-gap); }

.disclosure{ margin:var(--sp-elem) 0 0; }
.disclosure-sum{
  display:inline-flex; align-items:center; gap:var(--disclosure-summary-gap);
  min-height:var(--disclosure-summary-min-height);
  padding-block:var(--disclosure-summary-padding-block);
  font-size:var(--disclosure-summary-size); line-height:var(--disclosure-summary-line-height);
  font-weight:var(--disclosure-summary-weight); color:var(--disclosure-summary-ink);
  cursor:pointer; list-style:none;
}
.disclosure-sum::-webkit-details-marker{ display:none; }
.disclosure-sum::marker{ content:""; }
.disclosure-sum:hover{ color:var(--disclosure-summary-hover-ink); }
.disclosure-sum:focus-visible{ outline:var(--a11y-focus-width) solid var(--a11y-focus-color);
  outline-offset:var(--a11y-focus-offset); }
.disclosure-lab{ text-decoration:underline; text-underline-offset:var(--disclosure-summary-underline-offset); }
.disclosure-i{ flex:none; color:var(--disclosure-icon-ink); }
.disclosure-state{ font-size:var(--disclosure-state-size); color:var(--disclosure-state-ink); font-weight:400; }
.disclosure-state::before{ content:var(--disclosure-state-label-closed); }
.disclosure[open] .disclosure-state::before{ content:var(--disclosure-state-label-open); }

.disclosure-body{
  --rule-w:var(--disclosure-body-rule-width); --rule-c:var(--disclosure-body-rule-color);
  padding-block:var(--disclosure-body-padding-block);
  font-size:var(--disclosure-body-size); line-height:var(--disclosure-body-line-height);
  color:var(--disclosure-body-ink);
}
.disclosure-body p{ margin:0; }
.disclosure-body p + p{ margin-top:var(--disclosure-body-gap); }
.disclosure-body a{ color:var(--color-link); }

.rounding{ margin-top:var(--sp-elem); }
.rnd-line{ margin:0; font-variant-numeric:tabular-nums; }

.rnd-line + .rnd-line{ margin-top:var(--sp-elem); }
.rnd-link{ margin:var(--sp-elem) 0 0; }

.disclosure-row{ display:flex; flex-wrap:wrap; column-gap:var(--sp-elem); row-gap:0; }

.disclosure-row > .disclosure[open]{ flex-basis:100%; }

.fresh-badge{ margin:var(--freshness-badge-margin-top) 0 0;
  font-size:var(--freshness-badge-size); line-height:var(--freshness-badge-line-height);
  color:var(--freshness-badge-ink); font-variant-numeric:tabular-nums; }

.chart-fig{ margin:0; }

.chart-fig > svg{ width:100%; height:auto; }
.chart-m{ display:block; }
.chart-d{ display:none; }
@media (min-width:768px){ .chart-m{ display:none; } .chart-d{ display:block; } }
.chart-fig figcaption{ margin-top:var(--sp-elem); }
.c-grid line{ stroke:var(--chart-grid); stroke-width:1; }
.c-ylab text, .c-xlab text, .c-clab-g text{
  font-family:var(--chart-label-family); font-size:var(--chart-label-size);
  fill:var(--chart-label-color); font-variant-numeric:tabular-nums; }
.c-ylab text, .c-clab-g text{ text-anchor:end; }
.c-area{ stroke:none; }
.c-line{ fill:none; stroke:var(--chart-series); stroke-width:var(--chart-area-stroke-width);
  stroke-linejoin:round; stroke-linecap:round; }
.c-mark{ fill:var(--chart-series); }
.c-mark-x{ fill:var(--chart-annotation-extremum-color); }

.c-mark-muted{ fill:var(--chart-marker-suppressed-fill); stroke:var(--chart-series);
  stroke-width:var(--chart-marker-suppressed-stroke-width); }

.c-ann-bg{ fill:var(--chart-background); }
.c-ann{ font-family:var(--font-scale-body-family);
  paint-order:stroke fill; stroke:var(--chart-annotation-halo-color);
  stroke-width:var(--chart-annotation-halo-width); stroke-linejoin:round; }
.c-ann-latest{ font-size:var(--chart-annotation-size); font-weight:var(--chart-annotation-latest-weight);
  fill:var(--chart-annotation-color); }
.c-ann-x{ font-size:var(--chart-event-label-size); font-weight:var(--chart-annotation-extremum-weight);
  fill:var(--chart-annotation-extremum-color); }
.c-bar{ fill:var(--chart-bars-fill-color); fill-opacity:var(--chart-bars-fill-opacity); }
.c-baseline{ stroke:var(--chart-bars-baseline-color); stroke-width:1; }

.c-ctick{ stroke:var(--chart-grid); stroke-width:1; }
.c-xtick{ stroke:var(--chart-xaxis-tick-color); stroke-width:1; }
.c-event{ stroke:var(--chart-event-line-color); stroke-width:1; stroke-dasharray:var(--chart-event-line-dash); }
.c-event-lab{ font-family:var(--font-scale-body-family); font-size:var(--chart-event-label-size);
  fill:var(--chart-event-label-color); }

.tbl-wrap{ position:relative; }
.tbl{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.tbl-wrap::after{ content:""; position:absolute; inset-block:0; right:0; width:var(--table-scroll-fade-width);
  background:linear-gradient(to right, rgba(255,255,255,0), var(--color-bg)); pointer-events:none; opacity:0; }
.tbl-wrap.is-scrollable:not(.at-end)::after{ opacity:1; }
table{ border-collapse:collapse; width:100%; }

.tbl-cap{ font-size:var(--table-caption-size); line-height:1.6; color:var(--table-caption-color);
  margin:0 0 var(--sp-elem); font-variant-numeric:tabular-nums; }
th,td{ padding:var(--cell-pad); text-align:right; white-space:nowrap;
  border-bottom:var(--line-hairline-width) solid var(--line-hairline-color); }
thead th{ font-size:var(--table-header-size); font-weight:var(--table-header-weight);
  letter-spacing:var(--table-header-letter-spacing); color:var(--table-header-color);
  background:var(--table-header-bg); border-bottom:var(--line-rule-width) solid var(--line-rule-color); }
tbody th{ text-align:left; font-size:var(--table-rowhead-size); font-weight:var(--table-rowhead-weight);
  color:var(--table-rowhead-color); background:var(--table-rowhead-bg); }
thead th:first-child{ text-align:left; }
td{ font-family:var(--font-scale-data-s-family); font-size:var(--cell-size);
  font-variant-numeric:tabular-nums; font-feature-settings:var(--font-scale-data-s-feature);
  color:var(--table-cell-color); }
.empty{ color:var(--table-empty-color); }

.tbl-prose th, .tbl-prose td{ white-space:normal; text-align:left; }
.tbl-prose td{ font-family:inherit; font-feature-settings:var(--font-scale-body-feature);
  line-height:1.7; }
.tnum{ font-variant-numeric:tabular-nums; white-space:nowrap; }
.tbl-note{ margin-top:var(--sp-block); }

.thin-note{ margin-top:var(--sp-block); }

.cta .panel{ padding-block:var(--sp-sec-tight); }
.cta h2{ border-bottom:none; padding-bottom:0; margin-bottom:var(--sp-elem); color:inherit; }
.cta.primary .panel{ background:var(--band-invert-bg); color:var(--band-invert-ink); border-radius:var(--radius-base); }
.cta.secondary .panel{ border:var(--line-rule-width) solid var(--line-rule-color); border-radius:var(--radius-base);
  --face-edge-start:var(--line-rule-width); --face-edge-end:var(--line-rule-width); }
.cta.primary a{ color:var(--color-invert-ink); }
.btn{ display:block; width:100%; text-align:center; box-sizing:border-box;
  background:var(--cta-bg); color:var(--cta-ink); text-decoration:none;
  font-family:var(--font-scale-body-family); font-weight:var(--cta-font-weight); font-size:var(--cta-font-size);
  padding:var(--cta-pad); min-height:var(--cta-min-height); line-height:1.4;
  border-radius:var(--cta-radius); border:0; transition:var(--cta-transition); }
.btn:hover{ background:var(--cta-hover-bg);
  outline:var(--cta-hover-outline-width) solid var(--cta-hover-outline-color); outline-offset:0; }

.cta .micro{ color:var(--color-ink-sub); margin:var(--sp-block) 0 0; }
.cta.primary .micro{ color:var(--color-invert-ink-sub); }
.cta .btn-wrap{ margin-top:var(--sp-block); }
@media (min-width:600px){ .btn{ display:inline-block; width:auto; } }

.btn-pending{
  background:var(--cta-pending-bg); color:var(--cta-pending-ink);
  border:var(--cta-pending-border-width) solid var(--cta-pending-border-color);
  cursor:default;
}
.btn-pending:hover{ background:var(--cta-pending-bg); outline:0; }

.cta-pending-note{ display:block; margin-top:var(--sp-elem); }
.cta.primary .cta-pending-note{ color:var(--color-invert-ink-sub); }

.sparse-block{
  background:var(--sparse-bg); color:var(--sparse-ink);
  border-left:var(--sparse-rule-width) solid var(--sparse-rule-color);
  --face-edge-start:var(--sparse-rule-width);
  padding-block:var(--sparse-pad); border-radius:var(--radius-base);
  margin-bottom:var(--sp-block);
}
.sparse-block h3{ font-size:var(--font-scale-h2-size); line-height:var(--font-scale-h2-line-height);
  font-weight:700; margin:0 0 var(--sp-elem); }
.sparse-block .btn{ margin-top:var(--sp-block); }

.sparse-block .micro{ color:var(--color-ink-sub); margin:var(--sp-block) 0 0; }

.slot{ background:var(--sparse-slot-bg); color:var(--sparse-slot-ink);
  padding:0 4px; border-radius:2px; font-family:var(--font-scale-display-family);
  font-variant-numeric:tabular-nums; }
.sparse-list{ list-style:none; margin:0; padding:0; }
.sparse-list > li{ padding-top:var(--sp-block); }
.sparse-list > li + li{ border-top:var(--line-hairline-width) solid var(--line-hairline-color);
  margin-top:var(--sp-block); }

.sparse-list h3.anchor-h{ font-size:var(--font-scale-body-size);
  line-height:var(--font-scale-h2-line-height); font-weight:700;
  letter-spacing:var(--font-scale-h2-letter-spacing);
  scroll-margin-top:var(--space-6); margin:0 0 var(--sp-elem); }

.sparse-fact{ margin:0; }
.sparse-list + .sparse-block{ margin-top:var(--sp-sec-tight); }

.finder{ border:var(--line-rule-width) solid var(--line-rule-color); border-radius:var(--radius-base);
  padding:var(--sp-block); }
.finder .row{ display:grid; gap:var(--sp-block); grid-template-columns:1fr; }
@media (min-width:600px){ .finder .row{ grid-template-columns:repeat(3,1fr); } }
.finder label{ display:block; font-size:var(--font-scale-small-size); color:var(--color-ink-sub); margin-bottom:2px; }
.finder select{ width:100%; min-height:var(--a11y-tap-min); font-family:inherit;
  font-size:var(--font-scale-caption-size); color:var(--color-ink); background:var(--color-bg);
  border:var(--line-rule-width) solid var(--line-rule-color); border-radius:var(--radius-base);
  padding:0 var(--sp-elem); }
.finder .result{ margin-top:var(--sp-block); }

.history{ list-style:none; margin:0; padding:0;
  font-size:var(--font-scale-caption-size); line-height:var(--font-scale-caption-line-height); }
.history li{ display:grid; grid-template-columns:auto 1fr; gap:0 var(--sp-block);
  padding:var(--sp-elem) 0; border-bottom:var(--line-hairline-width) solid var(--line-hairline-color); }
.history li:last-child{ border-bottom:none; }
.history .hist-date{ font-family:var(--font-scale-display-family); font-variant-numeric:tabular-nums;
  font-feature-settings:var(--font-scale-display-feature); color:var(--color-ink); white-space:nowrap; }
.history .hist-type{ font-size:var(--font-scale-small-size); color:var(--color-ink-sub); }
.history .hist-sum, .history .hist-n{ grid-column:1 / -1; }

.sources .doc{ margin:0 0 var(--sp-block);
  font-size:var(--font-scale-caption-size); line-height:var(--font-scale-caption-line-height); }

.sources .disclaimer{ --rule-c:var(--line-quote-color); }

.site-footer{ border-top:var(--line-divider-width) solid var(--line-divider-color); }
.site-footer .wrap-wide{ padding-block:var(--sp-sec-tight); }
.site-footer ul{ list-style:none; display:flex; flex-wrap:wrap; gap:0 var(--sp-block); margin:0 0 var(--sp-elem); padding:0; }
.site-footer li a{ display:inline-flex; align-items:center; min-height:var(--a11y-tap-min);
  font-size:var(--font-scale-caption-size); color:var(--color-ink-sub); }

.site-footer .corp{ color:var(--color-ink-sub); margin:0; }

.spec{ width:100%; border-collapse:collapse; margin:0 0 var(--sp-block);
  font-size:var(--font-scale-caption-size); }
.spec caption{ text-align:left; color:var(--color-ink-sub); font-size:var(--font-scale-small-size);
  line-height:1.6; padding-bottom:var(--sp-elem); }
.spec th, .spec td{ white-space:normal; vertical-align:top; }
.spec .l{ text-align:left; }
.spec .n{ text-align:right; font-family:var(--font-scale-display-family); font-variant-numeric:tabular-nums; }
.spec .ok{ color:var(--color-accent); font-weight:700; }
.spec .ng{ color:var(--color-cta); font-weight:700; }
.spec .na{ color:var(--color-ink-sub); }
.spec .disclosure{ color:var(--color-ink-sub); font-size:var(--font-scale-small-size); }
.spec .chip{ display:inline-block; padding:2px 6px; border-radius:var(--radius-base);
  font-family:var(--font-scale-display-family); font-variant-numeric:tabular-nums; }
.mc .mc-id{ font-weight:700; color:var(--color-ink); }
.mc .mc-state{ margin-left:var(--sp-elem); font-size:var(--font-scale-small-size); color:var(--color-caution); }
.mc .mc-where{ color:var(--color-ink-sub); font-size:var(--font-scale-small-size); }
.mc .mc-copy{ margin:0 0 var(--sp-elem); }
.mc .mc-f{ display:block; font-size:var(--font-scale-small-size); color:var(--color-ink-sub); }
.mc .mc-why{ margin:0 0 var(--sp-elem); color:var(--color-ink-sub); }
.mc .mc-risk{ margin:0 0 var(--sp-elem); border-left:var(--line-quote-width) solid var(--color-caution);
  padding-left:var(--sp-block); }
.mc .mc-comp{ margin:0; padding-left:1.2em; color:var(--color-ink-sub); }
.demo{ border:var(--line-rule-width) solid var(--line-rule-color); border-radius:var(--radius-base);
  padding:var(--sp-block); margin:0 0 var(--sp-block); }
.demo > .demo-t{ font-size:var(--font-scale-small-size); color:var(--color-ink-sub);
  margin:0 0 var(--sp-elem); }

@media (prefers-reduced-motion:reduce){ *{ transition:none !important; } }
