.storeHoursCard { width: min(1040px, calc(100vw - 24px)); }
.storeHoursCard h2 { margin: 0; font-size: 18px; }
.storeHoursCard form { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.storeHoursCard .modalBody { overflow: auto; }
.storeHoursToolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-bottom: 20px; }
.storeHoursToolbar label { display: flex; gap: 8px; align-items: center; }
.storeHoursDay { display: grid; grid-template-columns: 135px minmax(210px, 1fr) 125px minmax(210px, 1fr); align-items: center; gap: 16px; padding: 16px 0; border-top: 1px solid #dce6ef; }
.storeHoursDayName { display: grid; gap: 10px; }
.storeHoursDay label { font-size: 12px; }
.storeHoursTimes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.storeHoursTimes label { display: grid; gap: 6px; min-width: 0; }
.storeHoursTimes input { box-sizing: border-box; width: 100%; min-width: 0; height: 40px; padding: 6px; font: inherit; }
.storeHoursDay input:disabled { opacity: .45; }
.storeHoursLunch { display: flex; align-items: center; gap: 6px; }
.storeHoursCard input[type=checkbox] { accent-color: #0874d9; }
#storeHoursStatus { color: #526d83; font-size: 13px; }
@media(max-width: 850px) { .storeHoursDay { grid-template-columns: 135px minmax(0, 1fr); } }
@media(max-width: 450px) { .storeHoursDay { grid-template-columns: 100px minmax(0, 1fr); gap: 10px; } .storeHoursCard .modalBody { padding: 14px; } .storeHoursToolbar label { flex-wrap: wrap; } }
