*, *::before, *::after { box-sizing: border-box; }
:root, html, body, #root, svg, canvas { color-scheme: only dark !important; forced-color-adjust: none; }
html, body, #root {
  margin: 0;
  width: 100%;
  height: 100%;
  height: 100dvh;
  background: #0E1116;
  overflow: hidden;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  overscroll-behavior: none;
  -webkit-user-select: none;
  user-select: none;
}
svg { color-scheme: dark; forced-color-adjust: none; }
#root { display: flex; flex-direction: column; }
.flex { display: flex; }
.flex-col { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }
.flex-1 { flex: 1 1 0%; min-height: 0; }
.h-full { height: 100%; }
.w-full { width: 100%; }
.relative { position: relative; }
.absolute { position: absolute; }
.inset-0 { inset: 0; }
.items-center { align-items: center; }
.items-start { align-items: flex-start; }
.items-stretch { align-items: stretch; }
.items-baseline { align-items: baseline; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.justify-end { justify-content: flex-end; }
.justify-start { justify-content: flex-start; }
.pointer-events-none { pointer-events: none; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.mt-2\.5 { margin-top: 0.625rem; }
.mt-3 { margin-top: 0.75rem; }
.mt-4 { margin-top: 1rem; }
.rounded-full { border-radius: 9999px; }
.rounded-lg { border-radius: 0.5rem; }
.rounded-xl { border-radius: 0.75rem; }
.z-10 { z-index: 10; }
/* Compact music controls shared by menu and table settings. */
.pd-music-row{display:flex;align-items:center;gap:6px;min-height:72px;font-family:'Inter',system-ui,sans-serif;color:#F2EFE8}
.pd-music-label{font-size:14px;font-weight:600;cursor:pointer;flex:none}
.pd-music-arrows{display:flex;gap:0;flex:none;margin-left:6px}
.pd-music-arrows button{border:0;background:transparent;color:#D4A853;width:44px;height:44px;font:32px/1 system-ui;cursor:pointer;touch-action:manipulation;border-radius:8px}
.pd-music-arrows button:hover{background:#d4a85312}
.pd-music-arrows button:focus-visible{outline:1px solid #D4A853;outline-offset:-2px}
.pd-music-volume-control{display:flex;align-items:center;justify-content:center;gap:2px;flex:1;min-width:65px}
.pd-music-volume-control input{appearance:none;-webkit-appearance:none;writing-mode:vertical-lr;direction:rtl;width:30px;height:58px;padding:0;margin:0;border:0;background:transparent;cursor:ns-resize;touch-action:none;flex:none}
.pd-music-volume-control input::-webkit-slider-runnable-track{width:4px;height:100%;border-radius:4px;background:linear-gradient(to top,#D4A853 0 var(--music-level),#414643 var(--music-level) 100%)}
.pd-music-volume-control input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1px solid #edd59e;border-radius:50%;background:#d3b574;margin-left:-5px;box-shadow:0 1px 5px #0006}
.pd-music-volume-control input::-moz-range-track{width:4px;height:100%;border-radius:4px;background:linear-gradient(to top,#D4A853 0 var(--music-level),#414643 var(--music-level) 100%)}
.pd-music-volume-control input::-moz-range-thumb{width:13px;height:13px;border:1px solid #edd59e;border-radius:50%;background:#d3b574}
.pd-music-volume-control input:focus-visible{outline:1px solid #D4A853;border-radius:8px}
.pd-music-volume-control output{min-width:32px;white-space:nowrap;font-size:11px;font-variant-numeric:tabular-nums;text-align:right;color:#d8c397}
.pd-music-switch{appearance:none;-webkit-appearance:none;position:relative;width:40px;height:24px;border-radius:20px;border:1px solid #66685d;background:#363b3b;flex:none;cursor:pointer;margin:0 0 0 auto}
.pd-music-switch::after{content:'';position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#d1d0c9;transition:transform .15s}
.pd-music-switch:checked{background:#D4A853;border-color:#d4b775}
.pd-music-switch:checked::after{transform:translateX(16px);background:#0E1116}
.pd-music-error{margin:0 0 8px;font-size:11px;line-height:1.4;color:#d8c397}
.pd-music-repeat{position:relative;display:grid;place-items:center;flex:none;width:44px;height:44px;padding:4px 9px 8px;border:0;border-radius:8px;background:transparent;color:#858983;cursor:pointer;touch-action:manipulation}
.pd-music-repeat svg{width:26px;height:26px;overflow:visible}
.pd-music-repeat path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.pd-music-repeat text{fill:currentColor;stroke:none;font:600 10px system-ui;text-anchor:middle}
.pd-music-repeat i{position:absolute;bottom:3px;width:4px;height:4px;border-radius:50%;background:currentColor;visibility:hidden}
.pd-music-repeat[aria-pressed=true]{color:#D4A853}
.pd-music-repeat[aria-pressed=true] i{visibility:visible}
.pd-music-repeat:hover{background:#d4a85312}
.pd-music-repeat:focus-visible{outline:1px solid #D4A853;outline-offset:-2px}
.pd-music-credit-link{display:block;border:0;background:transparent;color:#bca778;font:11px/1.4 Inter,system-ui,sans-serif;padding:6px 0 10px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.pd-music-credits{width:calc(100% - 24px);max-width:460px;max-height:calc(100dvh - 48px);box-sizing:border-box;overflow:auto;padding:20px;border:1px solid #665943;border-radius:16px;background:#111519;color:#E9E6DF;font:14px/1.5 Inter,system-ui,sans-serif}
.pd-music-credits::backdrop{background:#000b}
.pd-music-credits header{display:flex;align-items:center;gap:12px;justify-content:space-between}
.pd-music-credits h2{font-size:18px;margin:0}
.pd-music-credits header button{flex:none;width:44px;height:44px;background:transparent;border:0;color:#D4A853;font-size:26px;cursor:pointer}
.pd-music-credits a{color:#dfbf7a;text-underline-offset:3px}
.pd-music-credits ol{list-style:none;margin:18px 0 0;padding:0}
.pd-music-credits li{padding:14px 0;border-top:1px solid #d4a85326}
.pd-music-credits li strong,.pd-music-credits li span,.pd-music-credits li small{display:block}
.pd-music-credits li span,.pd-music-credits li small{color:#b9b9b4;font-size:12px;margin:4px 0}
#root [data-qa="menu-profile"]{display:grid;place-items:center;width:112px;height:112px;flex:0 0 auto}
#root [data-qa="menu-profile"]>[data-qa="face-avatar"]{transform:scale(1.12);transform-origin:center}
@media(max-width:360px){.pd-music-row{gap:3px}.pd-music-label{font-size:13px}.pd-music-arrows{margin-left:4px}.pd-music-arrows button{width:44px}.pd-music-volume-control{gap:0;min-width:62px}}
@media(prefers-reduced-motion:reduce){.pd-music-switch::after{transition:none}}
