/* 3対3バトルの画面（battle3-ui.js）。.b3 の中だけに効く */
.b3{--ink:#2a1f16;--paper2:#fffaf0;--red:#d9482b;--blue:#3d7fc4;--yellow:#e0a91a;--green:#4f9a3c;color:var(--ink);font-weight:700}
.b3-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.b3-wave{background:var(--ink);color:var(--paper2);padding:4px 10px;font-size:15px}
.b3-bonus{font-size:12px;border:2.5px solid var(--ink);background:var(--paper2);padding:2px 6px}
.b3-order{display:flex;gap:4px;flex:1;min-width:0;overflow:hidden}
.b3-order .oi{width:34px;height:34px;image-rendering:pixelated;background:var(--paper2);border:2.5px solid var(--ink);flex:none}
.b3-order .oi.e{background:#3a2d24}
.b3 button{font:inherit;color:var(--ink);background:var(--paper2);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);padding:6px 12px;cursor:pointer;border-radius:0}
.b3 button:active{transform:translateY(4px);box-shadow:none}
.b3 button.on{background:var(--red);color:#fff}
.b3 button:disabled{opacity:.45;cursor:default;transform:none;box-shadow:0 4px 0 var(--ink)}
.b3-stage{position:relative;width:100%;aspect-ratio:16/10;border:3px solid var(--ink);overflow:hidden;background:#8fcbe3}
.b3-stage>canvas.bg{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated}
.b3-unit{position:absolute;transform:translate(-50%,-100%);width:17%;transition:left .18s ease-out}
.b3-unit .sp{width:100%;display:block;image-rendering:pixelated}
.b3-unit.a .sp{transform:scaleX(-1)}
/* ポーズの絵は右向きに描いてある（ふだんの絵は左向き）。味方はそのまま、敵は反転（2026-10-15 ユーザー：攻撃のとき左を向いていた） */
.b3-unit.a .sp.pose{transform:none}.b3-unit.e .sp.pose{transform:scaleX(-1)}
.b3-unit .bars{position:absolute;left:6%;right:6%;top:-24px}
.b3-unit .nm{font-size:11px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:1px 1px 0 var(--paper2),-1px 1px 0 var(--paper2),1px -1px 0 var(--paper2),-1px -1px 0 var(--paper2)}
.b3-unit .tag{display:inline-block;width:11px;height:11px;border:2px solid var(--ink);background:var(--el);vertical-align:-1px;margin-right:3px}
.b3-bar{height:7px;border:2px solid var(--ink);background:#5a463a;margin-top:2px}
.b3-bar i{display:block;height:100%;background:var(--red);transition:width .25s}
.b3-bar.g{height:5px;margin-top:1px}.b3-bar.g i{background:var(--yellow);transition:none}
.b3-unit .fx{position:absolute;left:0;bottom:100%;margin-bottom:2px;display:flex;gap:1px}
.b3-unit .fx img{width:15px;height:15px;image-rendering:pixelated;display:block}
.b3-unit.down{opacity:0;transition:opacity .4s}
.b3-unit.b3-pick{cursor:pointer}
.b3-unit.b3-pick .bars{outline:3px solid var(--red);outline-offset:2px;background:rgba(255,250,240,.6)}
.b3-unit.turn::after{content:'';position:absolute;left:50%;bottom:-8px;width:60%;height:6px;transform:translateX(-50%);background:var(--red)}
.b3-unit.hit .sp{animation:b3shake .3s}
.b3-unit.flash .sp{filter:brightness(4)}
.b3-unit.awake .sp{filter:drop-shadow(0 0 0 #000) drop-shadow(3px 0 0 #1a1210) drop-shadow(-3px 0 0 #1a1210) drop-shadow(0 -4px 0 #6b1d12)}
@keyframes b3shake{0%,100%{translate:0}25%{translate:-6px}75%{translate:6px}}
/* ダメージの数字は体のまん中に、いちばん手前に出す（HPや行動バーとかぶらない） */
.b3-pop{position:absolute;z-index:60;transform:translate(-50%,-50%);font-size:24px;color:#fff;-webkit-text-stroke:5px var(--ink);paint-order:stroke;pointer-events:none;animation:b3pop .8s forwards;white-space:nowrap}
.b3-pop.crit{font-size:32px;color:#ffd84a}.b3-pop.heal{color:#a8ef8a}.b3-pop.small{font-size:15px}
@keyframes b3pop{0%{translate:0 10px;scale:.6}20%{translate:0 -6px;scale:1.15}35%{scale:1}100%{translate:0 -26px;opacity:0}}
.b3-band{position:absolute;z-index:55;left:0;right:0;top:6%;text-align:center;pointer-events:none}
.b3-band span{display:inline-block;background:var(--ink);color:var(--paper2);font-size:20px;padding:6px 24px;border-top:3px solid var(--red);border-bottom:3px solid var(--red);animation:b3band .9s forwards}
.b3-band.awake span{background:#120c0a;border-color:#6b1d12;font-size:26px}
@keyframes b3band{0%{scale:1 0}15%{scale:1 1}80%{opacity:1}100%{opacity:0}}
.b3-big{position:absolute;z-index:70;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:rgba(42,31,22,.55)}
.b3-big b{font-size:44px;color:#fff;-webkit-text-stroke:8px var(--ink);paint-order:stroke}
.b3-panel{position:absolute;z-index:65;left:0;right:0;bottom:0;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:flex-end;gap:6px;pointer-events:none}
.b3-panel>*{pointer-events:auto}
.b3-ask{align-self:stretch;font-size:12px;background:rgba(42,31,22,.85);color:#fffaf0;padding:4px 10px;font-size:13px}
.b3-ask b{margin-right:8px;color:#ffd84a}
.b3-ask small{display:block;font-weight:500;font-size:11px}
.b3-skills{display:grid;grid-template-columns:repeat(2,minmax(120px,170px));gap:6px}
.b3-skills button{text-align:left;padding:3px 8px;font-size:13px;line-height:1.15;box-shadow:0 3px 0 var(--ink);border-width:2.5px}
.b3-skills button small{display:block;font-weight:500;font-size:10px}
.b3-skills button.sel{background:var(--yellow)}
.b3 button.b3-awake{background:#120c0a;color:#fff}
.b3 button.b3-awake.on{background:#6b1d12}
.b3 .e-red{--el:var(--red)}.b3 .e-blue{--el:var(--blue)}.b3 .e-yellow{--el:var(--yellow)}.b3 .e-green{--el:var(--green)}.b3 .e-black{--el:#1a1210}
@media (max-width:640px){.b3-stage{aspect-ratio:3/4}.b3-order{order:3;flex-basis:100%}.b3-skills{grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch}.b3-unit{width:21%}.b3-unit .nm{font-size:9px}}
/* 修行の期末：戦う前の顔ぶれ */
.b3-versus{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin:8px 0}
.b3-side{margin:0 0 4px;font-size:12px}
.b3-lineup{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.b3-lineup li{border:2.5px solid #2a1f16;background:#fffaf0;padding:5px 8px}
.b3-lineup li b{font-size:14px}
.b3-lineup li small{display:block;font-weight:500;font-size:11px}
.b3-chip{display:inline-block;width:11px;height:11px;border:2px solid #2a1f16;background:var(--el);margin-right:4px;vertical-align:-1px}
.b3-lineup .e-red,.b3-chip.e-red{--el:#d9482b}.b3-chip.e-blue{--el:#3d7fc4}.b3-chip.e-yellow{--el:#e0a91a}.b3-chip.e-green{--el:#4f9a3c}
@media (max-width:640px){.b3-versus{grid-template-columns:1fr}.b3-versus .vs{text-align:center}}

/* ---- ゆぐら登り（塔） ---- */
.mode-tower{grid-column:1/-1;min-height:130px;background:var(--green,#4f9a3c)}
.mode-tower::before{content:"";position:absolute;right:8%;top:-10%;bottom:-10%;width:90px;background:repeating-linear-gradient(0deg,#0002 0 18px,transparent 18px 36px),#6b4a2b;border-left:4px solid var(--ink);border-right:4px solid var(--ink)}
.mode-tower .mode-tw{position:absolute;right:calc(8% + 100px);top:14px;font-size:44px;font-weight:900;color:#fff;-webkit-text-stroke:7px var(--ink);paint-order:stroke fill}
.mode-tower .mode-tw small{font-size:20px;background:none;padding:0;-webkit-text-stroke:5px var(--ink)}
.tower .tw-lead{font-weight:500;margin:8px 0 12px}
.tw-result{border:3px solid var(--ink);padding:8px 12px;margin:0 0 12px;font-weight:800;background:#bfe0a8}
.tw-result.lose{background:#f2a593}
.tw-body{display:grid;grid-template-columns:170px 1fr;gap:14px;align-items:start}
.tw-floors{list-style:none;margin:0;padding:0;border:3px solid var(--ink);background:#6b4a2b}
.tw-floors li{display:flex;flex-direction:column;padding:5px 10px;border-bottom:3px solid var(--ink);background:#fffaf0}
.tw-floors li:last-child{border-bottom:0}
.tw-floors li.done{background:#d8cfb8;color:#6b5d48}
.tw-floors li.now{background:#ffd76a}
.tw-floors li.mid b::after{content:"強敵";margin-left:.5em;font-size:11px;color:#b03a1f}
.tw-floors li.boss b::after{content:"主";font-size:11px;color:#fff;background:#b03a1f;padding:0 4px;margin-left:4px}
.tw-floors small{font-weight:500;font-size:11px}
.tw-next{font-size:18px;margin:0 0 6px}
.tw-next b{font-size:26px}
.tw-foes{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.tw-foes li{display:flex;align-items:center;gap:4px;border:3px solid var(--ink);background:#fffaf0;padding:2px 8px 2px 2px;font-size:13px}
.tw-foes li.boss{background:#f2a593}
.tw-foes img{width:40px;height:40px;object-fit:contain}
.tw-sub{margin:0 0 6px}
.tw-main .sb-cands{margin-bottom:12px}
.tw-note{font-weight:500;font-size:12px}
.tw-clear{font-size:22px}
@media(max-width:760px){.tw-body{grid-template-columns:1fr}.tw-floors{display:flex;overflow-x:auto}.tw-floors li{border-bottom:0;border-right:3px solid var(--ink);min-width:84px}.mode-tower .mode-tw{font-size:34px;right:calc(8% + 96px)}}
.dv-stat{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 10px;font-size:13px}
.dv-stat span{border:3px solid var(--ink);background:#fffaf0;padding:2px 10px}
.dv-stat b{font-size:20px}
.dv-stat small{font-weight:500;font-size:11px}

/* ---- 根の国くだり ---- */
.band-black{background:#2a2220;color:#fff}
.b3-chip.e-black{--el:#2a2220}
.mode-dive{grid-column:1/-1;min-height:130px;background:#3a2c3e}
.mode-dive::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 120%,#000a 0 30%,transparent 31%),repeating-linear-gradient(100deg,transparent 0 40px,#0003 40px 46px)}
.mode-dive .mode-tw{position:absolute;right:16px;top:14px;font-size:44px;font-weight:900;color:#fff;-webkit-text-stroke:7px var(--ink);paint-order:stroke fill}
.mode-dive .mode-tw small{font-size:20px;background:none;padding:0;-webkit-text-stroke:5px var(--ink)}
.dive .dv-lead{font-weight:500;margin:8px 0 12px}
.dive .dv-go{margin-top:12px}
.dv-run{display:grid;grid-template-columns:240px 1fr;gap:14px;align-items:start;margin-top:10px}
.dv-side{border:3px solid var(--ink);background:#efe6d2;padding:8px}
.dv-side .dv-stat span{padding:2px 6px}
.dv-mate{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:6px;align-items:center;margin-bottom:6px}
.dv-mate img{grid-row:1/3;width:40px;height:40px;object-fit:contain}
.dv-mate b{font-size:13px}
.dv-mate .b3-bar{height:8px;border:2px solid var(--ink);background:#5a4a3a}
.dv-mate .b3-bar i{display:block;height:100%;background:#6cc04a}
.dv-mate.down{opacity:.4}.dv-mate.down b::after{content:"たおれた";margin-left:.5em;font-size:11px;color:#b03a1f}
.dv-h{margin:10px 0 4px;font-size:13px}
.dv-boons{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.dv-boons li{font-size:11px;border:2px solid var(--ink);background:#ffd76a;padding:1px 6px}
.dv-boons li.none{background:none;border-style:dashed;font-weight:500}
.dv-ask{font-size:20px;margin:0 0 10px}
.dv-msg{border:3px solid var(--ink);background:#bfe0a8;padding:6px 10px;margin:0 0 10px}
.dv-doors,.dv-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.dv-door,.dv-card{font:inherit;color:var(--ink);text-align:left;border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);background:#fffaf0;padding:12px;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-height:120px}
.dv-door:active,.dv-card:active{transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}
.dv-door .ic{font-size:30px;line-height:1}
.dv-door b,.dv-card b{font-size:18px}
.dv-door small,.dv-card small{font-weight:500;font-size:12px}
.dv-door.d-elite{background:#f2c2b5}.dv-door.d-rest{background:#cfe6d0}.dv-door.d-chest{background:#ffe8a0}.dv-door.d-boss{background:#2a2220;color:#fff}
.dv-card{background:#fff3cf;border-color:#7a4f12}
.dv-card em{font-style:normal;font-size:11px;margin-top:auto}
.dv-card.k-red{border-left:10px solid var(--red)}.dv-card.k-blue{border-left:10px solid var(--blue)}.dv-card.k-yellow{border-left:10px solid var(--yellow)}.dv-card.k-green{border-left:10px solid var(--green)}
.dv-back{margin-top:14px}
@media(max-width:760px){.dv-run{grid-template-columns:1fr}}

/* ---- ゆら玉・ゆら玉掘り ---- */
.mode-mine{grid-column:1/-1;min-height:130px;background:#a8761e}
.mode-mine::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 50%,#ffe9a8 0 7%,#d9a23a 8% 12%,transparent 13%),radial-gradient(circle at 76% 70%,#ffd0e0 0 4%,transparent 5%),radial-gradient(circle at 94% 22%,#bfe6ff 0 4%,transparent 5%)}
.mode-mine .mode-tw{position:absolute;right:20%;top:14px;font-size:44px;font-weight:900;color:#fff;-webkit-text-stroke:7px var(--ink);paint-order:stroke fill}
.mode-mine .mode-tw small{font-size:20px;background:none;padding:0;-webkit-text-stroke:5px var(--ink)}
.yura .dv-lead,.mine .dv-lead{font-weight:500;margin:8px 0 12px}
.yr-recs{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px}
.yr-recs .sb-cand{min-width:120px}
.yr-sel{display:grid;grid-template-columns:1fr 260px;gap:12px;align-items:start;margin-bottom:12px}
.yr-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.yr-empty{border:3px dashed var(--ink);min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#efe6d2}
.yr-empty b{font-size:26px}.yr-empty small{font-weight:500;font-size:11px}
.yr-stats{border:3px solid var(--ink);background:#fffaf0;padding:8px}
.yr-stats table{width:100%;border-collapse:collapse;font-size:13px}
.yr-stats th{text-align:left}.yr-stats td{text-align:right;padding:2px 4px}
.yr-stats td b{color:#1f7a2a}
.yr-setl{font-size:12px;margin:8px 0 0}.yr-setl span{display:inline-block;background:#ffd76a;border:2px solid var(--ink);padding:0 4px;margin:2px}
.yr-filter{display:flex;gap:6px;margin-bottom:8px}
.yr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}
.yr-item{border:3px solid var(--ink);background:#fffaf0;padding:6px 8px;display:flex;flex-direction:column;gap:2px;font-size:12px;border-left-width:10px}
.yr-item.g0{border-left-color:#9a9184}.yr-item.g1{border-left-color:#4f9a3c}.yr-item.g2{border-left-color:#3d7fc4}.yr-item.g3{border-left-color:#c0392b;background:#fff1e0}
.yr-head{display:flex;align-items:center;gap:4px}.yr-head b{font-size:13px;flex:1}
.yr-grade{border:2px solid var(--ink);padding:0 4px;font-size:11px}
.yr-lv{font-weight:900}
.yr-main{font-size:14px;font-weight:900}
.yr-subs{list-style:none;margin:0;padding:0;font-weight:500}.yr-subs .none{color:#8a7d68}
.yr-on{font-weight:500;color:#7a4f12}
.yr-acts{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.yr-help{margin-top:12px;font-size:13px}
.mn-places{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:8px}
.mn-place{font:inherit;color:var(--ink);text-align:left;border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);background:#fffaf0;padding:10px;display:flex;flex-direction:column;gap:2px;cursor:pointer}
.mn-place.on{background:#ffd76a}.mn-place b{font-size:18px}.mn-place small{font-weight:500;font-size:12px}
.mn-steps{display:flex;flex-wrap:wrap;gap:4px}
.mn-go{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}
.mn-log{margin:6px 0 0;padding-left:18px;font-weight:500;font-size:12px}
@media(max-width:760px){.yr-sel{grid-template-columns:1fr}.mode-mine .mode-tw{right:24%;font-size:34px}}
.grant{display:flex;gap:14px;align-items:center}.grant>.mon-img,.grant>svg{width:110px;height:110px;flex:none;object-fit:contain}
.yr-lock{font-size:10px;background:var(--ink);color:#fff;padding:0 4px}
.yr-filter{flex-wrap:wrap;align-items:center}
.yr-sortl{font-size:12px;margin-left:10px}
/* チュートリアルの吹き出し（2026-10-08）。戦闘を止めて読む */
.b3-tip{position:absolute;z-index:80;left:6%;right:6%;bottom:4%;background:var(--paper2,#fffaf0);color:var(--ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:12px 14px 10px;font-size:14px;line-height:1.6;font-weight:700}
.b3-tip p{margin:0 0 8px;white-space:pre-line}
.b3-tip button{display:block;margin-left:auto;background:var(--red);color:#fff;border:2px solid var(--ink);font-weight:900;padding:5px 16px}
.b3-tip.small{bottom:auto;top:12%;left:20%;right:20%;text-align:center;pointer-events:none;padding:8px 10px;font-size:13px}
.b3-stage canvas.bg{object-fit:cover;object-position:50% 70%}
/* 背景の絵に負けないように、キャラを大きく・ふちどり・足もとの影（2026-10-09） */
.b3-unit{width:26%}
.b3-unit .sp{filter:drop-shadow(2px 0 0 #1a120c) drop-shadow(-2px 0 0 #1a120c) drop-shadow(0 2px 0 #1a120c) drop-shadow(0 -2px 0 #1a120c)}
.b3-unit::before{content:'';position:absolute;left:12%;right:12%;bottom:-4%;height:10%;border-radius:50%;background:rgba(26,18,12,.45);z-index:-1}
.b3-unit .nm{font-size:12px;font-weight:900}
/* ゆぐらを登っている感じ（2026-10-09 洗い出し32）：幹にかかった枝の札。上ほど高い階 */
@media(max-width:760px){
 .tw-floors{display:flex!important;flex-direction:column;overflow:visible!important;position:relative;background:none!important;border:0!important;padding:4px 0!important;gap:6px}
 .tw-floors::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:46px;margin-left:-23px;background:#7a5230;border-left:4px solid #2a1f16;border-right:4px solid #2a1f16;z-index:0}
 .tw-floors li{position:relative;z-index:1;width:56%;min-width:0!important;border:3px solid #2a1f16!important;box-shadow:0 3px 0 #2a1f16;padding:3px 8px!important}
 .tw-floors li:nth-child(odd){align-self:flex-start;margin-left:2%}
 .tw-floors li:nth-child(even){align-self:flex-end;margin-right:2%}
 .tw-floors li.now{outline:3px solid #e8502a;outline-offset:2px}
}
@media(max-width:760px){.tw-floors li{width:42%}.tw-floors::before{width:60px;margin-left:-30px}.tw-floors li:nth-child(odd)::after,.tw-floors li:nth-child(even)::after{content:"";position:absolute;top:50%;width:18px;height:8px;background:#7a5230;border:3px solid #2a1f16;margin-top:-7px}.tw-floors li:nth-child(odd)::after{right:-22px}.tw-floors li:nth-child(even)::after{left:-22px}}

/* 2026-10-09 スマホ：相手をえらぶ帯が敵にかぶってタップできなかった → 帯はタップを通す */
.b3-ask{pointer-events:none!important}
.b3-unit{-webkit-tap-highlight-color:transparent}
/* ブルの玉磨き（ゆら結晶 → ゆら玉。2026-10-12） */
.yr-polish{display:flex;align-items:center;gap:10px;border:3px solid var(--ink);background:#f6ead2;padding:6px 10px;margin:6px 0}
.yr-polish img{width:56px;height:56px;object-fit:contain}
.yr-polish div{flex:1;display:flex;flex-direction:column;gap:2px}
.yr-polish small{font-size:12px;line-height:1.4}
.yr-item.yr-cry{background:#f3efe6;border-style:dashed;border-left-style:solid}
/* 2026-10-12 坑道ページの作りなおし */
.mine .mn-hero{position:relative;margin:0 -12px 10px;height:190px;overflow:hidden;border-bottom:4px solid #2a1f16;background:#2a1f16}
.mine .mn-hero-art{width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block}
.mine .mn-hero-moji{position:absolute;left:10px;top:10px;width:58%;max-width:260px;filter:drop-shadow(0 3px 0 #2a1f16)}
.mine .mn-purse{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-around;gap:4px;padding:5px 6px 6px;background:linear-gradient(#3a2a1ce6,#2a1f16f2);border-top:3px solid #8a6a3a;color:#fff6df;font-size:11px;font-weight:700}
.mine .mn-purse span{display:flex;align-items:baseline;gap:3px;white-space:nowrap}
.mine .mn-purse b{font-family:var(--game-font);font-size:18px;color:#ffd76a}.mine .mn-purse i{font-style:normal;opacity:.8}
.mine .mn-purse .ico{width:18px;height:18px;align-self:center}
.mine .mn-places{grid-template-columns:1fr 1fr;gap:8px}
.mine .mn-place{position:relative;background:none;box-shadow:none;border:0;border-style:solid;border-width:16px 13px 14px;border-image:url(art/ui/frame_v3.png) 142 110 110 fill/16px 13px 14px stretch;padding:2px 2px 4px;gap:3px;filter:brightness(.72) saturate(.6) drop-shadow(0 3px 0 #2a1f16);transition:filter .15s,transform .15s}
.mine .mn-place.on{filter:drop-shadow(0 0 8px #ff9a3a) drop-shadow(0 4px 0 #2a1f16);transform:translateY(-3px)}
.mine .mn-place b{font-family:var(--game-font);font-size:16px;line-height:1.2}
.mine .mn-place small{font-size:11px;line-height:1.3}
.mine .mn-sets{display:flex;flex-wrap:wrap;gap:3px}
.mine .mn-sets i{font-style:normal;font-size:10px;font-weight:900;padding:0 5px;color:#fff6df;background:#7a2a18}
.mine .mn-raimei .mn-sets i{background:#2d4e86}
.mine .mn-place em{font-style:normal;font-size:10px;color:#6b4a2a;margin-top:1px}
.mine .mn-place.on::after{content:"ここに入る";position:absolute;right:-6px;top:-14px;font-size:10px;font-weight:900;color:#fff6df;background:#c0392b;padding:1px 6px;transform:rotate(4deg)}
.mine .mn-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 8px}
.mine .mn-step{position:relative;min-height:0;height:44px;font-size:16px;padding:0}
.mine .mn-step.locked{display:flex;align-items:center;justify-content:center;height:40px;margin-top:2px;background:#4a4038;border:2px solid #2f2822;color:#a89a88;font-family:var(--game-font);font-weight:900;font-size:15px;cursor:default}
.mine .mn-done{position:absolute;right:-4px;top:-8px;width:22px;height:22px;border-radius:50%;background:#c0392b;color:#fff6df;font-style:normal;font-size:12px;line-height:22px;text-align:center;border:2px solid #fff6df;transform:rotate(-12deg);-webkit-text-stroke:0}
.mine .mn-info{margin:10px 0 4px;padding:8px 10px;background:#fbf3df;border:2px solid #5a3a22}
.mine .mn-info p{margin:0 0 6px;font-size:13px}.mine .mn-info p b{font-family:var(--game-font);font-size:17px}.mine .mn-info em{font-style:normal;color:#c0392b;font-weight:900}
.mine .mn-odds{width:100%;border-collapse:collapse;text-align:center;font-size:13px}
.mine .mn-odds th{font-size:11px;color:#5a3a22;padding:1px}.mine .mn-odds td{font-family:var(--game-font);font-weight:900;border-top:2px solid #5a3a22;padding:3px}
.mine .mn-odds td.none{color:#b8a890;font-weight:500}
.mine .mn-info small{display:block;margin-top:4px;font-size:11px;color:#6b4a2a}
.mine .mn-empty{margin:12px 0;padding:10px;text-align:center;background:#4a4038;color:#fff6df;font-weight:900;border:2px solid #2f2822}
.mine .mn-empty small{font-weight:500;opacity:.85}
/* 2026-10-13 ぶとうかい（対人戦） */
.ev-arena{position:relative}
.ev-arena .ev-name{position:absolute;left:10px;bottom:10px;font-family:var(--game-font);font-size:24px;color:#fff6df;-webkit-text-stroke:4px #3a1408;paint-order:stroke fill}
.arena-pg .ar-rank{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:6px 0 4px;background:linear-gradient(#3a2a1c,#2a1f16);border:3px solid #8a6a3a;color:#fff6df;text-align:center}
.arena-pg .ar-rank div{padding:6px 2px;border-left:2px solid #5a4028}.arena-pg .ar-rank div:first-child{border-left:0}
.arena-pg .ar-rank small{display:block;font-size:10px;opacity:.8}.arena-pg .ar-rank b{font-family:var(--game-font);font-size:20px;color:#ffd76a}
.arena-pg .ar-next{margin:0 0 8px;font-size:12px;color:#6b4a2a;text-align:right}
.arena-pg .ar-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:6px 0 4px}.arena-pg .ar-tabs .btn{min-height:0;height:42px;font-size:15px;padding:0}
.arena-pg .ar-opps{display:flex;flex-direction:column;gap:6px}
.arena-pg .ar-opp{display:flex;align-items:center;gap:8px;font:inherit;color:var(--ink);text-align:left;background:#fbf3df;border:3px solid #5a3a22;box-shadow:0 3px 0 #2a1f16;padding:5px 8px;cursor:pointer;position:relative}
.arena-pg .ar-opp.on{background:#ffe2a8;border-color:#c0392b;transform:translateY(-2px)}
.arena-pg .ar-opp.done{opacity:.5;box-shadow:none;cursor:default}
.arena-pg .ar-who{flex:1;display:flex;flex-direction:column}.arena-pg .ar-who b{font-size:15px}.arena-pg .ar-who small{font-size:11px;color:#6b4a2a}
.arena-pg .ar-team{display:flex;gap:2px}.arena-pg .ar-team img{width:40px;height:40px;object-fit:contain}
.arena-pg .ar-opp em{position:absolute;right:6px;top:-8px;font-style:normal;font-size:11px;font-weight:900;color:#fff6df;background:#5a3a22;padding:0 6px}
.arena-pg .ar-opp.win em{background:#c0392b}
.arena-pg .ar-refresh{margin:6px 0 2px;min-height:0;height:36px;font-size:13px}
.arena-pg .ar-warn{margin:6px 0;padding:8px 10px;background:#4a4038;color:#fff6df;font-size:13px;border:2px solid #2f2822}
.arena-pg .ar-note{font-size:12px;color:#6b4a2a;margin:6px 0}
.arena-pg .ar-sum{display:flex;gap:14px;margin:6px 0;font-size:13px}.arena-pg .ar-sum b{font-family:var(--game-font);font-size:18px}
.arena-pg .ar-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.arena-pg .ar-log li{display:flex;gap:8px;align-items:center;background:#fbf3df;border:2px solid #5a3a22;padding:4px 8px;font-size:13px}
.arena-pg .ar-log li b{font-size:11px;color:#fff6df;background:#5a3a22;padding:0 5px}.arena-pg .ar-log li span{flex:1}
.arena-pg .ar-log li em{font-style:normal;font-weight:900}.arena-pg .ar-log li.win em{color:#c0392b}.arena-pg .ar-log li.lose em{color:#5a6a7a}
.arena-pg .ar-tabs .btn{white-space:nowrap;font-size:14px;letter-spacing:0}
/* 2026-10-13 修行に持ちこむ道具 */
.it-list{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.it-card{display:flex;align-items:center;gap:8px;background:#fbf3df;border:2px solid #5a3a22;padding:6px 8px}
.it-card.r2{border-color:#8a6a1a;background:#fff3cf}.it-card.r3{border-color:#a8331f;background:#ffe6d6}
.it-ic{flex:0 0 36px;height:36px;display:flex;align-items:center;justify-content:center;background:#5a3a22;color:#fff6df;font-weight:900;font-size:18px;border-radius:50%}
.it-card.r2 .it-ic{background:#8a6a1a}.it-card.r3 .it-ic{background:#a8331f}
.it-body{flex:1;min-width:0;display:flex;flex-direction:column}.it-body b{font-size:14px}.it-body b small{font-size:10px;color:#8a6a3a;margin-left:6px;font-weight:700}.it-body span{font-size:11px;color:#5a4a3a}
.it-buy{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.it-buy small{font-size:10px;color:#6b4a2a}
.it-card .btn{flex:0 0 auto;min-height:0;border-width:6px 16px 8px!important;padding:1px 2px!important;font-size:13px}
.it-used{font-style:normal;font-size:11px;font-weight:900;color:#6b4a2a;white-space:nowrap}
.it-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:6px 0 10px}
.it-slot{font:inherit;color:var(--ink);min-height:54px;border:2px dashed #8a6a4a;background:#f8eed6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;padding:4px}
.it-slot.on{border:2px solid #5a3a22;background:#fff3cf}.it-slot.on.r3{background:#ffe6d6}
.it-slot b{font-size:12px;line-height:1.2;text-align:center}.it-slot small{font-size:10px;color:#6b4a2a}
.finish-items{font-size:12px;color:#5a3a22;margin:4px 0 0}
.it-purse{display:flex;align-items:baseline;justify-content:center;gap:6px;margin:4px 0 6px;padding:6px 10px;background:linear-gradient(#3a2a1c,#2a1f16);border:3px solid #8a6a3a;color:#fff6df}
.it-purse span{font-size:13px;font-weight:900}.it-purse b{font-family:var(--game-font);font-size:26px;color:#9fdc6a}.it-purse small{font-size:12px}
.bag-rows{display:flex;flex-direction:column;gap:4px;margin:6px 0 10px}
.bag-row{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fbf3df;border:2px solid #5a3a22;padding:5px 10px}
.bag-row span{display:flex;flex-direction:column;font-weight:900;font-size:14px}.bag-row small{font-size:10px;font-weight:700;color:#6b4a2a}
.bag-row b{font-family:var(--game-font);font-size:20px}
.bag-n{font-family:var(--game-font);font-size:16px;white-space:nowrap}
.b3-big .b3-again{display:block;margin:8px auto 0;font:inherit;font-weight:900;font-size:14px;color:#fff8e6;background:none;border:0;border-style:solid;border-width:8px 22px 10px;border-image:url(art/ui/btn_red.png) 50 120 56 fill/8px 22px 10px stretch;-webkit-text-stroke:3px #3a1408;paint-order:stroke fill;cursor:pointer;padding:2px 6px}
.b3-big .b3-again small{display:block;font-size:10px;-webkit-text-stroke:2px #3a1408}
.mine .mn-rep small{display:block;font-size:10px;font-weight:700}
.it-card img.it-ic{flex:0 0 44px;width:44px;height:44px;object-fit:contain;background:none;border-radius:0}
.it-purse .ico{width:28px;height:28px;align-self:center}
.bag-row{justify-content:flex-start}.bag-row .ico{width:30px;height:30px;object-fit:contain;flex:0 0 30px}.bag-row span{flex:1}
.mine .mn-rep .ico{width:22px;height:22px;vertical-align:middle;margin-right:4px}
/* ---- 2026-10-14 バトル画面の作り直し（ユーザー：FFのように斜めに広げ、画面いっぱいに。全部の技に動きとエフェクト） ---- */
/* 舞台は縦に大きく。技えらびの欄は舞台の下（手前のキャラにかぶらない） */
.b3-stage{aspect-ratio:auto!important;height:clamp(340px,calc(100dvh - 300px),150vw)}
@media (min-width:641px){.b3-stage{height:clamp(380px,calc(100dvh - 260px),62vw)}}
.b3-top{gap:6px;margin-bottom:6px}
.b3-top .b3-auto{margin-left:auto}
.b3-order{flex-basis:100%;order:9}
.b3-panel{position:static;padding:6px 0 0;min-height:104px;align-items:stretch}
.b3-panel .b3-skills{align-self:stretch;grid-template-columns:repeat(2,minmax(0,1fr))}
.b3-ask{background:#2a1f16}
/* キャラ：大きさと位置は JS（だれとも重ならない大きさ）。動きは translate／scale で */
.b3-unit{transition:none!important;width:80px}
.b3-unit .body{position:relative;transform-origin:50% 100%}
.b3-unit .sp{width:100%}
.b3-unit .bars{top:-30px;left:2%;right:2%}
.b3-unit .fx{margin-bottom:1px}
.b3-unit.turn::after{bottom:-6px;height:5px}
.b3-unit.flash .sp{filter:brightness(5) drop-shadow(2px 0 0 #1a120c) drop-shadow(-2px 0 0 #1a120c)}
/* 強化のとき、体のふちが気の色で光る（ドットの輪郭なので、ぼかさない） */
.b3-unit.glow-atkUp .sp{filter:drop-shadow(2px 0 0 #ffb43a) drop-shadow(-2px 0 0 #ffb43a) drop-shadow(0 -2px 0 #fff3a0) drop-shadow(0 2px 0 #e2401a)}
.b3-unit.glow-defUp .sp{filter:drop-shadow(2px 0 0 #6cc04a) drop-shadow(-2px 0 0 #6cc04a) drop-shadow(0 -2px 0 #d6f5c6) drop-shadow(0 2px 0 #2e7a2a)}
.b3-unit.glow-spdUp .sp{filter:drop-shadow(2px 0 0 #5aa8e8) drop-shadow(-2px 0 0 #5aa8e8) drop-shadow(0 -2px 0 #cfeaff) drop-shadow(0 2px 0 #2a5a9a)}
/* ドットのエフェクトの層（キャラより上、数字より下） */
.b3-stage canvas.b3-fxc{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;pointer-events:none;z-index:40}
.b3-pop.buff{font-size:14px;color:#ffe08a}.b3-pop.debuff{font-size:14px;color:#d8b8ff}
.b3-band{top:3%}
/* 上の帯を1段に。舞台は画面に収まる高さ */
.b3-top{flex-wrap:wrap;row-gap:4px}
.b3-top .b3-wave{font-size:13px;padding:2px 8px}
.b3-top .b3-bonus{font-size:10px;padding:1px 5px;border-width:2px}
.b3-top button{font-size:13px;padding:0 4px;min-height:0}
.b3-order .oi{width:28px;height:28px;border-width:2px}
.b3-stage{height:clamp(340px,calc(100dvh - 275px),150vw)}
.b3-band span{white-space:nowrap;font-size:clamp(13px,4.2vw,20px);padding:5px 16px;max-width:94%;overflow:hidden;text-overflow:ellipsis}
.b3-pop.buff,.b3-pop.debuff{-webkit-text-stroke:4px var(--ink);font-weight:900}
/* ---- 2026-10-14 FF6・ロマサガRSを見て作り直し（docs/バトル演出_勉強ノート.md） ---- */
.b3-dim{position:absolute;inset:0;background:#0a0610;opacity:0;pointer-events:none;z-index:8}
.b3-flash{position:absolute;inset:0;background:#fffbe8;opacity:0;pointer-events:none;z-index:58}
.b3-unit{z-index:12}
/* 当たったら2回点滅（消える・つく） */
.b3-unit.blink .sp{animation:b3blink var(--bk,260ms) steps(1,end)}
@keyframes b3blink{0%{opacity:0}25%{opacity:1}50%{opacity:0}75%{opacity:1}}
/* 詠唱：体の色が3回またたく */
.b3-unit.casting .sp{animation:b3cast .42s steps(1,end)}
@keyframes b3cast{0%,34%,67%{filter:brightness(1.9) saturate(.4) drop-shadow(2px 0 0 #fff) drop-shadow(-2px 0 0 #fff)}17%,50%,84%{filter:drop-shadow(2px 0 0 #1a120c) drop-shadow(-2px 0 0 #1a120c)}}
/* ダメージの数字：はねて落ちて、止まってから消える（なめらかに浮かせない） */
.b3-pop{animation:b3bounce .9s forwards;font-family:var(--game-font,inherit);font-weight:900;letter-spacing:1px}
@keyframes b3bounce{0%{translate:0 0;opacity:1}12%{translate:0 -22px}24%{translate:0 0}32%{translate:0 -7px}40%{translate:0 0}82%{opacity:1;translate:0 0}100%{opacity:0;translate:0 0}}
.b3-pop.small,.b3-pop.buff,.b3-pop.debuff{animation:b3rise .9s steps(6,end) forwards}
@keyframes b3rise{0%{translate:0 0}70%{translate:0 -16px;opacity:1}100%{translate:0 -16px;opacity:0}}
/* たおれる：赤むらさきに染まって、上から消える（FF6） */
.b3-unit.down{opacity:1!important;transition:none!important}
.b3-unit.down .sp{animation:b3die var(--dd,.6s) steps(6,end) forwards}
.b3-unit.down .bars{visibility:hidden}
@keyframes b3die{0%{filter:sepia(1) hue-rotate(-60deg) saturate(3) brightness(.9);clip-path:inset(0 0 0 0)}100%{filter:sepia(1) hue-rotate(-60deg) saturate(3) brightness(.9);clip-path:inset(100% 0 0 0)}}
/* ---- 2026-10-14 ロマサガRSの動画を見て（docs/バトル演出_勉強ノート.md） ---- */
/* スポットライト：暗い板はキャラの上、使う子と相手だけさらに上 */
.b3-dim{z-index:30;background:#05030a}
.b3-unit.spot{z-index:35!important}
/* 技の名前のフキダシ（頭の上） */
.b3-say{position:absolute;z-index:56;transform:translate(-50%,-100%);background:#fffaf0;color:#2a1f16;border:2.5px solid #2a1f16;border-radius:999px;padding:3px 12px;font-weight:900;font-size:clamp(12px,3.6vw,16px);white-space:nowrap;box-shadow:0 3px 0 #2a1f16;pointer-events:none;animation:b3say .25s steps(3,end)}
.b3-say::after{content:'';position:absolute;left:50%;bottom:-8px;margin-left:-6px;border:6px solid transparent;border-top-color:#2a1f16;border-bottom:0}
@keyframes b3say{0%{scale:.6}100%{scale:1}}
/* ダメージの数字：金色で大きく、少しななめ。会心はもっと大きく */
.b3-pop{font-size:clamp(22px,7vw,32px);color:#ffe27a;-webkit-text-stroke:5px #2a1408;font-style:italic;transform:translate(-50%,-50%) skewX(-8deg)}
.b3-pop.crit{font-size:clamp(28px,9vw,42px);color:#fff1a8}
.b3-pop.heal{color:#b8f08a}
/* 小さな札（会心・有利） */
.b3-pop.tag{font-size:12px;font-style:normal;-webkit-text-stroke:0;color:#fff;background:#c0392b;border:2px solid #2a1408;padding:1px 6px;transform:translate(-50%,-50%);animation:b3rise .9s steps(6,end) forwards}
/* 強化・弱体のあいだ、体のふちが色で光りつづける */
.b3-unit.keep-atkUp .sp{filter:drop-shadow(2px 0 0 #ffb43a) drop-shadow(-2px 0 0 #ffb43a) drop-shadow(0 -2px 0 #ffb43a) drop-shadow(0 2px 0 #e2401a)}
.b3-unit.keep-defUp .sp{filter:drop-shadow(2px 0 0 #6cc04a) drop-shadow(-2px 0 0 #6cc04a) drop-shadow(0 -2px 0 #6cc04a) drop-shadow(0 2px 0 #2e7a2a)}
.b3-unit.keep-atkUp.keep-defUp .sp{filter:drop-shadow(2px 0 0 #ffb43a) drop-shadow(-2px 0 0 #6cc04a) drop-shadow(0 -2px 0 #ffb43a) drop-shadow(0 2px 0 #6cc04a)}
.b3-unit.keep-spdUp .sp{filter:drop-shadow(2px 0 0 #5aa8e8) drop-shadow(-2px 0 0 #5aa8e8) drop-shadow(0 -2px 0 #5aa8e8) drop-shadow(0 2px 0 #2a5a9a)}
.b3-unit.keep-defDown .sp{filter:drop-shadow(2px 0 0 #8a5aa8) drop-shadow(-2px 0 0 #8a5aa8) drop-shadow(0 -2px 0 #8a5aa8) drop-shadow(0 2px 0 #3a2a4a)}
/* 2026-10-14 ユーザー：ダメージは ふつう白・会心は黄（LINEモンスターファームと同じ）。会心はわかりやすく */
.b3-pop{color:#ffffff}
.b3-pop.crit{color:#ffd83a;font-size:clamp(32px,10vw,46px);-webkit-text-stroke:6px #2a1408}
/* リーダー（2026-10-14） */
.b3-lead{font-size:11px;border:2px solid #2a1f16;background:#fff3c8;padding:1px 6px;cursor:pointer;font-weight:900}
.b3-lead i{font-style:normal;font-size:9px;color:#fff;background:#c0392b;padding:0 4px;margin-right:4px}
.b3-unit.leader .nm::before{content:'リーダー';font-size:8px;color:#fff;background:#c0392b;padding:0 3px;margin-right:3px;vertical-align:1px}
/* ぶとうかい：毎週のランキングと国あて（2026-10-14） */
.arena-pg .ar-tabs{grid-template-columns:repeat(5,1fr);gap:4px}.arena-pg .ar-tabs .btn{font-size:12px!important;height:38px}
.arena-pg .ar-prize{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 8px}.arena-pg .ar-prize span{font-size:11px;background:#fbf3df;border:2px solid #5a3a22;padding:1px 6px}.arena-pg .ar-prize b{margin-right:4px}
.arena-pg .ar-board{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}
.arena-pg .ar-board li{display:flex;align-items:center;gap:6px;background:#fbf3df;border:2px solid #5a3a22;padding:3px 6px;font-size:13px}
.arena-pg .ar-board li em{font-style:normal;font-weight:900;width:24px;text-align:right;font-family:var(--game-font)}
.arena-pg .ar-board li span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.arena-pg .ar-board li .ar-team{flex:none;display:flex;gap:1px}.arena-pg .ar-board li .ar-team img{width:26px;height:26px;object-fit:contain}
.arena-pg .ar-board li b{font-family:var(--game-font);font-size:15px}
.arena-pg .ar-board li.top{background:#ffe2a8;border-color:#c0392b}.arena-pg .ar-board li.me{background:#d8efc8;border-color:#2e7a2a}
.ar-ctry{font-style:normal;font-size:10px;font-weight:900;color:#fff;background:var(--c);padding:1px 5px;border:1.5px solid #2a1f16;white-space:nowrap}.ar-ctry.none{background:#8a7d68}
.arena-pg .ar-vote-head{display:flex;align-items:baseline;justify-content:center;gap:6px;margin:6px 0;padding:6px;background:linear-gradient(#3a2a1c,#2a1f16);border:3px solid #8a6a3a;color:#fff6df}
.arena-pg .ar-vote-head .ico{width:26px;height:26px;align-self:center}.arena-pg .ar-vote-head b{font-family:var(--game-font);font-size:26px;color:#ffd76a}
.arena-pg .ar-ctrys{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}
.arena-pg .ar-ctry-btn{position:relative;font:inherit;color:#fff;background:var(--c);border:3px solid #2a1f16;box-shadow:0 4px 0 #2a1f16;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer}
.arena-pg .ar-ctry-btn b{font-family:var(--game-font);font-size:20px;-webkit-text-stroke:4px #2a1f16;paint-order:stroke fill}
.arena-pg .ar-ctry-btn small{font-size:10px;font-weight:700;background:#2a1f16cc;padding:0 4px}
.arena-pg .ar-ctry-btn em{position:absolute;right:-6px;top:-8px;font-style:normal;font-size:11px;font-weight:900;background:#fff6df;color:#2a1f16;border:2px solid #2a1f16;padding:0 5px}
.arena-pg .ar-ctry-btn:disabled{filter:grayscale(.6) brightness(.8);cursor:default}
.arena-pg .ar-ctry-btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 0 0 #2a1f16}
/* 強化・弱体のアイコンに、のこりターン数（2026-10-14） */
.b3-unit .fx .fxi{position:relative;display:block}
.b3-unit .fx .fxi b{position:absolute;right:-3px;bottom:-4px;font-size:10px;line-height:1;font-weight:900;color:#fff;-webkit-text-stroke:2.5px #1a120c;paint-order:stroke fill}
.b3-unit .fx img{width:16px;height:16px}
/* 上の帯：1段目＝ウェイブ・オート・速さ、2段目＝リーダー・色のボーナス、3段目＝行動順 */
.b3-top .b3-wave{order:0}.b3-top .b3-auto{order:1}.b3-top .b3-spd{order:2}
.b3-top .b3-lead,.b3-top .b3-bonus{order:5}
.b3-top .b3-lead:not([hidden])::before{content:'';flex-basis:100%}
.b3-top .b3-sp{order:4;flex-basis:100%;height:0}
.b3-stage{height:clamp(320px,calc(100dvh - 300px),150vw)}
.arena-pg .ar-tabs{grid-template-columns:repeat(3,1fr)!important}
.arena-pg .ar-ptable{width:100%;border-collapse:collapse;margin:4px 0 6px;background:#fbf3df;font-size:13px}
.arena-pg .ar-ptable th,.arena-pg .ar-ptable td{border:2px solid #5a3a22;padding:4px 8px;text-align:left}
.arena-pg .ar-ptable td:last-child{font-weight:900}
.arena-pg .ar-ptable tr.me td{background:#d8efc8}
/* レイドボス（2026-10-14） */
.raid-pg .rd-boss{display:flex;gap:10px;align-items:center;margin:6px 0;padding:8px;background:linear-gradient(#3a2a1c,#2a1f16);border:3px solid #8a6a3a;color:#fff6df}
.raid-pg .rd-boss img{width:84px;height:84px;object-fit:contain;flex:none;filter:drop-shadow(2px 2px 0 #000)}
.raid-pg .rd-boss>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.raid-pg .rd-boss b{font-family:var(--game-font);font-size:18px;display:flex;align-items:center;gap:6px}
.raid-pg .rd-boss small{font-size:11px;opacity:.9}
.raid-pg .rd-hp{height:12px;border:2px solid #000;background:#3a2014}.raid-pg .rd-hp i{display:block;height:100%;background:linear-gradient(#ff7a4a,#c0261a)}
.raid-pg .rd-tabs{grid-template-columns:repeat(3,1fr)!important}
.event-card.ev-raid{position:relative;overflow:hidden}
.event-card.ev-raid .ev-boss{position:absolute;right:6%;bottom:4%;height:78%;width:auto;object-fit:contain;filter:drop-shadow(3px 3px 0 #000)}
.event-card.ev-raid .ev-name{position:absolute;left:10px;bottom:10px;font-family:var(--game-font);font-size:22px;color:#fff6df;-webkit-text-stroke:4px #3a1408;paint-order:stroke fill}
.b3-big b small{font-size:.45em;margin-left:6px}
.raid-pg .rd-go-row{display:grid;grid-template-columns:2fr 1fr;gap:8px;align-items:stretch}
.raid-pg .rd-go-row .btn small{display:block;font-size:10px}
/* 2026-10-22 ユーザー：戦闘のリーダーの文字が潰れる → 大きく・読みやすい字で */
.b3-unit.leader .nm::before{text-shadow:none;font-size:10px;line-height:1.25;font-family:"Hiragino Kaku Gothic ProN","BIZ UDPGothic",sans-serif;font-weight:900;letter-spacing:0;padding:1px 4px;display:inline-block;vertical-align:1px;-webkit-font-smoothing:antialiased}
.b3-lead i{font-size:10.5px;line-height:1.3;padding:1px 5px;font-family:"Hiragino Kaku Gothic ProN","BIZ UDPGothic",sans-serif;letter-spacing:0}
.b3-unit.leader .nm{position:relative;overflow:visible}.b3-unit.leader .nm::before{position:absolute;left:0;bottom:100%;margin:0 0 2px;vertical-align:0}

/* ==== 2026-10-22 戦闘画面：スクロールなし・画面の中で完結（カムトラ型）==== */
.b3{display:flex;flex-direction:column;height:calc(100dvh - 60px);overflow:hidden;position:relative}
.b3-stage{flex:1 1 auto;height:auto!important;min-height:0;aspect-ratio:auto!important;border-width:3px}
/* 上の帯：戦場に重ねる */
.b3-stage>.b3-top{position:absolute;z-index:66;left:0;right:0;top:0;margin:0!important;padding:5px 6px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 5px;background:linear-gradient(#1a120ce0 0,#1a120cb0 70%,#1a120c00);pointer-events:none}
.b3-stage>.b3-top>*{pointer-events:auto}
.b3-stage>.b3-top .b3-wave{order:0;font-size:12px;padding:2px 8px;background:#2a1f16;color:#ffd75e;border:2px solid #c99a2e}
.b3-stage>.b3-top .b3-sp{display:none}
.b3-stage>.b3-top .b3-auto{order:1;margin-left:auto}
.b3-stage>.b3-top .b3-spd{order:2}
.b3-stage>.b3-top button{font-size:12px;font-weight:900;padding:0 4px;min-height:0;background:none;border:0;border-style:solid;border-width:5px 14px 6px;border-image:url(art/ui/btn_wood.png) 40 110 46 fill/5px 14px 6px stretch;box-shadow:none;color:#3a2410}
.b3-stage>.b3-top button.on{border-image-source:url(art/ui/btn_red.png);border-image-slice:50 120 56 fill;color:#fff}
.b3-stage>.b3-top .b3-order{order:9;flex-basis:100%;gap:3px}
.b3-stage>.b3-top .b3-order .oi{width:24px;height:24px;border-width:2px}
.b3-stage>.b3-top .b3-lead,.b3-stage>.b3-top .b3-bonus{order:5;font-size:10px;padding:0 5px;border-width:1.5px}
.b3-stage>.b3-top .b3-lead:not([hidden])::before{display:none}
/* 技の札：戦場の下に重ねる。小さめの木札 2×2 */
.b3-stage>.b3-panel{position:absolute!important;z-index:65;left:0;right:0;bottom:0;min-height:0!important;padding:16px 8px 8px!important;display:flex;flex-direction:column;align-items:stretch;gap:5px;background:linear-gradient(#1a120c00,#1a120ccc 26%,#1a120cf0);pointer-events:none}
.b3-stage>.b3-panel:empty{display:none}
.b3-stage>.b3-panel>*{pointer-events:auto}
.b3-stage>.b3-panel .b3-ask{background:none!important;padding:0 2px;font-size:12px;color:#fff6df;text-shadow:1px 1px 0 #1a120c}
.b3-stage>.b3-panel .b3-ask b{color:#ffd75e}
.b3-stage>.b3-panel .b3-ask small{display:inline;margin-left:6px;font-size:11px;color:#f1d79a}
.b3-stage>.b3-panel .b3-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 6px;align-self:stretch}
.b3-stage>.b3-panel .b3-skills button{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:42px;padding:0 6px;text-align:center;font-size:14px;font-weight:900;line-height:1.1;background:none;border:0;border-style:solid;border-width:6px 18px 8px;border-image:url(art/ui/btn_wood.png) 40 110 46 fill/6px 18px 8px stretch;box-shadow:none;color:#2a1f16;filter:drop-shadow(0 2px 0 #1a120c)}
.b3-stage>.b3-panel .b3-skills button small{font-size:9.5px;font-weight:900;color:#6b4a2a}
.b3-stage>.b3-panel .b3-skills button.sel{border-image-source:url(art/ui/btn_gold.png);border-image-slice:50 120 56 fill}
.b3-stage>.b3-panel .b3-skills button:disabled{filter:grayscale(.8) brightness(.8) drop-shadow(0 2px 0 #1a120c);opacity:1}
.b3-stage>.b3-panel .b3-skills button:disabled small{color:#b8402a}
.b3-stage>.b3-panel .b3-skills button.b3-awake{border-image-source:url(art/ui/btn_red.png);border-image-slice:50 120 56 fill;color:#fff;grid-column:1/-1}
.b3-stage>.b3-panel .b3-skills button.b3-awake small{color:#ffe6a8}
.b3-stage>.b3-panel .b3-skills button.b3-awake.on{filter:drop-shadow(0 0 6px #ff6a3a) drop-shadow(0 2px 0 #1a120c)}
.b3-stage .b3-tip{bottom:auto;top:30%}
/* 覚醒は「技をえらぼう」の行の右に小さく（技の札は2段に収める） */
.b3-stage>.b3-panel .b3-ask{display:flex;align-items:center;gap:6px;pointer-events:auto!important}
.b3-stage>.b3-panel .b3-ask-t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.b3-stage>.b3-panel .b3-ask button.b3-awake{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;min-height:0;padding:0 4px;font-size:13px;font-weight:900;line-height:1.05;background:none;border:0;border-style:solid;border-width:5px 16px 6px;border-image:url(art/ui/btn_red.png) 50 120 56 fill/5px 16px 6px stretch;box-shadow:none;color:#fff}
.b3-stage>.b3-panel .b3-ask button.b3-awake small{font-size:9px;color:#ffe6a8}
.b3-stage>.b3-panel .b3-ask button.b3-awake.on{filter:drop-shadow(0 0 6px #ff6a3a)}

/* 2026-10-22 ユーザー：戦闘は全画面で。どこから始めても画面いっぱい（上のバーや下のタブも隠す） */
.b3.b3-full{position:fixed;left:0;top:0;right:0;width:100%;z-index:600;margin:0;border:0;border-radius:0;box-shadow:none;background:#1a120c;padding:0;max-width:none}
.b3.b3-full>.b3-stage{border:0;border-radius:0;aspect-ratio:auto!important;width:100%}
body:has(.b3-full){overflow:hidden}
.b3-full .b3-stage>.b3-top{padding-top:calc(6px + env(safe-area-inset-top))}
.b3-full .b3-stage>.b3-panel{padding-bottom:calc(8px + env(safe-area-inset-bottom))}
.b3-stage>.b3-top .b3-title{order:-1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%;font-size:12px;font-weight:900;color:#fff1cf;text-shadow:0 1px 0 #000,0 0 3px #000;letter-spacing:.05em}
/* 2026-10-23 ユーザー「技が2つの時も3つ以上の時と同じ高さで」：行の高さを固定し、パネルいっぱいに伸ばさない */
.b3-stage>.b3-panel .b3-skills{grid-auto-rows:46px;align-content:start}
.b3-stage>.b3-panel .b3-skills button{height:46px;min-height:0}
/* 2026-10-24 受けた側の演出（docs/戦闘_被弾演出_研究.md） */
.b3-unit.whiteout .sp{filter:brightness(0) invert(1) drop-shadow(0 0 6px #fff)!important}
.b3-bar.hp{position:relative}
.b3-bar.hp i{position:relative;z-index:1}
.b3-bar.hp .gh{position:absolute;left:0;top:0;bottom:0;width:100%;background:#fff6d8;transition:width .5s ease-in .45s;z-index:0}
.b3-bar.hp .gh.now{transition:none}
.b3.ahit .b3-stage::after,.b3-stage.ahit::after{content:'';position:absolute;inset:0;z-index:55;pointer-events:none;box-shadow:inset 0 0 60px 12px #d8201088;animation:b3ahit .45s ease-out forwards}
@keyframes b3ahit{0%{opacity:1}100%{opacity:0}}
/* 2026-10-24 ユーザー：有利の札があるので、ダメージの数字を赤くしない（味方が受けた時も白） */
/* 当たりの連続コマ（チャッピー）：横5コマを steps で流す */
.b3-sheet{position:absolute;z-index:58;pointer-events:none;transform:translate(-50%,-50%);background-size:500% 100%;background-repeat:no-repeat;image-rendering:auto;animation:b3sheet var(--ms,330ms) steps(5,jump-none) forwards}
@keyframes b3sheet{from{background-position-x:0%}to{background-position-x:100%}}
/* 何コマ目まで使うか（--fr）。弱い打撃は3コマで止める */
.b3-sheet{animation:b3sheetN var(--ms,330ms) steps(var(--fr,5),jump-none) forwards}
@keyframes b3sheetN{from{background-position-x:0%}to{background-position-x:var(--end,100%)}}
/* 2026-10-24 ユーザー「HPバーと行動ゲージがしょぼい」：チャッピーの漆と金具の枠（art/ui/bar）。中身は赤と金のつやのある帯 */
.b3-unit .b3-bar{border:0!important;background:none!important;position:relative;margin-top:2px}
.b3-unit .b3-bar.hp{height:16px;border-style:solid!important;border-width:4px 11px!important;border-image:url(art/ui/bar/hp_frame.png) 18 32 18 32 fill/4px 11px stretch!important}
.b3-unit .b3-bar.g{height:10px;margin-top:1px;border-style:solid!important;border-width:3px 10px!important;border-image:url(art/ui/bar/gd_frame.png) 12 34 12 34 fill/3px 10px stretch!important}
.b3-unit .b3-bar.hp i{background:url(art/ui/bar/hp_fill.png) 0 0/100% 100% no-repeat!important}
.b3-unit .b3-bar.g i{background:url(art/ui/bar/gd_fill.png) 0 0/100% 100% no-repeat!important}
.b3-unit .b3-bar.hp .gh{background:#fff1c8}
.b3-unit .bars{top:-40px}
.b3-unit .b3-bar.hp{height:19px;border-width:5px 15px!important;border-image:url(art/ui/bar/hp_frame.png) 8 30 8 30 fill/5px 15px stretch!important}
.b3-unit .b3-bar.g{height:12px;border-width:3px 13px!important;border-image:url(art/ui/bar/gd_frame.png) 6 32 6 32 fill/3px 13px stretch!important}
.b3-unit .bars{top:-46px}
/* 2026-10-24 ユーザー「装飾はイマイチ。HPと行動ゲージは隙間なく」：金具の枠をやめ、HPとゲージを1つの漆の枠にすきまなく重ねる */
.b3-unit .b3-bar,.b3-unit .b3-bar.hp,.b3-unit .b3-bar.g{border:0!important;border-image:none!important;margin:0!important;background:#1a0f08!important}
.b3-unit .hpg{margin-top:2px;border:3px solid transparent;border-image:url(art/ui/mat/lacquer.png) 50 60 50 60/3px 4px stretch;background:#1a0f08;display:flex;flex-direction:column}
.b3-unit .b3-bar.hp{height:11px!important}
.b3-unit .b3-bar.g{height:5px!important;border-top:1px solid #000!important}
.b3-unit .bars{top:-36px}
/* 「有利」は数字の右肩に小さく。数字と同じ動き */
.b3-pop small.adv{position:absolute;left:100%;top:-.1em;margin-left:2px;font-size:.45em;font-style:normal;color:#ffd84a;-webkit-text-stroke:3px #2a1408;paint-order:stroke fill;white-space:nowrap;letter-spacing:0}
/* 2026-10-24 技のボタンを作り直し（ユーザー：木の板と縄はダメ。カムトラを参考に、奥義だけ特別に）
   黒い漆のカプセル札＋左の丸に技の種類の印、下の帯に「通常／特技」と待ちターン。奥義は横いっぱいの炎の金札＋仲間の顔 */
.b3-stage>.b3-panel .b3-skills{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:44px;gap:5px 6px}
.b3-stage>.b3-panel .b3-skills button.sk{position:relative;height:44px;min-height:0;padding:0;display:block;text-align:left;color:#fff6df;background:none;border-style:solid;border-color:transparent;border-width:0 20px 0 46px;border-image-source:url(art/ui/skill_btn.png);border-image-slice:0 60 0 140 fill;border-image-width:1;border-image-repeat:stretch;box-shadow:none;filter:drop-shadow(0 2px 0 #1a120c)}
.b3-stage>.b3-panel .b3-skills button.sk.sel{border-image-source:url(art/ui/skill_btn_on.png)}
.b3-stage>.b3-panel .b3-skills button.sk .ic{position:absolute;left:-36px;top:7px;width:26px;height:26px;background:url(art/ui/skill_ic.png) 0 0/600% 100% no-repeat}
.b3-stage>.b3-panel .b3-skills button.sk .ic.k-1{background-position:20% 0}.b3-stage>.b3-panel .b3-skills button.sk .ic.k-2{background-position:40% 0}.b3-stage>.b3-panel .b3-skills button.sk .ic.k-3{background-position:60% 0}.b3-stage>.b3-panel .b3-skills button.sk .ic.k-4{background-position:80% 0}.b3-stage>.b3-panel .b3-skills button.sk .ic.k-5{background-position:100% 0}
.b3-stage>.b3-panel .b3-skills button.sk b{position:absolute;left:-4px;right:-14px;top:5px;font-size:var(--fs,13px);font-weight:900;line-height:20px;white-space:nowrap;text-align:center;text-shadow:1px 1px 0 #000}
.b3-stage>.b3-panel .b3-skills button.sk small{position:absolute;left:0;right:0;top:28px;font-size:8.5px;font-weight:900;line-height:9px;color:#f1c66a;text-align:center;white-space:nowrap}
.b3-stage>.b3-panel .b3-skills button.sk small em{font-style:normal;color:#ffb0a0;margin-left:4px}
.b3-stage>.b3-panel .b3-skills button.sk:disabled{filter:grayscale(.85) brightness(.7) drop-shadow(0 2px 0 #1a120c)}
/* 奥義：並びはほかと同じ2×2（ユーザー）。札だけ炎の金札・左の丸に仲間の顔 */
.b3-stage>.b3-panel .b3-skills button.sk.ougi{height:62px;margin:-9px -3px;border-width:0 27px 0 58px;z-index:1;border-image-source:url(art/ui/skill_ougi.png);border-image-slice:0 140 0 300 fill}
.b3-stage>.b3-panel .b3-skills button.sk.ougi .ic.face{left:-44px;top:16px;width:30px;height:30px;border-radius:50%;overflow:hidden;background:#000}
.b3-stage>.b3-panel .b3-skills button.sk.ougi .ic.face .fc{position:absolute;width:250%;left:-75%;top:-12%;image-rendering:pixelated}
.b3-stage>.b3-panel .b3-skills button.sk.ougi b{top:19px;font-size:var(--fs,15px);line-height:24px;color:#ffe08a;letter-spacing:.06em;text-shadow:0 0 6px #ff5a1a,1px 1px 0 #000}
.b3-stage>.b3-panel .b3-skills button.sk.ougi small{display:none}
.b3-stage>.b3-panel .b3-skills button.sk.ougi:disabled b{color:#bbb;text-shadow:1px 1px 0 #000}
.b3-stage>.b3-panel .b3-skills button.sk.ougi:disabled small{display:block;top:41px;color:#ffb0a0}
/* 2026-10-24 ユーザー：奥義の飾りに動きはつけない */
.b3-stage>.b3-panel .b3-skills button.sk.ougi.sel{filter:drop-shadow(0 0 10px #ffd84a) drop-shadow(0 2px 0 #1a120c) brightness(1.15)}
/* 2026-10-26 戦闘のドット絵は <img> になった。iPhone で長押ししても画像のメニューが出ないように */
.b3-unit .sp,.b3-order .oi,.b3-panel .fc{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;pointer-events:none}
/* 2026-10-26 ユーザー：戦闘のチュートリアルはブルが話す。吹き出しの大きさを固定して「わかった」がいつも同じ所に出る（4行まで） */
.b3-tip:not(.small){box-sizing:border-box;height:172px;display:flex;flex-direction:column;padding:8px 14px 10px}
.b3-tip:not(.small)::before{content:'ブル';align-self:flex-start;font-family:var(--game-font);font-size:12px;line-height:1.5;color:#fff8e6;background:#c8442b;padding:0 8px;margin-bottom:2px}
.b3-tip:not(.small) p{flex:1;margin:0;overflow:hidden}
.b3-tip:not(.small) button{flex:none;margin-top:auto}
/* 2026-10-26 ユーザー要望67：期末バトルのキャラの名前が読みづらい → 白い文字に太い黒のふち（金のボタンと同じ読みやすさ）。少し大きく */
.b3-unit .nm{font-family:var(--game-font);font-size:13px;line-height:1.25;color:#fff;-webkit-text-stroke:3px #1a120c;paint-order:stroke fill;text-shadow:0 1px 0 #1a120c;letter-spacing:.02em;padding:0 2px}
.b3-unit.leader .nm::before{-webkit-text-stroke:0}
/* ×4の次を押したとき（課金していない）：スロットのオート・倍速と同じ「課金で使えるようになる」 */
.b3-pay{position:absolute;z-index:85;left:50%;top:38%;transform:translate(-50%,-50%);background:#1a120ce6;color:#fff6df;border:2px solid #e0a91a;padding:10px 16px;font-family:var(--game-font);font-size:15px;line-height:1.5;text-align:center;pointer-events:none;white-space:nowrap}
/* 2026-10-26 演出の絵の口（絵は docs/絵の宿題.md。ファイルが無い間は battle3-ui.js が要素を作らない） */
/* 横1段8コマ：砕ける（倒れるのに重ねる）・奥義の余韻（煙・火の粉） */
.b3-fx8{position:absolute;z-index:59;pointer-events:none;transform:translate(-50%,-50%);background-size:800% 100%;background-repeat:no-repeat;animation:b3fx8 var(--ms,640ms) steps(8,jump-none) forwards}
.b3-fx8.glow{z-index:57;transform:translate(-50%,-55%)}
@keyframes b3fx8{from{background-position-x:0%}to{background-position-x:100%}}
/* 会心・弱点のスタンプ：数字の右肩に押す（横長 2:1 の1枚）。会心と弱点が両方のときは弱点を下に */
.b3-pop .b3-stamp{position:absolute;left:100%;top:-.55em;width:1.9em;height:.95em;margin-left:-.15em;background:center/contain no-repeat;transform:rotate(-10deg);font-style:normal;animation:b3stamp .14s steps(2,end) both}
.b3-pop .b3-stamp.n2{top:.45em}
/* 2026-10-26 届いた絵の縦横に合わせる：会心 256×141（横長）・有利 256×215（丸い印）。有利だけのときは数字の右肩、会心と両方なら会心の下 */
.b3-pop .b3-stamp.s-crit{width:1.9em;height:1.05em}
.b3-pop .b3-stamp.s-weak{width:1.3em;height:1.1em;top:-.65em;margin-left:-.1em}
.b3-pop .b3-stamp.s-weak.n2{top:.4em}
@keyframes b3stamp{from{scale:1.7;opacity:0}to{scale:1;opacity:1}}
/* 2026-10-26 ユーザー要望12-2：背景の絵が読めるまでは暗い色（昔の空色を出さない） */
.b3-stage{background:#1a120c}
/* 2026-10-26 ユーザー要望12-4：行動順の顔を大きく */
.b3-stage>.b3-top .b3-order .oi{width:34px;height:34px}
/* 2026-10-26 ユーザー要望12-3〜15：戦闘チュートリアルのブルの吹き出し。上の帯の下に出しっぱなし（位置は battle3-ui.js の layout、高さは coachFit） */
.b3-coach{position:absolute;z-index:80;left:8px;top:90px;width:min(520px,calc(100% - 16px));box-sizing:border-box;padding:9px 12px 9px 78px;background:#fffaf0;color:#2a1f16;border:3px solid #2a1f16;box-shadow:3px 3px 0 #2a1f16;font-weight:700;font-size:14px;line-height:1.55;visibility:hidden}
.b3-coach.on{visibility:visible}
.b3-coach p{margin:0;white-space:pre-line;overflow:hidden}
.b3-coach .cf{position:absolute;left:-2px;bottom:-3px;width:76px;height:auto;filter:drop-shadow(2px 2px 0 #2a1f16);pointer-events:none}
.b3-coach .cn{position:absolute;left:72px;top:-12px;font-family:var(--game-font);font-size:12px;font-weight:400;line-height:18px;color:#fff8e6;background:#c8442b;padding:0 8px;border:2px solid #2a1f16}
.b3-coach button{position:absolute;right:10px;bottom:-16px;margin:0;min-height:0;background:#c8442b;color:#fff;border:2px solid #2a1f16;font-weight:900;font-size:13px;line-height:1.4;padding:3px 16px;box-shadow:2px 2px 0 #2a1f16}
.b3-coach button[hidden]{display:none}
/* 12-6：行動順の話のときは、列を赤い枠で囲み、吹き出しから矢印で指す（動きはつけない） */
.b3-coach.point::before{content:'';position:absolute;left:calc(var(--ax,50%) - 11px);top:-26px;width:22px;height:22px;background:#e8392a;clip-path:polygon(50% 0,100% 50%,68% 50%,68% 100%,32% 100%,32% 50%,0 50%)}
.b3-stage>.b3-top .b3-order.b3-marked{outline:3px solid #e8392a;outline-offset:2px}
/* 列の幅は顔の数ぶんだけ（赤い枠が顔のない所まで伸びないように）。改行は ::after で入れる */
.b3-stage>.b3-top::after{content:'';order:8;flex-basis:100%;height:0}
.b3-stage>.b3-top .b3-order{flex:0 1 auto;max-width:100%}
/* 12-7：敵の番や説明の間も出しておく技の札（見せるだけ・押せない） */
.b3-stage>.b3-panel.idle>*,.b3-stage>.b3-panel.idle .b3-skills button{pointer-events:none!important}
/* 2026-10-27 味方の戦闘不能：消えずにその場で倒れた姿で残る。絵（art/ko/）があればそれ、なければ暗くして横に倒し、少し沈める */
.b3-unit.down.ko{opacity:1!important}
.b3-unit.down.ko .sp{animation:none!important;clip-path:none!important;filter:brightness(.45) grayscale(.5) drop-shadow(2px 0 0 #1a120c) drop-shadow(-2px 0 0 #1a120c);rotate:-90deg;translate:0 22%;transition:rotate .25s ease-out,translate .25s ease-out}
.b3-unit.down.ko.ko-has .sp{rotate:none;translate:none;filter:drop-shadow(2px 0 0 #1a120c) drop-shadow(-2px 0 0 #1a120c)}
.b3-unit.down.ko .bars{visibility:hidden}
.dv-boons li small{margin-left:2px;font-weight:900;color:#a3220f}
/* 2026-10-27 ユーザー：戦闘不能の絵（art/ko。頭が左向きに横たわった姿）。味方はそのまま（頭が左＝後ろ）、敵は反転（頭が右＝後ろ）。敵も絵があれば倒れた姿で残る */
.b3-unit.a .sp.ko-art{transform:none}.b3-unit.e .sp.ko-art{transform:scaleX(-1)}
/* 2026-10-31 ユーザー：5文字以上の名前も「…」で切らない（はみ出しは見せて、長い名前は少し小さく詰める） */
.b3-unit .nm{overflow:visible!important;text-overflow:clip!important;width:max-content;max-width:none;margin:0 auto}
.b3-unit .nm.long{font-size:11px;letter-spacing:-.03em}
/* 2026-10-31 ユーザー：名前の上にはバフ・デバフのアイコンを出すので、リーダーは「リ」だけにして名前の左に */
.b3-unit.leader .nm::before{content:'リ';position:static!important;display:inline-block;margin:0 3px 0 0!important;padding:0 3px!important;font-size:10px!important;line-height:13px;height:13px;border-radius:2px;vertical-align:2px!important}
/* 2026-10-31 ユーザー：戦闘不能の絵も敵の方を向く（絵は立ち絵と同じ左向きなので、味方だけ反転） */
.b3-unit.a .sp.ko-art{transform:scaleX(-1)!important}.b3-unit.e .sp.ko-art{transform:none!important}

/* 2026-10-31 バフ・デバフの札（チャッピーの絵）を少し大きく、ターン数を読みやすく */
.b3-unit .fx{gap:2px;margin-bottom:3px}
.b3-unit .fx img{width:22px;height:22px;image-rendering:auto}
.b3-unit .fx .fxi b{font-size:11px;right:1px;bottom:2px}
/* 2026-10-31 技を押したときの効果の説明：札のすぐ上にふわりと出る（札にかぶらない・押せない） */
.b3-skpop{position:absolute;z-index:66;left:10px;right:10px;padding:6px 10px;background:rgba(26,18,12,.88);border:2px solid #c9a35a;border-radius:6px;color:#fff6df;font-size:12px;line-height:1.4;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s}
.b3-skpop.show{opacity:1;transform:none}
.b3-skpop b{display:block;color:#ffd84a;font-size:13px}
/* 2026-10-31 待ち時間中の技：押せる（効果を見るだけ）が、見た目は今までの使えない札と同じ */
.b3-stage>.b3-panel .b3-skills button.sk[data-cd]{filter:grayscale(.85) brightness(.7) drop-shadow(0 2px 0 #1a120c);opacity:1;cursor:default}
.b3-stage>.b3-panel .b3-skills button.sk[data-cd] small{color:#b8402a}
.b3-stage>.b3-panel .b3-skills button.sk.ougi[data-cd] b{color:#bbb;text-shadow:1px 1px 0 #000}
.b3-stage>.b3-panel .b3-skills button.sk.ougi[data-cd] small{display:block;top:41px;color:#ffb0a0}
/* 2026-10-31 離脱ボタンと確認 */
.b3-stage>.b3-top .b3-quit{order:3}
.b3-confirm{position:absolute;inset:0;z-index:90;background:rgba(10,6,4,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.b3-confirm-box{background:#f3e6c8;border:3px solid #5a3a22;border-radius:10px;box-shadow:0 4px 0 #2a1f16;padding:16px 14px 12px;max-width:300px;width:100%;text-align:center;color:#2a1f16}
.b3-confirm-box p{margin:0 0 12px;font-size:15px;font-weight:900;line-height:1.5}
.b3-confirm-btns{display:flex;gap:10px;justify-content:center}
.b3-confirm-btns button{flex:1;padding:8px 0;font-size:14px}
.b3-confirm-btns .yes{background:#b8402a;color:#fff6df}
/* 2026-10-31 ユーザー：リーダーは右へ。「リーダー」と技名を2段にして、順番の列の右に収める */
.b3-stage>.b3-top .b3-order{order:9;flex:1 1 0;min-width:0;max-width:none}
.b3-stage>.b3-top .b3-lead{order:10;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;padding:2px 5px;margin-left:auto;text-align:center;white-space:nowrap}
.b3-stage>.b3-top .b3-lead[hidden]{display:none}
.b3-stage>.b3-top .b3-lead i{margin:0 0 1px;display:block}
.b3-stage>.b3-top .b3-bonus{order:11}
/* 2026-11-04 かばう（全体）・ため・反撃・行動の遅れ・敵の情報 */
.b3-unit.keep-coverAll .sp{filter:drop-shadow(2px 0 0 #6aa8ff) drop-shadow(-2px 0 0 #6aa8ff) drop-shadow(0 -2px 0 #6aa8ff) drop-shadow(0 2px 0 #2a5a9a)}
.b3-unit.keep-charge .sp{animation:b3charge .7s ease-in-out infinite alternate}
@keyframes b3charge{from{filter:drop-shadow(0 0 0 #e2401a)}to{filter:drop-shadow(2px 0 0 #e2401a) drop-shadow(-2px 0 0 #e2401a) drop-shadow(0 -3px 0 #ffb43a)}}
.b3-unit.b3-covering .body{transition:translate .22s ease-out;translate:16px 0}
.b3-unit.e.b3-covering .body{translate:-16px 0}
.b3-band.counter{top:30%}
.b3-band.counter span{background:#7a1a10;color:#fff;font-size:30px;letter-spacing:.3em;padding:4px 30px 4px calc(30px + .3em);border-color:#ffb43a;-webkit-text-stroke:1px #2a0a06}
.b3-band.break{top:30%}
.b3-band.break span{background:#2a1f16;border-color:#e0a91a;font-size:18px}
.b3-order.b3-delayed .oi{animation:b3delay .45s ease-out}
@keyframes b3delay{from{translate:-8px 0}to{translate:0 0}}
.b3-uinfo{text-align:left!important;left:8%!important;right:8%!important}
.b3-uinfo>b{display:block;font-size:14px}
.b3-uinfo>span{display:block;color:#7a2a18}
.b3-uinfo ul{margin:4px 0 0;padding:0 0 0 1.1em;font-size:12px;line-height:1.45}
