/* TMA 6.7.20.58 — lightweight, theme-neutral stroke animation. */
.tma-seo-hanzi-anim{box-sizing:border-box;margin:24px 0;padding:16px;border:1px solid #e0d7c9;border-radius:10px;background:#fbf9f5;color:#35291c;max-width:100%;clear:both}
.tma-seo-hanzi-anim *{box-sizing:border-box}
.tma-seo-hanzi-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 14px;font-size:16px}
.tma-seo-hanzi-replay{padding:6px 12px;border:1px solid #c6aa92;border-radius:6px;color:#84241b;background:#fff;cursor:pointer;font:inherit;font-size:13px;line-height:1.4}
.tma-seo-hanzi-replay:hover,.tma-seo-hanzi-replay:focus-visible{background:#f3e9df;border-color:#a74639}
.tma-seo-hanzi-lines{display:flex;flex-direction:column;gap:10px;align-items:center;overflow-x:auto;overflow-y:hidden;width:100%}
.tma-seo-hanzi-line{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:3px;min-height:46px;max-width:100%;font-size:32px;line-height:1.5;white-space:nowrap;color:#c40000}
.tma-seo-hanzi-cell{display:inline-flex;flex:0 0 auto;justify-content:center;align-items:center;color:#c40000;line-height:1}
.tma-seo-hanzi-cell svg{display:block;max-width:100%;height:auto}
.tma-seo-hanzi-caption{margin:12px 0 0!important;color:#65584d;font-size:13px;line-height:1.6}
@media(max-width:600px){.tma-seo-hanzi-anim{padding:12px;margin:18px 0}.tma-seo-hanzi-heading{font-size:15px}.tma-seo-hanzi-line{gap:2px;min-height:30px}}
@media(prefers-reduced-motion:reduce){.tma-seo-hanzi-line{font-size:28px}}

.tma-hanzi-loading{position:relative}
.tma-hanzi-loading::after{content:attr(data-fallback);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:70%;color:#c40000;background:#fbf9f5;pointer-events:none}
