/* A shared feet anchor (160,274) and contact spacing from the source video. */
.arena{--sprite-size:clamp(170px,54cqw,215px);container-type:inline-size;background:#fffdf7!important;border-radius:22px}
.dohyo-scene{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.venue-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;z-index:0;border-radius:inherit}
.venue-wash{position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#fffdf708,transparent 42%,#fff8e926);border-radius:inherit}
.cinema-fighters>.venue-backdrop{width:100%;height:100%;object-fit:cover;filter:none}
.verdict .venue-backdrop,.verdict .venue-wash{display:none}
.sumo-sprite{position:relative;display:block;overflow:visible;--dir:1}
.sumo-sprite[data-character="tsukimaru"]{--dir:-1}
.sumo-sprite .pose-film{position:absolute;width:100%;height:100%;left:0;bottom:-14.375%;pointer-events:none}
.sumo-sprite::before{content:'';position:absolute;left:27%;width:46%;height:6%;bottom:-2%;background:radial-gradient(ellipse,#91704225,transparent 70%);pointer-events:none}
.arena .fighter{position:absolute;width:var(--sprite-size);height:var(--sprite-size);left:calc(50% - var(--sprite-size)/2 + var(--stance-x) + var(--pressure-shift,0px));right:auto;bottom:24%;filter:none;transform:none;transition:left .28s ease-out;--stance-x:calc(var(--sprite-size)*-.37)}
.arena .fighter.ghost{--stance-x:calc(var(--sprite-size)*.37)}
.battle-arena.engaged .fighter.you{--stance-x:calc(var(--sprite-size)*-.2674)}
.battle-arena.engaged .fighter.ghost{--stance-x:calc(var(--sprite-size)*.2674)}
.arena .arena-caption{background:#fffdf0e8;color:#706756;font-size:10px;bottom:5px;padding:1px 6px}
.arena .ring-label{background:#fffdf3e8;color:#817569;top:9px;padding:3px 9px}
.arena .ring-label b{color:#665d50}
.arena .ring-label>span{color:#75695a!important}
.lobby-arena{height:228px}.battle-arena{height:208px}.result-arena{height:188px}
.result-arena .fighter{--sprite-size:180px}
.result-arena.finish-you .you,.result-arena.finish-you .ghost,.result-arena.finish-ghost .you,.result-arena.finish-ghost .ghost{transform:none!important}
.phone .fighter.attacking{animation:contact-attack .32s ease-out}
.phone .fighter.receiving{animation:contact-hit .7s ease-out}
@keyframes contact-attack{35%{transform:translate(calc(var(--dir)*7px),-3px)}100%{transform:none}}
@keyframes contact-hit{20%{transform:translate(calc(var(--dir)*-10px),-4px)}65%{transform:translate(calc(var(--dir)*-5px),0)}100%{transform:none}}
.cinema-fighters{position:relative;height:224px;margin:0 -10px 16px;display:block;isolation:isolate;--sprite-size:clamp(176px,56cqw,240px)}
.cinema-fighters>.sumo-sprite{position:absolute;width:var(--sprite-size);height:var(--sprite-size);bottom:24%;left:calc(50% - var(--sprite-size)/2 + var(--stance-x));--stance-x:calc(var(--sprite-size)*-.35);z-index:2;filter:none;transition:left .35s ease-out}
.cinema-fighters>.intro-fox{--stance-x:calc(var(--sprite-size)*.35)}
.cinema-fighters .versus{display:none}
.sumo-cinema{container-type:inline-size}
.entrance{background:radial-gradient(ellipse at 5% 15%,#fff0c6,#fffcf5 46%,#e5edff);color:#625c58}
.entrance .cinema-fighters{border-radius:45% 45% 24px 24px;overflow:visible}
.entrance .cinema-rays{opacity:.15;background:repeating-conic-gradient(#eabf5e22 0deg 10deg,transparent 10deg 30deg)}
.entrance .cinema-kicker{color:#9d7b40;font-size:12px;letter-spacing:2px}
.entrance .cinema-title{font-size:clamp(31px,9cqw,46px);color:#705733;text-shadow:0 3px 0 #f0d6a5,0 6px 15px #cda76136}
.entrance .cinema-sub{color:#8e7c63;font-size:13px}
.entrance .cinema-beats i{border-color:#d5b775}.entrance .cinema-beats i.lit{background:#e9b84d;box-shadow:0 0 18px #f0bd6e55}
.entrance .intro-lion,.entrance .intro-fox{animation:none}
.entrance.launch{background:radial-gradient(ellipse at 50% 40%,#ffedbc,#fffcf5 55%,#e3edff)}
.entrance.launch .cinema-fighters{animation:none}
.entrance.launch .intro-lion{--stance-x:calc(var(--sprite-size)*-.2674)}
.entrance.launch .intro-fox{--stance-x:calc(var(--sprite-size)*.2674)}
.verdict .cinema-fighters{height:224px}.verdict .dohyo-scene{opacity:0}
.verdict .intro-lion,.verdict .intro-fox{animation:none;transform:none}
.winner.triumph .intro-lion{width:var(--sprite-size);height:var(--sprite-size);--stance-x:0px;animation:none}
.winner.triumph .cinema-fighters{margin-bottom:12px}
.winner.triumph .cinema-fighters>.intro-lion{--sprite-size:280px}
.defeat .intro-lion,.defeat .intro-fox{transform:none!important}
.motion-paused .sumo-sprite{animation-play-state:paused!important}
@media(max-width:350px){.battle-arena{height:192px}.arena{--sprite-size:178px}.cinema-fighters{--sprite-size:182px}.winner.triumph .cinema-fighters>.intro-lion{--sprite-size:250px}}
@media(max-height:700px){.cinema-fighters,.verdict .cinema-fighters{height:190px;--sprite-size:190px}.winner.triumph .cinema-fighters>.intro-lion{--sprite-size:240px}}
/* 行司のほくと：力士の後ろ、土俵の奥に足をつけて立つ（力士より小さく）。大勝利の場面では主役に場所をゆずる */
.cinema-fighters>.intro-gyoji{width:calc(var(--sprite-size)*.56);height:calc(var(--sprite-size)*.56);left:calc(50% - var(--sprite-size)*.28);bottom:calc(24% + var(--sprite-size)*.12);transition:opacity .3s ease-out}
.verdict .cinema-fighters>.intro-gyoji{width:calc(var(--sprite-size)*.7);height:calc(var(--sprite-size)*.7);left:calc(50% - var(--sprite-size)*.35);bottom:22%}
.winner.triumph .cinema-fighters>.intro-gyoji,.venue-finale .cinema-fighters>.intro-gyoji{opacity:0}
/* 取組中の行司ほくと（2026-09-26）：土俵の奥・右寄りに力士の半分の大きさで立つ（力士より奥）。のこった を掛けるときに構えを変えて口を動かす。 */
.battle-arena>.arena-gyoji{position:absolute;z-index:2;width:calc(var(--sprite-size)*.5);height:calc(var(--sprite-size)*.5);right:3%;bottom:17%;pointer-events:none}
