/* Small, optional movements; links and controls always work without animation. */
:root{--cam-ease:cubic-bezier(.2,.7,.25,1)}
html{scroll-padding-block:24px 150px}
html.cam-ui-motion{scroll-behavior:smooth}
body .site-header{height:auto;min-height:78px;flex-wrap:wrap;gap:12px;padding-block:14px}
body .site-header nav{min-width:0;flex-wrap:wrap;row-gap:8px}
body .site-header nav a{min-height:44px;display:inline-flex;align-items:center}
button,a,summary{-webkit-tap-highlight-color:rgba(188,161,255,.2);touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #fff;outline-offset:4px}
.cam-ui-motion :is(button,summary,.release-nav a,.library-album,.track-button){transition:background-color 180ms,border-color 180ms,box-shadow 180ms,transform 180ms var(--cam-ease)}
.cam-ui-motion main.cam-page-arrival{animation:cam-page-arrive 260ms var(--cam-ease) both}
@keyframes cam-page-arrive{from{opacity:.75;translate:0 7px}to{opacity:1;translate:0 0}}
@media(hover:hover) and (pointer:fine){.cam-ui-motion :is(.release-nav a,.library-album):hover{transform:translateY(-2px);box-shadow:0 6px 20px #b99bff12}.cam-ui-motion button:not(:disabled):hover{border-color:#b7aacb}}
.cam-ui-motion :is(button,.release-nav a):active{transform:scale(.98)}
body .music-facts{margin:24px 32px;padding:24px 0;border-top:1px solid #333;color:#d7d7dd}
.music-facts h2{font:550 clamp(22px,3vw,30px)/1.3 Arial,sans-serif;letter-spacing:-.025em}.music-facts p{font:400 16px/1.75 Arial,sans-serif;max-width:70ch}.music-facts summary{font:500 16px/1.5 Arial,sans-serif;min-height:48px;cursor:pointer;padding:14px 0}.music-facts details{border-bottom:1px solid #303037}.music-facts a,.song-breadcrumb a{color:#ddd0f1;text-underline-offset:4px}.song-breadcrumb{display:flex;gap:8px;flex-wrap:wrap;font:14px/1.6 Arial,sans-serif;padding:18px 32px 0;color:#aaa}.song-breadcrumb a{min-height:32px;display:inline-flex;align-items:center}
@media(max-width:600px){body .site-header{margin-inline:0;padding-inline:16px}body .site-header nav{width:100%;gap:4px}body .site-header nav a{padding:8px 10px;font-size:14px}.release-nav{overflow-wrap:anywhere}body .music-facts{margin-inline:20px}.song-breadcrumb{padding-inline:20px}body .listener-footer{flex-wrap:wrap}}
@supports not (height:100dvh){body dialog{max-height:90vh}.cam-stage-dialog{max-height:calc(100vh - 24px)}}
@media(prefers-reduced-motion:reduce){html.cam-ui-motion{scroll-behavior:auto}.cam-ui-motion main.cam-page-arrival{animation:none}.cam-ui-motion :is(button,summary,.release-nav a,.library-album,.track-button){transition:none;transform:none}}
@media(forced-colors:active){a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:Highlight}.music-facts,.music-facts details{border-color:CanvasText}}
::view-transition-old(root){animation:cam-view-out 120ms ease both}
::view-transition-new(root){animation:cam-view-in 220ms var(--cam-ease) both}
@keyframes cam-view-out{to{opacity:0}}
@keyframes cam-view-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

/* A tighter listening surface, with generous touch targets. */
body.streaming-page .new-album-hero{padding-block:24px}.streaming-page .new-album-hero h1{max-width:18ch}.streaming-page .new-player{background:linear-gradient(135deg,#1b1b20,#131315);border-color:#39393f}.new-player-actions{gap:8px}.new-player-actions #new-share-current{margin-inline-start:auto}.streaming-page .new-player-actions label{margin-inline-start:0}.new-player #new-album-status{padding-top:10px;color:#d4c7ed}.streaming-page .track-button[aria-current=true]{border-inline-start-color:#c7b4ed}.streaming-page .track-button[aria-current=true] .track-name{color:#fff}.streaming-page .track-search{display:flex;gap:8px;align-items:center;min-width:0}.streaming-page .track-search input{min-width:0;width:100%}#clear-track-search{border:1px solid #4d4d55;border-radius:12px;min-height:44px;padding:8px 12px;font-size:14px;color:#eee;background:#202025}.music-settings summary,.more-menu summary{user-select:none}.song-pages summary{min-height:44px;padding-block:10px}.song-pages nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #34343a;border-radius:10px;background:#17171a;text-decoration:none}.song-pages nav a:hover{border-color:#9d89be}.song-pages nav{gap:8px}.song-pages nav a span{margin-inline-start:5px}
@media(max-width:760px){.release-nav{padding:8px;gap:4px}.release-nav a{padding:10px 8px;min-height:68px}.release-nav strong{font-size:13px}.release-nav span{font-size:12px}.streaming-page .album-actions{align-items:stretch}.streaming-page .track-search{flex-basis:100%}.streaming-page .track-search input{max-width:none}.new-player-actions #new-share-current{margin-inline-start:0;flex-basis:100%}.streaming-page .new-player-actions .cam-song-like{flex:1}.new-player-actions label{flex:1;font-size:14px}.streaming-page .new-album-hero h1{font-size:clamp(2rem,8vw,3rem);line-height:1.12}.listener-page .music-bar,.streaming-page .music-bar{padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}}

.new-player-options{flex-basis:100%;border-top:1px solid #343439;margin-top:6px}.new-player-options summary{padding:12px 0;min-height:44px;color:#bdbdc8;font-size:14px;cursor:pointer}.new-player-options[open]{padding-bottom:8px}.new-player-options .sound-motion-toggle{margin-top:8px;width:100%}.new-player-options label{padding:6px 0}@media(max-width:760px){.streaming-page .new-player-actions>button{flex:1 1 calc(50% - 8px);min-width:0}.streaming-page .new-player-actions #new-share-current{flex-basis:calc(50% - 8px);font-size:14px}}
.new-player-actions .cam-listener-status:empty{display:none}@media(max-width:760px){.streaming-page .new-player-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.new-player-actions>.new-player-options,.new-player-actions>.cam-listener-status{grid-column:1/-1}.streaming-page .new-player-actions>button{width:100%;min-height:44px;padding-inline:8px;box-sizing:border-box}}

/* Shared studio surfaces: contrast and shape carry meaning without effects. */
body.streaming-page #album-main{background:#111214;box-shadow:0 18px 64px #0005}
body .release-nav{background:#101113;gap:8px}
body .release-nav a{position:relative;border:1px solid #35363b;background:#18191c;padding-block:16px;border-radius:14px}
body .release-nav strong{font-weight:600;color:#f4f4f6}
body .release-nav span{color:#bfc0c7;line-height:1.5}
body .release-nav a[aria-current=page]{background:#28292e;border-color:#8b8d98;box-shadow:inset 0 -3px #eee}
body .release-nav a[aria-current=page]::after{content:"";position:absolute;bottom:0;inset-inline:16px;height:3px;background:var(--spectrum);border-radius:3px}
body.streaming-page .album-hero{background:radial-gradient(ellipse at 95% 0%,#34313e55,transparent 65%),linear-gradient(145deg,#1b1c20,#111214);border-bottom:1px solid #303137}
body.streaming-page .new-album-hero{padding-block:38px}
body.streaming-page .album-intro .eyebrow{display:inline-block;margin-top:0;padding:7px 11px;border:1px solid #5b5c64;border-radius:7px;font-size:11px;letter-spacing:.12em;color:#ececf1;background:#17181c}
body.streaming-page .album-art img{border:1px solid #ffffff30;box-shadow:0 16px 36px #0007}
body.streaming-page .album-intro h1{text-wrap:balance}
body.streaming-page .artist-line,body.streaming-page .stream-tagline{color:#d2d3da}
body.streaming-page .album-sidebar{background:#101113;border-color:#303137}
body.streaming-page .sidebar-library p{color:#bfc0c7;letter-spacing:.1em;font-size:11px;text-transform:uppercase}
body.streaming-page .library-album{border:1px solid #34353b;border-radius:12px;background:#191a1e;margin-block:8px;padding:12px}
body.streaming-page .library-album small{color:#bfc0c7;line-height:1.5}
body.streaming-page .library-album[aria-current=page]{border-color:#898b95;background:#28292e}
body.streaming-page .track-list{display:grid;gap:6px}
body.streaming-page .track-list li{border-bottom:1px solid #ffffff0c;gap:8px}
body.streaming-page .track-button{background:#18191c;border:1px solid #303137;border-radius:12px;min-height:76px}
body.streaming-page .track-button .track-name{line-height:1.5;color:#f4f4f6}
body.streaming-page .track-button .track-number{color:#c1c2ca;font-variant-numeric:tabular-nums}
body.streaming-page .track-button .track-meta{color:#c1c2ca;font-variant-numeric:tabular-nums}
body.streaming-page .track-button[aria-current=true]{background:#2a2931;border-color:#7c768c;border-inline-start:3px solid #e3d6ff;box-shadow:inset 0 1px #ffffff12}
body.streaming-page .track-share{align-self:center;min-width:44px;min-height:44px;border:1px solid #484950;border-radius:12px;background:#1d1e23;color:#eee}
body.streaming-page .track-columns{color:#bfc0c7;padding-block:14px;font-size:12px}
body .new-player{position:relative;background:linear-gradient(125deg,#24252b,#18191d);border-color:#565762;box-shadow:0 10px 30px #0003}
body .new-player::before{content:"";position:absolute;top:0;inset-inline:20px;height:2px;background:var(--spectrum);border-radius:2px;pointer-events:none}
body .new-player .eyebrow{color:#d2c6ea;letter-spacing:.12em;font-size:11px;line-height:1.6}
body .new-player h2{color:#fff}
body .music-bar{background:#17181bf5;border-top-color:#585963;box-shadow:0 -8px 28px #0005}
body .music-bar .music-label{color:#e5e5eb}
body .primary-action,body.streaming-page .primary-action{box-shadow:0 2px 0 #ffffff35 inset,0 4px 14px #0003;font-weight:600}
body .outline-action,body.streaming-page .outline-action{border-color:#62636c;background:#1b1c20;color:#f4f4f6}
body .track-search input{background:#191a1e;border:1px solid #61626b;border-radius:12px;color:#f7f7fa;min-height:46px}
body .track-search input::placeholder{color:#c3c4cc;opacity:1}
body .sound-visualizer{border-bottom:1px solid #65616e}
body .sound-visualizer i{border-radius:3px 3px 0 0}
@media(hover:hover) and (pointer:fine){body.streaming-page .track-button:hover{background:#26272d;border-color:#777984}body.streaming-page .track-share:hover{background:#34313e;border-color:#d5c5f2}body .release-nav a:hover{border-color:#aaa0c0}}
@media(max-width:760px){body .release-nav a{padding:12px 9px}body.streaming-page .album-hero{padding-inline:20px}body.streaming-page .new-album-hero{padding-block:28px}body.streaming-page .track-list li{gap:6px}body.streaming-page .track-button{padding-inline:10px;min-height:76px}body.streaming-page .track-button .track-name{font-size:15px}body.streaming-page .track-share{min-width:44px}body .new-player{border-radius:16px}}
@media(max-width:360px){body .release-nav a{min-height:56px}body .release-nav a[aria-current=page]::after{inset-inline:10px}body.streaming-page .track-list .track-button{grid-template-columns:1rem minmax(0,1fr) 2.5rem;gap:6px}}
html:not(.cam-ui-motion) :is(button,a,summary){animation:none!important;transition:none!important}
@media(prefers-contrast:more){body .release-nav a,body.streaming-page .track-button,body .new-player,body.streaming-page .library-album{border-color:#a9abb5}body .release-nav span,body.streaming-page .track-button .track-meta{color:#eee}}
@media(forced-colors:active){body.streaming-page #album-main,body.streaming-page .album-hero,body .new-player,body .music-bar{background:Canvas;box-shadow:none}body .release-nav a,body.streaming-page .library-album,body.streaming-page .track-button,body.streaming-page .track-share,body .outline-action{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}body .release-nav a[aria-current=page],body.streaming-page .track-button[aria-current=true]{border:3px solid Highlight}body .release-nav strong,body .release-nav span,body.streaming-page .track-button .track-name,body.streaming-page .track-button .track-meta,body.streaming-page .track-button .track-number{color:ButtonText}body .new-player::before,body .release-nav a[aria-current=page]::after{display:none}}

/* Creator credit stays readable and wraps naturally on narrow screens. */
body .creator-credit{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 10px;min-height:48px;padding:6px 16px;margin:0;background:#0c0d0f;border-bottom:1px solid #383940;color:#bfc0c7;font:400 12px/1.5 Arial,Helvetica,sans-serif;text-align:center}
body .creator-credit a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;color:#f4f4f6;text-decoration:none;font-weight:600;white-space:nowrap;border-radius:6px;padding-inline:3px}
body .creator-credit a:hover{text-decoration:underline;text-underline-offset:4px}
body .creator-credit img{display:block;width:28px;height:28px;object-fit:contain;flex:none}
@media(max-width:380px){body .creator-credit{gap:0 6px;font-size:11px;padding-inline:8px}body .creator-credit img{width:24px;height:24px}}
@media(forced-colors:active){body .creator-credit{background:Canvas;color:CanvasText;border-color:CanvasText}body .creator-credit a{color:LinkText}}

body.streaming-page .new-album-hero{display:grid;grid-template-columns:minmax(150px,230px) minmax(0,1fr);align-items:center;gap:32px}
body.streaming-page .new-album-hero .creative-cover{width:100%;max-width:230px;margin:0}
body.streaming-page .creative-cover img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
@media(max-width:760px){body.streaming-page .new-album-hero{grid-template-columns:140px minmax(0,1fr);gap:20px}}
@media(max-width:480px){body.streaming-page .new-album-hero{grid-template-columns:1fr;gap:24px}body.streaming-page .new-album-hero .creative-cover{width:min(100%,230px);justify-self:center}body.streaming-page .new-album-hero .album-intro{width:100%}}

/* CAM production credit, kept at the bottom of every page. */
.aicreation-production-credit{margin:0;padding:18px 20px 26px;border-top:1px solid #ffffff22;color:#c7c7cf;text-align:center;font:500 14px/1.5 Arial,Helvetica,sans-serif}.aicreation-production-credit a{color:#fff;text-underline-offset:4px}.aicreation-production-credit a:focus-visible{outline:2px solid #fff;outline-offset:4px}@media(forced-colors:active){.aicreation-production-credit{border-color:CanvasText;color:CanvasText}.aicreation-production-credit a{color:LinkText}}
