.room-finish-picker {
  min-width: 0;
  padding: 22px 0 0;
  margin: 0;
  border: 0;
}

.room-finish-picker legend {
  padding: 0;
  font-size: .9375rem;
  font-weight: 500;
  letter-spacing: -.015em;
}

.room-finish-options {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.room-finish-option {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  min-height: 86px;
  padding: 0;
  text-align: left;
  font-size: .875rem;
  line-height: 1.4;
  color: var(--muted);
}

.room-finish-swatch {
  position: relative;
  display: block;
  width: 52px;
  height: 44px;
  outline: 1px solid var(--line);
  outline-offset: 3px;
}

.room-finish-swatch .texture {
  width: 100%;
  height: 100%;
}

.room-finish-swatch svg {
  position: absolute;
  right: -7px;
  bottom: -7px;
  width: 18px;
  height: 18px;
  color: var(--copper);
  border-radius: 50%;
  box-shadow: 0 0 0 3px var(--paper);
  opacity: 0;
}

.room-finish-option[aria-pressed='true'] {
  color: var(--ink);
}

.room-finish-option[aria-pressed='true'] .room-finish-swatch {
  outline-color: var(--copper);
}

.room-finish-option[aria-pressed='true'] svg {
  opacity: 1;
}

.room-preview-status {
  min-height: 1.5em;
  margin-top: 14px;
  font-size: .875rem;
  line-height: 1.5;
  color: var(--muted);
}

.process-visual[data-view='deliver'] .room-finish-picker {
  display: none;
}

@media (max-width: 760px) {
  .room-finish-options { gap: 12px; }
  .room-finish-picker { padding-top: 20px; }
  .room-finish-swatch { width: 44px; height: 40px; }
}

@media (max-width: 340px) {
  .room-finish-options { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
}
