/* A quiet, optional listening layer. No autoplay, backdrop blur or moving waveform. */
.header-tools {display:flex;align-items:center;gap:18px;flex-shrink:0;}
.music-control {display:flex;align-items:center;border:1px solid var(--line);border-radius:3px;}
.music-toggle,.music-settings {display:flex;align-items:center;justify-content:center;min-height:40px;background:transparent;border:0;color:var(--muted);}
.music-toggle {gap:8px;padding:7px 11px;font-size:12px;white-space:nowrap;}
.music-toggle svg {width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.2;}
.music-toggle[data-playing=true] {color:var(--accent);}
.music-toggle:hover,.music-settings:hover {color:var(--text);background:var(--hover);}
.music-settings {min-width:32px;padding:4px 8px;border-left:1px solid var(--line);font-size:16px;}
.music-invitation {position:fixed;right:28px;bottom:28px;z-index:20;width:min(365px,calc(100vw - 32px));padding:28px;background:var(--panel);border:1px solid var(--line-strong);border-radius:5px;box-shadow:0 14px 50px #0003;}
.music-invitation::before {content:'';position:absolute;top:0;left:28px;width:36px;height:2px;background:var(--accent);}
.music-invitation .eyebrow {display:block;font-size:9px;letter-spacing:.15em;padding-right:15px;}
.music-invitation h2 {font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:.04em;line-height:1.6;margin:17px 0 12px;}
.music-invitation p {font-size:13px;line-height:1.85;color:var(--muted);margin:0 0 23px;}
.music-invitation small {display:block;font-size:11px;color:var(--muted);margin-top:14px;}
.music-dismiss {position:absolute;right:9px;top:7px;width:36px;height:36px;border:0;background:transparent;font-size:23px;color:var(--muted);}
.music-invite-actions {display:flex;gap:12px;}
.music-invite-actions>button {flex:1;padding:10px;gap:10px;font-weight:400;}
.music-dialog {width:min(460px,calc(100vw - 24px));padding:28px;}
.music-dialog::backdrop {background:#0b0d0bdf;backdrop-filter:none;}
.music-dialog .eyebrow {font-size:9px;}
.music-dialog .dialog-heading h2 {font-size:26px;margin-top:8px;}
.music-now {display:flex;align-items:center;gap:18px;padding:24px 0 28px;}
.music-note {display:grid;place-items:center;width:60px;height:68px;border:1px solid var(--line);color:var(--accent);font-family:Georgia,serif;font-size:34px;flex-shrink:0;}
.music-now h3 {margin:0 0 5px;font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.5;}
.music-now p {margin:0;font-size:12px;color:var(--muted);}
.music-tracks {border-top:1px solid var(--line);}
.music-track {display:flex;justify-content:space-between;align-items:center;gap:18px;text-align:left;width:100%;padding:14px 12px;border:0;border-bottom:1px solid var(--line);border-left:2px solid transparent;background:transparent;}
.music-track[aria-pressed=true] {border-left-color:var(--accent);background:var(--stage);}
.music-track:hover {background:var(--hover);}
.music-track strong {display:block;font-size:14px;font-weight:400;}
.music-track small {display:block;font-size:11px;color:var(--muted);margin-top:3px;}
.music-duration {font:12px Georgia,serif;color:var(--muted);font-variant-numeric:tabular-nums;}
.music-volume {display:flex;align-items:center;gap:16px;margin-top:24px;font-size:12px;}
.music-volume input {flex:1;min-width:0;accent-color:var(--accent);cursor:pointer;}
.music-volume output {width:36px;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted);}
.music-dialog .wide {justify-content:center;margin-top:14px;}
.music-behavior {font-size:12px;color:var(--muted);margin:16px 0 24px;line-height:1.8;}
.music-credits {border-top:1px solid var(--line);padding-top:16px;font-size:11px;color:var(--muted);overflow-wrap:anywhere;}
.music-credits summary {cursor:pointer;font-size:12px;}
.music-credits a {text-underline-offset:3px;}
.music-dialog :focus-visible {outline:2px solid var(--accent);outline-offset:3px;}
@media(max-width:700px) {
  .header-tools {gap:10px;}
  .music-invitation {bottom:16px;right:16px;padding:24px;}
  .music-invitation h2 {font-size:25px;}
  .music-dialog {padding:23px;max-height:90dvh;}
}
@media(max-width:420px) {
  #musicLabel {display:none;}
  .music-toggle {min-width:36px;padding:7px;}
  .music-settings {min-width:28px;padding:4px 6px;}
}
