/* A persistent pixel music box; only the decorative equalizer moves. */
.omnia-music-player {
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:60;
  width:300px;
  max-width:calc(100vw - 28px);
  padding:12px 13px;
  color:#372456;
  background:linear-gradient(125deg,#fff5cc,#e1f5ff 62%,#f2daff);
  border:3px solid #2b1d4d;
  box-shadow:inset 2px 2px 0 #fff,4px 4px 0 #2b1d4d,7px 7px 0 #b4a1cc55;
  font-family:var(--body,'VT323',monospace);
}
.omnia-music-main { display:flex; align-items:center; gap:11px; padding-right:35px; min-height:56px; }
.omnia-music-play,
.omnia-music-mute,
.omnia-music-details>summary {
  display:grid;
  place-items:center;
  border:2px solid #71458f;
  box-shadow:inset 2px 2px 0 #fff6d8,2px 2px 0 #b49bc9;
  color:#543176;
  cursor:pointer;
  transition:background-color .15s,box-shadow .15s;
}
.omnia-music-play { flex:0 0 43px; height:43px; padding:0; background:linear-gradient(#ffeeb0,#ffd06b); font:25px/1 var(--body,'VT323',monospace); }
.omnia-music-player.is-playing .omnia-music-play { background:linear-gradient(#ffcfe9,#ff9dd0); }
.omnia-music-play:hover,
.omnia-music-mute:hover,
.omnia-music-details>summary:hover { box-shadow:inset 2px 2px 0 #fff,2px 2px 0 #715090; }
.omnia-music-info { min-width:0; flex:1; }
.omnia-music-kicker { display:block; margin-bottom:6px; color:#895a9e; font:8px/1.6 var(--pixel,'Press Start 2P',monospace); letter-spacing:.04em; }
.omnia-music-status-row { display:flex; align-items:center; gap:6px; color:#6c5285; font-size:16px; line-height:1.1; min-height:14px; }
.omnia-music-details { margin:0; }
.omnia-music-details>summary { position:absolute; top:14px; right:12px; width:30px; height:31px; padding:0; list-style:none; background:linear-gradient(#d7f4ff,#c4ddff); }
.omnia-music-details>summary::-webkit-details-marker { display:none; }
.omnia-music-details[open]>summary { background:linear-gradient(#f5d9ff,#e0baf2); }
.omnia-music-settings { margin-top:13px; padding-top:11px; border-top:2px dashed #baa0ce; }
.omnia-music-settings>label { display:flex; align-items:center; justify-content:space-between; margin:0 0 7px; font:20px/1.1 var(--body,'VT323',monospace); color:#694485; }
.omnia-music-volume-row { display:grid; grid-template-columns:minmax(0,1fr) 59px; gap:12px; align-items:center; }
.omnia-music-volume-row input { width:100%; min-width:0; min-height:25px; padding:0; margin:0; accent-color:#9b6bc5; cursor:pointer; }
.omnia-music-mute { padding:5px; min-height:30px; background:linear-gradient(#f4e0ff,#debeed); font:18px/1 var(--body,'VT323',monospace); }
.omnia-music-bars { display:flex; align-items:end; gap:2px; width:18px; height:12px; flex:0 0 18px; }
.omnia-music-bars i { display:block; width:3px; height:12px; background:#b482c7; transform:scaleY(.25); transform-origin:bottom; }
.omnia-music-player.is-playing .omnia-music-bars i { animation:omnia-music-bounce 1.1s steps(3,end) infinite; background:#a760b8; }
.omnia-music-player.is-playing .omnia-music-bars i:nth-child(2) { animation-delay:-.25s; background:#7b93cf; }
.omnia-music-player.is-playing .omnia-music-bars i:nth-child(3) { animation-delay:-.6s; background:#ce88b5; }
.omnia-music-player.is-playing .omnia-music-bars i:nth-child(4) { animation-delay:-.85s; }
.omnia-music-error { margin:12px 0 0; padding:10px; border:1px dashed #b678a0; color:#7f315e; background:#ffe5ed; font:18px/1.25 var(--body,'VT323',monospace); }
.omnia-music-error[hidden] { display:none; }
.omnia-music-player :is(button,summary,input):focus-visible { outline:3px solid #2277ff; outline-offset:3px; }
@keyframes omnia-music-bounce { 0%,100% { transform:scaleY(.25); } 50% { transform:scaleY(1); } }
@media(max-width:600px) {
  .omnia-music-player { right:11px; bottom:11px; width:282px; padding:10px 11px; }
  .omnia-music-main { gap:9px; min-height:53px; }
  .omnia-music-details>summary { right:10px; top:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .omnia-music-player * { animation:none!important; transition:none!important; }
  .omnia-music-player.is-playing .omnia-music-bars i { transform:scaleY(.65); }
}
html.reduce-motion .omnia-music-player * { animation:none!important; transition:none!important; }
html.reduce-motion .omnia-music-player.is-playing .omnia-music-bars i { transform:scaleY(.65); }
