/* Focused desktop navigation and viewport fix. */
html,body,#game-root,#app{width:100%;max-width:none;margin:0}html:fullscreen,html:fullscreen body,html:fullscreen #game-root{width:100vw;height:100dvh}
.screen-navigation{position:absolute;top:18px;right:22px;z-index:12;display:flex;gap:9px}.navigation-button{font:800 13px Arial,Helvetica,sans-serif!important;padding:10px 14px!important;white-space:nowrap;min-height:39px}
.selection-top .navigation-button{font-size:12px!important;padding:9px 11px!important}.entry-navigation{display:flex;gap:8px;margin:0 22px 23px 0}.entry-navigation button{font-size:11px!important;padding:8px 10px!important;min-height:34px}.preparation-navigation{display:flex;gap:8px}.rules-scene .screen-navigation{position:fixed;top:15px;right:20px}.rules-scene .rules-reading{top:55px}.fogon-header>.navigation-button{font-size:12px!important;padding:9px 12px!important}
.battle-tools #home,.battle-tools #battle-fullscreen{font-size:12px!important;min-height:40px}.splash-twelve .splash-poster{inset:0;left:0;top:0;width:100%;height:100%;background-size:cover;background-position:center;transform:none;mask-image:none;animation:none}.splash-twelve .splash-menu{z-index:3}.splash-twelve:after{z-index:1;background:radial-gradient(ellipse at center,#071b2540,transparent 68%),linear-gradient(0deg,#081d1844,transparent 35%)}
button.primary{transition:filter .12s ease,box-shadow .12s ease!important}button.primary:hover:not(:disabled),button.primary:active:not(:disabled){background:linear-gradient(135deg,#fff0a7,#efbe54 65%,#bc7728);border-color:#211a12;opacity:1;filter:brightness(1.06);transform:none}
.splash-actions button.primary:hover:not(:disabled),#entry-submit:hover:not(:disabled),#pick-guardian.primary:hover:not(:disabled){background:linear-gradient(135deg,#fff0a7,#efbe54 65%,#bc7728);opacity:1;filter:brightness(1.06);transform:none}
@media(max-width:1100px) and (min-width:801px){.selection-top{gap:9px}.selection-top>div{gap:5px}.selection-top .navigation-button{font-size:11px!important;padding:8px!important}.selection-top>div button{font-size:11px;padding:8px}.selection-top>.room-code{min-width:110px}.battle-turn{transform:translateX(-65px)}.battle-tools .navigation-button{font-size:10px!important;padding:8px!important}}

.selection-seat .remove-bot{margin-left:auto;padding:2px 7px;min-width:25px;font-size:17px;line-height:22px}.selection-admin>#add-bot{margin:7px 0;min-height:38px;font-size:14px}

/* Full PNG cells, fitted to the selection stage without cutting their feet. */
@media(min-width:801px){
 .selection-scene{--selection-axis:calc(50% - 28.5px)}
 .selection-stage{container-type:size;top:80px;bottom:310px;align-items:flex-end;overflow:visible}
 .selection-stage .selection-guardian{width:min(100cqw,100cqh,600px);height:auto;min-width:0;max-width:none;aspect-ratio:1;flex-shrink:0;z-index:2}
 .selection-caption,.selection-confirm{left:var(--selection-axis)}
 .selection-stage .guardian-floor{left:50%;width:min(80cqw,80cqh,480px);height:clamp(35px,13cqh,76px);bottom:2%;transform:translateX(-50%) perspective(500px) rotateX(30deg);z-index:1}
}
.selection-guardian .guardian-sprite{inset:5%;transform-origin:center 90%}
:is(.selection-guardian,.fogon-character) .guardian-sprite i{clip-path:none!important}
.guardian-burst{position:absolute;inset:-18%;border:3px solid var(--element);border-radius:50%;box-shadow:0 0 25px var(--element),inset 0 0 20px var(--element);opacity:0;pointer-events:none}
.guardian-aura{position:absolute;bottom:3%;left:50%;width:70%;height:85%;transform:translateX(-50%);background:linear-gradient(0deg,color-mix(in srgb,var(--element) 65%,transparent),color-mix(in srgb,var(--element) 18%,transparent) 55%,transparent);border-radius:45% 45% 15% 15%;filter:blur(15px);opacity:0;pointer-events:none;z-index:0}
@media(min-width:1600px){.selection-scene{--selection-axis:calc(50% - 20px)}.selection-stage{bottom:375px}}
@media(min-width:801px) and (max-width:1100px){.selection-scene{--selection-axis:calc(50% - 22.5px)}}
@media(prefers-reduced-motion:reduce){.guardian-aura,.guardian-burst{display:none}}

/* Selection uses the real silhouettes, not assumed atlas cells. Original PNGs stay intact. */
:is(.selection-guardian,.fogon-character) .guardian-sprite i{background-size:var(--selection-size);background-position:var(--selection-position);clip-path:var(--selection-clip)!important}
:is(.selection-guardian,.fogon-character) [data-guardian="0"]{--selection-size:297.09865% 198.06576%;--selection-position:2.69872% -0.88757%;--selection-clip:polygon(2.61% 47.06%,8.06% 34.13%,8.26% 33.74%,8.65% 33.15%,9.23% 32.56%,22.71% 22.51%,53.72% 3.58%,91.81% 9.17%,92.78% 10.15%,92.98% 10.54%,93.57% 11.90%,95.81% 34.34%,97.38% 56.66%,97.38% 57.05%,95.77% 74.84%,92.58% 92.19%,92.38% 92.77%,84.39% 95.72%,80.49% 96.33%,73.47% 96.36%,27.29% 93.45%,23.19% 93.05%,15.35% 83.87%,15.15% 83.48%,7.67% 64.70%,3.39% 53.53%,2.61% 48.04%)}
:is(.selection-guardian,.fogon-character) [data-guardian="1"]{--selection-size:290.35917% 193.57278%;--selection-position:50.89374% -0.40404%;--selection-clip:polygon(2.65% 82.55%,3.02% 79.70%,7.28% 52.59%,15.62% 39.15%,16.38% 37.99%,23.48% 28.18%,24.82% 26.46%,25.01% 26.26%,25.40% 26.07%,64.36% 7.21%,71.99% 5.92%,73.33% 5.93%,83.23% 6.16%,83.81% 6.55%,89.72% 10.56%,90.10% 10.95%,94.31% 17.62%,94.51% 18.01%,94.70% 18.58%,97.22% 30.98%,97.34% 85.22%,97.33% 86.55%,96.94% 88.83%,96.75% 89.40%,96.56% 89.78%,96.37% 89.97%,91.24% 90.57%,49.23% 93.95%,41.77% 94.13%,41.19% 94.13%,33.16% 93.72%,9.71% 88.86%,4.00% 86.93%,3.24% 86.55%,3.05% 86.36%,2.67% 85.60%)}
:is(.selection-guardian,.fogon-character) [data-guardian="2"]{--selection-size:323.36842% 215.57895%;--selection-position:100.98963% 4.64481%;--selection-clip:polygon(8.15% 67.29%,10.95% 23.33%,13.13% 13.56%,13.56% 11.86%,13.99% 11.22%,14.63% 10.37%,15.06% 9.95%,16.34% 9.09%,23.15% 4.83%,23.58% 4.61%,32.09% 3.09%,34.22% 2.87%,35.07% 3.08%,62.42% 14.88%,66.93% 18.50%,91.88% 39.96%,91.88% 40.17%,91.05% 51.71%,75.81% 91.17%,74.52% 93.71%,73.24% 94.98%,72.60% 95.41%,70.68% 96.05%,69.83% 96.26%,67.06% 96.70%,64.50% 96.92%,61.09% 97.14%,46.16% 97.16%,42.53% 96.94%,40.19% 96.72%,38.48% 96.51%,36.99% 96.29%,34.85% 95.86%,34.21% 95.65%,33.36% 95.22%,19.92% 87.55%,18.64% 86.69%,15.23% 84.13%,14.59% 83.49%,12.04% 80.71%,11.82% 80.29%,8.82% 73.47%,8.39% 71.77%)}
:is(.selection-guardian,.fogon-character) [data-guardian="4"]{--selection-size:292.01521% 194.67681%;--selection-position:50.69307% 92.87149%;--selection-clip:polygon(2.85% 49.52%,7.44% 38.16%,17.08% 18.90%,37.29% 5.82%,82.64% 2.67%,82.83% 2.67%,83.22% 2.86%,97.11% 32.41%,97.11% 32.60%,90.61% 73.00%,82.27% 95.24%,81.88% 95.81%,81.50% 96.19%,79.39% 96.97%,74.21% 97.37%,74.02% 97.37%,33.27% 97.02%,27.70% 96.81%,25.59% 96.04%,24.82% 95.65%,10.79% 85.08%,10.60% 84.88%,9.83% 83.35%,6.16% 75.09%,3.63% 62.41%,2.85% 54.91%)}
:is(.selection-guardian,.fogon-character) [data-guardian="3"]{--selection-size:293.12977% 195.41985%;--selection-position:1.18577% 93.90000%;--selection-clip:polygon(7.53% 77.51%,23.96% 31.25%,27.90% 20.63%,28.49% 19.28%,29.66% 16.78%,32.97% 12.36%,34.52% 10.82%,38.79% 6.98%,44.20% 4.68%,45.75% 4.11%,47.68% 3.53%,49.81% 3.15%,62.36% 2.59%,69.90% 7.59%,75.14% 14.90%,77.88% 21.06%,89.31% 49.71%,92.36% 58.41%,92.54% 58.99%,92.53% 62.47%,92.34% 63.05%,80.73% 83.92%,71.05% 93.93%,68.92% 95.09%,52.70% 97.23%,45.94% 97.42%,45.75% 97.42%,38.99% 96.84%,17.79% 94.26%,11.98% 85.03%,7.54% 77.70%)}
:is(.selection-guardian,.fogon-character) [data-guardian="5"]{--selection-size:297.09865% 198.06576%;--selection-position:98.57704% 93.58974%;--selection-clip:polygon(4.75% 56.86%,18.61% 23.51%,32.15% 12.92%,40.98% 6.88%,58.03% 2.62%,58.22% 2.62%,63.51% 2.83%,73.87% 4.61%,79.73% 7.36%,83.06% 10.87%,95.05% 60.38%,95.22% 67.23%,95.21% 70.35%,95.01% 72.70%,94.80% 74.85%,94.21% 76.60%,93.62% 78.17%,93.42% 78.56%,84.40% 93.39%,84.01% 93.79%,82.06% 94.38%,79.14% 94.78%,43.93% 97.19%,38.06% 97.37%,33.37% 97.36%,28.09% 96.95%,23.02% 96.34%,19.70% 95.74%,18.92% 95.55%,17.75% 94.76%,17.55% 94.38%,9.65% 73.31%,9.46% 72.72%)}
:is(.selection-guardian,.fogon-character) [data-guardian="8"]{--selection-size:287.64045% 191.76030%;--selection-position:97.35529% -0.91837%;--selection-clip:polygon(4.21% 49.72%,4.59% 48.58%,5.53% 46.30%,5.71% 45.92%,27.15% 10.66%,28.10% 9.52%,33.42% 5.93%,33.80% 5.75%,39.48% 3.29%,40.05% 3.10%,52.37% 2.53%,52.94% 2.53%,62.79% 4.61%,65.26% 5.37%,65.64% 5.56%,70.95% 9.52%,71.72% 11.03%,95.77% 60.71%,95.77% 62.41%,94.43% 68.28%,91.79% 71.89%,90.85% 72.84%,88.77% 74.74%,87.64% 75.69%,83.86% 78.36%,62.24% 90.89%,60.91% 91.65%,50.47% 97.28%,50.09% 97.47%,49.53% 97.47%,41.75% 93.34%,39.09% 91.46%,9.31% 66.41%,5.92% 62.99%,5.54% 61.09%,4.21% 51.80%)}
:is(.selection-guardian,.fogon-character) [data-guardian="7"]{--selection-size:297.09865% 198.06576%;--selection-position:49.65653% -0.69034%;--selection-clip:polygon(7.77% 33.93%,8.95% 30.60%,9.15% 30.21%,10.12% 29.03%,10.32% 28.84%,19.51% 20.39%,30.88% 11.76%,43.24% 2.62%,56.36% 2.81%,57.93% 3.01%,59.50% 3.40%,83.56% 12.82%,91.86% 39.22%,92.25% 40.98%,92.26% 43.73%,86.78% 69.81%,86.58% 70.20%,84.24% 72.76%,83.84% 73.15%,50.49% 97.20%,49.90% 97.39%,49.51% 97.39%,48.14% 97.00%,47.55% 96.81%,46.38% 95.84%,14.91% 57.47%,14.52% 56.68%,7.96% 35.89%,7.77% 34.52%)}
:is(.selection-guardian,.fogon-character) [data-guardian="6"]{--selection-size:296.52510% 197.68340%;--selection-position:4.27308% 1.08696%;--selection-clip:polygon(5.12% 52.25%,5.31% 51.08%,5.50% 50.29%,5.69% 49.71%,6.47% 48.14%,11.31% 40.50%,29.11% 20.09%,29.31% 19.89%,43.25% 7.63%,44.82% 6.28%,45.40% 5.89%,46.77% 5.12%,48.73% 4.15%,49.71% 3.76%,50.88% 3.38%,52.44% 2.99%,53.42% 2.80%,54.79% 2.61%,58.11% 2.61%,59.48% 2.81%,61.43% 3.20%,62.60% 3.59%,64.36% 4.37%,65.93% 5.15%,66.51% 5.54%,67.88% 6.51%,70.04% 8.65%,70.63% 9.43%,71.02% 10.01%,71.61% 10.98%,72.01% 11.76%,93.34% 55.18%,94.68% 60.07%,94.87% 61.05%,94.86% 62.80%,94.66% 63.98%,94.27% 65.34%,85.41% 92.43%,85.21% 93.02%,84.24% 93.99%,83.26% 94.19%,78.20% 94.80%,43.06% 97.00%,30.96% 97.35%,28.82% 97.34%,18.50% 96.72%,17.14% 96.52%,16.36% 96.32%,13.83% 95.14%,13.44% 94.95%,12.85% 94.36%,12.66% 93.97%,6.70% 65.93%,6.50% 64.96%,5.31% 55.77%,5.12% 54.20%)}
:is(.selection-guardian,.fogon-character) [data-guardian="9"]{--selection-size:289.26554% 192.84369%;--selection-position:0.24876% 99.89858%;--selection-clip:polygon(5.58% 35.32%,5.78% 34.18%,5.97% 33.61%,6.35% 32.65%,14.36% 18.36%,14.74% 17.79%,15.89% 16.65%,17.41% 15.31%,26.74% 9.40%,31.51% 6.73%,31.89% 6.54%,32.65% 6.35%,50.95% 2.92%,52.10% 2.73%,53.62% 2.54%,56.10% 2.55%,59.34% 2.74%,63.53% 3.13%,65.81% 3.51%,66.38% 3.70%,68.29% 4.47%,72.29% 6.56%,94.39% 27.90%,94.39% 28.09%,93.10% 36.08%,92.91% 36.65%,89.73% 44.84%,89.54% 45.22%,84.08% 54.40%,53.43% 97.27%,52.86% 97.46%,50.19% 97.46%,49.81% 97.27%,49.24% 96.70%,43.32% 90.67%,10.83% 49.04%,7.82% 45.04%,5.95% 37.80%,5.58% 36.27%)}
:is(.selection-guardian,.fogon-character) [data-guardian="10"]{--selection-size:295.38462% 196.92308%;--selection-position:48.27756% 98.21429%;--selection-clip:polygon(2.60% 56.62%,2.79% 55.26%,3.17% 53.70%,3.94% 51.36%,4.13% 50.97%,4.71% 50.00%,30.41% 11.79%,31.58% 10.25%,32.76% 9.08%,34.71% 7.73%,35.29% 7.34%,40.56% 4.05%,41.73% 3.47%,42.31% 3.28%,43.09% 3.08%,45.23% 3.08%,54.38% 4.23%,55.55% 4.43%,73.49% 14.33%,74.27% 15.10%,94.90% 56.82%,95.47% 58.57%,95.66% 59.35%,95.85% 60.71%,96.04% 62.26%,97.31% 81.47%,97.29% 84.38%,97.10% 85.54%,96.90% 86.51%,96.51% 87.67%,95.73% 89.22%,95.14% 90.19%,93.98% 91.55%,92.81% 92.72%,92.23% 93.10%,90.68% 94.08%,89.90% 94.47%,89.32% 94.66%,87.00% 95.25%,77.31% 96.07%,52.24% 96.73%,35.50% 96.90%,33.56% 96.89%,14.93% 94.30%,13.96% 94.10%,13.38% 93.90%,12.22% 93.32%,11.05% 92.54%,9.89% 91.38%,8.33% 89.05%,7.94% 87.89%,7.74% 87.11%,2.80% 61.29%,2.61% 60.12%)}
:is(.selection-guardian,.fogon-character) [data-guardian="11"]{--selection-size:280.80439% 187.20293%;--selection-position:100.55612% 103.03983%;--selection-clip:polygon(2.48% 59.98%,6.90% 31.87%,8.01% 30.02%,27.80% 9.30%,29.10% 8.01%,30.58% 7.09%,31.69% 6.72%,33.17% 6.53%,61.29% 5.23%,62.03% 5.23%,62.77% 5.41%,76.07% 9.14%,77.55% 9.88%,79.96% 12.28%,91.44% 29.28%,91.81% 30.02%,96.42% 40.57%,96.98% 42.97%,97.35% 44.64%,97.53% 45.75%,97.53% 47.41%,93.50% 56.29%,93.14% 57.04%,85.42% 66.32%,69.66% 83.20%,66.68% 86.15%,64.64% 87.99%,63.16% 88.73%,42.23% 94.23%,40.01% 94.78%,39.82% 94.78%,19.89% 93.96%,19.15% 93.59%,18.60% 93.22%,18.23% 92.85%,16.75% 91.19%,16.56% 90.83%,2.48% 60.35%)}
.selection-stage .guardian-floor{border-width:2px;border-color:color-mix(in srgb,var(--element) 70%,transparent);background:radial-gradient(ellipse,color-mix(in srgb,var(--element) 22%,transparent),transparent 72%)}

/* One HUD layout for board, questions and results. */
.battle .shared-game-header,.fogon-scene .shared-game-header{position:fixed;font-family:Arial,Helvetica,sans-serif;top:12px;left:18px;right:18px;height:64px;display:grid;grid-template-columns:minmax(180px,1fr) 250px minmax(405px,1fr);align-items:center;gap:15px;z-index:30;flex-wrap:nowrap}
.shared-game-header .battle-identity{display:flex;align-items:center;gap:10px;max-width:100%;width:fit-content;height:60px;min-width:0;margin:0;padding:7px 12px;background:linear-gradient(140deg,#433626ed,#172e2bf2);border:1px solid #d0a85a;border-radius:8px;box-shadow:inset 0 0 0 2px #15231e,0 5px 14px #0006;color:#fff0c7}
.shared-game-header .battle-identity>span:last-child{min-width:0;text-align:left}.shared-game-header .battle-identity strong{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.shared-game-header .battle-identity small{display:block;font-size:12px;margin-top:4px;color:#e6d1a6}.shared-game-header .battle-identity .avatar{width:32px;height:40px;flex:0 0 32px}
.shared-game-header .battle-turn{position:static;transform:none!important;width:100%;min-width:0;height:60px;margin:0;padding:6px 9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:linear-gradient(140deg,#433626ed,#172e2bf2);border:1px solid #d0a85a;border-radius:8px;box-shadow:inset 0 0 0 2px #15231e,0 5px 14px #0006;color:#fff0c7;line-height:1.15;text-align:center}
.shared-game-header .battle-turn>small{font-size:10px;letter-spacing:1.2px}.shared-game-header .battle-turn>strong{font:700 14px/1.15 Georgia,serif;color:#f7db9c}.shared-game-header .header-clock,.shared-game-header #session-clock{font-size:12px!important;min-height:14px;color:#eeddb6;white-space:nowrap}
.shared-game-header .battle-tools{width:auto;display:flex;justify-content:flex-end;align-items:center;gap:5px;flex-wrap:nowrap}.shared-game-header .battle-tools button{font-family:Arial,Helvetica,sans-serif;font-weight:700;height:40px;min-width:38px;padding:7px 10px;font-size:18px;background:linear-gradient(140deg,#433626ed,#172e2bf2);border:1px solid #d0a85a;border-radius:7px;box-shadow:inset 0 0 0 2px #15231e,0 5px 14px #0006;color:#ffe4a3}.shared-game-header .battle-tools .navigation-button{min-height:40px;font-size:12px!important;padding:8px 12px!important}
.cinematic-dialogue:not(.is-revealed){--portrait-height:clamp(255px,calc(100dvh - 470px),390px)}
.cinematic-dialogue:not(.is-revealed) .answer-deck{width:min(100%,calc(var(--portrait-height)*2.666667 + 54px));max-width:1094px;gap:18px;margin:12px auto 0}
.cinematic-dialogue:not(.is-revealed) .answer-deck .answer-card{aspect-ratio:2/3;min-height:0;height:auto;width:100%;max-width:none}
.cinematic-dialogue:not(.is-revealed) .answer-deck .answer-copy{min-height:0;font-size:clamp(17px,1.4vw,24px);padding:14px 10px;line-height:1.3;overflow:auto}
.selection-step{position:absolute;left:50%;transform:translateX(-50%);font-size:12px;letter-spacing:1.5px;color:#f7e3ad;white-space:nowrap;pointer-events:none}
.selection-roster .selection-room-code{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-width:0;flex:0 0 auto;margin:12px 0 0;padding:10px 12px;border:2px solid #dab96a;border-radius:9px;background:linear-gradient(140deg,#fce8b4,#ceaa5c);color:#392617;box-shadow:inset 0 0 0 2px #f8e5b7,0 5px 14px #0005;text-align:left}
.selection-room-code small{display:block;font-size:10px;letter-spacing:1px;font-weight:900}.selection-room-code b{display:block;font-size:24px;letter-spacing:3px;margin-top:5px}.selection-room-code i{font-size:24px;font-style:normal}.room-code-hint{display:block;flex:0 0 auto;font-size:11px;line-height:1.4;color:#e3d2a5;margin:7px 0 14px}
@media(min-width:801px) and (max-height:760px){.cinematic-dialogue:not(.is-revealed) .fogon-presentation{min-height:200px}.cinematic-dialogue:not(.is-revealed) .fogon-character{width:200px;height:200px}.cinematic-dialogue:not(.is-revealed) .speech-bubble h1{font-size:25px}}
@media(max-width:1200px){.selection-step{display:none}.battle .shared-game-header,.fogon-scene .shared-game-header{grid-template-columns:minmax(165px,1fr) 210px auto;gap:10px}.shared-game-header .battle-identity strong{max-width:155px}}
.battle .shared-game-header,.fogon-scene .shared-game-header{min-height:0;max-width:none;margin:0;padding:0;box-sizing:border-box}

/* The shared energy deck occupies an inner corner, away from the route and dice target. */
.common-energy-deck{position:absolute;left:66%;top:57%;width:clamp(48px,14%,96px);aspect-ratio:2/3;z-index:4;pointer-events:none;filter:drop-shadow(0 8px 6px #0009)}
.common-deck-stack{position:absolute;inset:0}.common-deck-stack>i,.common-deck-stack>.deck-back{position:absolute;inset:0;display:block;background:url(assets/dorso.jpg) center/cover;border:1px solid #d8b767;border-radius:6px;box-shadow:-1px 1px 0 #e3cf9c,-3px 3px 0 #72512e,-4px 5px 0 #d3bd8a}
.common-deck-stack>i:first-child{transform:translate(-5px,7px) rotate(-9deg)}.common-deck-stack>i:nth-child(2){transform:translate(2px,3px) rotate(6deg)}.common-deck-stack>.deck-back{transform:rotate(-3deg)}
.common-deck-count{position:absolute;right:-10px;top:-10px;min-width:25px;height:25px;display:grid;place-items:center;padding:0 5px;border:2px solid #e2bd69;border-radius:50%;background:#192b24;color:#ffe9ad;font:900 12px/1 Arial,sans-serif;box-shadow:0 2px 5px #0009}
.common-deck-caption{position:absolute;top:calc(100% + 10px);left:-30%;width:160%;text-align:center;color:#ffe4a3;font:900 clamp(8px,1.1vh,12px)/1.25 Arial,sans-serif;letter-spacing:.8px;text-shadow:0 2px 3px #000}.common-deck-caption small{display:block;font-size:9px;letter-spacing:0;color:#e2d0ac;font-weight:400;margin-top:3px}
.common-energy-deck.empty .common-deck-stack{opacity:.3;filter:grayscale(.6)}.exp-energy.card-arriving{visibility:hidden}
.card-draw-flight{position:fixed;z-index:90;pointer-events:none;perspective:850px;transform-origin:0 0;opacity:0;filter:drop-shadow(0 0 10px var(--draw-glow)) drop-shadow(0 10px 7px #0008)}
.card-draw-flip{position:absolute;inset:0;transform-style:preserve-3d}.card-draw-flip>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;border-radius:6px;backface-visibility:hidden}.card-draw-flip>.draw-front{transform:rotateY(180deg)}
@media(prefers-reduced-motion:reduce){.card-draw-flight{display:none}.exp-energy.card-arriving{visibility:visible}}

/* Desktop table: the circuit owns the stage, information opens on demand. */
.expedition .exp-map{position:absolute;inset:88px 24px 165px;display:block;padding:0;overflow:visible}
.expedition .exp-board{container-type:size;width:100%;height:100%;min-width:0;max-width:none;aspect-ratio:auto;filter:drop-shadow(0 10px 18px #0006)}
.expedition .exp-board:before{inset:0;border:2px solid #b18b4970;border-radius:28px;background:linear-gradient(120deg,#152b2533,#10291b15 55%,#112c2860),url('assets/arena-landscape.png') center/cover no-repeat;box-shadow:inset 0 0 70px #071e2480,0 0 0 4px #0d211c55}
.expedition .exp-board>svg{width:100%;height:100%;overflow:visible}
.expedition .exp-path{stroke:#e1ce9785;stroke-width:3;stroke-dasharray:4 7;vector-effect:non-scaling-stroke}
.expedition .exp-path-shadow{stroke:#0b211faa;stroke-width:10;vector-effect:non-scaling-stroke}
.expedition .exp-tile{width:min(8.5cqw,11cqh);height:min(8.5cqw,11cqh);min-width:0;min-height:0;border-radius:24%;background:linear-gradient(145deg,#e5d5a9,#a98f61)!important;border:1px solid #51472b;box-shadow:inset 0 0 0 3px #d8c28c,0 4px #6a583c,0 7px #153125,0 8px 10px #0007;transition:filter .18s,box-shadow .18s}
.expedition .exp-tile:after{content:'';position:absolute;left:30%;right:30%;bottom:5px;height:3px;border-radius:2px;background:var(--tile);box-shadow:0 0 4px var(--tile)}
.expedition .exp-tile>b{position:static;color:#44391e;font-size:clamp(12px,2.7cqh,20px);line-height:1;font-weight:800}
.expedition .exp-tile.start>b,.expedition .exp-tile.finish>b{font-size:clamp(9px,1.8cqh,14px)}
.expedition .exp-tile .tile-rune{display:none}
.expedition .exp-tile:is(:hover,:focus-visible) .tile-rune{display:grid;place-items:center;position:absolute;inset:0;margin:0;background:#f1dcab;border-radius:24%}
.expedition .exp-tile:is(:hover,:focus-visible){z-index:12;filter:brightness(1.12);outline:2px solid #ffe7a6;outline-offset:3px}
.expedition .exp-tile.occupied-mine{outline:2px solid #ffe5a2;outline-offset:3px;box-shadow:inset 0 0 0 3px #e6cd8d,0 4px #6a583c,0 7px #153125,0 0 20px #fff0aa55}
.expedition .exp-token{width:clamp(80px,17cqh,136px);height:clamp(80px,17cqh,136px);translate:-50% -85%;transform:none}
.expedition .exp-token small{font-size:clamp(10px,1.7cqh,13px);bottom:0;max-width:120px;padding:2px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.expedition .token-count{position:absolute;right:3%;top:20%;width:25px;height:25px;display:grid;place-items:center;border:1px solid #eac77d;border-radius:50%;color:#ffebbb;background:#112d2d;box-shadow:0 2px 7px #0009;font:700 13px Arial;z-index:3}
.expedition .board-center{inset:24% 25%;border:0;box-shadow:none;background:radial-gradient(ellipse,#0a211d99,transparent 72%)}
.expedition .board-center>strong{font-size:clamp(25px,5cqh,47px)}
.expedition .board-center .element-ring{opacity:.6}
.expedition .board-guide{position:absolute;bottom:-26px;left:0;right:0;margin:0;text-align:center;font-size:11px;letter-spacing:.3px;color:#e0d7b9;text-shadow:0 2px 3px #000}
.expedition .exp-dock{z-index:27;left:50%;bottom:-114px;width:min(980px,calc(100% - 64px));height:250px;display:grid;grid-template-columns:120px minmax(0,1fr) 120px;gap:24px;align-items:start;padding:0;pointer-events:none}
.expedition .exp-dock>*{pointer-events:auto}
.expedition .exp-hand{width:100%;min-width:0;max-width:none;padding:0;position:relative;isolation:isolate}
.expedition .hand-heading{height:26px;font-size:12px;gap:12px;text-shadow:0 2px 4px #000;background:radial-gradient(ellipse,#0e2623bd,transparent 72%)}
.expedition .hand-heading>span{font-size:11px;color:#f3e1b7}
.expedition .exp-cards{padding-top:18px;min-height:220px;gap:0;align-items:flex-start;justify-content:center}
.expedition .exp-energy{width:146px;min-width:0;flex:0 1 146px;margin-left:-26px;border-radius:10px;transform:rotate(var(--angle));transform-origin:center 125%;transition:transform .22s ease,box-shadow .22s ease;box-shadow:0 4px 14px #0008}
.expedition .exp-energy:first-child{margin-left:0}
.expedition .exp-energy img{width:100%;height:auto;aspect-ratio:2/3;border-radius:9px;object-fit:cover}
.expedition .exp-energy>b{top:8px;right:8px;width:27px;height:27px;font-size:15px;border-width:2px}
.expedition .exp-energy:is(:hover,:focus-visible,.selected){transform:translateY(-125px) rotate(0) scale(1.06);z-index:10;box-shadow:0 0 0 2px #f3d28b,0 0 28px color-mix(in srgb,var(--energy) 65%,transparent)}
.expedition .dice-console{width:120px;transform:translateY(-12px);background:radial-gradient(ellipse,#142d2499,transparent 74%)}
.expedition .dice-caption{font-size:10px;letter-spacing:.4px}
.expedition .dice-console>span{font-size:10px;line-height:1.35}
.expedition .common-energy-deck{position:relative;left:auto;top:auto;width:96px;height:144px;aspect-ratio:2/3;transform:translateY(-20px);justify-self:center;z-index:1}
.expedition .common-deck-caption{position:absolute;left:calc(100% + 12px);right:auto;top:50%;bottom:auto;width:95px;transform:translateY(-50%);text-align:left;font-size:10px;letter-spacing:.8px;line-height:1.5}
.expedition .common-deck-caption small{font-size:10px;letter-spacing:0}
.expedition .common-deck-count{font-size:14px}
.expedition .exp-meta{left:20px;bottom:14px;width:125px;max-width:125px;font-size:10px;gap:6px}
.expedition .exp-meta b{font-size:9px;letter-spacing:.6px}
.expedition .exp-meta button{font-size:10px;padding:5px;line-height:1.2}
.expedition .flow-pill{left:auto;right:24px;bottom:205px;width:150px;min-width:0;transform:none;font-size:12px}
#battle-players{display:flex;align-items:center;justify-content:center;gap:3px}
#battle-players .players-count{font-size:10px}
.board-participants{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.board-participants>article{display:flex;gap:12px;align-items:center;text-align:left;padding:10px;background:#152a29;color:#f5e4bf;border:1px solid #ac8a4d;opacity:1;cursor:default}
.board-participants>article span{display:flex;flex-direction:column;gap:5px}
.board-participants small,.board-participants em{font-size:13px;font-style:normal;color:#c9d7cb}
.board-participants .avatar{width:48px;height:48px;flex-shrink:0}
@media(prefers-reduced-motion:reduce){.expedition .exp-energy{transition:none}}

.expedition .board-turn-hint{position:absolute;left:50%;top:-6px;transform:translate(-50%,-100%);white-space:nowrap;padding:9px 15px;border:1px solid #dab67a;background:linear-gradient(#203b32ed,#10271ded);box-shadow:0 4px 12px #0007;color:#ffdf9f;font:800 12px Arial;letter-spacing:1px;border-radius:7px}
