.game-music-controls,.game-music-controls *,.game-music-dialog{box-sizing:border-box}
.game-music-controls{display:grid;gap:12px;min-width:0;margin:16px 0;padding:16px;border:1px solid var(--music-border,rgba(150,180,200,.3));border-radius:12px;color:inherit;font:inherit;background:var(--music-panel,transparent)}
.game-music-controls legend{padding:0 6px;font-weight:700}
fieldset.game-music-controls>label{justify-content:stretch;align-items:stretch;display:grid;gap:6px;font:inherit;text-transform:none;letter-spacing:normal}
.game-music-controls .music-enabled,.game-music-controls .music-navigation label{display:flex;align-items:center;gap:8px;min-height:44px}
.game-music-controls select,.game-music-controls button{max-width:100%;width:100%;min-width:0;min-height:44px;padding:8px 10px;border:1px solid var(--music-border,rgba(150,180,200,.3));border-radius:8px;background:var(--music-input,#18232b);color:var(--music-text,#f0f5f7);font:inherit;text-transform:none;letter-spacing:normal}
.game-music-controls select{cursor:pointer}.game-music-controls button{cursor:pointer}
.game-music-controls .music-navigation{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.game-music-controls .music-navigation button{flex:1;width:auto}.game-music-controls .music-navigation label{margin-left:auto}
.game-music-controls input[type=checkbox]{width:18px;height:18px;accent-color:var(--music-accent,#84d2ee)}
.game-music-controls input[type=range]{width:100%;min-height:34px;accent-color:var(--music-accent,#84d2ee)}
.game-music-controls [data-music-status]{margin:0;font-size:.85em;line-height:1.5;opacity:.8}
.game-music-controls :focus-visible{outline:2px solid var(--music-accent,#84d2ee);outline-offset:3px}
.game-music-controls :disabled{opacity:.45;cursor:default}
.game-music-dialog{width:min(520px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;padding:20px;border:1px solid var(--music-border,#4e6172);border-radius:16px;background:var(--music-input,#18232b);color:var(--music-text,#f0f5f7)}
.game-music-dialog::backdrop{background:rgba(0,0,0,.65)}
.game-music-dialog>button{min-height:44px;padding:10px 16px;cursor:pointer}
@media(max-width:480px){.game-music-controls{padding:12px}.game-music-controls .music-navigation label{width:100%;margin-left:0}}

fieldset.game-music-controls select,fieldset.game-music-controls input[type=range]{width:100%;max-width:100%}
.game-music-controls .music-enabled,.game-music-controls .music-navigation label{justify-content:flex-start}
