:root{--motion-fast:140ms;--motion-standard:240ms;--motion-panel:320ms;--motion-reveal:620ms;--ease-settle:cubic-bezier(.2,.7,.2,1);--ease-enter:cubic-bezier(.16,1,.3,1);--ease-exit:cubic-bezier(.4,0,1,1)}
.motion-toggle{display:inline-flex;align-items:center;gap:7px;min-height:44px;border:0;border-bottom:1px solid var(--line);font:inherit;font-size:13px;color:var(--muted);cursor:pointer;padding:5px 0}.motion-toggle:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent)}.motion-toggle[aria-pressed=false]:before{background:var(--muted)}
.btn,.header-search,.header-contribute,.filter-chip span,.choice-trigger{transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-standard)}
/* Shared timing; text navigation stays unfilled, action buttons become rectangular. */
.site-header :is(.site-nav a,.header-contribute,.header-search,.nav-toggle){transition:background-color 180ms var(--ease-settle),color 180ms var(--ease-settle),border-color 180ms var(--ease-settle),border-radius 180ms var(--ease-settle),transform 180ms var(--ease-settle)}
.site-header .site-nav ul a{padding-inline:12px;margin-inline:-12px;border-radius:3px}
.site-header .site-nav a:focus-visible{background-color:transparent;color:var(--accent)}
.site-header :is(.header-contribute,.header-search,.nav-toggle):focus-visible{background-color:var(--ink);color:var(--paper);border-color:var(--ink);border-radius:0}
.site-header .site-nav a:focus-visible small{color:inherit}
@media(hover:hover){.site-header .site-nav a:hover{background-color:transparent;color:var(--accent);transform:translateY(-2px)}.site-header :is(.header-contribute,.header-search,.nav-toggle):hover{background-color:var(--ink);color:var(--paper);border-color:var(--ink);border-radius:0;transform:translateY(-2px)}.site-header .site-nav a:hover small{color:inherit}}
html[data-motion=off] .site-header :is(.site-nav a,.header-contribute,.header-search,.nav-toggle){transform:none!important}
@media(prefers-reduced-motion:reduce){.site-header :is(.site-nav a,.header-contribute,.header-search,.nav-toggle){transition:none!important;transform:none!important}}
.text-link .ui-icon,.result-action .ui-icon{transition:transform var(--motion-standard) var(--ease-settle)}.text-link:hover .ui-icon,.archive-result:hover .result-action .ui-icon{transform:translateX(-4px)}
.story-card-art img{transition:transform var(--motion-panel) var(--ease-settle)}.story-card:active .story-card-art img{transform:translateY(-2px)}
html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html[data-motion=off] .archive-result:hover img,html[data-motion=off] .story-card:hover img{transform:none!important}
@media(prefers-reduced-motion:reduce){:root:not([data-preview-motion="full"]):not([data-motion="on"]){--motion-fast:0ms;--motion-standard:0ms;--motion-panel:0ms;--motion-reveal:0ms}html:not([data-preview-motion="full"]):not([data-motion="on"]) *,html:not([data-preview-motion="full"]):not([data-motion="on"]) *:before,html:not([data-preview-motion="full"]):not([data-motion="on"]) *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html:not([data-preview-motion="full"]):not([data-motion="on"]) .archive-result:hover img,html:not([data-preview-motion="full"]):not([data-motion="on"]) .archive-result:focus-visible img{transform:none}}
@media(forced-colors:active){.era-track [aria-pressed=true]{outline:2px solid Highlight}.motion-toggle:before{background:ButtonText}}

html[data-motion=off] .table-person:hover,html[data-motion=off] .table-person.is-active,html[data-motion=off] .table-person .portrait-art,html[data-motion=off] .table-person .table-theme,html[data-motion=off] .table-person .table-peek{transform:none!important}

/* Artwork can travel within its existing frame; reading copy never follows scroll. */
.home-flow .story-card-art .portrait-art,.home-flow .spotlight-art .portrait-art{translate:0 var(--art-drift,0px)}
html[data-motion=off] .home-flow .portrait-art{translate:none!important}
@media(prefers-reduced-motion:reduce){html:not([data-preview-motion="full"]):not([data-motion="on"]) .home-flow .portrait-art{translate:none!important}}

html[data-motion=off]{scroll-behavior:auto!important}
.browse-status-slot{min-height:1.5em;margin:12px 0;font-size:14px;color:var(--muted)}
.browse-live-status{margin:0}
