.arena-home-gateway{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px}
.arena-home-gateway h2{margin:10px 0;font-size:30px}
.arena-home-gateway p{font-size:12px;line-height:1.7}
.arena-page{max-width:1440px}
.arena-lobby-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}
.arena-player-summary{display:flex;gap:24px;align-items:center}
.arena-lobby-avatar{width:130px;height:180px;flex-shrink:0;border:1px solid var(--line)}
.arena-player-summary>div:last-child{flex:1;min-width:0}
.arena-player-summary h2{font-size:32px;margin:10px 0}
.arena-player-summary p,.arena-primer p{font-size:12px;line-height:1.8}
.arena-primer h2{font-size:31px;margin:14px 0}
.team-progress{margin:20px 0}
.team-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:11px;color:var(--muted)}
.team-progress strong{font-size:19px;color:var(--text)}
.team-progress .health-bar span{background:linear-gradient(90deg,#87743e,#e5cd85)}
.arena-class-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:24px}
.arena-class-choice h2,.arena-branch-choice h2{font-size:32px;margin:12px 0}
.arena-class-option{padding:12px;border:1px solid var(--line);background:#142019;color:var(--text);text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:10px;min-width:0;transition:border-color .15s,background .15s}
.arena-class-option:hover,.arena-class-option:focus-visible{border-color:var(--gold);background:#263226}
.arena-class-option>.hero-portrait{width:100%;height:160px}
.arena-class-option strong{font:25px Georgia,serif}
.arena-class-option small{font-size:10px;color:var(--muted);line-height:1.6}
.arena-class-option>span:last-child{font-size:10px;color:var(--gold);margin-top:auto}
.arena-branch-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.arena-branch-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 0}
.arena-branch-stats>div{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--muted)}
.arena-branch-stats strong{color:var(--text)}
.arena-difficulties{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.arena-difficulty{padding:22px;border:1px solid var(--line);background:#142019;text-align:left;color:var(--text);cursor:pointer}
.arena-difficulty strong{font:29px Georgia,serif}
.arena-difficulty p{font-size:12px;color:var(--muted);line-height:1.8;min-height:65px}
.arena-difficulty>span{font-size:10px;color:var(--gold)}
.arena-difficulty.selected{border-color:var(--gold);background:linear-gradient(120deg,#333a22,#18241b)}
.arena-start{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:24px}
.arena-start p{font-size:11px}
.arena-controls{position:sticky;top:8px;z-index:12;background:#1b251ef7;box-shadow:0 8px 35px #0007;border-color:#9b875377;margin-bottom:28px;padding:22px}
.arena-controls h2{font-size:29px;margin:8px 0 0}
.arena-clock{font:32px Georgia,serif;font-variant-numeric:tabular-nums;color:var(--gold);background:#0e1914;padding:8px 14px;border:1px solid var(--line);border-radius:3px}
.arena-clock.is-urgent{color:#f1aa88;border-color:#a36d4c}
.arena-action-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.arena-action{display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 8px;background:#121e17;color:var(--muted);border:1px solid var(--line);cursor:pointer;min-width:0}
.arena-action>span{font:22px Georgia,serif;color:var(--gold)}
.arena-action strong{font-size:12px;font-weight:500}
.arena-action.selected{background:#35432a;border-color:var(--gold);color:#f0e4c9}
.arena-action:disabled{opacity:.35;cursor:not-allowed}
.arena-command-description{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:16px 0;padding:12px 0;border-bottom:1px solid var(--line);min-height:50px}
.arena-command-description p{font-size:11px;line-height:1.6;max-width:52%;margin:0;color:var(--muted)}
.arena-command-description strong{font-size:11px;color:#e1cb94;font-weight:400;max-width:46%;line-height:1.7}
.arena-submit-row{display:flex;align-items:center;gap:20px}
.arena-submit-row>.muted{margin-right:auto;font-size:10px;max-width:40%;line-height:1.7}
.arena-submit-row .button{font-size:12px;min-height:45px;padding:12px 20px}
.arena-submit-row .quiet{font-size:10px}
#team-error:empty{display:none}
.arena-team-headings{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:16px}
.arena-team-headings h2{font-size:29px;display:flex;justify-content:space-between;gap:10px;align-items:center}
.arena-team-headings h2>span{font:11px Arial,sans-serif;color:var(--muted)}
.arena-field{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.arena-team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.arena-actor.fighter{position:relative;overflow:hidden;border-color:#68724c66}
.team-1 .arena-actor{border-color:#9c695155}
.arena-actor .fighter-art{height:175px}
.arena-actor .fighter-art>.hero-portrait{height:100%;width:100%}
.arena-actor .fighter-art:after{background:linear-gradient(transparent 65%,#142018)}
.arena-rank{position:absolute;top:9px;left:9px;z-index:2;font-size:7px;color:#e8dbba;padding:4px 6px;background:#152018d9;letter-spacing:1px}
.is-player .arena-rank{background:#66582a;color:#fff0b3}
.arena-target-button{position:absolute;inset:0;z-index:7;background:transparent;border:0;cursor:pointer;color:#f0ddb4;display:flex;justify-content:center;align-items:flex-end;padding:14px}
.arena-target-button>span{font-size:9px;letter-spacing:1px;background:#112218e8;border:1px solid #b6a16599;padding:7px 10px}
.arena-target-button:hover,.arena-target-button:focus-visible{box-shadow:inset 0 0 0 3px #cfb871;background:#b5a15c14}
.arena-actor.is-target{border-color:#e2c87e;box-shadow:0 0 0 2px #e2c87e77}
.arena-actor.is-target .arena-target-button>span{background:#bb9b4b;color:#141d15}
.arena-actor.is-player{box-shadow:inset 0 0 0 1px #c7b46f55;border-color:#bba45f}
.arena-actor-info{padding:12px}
.arena-actor-info h3{font-size:17px;line-height:1.3;min-height:43px;overflow-wrap:anywhere;margin:0 0 7px}
.arena-class-name{display:block;font-size:13px;line-height:1.5;color:#e4cc96;min-height:39px;font-weight:500}
.arena-actor-level{display:block;color:var(--muted);font-size:9px;margin:5px 0 12px}
.arena-hp{display:flex;align-items:baseline;gap:5px;margin-bottom:7px;font-variant-numeric:tabular-nums}
.arena-hp>span{font-size:18px;color:var(--text)}
.arena-hp small{font-size:9px;color:var(--muted)}
.arena-actor .health-bar{height:5px}
.arena-resource-mini{display:grid;grid-template-columns:1fr;gap:4px;margin-top:10px}
.arena-resource-mini>span{height:13px;display:block;position:relative;border:1px solid #65725b55;background:#0b1611;overflow:hidden}
.arena-resource-mini i{display:block;height:100%;background:#a48d5355}
.arena-resource-mini .energy-0{background:#a75a5055}.arena-resource-mini .energy-1{background:#889fb155}.arena-resource-mini .energy-2{background:#70a88e55}.arena-resource-mini .energy-3{background:#c6a66755}
.arena-resource-mini em{position:absolute;inset:1px 3px;font:7px Arial,sans-serif;color:#d6d9c8;font-style:normal;letter-spacing:.1px}
.arena-intent{font-size:9px;line-height:1.6;color:var(--muted);min-height:29px;margin:10px 0 4px;overflow-wrap:anywhere}
.arena-hit-markers{font-size:8px;line-height:1.6;display:flex;flex-wrap:wrap;gap:3px 7px;color:#c6c9b5;min-height:13px}
.arena-actor .impact-number{font-size:36px;letter-spacing:-1px}
.arena-actor .impact-label{font-size:6px;letter-spacing:.6px;top:62%}
.arena-actor .impact-ward{font-size:7px;top:78%}
.arena-result{text-align:center;background:radial-gradient(ellipse at top,#99814330,transparent 70%),#19251b;padding:35px 25px}
.arena-result h2{font-size:35px;margin:15px 0}
.arena-reward-points{font:42px Georgia,serif;color:#e3c882;margin:20px 0}
.arena-result .team-progress{max-width:440px;margin:25px auto}
.arena-result .text-link{margin-left:20px}
.arena-level-change{font-size:20px;color:#dae4bb}
.arena-recap{margin-top:26px}
.arena-recap h3{font-size:22px;margin:22px 0 15px}
.arena-recap>details{margin-top:22px}
.arena-hit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 20px;padding:12px 8px;border-bottom:1px solid #65715433;font-size:11px;line-height:1.6}
.arena-hit-row>span{overflow-wrap:anywhere;color:var(--muted)}
.arena-hit-row b{color:#c5b57e;margin:0 7px}
.arena-hit-row>strong{font-size:14px;white-space:nowrap;font-weight:500}
.arena-hit-row>strong small{font-size:9px;color:var(--muted);font-weight:400}
.arena-hit-row>small{grid-column:1/-1;font-size:9px;color:#ccb780}
.arena-hit-row.involves-player{background:#786c3018;border-left:2px solid #9e8d54}
.arena-orders{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;margin:18px 0}
.arena-orders p{font-size:10px;line-height:1.7;color:var(--muted)}
.arena-orders strong{color:#dfd7be;font-weight:400}
.arena-warning{padding:12px 15px;background:#94784620;border-left:2px solid #bba064;font-size:11px;line-height:1.7;margin:15px 0}
.arena-history{margin-top:24px}
.arena-history>details{margin-top:20px}
.arena-page summary{cursor:pointer;font-size:12px;color:#d9c89c;line-height:1.8}
@media(max-width:1100px){
  .arena-class-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .arena-field{gap:16px}.arena-team{gap:8px}
  .arena-actor .fighter-art{height:145px}
  .arena-actor-info{padding:9px}
  .arena-class-name{font-size:11px}.arena-actor-info h3{font-size:15px;min-height:40px}
  .arena-actor .impact-number{font-size:29px}
}
@media(max-width:800px){
  .arena-lobby-grid{grid-template-columns:1fr}
  .arena-controls{padding:16px}
  .arena-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .arena-action{padding:9px 7px}
  .arena-command-description{margin:10px 0;padding:8px 0;gap:12px}
  .arena-command-description p,.arena-command-description strong{font-size:10px}
  .arena-submit-row{gap:10px;flex-wrap:wrap}.arena-submit-row>.muted{display:none}
  .arena-submit-row .button{margin-right:auto}
  .arena-team{grid-template-columns:repeat(2,minmax(0,1fr))}
  .arena-team-headings h2{font-size:24px;align-items:flex-start;flex-direction:column;gap:5px}
  .arena-home-gateway{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
  .topbar nav{gap:20px;font-size:11px}
  .arena-page .page-heading h1{font-size:32px}
  .arena-team{grid-template-columns:1fr}
  .arena-field,.arena-team-headings{gap:11px}
  .arena-actor .fighter-art{height:165px}
  .arena-actor-info{padding:12px}
  .arena-class-name{font-size:14px;min-height:40px}
  .arena-actor-info h3{font-size:18px;min-height:46px}
  .arena-difficulties{grid-template-columns:1fr;gap:10px}
  .arena-difficulty{padding:18px}.arena-difficulty p{min-height:0;margin:10px 0}
  .arena-start{flex-direction:column;align-items:stretch;gap:10px}
  .arena-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .arena-branch-grid{grid-template-columns:1fr}
  .arena-player-summary{gap:16px;padding:18px}
  .arena-lobby-avatar{width:95px;height:150px}.arena-player-summary h2{font-size:26px}
  .arena-player-summary .eyebrow{font-size:7px;letter-spacing:1px}
  .arena-player-summary .team-progress>div:first-child{align-items:flex-start;flex-direction:column;gap:3px}
  .arena-controls{top:3px;padding:12px;margin-bottom:20px}
  .arena-controls .section-top{margin-bottom:12px}.arena-controls h2{font-size:24px;margin-top:5px}
  .arena-controls .eyebrow{font-size:7px;letter-spacing:1px}
  .arena-clock{font-size:27px;padding:6px 9px}
  .arena-action{gap:6px;padding:8px 4px}.arena-action strong{font-size:10px}.arena-action>span{font-size:18px}
  .arena-command-description{align-items:flex-start}.arena-command-description p{max-width:53%;font-size:9px;line-height:1.6}.arena-command-description strong{font-size:9px;max-width:44%}
  .arena-submit-row .button{font-size:11px;padding:10px 15px;min-height:42px}
  .arena-submit-row .quiet{font-size:9px}
  .arena-orders{grid-template-columns:1fr}
  .arena-hit-row{grid-template-columns:1fr;gap:4px;padding:10px 8px}
  .arena-hit-row>strong{white-space:normal}.arena-hit-row>small{grid-column:1}
  .arena-recap{padding:18px}.arena-recap .section-top{flex-wrap:wrap;gap:10px}.arena-recap h2{font-size:27px}
  .arena-result h2{font-size:29px}.arena-result .text-link{display:block;margin:20px 0 0}
}
@media(prefers-reduced-motion:reduce){.arena-class-option{transition:none}}
.arena-settings{margin-block:24px}.arena-settings-fields{display:flex;flex-wrap:wrap;gap:16px;align-items:end}.arena-settings-fields label{display:grid;gap:8px;flex:1;min-width:120px}.arena-settings select{width:100%;padding:13px;border:1px solid #756044;background:#161c1c;color:#f0e3ca;font:inherit;border-radius:7px}.arena-settings-fields .button{min-height:48px}.arena-skill-learning{margin-top:24px;padding-top:20px;border-top:1px solid #70604455}.arena-upgrade-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.arena-upgrade{display:grid;gap:12px;text-align:left;padding:20px;color:inherit;background:#222b2a;border:1px solid #8a7359;border-radius:9px;font:inherit;cursor:pointer}.arena-upgrade strong{font-size:21px;color:#e3bd7e}.arena-upgrade span{line-height:1.6}.arena-upgrade:hover,.arena-roster-card:hover{border-color:#e3bd7e;background:#303a34}.arena-settings button:disabled{opacity:.5;cursor:default}.arena-class-history{margin-block:24px}.arena-class-history table{width:100%;border-collapse:collapse;white-space:nowrap}.arena-class-history td,.arena-class-history th{padding:14px 12px;text-align:left;border-bottom:1px solid #80705b44}.arena-bot-directory{margin-top:24px}.arena-bot-filters{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.arena-bot-filters .selected{color:#f1cd8c;border-bottom:2px solid #e3bd7e}.arena-roster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.arena-roster-card{display:grid;grid-template-columns:64px 1fr;column-gap:12px;text-align:left;padding:14px;border:1px solid #74634f;border-radius:8px;background:#1c2524;color:inherit;font:inherit;cursor:pointer;overflow-wrap:anywhere}.arena-roster-card img{width:64px;height:80px;object-fit:cover;grid-row:span 3;border-radius:5px}.arena-roster-card strong{font-size:17px;color:#ead5ad}.arena-roster-card span,.arena-roster-card small{font-size:13px;line-height:1.5}.arena-bot-detail{margin:24px 0;overflow-wrap:anywhere}.arena-bot-heading{display:flex;gap:20px;align-items:center}.arena-bot-heading img{width:110px;height:140px;object-fit:cover;border-radius:8px}.arena-bot-history{padding-left:20px}.arena-bot-history li{padding:9px}.arena-bot-history span{display:block;font-size:13px;opacity:.75}.arena-bot-link{font-size:12px;margin:5px 0}.arena-actor-info h3{overflow-wrap:anywhere}
@media(max-width:850px){.arena-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.arena-upgrade-grid,.arena-roster-grid{grid-template-columns:1fr}.arena-settings-fields .button{width:100%}.arena-bot-heading{align-items:flex-start}.arena-bot-heading img{width:70px;height:95px}.arena-bot-heading h2{font-size:25px}.arena-settings{padding:18px}}
.profile-grid>*,.profile-grid>div>*{min-width:0}.character-card h2{overflow-wrap:anywhere}.arena-class-history .arena-contribution-scroll{max-width:100%}
.arena-phase-heading { margin: 1rem 0 .5rem; padding: .5rem .7rem; border-left: 3px solid var(--gold, #d5b56f); background: rgba(213,181,111,.08); font-size: .9rem; }
.arena-team-talk { margin: 22px 0; }
.arena-team-talk h2 { margin: 6px 0; }
.arena-talk-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 18px; }
.arena-talk-message { display: flex; align-items: flex-start; gap: 12px; min-width: 0; padding: 14px; border: 1px solid #b99b6040; border-radius: 12px; background: #b99b6009; }
.arena-talk-message img { width: 48px; height: 60px; object-fit: cover; border-radius: 8px; flex: 0 0 auto; }
.arena-talk-message > div { min-width: 0; overflow-wrap: anywhere; }
.arena-talk-message strong, .arena-talk-message small { display: block; }
.arena-talk-message small { opacity: .7; margin-top: 3px; }
.arena-talk-message p { margin: 9px 0; line-height: 1.5; }
.arena-talk-message button { text-align: left; white-space: normal; }
.arena-exchange-cause, .arena-current-cause p { margin: 5px 0; line-height: 1.5; }
.arena-current-cause { grid-column: 1 / -1; padding: 10px 14px; border-left: 3px solid #b99b60; background: #b99b600c; }
.arena-current-cause:empty { display: none; }
.arena-hit-role { display: block; opacity: .65; margin-top: 3px; }
.arena-coordination-results { margin: 20px 0; }
.arena-coordination-success { padding: 10px 12px; border-left: 3px solid #6cb497; background: #6cb4970d; }
@media (max-width: 900px) { .arena-talk-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) { .arena-talk-grid { grid-template-columns: minmax(0,1fr); } .arena-talk-message { padding: 11px; } }
