.article-page{--article-surface-radius:4px}
.article-page .page-tools{position:absolute;inset-block-start:var(--layout-top);inset-inline-end:0;margin:0;z-index:2}
.article-page :is(.grid-toggle,.theme-toggle){align-items:start}
.article-page .article-identity{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:8px;align-content:start}
.article-home{grid-column:1;grid-row:1;position:relative;width:28px;height:28px;display:block;color:var(--ink)}
.article-home::before{content:"";position:absolute;inset:-8px}
.article-home svg{display:block;width:28px;height:28px;transform:translateY(-4px)}
.article-identity>h1{grid-column:2;grid-row:1;max-inline-size:calc(100% - 120px);overflow-wrap:break-word}
.article-identity>.article-meta{grid-column:2;grid-row:2}
@media(min-width:768px){
  .article-identity>h1{max-inline-size:none}
}
.article-header h1{font-size:var(--type-title-size);line-height:var(--type-title-leading);font-weight:500;text-wrap:balance}
.article-deck{text-wrap:pretty}
.article-meta{margin-top:4px;color:var(--muted);font-size:var(--type-meta-size);line-height:var(--type-meta-leading)}
.article-prose{overflow-wrap:break-word}
.article-prose>p{text-wrap:pretty}
.article-prose>h2{font-size:var(--type-section-size);line-height:var(--type-section-leading);font-weight:500;scroll-margin-top:24px;text-wrap:balance}
.article-prose :is(img,svg,video,canvas,iframe){max-inline-size:100%;box-sizing:border-box}
.article-media img{display:block;width:100%;height:auto;border-radius:var(--article-surface-radius)}
.article-image-frame{width:100%}
.article-video-frame{position:relative;width:100%;overflow:hidden;border-radius:var(--article-surface-radius)}
.article-media .article-video-frame>:is(video,img){position:absolute;inset:0 auto auto 0;display:block;width:100%;height:auto;object-fit:contain;object-position:top left;border-radius:var(--article-surface-radius)}
.article-video-poster{z-index:1}
.article-video-frame>.article-video-poster[hidden],.article-video-fallback[hidden]{display:none}
.article-video-fallback{grid-column:1 / -1;margin:12px 0 0;color:var(--muted)}
@media print{.article-video-frame>video{display:none}.article-video-frame>.article-video-poster[hidden]{display:block}}

:root[data-theme=dark] .article-media-monochrome img{filter:invert(1)}
.article-page figcaption{margin:16px 0 0;color:var(--muted);font-size:var(--type-meta-size);line-height:var(--type-meta-leading);text-wrap:pretty}
.article-footer{margin-top:64px;font-size:var(--type-body-size);line-height:var(--type-body-leading)}
.article-pagination{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--layout-gutter);align-items:start}
.article-pagination>a{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0;align-content:start;text-decoration:none;overflow-wrap:break-word}
.article-previous{grid-column:1;text-align:left}
.article-next{grid-column:2;text-align:right}
.article-nav-label{color:var(--muted)}
.article-nav-title{color:var(--ink);text-wrap:pretty}
.article-pagination>a:hover .article-nav-title{text-decoration:underline;text-underline-offset:3px}
.loader-sequence{min-width:0;--media-aspect:.5625}
.loader-sequence-frame{display:grid;place-items:center;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:var(--article-surface-radius)}
.loader-sequence-frame>.sim-loader{display:block;width:28%;height:auto;max-width:200px;aspect-ratio:1;margin:0;vertical-align:baseline}
.loader-sequence .sim-loader-inner{stop-color:var(--muted)}
.loader-sequence .sim-loader-outer{stop-color:var(--line)}
:root[data-theme=dark] .loader-sequence .sim-loader-inner{stop-color:var(--ink)}
:root[data-theme=dark] .loader-sequence .sim-loader-outer{stop-color:var(--muted)}
.loader-sequence[data-motion-paused] .sim-stage *{animation-play-state:paused}
@media print{.loader-sequence .sim-stage *{animation:none!important}.loader-sequence .sim-stage{transition:none}}
.merge-study{color:var(--ink)}
.merge-stage{display:grid;place-items:center;width:100%;aspect-ratio:16/7;min-height:240px;max-height:360px;overflow:hidden}
.merge-stage>.sim-loader{display:block;width:200px;height:200px;max-width:100%;margin:0;vertical-align:baseline}
.merge-study[data-motion-paused] .sim-stage *,.merge-study .sim-stage:not(.is-active) *{animation-play-state:paused}
.merge-controls{container-type:inline-size;font-size:var(--type-body-size);line-height:var(--type-body-leading)}
.merge-controls fieldset{border:0;margin:0;padding:0;min-width:0}
.merge-controls legend{font-weight:500;padding:0;margin-bottom:16px}
.merge-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:12px}
.merge-preset{position:relative;display:grid;place-items:center;min-width:0;min-height:44px;padding:0 12px;border-radius:8px;color:var(--muted);cursor:pointer}
.merge-preset input,.merge-toggle input{position:absolute;inset:0;z-index:1;width:100%;height:100%;margin:0;opacity:0;cursor:inherit}
.merge-preset:has(input:checked){background:var(--line);color:var(--ink)}
.merge-preset:has(input:disabled),.merge-toggle:has(input:disabled){opacity:.5;cursor:default}
.merge-sliders{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:8px}
.merge-controls .merge-slider{position:relative;display:block;min-width:0;height:44px;margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--page);isolation:isolate}
.merge-slider-fill{position:absolute;inset:0 auto 0 0;width:var(--range-fill);background:var(--line);pointer-events:none}
.merge-control-label{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;pointer-events:none;user-select:none}
/* The restored baseline box carries extra space below the ink. */
@supports(text-box-trim:trim-both) and (text-box-edge:cap alphabetic) and (padding-top:calc(round(up,1cap,4px) - 1cap)){
  .merge-control-label{padding-block-start:8px}
  .merge-preset>.baseline-text,.merge-toggle>.baseline-text,.merge-reset>.baseline-text{transform:translateY(4px)}
}
.merge-controls output{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.merge-controls input[type=range]{appearance:none;-webkit-appearance:none;position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;cursor:ew-resize;touch-action:pan-y}
.merge-controls input[type=range]::-webkit-slider-runnable-track{height:100%;background:transparent}
.merge-controls input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:2px;height:16px;margin-top:13px;border:0;border-radius:1px;background:var(--muted)}
.merge-controls input[type=range]::-moz-range-track{height:100%;background:transparent}
.merge-controls input[type=range]::-moz-range-thumb{width:2px;height:16px;border:0;border-radius:1px;background:var(--muted)}
.merge-controls input[type=range]::-moz-range-progress{background:transparent}
.merge-slider:has(input:disabled){opacity:.5}
.merge-controls input[type=range]:disabled{cursor:default}
@media(hover:hover) and (pointer:fine){
  .merge-slider:has(input:enabled):hover{border-color:var(--muted)}
  .merge-preset:has(input:enabled):hover,.merge-controls .merge-reset:enabled:hover{background:var(--line);color:var(--ink)}
}
@container(min-width:480px){
  .merge-presets{grid-template-columns:repeat(4,minmax(0,1fr))}
  .merge-sliders{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
@media(forced-colors:active){
  .merge-controls .merge-slider{border-color:ButtonText}
  .merge-slider-fill{display:none}
  .merge-controls input[type=range]::-webkit-slider-thumb{background:ButtonText}
  .merge-controls input[type=range]::-moz-range-thumb{background:ButtonText}
}
.merge-actions{display:flex;justify-content:space-between;align-items:center;gap:16px}
.merge-controls .merge-toggle{position:relative;display:flex;align-items:center;gap:10px;min-height:44px;margin:0;cursor:pointer}
.merge-switch-track{position:relative;flex:none;display:block;width:34px;height:20px;border-radius:10px;background:var(--muted)}
.merge-switch-track::after{content:"";position:absolute;inset:2px auto auto 2px;width:16px;height:16px;border-radius:50%;background:var(--page)}
.merge-toggle input:checked+.merge-switch-track{background:var(--ink)}
.merge-toggle input:checked+.merge-switch-track::after{transform:translateX(14px)}
.merge-controls .merge-reset{border:0;border-radius:8px;background:none;color:var(--muted);font:inherit;display:grid;place-items:center;min-height:44px;padding:0 12px;cursor:pointer}
@media(prefers-reduced-motion:no-preference){
  .merge-switch-track::after{transition:transform 160ms cubic-bezier(.2,0,0,1)}
  .merge-preset{transition:background-color 125ms cubic-bezier(.2,0,0,1)}
  .merge-controls .merge-reset{transition:background-color 125ms cubic-bezier(.2,0,0,1),transform 150ms ease-out}
  .merge-controls .merge-reset:enabled:active{transform:scale(.96)}
}
@media(forced-colors:active){
  .merge-preset:has(input:checked){forced-color-adjust:none;background:Highlight;color:HighlightText}
  .merge-switch-track{forced-color-adjust:none;background:GrayText}
  .merge-toggle input:checked+.merge-switch-track{background:Highlight}
  .merge-switch-track::after{background:Canvas}
}
