/* Battle entrance and shared preparation room */
.battle-gateway,.room-lobby,.online-simple-entry{font-family:'M PLUS Rounded 1c','Yu Gothic',sans-serif;color:#173f52;font-weight:800;max-width:1180px;margin:auto}
.battle-gateway{padding:12px 8px 28px;text-align:center}.gateway-kicker{display:inline-block;background:#214e63;color:#ffe997;padding:8px 26px;border:2px solid #fff4b9;border-radius:30px;font-size:19px;box-shadow:0 4px #173b4b}.battle-gateway h1{font-size:clamp(30px,4vw,48px);margin:18px 0 28px;text-shadow:2px 3px #fff9d6}.battle-mode-options{display:grid;grid-template-columns:1fr 1fr;gap:26px}.battle-mode{position:relative;isolation:isolate;text-decoration:none;color:#fff9dc;border:4px solid #193e51;border-radius:30px;overflow:hidden;box-shadow:inset 0 0 0 4px #fff6c990,0 8px #1d4858;transition:transform .15s}.battle-mode:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 35% 12%,#ffffff5c,transparent 58%)}.mode-computer{background:linear-gradient(145deg,#fdc13e,#d55738)}.mode-friends{background:linear-gradient(145deg,#57d2dc,#3469be)}.battle-mode:hover{transform:translateY(-5px)}.mode-art{position:relative;height:235px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#fff5caae,transparent 68%);overflow:hidden}.mode-art>.sprite{width:215px;height:auto;filter:drop-shadow(0 7px 1px #1843554d)}.mode-friends .sprite{width:190px;height:auto;margin:0 -17px}.mode-friends .sprite:first-child{transform:scaleX(-1)}.mode-art>span{position:absolute;right:15%;top:20px;font-size:70px;color:#fff6b8;transform:rotate(10deg)}.mode-copy{padding:10px 22px 26px;background:linear-gradient(transparent,#183d5540)}.mode-copy small{font-size:19px}.mode-copy h2{font-size:clamp(27px,3vw,39px);line-height:1.25;margin:12px 0;text-shadow:2px 3px #193e51}.mode-copy p{font-size:19px}.mode-copy>b{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#fffbe6,#ffdf7a);color:#254756;border:2px solid #fff7cc;box-shadow:0 4px #8a602c;border-radius:15px;padding:13px 23px;margin-top:20px;font-size:22px}.gateway-foot{font-size:20px;margin-top:30px}.room-back{display:inline-block;font-size:18px;color:#275467;margin:0 0 15px}.online-simple-entry{max-width:960px}.online-simple-entry h1{font-size:clamp(28px,4vw,40px);margin:6px}.room-my-name{text-align:center;font-size:21px}.online-simple-entry .entry-emblem{font-size:45px;color:#22586c;line-height:1}.online-entry-actions h2{font-size:28px;margin:12px 0}.online-entry-actions section{background:linear-gradient(140deg,#fff9ca,#ffe891)}.online-entry-actions form{background:linear-gradient(140deg,#f2ffff,#d8f3ff)}.room-entry-note{text-align:center;font-size:19px;margin:28px 0}.room-code-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 25px;background:linear-gradient(120deg,#205b70,#15394f);color:#fff8d3;border:3px solid #78c6c0;border-radius:23px;box-shadow:0 5px #336477}.room-code-header h1{font-size:32px;margin:4px 0}.room-code-header>div>span{font-size:16px}.room-code{display:flex;align-items:center;gap:15px}.room-code b{font-size:38px;letter-spacing:.14em;color:#ffdf73;font-variant-numeric:tabular-nums}.room-code button{border:2px solid #c2e6dc;background:#fff8d9;color:#1c4a5c;border-radius:12px;padding:10px;font:inherit;cursor:pointer}.room-instruction{font-size:24px;text-align:center;margin:24px 0}.room-team-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px}.room-my-team,.room-friend-team{padding:22px;border:3px solid #588e84;border-radius:24px;background:linear-gradient(135deg,#fffef1,#fff8db);box-shadow:0 5px #285a6540;min-width:0}.room-friend-team{background:linear-gradient(135deg,#f2f9ff,#e2e6ff);border-color:#7a87b7}.room-player-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:2px solid #92b1a344;padding-bottom:12px}.room-player-heading h2{font-size:24px;overflow-wrap:anywhere;margin:0}.room-player-heading>span{background:#28596a;color:#fffbd9;padding:5px 12px;border-radius:20px;font-size:16px;white-space:nowrap}.room-character{display:grid;grid-template-columns:140px minmax(0,1fr);gap:18px;align-items:center;margin:20px 0}.room-character-art,.room-friend-art{display:grid;place-items:center;background:radial-gradient(ellipse,#f3d48377,transparent 67%)}.room-character-art>.sprite{width:140px;height:auto}.room-character label{font-size:18px;display:block;margin-bottom:8px}.room-lobby select{width:100%;min-width:0;background:#fffef5;color:#214a59;border:2px solid #79a298;border-radius:12px;padding:10px;font-family:inherit;font-weight:800;font-size:21px;min-height:48px}.combat-meters{display:grid;grid-template-columns:1fr 1fr;gap:11px 15px;margin:16px 0 8px}.combat-meter{display:grid;grid-template-columns:1fr auto;gap:4px;font-size:15px}.combat-meter b{font-size:20px;line-height:1}.combat-meter i{grid-column:1/-1;height:8px;border-radius:8px;background:#26485820;overflow:hidden}.combat-meter em{display:block;height:100%;border-radius:8px;background:linear-gradient(#74d6a4,#2b9b72)}.tone-attack em{background:linear-gradient(#ffbc6d,#db653d)}.tone-technique em{background:linear-gradient(#7acfe9,#3d85bb)}.tone-luck em{background:linear-gradient(#d3a6fa,#9565ce)}.combat-style{font-size:16px;color:#5b7274;margin:8px 0}.room-techniques{display:grid;gap:12px}.room-technique{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:10px;background:#fff;border:2px solid #c7d8c5;border-radius:16px;padding:12px}.room-hand{text-align:center;font-size:14px}.room-hand>.hand-icon{width:43px;height:43px;display:block;margin:auto}.room-technique p{font-size:15px;line-height:1.55;margin:7px 0 0;color:#496775}.room-technique select{font-size:18px}.room-ready.game-button{width:100%;min-height:64px;font-size:28px;margin-top:22px}.room-ready[disabled]{opacity:.5;cursor:default}.room-ready-hint{text-align:center;font-size:16px;margin-bottom:0}.room-unready{display:block;margin:13px auto 0;border:0;background:none;text-decoration:underline;font:inherit;color:#315967;cursor:pointer}.friend-status{border:2px dashed #8999bd;text-align:center;border-radius:20px;padding:10px;font-size:18px;margin:16px 0;background:#fff9}.friend-status.is-ready{border-style:solid;background:#d6f2d1;color:#246842}.room-friend-art>.sprite{width:180px;height:auto}.room-friend-team h3{text-align:center;font-size:25px;margin:10px}.friend-techniques{display:grid;gap:8px;margin-top:18px}.friend-techniques>span{display:flex;align-items:center;gap:12px;font-size:17px;background:#ffffff8a;padding:8px 12px;border-radius:12px}.friend-techniques .hand-icon{width:28px;height:28px}.room-friend-empty{text-align:center;display:grid;place-content:center;min-height:360px;font-size:24px}.room-friend-empty>span{font-size:95px;color:#87abc9}.room-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:17px;margin-top:22px}.room-disband{font:inherit;border:2px solid #7c9b9c;color:#345968;padding:12px 20px;background:#fffce6;border-radius:16px;cursor:pointer}.room-lobby button:focus-visible,.room-lobby select:focus-visible,.battle-mode:focus-visible{outline:4px solid #ef9c18;outline-offset:4px}.room-no-cards{text-align:center;font-size:20px;padding:30px 0}.meter-luck .ability-meter-fill{background:linear-gradient(#d0a7fa,#9165c8)}
/* A shared, clock-driven wheel: blue is always dodge, red is always hit. */
.dodge-wheel-panel{color:#fffbe4;background:radial-gradient(ellipse at top,#306b89,#142f4b);border:2px solid #7bcee1;border-radius:20px;box-shadow:inset 0 0 0 3px #183b50,inset 0 0 24px #09172a;padding:13px;position:relative;overflow:hidden;width:100%;box-sizing:border-box}.dodge-intro{display:flex;align-items:center;justify-content:center;gap:10px;text-align:center}.dodge-star{font-size:32px;color:#ffe599;text-shadow:0 0 14px #ffd74a}.dodge-intro h2{font-size:21px;margin:0!important;color:#fff7ce!important;line-height:1.3}.dodge-intro p{font-size:18px;margin:4px 0 7px;color:#fff8cb}.dodge-wheel-layout{display:grid;grid-template-columns:1fr 176px 1fr;align-items:center;gap:4px;max-width:480px;margin:4px auto}.roulette-shell{position:relative;aspect-ratio:1;width:176px;border-radius:50%;background:conic-gradient(#f8dc8c,#744d2a,#fff0b2,#805b30,#f8dc8c);box-shadow:0 6px 0 #081b2b,0 0 0 2px #142c40,0 0 24px #76dcff3f,inset 0 0 0 3px #fff4bc}
.roulette-disc{position:absolute;inset:13px;border:3px solid #081b31;border-radius:50%;background:conic-gradient(from 0deg,#198feb 0 var(--chance),#ee583f var(--chance) 100%);box-shadow:inset 0 0 25px #031d5866;overflow:hidden}.roulette-gloss{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 30% 20%,#fff8,transparent 60%);pointer-events:none}.roulette-word{position:absolute;z-index:1;font-size:18px;font-weight:900;text-shadow:1px 2px #172638;top:44%}.blue-word{right:7%}.red-word{left:7%}.roulette-hub{position:absolute;z-index:4;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:3px solid #fff0a5;background:linear-gradient(#f7d366,#98602d);box-shadow:0 2px 8px #0008;color:#263f4f;font-size:19px}.roulette-needle{position:absolute;inset:0;z-index:3;will-change:transform}.roulette-needle:before{content:'';position:absolute;left:calc(50% - 7px);top:6%;height:45%;width:14px;background:linear-gradient(90deg,#ffc844,#ffffdc,#ffa818);clip-path:polygon(50% 0,100% 33%,70% 100%,30% 100%,0 33%);filter:drop-shadow(0 0 4px #fff)}.roulette-needle i{position:absolute;width:3px;height:42%;background:#fff9;left:calc(50% - 2px);top:7%;box-shadow:0 0 11px 3px #fff8;transform:rotate(-12deg);transform-origin:bottom;opacity:.4}.roulette-settling .roulette-needle i{opacity:0;transition:opacity 1s}.roulette-rivets{position:absolute;inset:0;border-radius:50%}.roulette-rivets i{position:absolute;top:50%;left:50%;width:5px;height:5px;margin:-2.5px;border-radius:50%;background:#b99558;transform:rotate(calc(var(--i)*15deg)) translateY(-81px);box-shadow:inset 0 1px #fff9}.roulette-rivets i.lit{background:#fff9c2;box-shadow:0 0 8px 4px #ffd96c}.dodge-team{text-align:center;min-width:0;font-size:17px}.dodge-team b{font-size:34px;display:block;color:#fff}.dodge-team small{font-size:12px;display:block}.dodge-blue{color:#7ee8ff}.dodge-red{color:#ffa898}.dodge-legend{display:flex;justify-content:center;gap:18px;font-size:15px;margin-top:10px}.dodge-chance{text-align:center;font-size:14px;margin:7px 0;color:#d1e6ee}.dodge-outcome{text-align:center;font-size:17px;min-height:26px;margin:5px 0 0!important;font-weight:900}.roulette-stopped .dodge-outcome{font-size:24px;color:#ffdb86;animation:dodge-pop .42s ease-out}.roulette-success .dodge-outcome{color:#8ef4ff}.roulette-burst{pointer-events:none;position:absolute;inset:-8px;border:4px solid #fff8b5;border-radius:50%;opacity:0}.roulette-stopped .roulette-burst{animation:dodge-ring .6s ease-out forwards}.dodge-large{max-width:650px;margin:auto;padding:24px}.dodge-large .dodge-wheel-layout{grid-template-columns:1fr 260px 1fr;max-width:560px;margin:22px auto}.dodge-large .roulette-shell{width:260px}.dodge-large .roulette-rivets i{transform:rotate(calc(var(--i)*15deg)) translateY(-123px)}.dodge-large .roulette-disc{inset:15px}.dodge-large .roulette-word{font-size:26px}.dodge-large .roulette-hub{width:42px;height:42px;font-size:26px}.dodge-large .dodge-intro h2{font-size:28px}.dodge-large .dodge-intro p{font-size:24px}.dodge-large .dodge-legend{font-size:20px}.dodge-large .dodge-team b{font-size:45px}.dodge-large .dodge-chance{font-size:18px}.dodge-decision{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:12px;background:#f5faff;border:2px solid #6a9eab;border-radius:16px;color:#204b5d;margin:12px 0}.dodge-decision>div{font-size:17px;text-align:center}.dodge-decision strong{display:block;font-size:21px}.dodge-decision button{font-family:inherit;font-size:21px;font-weight:900;color:#fffdf0;border:2px solid #bceeff;border-radius:14px;background:linear-gradient(#63cdee,#1d82b5);padding:10px 18px;box-shadow:0 4px #174765;cursor:pointer}.dodge-decision button small{display:block;font-size:13px}.dodge-spent{font-size:16px;color:#587780;text-align:center}.dodge-slot:empty{display:none}.duel .dodge-slot{margin-bottom:12px}.duel.phase-dodge .duel-console{padding:20px;justify-content:center}.dodge-mini-result{padding:10px 15px;border:2px solid #65c5dd;border-radius:14px;background:#1c5069;color:#a1f4ff;text-align:center;font-size:24px;margin:12px 0}.battle-quiz-hands{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 8px;font-size:17px}.battle-quiz-hands .hand-icon{width:34px;height:34px}.battle-quiz-hands b{font-size:17px}
@media(min-width:901px){.visual-duel:has(.dodge-wheel-panel) .duel-console{overflow-y:auto}.online-battle.phase-dodge .duel-console{min-width:0}.selected-partner-meters{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:700px){.battle-mode-options{grid-template-columns:1fr;gap:22px}.battle-mode{display:grid;grid-template-columns:38% 62%;text-align:left}.mode-art{height:100%;min-height:235px}.mode-art>.sprite{width:160px;height:auto}.mode-friends .sprite{width:130px;height:auto;position:absolute;left:-23px;top:40px}.mode-friends .sprite:last-child{left:37px;top:80px}.mode-copy{padding:24px 16px 22px 8px}.mode-copy h2{font-size:27px}.mode-copy small,.mode-copy p{font-size:16px}.mode-copy>b{font-size:19px;padding:11px}.mode-art>span{font-size:40px}.gateway-foot{font-size:17px}.room-code-header{flex-direction:column;align-items:stretch;padding:14px 18px;gap:6px}.room-code-header h1{font-size:27px}.room-code{justify-content:space-between;gap:10px}.room-code b{font-size:31px}.room-instruction{font-size:20px}.room-team-grid{grid-template-columns:1fr;gap:18px}.room-my-team,.room-friend-team{padding:17px}.room-character{grid-template-columns:95px minmax(0,1fr);gap:12px}.room-character-art>.sprite{width:100px;height:auto}.room-player-heading h2{font-size:23px}.room-lobby select{font-size:18px}.combat-meters{gap:10px}.combat-meter{font-size:14px}.combat-meter b{font-size:19px}.room-footer{flex-direction:column;text-align:center}.room-friend-empty{min-height:180px}.room-friend-art>.sprite{height:auto;width:140px}.room-friend-team>.combat-meters{max-width:350px;margin:15px auto}.dodge-large{padding:14px}.dodge-large .dodge-wheel-layout{grid-template-columns:1fr 196px 1fr}.dodge-large .roulette-shell{width:196px}.dodge-large .roulette-rivets i{transform:rotate(calc(var(--i)*15deg)) translateY(-91px)}.dodge-large .roulette-word{font-size:20px}.dodge-large .dodge-intro h2{font-size:22px}.dodge-large .dodge-intro p{font-size:19px}.dodge-large .dodge-team b{font-size:30px}.dodge-large .dodge-legend{font-size:15px}.dodge-large .dodge-chance{font-size:16px}.dodge-wheel-layout{grid-template-columns:1fr 156px 1fr}.roulette-shell{width:156px}.roulette-rivets i{transform:rotate(calc(var(--i)*15deg)) translateY(-71px)}.roulette-word{font-size:15px}.dodge-team{font-size:15px}.dodge-intro h2{font-size:19px}.dodge-intro p{font-size:17px}.room-technique p{font-size:15px}.selected-partner-meters{grid-template-columns:1fr 1fr!important}}
@keyframes dodge-pop{0%{transform:scale(.8)}60%{transform:scale(1.08)}100%{transform:scale(1)}}@keyframes dodge-ring{0%{transform:scale(.94);opacity:1}100%{transform:scale(1.25);opacity:0}}
@media(prefers-reduced-motion:reduce){.battle-mode,.roulette-needle,.roulette-disc{transition:none}.roulette-stopped .dodge-outcome,.roulette-stopped .roulette-burst{animation:none}.roulette-needle i{display:none}}
/* Three hands, three equipped cards. The companion's favorite hand is gold. */
.move-kit{padding:22px!important;border:3px solid #407a79!important;border-radius:25px!important;background:linear-gradient(140deg,#fffdec,#fff8cf)!important;box-shadow:0 6px #31616a40}.move-kit-title{display:flex;gap:14px;align-items:center;margin-bottom:22px}.move-kit-title>div{width:80px;height:75px;background:#ecedc9;border:2px solid #a0baa1;border-radius:50%;overflow:hidden;flex-shrink:0}.move-kit-title .sprite{width:78px;height:auto}.move-kit-title p{margin:0}.move-kit-title b{display:block;font-size:23px}.move-kit-title p>span{display:block;font-size:20px;margin-top:5px}.move-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.move-slot{--hand-dark:#b34b31;--hand-light:#ffe9ba;--hand-mid:#ee9469;min-width:0;border:3px solid var(--hand-dark);border-radius:23px;background:linear-gradient(#fffdf0,var(--hand-light));box-shadow:0 5px var(--hand-dark),inset 0 0 0 3px #fff9;overflow:hidden;position:relative}.move-hand-1{--hand-dark:#247b67;--hand-light:#dcf5ce;--hand-mid:#6cbfa1}.move-hand-2{--hand-dark:#326b9d;--hand-light:#d5f0ff;--hand-mid:#72b6dc}.move-slot-head{display:flex;gap:13px;align-items:center;padding:16px 13px;border-bottom:2px solid var(--hand-dark);background:linear-gradient(155deg,#fff7,var(--hand-mid));min-height:105px}.move-hand-orb{display:grid;place-items:center;flex-shrink:0;width:70px;height:70px;border:3px solid var(--hand-dark);border-radius:50%;background:radial-gradient(circle at 35% 20%,#fff,#fff8cb 60%,var(--hand-mid));box-shadow:inset 0 0 0 3px #fff9,0 4px #19475540}.move-hand-orb>.hand-icon{width:60px;height:60px;filter:drop-shadow(1px 3px 1px #28546266)}.move-slot-head h3{font-size:30px;line-height:1.2;margin:0;color:#173d50;white-space:nowrap;letter-spacing:.01em}.move-slot-head h3>span{font-size:17px;margin-left:5px}.move-slot-head p{font-size:14px;font-weight:900;line-height:1.5;margin:6px 0 0;color:#285363}.move-slot-body{padding:13px}.move-art{height:145px;position:relative;border-radius:13px;border:2px solid #fff;background:radial-gradient(ellipse,#fff,#bed1bd);overflow:hidden;display:grid;place-items:center}.move-art img{width:100%;height:100%;object-fit:cover;object-position:50% 37%}.move-art>span{position:absolute;bottom:0;left:0;background:#153949db;color:#fffdeb;font-size:14px;padding:4px 12px;border-top-right-radius:12px}.move-select>label{display:block;font-size:15px;color:#426270;margin:12px 0 5px}.move-select select{display:block;width:100%;min-width:0;min-height:57px;padding:10px 28px 10px 10px;border:2px solid var(--hand-dark);border-radius:12px;background:#fffef9;color:#173d50;font-size:21px;font-weight:900;font-family:inherit;cursor:pointer;box-shadow:0 3px #173d5020}.move-select select:focus-visible{outline:4px solid #f1ab22;outline-offset:3px}.move-slot .tech-fit{margin:11px 0 0;min-height:56px;padding:8px 10px;border-radius:12px}.move-slot .tech-fit-result{display:flex;align-items:center;justify-content:center;gap:8px;font-size:18px}.move-slot .fit-seal{font-size:29px;line-height:1;width:34px;height:34px;border:0}.move-slot .kit-special-effect{font-size:16px;line-height:1.5;margin:7px 0 0}.move-effect{font-size:16px;line-height:1.6;color:#315365;margin:9px 3px 2px}.move-slot.is-special{border-color:#a97b22;box-shadow:0 5px #926621,0 0 0 3px #f9d459;background:linear-gradient(#fff8cf,#ffe89f)}.move-slot.is-special .move-slot-head{background:linear-gradient(135deg,#fff4a7,#ffd460 62%,#e7a746);border-color:#b5822e}.move-slot.is-special .move-slot-head p{background:#8d4d20;color:#fff5a3;border:1px solid #fff4aa;border-radius:14px;padding:4px 8px;display:inline-block;font-size:16px;margin-top:6px;box-shadow:0 2px #b87530}.move-slot.is-special .move-art>span{background:#ffda63;color:#6c3c14;font-weight:900}.move-slot.is-special .move-hand-orb{border-color:#a97729;box-shadow:inset 0 0 0 3px #fff8,0 4px #af752e}.move-kit .kit-links{margin-top:21px;font-size:17px}.move-compact .move-slot-head{padding:9px 12px;min-height:76px}.move-compact .move-hand-orb{width:56px;height:56px}.move-compact .move-hand-orb>.hand-icon{width:47px;height:47px}.move-compact .move-slot-head h3{font-size:26px}.move-compact .move-slot-head{justify-content:flex-start}.move-compact .move-slot-head>div{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1}.move-compact .move-slot-head p{font-size:13px;margin:0}.move-compact .move-slot-body{display:grid;grid-template-columns:95px minmax(0,1fr);gap:12px;align-items:start}.move-compact .move-art{height:100px}.move-compact .move-art>span{font-size:11px;padding:3px 6px}.move-compact .move-select>label{margin:0 0 5px}.move-compact .move-select select{min-height:48px;font-size:18px}.move-compact .tech-fit{min-height:36px;margin-top:7px;padding:5px}.move-compact .tech-fit-result{font-size:16px}.move-compact .fit-seal{font-size:23px;width:26px;height:26px}.move-compact .kit-special-effect{display:none}.move-compact .move-effect{font-size:16px}.room-techniques{gap:20px}.friend-techniques>span{font-size:19px}.combat-meter{font-size:17px}.combat-style{font-size:18px}.selected-partner-stats>div:last-child{flex:1}.selected-partner-stats .combat-meters{grid-template-columns:repeat(4,1fr);gap:22px}.selected-partner-stats .combat-meter{font-size:18px}.selected-partner-stats .combat-meter b{font-size:25px}.ability-preview p{font-size:21px!important;line-height:1.8!important}.ability-preview h3{font-size:24px!important}.ability-preview>span{font-size:16px!important}
.arena-roulette{position:absolute;z-index:9;left:50%;top:50%;transform:translate(-50%,-50%);width:360px;max-width:60%;pointer-events:none}.arena-roulette .dodge-wheel-panel{background:linear-gradient(#173e59f5,#123146ed);color:#fff5d4;border:2px solid #71bbc9;border-radius:25px;padding:13px 10px;box-shadow:0 5px 0 #082435,0 0 30px #37d7df38}.arena-roulette .dodge-intro h2{font-size:18px}.arena-roulette .dodge-intro p{font-size:17px}.arena-roulette .dodge-intro{gap:3px;margin-bottom:7px}.arena-roulette .dodge-star{display:none}.arena-roulette .dodge-chance{color:#d3e2ee;font-size:13px;margin:6px 0}.arena-roulette .dodge-legend{font-size:13px;gap:8px}.arena-roulette .dodge-outcome{margin:5px 0 0;font-size:20px;min-height:30px;color:#ffdf75}.arena-roulette .dodge-team small{font-size:10px}.arena-roulette .dodge-team{min-width:49px}.arena-roulette .dodge-wheel-layout{gap:5px}.roulette-watching{text-align:center;font-size:22px;line-height:1.8;padding:26px 10px}.roulette-watching b{font-size:29px;color:#a45c20}
@media(max-width:700px){.move-kit{padding:15px!important}.move-slot-grid{grid-template-columns:1fr;gap:21px}.move-kit-title>div{width:60px;height:60px}.move-kit-title .sprite{width:58px;height:auto}.move-kit-title b{font-size:22px}.move-kit-title p>span{font-size:17px}.move-slot-head{padding:11px;min-height:90px}.move-slot-head>div{flex:1}.move-slot-head h3{font-size:31px}.move-slot-head p{font-size:16px}.move-slot-body{display:grid;grid-template-columns:88px minmax(0,1fr);gap:11px;align-items:start}.move-art{height:113px}.move-art>span{font-size:11px;padding:3px 5px}.move-select>label{margin-top:0}.move-select select{font-size:18px;min-height:52px;padding-right:24px}.move-slot .tech-fit-result{font-size:16px}.move-slot .tech-fit{padding:6px;min-height:42px;margin-top:8px}.move-slot .fit-seal{font-size:26px;width:29px;height:29px}.move-compact .move-slot-body{grid-template-columns:70px minmax(0,1fr)}.move-compact .move-slot-head>div{display:block}.move-compact .move-slot-head p{margin-top:5px}.move-compact .move-art{height:90px}.move-compact .move-slot-head h3{font-size:26px}.selected-partner-stats .combat-meters{grid-template-columns:1fr 1fr;gap:15px}.arena-roulette{width:285px;max-width:76%;top:46%}.arena-roulette .dodge-wheel-panel{padding:8px 4px;border-radius:20px}.arena-roulette .dodge-intro h2{font-size:15px}.arena-roulette .dodge-intro p{font-size:14px}.arena-roulette .dodge-team{min-width:37px}.arena-roulette .dodge-team>span{font-size:12px}.arena-roulette .dodge-team>b{font-size:23px}.arena-roulette .dodge-legend{gap:6px;font-size:11px}.arena-roulette .dodge-outcome{font-size:18px;min-height:25px}.arena-roulette .dodge-chance{font-size:11px;margin:3px 0}.arena-roulette .dodge-wheel-layout{gap:3px}.ability-preview p{font-size:19px!important}.ability-preview h3{font-size:21px!important}}
/* Companion status: a portrait crest and four readable, framed gauges. */
.combat-stat-icon{width:18px;height:18px;vertical-align:-3px;margin-right:5px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tone-hp .combat-stat-icon,.tone-luck .combat-stat-icon{fill:currentColor;stroke-width:1}
.selected-partner-stats.partner-status-card{position:relative;isolation:isolate;display:grid;grid-template-columns:195px minmax(0,1fr);gap:25px;align-items:center;padding:26px 30px;margin-top:22px;border:3px solid #648b8e;border-radius:25px;background:radial-gradient(ellipse at 5% 20%,#3b82938c,transparent 50%),linear-gradient(130deg,#214f63,#122b40);box-shadow:inset 0 0 0 2px #9ccec34a,inset 0 -8px 20px #0418276b,0 5px #193e4d,0 10px 20px #153d4926;color:#fff5d3;overflow:hidden}.partner-status-card:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.4;background:repeating-linear-gradient(125deg,transparent 0 58px,#a3e8df09 59px 63px,transparent 64px 120px);pointer-events:none}.partner-status-portrait{width:190px;height:200px;position:relative;display:grid;place-items:center;border:2px solid #b5d8c955;border-radius:23px;background:radial-gradient(ellipse,#d2f1c86b,#67b9ad17 65%,#0b2032);box-shadow:inset 0 0 18px #00192b80,0 0 0 6px #4b7a8526}.partner-status-portrait>.sprite{width:185px;height:auto;filter:drop-shadow(0 8px 3px #001f3980);z-index:1}.partner-status-orbit{position:absolute;inset:15px;border:1px solid #cae3cc55;border-radius:50%;box-shadow:0 0 0 8px #8cccc011,0 0 0 28px #8cccc008}.partner-status-portrait:after{content:'✦';position:absolute;right:8px;top:4px;color:#ffe195;font-size:30px;text-shadow:0 0 13px #ffc54299}.partner-status-content{min-width:0}.partner-status-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 0 14px;border-bottom:1px solid #aad9d452}.partner-status-heading>div>span{font-size:15px;color:#8cd7db;letter-spacing:.12em;font-weight:900}.partner-status-heading h3{font-size:32px;line-height:1.35;margin:3px 0 0!important;color:#fff9dc;text-shadow:0 3px #091e2f}.partner-favorite{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:8px 13px;background:linear-gradient(135deg,#705528,#383c32);border:1px solid #d3b566;border-radius:15px;box-shadow:inset 0 1px #fff4b63b}.partner-favorite>.hand-icon{width:48px;height:48px;filter:drop-shadow(0 2px #071c27)}.partner-favorite>span{font-size:13px;color:#f9d580;line-height:1.35}.partner-favorite b{display:block;font-size:22px;color:#fff7d2}.partner-status-card .combat-meters{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:17px 0 12px}.partner-status-card .combat-meter{position:relative;padding:12px 11px 13px;display:grid;grid-template-columns:1fr auto;gap:9px 6px;background:linear-gradient(#153e54,#0d293e);border:1px solid #6c98a6;border-radius:13px;box-shadow:inset 0 2px 6px #02122277,0 2px #082537}.partner-status-card .combat-meter>span{grid-column:1/-1;font-size:16px;color:#c5e9ee;font-weight:800;white-space:nowrap}.partner-status-card .combat-meter>b{grid-column:1/-1;font-size:35px;text-shadow:0 3px #0005;color:#fff9de;line-height:1.1;font-variant-numeric:tabular-nums}.partner-status-card .combat-meter>i{height:11px;border:1px solid #60828d;background:#041b2b;box-shadow:inset 0 2px 3px #0009;overflow:visible}.partner-status-card .combat-meter em{position:relative;min-width:4px;height:9px;box-shadow:0 0 9px #92efe54d}.partner-status-card .combat-meter em:after{content:'';position:absolute;inset:0;border-top:2px solid #fff7;border-radius:8px;background:repeating-linear-gradient(100deg,transparent 0 8px,#fff1 9px 12px)}.partner-status-card .combat-stat-icon{width:20px;height:20px;margin-right:6px;color:#7de0b2}.partner-status-card .tone-attack .combat-stat-icon{color:#ffc08d}.partner-status-card .tone-technique .combat-stat-icon{color:#81d8ef}.partner-status-card .tone-luck .combat-stat-icon{color:#d8b9ff}.partner-status-card .combat-style{display:inline-block;background:#254e5e;border:1px solid #648e91;color:#f1edd3;font-size:16px;padding:5px 12px;border-radius:20px;margin:2px 9px 0 0}.partner-luck-note{display:inline-block;font-size:15px;color:#c8dfeb;margin:8px 0 0}.partner-luck-note>span{color:#ffdc80;font-size:18px}
@media(max-width:950px){.selected-partner-stats.partner-status-card{grid-template-columns:145px minmax(0,1fr);padding:22px;gap:20px}.partner-status-portrait{width:145px;height:175px}.partner-status-portrait>.sprite{width:140px;height:auto}.partner-status-card .combat-meter{padding:10px 8px}.partner-status-card .combat-meter>span{font-size:13px}.partner-status-card .combat-stat-icon{width:17px;height:17px;margin-right:3px}.partner-status-heading h3{font-size:28px}}
@media(max-width:700px){.selected-partner-stats.partner-status-card{display:block;padding:18px 15px 20px;border-radius:23px}.partner-status-portrait{position:absolute;top:14px;left:14px;width:92px;height:106px;border-radius:18px}.partner-status-portrait>.sprite{width:91px;height:auto}.partner-status-portrait:after{font-size:20px}.partner-status-heading{display:block;min-height:107px;padding:0 0 12px 105px}.partner-status-heading h3{font-size:24px;overflow-wrap:anywhere}.partner-status-heading>div>span{font-size:12px}.partner-favorite{display:inline-flex;padding:4px 8px;gap:5px;margin-top:9px;border-radius:10px}.partner-favorite>.hand-icon{width:30px;height:30px}.partner-favorite>span{font-size:11px}.partner-favorite b{display:inline;font-size:15px;margin-left:6px}.partner-status-card .combat-meters{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.partner-status-card .combat-meter{padding:11px 12px;grid-template-columns:1fr auto;gap:11px 4px;align-items:center}.partner-status-card .combat-meter>span{grid-column:auto;font-size:14px}.partner-status-card .combat-meter>b{grid-column:auto;font-size:29px}.partner-status-card .combat-stat-icon{width:17px;height:17px}.partner-status-card .combat-style{font-size:15px}.partner-luck-note{font-size:13px}}
/* Keep the entire card illustration visible, including heads and technique effects. */
.move-art{height:auto;aspect-ratio:1/1;width:100%;background:radial-gradient(ellipse,#fffef4,#dce7cf)}.move-art img{display:block;object-fit:contain;object-position:center;width:100%;height:100%}.move-art>span{position:relative;grid-row:2;justify-self:start;max-width:100%;font-size:14px}.move-art{display:flex;flex-direction:column}.move-art img{min-height:0;flex:1}.move-art>span{flex-shrink:0;align-self:stretch;text-align:center;border-radius:0}.move-compact .move-art{height:auto;aspect-ratio:auto}.move-compact .move-art img{aspect-ratio:1/1;flex:none}.move-compact .move-art>span{font-size:11px}@media(max-width:700px){.move-art{height:auto;aspect-ratio:auto}.move-art img{aspect-ratio:1/1;flex:none}.move-art>span{font-size:11px}.move-compact .move-art{height:auto}}
/* Two luminous gates to the same shared room; actions remain simple. */
.premium-entry{max-width:990px;position:relative;padding-bottom:10px}.room-entry-hero{display:flex;align-items:center;justify-content:center;gap:19px;text-align:center;padding:22px 25px;color:#fffae3;position:relative;isolation:isolate;border:2px solid #8dd0c5;border-radius:24px;background:radial-gradient(ellipse at 50% -40%,#429aa7,#1b5068 58%,#183a51);box-shadow:inset 0 0 0 4px #102e444d,inset 0 1px #fff9,0 5px #2a5c68,0 10px 20px #27574923;overflow:hidden}.room-entry-hero:before,.room-entry-hero:after{content:'';position:absolute;z-index:-1;width:260px;height:260px;border:1px solid #84ddd12e;transform:rotate(45deg);top:-50px;left:-110px;box-shadow:0 0 0 28px #92d9ca0b,0 0 0 58px #92d9ca06}.room-entry-hero:after{left:auto;right:-110px}.room-entry-hero h1{font-size:clamp(28px,4vw,43px);margin:5px 0 8px;text-shadow:0 3px #0c2b40}.room-entry-hero p{font-size:17px;color:#b0e9e3;letter-spacing:.05em;margin:0}.room-entry-hero>div>span{font-size:20px;color:#fff0af}.room-entry-crest{display:grid;place-items:center;width:70px;height:70px;border:2px solid #f3d78e;outline:2px solid #c2a65c77;outline-offset:5px;border-radius:50%;font-size:49px;flex-shrink:0;background:radial-gradient(circle,#65866d,#304d51);text-shadow:0 0 20px #ffe07a;color:#ffe593}.premium-entry .room-my-name{display:table;margin:23px auto 22px;background:#fffbdf;border:2px solid #b4b77d;border-radius:30px;box-shadow:0 3px #315b6633;font-size:18px;padding:7px 22px}.room-my-name>span{color:#c28c24;margin-right:6px}.premium-entry .online-entry-actions{gap:27px}.premium-entry .online-entry-actions>section,.premium-entry .online-entry-actions>form{--gate-color:#ffd176;--gate-dark:#8c572b;position:relative;isolation:isolate;padding:0 24px 25px;border:3px solid #547c7d;border-radius:27px;background:linear-gradient(150deg,#fffce4,#ffedb2);box-shadow:0 6px #496b70,0 11px 17px #17394e2b,inset 0 0 0 4px #fff8;overflow:hidden}.premium-entry .online-entry-actions>.entry-join{--gate-color:#7ce8f6;--gate-dark:#28668a;background:linear-gradient(150deg,#f5ffff,#d6f0ff);border-color:#49799d}.room-gate-art{position:relative;height:165px;width:calc(100% + 48px);flex-shrink:0;overflow:hidden;background:radial-gradient(ellipse at 50% 105%,var(--gate-color),#183e5422 70%),linear-gradient(140deg,#284f5f,#14384f);border-bottom:3px solid #a2ab76;display:flex;align-items:flex-end;justify-content:center;isolation:isolate}.gate-join{border-color:#7ebac4}.gate-arch{position:absolute;width:142px;height:184px;left:calc(50% - 71px);top:12px;background:linear-gradient(#ffda734d,#fff8dcaa);border:8px solid #adc4ae;border-bottom:0;border-radius:75px 75px 0 0;box-shadow:0 0 0 3px #335864,inset 0 0 0 3px #526d67,0 0 30px var(--gate-color)}.gate-join .gate-arch{background:linear-gradient(#73e8ff33,#cdfffeaa);border-color:#9cbbc9}.gate-arch>span{position:absolute;inset:6px;border:2px solid #fff8;border-radius:62px 62px 0 0;background:repeating-conic-gradient(from -8deg at 50% 100%,#fff5 0 5deg,transparent 6deg 16deg)}.gate-arch>i{position:absolute;inset:35px 25px;background:linear-gradient(transparent,#fff9);filter:blur(12px)}.room-gate-art>.sprite{width:160px;height:auto;position:relative;z-index:2;filter:drop-shadow(0 4px 3px #001b3099);margin-left:-14px;margin-bottom:-8px}.gate-join>.sprite{transform:scaleX(-1);margin-left:12px}.gate-orbit{position:absolute;bottom:-36px;left:calc(50% - 150px);height:90px;width:300px;border:2px solid var(--gate-color);border-radius:50%;box-shadow:0 0 0 8px #faffbf13,0 0 0 22px #faffbf06}.gate-medallion{position:absolute;right:18%;top:80px;z-index:3;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;background:linear-gradient(#fffbd9,var(--gate-color));border:3px solid #fff4c8;outline:2px solid var(--gate-dark);font-size:33px;font-weight:900;color:var(--gate-dark);box-shadow:0 4px 0 #143c5480;transform:rotate(8deg)}.gate-join .gate-medallion{right:auto;left:18%;transform:rotate(-8deg)}.gate-spark{position:absolute;color:var(--gate-color);text-shadow:0 0 15px var(--gate-color);font-size:30px;animation:gate-twinkle 3s ease-in-out infinite}.spark-one{top:30px;left:19%}.spark-two{top:20px;right:23%;font-size:23px;animation-delay:-1.4s}.entry-card-copy{text-align:center;margin:19px 0 0}.entry-card-tag{display:inline-block;font-size:15px;letter-spacing:.08em;font-weight:900;color:#815326;background:#efcb8b88;border:1px solid #d1b070;border-radius:20px;padding:4px 15px}.entry-join .entry-card-tag{color:#286789;background:#bfe6f4;border-color:#7fb1c6}.premium-entry .entry-card-copy h2{font-size:30px;margin:10px 0 7px;color:#183f51}.premium-entry .entry-card-copy p{font-size:18px;margin:7px 0 13px}.premium-entry .entry-join>label{font-size:17px;margin:11px 0 8px}.premium-entry .online-entry-actions input{height:72px;margin:0 0 18px;width:100%;max-width:310px;background:linear-gradient(#fff,#f4fcff);border:3px solid #5c8ea7;box-shadow:inset 0 3px 5px #1645601a,0 3px #fff;font-size:36px;letter-spacing:.18em;padding-left:20px;color:#194c69}.premium-entry .online-entry-actions input:focus{outline:3px solid #ffce55;outline-offset:3px}.entry-code-preview{display:flex;justify-content:center;gap:6px;margin:0 0 20px;height:65px;align-items:center}.entry-code-preview i{font-style:normal;display:grid;place-items:center;border:1px solid #c49b48;border-radius:8px;width:37px;height:45px;background:linear-gradient(#fff8d4,#ffe2a1);font-size:21px;color:#ba8131;box-shadow:0 3px #a7763640,inset 0 2px #fffa}.premium-entry .online-entry-actions .entry-start{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0;min-height:62px;font-size:23px;border-radius:18px;padding:12px 20px;margin-top:auto;box-shadow:inset 0 2px #fff9,0 5px #8e552e}.premium-entry .entry-join .entry-start{box-shadow:inset 0 2px #fff9,0 5px #245979}.entry-start>span{font-size:16px}.premium-entry .room-entry-note{background:#d2f3ddbd;border:1px solid #64a492;padding:14px 20px;border-radius:16px;font-size:18px;margin-top:29px;color:#234e5e;box-shadow:inset 0 1px #fff8}.room-entry-note>span{color:#b08827;margin-right:8px}.room-footer{background:transparent;border:0;padding:15px 0;color:#244f5e}.room-footer p{font-size:17px}
@keyframes gate-twinkle{0%,100%{opacity:.5;transform:scale(.85) rotate(-6deg)}50%{opacity:1;transform:scale(1.08) rotate(6deg)}}
@media(max-width:700px){.room-entry-hero{padding:21px 12px;gap:12px}.room-entry-crest{width:44px;height:44px;font-size:32px;outline-offset:3px}.room-entry-hero p{font-size:13px}.room-entry-hero h1{font-size:25px}.room-entry-hero>div>span{font-size:15px}.premium-entry .online-entry-actions{gap:25px}.premium-entry .online-entry-actions>section,.premium-entry .online-entry-actions>form{padding:0 21px 22px}.room-gate-art{width:calc(100% + 42px);height:136px}.room-gate-art>.sprite{width:136px;height:auto}.gate-arch{top:6px;width:122px;height:170px;left:calc(50% - 61px)}.gate-medallion{top:65px;right:17%;width:45px;height:45px;font-size:29px}.gate-join .gate-medallion{left:17%}.premium-entry .room-entry-note{font-size:16px;line-height:1.7}.premium-entry .entry-card-copy h2{font-size:28px}.premium-entry .online-entry-actions .entry-start{font-size:22px}.premium-entry .online-entry-actions input{font-size:32px}.premium-entry .room-my-name{font-size:17px}.entry-code-preview{margin-bottom:17px}}
@media(prefers-reduced-motion:reduce){.gate-spark{animation:none}}
.room-friend-team{align-self:start;position:sticky;top:16px}.room-friend-art>.sprite{width:158px;height:auto}.room-friend-team>.combat-meters{margin-top:12px}.room-ready-panel{border:2px solid #79aa63;border-radius:20px;background:linear-gradient(130deg,#fbffd9,#d4efbb);padding:16px 17px;margin-top:25px;box-shadow:inset 0 0 0 3px #fff8,0 4px #65965355;text-align:center;color:#23583c}.room-ready-panel>p:first-child{font-size:21px;font-weight:900;margin:0 0 12px}.room-ready-states{display:grid;grid-template-columns:1fr 1fr;gap:9px;font-size:15px}.room-ready-states>span{border:1px solid #97b794;background:#fffc;border-radius:12px;padding:8px;color:#4b6863}.room-ready-states b{display:block;font-size:17px}.room-ready-states .is-ready{background:#d5f2b2;color:#276231;border-color:#6fba5a}.room-ready-panel .room-ready.game-button{margin-top:15px;font-size:32px;min-height:80px;border-radius:20px;border:3px solid #e2ffb5;background:linear-gradient(#b3ef67 0%,#61bd43 47%,#29994d 49%,#237843 100%);color:#fffde3;text-shadow:0 2px #236436;outline:2px solid #34683c;box-shadow:inset 0 3px #ffffff99,0 6px #1f5933,0 10px 15px #25533633}.room-ready-panel .room-ready.game-button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px)}.room-ready-panel .room-ready[disabled]{opacity:1;background:linear-gradient(#70b59a,#386b63);outline-color:#4e7c6c;color:#e0ffea;box-shadow:inset 0 2px #fff4,0 4px #31594c}.room-ready-panel .room-ready-hint{font-size:16px;margin:12px 0 0}.room-ready-panel .room-unready{font-size:15px;margin-top:10px;color:#376345}.room-friend-team .friend-techniques{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.room-friend-team .friend-techniques>span{display:flex;flex-direction:column;text-align:center;font-size:14px;padding:8px 5px;line-height:1.4;gap:5px}.room-friend-team .friend-techniques .hand-icon{width:30px;height:30px}@media(max-width:700px){.room-friend-team{position:static}.room-ready-panel .room-ready.game-button{font-size:30px;min-height:76px}.room-ready-states b{font-size:16px}.room-ready-panel{margin-top:21px}.room-ready-panel>p:first-child{font-size:20px}}
.dodge-choice-panel{margin-bottom:14px;padding:10px;border:2px solid #71a5b5;border-radius:16px;background:linear-gradient(130deg,#f3fcff,#d3ebf6);color:#194758;text-align:center}.dodge-choice-panel>button{display:flex;justify-content:center;align-items:center;gap:12px;border:2px solid #c5f4ff;background:linear-gradient(#3f9bbb,#205c81);border-radius:13px;box-shadow:0 3px #1d445f;width:100%;padding:9px 15px;color:#fff8d9;font:900 22px 'M PLUS Rounded 1c','Yu Gothic',sans-serif;cursor:pointer}.dodge-choice-symbol{font-size:31px;color:#ffda82}.dodge-choice-panel small{display:block;font-size:13px;color:#d7f3f5;margin-top:2px}.dodge-choice-panel p{font-size:13px;font-weight:800;line-height:1.5;margin:9px 0 0}.dodge-choice-panel.is-armed{border-color:#c89b3d;background:linear-gradient(#fff6c9,#ffe89e);box-shadow:0 0 0 2px #fff2a966}.dodge-choice-panel.is-armed>button{background:linear-gradient(#eab348,#bb7026);border-color:#ffedab;box-shadow:0 3px #885725}.dodge-choice-panel.is-armed small{color:#fff4c9}.dodge-choice-panel button:disabled{opacity:.55;cursor:default}.dodge-choice-panel button:focus-visible{outline:3px solid #f3bf35;outline-offset:3px}.duel.phase-choose .duel-console{overflow-y:auto}.online-battle .duel-choose-tip{margin-top:5px}@media(min-width:900px){.dodge-choice-panel{padding:8px;margin-bottom:10px}.dodge-choice-panel>button{font-size:20px;padding:7px 10px}.dodge-choice-panel p{font-size:12px;margin-top:7px}}
.draw-damage-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:8px 12px;background:#fff7cc;border:1px solid #c9ab67;border-radius:13px;font-size:14px;color:#325367;text-align:center;margin-top:10px}.draw-damage-breakdown b{display:block;font-size:24px;color:#ab6229}.draw-damage-breakdown small{grid-column:1/-1;font-size:12px}.rps-compact .draw-damage-breakdown{padding:6px;gap:4px;font-size:12px}.rps-compact .draw-damage-breakdown b{font-size:21px}
.draw-damage-breakdown em{font-style:normal;display:inline-block;background:#ffe191;border:1px solid #e0ac49;border-radius:9px;padding:1px 7px;margin-left:4px;color:#8e4c1d}.draw-damage-breakdown small{font-size:14px;font-weight:900;color:#8b581f}
.roulette-word{white-space:nowrap}.arena-roulette{width:396px}.arena-roulette .dodge-wheel-layout{grid-template-columns:1fr 210px 1fr}.arena-roulette .roulette-shell{width:210px}.arena-roulette .roulette-rivets i{transform:rotate(calc(var(--i)*15deg)) translateY(-98px)}.arena-roulette .roulette-word{font-size:19px}.arena-roulette .roulette-hub{width:33px;height:33px}@media(max-width:700px){.arena-roulette{width:285px}.arena-roulette .dodge-wheel-layout{grid-template-columns:1fr 156px 1fr}.arena-roulette .roulette-shell{width:156px}.arena-roulette .roulette-rivets i{transform:rotate(calc(var(--i)*15deg)) translateY(-71px)}.arena-roulette .roulette-word{font-size:15px}.arena-roulette .roulette-hub{width:28px;height:28px}}

/* The roulette overlays the intact arena; actors retain their normal proportions. */
.has-dodge .duel-arena::after{content:'';position:absolute;inset:0;background:#041523b8;z-index:7;pointer-events:none}
.arena-roulette{inset:0;transform:none;width:auto;max-width:none;z-index:11;display:grid;place-items:center;pointer-events:none}
.arena-roulette .dodge-wheel-panel{width:min(430px,95%);padding:8px 0;border:0;background:none;box-shadow:none;text-align:center}
.arena-roulette .dodge-wheel-layout{grid-template-columns:45px minmax(0,290px) 45px;justify-content:center;gap:10px}
.arena-roulette .roulette-shell{width:100%;box-shadow:0 0 0 5px #583c28,0 0 0 8px #ffe2a0,0 13px 35px #0009,0 0 50px #81dfff33}
.arena-roulette .roulette-rivets i{transform:rotate(calc(var(--i)*15deg)) translateY(-135px)}
.arena-roulette .roulette-word{font-size:25px;white-space:nowrap}
.arena-roulette .roulette-hub{width:39px;height:39px}
.arena-roulette .dodge-team{min-width:0;aspect-ratio:1;display:grid;place-items:center;border:2px solid currentColor;border-radius:50%;background:#092b44c9}
.arena-roulette .dodge-team b{font-size:27px}
.dodge-cue{font-size:21px;font-weight:900;margin:0 0 14px;text-shadow:0 2px 8px #000}.dodge-cue.is-stopping{visibility:hidden}
.arena-roulette .dodge-outcome{font-size:30px;height:42px;min-height:0;margin:12px 0 0;text-shadow:0 2px 7px #000}
.has-dodge .duel-learning-note,.has-dodge #quiz-cheer,.has-dodge #quiz-charge-dots,.has-dodge .quiz-charge>div{display:none}
.dodge-choice-panel,.dodge-choice-panel.is-armed{display:flex;justify-content:flex-end;background:none;border:0;box-shadow:none;margin:13px 0 0;padding:0}
.dodge-choice-panel>button{display:inline-flex;gap:6px;width:auto;min-height:40px;padding:5px 13px;background:#e6f4f5;border:1px solid #6c9ca9;box-shadow:0 2px #7da7ae;border-radius:20px;color:#27546a;font:900 16px 'M PLUS Rounded 1c','Yu Gothic',sans-serif}
.dodge-choice-panel small{display:inline;font-size:12px;color:inherit;margin:0}.dodge-choice-panel.is-armed>button{background:#fff1b3;color:#6b4d1d;border-color:#c29842;box-shadow:0 2px #bba573}
.dodge-choice-panel button:disabled{background:#d3d7d8;border-color:#b1b6b7;box-shadow:none;color:#7c8589;opacity:1}
@media(max-width:700px){.arena-roulette .dodge-wheel-panel{width:min(350px,97%)}.arena-roulette .dodge-wheel-layout{grid-template-columns:34px minmax(0,190px) 34px;gap:8px}.arena-roulette .roulette-rivets i{transform:rotate(calc(var(--i)*15deg)) translateY(-88px)}.arena-roulette .roulette-word{font-size:19px}.arena-roulette .roulette-hub{width:29px;height:29px}.arena-roulette .dodge-team b{font-size:21px}.dodge-cue{font-size:17px;margin-bottom:11px}.arena-roulette .dodge-outcome{font-size:23px;height:30px;margin-top:10px}.dodge-choice-panel>button{min-height:40px}}

.fighter-stock .stock-hand{font:inherit;color:inherit;cursor:pointer;transition:filter .15s,transform .15s}.fighter-stock .stock-hand:hover{filter:brightness(1.2);transform:translateY(-2px)}.fighter-stock .stock-hand.used{pointer-events:auto}.stock-hand:focus-visible,.duel-hands button:focus-visible{outline:3px solid #ffe593;outline-offset:3px}.stock-hand em{font-size:8px!important;white-space:nowrap}
.duel-hands button{font:inherit;color:inherit;display:flex;gap:8px;align-items:center;cursor:pointer}.duel-hands button:disabled{cursor:default}
.battle-move-popover{position:fixed;inset:0;margin:auto;width:min(340px,88vw);height:fit-content;padding:24px;border:3px solid #d6b877;border-radius:24px;background:linear-gradient(145deg,#fffbe7,#e5f6eb);color:#1c4a54;text-align:center;box-shadow:0 18px 70px #00172770;font-family:'M PLUS Rounded 1c','Yu Gothic',sans-serif}.battle-move-popover::backdrop{background:#08232e66}.move-popover-close{position:absolute;right:10px;top:6px;width:36px;height:36px;border:0;background:none;color:#436475;font-size:28px;cursor:pointer}.move-popover-icon{display:block;width:70px;margin:0 auto 8px}.move-popover-icon svg{width:100%;height:70px}.battle-move-popover small{display:block;font-size:14px;color:#587b7d}.battle-move-popover h3{font-size:25px;margin:10px 0}.battle-move-popover p{font-size:21px;font-weight:800;line-height:1.65;margin:0}

.battle-move-popover .move-popover-icon .hand-icon{width:64px;height:64px}.battle-move-popover p{text-wrap:balance}

.dodge-cue small{display:block;font-size:16px;margin-top:4px}.dodge-cue small.is-stopping{visibility:hidden}.arena-roulette .dodge-outcome{text-wrap:balance;white-space:nowrap;font-size:clamp(20px,2.2vw,29px)}@media(max-width:700px){.dodge-cue{margin-bottom:8px}.dodge-cue small{font-size:13px;margin-top:2px}.arena-roulette .dodge-outcome{font-size:21px}}

/* Every character sheet has square cells; the frame supplies the decoration. */
.room-character-art,.room-friend-art{position:relative;isolation:isolate;aspect-ratio:1;border:2px solid #88b4a7;border-radius:23px;background:radial-gradient(ellipse at 50% 80%,#fceab288,transparent 62%),linear-gradient(145deg,#204e61,#19394e);box-shadow:inset 0 0 0 4px #e6eed233,inset 0 1px #fff8,0 5px 0 #c2d0bd;overflow:hidden}
.room-character-art:after,.room-friend-art:after{content:'';position:absolute;z-index:-1;left:12%;right:12%;bottom:9%;height:17%;border-radius:50%;border:2px solid #e8d58c66;background:#d6d79833;box-shadow:0 0 20px #e7d8a344}
.room-character-art>.sprite{width:100%;height:auto;aspect-ratio:1;max-width:100%}.room-friend-art{width:164px;margin:0 auto}.room-friend-art>.sprite{width:100%;height:auto;aspect-ratio:1}
.room-my-team,.room-friend-team{box-shadow:inset 0 0 0 4px #fff8,0 6px #285a6536,0 12px 20px #173e5412}.room-player-heading{padding-bottom:15px;margin-bottom:5px}.room-character .combat-meters{padding:11px 12px;border:1px solid #c6d3b5;border-radius:14px;background:#fffdf2;margin-top:12px}.room-character .combat-meter{font-size:14px}.room-character .combat-meter b{font-size:23px}.room-character .combat-style{font-size:14px;margin-top:8px}
.room-gate-art{height:154px;align-items:center}.room-gate-art>.sprite{width:150px;height:auto;aspect-ratio:1;margin-bottom:0}.room-entry-hero{padding:17px 24px}.room-entry-hero h1{font-size:clamp(28px,3.6vw,38px)}.premium-entry .room-my-name{margin:17px auto}.entry-card-copy{margin-top:14px}.premium-entry .entry-card-copy h2{margin-top:7px}.online-message:empty{display:none}
@media(max-width:700px){.room-character .combat-meters{padding:8px;gap:10px 8px}.room-character .combat-meter{font-size:11px}.room-character .combat-meter b{font-size:20px}.room-character-art{border-radius:17px}.room-gate-art{height:145px}.room-gate-art>.sprite{width:140px}.room-entry-hero{padding:20px 10px}.room-entry-hero h1{font-size:25px}}

.room-friend-empty{min-height:210px;gap:12px;padding:22px 10px}.room-friend-empty>span{font-size:62px;line-height:1}.room-friend-empty p{font-size:20px;line-height:1.6;margin:0}.room-ready-panel{margin-top:18px}

@media(max-width:600px){.room-character{grid-template-columns:88px minmax(0,1fr);gap:12px}.room-character>div:not(.room-character-art){display:contents}.room-character-art{grid-column:1;grid-row:1/3;width:88px;align-self:center}.room-character label,.room-character select{grid-column:2;margin:0}.room-character label{font-size:16px;align-self:end}.room-character .combat-meters{grid-column:1/-1;width:100%;margin:0;padding:12px;gap:13px 16px}.room-character .combat-meter{font-size:13px}.room-character .combat-meter span{white-space:nowrap}.room-character .combat-style{grid-column:1/-1;margin:0;text-align:center}}

/* The room code is a shareable invitation, with six unmistakable digits. */
.room-code-header{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:14px;padding:20px 24px;text-align:center}
.room-code-card{width:100%;max-width:560px;min-width:0;margin:0 auto;padding:14px 18px 12px;border:2px solid #dfc586;border-radius:20px;background:linear-gradient(145deg,#fffde9,#fff1bc);color:#214b59;box-shadow:inset 0 2px #fff,0 4px 0 #092e4140}
.room-code-card h2{display:flex;align-items:center;justify-content:center;gap:9px;font-size:20px;font-weight:900;margin:0 0 9px;line-height:1.4;color:#28515d}
.room-code-card h2 small{font-size:13px;padding:2px 8px;border-radius:20px;background:#e5d49c;color:#68542b;font-weight:900}
.room-code-share{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px}
.room-code-digits{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;user-select:all}
.room-code-digits>span{display:grid;place-items:center;min-width:0;height:63px;border:2px solid #ba9144;border-radius:10px;background:linear-gradient(#fff,#fff9db);box-shadow:0 3px #cbac6b,inset 0 2px #fff;color:#173e53;font-size:43px;font-weight:1000;font-variant-numeric:tabular-nums;line-height:1;font-family:'M PLUS Rounded 1c','Yu Gothic',sans-serif}
.room-code-copy{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 14px;min-height:52px;border:2px solid #72a8a5;border-radius:13px;background:linear-gradient(#effcf8,#c9e9e1);box-shadow:0 3px #507e83;color:#1b5361;font:900 16px 'M PLUS Rounded 1c','Yu Gothic',sans-serif;white-space:nowrap;cursor:pointer}
.room-code-copy svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.room-code-copy:hover{background:#eaffdb}.room-code-copy:active{transform:translateY(2px);box-shadow:0 1px #507e83}.room-code-copy.copied{background:#d8efbb;border-color:#7ba356;color:#355829}.room-code-help{font-size:17px;font-weight:800;line-height:1.5;margin:11px 0 0;color:#69552b}
@media(max-width:900px){.room-code-header{grid-template-columns:1fr;padding:18px;gap:14px}.room-code-card{width:100%;max-width:600px;margin:0 auto}.room-code-header h1{font-size:28px}.room-code-header>div>span{font-size:14px}}
@media(max-width:520px){.room-code-header{padding:14px;gap:12px;border-radius:20px}.room-code-card{padding:13px 11px 12px;border-radius:16px}.room-code-card h2{font-size:18px;justify-content:center}.room-code-card h2 small{font-size:12px}.room-code-share{grid-template-columns:1fr;gap:12px}.room-code-digits{gap:4px}.room-code-digits>span{height:54px;font-size:34px;border-radius:8px}.room-code-copy{justify-self:center;min-height:44px;padding:8px 17px}.room-code-help{text-align:center;font-size:14px;margin-top:9px}}
.enemy-ability-marker{position:absolute;top:12px;right:14px;z-index:6}
.enemy-ability-chip{display:grid;gap:2px;min-width:92px;min-height:62px;padding:6px 10px;border:2px solid #93bac1;border-radius:15px;background:#12384bea;box-shadow:0 3px 8px #00132066;color:#cdeaf1;font:inherit;cursor:pointer}
.enemy-ability-chip>span{display:flex;align-items:center;justify-content:center;gap:7px}.enemy-ability-chip .battle-icon{width:25px;height:25px}.enemy-ability-chip b{font:900 26px/1.1 Arial,sans-serif}.enemy-ability-chip small{font-size:11px;font-weight:900;line-height:1.3;white-space:nowrap}.enemy-ability-chip.active{color:#fff0b7;border-color:#f2d178;background:#4e4a2ded}.enemy-ability-chip.spent{color:#abb5bd;border-color:#768b99;background:#334853}.enemy-ability-chip.spent b{text-decoration:line-through}.enemy-ability-chip:hover{filter:brightness(1.16)}.enemy-ability-chip:focus-visible{outline:3px solid #fff0a4;outline-offset:4px}
.enemy-ability-popover .ability-detail-icon{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 12px;border:2px solid #ddbd72;border-radius:20px;background:#fff1bb;color:#3b7584}.enemy-ability-popover .ability-detail-icon .battle-icon{width:40px;height:40px}.enemy-ability-popover p{font-size:20px}
.visual-duel .duel-arena:has(.enemy-ability-marker) .enemy-intent{right:126px;max-width:calc(100% - 145px);top:12px}.visual-duel .duel-arena:has(.enemy-ability-marker) .tactic-copy b{font-size:17px}
@media(max-width:650px){.enemy-ability-marker{right:8px;top:8px}.enemy-ability-chip{min-width:80px;min-height:55px;padding:5px 7px;border-radius:12px}.enemy-ability-chip b{font-size:22px}.enemy-ability-chip .battle-icon{width:22px;height:22px}.enemy-ability-chip small{font-size:10px}.visual-duel .duel-arena:has(.enemy-ability-marker) .enemy-intent{right:102px;max-width:calc(100% - 116px);top:8px}.visual-duel .duel-arena:has(.enemy-ability-marker) .tactic-copy b{font-size:14px}}
