/* Admin > Operations > Jam Operasional — V21.58.

   Tujuh kartu hari, lalu daftar pengecualian tanggal. Nada tenang seperti panel
   admin lain: satu warna untuk hari buka, satu untuk hari tutup, dan tidak ada
   merah menyala — menutup hari adalah pekerjaan normal, bukan kesalahan. */

.operating-hours2158 .operating-head2158 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 18px;
}

.operating-hours2158 .operating-head2158 span {
  display: block;
  letter-spacing: .14em;
  font-size: 10px;
  font-weight: 800;
  color: #a17b40;
}

.operating-hours2158 .operating-head2158 h3 { margin: 6px 0 4px; }

.operating-hours2158 .operating-head2158 p {
  margin: 0;
  max-width: 64ch;
  font-size: 12.5px;
  line-height: 1.65;
  color: #6f6558;
}

.operating-hours2158 .operating-error2158 {
  margin: 0 0 14px;
  padding: 11px 14px;
  border-radius: 12px;
  background: #fbf1ed;
  border-left: 3px solid #a4553c;
  color: #6b4436;
  font-size: 12.5px;
}

/* ------------------------------------------------------------ pola mingguan */

.operating-hours2158 .operating-week2158 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(215px, 1fr));
  gap: 12px;
}

.operating-hours2158 .operating-week2158 article {
  padding: 14px;
  border-radius: 14px;
  border: 1px solid #dcd7cc;
  background: #fffdf9;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.operating-hours2158 .operating-week2158 article.is-closed {
  background: #f4f2ee;
  border-color: #d5cfc4;
}

.operating-hours2158 .operating-toggle2158 {
  display: flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
}

.operating-hours2158 .operating-toggle2158 b { flex: 1; font-size: 13.5px; }

.operating-hours2158 .operating-toggle2158 em {
  font-style: normal;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .08em;
  padding: 3px 9px;
  border-radius: 999px;
}

.operating-hours2158 article.is-open .operating-toggle2158 em {
  background: #e7f0e6;
  color: #2f5c35;
}

.operating-hours2158 article.is-closed .operating-toggle2158 em {
  background: #e6e2da;
  color: #6f6558;
}

.operating-hours2158 .operating-times2158 { display: flex; gap: 8px; }
.operating-hours2158 .operating-times2158 label { flex: 1; display: block; }

.operating-hours2158 .operating-times2158 span,
.operating-hours2158 .operating-draft2158 span {
  display: block;
  font-size: 10.5px;
  letter-spacing: .06em;
  color: #8d8478;
  margin-bottom: 3px;
}

.operating-hours2158 input[type="time"],
.operating-hours2158 input[type="date"],
.operating-hours2158 input[type="text"] {
  width: 100%;
  padding: 7px 10px;
  border: 1px solid #d7d2c7;
  border-radius: 10px;
  background: #fff;
  font-size: 12.5px;
}

.operating-hours2158 .operating-note2158 { font-size: 12px; }

/* ---------------------------------------------------------------- menyimpan */

.operating-hours2158 .operating-save2158 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #e4e0d7;
}

/* Kalimat ini memberi tahu akibatnya sebelum tombol ditekan — itu sebabnya ia
   berdiri di sebelah tombolnya, bukan di tempat lain. */
.operating-hours2158 .operating-preview2158 {
  margin: 0;
  flex: 1 1 320px;
  font-size: 12.5px;
  line-height: 1.6;
  color: #6f6558;
}

/* ------------------------------------------------------------ pengecualian */

.operating-hours2158 .operating-exceptions2158 {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid #e4e0d7;
}

.operating-hours2158 .operating-exceptions2158 h4 { margin: 0 0 5px; font-size: 14px; }

.operating-hours2158 .operating-exceptions2158 > p {
  margin: 0 0 14px;
  max-width: 64ch;
  font-size: 12.5px;
  line-height: 1.65;
  color: #6f6558;
}

.operating-hours2158 .operating-draft2158 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
  padding: 14px;
  border-radius: 14px;
  background: #fdf6e8;
  border: 1px solid #ab85483b;
}

.operating-hours2158 .operating-draft2158 > label { flex: 0 0 140px; }
.operating-hours2158 .operating-draft-reason2158 { flex: 1 1 220px !important; }

.operating-hours2158 .operating-draft-mode2158 {
  flex: 0 0 auto !important;
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 8px;
  cursor: pointer;
}

.operating-hours2158 .operating-draft-mode2158 span {
  margin: 0 !important;
  font-size: 12.5px !important;
  color: #6c5222 !important;
  letter-spacing: 0 !important;
}

.operating-hours2158 .operating-empty2158 {
  margin: 14px 0 0;
  font-size: 12.5px;
  color: #8d8478;
}

.operating-hours2158 .operating-list2158 {
  list-style: none;
  margin: 14px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.operating-hours2158 .operating-list2158 li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 14px;
  border-radius: 12px;
  border: 1px solid #dcd7cc;
  background: #fffdf9;
}

.operating-hours2158 .operating-list2158 li.is-closed {
  background: #f4f2ee;
  border-left: 3px solid #8d8478;
}

.operating-hours2158 .operating-list2158 li.is-open {
  border-left: 3px solid #a17b40;
}

.operating-hours2158 .operating-list2158 li > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
}

.operating-hours2158 .operating-list2158 b { font-size: 13px; }

.operating-hours2158 .operating-list2158 em {
  font-style: normal;
  font-size: 11.5px;
  font-weight: 600;
  color: #6c5222;
}

.operating-hours2158 .operating-list2158 span {
  font-size: 11.5px;
  color: #8d8478;
}

.operating-hours2158 .operating-list2158 button,
.operating-hours2158 .operating-head2158 > button {
  flex: none;
  padding: 7px 14px;
  border: 1px solid #ab8548;
  border-radius: 999px;
  background: transparent;
  color: #6c5222;
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
}

.operating-hours2158 .operating-list2158 button:hover,
.operating-hours2158 .operating-head2158 > button:hover {
  background: #a17b40;
  color: #fffaf1;
}

.operating-hours2158 .operating-absent2158 {
  padding: 22px;
  border-radius: 14px;
  background: #fdf6e8;
  border-left: 3px solid #a17b40;
}

.operating-hours2158 .operating-absent2158 h3 { margin: 0 0 6px; font-size: 14px; }
.operating-hours2158 .operating-absent2158 p { margin: 0; font-size: 12.5px; color: #6f6558; }

@media (max-width: 760px) {
  .operating-hours2158 .operating-draft2158 > label,
  .operating-hours2158 .operating-draft-reason2158 { flex: 1 1 100% !important; }
  .operating-hours2158 .operating-list2158 li { flex-wrap: wrap; }
}
