/* Ticket links and a record player; the existing audio connection owns state. */
.studio-home .hero-prism .hero-side>.row>.button{position:relative;border:0!important;border-radius:0!important;min-height:52px;padding:12px 18px!important;mask:radial-gradient(circle 7px at 0 50%,#0000 98%,#000) left,radial-gradient(circle 7px at 100% 50%,#0000 98%,#000) right;mask-size:51% 100%;mask-repeat:no-repeat;box-shadow:none;white-space:nowrap}
.studio-home .hero-prism .hero-side>.row>.button.yellow{background:var(--yellow);color:#191919}
.studio-home .hero-prism .hero-side>.row>.button.ghost{background:var(--ink);color:var(--paper)}
[data-theme=dark] .studio-home .hero-prism .hero-side>.row>.button.ghost{background:#eeece5;color:#191919}
.studio-home .hero-prism .hero-side>.row>.button:first-child:after{content:'';position:absolute;right:27px;top:7px;bottom:7px;border-left:1px dashed #19191965}
.studio-home .hero-prism .hero-side>.row>.button:hover{filter:brightness(.94)}
.studio-home .hero-prism .hero-side>.logo-audio-guidance{position:relative;margin-top:28px;padding-bottom:8px;max-width:none}
.logo-audio-guidance:before{content:'';position:absolute;width:35px;height:56px;border-left:1px solid var(--yellow);border-bottom:1px solid var(--yellow);border-radius:0 0 0 45px;top:-30px;left:-12px;transform:rotate(10deg);pointer-events:none}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint,.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint.is-connected{display:grid;grid-template-columns:90px minmax(0,1fr) 35px;gap:12px;align-items:center;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;min-height:112px;color:var(--ink)}
:is(.hero-prism,.music-dock) .logo-vinyl{position:relative;display:grid;place-items:center;width:90px;height:90px;border-radius:50%;border:2px solid #393939;background:repeating-radial-gradient(circle at center,#191919 0 2px,#292929 3px,#181818 4px);box-shadow:inset 0 0 0 2px #ffffff08,0 5px 12px #0002;animation:logo-record-spin 6s linear infinite;animation-play-state:paused}
.logo-vinyl:before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 35deg,transparent 0deg,#ffffff20 35deg,transparent 65deg,transparent 170deg,#ffffff1c 220deg,transparent 250deg)}
.logo-vinyl-label{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;width:35px;height:35px;border-radius:50%;background:var(--yellow);color:#191919}
.logo-vinyl-emblem{display:block;width:25px;height:25px;background:currentColor;mask:url('/assets/nellcodex-record-centered.svg') center/contain no-repeat;-webkit-mask:url('/assets/nellcodex-record-centered.svg') center/contain no-repeat}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint-copy{min-width:0;gap:5px;align-self:center}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint-copy strong{font-size:13px;line-height:1.55}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint-copy small{font-size:10px;line-height:1.6}
:is(.hero-prism,.music-dock) .logo-audio-wave{display:block;width:100%;height:38px;margin-top:5px;overflow:hidden;color:var(--muted)}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint-arrow{display:grid;place-items:center;align-self:start;margin-top:15px;width:32px;height:32px;border-radius:50%;background:var(--yellow);color:#191919;font-size:23px}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint.is-connected .logo-audio-hint-arrow{font-size:0;line-height:1;position:relative}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint.is-connected .logo-audio-hint-arrow:after{content:"";position:absolute;width:8px;height:8px;left:50%;top:50%;transform:translate(-50%,-50%);background:currentColor;border-radius:1px}
:is(.hero-prism,.music-dock) .logo-audio-guidance .logo-audio-count{position:absolute;right:-4px;top:51px;width:43px;display:grid;justify-items:center;gap:2px;margin:0;font-size:8px;line-height:1.5;pointer-events:none}
:is(.hero-prism,.music-dock) .logo-audio-guidance .logo-audio-count[hidden]{display:none}
.logo-audio-count b{font:400 15px/1.2 monospace;padding:1px 4px;border:1px solid var(--muted);border-radius:5px;color:var(--ink);max-width:70px;overflow-wrap:anywhere}
:is(.hero-prism,.music-dock) .logo-audio-guidance.is-connected .logo-vinyl{animation-play-state:running}
:is(.hero-prism,.music-dock) .logo-audio-guidance.is-motion-paused .logo-vinyl{animation-play-state:paused}
:is(.hero-prism,.music-dock) .logo-audio-guidance.is-connected .logo-audio-wave{color:var(--ink)}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint:hover .logo-audio-hint-arrow{box-shadow:0 0 0 4px color-mix(in srgb,var(--yellow) 18%,transparent)}
.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint:focus-visible{outline:2px solid var(--yellow);outline-offset:6px;border-radius:8px}
@keyframes logo-record-spin{to{transform:rotate(360deg)}}
@media(max-width:600px){.studio-home :is(.hero-prism,.music-dock) .logo-audio-hint-copy{text-align:left}.studio-home .hero-prism .hero-side>.row>.button{font-size:11px}}
@media(prefers-reduced-motion:reduce){:is(.hero-prism,.music-dock) .logo-vinyl{animation:none}:is(.hero-prism,.music-dock) .logo-audio-guidance.is-connected .logo-audio-wave{transform:none;transition:none}}


.logo-spectrum-upper{fill:var(--yellow);stroke:none}
.logo-spectrum-lower{fill:currentColor;opacity:.4;stroke:none}
.logo-spectrum-axis{fill:none;stroke:currentColor;stroke-width:.6;opacity:.35}
.music-mode #main :is(h1,h2,h3,img):not(.hero-prism *):not(dialog *,[role="dialog"] *,[role="menu"] *,[popover] *,.dropdown *){scale:var(--music-scale,1);transform-origin:center}
.music-mode .hero-prism :is(.hero-side,.hero-copy){scale:var(--music-scale,1);transform-origin:center}
@media(prefers-reduced-motion:reduce){.music-mode #main :is(h1,h2,h3,img),.music-mode .hero-prism :is(.hero-side,.hero-copy){scale:1}}

.music-dock{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(192px + env(safe-area-inset-bottom));z-index:20;display:block;width:48px;height:48px;min-height:0;margin:0;padding:0;border:0;border-radius:50%;background:transparent}
.floating-actions>.music-dock{position:relative;inset:auto;order:-1;flex:none}
.music-dock[hidden]{display:none}
.music-dock .logo-audio-guidance{position:relative;margin:0;padding:0}
.music-dock .logo-audio-guidance:before,.music-dock .logo-audio-count{display:none!important}
.music-dock .logo-audio-hint{display:grid;place-items:center;width:48px;height:48px;padding:0;min-height:0;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.music-dock .logo-audio-hint:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.music-dock .logo-audio-hint:hover{filter:brightness(1.12)}
.music-dock .logo-vinyl{box-sizing:border-box;width:48px;height:48px}
.music-dock .logo-vinyl-label{width:25px;height:25px}
.music-dock .logo-vinyl-emblem{width:19px;height:19px}
.music-dock .logo-audio-hint-copy,.music-dock .logo-audio-hint-arrow{display:none!important}
.music-dock .logo-audio-hint-copy strong{display:block;font-size:12px}
.music-dock .logo-audio-hint-copy small{font-size:10px}
.music-dock .logo-audio-wave{height:24px;margin:0}
.music-dock .logo-audio-hint-arrow{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--yellow);color:#191919;font-size:12px}

@media(max-width:600px){.studio-home .hero-prism .logo-audio-hint{grid-template-columns:72px minmax(0,1fr) 35px;gap:10px;min-height:104px}.hero-prism .logo-vinyl{width:72px;height:72px}.studio-home .hero-prism .logo-audio-hint-copy strong{font-size:12px}.studio-home .hero-prism .hero-side>.logo-audio-guidance{margin-top:22px}}

/* Popup surfaces inherit neutral music values, including nested headings/images. */
.music-mode :is(dialog,[role="dialog"],[role="menu"],[popover],.dropdown){--music-scale:1;--logo-audio-scale:1;--music-impact:0;--music-logo-scale:1;--music-logo-glow:0}

/* Hide music controls whenever navigation uses the hamburger menu. */
@media(max-width:1190px){.logo-audio-guidance,.music-dock{display:none!important}}
