.battle-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;margin:18px 0 22px}
.battle-controls label,.battle-option-grid label{display:flex;flex-direction:column;gap:7px;min-width:0;color:var(--muted);font-size:11px;font-weight:600;line-height:1.5}
.battle-controls select,.battle-option-grid select{width:100%;min-width:0;min-height:42px;padding:8px 28px 8px 10px;border:1px solid #535b48;border-radius:5px;background:#1e241b;color:var(--ink);font:inherit;font-size:14px;line-height:1.5;color-scheme:dark}
.battle-controls>button{min-height:42px;padding:8px 12px;font-size:11px;white-space:nowrap}
.battle-active-summary{margin:-10px 0 18px;color:#b5c1a5;font-size:10px;line-height:1.8}
.battle-rule-details{margin:14px 0;padding:10px 12px;border:1px solid #424b37;border-radius:5px;color:#b8c2ac;font-size:11px;line-height:1.8}
.battle-rule-details summary{cursor:pointer;color:#d0d8c5;font-weight:600}
.battle-rule-details ul,.battle-settings-preview ul{margin:8px 0 12px;padding-left:18px}
.battle-applied{margin:10px 0;color:#c3cfb3;font-size:11px;line-height:1.8}
.battle-limit-title{margin:12px 0 0;color:#d1d8c8;font-weight:600}
.battle-settings-dialog{width:min(600px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:22px;overflow:auto;overscroll-behavior:contain;color-scheme:dark}
.battle-settings-dialog h2{font-size:19px}
.battle-form-name{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.6}
.battle-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 16px}
.battle-option-grid label:last-child{grid-column:1/-1}
.battle-checks{display:flex;flex-wrap:wrap;gap:10px 16px}
.battle-checks label{display:flex;align-items:center;gap:7px;color:#d5ddc9;font-size:12px;line-height:1.6;cursor:pointer}
.battle-checks input{width:17px;height:17px;margin:0;accent-color:#ed644b}
.battle-condition-help{margin:12px 0;color:#a9b69b;font-size:10px;line-height:1.9}
.battle-settings-preview{padding:12px;border:1px solid #414d35;border-radius:6px;background:#1c2318;color:#aebda0;font-size:11px;line-height:1.8}
.battle-preview-weak{margin:0;color:#efe3bd;font-size:12px;font-weight:600;line-height:1.8}
.battle-settings-dialog .dialog-actions{position:sticky;bottom:-22px;gap:10px;margin-top:18px;padding:12px 0 0;background:#242a20}
.team-row-actions{--team-action-size:26px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;align-self:start;gap:3px;min-width:0;min-height:0}
.team-row-actions .team-remove,.team-row-actions .team-battle-edit{position:relative;display:grid;place-items:center;align-self:center;flex:0 0 var(--team-action-size);width:var(--team-action-size);height:var(--team-action-size);min-height:var(--team-action-size);max-height:var(--team-action-size);margin:0;padding:0;border:0;border-radius:4px;background:none;color:#aab59c;line-height:1;cursor:pointer}
.team-row-actions .team-remove::before,.team-row-actions .team-battle-edit::before{position:absolute;inset:2px;border:1px solid #46513d;border-radius:3px;background:#252b21;pointer-events:none;content:""}
.team-row-actions svg.team-action-icon{position:relative;display:block;flex:none;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.team-row-actions .team-remove:hover,.team-row-actions .team-battle-edit:hover{color:#f0d7af}
.team-row-actions .team-remove:hover::before,.team-row-actions .team-battle-edit:hover::before{border-color:#657754;background:#35402b}
.team-row-actions .team-remove:focus-visible,.team-row-actions .team-battle-edit:focus-visible{outline-offset:1px}
.team-row .team-form{display:none}
.team-row .team-battle-state{display:block;max-width:100%;color:#a8b698;font-size:10px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-comparison .team-battle-state{font-size:9px}
.team-comparison .team-row{grid-template-columns:80px minmax(0,1fr) 26px}
@media(max-width:900px){
  .team-row-actions{--team-action-size:24px}
  .team-comparison .team-row{grid-template-columns:66px minmax(0,1fr) 24px}
}
@media(max-width:760px){
  .battle-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .battle-controls>button{grid-column:1/-1;justify-self:end;min-height:34px}
  .battle-controls select,.battle-option-grid select{font-size:16px}
  .battle-settings-dialog{padding:16px;max-height:calc(100dvh - 16px)}
  .battle-settings-dialog .dialog-actions{bottom:-16px}
  .battle-settings-dialog h2{font-size:17px}
  .team-row .team-battle-state{font-size:8px;line-height:1.15}
  .team-comparison .team-row{grid-template-columns:minmax(0,1fr) 50px}
  .team-comparison .team-row-actions{--team-action-size:24px;grid-column:2;grid-row:1;flex-direction:row;align-self:center;align-items:center;gap:2px}
}
@media(max-width:380px){.team-row-actions{--team-action-size:20px}}
.battle-remove-member{display:block;margin:16px auto 0;padding:7px 12px;border:0;background:transparent;color:#dc9f91;font-size:11px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px) and (max-height:620px){
  .team-row .team-battle-state{font-size:7px}
  .team-comparison .team-row{grid-template-columns:minmax(0,1fr) 46px}
  .team-comparison .team-row-actions{--team-action-size:22px}
}
