/* === Configurator (room mockup) === */
.configurator {
  background: var(--bg-subtle);
  padding: 28px;
  margin-bottom: 28px;
}
.configurator__label {
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-mute);
  margin-bottom: 16px;
}
.configurator__room {
  position: relative;
  aspect-ratio: 4/3;
  background: linear-gradient(180deg, #d6cfbf 0%, #c9c0ad 60%, #b5ab93 100%);
  overflow: hidden;
}
.configurator__wall {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, #ece5d4 0%, #ddd4be 65%, #d4caaf 65%, #c8be9f 100%);
}
.configurator__wall::after {
  content: '';
  position: absolute; left: 0; right: 0; top: 65%; height: 1px;
  background: rgba(0,0,0,0.12);
}
.configurator__floor {
  position: absolute;
  left: 0; right: 0; bottom: 0; height: 35%;
  background: repeating-linear-gradient(90deg, #b09878 0, #b09878 60px, #a08c6e 60px, #a08c6e 61px);
  opacity: 0.85;
}
.configurator__sofa {
  position: absolute;
  left: 8%; right: 8%; bottom: 4%; height: 22%;
  background: linear-gradient(180deg, #6f6960 0%, #524d44 100%);
  border-radius: 6px 6px 2px 2px;
}
.configurator__sofa::before {
  content: '';
  position: absolute; left: -3%; right: -3%; top: -8px; height: 16px;
  background: #524d44; border-radius: 4px;
}
.configurator__artwork {
  position: absolute;
  top: 18%; left: 50%;
  transform: translateX(-50%);
  background: var(--frame-color, #1a1814);
  padding: var(--frame-pad, 18px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.25), 0 2px 6px rgba(0,0,0,0.15);
  width: var(--art-width, 35%);
  transition: width 500ms var(--ease), padding 500ms var(--ease), background 500ms var(--ease);
}
.configurator__artwork.frame--none { padding: 0; background: transparent; box-shadow: 0 8px 24px rgba(0,0,0,0.18); }
.configurator__artwork.frame--white { background: #f4ecd8; }
.configurator__artwork.frame--oak { background: linear-gradient(135deg, #b88f5e 0%, #8a6536 100%); }
.configurator__artwork .img-frame {
  aspect-ratio: 3/4;
  background: var(--bg-subtle);
}
.configurator__hint {
  position: absolute; left: 12px; bottom: 12px;
  font-family: var(--mono);
  font-size: 9px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.4);
}
.configurator__controls {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 20px;
}
.configurator__group label {
  display: block;
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-mute);
  margin-bottom: 8px;
}
.configurator__chips { display: flex; gap: 6px; flex-wrap: wrap; }
.configurator__chips button {
  flex: 1;
  padding: 8px 10px;
  border: 1px solid var(--line);
  background: var(--bg-elevated);
  font-size: 11px;
  letter-spacing: 0.05em;
  color: var(--ink-soft);
  text-transform: capitalize;
  transition: all var(--t) var(--ease);
}
.configurator__chips button.active { border-color: var(--ink); background: var(--ink); color: var(--bg); }

.frame-swatch {
  width: 28px; height: 28px;
  border: 2px solid var(--line);
  border-radius: 999px;
  cursor: pointer;
  transition: border-color var(--t) var(--ease);
}
.frame-swatch.active { border-color: var(--ink); }
.frame-swatch--none { background: repeating-linear-gradient(45deg, var(--bg) 0 4px, var(--line) 4px 5px); }
.frame-swatch--black { background: #1a1814; }
.frame-swatch--white { background: #f4ecd8; }
.frame-swatch--oak { background: linear-gradient(135deg, #b88f5e 0%, #8a6536 100%); }

/* Day-nav left/right text alignment */
.day-nav a:first-child { display: flex; flex-direction: column; }
