/* V2 scene styles are only loaded by the gallery; verification CSS and JS are unchanged. */
body:has(.scene-page){background:var(--scene-bg,#fff9e9);color:var(--scene-ink,#493e2d)}
.scene-page{--scene-bg:#fff9e9;--scene-ink:#493e2d;--accent:#91602b;--button:#b44f32;--button-hover:#933d25;--soft:#fff2d6;--border:#dfc38a;--paper:#fffdf4;position:relative;max-width:none;min-height:100vh;background:var(--scene-bg)!important;color:var(--scene-ink);isolation:isolate;padding-bottom:50px}
.scene-page main{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:0 34px 40px}
.scene-hero{position:relative;min-height:350px;height:clamp(350px,33.375vw,550px);max-height:550px;overflow:hidden;background:var(--soft);display:grid;place-items:center}
.scene-hero>picture{position:absolute;inset:0}.scene-art{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-copy{position:relative;width:min(48%,720px);text-align:center;padding:10px 12px 44px;overflow-wrap:anywhere;color:var(--scene-ink)}
.hero-eyebrow{font-size:12px;font-weight:700;letter-spacing:.24em;margin:0 0 15px;color:var(--accent)}
.hero-copy h1{font-size:clamp(28px,3.1vw,49px);line-height:1.4;letter-spacing:.04em;margin:0;font-weight:800;text-wrap:balance;text-shadow:0 2px 0 #ffffff70}
.hero-subtitle{font-size:clamp(14px,1.2vw,18px);line-height:1.6;margin:16px auto 0;max-width:520px;white-space:pre-line}
.scene-edges{position:absolute;top:420px;left:0;right:0;z-index:0;pointer-events:none;overflow:hidden}.scene-edges img{width:100%;height:1050px;object-fit:fill;display:block}
.activity-rules{position:relative;margin:8px auto 32px;padding:30px 28px 24px;background:var(--paper);border:2px solid var(--border);border-radius:22px;box-shadow:0 6px 0 color-mix(in srgb,var(--border) 35%,transparent),0 14px 26px #45361b09}
.rules-heading{position:relative;display:table;margin:-49px auto 24px;padding:9px 40px;border:2px solid var(--border);border-radius:12px;background:var(--soft);color:var(--accent);font-size:24px;letter-spacing:.12em;line-height:1.4;text-align:center;max-width:100%;overflow-wrap:anywhere}
.rules-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.rules-list li{display:flex;align-items:flex-start;gap:13px;min-width:0;padding:6px 0}.rules-list li+li{border-left:1px dashed var(--border);padding-left:20px}
.rule-number{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-size:18px;font-weight:800;box-shadow:0 3px 0 #00000015}
.rules-list h3{margin:2px 0 6px;font-size:17px;color:var(--scene-ink);line-height:1.5}.rules-list p{margin:0;font-size:14px;line-height:1.85;color:var(--scene-ink);white-space:pre-line}.rules-list li>div{min-width:0;overflow-wrap:anywhere}
.entries-heading{text-align:center;margin:38px 0 24px;position:relative}.entries-heading h2{display:inline-block;margin:0;position:relative;font-size:29px;letter-spacing:.16em;color:var(--accent);padding:8px 52px;border-radius:14px;background:var(--soft)}
.entries-heading h2:before,.entries-heading h2:after{content:'✦';position:absolute;top:12px;font-size:23px;color:var(--accent)}.entries-heading h2:before{left:14px}.entries-heading h2:after{right:14px}
.entries-heading p{font-size:14px;margin:12px 0 0;color:var(--scene-ink);letter-spacing:.08em}.section-ornament{display:block;margin:auto auto 8px;width:80px;height:7px;border-radius:50%;background:var(--border);transform:rotate(-3deg)}
.scene-page .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:stretch}
.scene-page .art-card{position:relative;padding:18px 20px 20px;background:var(--paper);border:2px solid var(--border);border-radius:22px;box-shadow:0 5px 0 color-mix(in srgb,var(--border) 45%,transparent),0 12px 22px #3723160b;transition:transform .16s ease,box-shadow .16s ease;color:var(--scene-ink);overflow:visible}
.scene-page .art-card:hover{transform:translateY(-3px);box-shadow:0 7px 0 color-mix(in srgb,var(--border) 40%,transparent),0 16px 24px #37231615}
.scene-page .art-picture{padding-top:35px;margin:0 0 13px}.scene-page .art-image{aspect-ratio:4/3;max-height:none;height:auto;width:100%;object-fit:contain;background:#fff;border:1px solid #dedbd3;border-radius:12px;box-shadow:0 3px 7px #4733220c}
.scene-page .rank-badge{top:0;right:0;max-width:100%;font-size:12px;padding:4px 12px;line-height:1.45;border-radius:7px;color:#5c584c;background:#f0eee6;border:1px solid #cbc5b8;box-shadow:0 2px 0 #59482416}
.scene-page .rank-badge.podium-1{background:linear-gradient(135deg,#fff1aa,#f5d86d);border-color:#cda544;color:#614609}.scene-page .rank-badge.podium-2{background:linear-gradient(135deg,#fafcfe,#d8e1e8);border-color:#acbbc8;color:#3b4e60}.scene-page .rank-badge.podium-3{background:linear-gradient(135deg,#fff0dd,#ecc6a1);border-color:#c99a6c;color:#68401f}
.scene-page .art-card h2{font-size:17px;font-weight:650;margin:0 0 3px;color:var(--accent);letter-spacing:.1em}.scene-page .candidate-name{font-size:22px;margin:2px 0 7px;font-weight:800;line-height:1.5}.scene-page .votes{font-size:18px;color:var(--scene-ink);margin:0 0 15px}.scene-page .rank{color:var(--scene-ink)}
.scene-page .art-card>.button{background:var(--button);border:1px solid transparent;color:#fff;min-height:48px;border-radius:12px;font-size:17px;letter-spacing:.18em;box-shadow:0 4px 0 var(--button-hover);margin-top:auto}.scene-page .art-card>.button:hover{background:var(--button-hover)}.scene-page .art-card>.button[aria-disabled=true]{background:#e7e6e1;color:#62615d;box-shadow:none;border-color:#cbc9c0}
.scene-page :is(a,button):focus-visible{outline:3px solid var(--accent);outline-offset:4px}.scene-page .notice{margin-top:18px}
/* Each scene changes materials, silhouette and ornament, not only palette. */
.theme-classic .scene-page{--scene-bg:#fff9ea;--scene-ink:#513d2a;--accent:#97621d;--button:#ba5132;--button-hover:#913c24;--soft:#ffedbd;--border:#ddbb77;--paper:#fffef6;background-image:radial-gradient(#bc9a5322 .7px,transparent .7px)!important;background-size:8px 8px!important}
.theme-classic .scene-page .art-card{border-radius:18px 23px 17px 26px;border-style:dashed;border-width:2px}.theme-classic .rules-heading{transform:rotate(-1deg);border-radius:7px 18px 8px 14px}.theme-classic .entries-heading h2{background:linear-gradient(transparent 25%,#f1d276 25%,#f1d276 85%,transparent 85%);border-radius:0}.theme-classic .rule-number{border-radius:40% 50% 35% 48%;background:#a25c34}
.theme-green .scene-page{--scene-bg:#f0f4e7;--scene-ink:#324c38;--accent:#496c3b;--button:#4f7040;--button-hover:#344e2a;--soft:#e3ebca;--border:#b5c49b;--paper:#fffef4}
.theme-green .activity-rules{border-radius:38px 9px 38px 9px}.theme-green .rule-number{border-radius:2px 65% 2px 65%}.theme-green .entries-heading h2:before,.theme-green .entries-heading h2:after{content:'❧';font-size:31px;top:5px}.theme-green .scene-page .art-card{border-top:6px solid #a2b386;border-radius:6px 26px 6px 26px}.theme-green .rules-heading{border-radius:50px 5px}
.theme-pastel .scene-page{--scene-bg:#fff3f5;--scene-ink:#624759;--accent:#92526e;--button:#9a547c;--button-hover:#753b60;--soft:#f5dfeb;--border:#dcbacc;--paper:#fffafe}
.theme-pastel .activity-rules{border-radius:45px;border-color:#dac9e9;box-shadow:0 7px 0 #eadff1}.theme-pastel .rules-heading{border-radius:50px;background:#fffafd;border-color:#dfc9e7}.theme-pastel .scene-page .art-card{border-radius:32px;border:3px solid #e9d6e4;box-shadow:0 7px 0 #eddfef}.theme-pastel .scene-page .art-card>.button{border-radius:30px}.theme-pastel .entries-heading h2{border-radius:50% 50% 35% 35%;background:#fce3df}.theme-pastel .section-ornament{background:linear-gradient(90deg,#e5bcce,#bfd8ed,#e7d49a);height:10px}.theme-pastel .rule-number{background:#886097}
.theme-blue .scene-page{--scene-bg:#eaf4fa;--scene-ink:#294d63;--accent:#34749a;--button:#377a9e;--button-hover:#265b7b;--soft:#dbeef8;--border:#a7cbdc;--paper:#fcfeff}
.theme-blue .activity-rules{border:6px solid #b2cfdf;border-radius:12px;box-shadow:inset 0 0 0 1px #fff,0 5px 0 #7ea6bd}.theme-blue .rules-heading{background:#3b7896;color:#fff;border-color:#d4e6ed;border-radius:4px;transform:rotate(-1deg)}.theme-blue .scene-page .art-card{border-radius:12px;border-top:7px solid #8fb9ce}.theme-blue .entries-heading h2{background:#d4e9f4;clip-path:polygon(3% 0,100% 5%,97% 100%,0 90%)}.theme-blue .rule-number{border-radius:8px;transform:rotate(-4deg)}
.theme-cream .scene-page{--scene-bg:#f7ecda;--scene-ink:#654831;--accent:#996135;--button:#a76139;--button-hover:#824725;--soft:#f5deb2;--border:#d6b486;--paper:#fffbef}
.theme-cream .activity-rules,.theme-cream .scene-page .art-card{border-radius:3px;box-shadow:3px 5px 0 #dbc8a7,0 13px 23px #6f482b0d}.theme-cream .rules-heading{transform:rotate(-2deg);border:none;background:#f1d39b;border-radius:1px}.theme-cream .activity-rules:before,.theme-cream .scene-page .art-card:before{content:'';position:absolute;top:-10px;left:24px;width:65px;height:22px;transform:rotate(-12deg);background:#d9ac6866;z-index:2;border:1px solid #c6a47544}.theme-cream .entries-heading h2{border:1px dashed #c49d64;border-radius:2px;transform:rotate(1deg)}.theme-cream .scene-page .art-card>.button{border-radius:5px}.theme-cream .rule-number{border-radius:6px;background:#a0602d}
.theme-gray .scene-page{--scene-bg:#eeece3;--scene-ink:#414536;--accent:#606749;--button:#65714d;--button-hover:#444d33;--soft:#e5e4d5;--border:#b8ae95;--paper:#fcfbf5}
.theme-gray .hero-eyebrow{letter-spacing:.36em}.theme-gray .hero-copy h1{font-weight:650;letter-spacing:.08em}.theme-gray .activity-rules{border-radius:0;border-width:1px;box-shadow:0 6px 14px #61513a10}.theme-gray .rules-heading{border-radius:0;border:0;background:var(--paper);font-size:22px;letter-spacing:.24em}.theme-gray .rule-number{border-radius:0;background:transparent;color:#606749;border-bottom:2px solid #92977e}.theme-gray .scene-page .art-card{border-radius:2px;border:9px solid #c3b292;box-shadow:inset 0 0 0 2px #f9f5e7,0 8px 18px #5d50311c;padding:15px;background:#fdfcf7}.theme-gray .scene-page .art-image{border-radius:0}.theme-gray .scene-page .art-card>.button{border-radius:2px;box-shadow:none}.theme-gray .entries-heading h2{border-radius:0;background:transparent;border-top:1px solid #aca78e;border-bottom:1px solid #aca78e}.theme-gray .entries-heading h2:before,.theme-gray .entries-heading h2:after{content:'—'}
.theme-forest .scene-page{--scene-bg:#eaf0da;--scene-ink:#3e4f30;--accent:#617d3b;--button:#557630;--button-hover:#3c5620;--soft:#eddfb7;--border:#b2b87d;--paper:#fffbe9}
.theme-forest .activity-rules{border:5px solid #a9956c;border-radius:18px 28px 16px 25px;box-shadow:0 5px 0 #746e4440}.theme-forest .rules-heading{background:linear-gradient(5deg,#b9945e,#d5b781 40%,#c2a06b);border:3px solid #967342;color:#48361f;box-shadow:0 3px 0 #7f653855;border-radius:7px;transform:rotate(-1deg)}.theme-forest .scene-page .art-card{border:4px solid #b1ad75;border-radius:20px 8px 24px 9px;box-shadow:0 5px 0 #898c5140}.theme-forest .entries-heading h2{background:#e7d6aa;border:2px solid #b09860;border-radius:8px;box-shadow:0 3px 0 #9e89554a}.theme-forest .entries-heading h2:before,.theme-forest .entries-heading h2:after{content:'❧';font-size:29px;top:6px}.theme-forest .rule-number{border-radius:50% 4px 50% 4px}
.theme-ocean .scene-page{--scene-bg:#e6f5f5;--scene-ink:#245768;--accent:#237a91;--button:#b05b40;--button-hover:#b45638;--soft:#d2eff0;--border:#a2d4d8;--paper:#f9ffff}
.theme-ocean .activity-rules{border-radius:40px 40px 18px 18px;border-bottom:7px solid #78bac8}.theme-ocean .rules-heading{border-radius:60% 60% 20% 20%;background:#fff0d7;border-color:#dac5a2;color:#735b39}.theme-ocean .scene-page .art-card{border-radius:26px;border-bottom:7px solid #96ced5}.theme-ocean .entries-heading h2{background:linear-gradient(transparent 55%,#a0dce3 55%);border-radius:0 0 45% 45%}.theme-ocean .rule-number{background:#2c798b}.theme-ocean .entries-heading h2:before,.theme-ocean .entries-heading h2:after{content:'≈';font-size:29px;top:4px}.theme-ocean .scene-page .art-card>.button{border-radius:26px}
.theme-garden .scene-page{--scene-bg:#f6f5d9;--scene-ink:#4b592b;--accent:#687d31;--button:#6c7a29;--button-hover:#515e1c;--soft:#f9e8a5;--border:#c5c789;--paper:#fffdee}
.theme-garden .rules-heading{background:#f4cd61;border-color:#d6ab3e;border-radius:4px;box-shadow:8px 4px 0 #e3bd5880}.theme-garden .activity-rules{border-radius:30px 8px;background:linear-gradient(#fffdf0,#fffcec)}.theme-garden .rule-number{border:4px dotted #ebc85d;background:#677725;width:38px;height:38px}.theme-garden .entries-heading h2:before,.theme-garden .entries-heading h2:after{content:'✿';font-size:30px;top:5px;color:#ad801b}.theme-garden .scene-page .art-card{border:3px solid #ced18f;border-radius:28px 10px}.theme-garden .scene-page .art-card>.button{border-radius:24px 6px}
.theme-candy .scene-page{--scene-bg:#fff0f6;--scene-ink:#694655;--accent:#ab577b;--button:#b45178;--button-hover:#923b60;--soft:#fbe1ed;--border:#e5b3ca;--paper:#fffafe}
.theme-candy .activity-rules{border:7px solid #eab7d2;border-radius:36px;outline:2px solid #fff;box-shadow:0 7px 0 #dca6c244}.theme-candy .rules-heading{border-radius:40px;border:4px solid #efd0e0;background:#fff7fc;box-shadow:0 3px 0 #d5acc1}.theme-candy .scene-page .art-card{border:5px solid transparent;background:linear-gradient(#fffafe,#fffafe) padding-box,repeating-linear-gradient(45deg,#ecc4d5 0 10px,#ffe9f1 10px 20px) border-box;border-radius:30px}.theme-candy .rule-number{background:#a25980;border:3px solid #edcde1}.theme-candy .scene-page .art-card>.button{border-radius:30px;box-shadow:0 4px 0 #9e456e,inset 0 2px 0 #ffffff50}.theme-candy .entries-heading h2{background:#f5dfea;border-radius:50px;box-shadow:0 -5px 0 #e5d1ec,0 -10px 0 #cee1ef,0 -15px 0 #f8e9bd;margin-top:13px}
.theme-space .scene-page{--scene-bg:#172344;--scene-ink:#f2eefc;--accent:#f3d98c;--button:#795599;--button-hover:#563971;--soft:#303758;--border:#716c96;--paper:#263150;background-image:radial-gradient(#fff7 1px,transparent 1px),radial-gradient(#c3c5ff44 1px,transparent 1px)!important;background-size:73px 79px,127px 119px!important;background-position:4px 9px,40px 50px!important}
.theme-space .hero-copy h1{text-shadow:0 2px 8px #0b1025}.theme-space .activity-rules{border:1px solid #b7a374;border-radius:24px;box-shadow:0 7px 0 #0c173240}.theme-space .rules-heading{border:1px solid #bda675;background:#2a3354;border-radius:40px;box-shadow:0 0 0 5px #8b7da522}.theme-space .rule-number{color:#302b48;background:#ead187;box-shadow:0 0 0 4px #e9dca522}.theme-space .scene-page .art-card{border:2px solid #807896;border-radius:28px;box-shadow:0 6px 0 #101b34}.theme-space .scene-page .art-image{background:#fff;border:5px solid #e6dfcc}.theme-space .entries-heading h2{background:transparent;border:1px solid #b4a779;border-radius:50%;padding-top:12px;padding-bottom:12px}.theme-space .entries-heading h2:before,.theme-space .entries-heading h2:after{content:'✧';top:15px}.theme-space .section-ornament{background:#b4a779}.theme-space .scene-page .art-card>.button{background:#e4c87d;color:#302941;border-color:#f4e0a8;box-shadow:0 4px 0 #a88b47}.theme-space .scene-page .art-card>.button:hover{background:#f5db95}
@media(min-width:1600px){.scene-page main{max-width:1280px}.scene-hero{height:550px}.hero-copy{padding-bottom:40px}.scene-edges{top:470px}}
@media(max-width:1023px){.scene-edges{display:none}.scene-page main{padding:0 24px 32px}.hero-copy{width:58%}.hero-copy h1{font-size:32px}.rules-list{gap:14px}.rules-list li{gap:9px}.rules-list li+li{padding-left:14px}.activity-rules{padding:28px 18px 20px}.rules-heading{font-size:22px}.scene-page .gallery{gap:20px}.scene-page .candidate-name{font-size:20px}}
@media(max-width:600px){.scene-page{padding-bottom:20px}.scene-hero{height:310px;min-height:310px;max-height:none}.scene-art{object-fit:cover}.hero-copy{width:88%;padding:0 6px 90px}.hero-copy h1{font-size:27px;line-height:1.4;letter-spacing:.03em}.hero-eyebrow{font-size:10px;letter-spacing:.18em;margin:0 0 8px}.hero-subtitle{font-size:13px;line-height:1.65;margin-top:9px;max-width:290px}.scene-page main{padding:0 16px 24px}.activity-rules{margin:4px 0 24px;padding:24px 17px 16px;border-width:2px!important;border-radius:20px!important}.rules-heading{margin:-42px auto 15px;padding:7px 22px;font-size:20px;border-width:2px!important}.rules-list{grid-template-columns:1fr;gap:0}.rules-list li{padding:10px 0;gap:12px}.rules-list li+li{border-left:0;border-top:1px dashed var(--border);padding:12px 0 6px}.rules-list h3{font-size:15px;margin:1px 0 3px}.rules-list p{font-size:13px;line-height:1.7}.rule-number{width:29px;height:29px;font-size:15px}.entries-heading{margin:26px 0 20px}.entries-heading h2{font-size:24px;padding:7px 42px}.entries-heading h2:before,.entries-heading h2:after{font-size:20px;top:9px}.entries-heading p{font-size:12px;letter-spacing:.03em;line-height:1.8;margin-top:10px}.scene-page .gallery{grid-template-columns:minmax(0,1fr);gap:24px}.scene-page .art-card{padding:14px 16px 18px}.scene-page .art-picture{padding-top:33px;margin-bottom:13px}.scene-page .candidate-name{font-size:21px}.scene-page .art-card>.button{min-height:48px}.scene-page .art-card h2{font-size:16px}.scene-page .votes{font-size:17px}.theme-gray .scene-page .art-card{border-width:7px}.theme-garden .rule-number{width:32px;height:32px}.theme-cream .activity-rules:before{left:10px;width:42px}}
@media(max-width:350px){.hero-copy h1{font-size:23px}.hero-copy{width:94%;padding-bottom:88px}.scene-page main{padding:0 12px 20px}.scene-hero{height:295px;min-height:295px}.scene-page .art-card{padding:12px}.rules-heading{font-size:19px;padding:7px 17px}.activity-rules{padding-left:13px;padding-right:13px}}
@media(prefers-reduced-motion:reduce){.scene-page .art-card{transition:none}.scene-page .art-card:hover{transform:none}}

/* Configurable 80-character titles/subtitles must grow rather than clip. */
.scene-hero{height:auto;min-height:clamp(350px,33.375vw,550px);max-height:none}.hero-copy{padding-top:28px;padding-bottom:52px}
@media(max-width:600px){.scene-hero{height:auto;min-height:310px;max-height:none}.hero-copy{padding:28px 6px 110px}}
@media(max-width:350px){.scene-hero{min-height:295px}}
