body > .tool-page.tool-page--slowed-reverb { width: 100%; max-width: none; margin: 0; padding: 0; }
.tool-page--slowed-reverb [hidden] { display: none !important; }
.audio-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 350px); height: 100%; min-height: 0; text-align: left; font-variant-numeric: tabular-nums; }
.audio-viewer, .audio-controls { min-width: 0; min-height: 0; }
.audio-viewer { display: flex; flex-direction: column; position: relative; }
.audio-viewer-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px; }
.audio-viewer-header span { overflow: hidden; color: #bdbbc8; text-overflow: ellipsis; white-space: nowrap; }
.audio-waveform { position: relative; display: flex; flex: 1 1 0; min-height: 0; align-items: center; justify-content: center; overflow: hidden; }
.audio-waveform canvas { display: block; width: 100%; height: 100%; }
.audio-workspace:not([data-ready]) .audio-viewer-header { visibility: hidden; }
.audio-empty { position: absolute; display: flex; flex-direction: column; align-items: center; gap: 24px; padding: 0 20px; color: #bdbbc8; text-align: center; }
.audio-empty[hidden] { display: none; }
.audio-empty p { margin: 0; }
.audio-empty button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 7px 12px; }
.audio-empty svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.audio-transport { padding: 10px 0 12px; }
.audio-transport-row { display: flex; align-items: center; gap: 10px; margin: 5px 12px 0; }
.tool-page--slowed-reverb .audio-workspace #audio-play { box-sizing: border-box; width: 68px; flex: 0 0 68px; }
.audio-transport-row #audio-time { white-space: nowrap; }
.audio-volume { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.audio-transport .audio-volume input { width: 96px; }
.audio-volume output { flex: 0 0 4.5ch; width: 4.5ch; text-align: right; color: #bdbbc8; }
.audio-transport-row #audio-track-info { color: #a9a7b5; }
.audio-controls { display: flex; flex-direction: column; height: 100%; padding: 12px 8px; border-left: 2px solid var(--eyy-border, #101010); }
.audio-controls h1 { margin: 0; font-size: 1rem; letter-spacing: -.025em; }
.audio-description { margin: 7px 0 0; padding-bottom: 12px; border-bottom: 2px solid var(--eyy-border, #101010); color: #bdbbc8; }
.audio-controls-body { flex: 1 1 0; min-width: 0; min-height: 0; overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #45454f transparent; }
.audio-presets { display: flex; flex-wrap: wrap; gap: 6px; padding: 12px 0; border-bottom: 2px solid var(--eyy-border, #101010); }
.audio-fields { display: grid; min-width: 0; gap: 4px; padding-top: 12px; }
.audio-fields label { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-top: 9px; }
.audio-fields label:first-child { margin-top: 0; }
.audio-fields output { color: #bdbbc8; }
.audio-fields input { box-sizing: border-box; min-width: 0; width: 100%; margin: 0; }
#audio-volume, #audio-speed { --eyy-range-accent: #ad8aff; } #audio-seek { --eyy-seek-accent: #ad8aff; }
#audio-reverb { --eyy-range-accent: #ff69d3; }
#audio-mix { --eyy-range-accent: #31e8c1; }
#audio-tone { --eyy-range-accent: #70aaff; }
.audio-hint { overflow-wrap: anywhere; margin: 18px 0; color: #a9a7b5; line-height: 1.5; }
.audio-export { flex: none; padding-top: 8px; border-top: 2px solid var(--eyy-border, #101010); }
.tool-page--slowed-reverb .audio-workspace button:not(.default) { min-height: 36px; padding: 6px 10px; font: inherit; }
.tool-page--slowed-reverb .audio-workspace button:disabled { opacity: .46; cursor: default; }
.tool-page--slowed-reverb .audio-workspace #audio-export { width: 100%; background: #24263a; border-color: #59699e; }
.tool-page--slowed-reverb .audio-workspace #audio-export:hover:not(:disabled) { background: #343952; border-color: #91a2eb; }
.audio-drop-overlay { position: fixed; inset: 52px 10px 10px; z-index: 990; display: flex; align-items: center; justify-content: center; border: 2px dashed #a99bff; border-radius: 10px; background: #111321ed; color: #f0f0ff; font-size: 1rem; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 140ms ease, visibility 140ms; }
.audio-workspace.is-dragging .audio-drop-overlay { opacity: 1; visibility: visible; }
@media (max-width: 760px) {
    .audio-workspace { grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 40%) minmax(0, 1fr); }
    .audio-controls { padding: 8px; border: 0; border-top: 2px solid var(--eyy-border, #101010); }
    .audio-presets { padding: 8px 0; }
}
@media (max-width: 500px) { .audio-transport-row #audio-track-info { display: none; } .audio-transport .audio-volume input { width: 72px; } }
@media (prefers-reduced-motion: reduce) { .audio-drop-overlay { transition: none; } }
.audio-progress { position: absolute; top: 0; bottom: 0; width: 2px; background: #bca6ff; pointer-events: none; }
.audio-progress[hidden] { display: none; }
