.markdown-body .preference-upload {
  margin: 2rem 0 2.5rem;
  padding: 1.4rem 0 1.2rem;
  border-top: 2px solid #273f4c;
  border-bottom: 1px solid #d9e2e6;
  color: #263944;
}
.preference-upload *, .preference-upload *::before, .preference-upload *::after { box-sizing: border-box; }
.markdown-body .preference-upload h3,
.markdown-body .preference-upload h4,
.markdown-body .preference-upload p { margin-top: 0; }
.markdown-body .preference-upload h3 { margin-bottom: .3rem; border: 0; font-size: 1.26rem; }
.preference-upload-head { max-width: 45rem; }
.preference-upload-head p, .preference-upload-columns p,
.preference-upload-review > p, .preference-upload-results > p {
  color: #596d77;
  font-size: .88rem;
  line-height: 1.5;
}
.preference-upload-file { position: relative; display: inline-flex; flex-wrap: wrap; align-items: center; gap: .45rem .7rem; max-width: 100%; cursor: pointer; vertical-align: middle; }
.preference-upload-file-label { flex-basis: 100%; color: #40535e; font-size: .78rem; font-weight: 700; }
.preference-upload-file-button { display: inline-flex; align-items: center; min-height: 2.3rem; padding: .4rem .85rem; border: 1px solid #315b70; border-radius: 4px; background: #315b70; color: white; font-size: .83rem; font-weight: 700; }
.preference-upload-file:hover .preference-upload-file-button { background: #24485b; }
.preference-upload-file:focus-within .preference-upload-file-button { outline: 2px solid #2b6e91; outline-offset: 2px; }
.preference-upload-file-name { max-width: min(19rem, 60vw); overflow: hidden; color: #596d77; font-size: .82rem; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.preference-upload-file input { position: absolute; width: 1px; height: 1px; padding: 0; opacity: 0; }
.preference-upload-review-toggle { margin: .8rem 0 0; padding: .3rem 0; border: 0; background: none; color: #286b91; font-size: .82rem; font-weight: 700; }
.preference-upload-review-toggle:hover { color: #174b68; text-decoration: underline; }
.preference-upload-review-toggle[aria-expanded="true"] { color: #173e52; }
.preference-upload-head [data-role="coverage"] { color: #596d77; font-size: .82rem; }
.preference-upload-columns, .preference-upload-review, .preference-upload-results {
  margin-top: 1.35rem;
  padding-top: 1.25rem;
  border-top: 1px solid #dbe5e9;
}
.preference-upload-column-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
  margin-bottom: 1rem;
}
.preference-upload-column-grid label, .preference-upload-search label {
  display: grid;
  gap: .25rem;
  font-size: .78rem;
  font-weight: 700;
  color: #40535e;
}
.preference-upload select, .preference-upload input[type="search"] {
  width: 100%;
  min-height: 2.25rem;
  padding: .35rem .55rem;
  border: 1px solid #bbcbd2;
  border-radius: 4px;
  background: white;
  color: #263944;
  font: inherit;
  font-size: .83rem;
}
.preference-upload button { font: inherit; cursor: pointer; }
.preference-upload button:disabled { opacity: .45; cursor: default; }
.preference-upload [data-role="match"] {
  min-height: 2.4rem;
  padding: .45rem .9rem;
  border: 1px solid #315b70;
  border-radius: 4px;
  background: #315b70;
  color: white;
  font-size: .85rem;
  font-weight: 700;
}
.preference-upload [data-role="match"]:hover:not(:disabled) { background: #24485b; }
.markdown-body .preference-upload h4 { margin-bottom: .3rem; border: 0; font-size: 1.1rem; }
.preference-upload-toggle { display: inline-flex; align-items: center; gap: .45rem; margin: .25rem 0 .8rem; font-size: .81rem; }
.preference-upload-table-wrap { max-height: 23rem; overflow: auto; border: 1px solid #dbe5e9; }
.markdown-body .preference-upload table { display: table; width: 100%; margin: 0; border: 0; font-size: .8rem; }
.markdown-body .preference-upload th,
.markdown-body .preference-upload td { padding: .45rem .6rem; border: 0; border-bottom: 1px solid #e5ecef; background: white; vertical-align: top; }
.markdown-body .preference-upload th { position: sticky; top: 0; z-index: 1; background: #f2f6f8; text-align: left; color: #536976; }
.preference-upload td:first-child { min-width: 11rem; }
.preference-upload td:nth-child(2) { white-space: nowrap; font-variant-numeric: tabular-nums; }
.preference-upload td:last-child { min-width: 13rem; }
.preference-upload td small { display: block; color: #7a8a91; font-size: .71rem; }
.preference-upload-more { margin: .65rem 0 0; padding: .2rem 0; border: 0; background: none; color: #286b91; font-size: .8rem; }
.preference-upload-close-review { margin-top: .9rem; padding: .4rem .8rem; border: 1px solid #bbcbd2; border-radius: 4px; background: white; color: #315b70; font-size: .82rem; font-weight: 700; }
.preference-upload-close-review:hover { border-color: #315b70; background: #f2f6f8; }
.preference-upload-search { margin: 1rem 0; padding: .85rem; border: 1px solid #cddde3; background: #f7fafb; }
.preference-upload-search [data-role="search-results"] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem; margin: .65rem 0; }
.preference-upload-search button { padding: .4rem .55rem; border: 1px solid #d1dfe4; background: white; color: #315b70; font-size: .79rem; text-align: left; }
.preference-upload-search button:hover { background: #e9f2f6; }
.preference-upload-result-tabs { display: flex; gap: 1.2rem; margin: 1rem 0 .7rem; border-bottom: 1px solid #dbe5e9; }
.preference-upload-result-tabs button { padding: .5rem .1rem .55rem; border: 0; border-bottom: 2px solid transparent; background: none; color: #667a84; font-size: .86rem; font-weight: 700; }
.preference-upload-result-tabs button[aria-selected="true"] { border-bottom-color: #315b70; color: #173e52; }
.preference-upload-result-tabs button:hover { color: #173e52; }
.preference-upload-result-note { margin: .35rem 0 .65rem; color: #667a84; font-size: .76rem; }
.preference-upload-scale,
.preference-upload-factor-row { display: grid; grid-template-columns: minmax(11rem, 1.15fr) minmax(11rem, 1fr) 3.5rem; gap: .7rem; align-items: center; }
.preference-upload-scale { margin: 1.1rem 0 .15rem; color: #71828a; font-size: .72rem; }
.preference-upload-scale span { grid-row: 1; }
.preference-upload-scale span:first-child { grid-column: 2; justify-self: start; }
.preference-upload-scale span:nth-child(2) { grid-column: 2; justify-self: center; }
.preference-upload-scale span:nth-child(3) { grid-column: 2; justify-self: end; }
.preference-upload-factor-row {
  width: 100%; min-height: 2.05rem; padding: .3rem .1rem;
  border-bottom: 1px solid #e6ecef;
  color: #315b70; text-align: left; font-size: .79rem;
}
.preference-upload-factor-name { overflow-wrap: anywhere; }
.preference-upload-factor-track { position: relative; height: 1.2rem; background: #f3f6f7; }
.preference-upload-factor-track::before { content: ""; position: absolute; left: 50%; top: 0; bottom: 0; width: 1px; background: #a4b6be; }
.preference-upload-factor-point { position: absolute; top: .27rem; width: .65rem; height: .65rem; transform: translateX(-50%); border-radius: 50%; background: #315b70; box-shadow: 0 0 0 2px white; }
.preference-upload-factor-value { text-align: right; font-weight: 700; font-variant-numeric: tabular-nums; }
.markdown-body .preference-upload .preference-upload-dimension-table { width: 100%; table-layout: fixed; font-size: .75rem; }
.markdown-body .preference-upload .preference-upload-dimension-table th,
.markdown-body .preference-upload .preference-upload-dimension-table td { padding: .32rem .4rem; background: transparent; border-bottom: 1px solid #e3ebee; }
.markdown-body .preference-upload .preference-upload-dimension-table th:first-child,
.markdown-body .preference-upload .preference-upload-dimension-table td:first-child { width: 54%; min-width: 0; overflow-wrap: anywhere; }
.markdown-body .preference-upload .preference-upload-dimension-table th:not(:first-child),
.markdown-body .preference-upload .preference-upload-dimension-table td:not(:first-child) { min-width: 0; text-align: right; font-variant-numeric: tabular-nums; }
.markdown-body .preference-upload .preference-upload-dimension-table td:not(:first-child) { white-space: nowrap; }
.preference-upload-dimension-sort-mode { display: inline-flex; align-items: center; gap: .35rem; margin: 0 0 .7rem; color: #536976; font-size: .76rem; }
.markdown-body .preference-upload .preference-upload-dimension-table th button { width: 100%; padding: 0; border: 0; background: none; color: inherit; font: inherit; font-weight: inherit; text-align: left; }
.markdown-body .preference-upload .preference-upload-dimension-table th:not(:first-child) button { text-align: right; }
.markdown-body .preference-upload .preference-upload-dimension-table th button:hover { text-decoration: underline; }
.preference-upload-sort-arrow { white-space: nowrap; }
.markdown-body .preference-upload-caveat { margin-top: .85rem; font-size: .75rem; }
.preference-upload-suggestions { margin-top: 1.6rem; padding-top: 1rem; border-top: 1px solid #dbe5e9; }
.preference-upload-suggestions h4 { margin: 0 0 .3rem; }
.preference-upload-suggestions > p { margin: 0 0 .9rem; color: #667a84; font-size: .79rem; }
.preference-upload-suggestion-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem; }
.preference-upload-suggestion-columns h5 { margin: 0 0 .45rem; color: #315b70; }
.preference-upload-suggestion-columns ol { margin: 0; padding-left: 1.35rem; font-size: .81rem; }
.preference-upload-suggestion-columns li { padding: .16rem 0; }
.preference-upload-status { min-height: 1rem; margin: 1rem 0 0; color: #637580; font-size: .79rem; }
.preference-upload-status.is-error { color: #9a473a; }
.preference-upload :focus-visible { outline: 2px solid #2b6e91; outline-offset: 2px; }
@media (max-width: 690px) {
  .preference-upload-column-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .preference-upload-scale, .preference-upload-factor-row { grid-template-columns: minmax(7rem, 1.1fr) minmax(6rem, 1fr) 2.7rem; gap: .35rem; }
  .preference-upload-factor-row { font-size: .73rem; }
  .preference-upload-search [data-role="search-results"] { grid-template-columns: 1fr; }
  .preference-upload-suggestion-columns { grid-template-columns: 1fr; gap: .8rem; }
}
@media (max-width: 420px) { .preference-upload-column-grid { grid-template-columns: 1fr; } }
