body { 
  font-family: "Times New Roman", Times, serif; 
  margin: 0;
  padding: 2rem;
  color: #1c1c1c; 
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 100vh;
  box-sizing: border-box;
}

h1 { 
  margin-top: 0; 
  text-align: center;
}

.panel { 
  border: 3px solid #e6e6e6; 
  border-radius: 11px; 
  padding: 1rem; 
  margin-bottom: 1rem; 
  max-width: 500px; 
  width: 100%; 
  box-sizing: border-box; 
  display: flex;
  flex-direction: column;
  align-items: center;
}

.rgb { 
  display: grid; 
  gap: .6rem; 
  max-width: 420px; 
  width: 100%; 
}

.row { 
  display: grid; 
  grid-template-columns: 1.2rem 1fr 4.5rem; 
  align-items: center; 
  gap: .6rem; 
  width: 100%; 
  min-width: 0; 
}

.row label { font-weight: 600; }
.row input[type="range"] { 
  width: 100%; 
  min-width: 0; 
}

.row input[type="number"] { 
  width: 100%; 
  padding: .35rem .5rem; 
  border: 1px solid #ddd; 
  border-radius: 8px; 
  max-width: 60px; 
  min-width: 0; 
  box-sizing: border-box; 
}

.out { 
  margin: .25rem 0 .75rem; 
  color: #444; 
  font-variant-numeric: tabular-nums; 
  text-align: center;
  font-style: italic;
  width: 100%;
}

.swatch {
  width: 100%; 
  max-width: 100%; 
  height: 140px; 
  border-radius: 12px; 
  display: grid; 
  place-items: center;
  font-size: 1.5rem; 
  font-weight: bold; 
  font-style: italic;
  border: 1px solid #ddd; 
  transition: color .15s ease, background .15s ease;
}

/* Color-coded sliders */
#r {
  accent-color: #ff0000;
}

#g {
  accent-color: #0d610d;
}

#b {
  accent-color: #0000ff;
}

.subtitle {
  text-align: center;
  font-size: 0.9em;
  color: #666;
  margin-top: -10px;
  margin-bottom: 20px;
}
