.world-eljem-tunnel{background-image:url('assets/eljem-tunnel.webp')}
.world-eljem-arena{background-image:url('assets/eljem-arena.webp')}
.world-eljem-chamber{background-image:url('assets/eljem-chamber.webp')}
.city-eljem .chapter-shade{background:linear-gradient(#302b24d9 0%,#342d2455 25%,transparent 40%,transparent 64%,#3e2a2770)}
.city-eljem .chapter-task{background:linear-gradient(135deg,#24423af5,#1a2f29f0);border-color:#e3bd7a90}
/* El Jem relic stage: keep the task panel just below the treasure chest. */
.city-eljem .task-raised{bottom:calc(7.5svh + max(14px,env(safe-area-inset-bottom)))}
.city-eljem .chapter-stats>span{background:#3a3229bd}
.city-eljem .listen-instruction:disabled{opacity:.4}
.arena-emblem{position:absolute;z-index:3;top:35%;left:28px;right:28px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;color:#ffdfa0;text-shadow:0 2px 8px #22190f}
.arena-emblem svg{width:110px;height:110px;padding:20px;border:1px solid #ffdaa870;border-radius:50%;background:#52382560;box-shadow:0 0 50px #f1bd5244;filter:drop-shadow(0 3px 5px #24190f80)}
.arena-emblem>span{font-size:9px;letter-spacing:1.2px;line-height:1.8;padding:9px 12px;border:1px solid #e7c78f66;border-radius:20px;background:#352f27ba}
.arena-ready-art{top:34%;gap:15px}
.arena-ready-art strong{font:500 28px var(--serif);color:#fff0c5}
.arena-ready-art>span{letter-spacing:0;font-size:11px}
.arena-hud{position:absolute;z-index:5;top:26.5%;left:24px;right:24px;display:flex;gap:18px;align-items:center;justify-content:center;color:#ffe5ab}
.arena-clock{min-width:94px;border:1px solid #efc48188;border-radius:10px;padding:5px 10px 8px;background:#352e26e6;text-align:center;box-shadow:0 2px 9px #27190960}
.arena-clock strong{font:600 36px/.95 var(--serif);font-variant-numeric:tabular-nums;color:#ffe5ae}
.arena-clock>span{font-size:8px;margin-left:5px;color:#e4cdae}
.arena-time-track{height:3px;margin-top:6px;background:#d7ad7040;border-radius:2px;overflow:hidden}
.arena-time-track i{height:100%;display:block;background:#f9ce82;transition:width .1s linear}
.arena-clock.urgent{border-color:#fba479;background:#652e26ed;box-shadow:0 0 15px #ee743f55}
.arena-clock.urgent strong{color:#ffe4c1}
.arena-clock.urgent .arena-time-track i{background:#ffa77d}
.arena-rule{font-size:10px;border:1px solid #f0c58b70;border-radius:18px;padding:9px 11px;background:#3c312adb;white-space:nowrap}
.arena-series>span{display:block;font-size:10px;text-align:center;margin-bottom:5px;text-shadow:0 1px 5px #221a10}
.arena-series>div{display:flex;gap:5px}
.arena-series i{display:grid;place-items:center;width:23px;height:23px;font-size:9px;font-style:normal;border-radius:50%;border:1px solid #d6b57c70;background:#42382dc9;color:#dccfb4}
.arena-series i.current{border-color:#ffe4a4;box-shadow:0 0 10px #ffe2a03a}
.arena-series i.hit{background:#d9bd76;color:#314d34;border-color:#f8dc9e}
.arena-series i.miss{background:#653c31;color:#e8c3a4;border-color:#d39b7a}
.arena-gates{display:grid;grid-template-columns:repeat(2,1fr);top:34%;left:32px;right:32px;gap:11px 22px}
.arena-gates .world-answer{min-height:103px;padding:9px 12px;gap:6px;border:5px solid #d6ba8b;border-radius:30px 30px 3px 3px;background:linear-gradient(100deg,#53402c,#28271e);color:#ffe8b3;text-shadow:0 1px 3px #211408;box-shadow:inset 0 0 0 1px #e2c490,0 6px 15px #1b281d80}
.arena-gates .world-answer span{font:600 25px var(--serif)}
.arena-gates .world-answer svg{height:25px;width:25px;color:#dbb375}
.arena-gates .world-answer.activated,.arena-final-doors .world-answer.activated{background:linear-gradient(125deg,#debc78,#fae0a4);color:#365138;box-shadow:0 0 35px #ffe4a799}
.arena-gates .world-answer.activated svg,.arena-final-doors .world-answer.activated svg{color:#547342}
.arena-targets{top:43%;left:21px;right:21px;gap:10px}
.arena-targets .world-answer{border-radius:25px 25px 45px 45px;min-height:130px;background:linear-gradient(120deg,#dbc19a,#a68451);border:3px solid #f2d398;box-shadow:inset 0 0 0 5px #be9b622f,0 6px 15px #2e211788;padding:14px 7px;font-size:12px;gap:16px}
.arena-targets .world-answer.activated{background:linear-gradient(#f4e1ae,#b9c193);border-color:#fff0b7}
.arena-final-doors{top:39%;left:23px;right:23px;gap:9px}
.arena-final-doors .world-answer{min-height:159px;border:5px solid #d8bc8b;border-radius:40px 40px 4px 4px;background:linear-gradient(100deg,#66513a,#3c3427);color:#fff0c7;text-shadow:0 1px 3px #201609;font-size:11px;gap:15px;padding:18px 7px}
.arena-final-doors .world-answer svg{color:#e8c583}
.city-eljem .world-answer.wrong-route{background:#643e2c;color:#e4cba2;border-color:#b09068;box-shadow:inset 0 0 20px #21180e;transform:none}
.city-eljem .world-answer.eliminated{opacity:.37}
.city-eljem .chapter-feedback{padding:6px 10px;font-size:10px;line-height:1.4;margin-top:5px}
.city-eljem .chapter-feedback strong{font-size:10px;margin-bottom:1px}
.city-eljem .chapter-feedback small{display:none}
.gladiator-relic svg{height:110px;width:110px;filter:drop-shadow(0 0 20px #e9bd67)}
.arena-complete{background-image:linear-gradient(#35271bbc,#162c29f5),url('assets/eljem-arena.webp')}
.eljem-relic .chapter-shade,.eljem-relic .chapter-motes{display:none}
.ej-relic-scene{position:absolute;inset:0;overflow:hidden}
.ej-relic-background,.ej-relic-open{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}
.ej-relic-open{opacity:0;transition:opacity 1.3s ease}
.ej-relic-scene.revealed .ej-relic-open{opacity:1}
.ej-relic-scene .ej-reward-helmet{position:absolute;left:36%;top:34%;width:28%;height:22%;padding:0;border:0;border-radius:0;background:none;box-shadow:none;transform:translateY(40px);opacity:0;transition:opacity .6s 1s,transform 1s 1s;z-index:4}
.ej-reward-helmet img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.ej-relic-scene.revealed .ej-reward-helmet{opacity:1;transform:none}
.ej-reward-helmet:focus-visible{outline:2px solid var(--engraving-gold)}
@media(max-width:350px){.arena-hud{left:17px;right:17px;gap:10px}.arena-rule{font-size:9px;padding:8px}.arena-gates{left:22px;right:22px;gap:9px 16px}.arena-targets{left:12px;right:12px;gap:6px}.arena-targets .world-answer{font-size:10px}.arena-final-doors{left:14px;right:14px;gap:6px}.arena-final-doors .world-answer{font-size:10px;padding:13px 4px}.arena-series i{width:20px;height:20px}.arena-series>div{gap:4px}}
@media(max-height:700px){.arena-clock{padding:5px 8px;min-width:84px}.arena-clock strong{font-size:31px}.arena-gates .world-answer{min-height:91px;padding:7px}.arena-gates .world-answer span{font-size:23px}.arena-gates .world-answer svg{width:22px;height:22px}.arena-targets{top:42%}.arena-targets .world-answer{min-height:113px}.arena-final-doors{top:38%}.arena-final-doors .world-answer{min-height:137px}.arena-emblem svg{width:95px;height:95px}.arena-emblem{gap:14px}}
@media(prefers-reduced-motion:reduce){.city-eljem *{transition:none!important;animation:none!important}}
.city-eljem:has(.ej-entry-scene) .chapter-shade,.city-eljem:has(.ej-entry-scene) .chapter-motes{display:none}
.ej-entry-scene{position:absolute;inset:0;overflow:hidden;z-index:1}
.city-eljem:has(.ej-entry-scene){min-height:0;height:calc(100svh - var(--ej-entry-top,62px));min-height:340px}
.ej-entry-background,.ej-entry-open{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}
.ej-entry-open{opacity:0;transition:opacity 2s ease}
.ej-entry-scene.is-open .ej-entry-open{opacity:1}
.ej-entry-objects{position:absolute;left:50%;bottom:170px;width:min(86%,460px);height:15%;transform:translateX(-50%);display:flex;align-items:flex-end;justify-content:space-around;gap:12px;transition:opacity .45s}
.ej-entry-object{padding:0;background:none;border:0;box-shadow:none;width:28%;height:100%;cursor:pointer}
.ej-entry-object img{width:100%;height:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(var(--carthage-answer-shadow))}
.ej-lamp{height:58%}
.ej-entry-object:hover:not(:disabled){transform:translateY(-3px)}
.ej-entry-object:focus-visible{outline:2px solid var(--engraving-gold);outline-offset:4px}
.ej-entry-scene.is-open .ej-entry-objects{opacity:0;pointer-events:none}
.city-eljem:has(.ej-entry-scene) .arena-task{padding:12px 16px}
.city-eljem:has(.ej-entry-scene) .arena-task h2{font-size:17px;line-height:1.3}
.city-eljem:has(.ej-entry-scene) .arena-task .gesture-instruction{font-size:14px}
@media(max-height:700px){.ej-entry-objects{bottom:140px;height:18%}.city-eljem:has(.ej-entry-scene) .arena-task h2{font-size:15px}.city-eljem:has(.ej-entry-scene) .arena-task{padding:8px 12px}.city-eljem:has(.ej-entry-scene) .chapter-steps{display:flex}}

.city-eljem .ej-relic-scene .ej-reward-helmet{animation:none;border:0;background:none;box-shadow:none}
.arena-complete .completion-eye{border:0;background:none;box-shadow:none}
