/* Music stays beside MENU, independent of the active model mode. */
.header .header-actions{display:flex;align-items:center;gap:14px;pointer-events:none}
.header-actions>.menu-toggle{pointer-events:auto}
.model-header{align-items:start}
.model-header>.scene-meta,.model-header>.interaction-hint{margin-top:6px}
.music-controls{--music-level:40%;--music-size:44px;--volume-width:132px;position:relative;flex:none;width:var(--music-size);height:var(--music-size);color:#25282b;pointer-events:auto;touch-action:pan-y;user-select:none;isolation:isolate}
.music-controls::before{content:"";position:absolute;right:0;top:0;width:var(--music-size);height:100%;border-radius:999px;background:var(--glass);border:var(--glass-border);box-shadow:var(--glass-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:none;z-index:-1;transition:width .24s cubic-bezier(.22,.7,.3,1)}
.music-controls[data-expanded="true"]::before{width:calc(var(--music-size) + var(--volume-width))}
.music-controls button.music-toggle{position:relative;display:grid;place-items:center;width:var(--music-size);height:var(--music-size);padding:12px;border:0;border-radius:50%;color:inherit;background:transparent;cursor:pointer;transition:background .18s}
.music-controls button.music-toggle:hover{background:rgba(23,25,27,.06)}
.music-volume-panel{position:absolute;top:0;right:100%;width:var(--volume-width);height:100%;display:flex;align-items:center;gap:9px;padding:0 9px 0 16px;opacity:0;visibility:hidden;transform:translateX(10px);pointer-events:none;transition:opacity .16s ease,transform .24s ease,visibility .24s}
.music-controls[data-expanded="true"] .music-volume-panel{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto}
.music-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.music-controls .music-sound{display:none}
.music-controls[data-audible="true"] .music-sound{display:block}
.music-controls[data-audible="true"] .music-silent{display:none}
.music-controls input.music-volume{appearance:none;-webkit-appearance:none;width:70px;min-width:0;height:28px;padding:0;margin:0;cursor:pointer;background:transparent;accent-color:#25282b;border:0;border-radius:0;touch-action:none}
.music-controls .music-volume::-webkit-slider-runnable-track{height:3px;border-radius:4px;background:linear-gradient(to right,#34383c 0 var(--music-level),#d5d9dc var(--music-level) 100%)}
.music-controls .music-volume::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:10px;height:10px;margin-top:-3.5px;border:0;border-radius:50%;background:#34383c;box-shadow:0 0 0 3px rgba(255,255,255,.8)}
.music-controls .music-volume::-moz-range-track{height:3px;border:0;border-radius:4px;background:#d5d9dc}
.music-controls .music-volume::-moz-range-progress{height:3px;border-radius:4px;background:#34383c}
.music-controls .music-volume::-moz-range-thumb{width:10px;height:10px;border:0;border-radius:50%;background:#34383c;box-shadow:0 0 0 3px rgba(255,255,255,.8)}
.music-controls :focus-visible{outline:2px solid #444b52;outline-offset:3px;border-radius:6px}
.music-controls output{width:29px;font-size:12px;font-variant-numeric:tabular-nums;color:#70767d;line-height:1;white-space:nowrap}
.music-volume-label,.music-status:empty{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.music-status:not(:empty){position:absolute;top:calc(100% + 9px);right:0;width:218px;padding:10px 12px;background:rgba(255,255,255,.96);border:var(--glass-border);border-radius:14px;box-shadow:var(--glass-shadow);font-size:12px;line-height:1.6;color:#555c63}
#background-music{display:none}
.model-selection-tools{top:max(calc(var(--inset) + 80px),var(--music-header-bottom,0px))}
@media(max-width:1250px){
  .model-header{right:calc(var(--inset) + 330px);grid-template-columns:minmax(0,1fr)}
  .model-header>.interaction-hint{grid-column:1;grid-row:2;justify-self:start;margin-top:0;white-space:normal}
}
@media(max-width:760px){
  .header{gap:8px}
  .header .header-actions{gap:8px}
  .music-controls{--music-size:42px;--volume-width:104px}
  .music-controls button.music-toggle{padding:11px}
  .music-volume-panel{gap:7px;padding:0 10px 0 16px}
  .music-controls input.music-volume{width:44px}
  .music-controls output{width:27px}
  .model-header{right:16px}
  .model-header>.scene-meta,.model-header>.interaction-hint{margin-top:0}
  .model-selection-tools{top:max(264px,var(--music-header-bottom,0px))}
}
@media(max-width:390px){
  .wordmark{padding:13px 12px}.wordmark img{width:48px}
  .menu-toggle{padding:14px 12px;gap:8px}
  .header .header-actions{gap:6px}
  .music-controls input.music-volume{width:36px}
}
@media(prefers-reduced-motion:reduce){.music-controls::before,.music-volume-panel{transition:none}}
