/* Icon action buttons */

.visually-hidden,
.admin-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

a.admin-icon-btn.addlink:not(.admin-add-btn),
a.admin-icon-btn.changelink,
a.admin-icon-btn.viewlink {
  background-image: none;
  padding: 0.25rem;
  font-size: 0;
  line-height: 0;
}

.admin-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  border-radius: 0.375rem;
  border: none;
  background: transparent;
  color: var(--body-quiet-color);
  text-decoration: none;
  transition:
    background 0.15s,
    color 0.15s;
  flex-shrink: 0;
}

.admin-icon-btn:hover,
.admin-icon-btn:focus {
  background: var(--darkened-bg);
  color: var(--body-fg);
  text-decoration: none;
}

.admin-icon-btn img,
.admin-icon-btn svg,
.admin-icon-svg {
  width: 0.875rem;
  height: 0.875rem;
  display: block;
  flex-shrink: 0;
}

.admin-icon-btn--add:hover,
.admin-icon-btn--add:focus,
.admin-icon-btn--change:hover,
.admin-icon-btn--change:focus,
.admin-icon-btn--view:hover,
.admin-icon-btn--view:focus {
  color: var(--body-fg);
}

.admin-icon-btn--primary {
  padding: 0.375rem 0.625rem;
  background: var(--button-bg);
  color: var(--button-fg);
  border: none;
}

.admin-icon-btn--primary .admin-icon-svg,
.admin-icon-btn--primary svg {
  width: 1rem;
  height: 1rem;
}

.admin-icon-btn--primary:hover,
.admin-icon-btn--primary:focus {
  background: var(--button-hover-bg);
  color: var(--button-fg);
}

.admin-row-actions {
  white-space: nowrap;
  text-align: right;
}

/* Object tools — sit on the page title row (Django base.css uses margin-top: -48px). */

.object-tools {
  display: flex;
  justify-content: flex-end;
  float: right;
  position: relative;
  margin: 0 0 1rem;
  margin-top: -48px;
}

.object-tools ul {
  display: flex;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.object-tools li {
  display: block;
  height: auto;
  margin: 0;
  float: none;
}

.object-tools li + li {
  margin-left: 0;
}

.object-tools a.addlink.admin-icon-btn.admin-add-btn {
  background-image: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  float: none;
  font-size: 0.6875rem;
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: 0.03125rem;
  white-space: nowrap;
  border-radius: 0.375rem;
}

.object-tools a.addlink.admin-icon-btn.admin-add-btn:link,
.object-tools a.addlink.admin-icon-btn.admin-add-btn:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  float: none;
  padding: 0.375rem 0.75rem;
  background: var(--button-bg);
  color: var(--button-fg);
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.25;
}

.object-tools a.addlink.admin-icon-btn.admin-add-btn:hover,
.object-tools a.addlink.admin-icon-btn.admin-add-btn:focus {
  background: var(--button-hover-bg);
  color: var(--button-fg);
}

.object-tools a.addlink.admin-icon-btn.admin-add-btn .admin-icon-svg,
.object-tools a.addlink.admin-icon-btn.admin-add-btn svg {
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
}

/* Dashboard app list — Django 5.2 uses #content-main; Django 6+ adds .app-list */

.dashboard .app-list .module,
.dashboard #content-main .module {
  margin-bottom: 1.25rem;
  border: 1px solid var(--border-color);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.dashboard .app-list .module table,
.dashboard #content-main .module table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.dashboard .app-list .module table thead.admin-sr-only,
.dashboard #content-main .module table thead.admin-sr-only {
  visibility: collapse;
}

.dashboard .app-list .module caption,
.dashboard #content-main .module caption {
  text-align: left;
  padding: 0.75rem 1rem;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  background: var(--darkened-bg);
  border-bottom: 1px solid var(--border-color);
}

.dashboard .app-list .module caption a.section,
.dashboard #content-main .module caption a.section {
  color: var(--body-fg);
  text-decoration: none;
}

.dashboard .app-list .module caption a.section:hover,
.dashboard .app-list .module caption a.section:focus,
.dashboard #content-main .module caption a.section:hover,
.dashboard #content-main .module caption a.section:focus {
  color: var(--link-hover-color);
}

.dashboard .app-list .module table tbody tr,
.dashboard #content-main .module table tbody tr {
  border-top: 1px solid var(--hairline-color);
}

.dashboard .app-list .module table th[scope='row'],
.dashboard #content-main .module table th[scope='row'] {
  padding: 0.75rem 1rem;
  font-weight: 500;
  width: auto;
}

.dashboard .app-list .module table th[scope='row'] a,
.dashboard #content-main .module table th[scope='row'] a {
  color: var(--body-fg);
  font-weight: 500;
}

.dashboard .app-list .module table th[scope='row'] a:hover,
.dashboard .app-list .module table th[scope='row'] a:focus,
.dashboard #content-main .module table th[scope='row'] a:hover,
.dashboard #content-main .module table th[scope='row'] a:focus {
  color: var(--link-hover-color);
}

.dashboard .app-list .module table td.admin-row-actions,
.dashboard #content-main .module table td.admin-row-actions {
  display: table-cell;
  width: 4.5rem;
  white-space: nowrap;
  vertical-align: middle;
  text-align: right;
  padding-left: 0.5rem;
  padding-right: 1rem;
}

.dashboard .app-list .module table td.admin-row-actions .admin-icon-btn,
.dashboard #content-main .module table td.admin-row-actions .admin-icon-btn {
  display: inline-flex;
  vertical-align: middle;
  color: var(--body-quiet-color);
}

.dashboard .app-list .module table td.admin-row-actions a,
.dashboard #content-main .module table td.admin-row-actions a {
  display: inline-flex;
  padding-right: 0;
}

.dashboard .app-list .module table td.admin-row-actions .admin-icon-btn + .admin-icon-btn,
.dashboard #content-main .module table td.admin-row-actions .admin-icon-btn + .admin-icon-btn {
  margin-left: 0.375rem;
}

.dashboard .app-list .module table td,
.dashboard #content-main .module table td {
  padding: 0.5rem 1rem;
  width: 1%;
}

.dashboard .app-list .module tr.current-model th[scope='row'] a,
.dashboard #content-main .module tr.current-model th[scope='row'] a {
  font-weight: 600;
}

/* Changelist layout — Django 5: filter is sibling; Django 6+: filter inside container */

#changelist-filter {
  top: auto;
  right: auto;
  position: relative;
  flex: 0 0 15rem;
  order: 1;
  margin: 0;
  padding: 0;
  border: 1px solid var(--border-color);
  border-left: 1px solid var(--border-color);
  border-radius: 0.5rem;
  background: var(--body-bg);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
  overflow: hidden;
}

/* Django 5.2: #changelist-filter is a direct child of #changelist */
#changelist:has(> #changelist-filter) {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
}

#changelist:has(> #changelist-filter) .changelist-form-container {
  flex: 1 1 auto;
  min-width: 0;
}

/* Django 6+: #changelist-filter is inside .changelist-form-container */
#changelist .changelist-form-container:has(> #changelist-filter) {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  width: 100%;
}

#changelist .changelist-form-container:has(> #changelist-filter) > div {
  flex: 1 1 auto;
  min-width: 0;
  max-width: calc(100% - 16rem);
}

@media (max-width: 1024px) {
  #changelist:has(> #changelist-filter) {
    flex-direction: column;
  }

  #changelist .changelist-form-container:has(> #changelist-filter) {
    flex-direction: column;
  }

  #changelist .changelist-form-container:has(> #changelist-filter) > div {
    max-width: 100%;
    width: 100%;
  }

  #changelist-filter {
    flex: none;
    order: 1;
    width: 100%;
    margin-top: 0;
  }
}

/* Breadcrumbs — same horizontal inset as header / logo */

nav[aria-label='Breadcrumbs'] {
  background: var(--breadcrumbs-bg);
  border-bottom: 1px solid var(--border-color);
}

div.breadcrumbs {
  padding: 0.625rem 2.5rem;
  font-size: 0.8125rem;
  color: var(--breadcrumbs-fg);
  background: transparent;
  border: none;
  margin: 0;
  line-height: 1.5;
}

@media (max-width: 1024px) {
  div.breadcrumbs {
    padding-left: 1.875rem;
    padding-right: 1.875rem;
  }
}

@media (max-width: 767px) {
  div.breadcrumbs {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
}

div.breadcrumbs a {
  color: var(--breadcrumbs-link-fg);
  font-weight: 500;
}

div.breadcrumbs a:focus,
div.breadcrumbs a:hover {
  color: var(--link-hover-color);
}

/* Changelist tables */

#changelist .results,
#changelist-form .results {
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  overflow-x: auto;
  overflow-y: visible;
  max-width: 100%;
  overscroll-behavior-x: contain;
  background: var(--body-bg);
}

#changelist table {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: auto;
  width: 100%;
}

#changelist table thead th,
#changelist table tbody td,
#changelist table tbody th {
  width: auto;
  max-width: none;
}

#changelist table .field-email {
  min-width: 16rem;
  white-space: nowrap;
}

#changelist table .field-email a {
  white-space: nowrap;
}

#changelist table .field-first_name,
#changelist table .field-last_name {
  min-width: 6rem;
  white-space: nowrap;
}

#changelist table thead th {
  padding: 0.625rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--body-medium-color);
  background: var(--darkened-bg);
  border-bottom: 1px solid var(--border-color);
}

#changelist table tbody td,
#changelist table tbody th {
  padding: 0.625rem 0.75rem;
  border-bottom: 1px solid var(--hairline-color);
  vertical-align: middle;
  color: var(--body-fg);
}

#changelist table tbody td a {
  color: var(--body-fg);
  font-weight: 500;
}

#changelist table tbody tr:last-child td,
#changelist table tbody tr:last-child th {
  border-bottom: none;
}

#changelist table tbody tr:hover td,
#changelist table tbody tr:hover th {
  background: var(--darkened-bg);
}

#changelist table tbody tr.selected {
  background: var(--selected-row);
}

#changelist .changelist-footer {
  border: 1px solid var(--border-color);
  border-top: none;
  border-radius: 0 0 0.5rem 0.5rem;
  padding: 0.75rem 1rem;
  background: var(--darkened-bg);
}

/* Search toolbar */

/* Shared admin text/search inputs */
.admin-search-field {
  position: relative;
}

.admin-search-field::before {
  content: '';
  position: absolute;
  left: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  background-color: var(--body-medium-color);
  mask: url('../img/icons/search.svg') center / contain no-repeat;
  -webkit-mask: url('../img/icons/search.svg') center / contain no-repeat;
  pointer-events: none;
  z-index: 1;
}

.admin-search-field input[type='search'],
.admin-search-field input[type='text'],
#nav-filter,
#changelist #toolbar #searchbar {
  box-sizing: border-box;
  width: 100%;
  height: 2.5rem;
  margin: 0;
  padding: 0.5rem 0.75rem 0.5rem 2.375rem;
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-family: inherit;
  vertical-align: middle;
  background: var(--body-bg);
  color: var(--body-fg);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

.admin-search-field input::placeholder,
#nav-filter::placeholder,
#changelist #toolbar #searchbar::placeholder {
  color: var(--body-medium-color);
  opacity: 1;
}

.admin-search-field input:focus,
#nav-filter:focus,
#changelist #toolbar #searchbar:focus {
  outline: none;
  border-color: var(--body-medium-color);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--body-medium-color) 22%, transparent);
}

#nav-filter.no-results {
  border-color: var(--error-fg);
  background: var(--message-error-bg);
}

#toolbar {
  padding: 0;
  margin-bottom: 1rem;
  border: none;
  background: transparent;
}

#changelist-search > div {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

#changelist-search label[for='searchbar'] {
  display: none;
}

#changelist-search .admin-search-field {
  flex: 1 1 16rem;
  min-width: 12rem;
}

.admin-search-submit {
  flex-shrink: 0;
}

#changelist-search .small.quiet {
  font-size: 0.8125rem;
  color: var(--body-quiet-color);
}

/* Filter sidebar */

#changelist-filter h2 {
  padding: 0.75rem 1rem;
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--body-medium-color);
  background: var(--darkened-bg);
  border-bottom: 1px solid var(--border-color);
}

#changelist-filter h3,
#changelist-filter details summary {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--body-fg);
  padding: 0.5rem 1rem;
  margin: 0;
}

#changelist-filter details > summary::before {
  content: '';
  display: inline-block;
  width: 0.875rem;
  height: 0.875rem;
  margin-right: 0.375rem;
  vertical-align: -0.125rem;
  background-color: var(--body-quiet-color);
  mask: url('../img/icons/chevron-right.svg') center / contain no-repeat;
  -webkit-mask: url('../img/icons/chevron-right.svg') center / contain no-repeat;
  transition: transform 0.15s;
}

#changelist-filter details[open] > summary::before {
  transform: rotate(90deg);
}

#changelist-filter ul {
  margin: 0;
  padding: 0.25rem 0 0.75rem;
  border-bottom: 1px solid var(--hairline-color);
}

#changelist-filter ul:last-child {
  border-bottom: none;
}

#changelist-filter li {
  margin: 0;
  padding: 0;
}

#changelist-filter a {
  padding: 0.375rem 1rem;
  font-size: 0.8125rem;
  border-radius: 0;
}

#changelist-filter li.selected {
  border-left: 3px solid var(--primary);
  padding-left: 0;
  margin-left: 0;
  background: var(--selected-bg);
}

#changelist-filter li.selected a {
  color: var(--body-fg);
  font-weight: 500;
}

#changelist-filter #changelist-filter-extra-actions {
  padding: 0.5rem 1rem;
  margin: 0;
  border-bottom: 1px solid var(--hairline-color);
}

#changelist-filter #changelist-filter-extra-actions h3 {
  padding: 0;
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 500;
}

#changelist-filter #changelist-filter-extra-actions a.viewlink,
#changelist-filter #changelist-filter-extra-actions a.hidelink {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0;
  background: none;
  color: var(--link-fg);
  font-weight: 500;
}

#changelist-filter #changelist-filter-extra-actions a.viewlink::before,
#changelist-filter #changelist-filter-extra-actions a.hidelink::before {
  content: '';
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
  background-color: currentColor;
  mask: url('../img/icons/eye.svg') center / contain no-repeat;
  -webkit-mask: url('../img/icons/eye.svg') center / contain no-repeat;
}

#changelist.module {
  border: none;
  box-shadow: none;
  background: transparent;
  overflow: visible;
}

#changelist.module.filtered {
  min-height: 0;
}

/* Nav sidebar */

#nav-sidebar {
  padding: 0.75rem;
  box-sizing: border-box;
  overscroll-behavior: contain;
}

#nav-sidebar .admin-nav-filter {
  margin: 0 0 0.75rem;
}

#nav-sidebar .module {
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  margin-bottom: 0.75rem;
  overflow: hidden;
  background: var(--body-bg);
}

#nav-sidebar .module caption {
  padding: 0.625rem 0.75rem;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--body-medium-color);
  background: var(--darkened-bg);
  border-bottom: 1px solid var(--border-color);
}

#nav-sidebar .module caption a.section {
  color: var(--body-fg);
}

#nav-sidebar .current-app caption a.section:link,
#nav-sidebar .current-app caption a.section:visited {
  color: var(--body-fg);
  font-weight: 600;
}

#nav-sidebar .current-app caption a.section:hover,
#nav-sidebar .current-app caption a.section:focus {
  color: var(--link-hover-color);
}

#nav-sidebar .module th[scope='row'] {
  padding: 0.5rem 0.75rem;
}

#nav-sidebar .module th[scope='row'] a {
  color: var(--body-fg);
  font-weight: 500;
}

#nav-sidebar .module th[scope='row'] a:hover,
#nav-sidebar .module th[scope='row'] a:focus {
  color: var(--link-hover-color);
}

#nav-sidebar .current-model th[scope='row'] {
  background: var(--selected-bg);
}

#nav-sidebar .current-model th[scope='row'] a {
  font-weight: 600;
  color: var(--body-loud-color);
}

/* Recent actions sidebar */

#content-related {
  background: transparent;
  width: 18rem;
}

#content-related .module {
  background: transparent;
}

#recent-actions-module {
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
  background: var(--body-bg);
}

#recent-actions-module h2 {
  padding: 0.75rem 1rem;
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--body-medium-color);
  background: var(--darkened-bg);
  border-bottom: 1px solid var(--border-color);
}

#recent-actions-module h3 {
  padding: 0.75rem 1rem 0;
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--body-quiet-color);
}

#recent-actions-module .actionlist {
  padding: 0.25rem 1rem 1rem;
  margin: 0;
}

#recent-actions-module .actionlist li,
#content-related .actionlist li {
  position: relative;
  padding: 0.625rem 0 0.625rem 1.5rem;
  margin-bottom: 0;
  line-height: 1.4;
  background-image: none;
  border-bottom: 1px solid var(--hairline-color);
}

#recent-actions-module .actionlist li:last-child,
#content-related .actionlist li:last-child {
  border-bottom: none;
}

#recent-actions-module .actionlist li::before,
#content-related .actionlist li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.8rem;
  width: 0.875rem;
  height: 0.875rem;
  background-color: var(--body-quiet-color);
  mask: center / contain no-repeat;
  -webkit-mask: center / contain no-repeat;
}

#recent-actions-module .actionlist li.addlink::before,
#content-related .actionlist li.addlink::before {
  mask-image: url('../img/icons/plus.svg');
  -webkit-mask-image: url('../img/icons/plus.svg');
}

#recent-actions-module .actionlist li.changelink::before,
#content-related .actionlist li.changelink::before {
  mask-image: url('../img/icons/pencil.svg');
  -webkit-mask-image: url('../img/icons/pencil.svg');
}

#recent-actions-module .actionlist li.deletelink::before,
#content-related .actionlist li.deletelink::before {
  mask-image: url('../img/icons/plus.svg');
  -webkit-mask-image: url('../img/icons/plus.svg');
  transform: rotate(45deg);
}

#recent-actions-module .actionlist li:hover::before,
#content-related .actionlist li:hover::before {
  background-color: var(--body-fg);
}

#recent-actions-module .actionlist a,
#content-related .actionlist a {
  color: var(--body-fg);
  font-weight: 500;
}

#recent-actions-module .actionlist .mini,
#content-related .actionlist .mini {
  color: var(--body-quiet-color);
  font-size: 0.75rem;
}

/* Change / add form panels */

.change-form #content-main {
  max-width: 56rem;
}

.change-form fieldset.module {
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  margin-bottom: 1rem;
  overflow: hidden;
  background: var(--body-bg);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
  padding: 0;
}

.change-form fieldset.module.aligned .form-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0.75rem 1rem;
}

.change-form fieldset.module.aligned .form-row > label {
  flex: 0 0 10rem;
}

.change-form fieldset .fieldset-heading,
.change-form fieldset .inline-heading,
.change-form .collapse summary .fieldset-heading {
  background: var(--darkened-bg);
  color: var(--body-medium-color);
  border: none;
  border-bottom: 1px solid var(--border-color);
  padding: 0.75rem 1rem;
  margin: 0;
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.change-form .form-row {
  padding: 0.875rem 1rem;
  border-bottom: 1px solid var(--hairline-color);
}

.change-form .form-row:last-child {
  border-bottom: none;
}

.change-form .form-row input[type='text'],
.change-form .form-row input[type='password'],
.change-form .form-row input[type='email'],
.change-form .form-row input[type='url'],
.change-form .form-row input[type='number'],
.change-form .form-row input[type='search'],
.change-form .form-row select,
.change-form .form-row textarea {
  box-sizing: border-box;
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: var(--body-fg);
  background: var(--body-bg);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

.change-form .form-row input[type='text'],
.change-form .form-row input[type='password'],
.change-form .form-row input[type='email'],
.change-form .form-row input[type='url'],
.change-form .form-row input[type='number'],
.change-form .form-row input[type='search'],
.change-form .form-row select {
  height: 2.5rem;
}

.change-form .form-row textarea {
  min-height: 6rem;
  height: auto;
}

.change-form .form-row input:focus,
.change-form .form-row select:focus,
.change-form .form-row textarea:focus {
  outline: none;
  border-color: var(--body-medium-color);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--body-medium-color) 22%, transparent);
}

.change-form .aligned label {
  color: var(--body-medium-color);
  font-weight: 500;
}

.change-form .submit-row {
  border: 1px solid var(--border-color);
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  background: var(--darkened-bg);
  margin: 1rem 0 1.5rem;
  gap: 0.5rem;
}

.change-form .selector {
  gap: 0.75rem;
  width: 100%;
  max-width: 100%;
}

.change-form .selector-available,
.change-form .selector-chosen {
  min-width: 0;
  flex: 1 1 0;
}

.change-form .aligned .form-row .selector {
  width: calc(100% - 160px);
  max-width: none;
}

@media (max-width: 1024px) {
  .change-form .aligned .form-row .selector {
    width: 100%;
  }
}

.change-form .selector-available-title,
.change-form .selector-chosen-title {
  background: var(--darkened-bg);
  color: var(--body-medium-color);
  border-color: var(--border-color);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.change-form .selector-chosen-title {
  background: var(--darkened-bg);
  color: var(--body-medium-color);
}

.change-form .selector .selector-filter {
  border-color: var(--border-color);
  background: var(--body-bg);
}

.change-form .selector .selector-filter input {
  box-sizing: border-box;
  width: 100%;
  height: 2rem;
  padding: 0.375rem 0.75rem;
  border: 1px solid var(--border-color);
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  color: var(--body-fg);
  background: var(--body-bg);
}

.change-form .selector select {
  border: 1px solid var(--border-color);
  border-radius: 0 0 0.375rem 0.375rem;
  background: var(--body-bg);
}

.change-form .selector-chosen .list-footer-display {
  background: var(--darkened-bg);
  color: var(--body-fg);
  border-color: var(--border-color);
  font-size: 0.8125rem;
}

#changelist .paginator {
  color: var(--body-medium-color);
  background: var(--darkened-bg);
  border: 1px solid var(--border-color);
  border-top: none;
  border-radius: 0 0 0.5rem 0.5rem;
  padding: 0.75rem 1rem;
}

#changelist .paginator h2,
#changelist .paginator .visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
}

/* Paginator links */

.paginator a:link,
.paginator a:visited {
  border-radius: 0.375rem;
  padding: 0.25rem 0.5rem;
}
