/* The native mode class drives all contract colours; game settings stay native. */
.csc3 .csc3-workshop.csc3-mode-light {
  --cc-accent: #2fc461;
  --cc-mode-soft: #203c2d;
  --cc-mode-border: #3b8755;
  --cc-placeholder-filter: grayscale(1) sepia(1) saturate(3) hue-rotate(92deg) brightness(.93);
}
.csc3 .csc3-workshop.csc3-mode-medium {
  --cc-accent: #159ddc;
  --cc-mode-soft: #1c3545;
  --cc-mode-border: #327b9e;
  --cc-placeholder-filter: grayscale(1) sepia(1) saturate(5) hue-rotate(165deg) brightness(.97);
}
.csc3 .csc3-workshop.csc3-mode-hard {
  --cc-accent: #b05bec;
  --cc-mode-soft: #352842;
  --cc-mode-border: #8050a6;
  --cc-placeholder-filter: grayscale(1) sepia(1) saturate(5) hue-rotate(225deg) brightness(.97);
}

.csc3 .csc3-workshop .csc3-modes > button:nth-child(1) {
  --cc-button-accent: #2fc461;
  --cc-button-soft: #203c2d;
}
.csc3 .csc3-workshop .csc3-modes > button:nth-child(2) {
  --cc-button-accent: #159ddc;
  --cc-button-soft: #1c3545;
}
.csc3 .csc3-workshop .csc3-modes > button:nth-child(3) {
  --cc-button-accent: #b05bec;
  --cc-button-soft: #352842;
}
.csc3 .csc3-workshop .csc3-modes > button > b {
  color: var(--cc-button-accent);
  background: var(--cc-button-soft);
}
.csc3 .csc3-workshop .csc3-modes > button.is-active {
  background: var(--cc-mode-soft);
  border-color: var(--cc-mode-border);
  color: #f0f5f8;
}
.csc3 .csc3-workshop .csc3-modes > button.is-active > b {
  background: var(--cc-button-accent);
  color: #10202b;
}
.csc3 .csc3-workshop .csc3-slot > img.csc3-slot-placeholder {
  opacity: .88;
  filter: var(--cc-placeholder-filter);
  transition: filter .18s ease, opacity .18s ease;
}
.csc3 .csc3-workshop .csc3-fast {
  color: #10202b;
  background: var(--cc-accent);
  border-color: var(--cc-accent);
}
.csc3 .csc3-workshop .csc3-fast.is-active {
  box-shadow: inset 0 0 0 2px #ffffff9e;
}
.csc3 .csc3-workshop .csc3-submit:not(:disabled) {
  background: var(--cc-accent);
  border-color: var(--cc-accent);
}
.csc3 .csc3-workshop .csc3-submit:not(:disabled):hover {
  background: var(--cc-accent);
  filter: brightness(1.1);
}
.csc3 .csc3-workshop .csc3-loading {
  border-top-color: var(--cc-accent);
}
.csc3 .csc3-workshop .csc3-modes > button,
.csc3 .csc3-workshop .csc3-modes > button > b,
.csc3 .csc3-workshop .csc3-fast,
.csc3 .csc3-workshop .csc3-submit {
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}
@media (prefers-reduced-motion: reduce) {
  .csc3 .csc3-workshop .csc3-slot > img.csc3-slot-placeholder,
  .csc3 .csc3-workshop .csc3-modes > button,
  .csc3 .csc3-workshop .csc3-modes > button > b,
  .csc3 .csc3-workshop .csc3-fast,
  .csc3 .csc3-workshop .csc3-submit {
    transition: none !important;
  }
}
