/* Merged stylesheet: style_merged.css
   Sources: style.css + style_custom_colors.css
   Rule: last definition per selector wins; duplicates removed. */

/* Minimal layout + table */
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; 
background: #eef2f7; 
margin: 0; 
padding: 20px;
}
.container {
max-width: 1100px; margin: auto; 
background: #fff; 
padding: 30px; 
border-radius: 12px; 
box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}
h2 {
text-align: center; 
color: #333; 
margin-bottom: 20px;
}
form {
display: grid; 
gap: 20px; 
margin-bottom: 30px;
}
fieldset {
border: 1px solid #ccc; 
border-radius: 8px; 
padding: 15px 20px; 
background: #fafafa;
}
fieldset legend {
font-weight: bold; 
color: #444;
}
label, input, select {
display: block; 
margin: 8px 0; 
width: 100%; 
max-width: 320px;
}
.dual-settings {
display: grid; grid-template-columns: 1fr; gap: 20px;
}
@media (min-width: 950px) {
.dual-settings { grid-template-columns: 1fr 1fr;
}
}

button {
padding: 10px 20px; font-size: 1rem; background-color: #1976d2; color: white; border: none; border-radius: 6px; cursor: pointer; transition: background-color 0.3s ease;
}
button:hover {
background-color: #1565c0;
}
.calendar-grid {
border-collapse: collapse; width: 100%; max-width: 1000px; table-layout: fixed; font-size: 0.9rem;
}
.calendar-grid th, .calendar-grid td {
border: 1px solid #ccc; padding: 8px; width: 14.28%; height: 100px; vertical-align: top; text-align: left;
}
.calendar-grid th {
background-color: #f5f5f5; text-align: center;
}
.day {
border-radius: 10px; transition: transform 0.2s;
}
.day:hover {
transform: scale(1.02);
}
/* Chips */
.legend-chip.trt {
background: yellow;
padding: 5px;
}
.legend-chip.nand {
background: lightblue;
padding: 5px;
}
.legend-chip.pep {
background: #ce93d8;
padding: 5px;
}
.legend-chip.trt-pep {
background: lightgreen;
padding: 5px;
}
/* used for TRT + PEP */
.legend-chip.trt-nand {
background: orange;
padding: 5px;
}
/* used for TRT + NAND */
.legend-chip.all3 {
background: hotpink;
padding: 5px;
}
.note {
margin-top: 1rem; font-size: 0.875rem; color: #606870;
}
/* Week plan */
.weekplan {
margin-top: 10px;
}
.weekplan .row {
display: flex; flex-wrap: wrap; gap: 12px; align-items: center;
}
.weekplan-table {
width: 100%; border-collapse: collapse; margin-top: 10px;
}
.weekplan-table th, .weekplan-table td {
border: 1px solid #ddd; padding: 6px 8px;
}
.weekplan-table th {
background: #f0f0f0;
}
.planDose {
width: 140px;
}
.muted {
color: #777; font-size: 0.85rem;
}
/* === Custom Colors (merged) === */

/* Ron's custom colors for calendar states
   - TRT only: yellow
   - Nandrolone only: light blue
   - Peptide only: violet
   - Peptide + TRT (no Nand): light green
   - TRT + Nandrolone (no Pep): soft orange
   - All three together: bright pink
*/

/* Base layout (kept minimal, you can merge into your main CSS) */
.calendar-grid {
border-collapse: collapse; width: 100%; max-width: 1000px; table-layout: fixed; font-size: 0.9rem;
}
/* --- COLOR RULES --- */
/* TRT only */
.calendar-grid td.day.trt:not(.nand):not(.pep) {
background-color: yellow !important;
}
/* Nandrolone only */
.calendar-grid td.day.nand:not(.trt):not(.pep) {
background-color: lightblue !important;
}
/* Peptide + TRT (exactly those two) */
.calendar-grid td.day.trt.pep:not(.nand) {
background-color: lightgreen !important;
}
/* TRT + Nandrolone (exactly those two) */
.calendar-grid td.day.trt.nand:not(.pep) {
background-color: orange !important;
}
/* All three together */
.calendar-grid td.day.all3,
.calendar-grid td.day.trt.nand.pep {
background-color: hotpink !important;
}
/* Optional: peptide-only days kept distinct for clarity */
.calendar-grid td.day.pep:not(.trt):not(.nand) {
background-color: #ce93d8 !important;
}
/* soft violet */

/* Legend chips (optional) */
.legend-chip.trt {
background: yellow; margin-left:20px;
}