/* PATCH 117 — actual alignment fix. Loaded last. */

/* Contest assets: force one exact control box model and remove any
   legacy/global vertical transforms. */
.contest-assets-page .contest-assets-add {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) max-content !important;
  align-items: center !important;
  gap: 10px !important;
}
.contest-assets-page .contest-assets-add > .contest-assets-input,
.contest-assets-page .contest-assets-add > button {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
  margin: 0 !important;
  align-self: center !important;
  transform: none !important;
  position: static !important;
  vertical-align: middle !important;
}
.contest-assets-page .contest-assets-add > .contest-assets-input {
  display: block !important;
  padding: 0 13px !important;
  line-height: 36px !important;
}
.contest-assets-page .contest-assets-add > button {
  width: max-content !important;
  min-width: 100px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.contest-assets-page .contest-assets-row {
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) 54px !important;
  align-items: center !important;
}
.contest-assets-page .contest-assets-row > .contest-assets-input {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 38px !important;
  min-height: 38px !important;
  margin: 0 !important;
  align-self: center !important;
}
.contest-assets-page .contest-assets-delete {
  box-sizing: border-box !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  margin: 0 auto !important;
  transform: none !important;
  align-self: center !important;
}

/* ABSpass: four direct toolbar children. Keep each child in its own
   flex item and never let a nested form stretch/collapse the buttons. */
.aurum-abspass-page .aurum-abspass-toolbar {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  gap: 8px !important;
}
.aurum-abspass-page .aurum-abspass-toolbar > form {
  min-width: 0 !important;
  margin: 0 !important;
  align-self: center !important;
  box-sizing: border-box !important;
}
.aurum-abspass-page .aurum-abspass-toolbar > form:first-child {
  flex: 1 1 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content max-content !important;
  align-items: center !important;
}
.aurum-abspass-page .aurum-abspass-toolbar > form:nth-of-type(2) {
  flex: 0 1 280px !important;
  width: 280px !important;
  max-width: 280px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  align-items: center !important;
}
.aurum-abspass-page .aurum-abspass-toolbar input,
.aurum-abspass-page .aurum-abspass-toolbar button,
.aurum-abspass-page .aurum-abspass-toolbar a {
  box-sizing: border-box !important;
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
  margin: 0 !important;
  align-self: center !important;
  transform: none !important;
  position: static !important;
}
.aurum-abspass-page .aurum-abspass-toolbar input {
  width: 100% !important;
  min-width: 0 !important;
}
.aurum-abspass-page .aurum-abspass-toolbar button,
.aurum-abspass-page .aurum-abspass-toolbar a {
  width: max-content !important;
  min-width: max-content !important;
  padding: 0 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
.aurum-abspass-page .aurum-abspass-toolbar > button {
  flex: 0 0 auto !important;
}

@media (max-width: 1100px) {
  .aurum-abspass-page .aurum-abspass-toolbar > form:nth-of-type(2) {
    flex-basis: 220px !important;
    width: 220px !important;
    max-width: 220px !important;
  }
}
@media (max-width: 900px) {
  .aurum-abspass-page .aurum-abspass-toolbar {
    flex-wrap: wrap !important;
  }
  .aurum-abspass-page .aurum-abspass-toolbar > form:first-child {
    flex: 1 1 100% !important;
  }
  .aurum-abspass-page .aurum-abspass-toolbar > form:nth-of-type(2) {
    flex: 1 1 260px !important;
    width: auto !important;
    max-width: none !important;
  }
}
@media (max-width: 620px) {
  .contest-assets-page .contest-assets-add {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .contest-assets-page .contest-assets-add > button {
    width: 100% !important;
  }
  .aurum-abspass-page .aurum-abspass-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .aurum-abspass-page .aurum-abspass-toolbar > form:first-child,
  .aurum-abspass-page .aurum-abspass-toolbar > form:nth-of-type(2) {
    width: 100% !important;
    max-width: none !important;
    flex: 1 1 auto !important;
  }
  .aurum-abspass-page .aurum-abspass-toolbar > button {
    width: 100% !important;
  }
}
