.aoj-control-centre{--aoj-bg:#0f141a;--aoj-panel:#171e27;--aoj-panel-2:#202a35;--aoj-border:#344252;--aoj-text:#edf3f8;--aoj-muted:#9fb0c0;--aoj-accent:#e15241;--aoj-good:#62c58d;--aoj-danger:#ff766b;background:var(--aoj-bg);color:var(--aoj-text);border-radius:18px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.28);min-height:680px}.aoj-control-centre *{box-sizing:border-box}.aoj-control-centre button,.aoj-control-centre input,.aoj-control-centre select,.aoj-control-centre textarea{font:inherit}.aoj-control-centre__header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:30px 34px;border-bottom:1px solid var(--aoj-border);background:linear-gradient(135deg,#141c25,#0d1218)}.aoj-control-centre__header h1{color:#fff;margin:2px 0 6px;font-size:clamp(28px,4vw,44px);line-height:1}.aoj-control-centre__header p{margin:0;color:var(--aoj-muted);max-width:760px}.aoj-control-centre__eyebrow,.aoj-cc-section__heading span,.aoj-editor-toolbar span,.aoj-event-editor header span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--aoj-accent);font-weight:800}.aoj-control-centre__status{min-width:160px;text-align:right;color:var(--aoj-muted);font-weight:700}.aoj-control-centre__status.is-success{color:var(--aoj-good)}.aoj-control-centre__status.is-error{color:var(--aoj-danger)}.aoj-control-centre__layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:610px}.aoj-control-centre__nav{padding:20px 12px;border-right:1px solid var(--aoj-border);background:#111820}.aoj-control-centre__nav button{display:block;width:100%;border:0;background:transparent;color:var(--aoj-muted);text-align:left;padding:12px 14px;border-radius:9px;cursor:pointer;font-weight:750;margin-bottom:4px}.aoj-control-centre__nav button:hover,.aoj-control-centre__nav button.is-active{background:var(--aoj-panel-2);color:#fff}.aoj-control-centre__nav button.is-active{box-shadow:inset 3px 0 var(--aoj-accent)}.aoj-control-centre__workspace{padding:26px;min-width:0}.aoj-control-centre__loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:260px;color:var(--aoj-muted)}.aoj-spinner{width:22px;height:22px;border:3px solid var(--aoj-border);border-top-color:var(--aoj-accent);border-radius:50%;animation:aoj-spin .7s linear infinite}@keyframes aoj-spin{to{transform:rotate(360deg)}}.aoj-cc-section__heading,.aoj-panel__heading,.aoj-editor-toolbar,.aoj-event-editor header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.aoj-cc-section__heading h2,.aoj-editor-toolbar h3,.aoj-panel h3,.aoj-event-editor h4{margin:2px 0;color:#fff}.aoj-cc-section__heading h2{font-size:30px}.aoj-panel__heading p{margin:4px 0 0;color:var(--aoj-muted)}.aoj-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.aoj-stat-card{border:1px solid var(--aoj-border);background:var(--aoj-panel);color:var(--aoj-text);border-radius:13px;padding:18px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px}.aoj-stat-card:hover{border-color:#587087;transform:translateY(-1px)}.aoj-stat-card strong{font-size:30px}.aoj-stat-card span,.aoj-stat-card small{color:var(--aoj-muted)}.aoj-stat-card--static{cursor:default}.aoj-panel,.aoj-editor-form,.aoj-settings-panel{background:var(--aoj-panel);border:1px solid var(--aoj-border);border-radius:13px;padding:20px;margin-bottom:18px}.aoj-split-view{display:grid;grid-template-columns:minmax(220px,290px) minmax(0,1fr);gap:18px;align-items:start}.aoj-split-view--wide{grid-template-columns:minmax(230px,300px) minmax(0,1fr)}.aoj-record-list{background:var(--aoj-panel);border:1px solid var(--aoj-border);border-radius:13px;padding:8px;position:sticky;top:20px;max-height:75vh;overflow:auto}.aoj-record-list__item{width:100%;border:0;background:transparent;color:var(--aoj-text);display:flex;gap:10px;align-items:center;text-align:left;padding:12px;border-radius:9px;cursor:pointer}.aoj-record-list__item:hover,.aoj-record-list__item.is-active{background:var(--aoj-panel-2)}.aoj-record-list__item strong,.aoj-record-list__item small{display:block}.aoj-record-list__item small{color:var(--aoj-muted);margin-top:3px}.aoj-record-editor{min-width:0}.aoj-team-dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--team-color,#777);flex:0 0 11px}.aoj-team-name{display:flex;gap:8px;align-items:center;white-space:nowrap}.aoj-button-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.aoj-button,.aoj-file-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--aoj-accent);background:var(--aoj-accent);color:#fff!important;text-decoration:none;border-radius:8px;padding:9px 13px;font-weight:800;cursor:pointer;line-height:1.2}.aoj-button:hover{filter:brightness(1.08)}.aoj-button--secondary{background:transparent;border-color:var(--aoj-border);color:var(--aoj-text)!important}.aoj-button--danger{background:transparent;border-color:var(--aoj-danger);color:var(--aoj-danger)!important}.aoj-file-button input{display:none}.aoj-link-button{border:0;background:transparent;color:#8fc5ff;cursor:pointer;padding:3px;font-weight:750}.aoj-link-button--danger{color:var(--aoj-danger)}.aoj-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.aoj-form-grid--event{grid-template-columns:repeat(3,minmax(0,1fr))}.aoj-field{display:flex;flex-direction:column;gap:6px;color:var(--aoj-muted);font-size:13px;font-weight:750}.aoj-field--wide{grid-column:1/-1}.aoj-field input,.aoj-field select,.aoj-field textarea,.aoj-inline-form input,.aoj-inline-form select,.aoj-search-form input,.aoj-table input,.aoj-table select{width:100%;border:1px solid var(--aoj-border);background:#0f151c;color:#fff;border-radius:7px;padding:9px}.aoj-field textarea{resize:vertical}.aoj-field input:disabled,.aoj-field select:disabled,.aoj-field textarea:disabled,.aoj-table input:disabled,.aoj-table select:disabled{opacity:.6}.aoj-table-wrap{overflow:auto}.aoj-table{width:100%;border-collapse:collapse;font-size:13px}.aoj-table th,.aoj-table td{border-bottom:1px solid var(--aoj-border);padding:11px 9px;text-align:left;vertical-align:top}.aoj-table th{color:var(--aoj-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.aoj-table a{color:#8fc5ff}.aoj-person{display:flex;gap:10px;align-items:center;min-width:170px}.aoj-person img{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#0c1117}.aoj-person strong,.aoj-person small{display:block}.aoj-person small{color:var(--aoj-muted)}.aoj-inline-form,.aoj-search-form,.aoj-inline-add{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-top:16px}.aoj-inline-form label{display:flex;flex-direction:column;gap:5px;color:var(--aoj-muted);font-size:12px;min-width:180px}.aoj-checkbox{flex-direction:row!important;align-items:center}.aoj-checkbox input{width:auto}.aoj-empty{color:var(--aoj-muted);margin:10px 0}.aoj-alert{padding:15px;border-radius:9px}.aoj-alert--error{background:rgba(255,118,107,.12);border:1px solid var(--aoj-danger);color:#ffd5d1}.aoj-badge{display:inline-block;border-radius:99px;padding:4px 8px;background:var(--aoj-panel-2);font-size:11px;font-weight:800;text-transform:uppercase}.aoj-badge--open{color:#ffc36e}.aoj-badge--resolved{color:var(--aoj-good)}.aoj-event-editor{border:1px solid var(--aoj-border);border-radius:11px;padding:16px;margin-bottom:15px;background:#111820}.aoj-event-editor.is-locked{border-color:#765f35}.aoj-event-editor header{margin-bottom:12px}.aoj-results-table{min-width:1050px}.aoj-results-table select[multiple]{min-width:160px;min-height:95px}.aoj-mvp-grid{display:grid;gap:6px;min-width:220px}.aoj-mvp-grid label{display:grid;grid-template-columns:34px 1fr 1fr;gap:5px;align-items:center}.aoj-mvp-grid label span{color:var(--aoj-muted);font-size:11px;font-weight:800}.aoj-settings-panel summary{cursor:pointer;font-weight:800;color:#fff}.aoj-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px}.aoj-toggle{display:flex;align-items:center;gap:8px;color:var(--aoj-muted)}.aoj-sticky-actions{position:sticky;bottom:10px;background:rgba(15,20,26,.96);border:1px solid var(--aoj-border);border-radius:11px;padding:12px;display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:18px;z-index:5}.aoj-sticky-actions span{margin-right:auto;color:var(--aoj-muted)}.aoj-revision-list{display:grid;gap:8px;margin-top:14px}.aoj-revision-list>div,.aoj-health-grid>div{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--aoj-border);padding:9px 0}.aoj-revision-list strong,.aoj-revision-list small{display:block}.aoj-revision-list small{color:var(--aoj-muted)}.aoj-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.aoj-health-grid span{color:var(--aoj-muted)}.aoj-health-grid .is-good{color:var(--aoj-good)}.aoj-health-grid .is-bad{color:var(--aoj-danger)}.aoj-control-centre--blocked{min-height:0;padding:24px}.aoj-control-centre--blocked p{margin:0}.aoj-search-form{margin:0}.aoj-search-form input{min-width:260px}
@media(max-width:1050px){.aoj-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aoj-split-view,.aoj-split-view--wide{grid-template-columns:1fr}.aoj-record-list{position:static;display:flex;overflow:auto;max-height:none}.aoj-record-list__item{min-width:220px}.aoj-form-grid--event{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.aoj-control-centre{border-radius:0}.aoj-control-centre__header{padding:22px;display:block}.aoj-control-centre__status{text-align:left;margin-top:10px}.aoj-control-centre__layout{grid-template-columns:1fr}.aoj-control-centre__nav{display:flex;overflow:auto;border-right:0;border-bottom:1px solid var(--aoj-border);padding:8px}.aoj-control-centre__nav button{white-space:nowrap;width:auto;margin:0}.aoj-control-centre__workspace{padding:16px}.aoj-cc-section__heading,.aoj-editor-toolbar,.aoj-panel__heading{display:block}.aoj-button-row{margin-top:12px}.aoj-stat-grid,.aoj-form-grid,.aoj-form-grid--event,.aoj-toggle-grid,.aoj-health-grid{grid-template-columns:1fr}.aoj-record-list{display:block}.aoj-record-list__item{min-width:0}.aoj-inline-add select{width:100%}.aoj-sticky-actions{flex-wrap:wrap}.aoj-sticky-actions span{width:100%}}
.aoj-media-field__body{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:14px;align-items:center}.aoj-media-field__preview{min-height:100px;border:1px dashed var(--aoj-border);border-radius:9px;background:#0f151c;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--aoj-muted);font-weight:600}.aoj-media-field__preview img{display:block;width:100%;height:130px;object-fit:cover}.aoj-media-field:first-of-type .aoj-media-field__preview img{object-fit:contain;background:#0b1016}@media(max-width:760px){.aoj-media-field__body{grid-template-columns:1fr}.aoj-media-field__preview{max-width:none}}
.aoj-roster-search{border:1px solid var(--aoj-border);background:#0f151c;color:#fff;border-radius:7px;padding:8px 10px;min-width:190px}.aoj-season-team-selector{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,1fr);gap:18px;align-items:start}.aoj-season-team-selector select[multiple]{min-height:150px}@media(max-width:760px){.aoj-season-team-selector{grid-template-columns:1fr}.aoj-roster-search{width:100%;margin-top:10px}}

/* 2.1.1: component-width responsive containment. */
.aoj-control-centre {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  container-type: inline-size;
  container-name: aoj-control-centre;
  box-sizing: border-box;
}

.aoj-control-centre__layout,
.aoj-control-centre__workspace,
.aoj-record-editor,
.aoj-editor-form,
.aoj-panel,
.aoj-settings-panel,
.aoj-event-editor,
.aoj-season-team-selector,
.aoj-season-team-selector > *,
.aoj-table-wrap {
  min-width: 0;
  max-width: 100%;
}

.aoj-control-centre__workspace {
  overflow: hidden;
}

.aoj-control-centre input,
.aoj-control-centre select,
.aoj-control-centre textarea,
.aoj-control-centre table {
  max-width: 100%;
}

.aoj-table-wrap {
  display: block;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

.aoj-season-team-selector {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.aoj-season-team-selector select[multiple] {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.aoj-season-team-selector .aoj-table {
  min-width: 300px;
  table-layout: fixed;
}

.aoj-season-team-selector .aoj-table th,
.aoj-season-team-selector .aoj-table td {
  overflow-wrap: anywhere;
}

.aoj-results-table {
  width: max-content;
  max-width: none !important;
}

@container aoj-control-centre (max-width: 920px) {
  .aoj-control-centre__layout {
    grid-template-columns: 1fr;
  }

  .aoj-control-centre__nav {
    display: flex;
    gap: 4px;
    overflow-x: auto;
    overflow-y: hidden;
    border-right: 0;
    border-bottom: 1px solid var(--aoj-border);
    padding: 8px;
    scrollbar-width: thin;
  }

  .aoj-control-centre__nav button {
    flex: 0 0 auto;
    width: auto;
    margin: 0;
    white-space: nowrap;
  }

  .aoj-split-view,
  .aoj-split-view--wide,
  .aoj-season-team-selector {
    grid-template-columns: 1fr;
  }

  .aoj-record-list {
    position: static;
    display: flex;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .aoj-record-list__item {
    flex: 0 0 min(240px, 78cqw);
    min-width: 0;
  }

  .aoj-form-grid--event {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@container aoj-control-centre (max-width: 620px) {
  .aoj-control-centre {
    border-radius: 0;
  }

  .aoj-control-centre__header {
    display: block;
    padding: 20px 16px;
  }

  .aoj-control-centre__status {
    min-width: 0;
    margin-top: 10px;
    text-align: left;
  }

  .aoj-control-centre__workspace {
    padding: 14px;
  }

  .aoj-cc-section__heading,
  .aoj-editor-toolbar,
  .aoj-panel__heading,
  .aoj-event-editor header {
    display: block;
  }

  .aoj-stat-grid,
  .aoj-form-grid,
  .aoj-form-grid--event,
  .aoj-toggle-grid,
  .aoj-health-grid {
    grid-template-columns: 1fr;
  }

  .aoj-panel,
  .aoj-editor-form,
  .aoj-settings-panel,
  .aoj-event-editor {
    padding: 14px;
  }

  .aoj-button-row,
  .aoj-inline-form,
  .aoj-search-form,
  .aoj-inline-add {
    align-items: stretch;
  }

  .aoj-button-row > *,
  .aoj-inline-form > *,
  .aoj-search-form > *,
  .aoj-inline-add > * {
    max-width: 100%;
  }

  .aoj-search-form input,
  .aoj-inline-form label,
  .aoj-roster-search {
    width: 100%;
    min-width: 0;
  }

  .aoj-sticky-actions {
    flex-wrap: wrap;
  }

  .aoj-sticky-actions span {
    width: 100%;
  }
}

/* Leaderboard contribution workflow */
.aoj-competition-duties {
  display: grid;
  gap: 18px;
}

.aoj-duty-panel {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid rgba(125, 156, 190, 0.24);
  border-radius: 14px;
  background: rgba(8, 15, 24, 0.42);
  min-width: 0;
}

.aoj-duty-panel__heading,
.aoj-duty-panel__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.aoj-duty-panel__heading h5 {
  margin: 3px 0 0;
  font-size: 1.08rem;
}

.aoj-duty-panel__heading p {
  margin: 6px 0 0;
  max-width: 68ch;
  color: var(--aoj-cc-muted, #a9b6c7);
}

.aoj-duty-panel__heading > span,
.aoj-duty-panel__heading > div > span {
  color: #7fc4ff;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.aoj-objective-list {
  display: grid;
  gap: 12px;
  margin: 16px 0;
}

.aoj-objective-row {
  display: grid;
  grid-template-columns: minmax(180px, 1.4fr) minmax(145px, .8fr) minmax(80px, .35fr) minmax(190px, 1.2fr) minmax(190px, 1.2fr) auto;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid rgba(125, 156, 190, 0.2);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.025);
  min-width: 0;
}

.aoj-objective-row label {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.aoj-objective-row label > span {
  color: var(--aoj-cc-muted, #a9b6c7);
  font-size: .76rem;
  font-weight: 700;
}

.aoj-objective-row input,
.aoj-objective-row select {
  width: 100%;
  min-width: 0;
}

.aoj-objective-row select[multiple] {
  min-height: 76px;
}

.aoj-objective-summary {
  display: grid;
  gap: 9px;
  margin-top: 14px;
}

.aoj-objective-summary > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(255,255,255,.035);
}

.aoj-objective-summary span {
  color: var(--aoj-cc-muted, #a9b6c7);
  text-align: right;
}

.aoj-recognition-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 14px;
  margin-top: 14px;
}

.aoj-recognition-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(232, 190, 88, .24);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(232,190,88,.07), rgba(255,255,255,.02));
  min-width: 0;
}

.aoj-recognition-card header {
  display: flex;
  align-items: center;
  gap: 9px;
}

.aoj-recognition-card label {
  display: grid;
  gap: 6px;
}

.aoj-recognition-card label > span {
  color: #e8c76e;
  font-size: .76rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.aoj-recognition-card select,
.aoj-recognition-card input {
  width: 100%;
  min-width: 0;
}

.aoj-competition-table th,
.aoj-competition-table td {
  white-space: nowrap;
}

@container aoj-control-centre (max-width: 1050px) {
  .aoj-objective-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .aoj-objective-row__members,
  .aoj-objective-row__note {
    grid-column: span 1;
  }
}

@container aoj-control-centre (max-width: 620px) {
  .aoj-duty-panel__heading,
  .aoj-duty-panel__actions,
  .aoj-objective-summary > div {
    align-items: stretch;
    flex-direction: column;
  }

  .aoj-objective-summary span {
    text-align: left;
  }

  .aoj-objective-row {
    grid-template-columns: 1fr;
  }

  .aoj-objective-row__members,
  .aoj-objective-row__note {
    grid-column: auto;
  }
}

/* 2.3.0: clear scoreboard, editable objectives and separate team media. */
.aoj-ranking-rule {
  display: grid;
  gap: 4px;
  margin: 16px 0 18px;
  padding: 14px 16px;
  border: 1px solid rgba(98, 197, 141, .38);
  border-left: 4px solid var(--aoj-good);
  border-radius: 11px;
  background: rgba(98, 197, 141, .07);
}

.aoj-ranking-rule strong { color: #fff; }
.aoj-ranking-rule span { color: #c6d5df; }

.aoj-media-field__help {
  display: block;
  margin: -2px 0 5px;
  color: var(--aoj-muted);
  font-weight: 500;
}

.aoj-media-field--logo .aoj-media-field__preview {
  width: min(180px, 100%);
  min-height: 160px;
  aspect-ratio: 1;
}

.aoj-media-field--logo .aoj-media-field__preview img {
  height: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  padding: 8px;
  background: #0b1016;
}

.aoj-media-field--cover .aoj-media-field__preview {
  width: min(420px, 100%);
  min-height: 130px;
  aspect-ratio: 16 / 6;
}

.aoj-media-field--cover .aoj-media-field__preview img {
  height: 100%;
  object-fit: cover;
}

.aoj-objective-type-list {
  display: grid;
  gap: 9px;
}

.aoj-objective-type-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(120px, 180px) auto;
  gap: 10px;
  align-items: end;
  padding: 11px;
  border: 1px solid var(--aoj-border);
  border-radius: 10px;
  background: #111820;
}

.aoj-objective-type-row label {
  display: grid;
  gap: 5px;
  color: var(--aoj-muted);
  font-size: 12px;
  font-weight: 750;
}

.aoj-objective-type-row input {
  width: 100%;
  border: 1px solid var(--aoj-border);
  border-radius: 7px;
  background: #0b1117;
  color: #fff;
  padding: 9px;
}

.aoj-event-scoreboard {
  margin-top: 17px;
  padding: 16px;
  border: 1px solid #44566a;
  border-radius: 14px;
  background: #0b1118;
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}

.aoj-event-scoreboard__heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 13px;
}

.aoj-event-scoreboard__heading > div > span {
  color: #7fc4ff;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.aoj-event-scoreboard__heading h5 {
  margin: 2px 0 0;
  color: #fff;
  font-size: 1.15rem;
}

.aoj-score-key {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.aoj-score-key span {
  display: grid;
  gap: 1px;
  min-width: 94px;
  padding: 7px 9px;
  border: 1px solid #34485b;
  border-radius: 8px;
  background: #121c26;
  color: #9fb0c0;
  font-size: 10px;
}

.aoj-score-key b { color: #fff; font-size: 11px; }

.aoj-result-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 12px;
}

.aoj-result-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #3d5064;
  border-top: 4px solid var(--team-color, #65788c);
  border-radius: 13px;
  background: linear-gradient(160deg, #1a2531, #111820 65%);
  color: #edf3f8;
  box-shadow: 0 8px 24px rgba(0,0,0,.18);
}

.aoj-result-card.is-leading {
  border-color: #a88a42;
  border-top-color: #f0c760;
  background: linear-gradient(160deg, rgba(240,199,96,.13), #18222d 55%, #111820);
}

.aoj-result-card__header {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 11px !important;
  margin: 0 !important;
  padding: 14px 14px 11px;
  border-bottom: 1px solid #334558;
}

.aoj-result-card__header > div { min-width: 0; }
.aoj-result-card__header span { color: #8fc5ff; }
.aoj-result-card.is-leading .aoj-result-card__header > div > span { color: #f0c760; }
.aoj-result-card__header h6 { margin: 1px 0 0; color: #fff; font-size: 1.05rem; overflow-wrap: anywhere; }

.aoj-result-team-logo {
  display: grid;
  place-items: center;
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  overflow: hidden;
  border: 2px solid var(--team-color, #65788c);
  border-radius: 10px;
  background: #0b1117;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
}

.aoj-result-team-logo--small { flex-basis: 34px; width: 34px; height: 34px; border-radius: 8px; }
.aoj-result-team-logo img { width: 100%; height: 100%; object-fit: contain; }

.aoj-result-card__scores {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 12px 14px;
}

.aoj-score-box {
  display: grid;
  align-content: start;
  min-width: 0;
  min-height: 104px;
  padding: 10px;
  border: 1px solid #35495d;
  border-radius: 10px;
  background: #0d151d;
}

.aoj-score-box > span {
  min-height: 30px;
  color: #aebdcb;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.25;
  text-transform: uppercase;
}

.aoj-score-box output,
.aoj-score-box input {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 4px 0;
  color: #fff;
  font-size: 1.55rem;
  font-weight: 900;
  line-height: 1.1;
}

.aoj-score-box input {
  height: 38px;
  border: 1px solid #6c8399;
  border-radius: 7px;
  background: #050a0f;
  padding: 4px 7px;
}

.aoj-score-box input:focus { border-color: #8fc5ff; outline: 2px solid rgba(143,197,255,.18); }
.aoj-score-box small { color: #8395a5; font-size: 10px; }
.aoj-score-box--editable { border-color: #55718c; }
.aoj-score-box--total { border-color: rgba(98,197,141,.46); background: rgba(98,197,141,.07); }
.aoj-score-box--total output { color: #80dda7; }

.aoj-result-card__participants {
  display: grid;
  gap: 6px;
  padding: 0 14px 14px;
  color: #b8c6d2;
  font-size: 12px;
  font-weight: 750;
}

.aoj-result-card__participants select {
  width: 100%;
  min-height: 90px;
  border: 1px solid #40556a;
  border-radius: 8px;
  background: #080e14;
  color: #fff;
  padding: 6px;
}

.aoj-result-card__participants small { color: #7f92a3; font-weight: 500; }

.aoj-objective-row {
  grid-template-columns: minmax(150px, 1fr) minmax(180px, 1.2fr) minmax(135px, .8fr) minmax(85px, .42fr) minmax(190px, 1.15fr) minmax(180px, 1fr) auto;
  background: #101923;
}

.aoj-objective-summary strong {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
}

.aoj-objective-summary strong em {
  padding: 3px 7px;
  border: 1px solid #49627a;
  border-radius: 999px;
  color: #8fc5ff;
  font-size: 10px;
  font-style: normal;
  text-transform: uppercase;
}

.aoj-recognition-card__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.aoj-recognition-card__actions [data-mvp-status] {
  color: var(--aoj-good);
  font-size: 12px;
  font-weight: 700;
}

.aoj-recognition-card__actions [data-mvp-status].is-error { color: var(--aoj-danger); }

@container aoj-control-centre (max-width: 880px) {
  .aoj-event-scoreboard__heading { display: grid; }
  .aoj-score-key { justify-content: flex-start; }
  .aoj-objective-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aoj-objective-type-row { grid-template-columns: minmax(0, 1fr) minmax(110px, .45fr) auto; }
}

@container aoj-control-centre (max-width: 520px) {
  .aoj-objective-type-row,
  .aoj-objective-row,
  .aoj-result-card__scores { grid-template-columns: 1fr; }
  .aoj-score-box { min-height: 0; }
  .aoj-score-box > span { min-height: 0; }
  .aoj-score-key { display: grid; grid-template-columns: 1fr; }
  .aoj-score-key span { min-width: 0; }
  .aoj-recognition-card__actions { align-items: stretch; flex-direction: column; }
}


/* v2.3.2: prominent team image controls */
.aoj-team-images-panel {
  margin-bottom: 18px;
  border-color: rgba(255, 91, 107, .42);
  background: linear-gradient(145deg, rgba(255, 91, 107, .08), rgba(17, 24, 32, .98) 42%);
}

.aoj-section-kicker {
  display: block;
  margin-bottom: 4px;
  color: #ff7584;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .13em;
}

.aoj-team-media-grid {
  display: grid;
  grid-template-columns: minmax(220px, .8fr) minmax(320px, 1.2fr);
  gap: 18px;
  align-items: start;
}

.aoj-team-images-panel .aoj-media-field {
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--aoj-border);
  border-radius: 12px;
  background: rgba(8, 13, 19, .72);
}

.aoj-team-images-panel .aoj-media-field > span {
  display: block;
  margin-bottom: 4px;
  color: #fff;
  font-size: 16px;
  font-weight: 800;
}

.aoj-team-images-panel .aoj-media-field__body {
  grid-template-columns: 1fr;
}

.aoj-team-images-panel .aoj-media-field--logo .aoj-media-field__preview,
.aoj-team-images-panel .aoj-media-field--cover .aoj-media-field__preview {
  width: 100%;
}

.aoj-alert--warning {
  border-color: rgba(255, 190, 71, .48);
  background: rgba(255, 190, 71, .09);
  color: #ffe1a3;
}

.aoj-alert--warning code {
  color: #fff;
}

@media (max-width: 900px) {
  .aoj-team-media-grid {
    grid-template-columns: 1fr;
  }
}
