/* Shared CAM design language. Artwork keeps each release's own identity. */
:root{--cam-bg:#101113;--cam-panel:#191b1f;--cam-panel-raised:#23262b;--cam-line:#ffffff1c;--cam-text:#f6f3eb;--cam-muted:#b1b3b8;--cam-accent:#ecd9ad;--cam-focus:#a8dfed;--cam-radius:18px;--bg:var(--cam-bg);--panel:var(--cam-panel);--surface:var(--cam-panel);--ink:var(--cam-text);--muted:var(--cam-muted);--line:var(--cam-line);--accent:var(--cam-accent);--pink:var(--cam-accent);color-scheme:dark}
html{scroll-padding-top:88px}body{background:var(--cam-bg);color:var(--cam-text);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--cam-focus);outline-offset:4px}button:disabled{cursor:default}img{max-width:100%}button,select,input[type=range]{accent-color:var(--cam-accent)}
.cam-tabbar{display:none}.cam-tabbar svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cam-tabbar a{min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--cam-muted);font:600 10px/1.3 Inter,Arial,sans-serif;text-decoration:none;letter-spacing:.015em}.cam-tabbar a[aria-current]{color:var(--cam-accent)}.cam-tabbar a[aria-current] svg{filter:drop-shadow(0 0 8px #ecd9ad35)}
.storm-nav,.arcade-header,.mission-nav{background:#101113f2;border-color:var(--cam-line)}.storm-nav,.arcade-header{min-height:72px;padding-block:15px}.storm-brand span,.brand span{color:var(--cam-accent)}.storm-nav nav a,.arcade-header nav a,.mission-nav>a{min-height:44px;display:inline-flex;align-items:center}.storm-single{gap:clamp(24px,5vw,64px)}.storm-art{border-color:#ead6a230;border-radius:20px}.storm-kicker{color:var(--cam-accent)}.storm-details h1{font-family:Inter,Arial,sans-serif;font-weight:600;font-size:clamp(34px,4.5vw,60px);line-height:1.09;letter-spacing:-.045em;text-wrap:balance}.storm-copy{color:var(--cam-muted)}.storm-primary,.mission-primary{background:var(--cam-accent);border-color:var(--cam-accent);border-radius:12px}.storm-player{background:var(--cam-panel);border-color:var(--cam-line);border-radius:16px}.storm-download{border-color:#ffffff38}.storm-actions a{min-height:48px;border-radius:12px}.storm-meta{line-height:1.65}.storm-album{border-color:var(--cam-line)}.storm-arcade{color:var(--cam-accent);min-height:44px;display:flex;align-items:center}.storm-footer a{min-height:44px;display:inline-flex;align-items:center}
.arcade-layout .setup{background:var(--cam-panel);border:1px solid var(--cam-line);border-radius:20px;padding:22px;align-self:start}.mode-card{background:#202227;border-color:var(--cam-line);border-radius:14px}.mode-card[aria-pressed=true]{background:#39352c;border-color:#ecd9ad80}.mode-icon{color:var(--cam-accent)}.start-button{background:var(--cam-accent);color:#252017;border-color:var(--cam-accent);border-radius:12px}.secondary-button,.small-button{background:#23262b;border-color:#ffffff28;border-radius:10px;min-height:44px}.scoreboard{background:var(--cam-panel);border-color:var(--cam-line);border-radius:14px}.arena{border-color:#ffffff2b;border-radius:18px}.touch-controls button{border-radius:12px}.round-summary span{border-color:var(--cam-line);background:#25272b}.settings summary{min-height:44px}.settings select,.setup>select{background:#111316;border-color:#ffffff30}.game-heading h2{font-weight:600}.mission-options button{border-color:#ffffff2a;background:#23262b;border-radius:10px}.mission-hud{background:var(--cam-panel);border-color:var(--cam-line);border-radius:12px}.mission-track{background:#212229;border-color:var(--cam-line);border-radius:10px}.mission-track button{min-height:40px}.mission-controls button{border-radius:12px}.mission-options button{min-height:44px}.mission-arena{border-radius:16px}
@media(max-width:760px){.cam-tabbar{position:fixed;z-index:25;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px max(12px,env(safe-area-inset-left)) max(5px,env(safe-area-inset-bottom));border-top:1px solid #ffffff16;background:#141619f5;backdrop-filter:blur(20px)}body.cam-tabs{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.storm-nav{padding:12px 18px;min-height:64px}.storm-nav nav{gap:13px}.storm-brand{font-size:27px}.storm-nav nav a{font-size:12px}.storm-single{gap:24px}.storm-art{width:min(100%,390px);border-radius:18px}.storm-details h1{font-size:clamp(31px,8.5vw,43px)}.storm-copy{margin:18px 0;font-size:15px}.storm-actions{gap:10px}.storm-actions a{justify-content:center;gap:14px;flex:1;font-size:14px}.storm-album{margin-top:28px}.storm-footer{padding-bottom:20px}.arcade-header{min-height:64px;padding:10px 16px}.arcade-layout{padding:14px 14px 28px}.arcade-layout .setup{padding:15px;border-radius:18px}.setup-title{display:block}.setup-title h1{font-size:23px;margin:0 0 15px}.setup-title .eyebrow{font-size:10px;margin-bottom:4px}.mode-list{gap:6px}.mode-card{min-height:78px;border-radius:12px}.mode-card strong{font-size:11px;line-height:1.3}.round-summary{gap:5px}.round-summary span{font-size:11px}.settings summary{font-size:13px}.game-heading{margin:22px 0 12px}.game-heading h2{font-size:26px}.arena-top #arena-song{max-width:78%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mission-options button{min-height:44px}.mission-shell{gap:7px}.mission-track button{min-height:40px}.site-header nav a,.release-header a{min-height:44px}.cam-tabs .site-header,.cam-tabs .release-header{border-color:var(--cam-line)}}
@media(max-height:520px) and (orientation:landscape){.cam-tabbar{display:none}body.cam-tabs{padding-bottom:0}.mission-options button{min-height:32px}.mission-nav{min-height:40px}.mission-nav>a{min-height:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(forced-colors:active){.cam-tabbar,.mode-card,.storm-player{border:1px solid CanvasText}.cam-tabbar a[aria-current]{outline:1px solid Highlight}}
/* Existing albums and singles share the shell without changing their art. */
body.music-refresh{--bg:var(--cam-bg);--surface:var(--cam-panel);--text:var(--cam-text);--muted:var(--cam-muted);--gold:var(--cam-accent);--line:var(--cam-line);background:var(--cam-bg);color:var(--cam-text)}body.music-refresh .site-header{background:var(--cam-bg);border-color:var(--cam-line)}body.music-refresh #album-main,body.music-refresh .release-nav,body.music-refresh .new-player{background:var(--cam-panel);border-color:var(--cam-line)}body.music-refresh .album-hero{background:#1e2024;border-color:var(--cam-line)}body.music-refresh .release-nav a[aria-current=page]{background:#ecd9ad14;border-color:#ecd9ad50}body.music-refresh :is(.primary-action,#music-toggle,#blue-play){background:var(--cam-accent);color:#272016;border-color:var(--cam-accent);border-radius:12px}body.music-refresh .eyebrow,body.music-refresh .track-button[aria-current=true] .track-name{color:var(--cam-accent)}body.music-refresh .track-button[aria-current=true]{background:#ecd9ad10}body.music-refresh .music-bar{background:#1c1f24f7;border-color:var(--cam-line)}body.music-refresh .download-mp3{border-radius:12px;background:#ffffff04;border-color:#ffffff28;color:var(--cam-accent)}body.music-refresh .new-player{border-radius:18px}body.music-refresh .release-nav a{min-height:48px}body.music-refresh .track-share{min-width:44px}body.music-refresh :focus-visible{outline-color:var(--cam-focus)}
