/* One photographic world across the site. All pictured products are concepts. */
:root{--room-image:url("assets/red-room-continuation-v81.webp");--room-text:#fff6e9;--room-ink:#2b1113}

/* The opening machine is deliberately untouched; these continue its setting. */
body[data-room-theme="home"] .closer-section,
body[data-room-theme="home"] .campaign-section,
body[data-room-theme="home"] .mix-section,
body[data-room-theme="home"] .club-section,
body[data-room-theme="home"] .vertical-callout{
  color:var(--room-text);
  background-image:linear-gradient(110deg,rgba(40,3,12,.85),rgba(75,5,15,.68)),var(--room-image);
  background-size:cover;background-position:center 48%;
}
body[data-room-theme="home"] .range-section{
  background-image:linear-gradient(105deg,rgba(68,2,14,.90),rgba(84,7,19,.73)),url("assets/photo-detail-v77.webp");
  background-position:center 43%;background-size:cover;color:var(--room-text)
}
body[data-room-theme="home"] .campaign-section{background-position:center 67%}
body[data-room-theme="home"] .mix-section{background-position:72% 62%}
body[data-room-theme="home"] .mix-section .pack-slot{background:rgba(38,4,10,.45);border-color:rgba(255,246,233,.45)}
body[data-room-theme="home"] .mix-section .pack-slot small,
body[data-room-theme="home"] .mix-section .mix-bottom,
body[data-room-theme="home"] .mix-section .disclosure{color:var(--room-text)}
body[data-room-theme="home"] .mix-section .mix-adders button{background:rgba(38,4,10,.43);border-color:rgba(255,246,233,.55);color:var(--room-text)}
body[data-room-theme="home"] .mix-section #mix-save{background:#fff4e3;color:#56101d;border-color:#fff4e3}
body[data-room-theme="home"] .club-section{background-position:80% 52%}
body[data-room-theme="home"] .vertical-callout{background-position:center 75%}
body[data-room-theme="home"] .colour-ticker{background-image:linear-gradient(90deg,rgba(105,3,20,.83),rgba(131,10,30,.82)),var(--room-image);background-size:cover;background-position:center 74%}
body[data-room-theme="home"] footer{background-image:linear-gradient(rgba(36,2,9,.88),rgba(36,2,9,.94)),var(--room-image);background-size:cover;background-position:center bottom}

/* Campaign collection. Retain light surfaces in image cards and dialogs. */
body[data-room-theme="campaign"]{background:#410811;color:var(--room-text)}
body[data-room-theme="campaign"] main{
 background-image:linear-gradient(105deg,rgba(39,3,11,.85),rgba(66,5,15,.77)),var(--room-image);
 background-size:cover;background-position:center top;background-attachment:fixed;color:var(--room-text)
}
body[data-room-theme="campaign"] .world-header,
body[data-room-theme="scripts"] .world-header,
body[data-room-theme="brand"] .world-header,
body[data-room-theme="gallery"] .world-header{
 background:rgba(49,4,13,.97);border-color:rgba(255,246,233,.25);color:var(--room-text)
}
body[data-room-theme] .world-header nav a,
body[data-room-theme] .world-header .brand-note{color:inherit}
body[data-room-theme] .world-header .world-logo img{mix-blend-mode:normal}
body[data-room-theme="campaign"] .campaign-spotlight h1 span,
body[data-room-theme="campaign"] .spotlight-intro,
body[data-room-theme="campaign"] .spotlight-filter-note,
body[data-room-theme="campaign"] .collection-stats,
body[data-room-theme="campaign"] .spotlight-route,
body[data-room-theme="campaign"] .collection-note,
body[data-room-theme="campaign"] .campaign-kicker{color:var(--room-text)}
body[data-room-theme="campaign"] .spotlight-flavours button,
body[data-room-theme="campaign"] .storyboard-library-links a,
body[data-room-theme="campaign"] .campaign-filters select,
body[data-room-theme="campaign"] .campaign-filters button{
 color:var(--room-text);background:rgba(43,5,12,.67);border-color:rgba(255,246,233,.5)
}
body[data-room-theme="campaign"] .spotlight-flavours button[aria-pressed="true"],
body[data-room-theme="campaign"] .storyboard-library-links a.storyboard-library-primary{background:#fff0de;color:#540c18;border-color:#fff0de}
body[data-room-theme="campaign"] .campaign-filters label,
body[data-room-theme="campaign"] .campaign-filters output,
body[data-room-theme="campaign"] .campaign-filters button,
body[data-room-theme="campaign"] #spotlight-reset,
body[data-room-theme="campaign"] .queue-link{color:var(--room-text)}
body[data-room-theme="campaign"] .campaign-filters option{background:#f5efe2;color:#2b1113}
body[data-room-theme="campaign"] .campaign-card{background:#f5efe2;color:#2b1113}
body[data-room-theme="campaign"] .campaign-card h2,
body[data-room-theme="campaign"] .campaign-card span{color:#2b1113}

/* The Club keeps its cream reading surfaces while the room frames each view. */
body[data-room-theme="club"]{background:#390711 var(--room-image) center/cover fixed;color:#2b1113}
body[data-room-theme="club"] .app-back{color:#fff6e9;text-shadow:0 1px 8px #260008}
body[data-room-theme="club"] .club-app{background-image:linear-gradient(rgba(249,244,233,.95),rgba(249,244,233,.98)),var(--room-image);background-size:cover;background-position:center;box-shadow:0 20px 80px #200008a8}
body[data-room-theme="club"] .app-heading{padding:22px 22px 3px;border-radius:12px;color:#fff6e9;background-image:linear-gradient(110deg,rgba(44,4,12,.88),rgba(88,8,20,.74)),var(--room-image);background-size:cover;background-position:67% 40%}
body[data-room-theme="club"] .app-heading h1,
body[data-room-theme="club"] .app-heading h1 em,
body[data-room-theme="club"] .app-heading .app-eyebrow{color:inherit}
body[data-room-theme="club"] .balance-card{background-image:linear-gradient(100deg,rgba(95,7,19,.84),rgba(104,12,24,.73)),var(--room-image);background-size:cover;background-position:70% 66%}

/* Reading-heavy pages use translucent paper to keep long-form copy legible. */
body[data-room-theme="scripts"],body[data-room-theme="brand"],body[data-room-theme="gallery"],body[data-room-theme="finance"]{
 background:#3f0712 var(--room-image) center top/cover fixed
}
body[data-room-theme="scripts"] main,
body[data-room-theme="brand"] main,
body[data-room-theme="gallery"] main,
body[data-room-theme="finance"] .planning-shell{
 background:rgba(247,241,229,.94);box-shadow:0 20px 80px rgba(33,0,7,.25)
}
body[data-room-theme="scripts"] .scriptbook-intro,
body[data-room-theme="brand"] .production-notes>header,
body[data-room-theme="gallery"] .gallery-heading,
body[data-room-theme="finance"] .planning-intro{
 background-image:linear-gradient(105deg,rgba(47,3,13,.88),rgba(91,9,23,.72)),var(--room-image);
 background-size:cover;background-position:center 43%;color:#fff6e9;
 border-radius:12px;padding:28px
}
body[data-room-theme="scripts"] .scriptbook-intro :is(h1,h1 em,p,span),
body[data-room-theme="gallery"] .gallery-heading :is(h1,p,span),
body[data-room-theme="finance"] .planning-intro :is(h1,h1 span,p,span){color:inherit}
body[data-room-theme="scripts"] .scriptbook-intro :is(b,a),
body[data-room-theme="gallery"] .gallery-heading #library-status{color:#fff6e9}
body[data-room-theme="scripts"] .scriptbook-intro a{text-decoration:underline;text-underline-offset:3px}
body[data-room-theme="gallery"] .gallery-tabs button:not(.active){color:#34201d;border-color:#94877b}
body[data-room-theme="brand"] .room-brand-heading{
 background-image:linear-gradient(105deg,rgba(47,3,13,.88),rgba(91,9,23,.72)),var(--room-image);
 background-size:cover;background-position:center 43%;color:#fff6e9;border-radius:12px;padding:28px;margin-bottom:28px
}
body[data-room-theme="brand"] .room-brand-heading :is(h1,p){color:inherit}
body[data-room-theme="brand"] .room-brand-heading h1{margin-bottom:0}
body[data-room-theme="finance"] .planning-header{background:rgba(247,241,229,.95)}
body[data-room-theme="finance"] .scenario-row{padding:0 4px}

/* The old packaging explorer remains usable, with environmental lower sections. */
body[data-room-theme="range"] .moments,
body[data-room-theme="range"] .mix-section,
body[data-room-theme="range"] .next-stop{
 background-image:linear-gradient(110deg,rgba(44,4,13,.86),rgba(78,6,18,.72)),var(--room-image);
 background-size:cover;background-position:center 60%;color:#fff6e9
}
body[data-room-theme="range"] .moments :is(h2,p,a),
body[data-room-theme="range"] .next-stop :is(p,a){color:inherit}
body[data-room-theme="studies"]{
 background:#490912; background-image:linear-gradient(115deg,rgba(48,3,12,.83),rgba(88,7,20,.72)),var(--room-image);
 background-size:cover;background-position:center top;background-attachment:fixed;color:#fff6e9
}
@media(max-width:700px){
 body[data-room-theme="campaign"] main,body[data-room-theme="studies"],body[data-room-theme="club"],
 body[data-room-theme="scripts"],body[data-room-theme="brand"],body[data-room-theme="gallery"],body[data-room-theme="finance"]{background-attachment:scroll}
 body[data-room-theme="home"] :is(.closer-section,.campaign-section,.mix-section,.club-section,.vertical-callout),
 body[data-room-theme="campaign"] main,body[data-room-theme="studies"],
 body[data-room-theme="scripts"] .scriptbook-intro,body[data-room-theme="gallery"] .gallery-heading,
 body[data-room-theme="finance"] .planning-intro,body[data-room-theme="brand"] .room-brand-heading{
   background-size:cover,auto 900px;background-position:center,left top;background-repeat:no-repeat,repeat-y
 }
 body[data-room-theme="scripts"] .scriptbook-intro,body[data-room-theme="gallery"] .gallery-heading,body[data-room-theme="finance"] .planning-intro{padding:22px}
}
@media(prefers-reduced-motion:reduce){body[data-room-theme] *{scroll-behavior:auto}}
