#training-panel{box-sizing:border-box;width:min(540px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid #789995;border-radius:18px;background:#132831;color:#f4ead4;box-shadow:0 24px 80px #0009;overflow:auto;font-family:inherit}
#training-panel::backdrop{background:#07141cbb}
.training-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.training-heading h2{margin:3px 0 6px;font-size:25px;letter-spacing:-.7px}
.training-heading small{font:10px monospace;color:#b9cfbf;letter-spacing:2px}
#training-close{width:44px;min-height:44px;border-radius:50%;background:#29454f;color:#fff;font-size:20px}
#training-panel p{font-size:13px;line-height:1.6;color:#b3c8c7}
#training-summary{margin:4px 0 18px;color:#efc48a!important}
#training-settings label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700}
#training-settings select{width:100%;min-height:44px;padding:8px;border:1px solid #658882;border-radius:8px;background:#203b45;color:#fff;font:14px inherit}
.training-resources{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.training-resources fieldset{min-width:0;border:1px solid #44636b;border-radius:10px;padding:12px;display:grid;gap:12px}
.training-resources legend{color:#efc48a;font:11px monospace;padding:0 5px}
#training-settings .training-boxes{flex-direction:row;align-items:center;min-height:44px;gap:10px}
.training-boxes input{width:20px;height:20px;accent-color:#71d6cf}
.collision-key{display:flex;flex-wrap:wrap;gap:12px;font:11px monospace;margin:8px 0 16px}
.collision-key span:nth-child(1){color:#73e9ee}.collision-key span:nth-child(2){color:#f6cc72}.collision-key span:nth-child(3){color:#ff7288}
#training-settings .primary-button{width:100%;min-height:48px}
.training-details,.fighter-guide{border-top:1px solid #44636b;margin-top:18px;padding:14px 0;color:#e4e8d6}
.fighter-guide{margin:16px 24px}.fighter-guide p{font-size:13px;line-height:1.6;color:#b3c8c7}.fighter-guide h3,.fighter-guide h4{color:#efc48a}
.training-details summary,.fighter-guide summary{cursor:pointer;min-height:36px;font:700 12px monospace;letter-spacing:.6px;color:#efc48a}
.training-details h4{margin-bottom:4px;color:#efc48a}.training-actions{display:flex;gap:8px;flex-wrap:wrap}
.training-actions button{min-height:44px;padding:10px 14px;background:#29454f;border:1px solid #658882;border-radius:8px;color:#fff;font:inherit}
.training-actions button:disabled{opacity:.4}.training-actions button:hover:not(:disabled){background:#3e6068}
#training-history{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font:12px/1.8 monospace;color:#c2ded4}
.training-live{margin:0;padding:8px 12px;background:#173c3b;color:#e7d8a6;font:11px monospace;text-align:center}
.start-area select{max-width:100%}.clock-box .round-dots{letter-spacing:2px}
@media(max-width:600px){#training-panel{padding:16px}.training-heading h2{font-size:22px}.arena-toolbar:has(#training-open:not([hidden]))>span{display:none}.mobile-layout .arena-toolbar:has(#training-open:not([hidden]))>div{width:100%;justify-content:space-between}.mobile-layout .arena-toolbar #training-open{padding:0 7px}}
@media(max-height:450px){#training-panel{padding:14px 20px;width:min(680px,calc(100vw - 28px))}.training-resources{margin:10px 0}.training-resources fieldset{grid-template-columns:1fr 1fr}.training-heading h2{font-size:20px}}
.campaign-cpu{display:flex;align-items:center;gap:22px;margin:0 0 22px;padding:14px 18px;border:1px solid #44636b;border-radius:12px;background:#182e36}
.campaign-cpu p{max-width:520px;margin:0;color:#b3c8c7;font-size:13px;line-height:1.6}
.cpu-picker select{min-height:44px}.campaign-cpu .cpu-picker{min-width:170px}
.cpu-cue{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);max-width:90%;padding:8px 14px;border:1px solid #efc48a;border-radius:5px;background:#142d35ed;color:#ffe2ab;text-align:center;font:700 12px/1.3 monospace;pointer-events:none;z-index:4}
@media(max-width:600px){.campaign-cpu{align-items:stretch;gap:10px;flex-direction:column}.cpu-cue{bottom:32px;padding:4px 8px;font-size:10px;max-width:88%}}
.selection-notes p{margin:0 0 10px}.selection-notes p:last-child{margin-bottom:0}
/* Each block owns a row; short screens scroll instead of shrinking controls into notes. */
.mobile-layout .selection{grid-template-rows:auto auto auto auto;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;align-content:start}
.mobile-layout .fighter-options{grid-row:2;max-height:min(46svh,320px)}
.mobile-layout .selection-notes{display:block;grid-column:1/-1;grid-row:3}
.mobile-layout .fighter-guide{grid-column:1/-1;grid-row:4;margin:0}
.portrait-mode .selection{grid-template-rows:auto auto auto auto auto}
.portrait-mode .fighter-options{max-height:32svh}
.portrait-mode .selection-notes{grid-row:4}
.portrait-mode .fighter-guide{grid-row:5}
.mobile-layout .selection{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;overflow-y:auto;align-content:start}
.mobile-layout .selection-content{display:flex;flex-direction:column;gap:8px;grid-column:1;grid-row:2;min-height:auto;overflow:visible}
.mobile-layout .selection-boards{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;height:min(42svh,240px);min-height:150px}
.mobile-layout .roster-side{display:flex;flex-direction:column;min-height:0;min-width:0}
.mobile-layout .roster-label{flex:none;margin-bottom:6px}
.mobile-layout .face-grid,.mobile-layout .fighter-options,.mobile-layout .opponent-options{grid-row:auto;grid-column:auto;max-height:none;flex:1;min-height:0;overflow-y:auto;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));grid-auto-rows:78px}
.mobile-layout .face-grid .fighter-card{height:78px;flex-direction:column;align-items:center;text-align:center;padding:2px 2px 4px}
.mobile-layout .face-grid .fighter-card canvas{width:52px;height:46px;align-self:center}
.mobile-layout .face-grid .fighter-card strong{font-size:9px;margin:0;white-space:normal}
.mobile-layout .start-area{grid-column:auto;grid-row:auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:end;flex:none}
.mobile-layout .matchup-line,.mobile-layout .start-area .primary-button{grid-column:1/-1}
.mobile-layout #cpu-description{display:none}
.mobile-layout .matchup-line strong{font-size:16px}
.mobile-layout #cpu-description{font-size:11px}
.mobile-layout .start-area .primary-button{min-height:48px}
.mobile-layout .fighter-guide{grid-column:1;grid-row:3;margin:0;max-height:22svh;overflow:auto}
.portrait-mode .selection{grid-template-rows:auto auto auto}
.portrait-mode .selection-boards{grid-template-columns:minmax(0,1fr);height:min(52svh,460px);min-height:220px}
.portrait-mode .fighter-options{max-height:none}
.portrait-mode .start-area{display:grid;grid-template-columns:1fr 1fr}
.portrait-mode .fighter-guide{grid-row:3}
@media(max-height:420px){
  .mobile-layout .selection-boards{height:112px;min-height:112px}
  .mobile-layout .fighter-guide{max-height:none;padding-top:4px;margin-top:0}
}
