@keyframes dovRise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.dov-anim{animation:dovRise .55s cubic-bezier(.16,1,.3,1) both}
:root{--interaction-fast:150ms;--interaction-base:300ms;--interaction-ease:cubic-bezier(.16,1,.3,1)}
.ws-content-enter{animation:reading-change var(--interaction-base) var(--interaction-ease) both}
@keyframes reading-change{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
.ws-place-menu,.ws-download-menu,.ws-star-detail{animation:popover-open var(--interaction-fast) var(--interaction-ease) both;transform-origin:top center}
@keyframes popover-open{from{opacity:0;transform:translateY(-3px) scale(.99)}to{opacity:1;transform:none}}
.ws-topic-tabs button,.ws-view-tabs button,.ws-segment button,.ws-gender button,.ws-time-chip{transition:background-color var(--interaction-fast),border-color var(--interaction-fast),color var(--interaction-fast),box-shadow var(--interaction-fast)}
.ws-topic-tabs button:hover,.ws-view-tabs button:hover{color:var(--tx);background:var(--bg)}
.ws-time-chip:hover{border-color:#a9b9cc}.ws-time-chip:active{background:#edf4ff}
.ws-topic-tabs button:focus-visible,.ws-view-tabs button:focus-visible,.ws-time-chip:focus-visible{outline:2px solid #4386db;outline-offset:2px}
.ws-reading details summary:after{content:'+';margin-left:10px;color:var(--tx-3)}
.ws-reading details[open] summary:after{content:'−'}
.ws-reading details[open]>p{animation:reading-change var(--interaction-fast) var(--interaction-ease)}
.ws-body{overscroll-behavior:contain}.ws-left{overscroll-behavior:contain}
@media(hover:hover) and (pointer:fine){.site-head .brand:hover,.ws-brand:hover{transform:translateY(-1px);transition:transform .15s cubic-bezier(.16,1,.3,1)}}
.site-head .brand:active,.ws-brand:active{transform:translateY(0) scale(.98);transition:transform .08s ease}
@media(prefers-reduced-motion:reduce){.ws-content-enter,.ws-place-menu,.ws-download-menu,.ws-star-detail,.ws-reading details[open]>p,.ws-dial-char,.dov-anim{animation:none!important}.ws-topic-tabs button,.ws-view-tabs button,.ws-segment button,.ws-gender button,.ws-time-chip,.site-head .brand,.ws-brand,.ws-dial-rotor{transition:none!important}.site-head .brand:hover,.site-head .brand:active,.ws-brand:hover,.ws-brand:active{transform:none}}
