/* Shared figure autoplay button (2026-11-02, reading pass row 73; see autoplay.js).
   The slot is always laid out and the button keeps one size in every state
   (all three labels share one grid cell), so pausing or replaying never
   changes a figure's height. Playing: a quiet outlined "Pause animation".
   Stopped: a pink, high-contrast "Replay animation" pill (white on
   --pink-deep, 7:1). Reduced motion: the same pill reads "Play animation". */
.ap-slot{display:flex;justify-content:flex-end;align-items:center;min-height:40px;margin:0;pointer-events:none}
.ap-slot>*{pointer-events:auto}
.ap-btn{display:inline-grid;grid-template-areas:"face";align-items:center;justify-items:center;min-height:40px;padding:0 16px 0 13px;border:1.5px solid var(--line-strong,rgba(29,42,48,.32));border-radius:999px;background:var(--surface-raised,#fffdf9);color:var(--ink-soft,#33454d);font:700 14px/1 var(--font-ui,Manrope,system-ui,sans-serif);letter-spacing:.005em;cursor:pointer;white-space:nowrap;transition:background-color .18s var(--ease,ease),border-color .18s var(--ease,ease),color .18s var(--ease,ease),box-shadow .18s var(--ease,ease)}
.ap-face{grid-area:face;display:inline-flex;align-items:center;gap:8px;visibility:hidden}
/* !important: section rules such as `.sNN-fig svg{width:100%}` must not resize the icon. */
.ap-btn .ap-face svg{display:block;width:18px!important;height:18px!important;max-width:none!important;flex:none;margin:0}
.ap-btn[data-face="pause"] [data-face="pause"],
.ap-btn[data-face="replay"] [data-face="replay"],
.ap-btn[data-face="play"] [data-face="play"]{visibility:visible}
.ap-btn[data-face="pause"]:hover{border-color:var(--ink,#1d2a30);color:var(--ink,#1d2a30);background:var(--teal-wash,rgba(61,114,118,.09))}
.ap-btn:is([data-face="replay"],[data-face="play"]){background:var(--pink-deep,#a8245f);border-color:var(--pink-deep,#a8245f);color:#fff;box-shadow:0 2px 0 rgba(10,43,53,.16),0 0 0 4px var(--pink-wash,rgba(216,65,138,.1))}
.ap-btn:is([data-face="replay"],[data-face="play"]):hover{background:#8f1b4f;border-color:#8f1b4f}
.ap-btn:focus-visible{outline:3px solid var(--focus,#d8418a);outline-offset:3px}
@media (forced-colors:active){
 .ap-btn{border:2px solid ButtonText;background:ButtonFace;color:ButtonText;box-shadow:none}
 .ap-btn:is([data-face="replay"],[data-face="play"]){border-color:Highlight;background:Highlight;color:HighlightText}
}
@media print{.ap-slot{display:none}}
