/* A single motion rhythm for controls; content remains visible without JS or animation. */
:root{--ui-duration:180ms;--ui-ease:cubic-bezier(.2,.7,.2,1)}
.button,button,select,.resource-card,.chart-card,.sidebar-item,.resource-topics a{transition:background-color var(--ui-duration) var(--ui-ease),border-color var(--ui-duration) var(--ui-ease),box-shadow var(--ui-duration) var(--ui-ease),transform var(--ui-duration) var(--ui-ease)}
button:not(:disabled):active,.button:active{transform:translateY(0) scale(.98)}
@media(hover:hover){.chart-card:hover,.resource-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #263d340b}.player-tool:hover,.guide-controls button:not(:disabled):hover{background:#e9eee2}}
.search-box:focus-within,.guide-search-field:focus-within{box-shadow:0 0 0 3px #7caa8c1c;border-color:#7caa8c}
.guide-search-panel:not([hidden]),.account-dropdown:not([hidden]){animation:ui-appear var(--ui-duration) var(--ui-ease)}
@keyframes ui-appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.waveform{touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}
.waveform.is-dragging{cursor:grabbing}
.waveform:before{content:'';position:absolute;inset:0 auto 0 0;width:var(--progress,0%);background:#365d4a0b;pointer-events:none}
.waveform:after{transition:none;width:2px;background:#365d4a;box-shadow:0 0 0 3px #365d4a10;pointer-events:none}
.player .speaker-label{border:1px solid transparent;border-radius:5px;padding:4px 6px;transition:background-color 180ms,border-color 180ms}
.player .speaker-label.is-speaking{background:color-mix(in srgb,var(--speaker-color) 20%,transparent);border-color:color-mix(in srgb,var(--speaker-color) 50%,transparent)}
.player select{max-width:104px}#demo-time{font-variant-numeric:tabular-nums;min-width:36px}
.hero-rows{height:312px;min-height:312px;grid-template-rows:repeat(4,minmax(0,1fr));overflow:hidden}
.hero-row{min-height:0;height:100%;align-items:start;transition:background-color 180ms,border-color 180ms}
.hero-row.active{background:color-mix(in srgb,var(--speaker-color) 18%,#fcfcf9);border-color:color-mix(in srgb,var(--speaker-color) 60%,#dfe4dc)}
.hero-row [contenteditable]{max-height:100%;overflow:auto;line-height:1.7}
.chart-readout{min-height:46px;line-height:1.7}
.demo-playhead{background:#365d4a;box-shadow:0 0 0 2px #365d4a10}
.volume-reference{min-height:40px;align-content:start}.chart-selection{min-height:44px}
@media(max-width:680px){.hero-rows{height:312px;min-height:312px}.player{gap:7px}.player .speaker-label{padding:3px 4px}.player select{max-width:104px}.chart-readout{min-height:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.button,button,select,.resource-card,.chart-card,.sidebar-item,.resource-topics a,.hero-row,.player .speaker-label{transition:none!important;transform:none!important}.guide-search-panel:not([hidden]),.account-dropdown:not([hidden]){animation:none}}

.scroll-reveal-pending{opacity:0;transform:translateY(72px)}
@media(prefers-reduced-motion:reduce){.scroll-reveal-pending{opacity:1;transform:none}}
@media print{.scroll-reveal-pending{opacity:1;transform:none}}
