.audio-settings-panel{position:fixed;z-index:100;box-sizing:border-box;width:min(360px,calc(100vw - 24px));max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;padding:20px;background:#fffaf1;color:#28445f;border:1px solid #c9ac86;border-radius:18px;box-shadow:0 12px 36px #30261940;font:14px/1.6 'Yu Gothic',Meiryo,sans-serif}
.audio-settings-panel[hidden]{display:none}.audio-settings-panel h2{font:700 19px/1.4 'Yu Mincho',serif;margin:0 0 16px}
.audio-setting{padding:10px 12px 13px;border:1px solid #e5d8c5;border-radius:12px;background:#fffdf8;margin-bottom:12px}.audio-setting-header{display:flex;align-items:center;justify-content:space-between;gap:6px}.audio-setting label{font-weight:700;white-space:nowrap}.audio-volume-row{display:flex;align-items:center;gap:10px}.audio-setting output{min-width:39px;text-align:right;font-variant-numeric:tabular-nums;color:#6c5b48}.audio-setting input{flex:1;min-width:0;width:100%;min-height:36px;margin:0;accent-color:#b6374d;touch-action:pan-y}
.audio-mute-switch{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:0 2px;border:0;background:transparent;color:#706552;font:700 11px 'Yu Gothic',Meiryo,sans-serif;cursor:pointer;white-space:nowrap}.audio-mute-switch [data-audio-mute-state]{min-width:24px;text-align:right}.audio-switch-track{position:relative;display:block;width:34px;height:20px;border-radius:20px;background:#d8d1c7;box-shadow:inset 0 1px 3px #30261922}.audio-switch-track::after{content:'';position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #30261930;transition:transform .15s}.audio-mute-switch[aria-checked=true]{color:#a82e45}.audio-mute-switch[aria-checked=true] .audio-switch-track{background:#b6374d}.audio-mute-switch[aria-checked=true] .audio-switch-track::after{transform:translateX(14px)}
.audio-setting:last-child{margin-bottom:0}
.audio-settings-trigger.is-muted{background:#fff0ee;border-color:#c99791}.audio-settings-trigger.is-muted::after{content:'／';position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:22px;color:#a82e45}.audio-settings-trigger{position:relative}
@media(max-width:1100px){.audio-settings-panel{padding:17px;font-size:15px}.audio-setting{padding:8px 10px 10px}.audio-setting input{min-height:44px}}
@media(prefers-reduced-motion:reduce){.audio-switch-track::after{transition:none}}
