.midnight-music-dialog{max-width:1080px!important;background:#15252f!important;color:#f4e9d2!important;box-sizing:border-box}.midnight-music-dialog h2{color:#f6dfa9;font-size:clamp(1.7rem,4vw,2.5rem)}.midnight-music-dialog h2:focus{outline:none}.midnight-music-dialog .eyebrow{color:#dfc58c}.music-heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.8rem}.music-room{position:relative;overflow:hidden;isolation:isolate;padding:28px 24px 20px;border-radius:20px;border:1px solid #657980;background:radial-gradient(ellipse at 50% 0,#64828a55,transparent 65%),linear-gradient(#213c49,#122832);margin:20px 0}.music-window{position:absolute;width:160px;height:190px;top:-45px;left:calc(50% - 80px);border:12px solid #52666b;border-radius:90px 90px 0 0;opacity:.35;display:flex;justify-content:space-evenly;z-index:-1}.music-window i{width:5px;background:#8c9e99}.music-room-3{background:radial-gradient(ellipse at 50% 0,#d8bd7466,transparent 70%),linear-gradient(#566f70,#183238)}.music-pads{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative}.music-pads button{min-width:0;min-height:148px;border:1px solid #84958d;border-radius:18px;background:#142e39aa;color:#f0ead8;padding:20px 8px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;touch-action:manipulation}.music-pads strong{font-family:Georgia,serif;font-size:1.05rem}.music-pads small{font-size:.68rem;letter-spacing:.12em}.music-lantern{display:grid;place-items:center;width:clamp(48px,7vw,76px);height:clamp(60px,8vw,88px);border:3px solid var(--pad-color);border-radius:45% 45% 25% 25%;background:#263c40;box-shadow:0 5px 14px #0005;position:relative;color:var(--pad-color)}.music-lantern:before{content:'';position:absolute;width:22px;height:14px;border:2px solid var(--pad-color);border-bottom:none;border-radius:12px 12px 0 0;top:-15px}.music-lantern span{font:36px Georgia,serif}.music-pads .music-lit{background:var(--pad-color);color:#162c33;box-shadow:0 0 24px color-mix(in srgb,var(--pad-color) 45%,transparent);outline:3px solid #fff1cb;outline-offset:2px}.music-lit .music-lantern{background:var(--pad-color);border-color:#27373e;color:#27373e}.music-lit .music-lantern:before{border-color:#27373e}.music-pads button:focus-visible{outline:3px solid #fff0af;outline-offset:3px}.music-phrase{display:flex;list-style:none;padding:0;margin:18px 0;gap:8px;justify-content:center;flex-wrap:wrap}.music-phrase li{min-width:48px;min-height:58px;display:grid;place-items:center;gap:3px;border:1px solid #7d9290;border-radius:10px;padding:7px;background:#1d3540}.music-phrase li span{font:23px Georgia}.music-phrase li small{font-size:11px}.music-note-done{background:#4b6149!important;border-color:#c8d29e!important}.music-main-actions,.music-preferences{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.music-main-actions button,.music-preferences button{min-height:44px}.music-preferences button[aria-pressed=true]{background:#e3ca92;color:#183039}.midnight-music-dialog #music-status{min-height:3em;padding:8px 0;color:#f8df9f;line-height:1.5}.music-lower{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}.midnight-music-dialog details{background:#eee5ce;color:#213b38;border-radius:10px;padding:12px;overflow-wrap:anywhere}.midnight-music-dialog details h3{color:#213b38}.music-framing{font-size:.8rem;line-height:1.55;color:#b7c8c8;margin-top:20px}.music-ending{max-width:760px;margin:auto}.music-ending>span:first-child{display:block;text-align:center;color:#ead29b;font-size:clamp(32px,7vw,65px);letter-spacing:.2em;margin:20px 0}.music-ending .eyebrow{display:block;text-align:center}.music-ending details{margin:24px 0}.music-ending button{margin:8px 6px 8px 0;min-height:44px}@media(max-width:650px){.midnight-music-dialog{padding:16px!important}.music-room{padding:22px 12px 14px}.music-pads{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.music-pads button{min-height:132px;padding-top:20px}.music-lower{grid-template-columns:1fr}.music-main-actions button{flex:1 1 42%}.music-preferences button{font-size:.78rem;flex:1 1 40%}.music-phrase{gap:5px}.music-phrase li{min-width:33px;padding:6px}.music-pads strong{font-size:1rem}.music-lantern{width:48px;height:58px}}@media(prefers-reduced-motion:reduce){.music-pads button,.music-lantern{animation:none!important;transition:none!important}}body.motion-paused .music-pads button,body.motion-paused .music-lantern{animation:none!important;transition:none!important}
