.arena-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.arena-heading h1{margin:0}
.arena-layout{display:grid;gap:14px;margin-top:12px;container-type:inline-size}
.arena-layout .card{margin:0;min-width:0}
.arena-layout h2{font-size:16px;margin:0 0 12px;color:var(--text)}
.arena-main,.arena-sidebar{display:grid;gap:14px;align-content:start;min-width:0}
.arena-standing{border-top:2px solid #bfa46a!important}
.arena-status-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.arena-place{font-size:23px;color:#ead49b;margin-left:-4px}
.arena-points{display:flex;align-items:center;gap:2px;margin-left:8px;font-variant-numeric:tabular-nums}
.arena-points .res-ico{width:26px;height:26px;margin:0;object-fit:contain;flex:none}
.arena-period{margin-top:8px;font-size:13px;color:#ead49b;font-variant-numeric:tabular-nums}
.arena-today{padding-top:10px;margin-top:9px;border-top:1px solid #ffffff12;justify-content:space-between;font-size:13px}
.arena-reward{color:#f1d790;background:#a27f2526;padding:5px 9px;border-radius:4px}
.arena-reward.received{color:#a4bea9;background:#5b8b6420}
.arena-layout summary{cursor:pointer;font-size:12px;line-height:1.7;min-height:28px;padding:4px 0;color:#b9c1ce}
.arena-stats{margin-top:7px}.arena-stats p{font-size:12px;margin:5px 0}
.arena-preset-selector{display:flex;flex-direction:column;gap:8px;align-items:stretch;font-size:13px}
.arena-preset-choices{display:flex;flex-wrap:wrap;gap:8px}
.arena-preset-choices button{flex:1 0 90px}
.arena-faces{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 9px}
.arena-face{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;width:46px;flex:none}
.arena-face .tachie-face{border-radius:6px;border:1px solid #a9915a66}
.arena-face small{font-size:10px;white-space:nowrap;color:#b7c0c9}
.arena-order{position:absolute;left:-3px;top:-3px;background:#202933;border:1px solid #9c8759;border-radius:50%;width:17px;height:17px;display:grid;place-items:center;font-size:10px;color:#ead49b}
.arena-preset-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.arena-opponents{border-top:1px solid #ffffff15}
.arena-opponent{display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff12;padding:11px 0}
.arena-opponent-info{min-width:0;display:grid;gap:3px;overflow-wrap:anywhere}
.arena-opponent-info strong{font-size:14px}.arena-opponent-info small{font-size:12px}
.arena-opponent button{flex:none;min-width:64px;min-height:36px}
.arena-defense-history summary{font-size:13px;color:#e2d8be}
.arena-defense-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #ffffff12;font-size:12px;overflow-wrap:anywhere}
.arena-defense-row small{margin-left:auto}
.arena-defense-setting{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid #ffffff12;font-size:12px}
.arena-defense>p{font-size:12px;margin:8px 0 0}
.arena-ranking-row{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid #ffffff12;font-size:12px}
.arena-ranking-row strong{display:block;overflow-wrap:anywhere;font-weight:500}
.arena-ranking-row.is-me{background:#c2a66b12;color:#eed59c}
.arena-rank{font-size:17px;text-align:center;color:#bdc5cd}.arena-rank.rank-1{color:#e7c57a}.arena-rank.rank-2{color:#c5d8e8}.arena-rank.rank-3{color:#d3a27d}
.arena-previous-award{display:block;color:#b7a371;font-size:10px;margin-top:4px}
.arena-sidebar .notice{font-size:11px;line-height:1.7;padding:10px}.arena-sidebar .stack{margin:0}
@media(min-width:1100px){.arena-layout{grid-template-columns:minmax(0,1fr) minmax(220px,.55fr)}.arena-standing{grid-column:1/-1}}
@media(max-width:380px){.arena-status-line{gap:8px}.arena-standing .tier-badge{font-size:11px}.arena-faces{gap:7px}.arena-place{font-size:20px}.arena-today{font-size:12px}.arena-reward{padding:4px 6px}}

.defense-team-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #ffffff18}
.defense-team-faces{display:flex;gap:4px;flex-wrap:wrap}
.defense-weight{display:flex;align-items:center;gap:4px;margin-left:auto}
.defense-weight input{width:66px;min-height:38px;padding:5px}
.arena-defense-team{padding-top:10px;font-size:12px;border-top:1px solid #ffffff12;margin-top:10px}
.arena-defense-team .arena-faces{margin-bottom:0}

.arena-ranking h3{font-size:12px;color:#c7b589;margin:6px 0}
.arena-ranking-leaders{border-top:2px solid #bfa46a;padding-top:8px}
.arena-ranking-nearby{margin-top:18px;padding-top:12px;border-top:1px solid #ffffff24}
.arena-ranking-leaders .arena-rank{font-size:21px;font-weight:bold}
.arena-ranking-nearby .is-me{border-left:2px solid #c2a66b}
.arena-defense-settings{margin-top:10px;border-top:1px solid #ffffff18;padding-top:8px}
.arena-defense-settings>summary{color:#e2d8be;font-size:13px}

.formation-party-faces{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;align-items:center}
.formation-party-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.formation-party-choices button{flex:1 0 90px}
.defense-mode-picker{display:grid;gap:6px;margin:12px 0;font-size:12px}.defense-mode-picker select{width:100%;min-height:38px}
.defense-copy-source{margin-top:16px;padding-top:14px;border-top:1px solid #ffffff20;font-size:12px}

.arena-practice-choices { display:flex; gap:8px; margin-bottom:10px; }
.arena-practice-choices button { flex:1; }
