.lol-skins-page {
  --skin-danger: #f2a58f;
  --skin-surface: rgb(8 25 35 / 94%);
}

.skin-scope-note {
  max-width: 58rem;
  padding: clamp(1.25rem, 3vw, 2rem);
  margin: 0 0 1.5rem;
  border-left: 0.22rem solid var(--lol-gold);
  background: rgb(20 43 56 / 72%);
}

.skin-scope-note h2,
.skin-workspace h2 {
  margin: 0.15rem 0 0;
  color: #fff8df;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.45rem, 3vw, 2.25rem);
  line-height: 1.1;
}

.skin-scope-note p:last-child {
  max-width: 72ch;
  margin: 0.8rem 0 0;
  color: var(--lol-muted);
}

.skin-workspace {
  border: 1px solid var(--lol-line);
  background: var(--skin-surface);
  box-shadow: 0 1.5rem 4rem rgb(0 0 0 / 25%);
}

.skin-workspace-heading {
  display: flex;
  padding: clamp(1.2rem, 3vw, 1.75rem);
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid var(--lol-line);
}

.skin-workspace-heading > a {
  flex: none;
  color: var(--lol-gold-light);
  font-size: 0.85rem;
}

.skin-controls {
  display: grid;
  padding: clamp(1.2rem, 3vw, 1.75rem);
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  border-bottom: 1px solid var(--lol-line);
}

.skin-search,
.skin-year-control {
  position: relative;
  min-width: 0;
}

.skin-search label,
.skin-year-control label {
  display: block;
  margin-bottom: 0.4rem;
  color: var(--lol-gold-light);
  font-size: 0.78rem;
  font-weight: 750;
}

.skin-search input,
.skin-year-control select {
  width: 100%;
  min-height: 3rem;
  padding: 0.65rem 0.8rem;
  border: 1px solid var(--lol-line);
  border-radius: 0;
  background: var(--lol-panel);
  color: #fff8df;
  font: inherit;
}

.skin-search input:focus-visible,
.skin-year-control select:focus-visible,
.skin-search-results [role="option"]:focus-visible {
  position: relative;
  z-index: 2;
  outline: 0.18rem solid var(--lol-gold-light);
  outline-offset: 0.12rem;
}

.skin-search-results {
  position: absolute;
  z-index: 5;
  top: calc(100% + 0.35rem);
  right: 0;
  left: 0;
  max-height: min(22rem, 55vh);
  overflow-y: auto;
  border: 1px solid var(--lol-gold);
  background: var(--lol-night);
  box-shadow: 0 1.2rem 3rem rgb(0 0 0 / 48%);
}

.skin-search-results [role="option"] {
  display: grid;
  width: 100%;
  min-height: 3.75rem;
  padding: 0.55rem 0.7rem;
  border: 0;
  border-bottom: 1px solid var(--lol-line);
  grid-template-columns: 2.6rem minmax(0, 1fr);
  align-items: center;
  gap: 0.65rem;
  background: transparent;
  color: var(--lol-ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.skin-search-results [role="option"]:hover,
.skin-search-results [role="option"][aria-selected="true"] {
  background: var(--lol-panel-soft);
}

.skin-search-results img {
  width: 2.6rem;
  height: 2.6rem;
  border: 1px solid var(--lol-gold);
  border-radius: 50%;
  object-fit: cover;
}

.skin-state {
  padding: 1rem clamp(1.2rem, 3vw, 1.75rem);
  margin: 0;
  border-bottom: 1px solid var(--lol-line);
  color: var(--lol-muted);
}

.skin-state--error {
  color: #ffd8cb;
}

.skin-usage-section > header,
.skin-technical-section > header,
.skin-references {
  padding: clamp(1.2rem, 3vw, 1.75rem);
}

.skin-usage-section > header,
.skin-technical-section > header {
  border-bottom: 1px solid var(--lol-line);
}

.skin-usage-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
}

.skin-usage-heading > div:first-child {
  min-width: 0;
}

.skin-usage-heading .skin-year-control {
  width: min(12rem, 100%);
  flex: none;
}

.skin-usage-section > header > p:last-child,
.skin-technical-section > header > p:last-child {
  max-width: 72ch;
  margin: 0.7rem 0 0;
  color: var(--lol-muted);
}

.skin-technical-section {
  border-top: 1px solid var(--lol-line);
}

.skin-usage-results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.skin-usage-row {
  display: grid;
  min-width: 0;
  padding: 1rem clamp(1.2rem, 3vw, 1.75rem);
  border-bottom: 1px solid var(--lol-line);
  grid-template-columns: minmax(0, 1fr) minmax(14rem, auto);
  align-items: center;
  gap: 1rem;
}

.skin-usage-row:nth-child(odd) {
  border-right: 1px solid var(--lol-line);
}

.skin-usage-row h3 {
  margin: 0;
  color: #fff8df;
  font-size: 1rem;
}

.skin-usage-row dl {
  display: grid;
  margin: 0;
  grid-template-columns: repeat(3, minmax(3.5rem, 1fr));
  gap: 0.45rem;
  text-align: right;
}

.skin-usage-row dt {
  color: var(--lol-muted);
  font-size: 0.68rem;
  font-weight: 750;
  text-transform: uppercase;
}

.skin-usage-row dd {
  margin: 0.12rem 0 0;
  color: #fff8df;
  font-variant-numeric: tabular-nums;
}

.skin-coverage {
  padding: 1rem clamp(1.2rem, 3vw, 1.75rem);
  color: var(--lol-muted);
}

.skin-coverage summary {
  color: var(--lol-gold-light);
  cursor: pointer;
}

.skin-coverage ul {
  columns: 2;
}

.skin-coverage a {
  color: var(--lol-gold-light);
}

.skin-technical-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.skin-card {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(18rem, 0.85fr) minmax(0, 1.15fr);
  align-items: start;
  border-bottom: 1px solid var(--lol-line);
}

.skin-card > header {
  display: grid;
  padding: 1rem;
  grid-row: 1 / span 2;
  grid-template-columns: minmax(8rem, 0.8fr) minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
}

.skin-card img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 1px solid var(--lol-line);
  object-fit: cover;
}

.skin-card h3 {
  margin: 0;
  color: #fff8df;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.3rem, 2.6vw, 2rem);
  line-height: 1.05;
}

.skin-timeline {
  padding: 0;
  margin: 0;
  list-style: none;
}

.skin-timeline li {
  padding: 1rem;
  border-top: 1px solid var(--lol-line);
}

.skin-timeline p {
  margin: 0.3rem 0 0;
  color: var(--lol-muted);
}

.skin-report,
.skin-restriction > h4 {
  padding: 1rem;
  border-top: 1px solid var(--lol-line);
}

.skin-report,
.skin-restriction {
  grid-column: 2;
  border-left: 1px solid var(--lol-line);
}

.skin-report h4,
.skin-restriction h4 {
  margin: 0;
  color: var(--lol-gold-light);
  font-size: 0.78rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.skin-report p {
  margin: 0.55rem 0 0;
  color: var(--lol-muted);
}

.skin-restriction > h4 {
  margin: 0;
  padding-bottom: 0.2rem;
}

.skin-card-references {
  white-space: nowrap;
}

.skin-timeline a,
.skin-references a {
  color: var(--lol-gold-light);
  overflow-wrap: anywhere;
}

.skin-references {
  border-top: 1px solid var(--lol-line);
}

.skin-references ol {
  padding-left: 1.4rem;
  margin: 1rem 0 0;
}

.skin-references li {
  max-width: 80ch;
  padding-left: 0.35rem;
  overflow-wrap: anywhere;
}

.skin-references li + li {
  margin-top: 0.75rem;
}

.skin-reference-url {
  display: block;
  color: var(--lol-muted);
  font-size: 0.76rem;
}

@media (max-width: 44rem) {
  .skin-workspace-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .skin-usage-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .skin-controls,
  .skin-usage-results {
    grid-template-columns: 1fr;
  }

  .skin-usage-row {
    grid-template-columns: 1fr;
  }

  .skin-usage-row:nth-child(odd) {
    border-right: 0;
  }

  .skin-usage-row dl {
    text-align: left;
  }

  .skin-coverage ul {
    columns: 1;
  }

  .skin-card {
    grid-template-columns: 1fr;
  }

  .skin-card > header {
    grid-row: auto;
  }

  .skin-report,
  .skin-restriction {
    grid-column: 1;
    border-left: 0;
  }

  .skin-card > header {
    grid-template-columns: minmax(6rem, 0.72fr) minmax(0, 1fr);
  }
}

@media (max-width: 25rem) {
  .skin-card > header {
    grid-template-columns: 1fr;
  }
}

@media (forced-colors: active) {
  .skin-scope-note,
  .skin-workspace,
  .skin-search input,
  .skin-year-control select,
  .skin-search-results {
    background: Canvas;
    color: CanvasText;
  }

  .skin-search-results [role="option"][aria-selected="true"] {
    outline: 0.18rem solid Highlight;
    outline-offset: -0.3rem;
  }
}
