/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./app/playground/components/StandardScheduleList/styles.module.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
/* ---------- Layout (wrapper used by pages) ---------- */
.styles_container__qNc8s {
  max-width: 1000px;
  margin: 0 auto;
  padding: 2rem;
  font-family: "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #222;
}

.styles_title__dXJsT {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  text-align: center;
  color: #2c3e50;
}

/* ---------- Button Row (used on current-week page) ---------- */
.styles_buttonRow__k1Cds {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

.styles_createBtn__n3cbt {
  background: linear-gradient(135deg, #4facfe, #00f2fe);
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.8rem 1.6rem;
  border: none;
  border-radius: 0.75rem;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.styles_createBtn__n3cbt:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.15);
}

.styles_createBtn__n3cbt:active {
  transform: translateY(0);
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.1);
}

/* ---------- Card Grid & Cards ---------- */
.styles_cardWrapper__WSVSK {
  position: relative;
}

.styles_card__dzYNh {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #fff;
  border-radius: 1rem;
  padding: 1.2rem 1.4rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s ease;
}

.styles_card__dzYNh:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.styles_cardTitle__R7pPx {
  font-size: 1.2rem;
  font-weight: 700;
  margin: 0;
  color: #2c3e50;
}

/* Accent bar on top of standard schedule */
.styles_standard__XSTQW {
  border-top: 4px solid #4facfe;
}

/* Card content */
.styles_cardContent__3XAPQ p {
  margin: 0.35rem 0;
  font-size: 0.95rem;
  line-height: 1.4;
}

.styles_label__FUF5b {
  font-weight: 600;
  color: #2c3e50;
}

/* Empty state text */
.styles_empty__TEScu {
  font-style: italic;
  text-align: center;
  color: #888;
  margin: 1rem 0 2rem;
}

/* ---------- Week grouping ---------- */
.styles_weekRow__ktp5_ {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 20px;
  gap: 20px;
  width: 100%;
}

.styles_weekDivider__crofT {
  margin: 35px 0;
  border: none;
  border-top: 1px solid #e5e7eb;
}

/* Responsive columns */
@media (max-width: 900px) {
  .styles_weekRow__ktp5_ {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .styles_weekRow__ktp5_ {
    grid-template-columns: 1fr;
  }
}

/* ---------- Card header (title + gear) ---------- */
.styles_cardHeader__Y6s65 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}

.styles_gearBtn__09Xki {
  background: transparent;
  border: none;
  cursor: pointer;
  color: #666;
  padding: 4px;
  border-radius: 6px;
  transition: background 0.2s, color 0.2s;
}

.styles_gearBtn__09Xki:hover {
  background: #f0f0f0;
  color: #000;
}

.styles_gearIcon__kBnfb {
  width: 24px;
  height: 24px;
}

/* ---------- Footer text in card ---------- */
.styles_serverFooter__Tj5CF {
  text-align: right;
  font-size: 0.85rem;
  color: #999;
  margin-top: 12px;
  font-style: italic;
}

/* ---------- Modal overlay ---------- */
.styles_modalOverlay__qV3lA {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100;
}

/* ---------- Modal ---------- */
.styles_modal__2eODp {
  background: #fff;
  padding: 24px 24px 20px;
  border-radius: 12px;
  width: 360px;
  max-width: calc(100% - 32px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
  position: relative;
}

.styles_modal__2eODp h3 {
  margin: 0 0 12px;
  font-size: 1.25rem;
  font-weight: 600;
  color: #2c3e50;
}

.styles_modal__2eODp label {
  font-size: 0.95rem;
  font-weight: 500;
  color: #34495e;
  display: block;
  margin-top: 8px;
}

.styles_modal__2eODp input {
  width: 100%;
  margin-top: 6px;
  padding: 8px 10px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 0.95rem;
}

.styles_modal__2eODp input:focus {
  outline: none;
  border-color: #4facfe;
  box-shadow: 0 0 4px rgba(79, 172, 254, 0.6);
}

/* ---------- Modal actions (buttons) ---------- */
.styles_modalActions__LumYC {
  margin-top: 18px;
  display: flex;
  justify-content: flex-end;
  gap: 12px;
}

.styles_modalActions__LumYC button {
  padding: 8px 16px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: 500;
}

/* Delete button (normal state) */
.styles_deleteBtn__Zgthz {
  display: flex;
  align-items: center;
  gap: 6px;
  background: #fee2e2;
  color: #b91c1c;
  border: 1px solid #fecaca;
}

.styles_deleteBtn__Zgthz:hover {
  background: #fecaca;
}

/* Disabled delete button */
.styles_disabledBtn__R3lQB {
  background: #f3f4f6;
  color: #9ca3af;
  border-color: #e5e7eb;
  cursor: not-allowed;
  pointer-events: none;
}

/* Save button */
.styles_saveBtn__O2IQR {
  background: linear-gradient(135deg, #4facfe, #00f2fe);
  color: #fff;
  font-weight: 600;
}

.styles_saveBtn__O2IQR:hover {
  opacity: 0.9;
}

/* Close (X) button */
.styles_closeBtn__N_Ami {
  position: absolute;
  top: 12px;
  right: 12px;
  background: transparent;
  border: none;
  cursor: pointer;
  color: #666;
  padding: 4px;
  border-radius: 50%;
  transition: background 0.2s, color 0.2s;
}

.styles_closeBtn__N_Ami:hover {
  background: #f0f0f0;
  color: #000;
}

/* Icon sizes in modal buttons */
.styles_closeIcon__b_yWp {
  width: 20px;
  height: 20px;
}

.styles_lockIcon__qKBed {
  width: 14px;
  height: 14px;
}
/* Inline progress bar layout */
.styles_progressLine__njm7t {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 4px 0 8px;
}

.styles_progressText__wWThg {
  font-size: 0.9rem;
  color: #333;
}

/* Small inline bar */
.styles_progressInlineBar__7pQiK {
  flex: 1 1;
  height: 6px;
  background: #e5e7eb;
  border-radius: 4px;
  overflow: hidden;
}

.styles_progressInlineFill___ElPB {
  height: 100%;
  background: #4facfe;
  transition: width 0.3s ease;
}
/* INLINE BAR FIRST, TEXT AFTER */
.styles_progressLine__njm7t {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 6px 0 10px;
}

/* Lower text slightly */
.styles_progressText__wWThg {
  font-size: 0.9rem;
  color: #333;
  margin-top: 2px;
}

/* The bar background */
.styles_progressInlineBar__7pQiK {
  flex: 1 1;
  height: 7px;
  background: #e5e7eb;
  border-radius: 4px;
  overflow: hidden;
  margin-top: 4px;  /* 🔥 lowers the bar a bit */
}

/* The filled part */
.styles_progressInlineFill___ElPB {
  height: 100%;
  border-radius: 4px;
  transition: width 0.3s ease;
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./app/components/ConfirmModal/styles.module.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************/
/* ===== Overlay ===== */
.styles_overlay__jDRy7 {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;                 /* 👈 safe margin on small screens */
  z-index: 1000;
}

/* ===== Modal ===== */
.styles_modal__8uy66 {
  width: 380px;
  max-width: 100%;               /* 👈 prevent overflow on phones */
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
}

/* ===== Header ===== */
.styles_header__gFCD8 {
  padding: 12px 16px;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: white;
}

/* Intent headers */
.styles_header__gFCD8.styles_danger__CDtZj {
  background: #ff6b6b;
}
.styles_header__gFCD8.styles_warning__iOhB_ {
  background: #f4b740;
}
.styles_header__gFCD8.styles_neutral__twqfz {
  background: #5b8cff;
}

/* Close button */
.styles_close__E6fN6 {
  background: none;
  border: none;
  font-size: 20px;
  cursor: pointer;
  color: inherit;
}

/* ===== Body ===== */
.styles_body__Y3MsP {
  padding: 24px 16px;
  text-align: center;
  color: #333;
  font-size: 15px;
  line-height: 1.5;
}

.styles_icon__ZNtq2 {
  font-size: 28px;
  margin-bottom: 12px;
}

/* Icon colors */
.styles_icon__ZNtq2.styles_danger__CDtZj {
  color: #ff6b6b;
}
.styles_icon__ZNtq2.styles_warning__iOhB_ {
  color: #f4b740;
}
.styles_icon__ZNtq2.styles_neutral__twqfz {
  color: #5b8cff;
}

/* ===== Footer ===== */
.styles_footer__TAMh1 {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 12px 16px;
  flex-wrap: wrap;               /* 👈 buttons wrap on small screens */
}

.styles_cancelBtn__4srSI {
  padding: 8px 16px;
  background: #e5e5e5;
  border: none;
  border-radius: 6px;
  cursor: pointer;
}

/* Confirm buttons */
.styles_confirmBtn__G37Ef {
  padding: 8px 16px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  color: white;
}

/* Intent buttons */
.styles_confirmBtn__G37Ef.styles_danger__CDtZj {
  background: #ff6b6b;
}
.styles_confirmBtn__G37Ef.styles_warning__iOhB_ {
  background: #f4b740;
}
.styles_confirmBtn__G37Ef.styles_neutral__twqfz {
  background: #5b8cff;
}

/* ===== Small screens refinement ===== */
@media (max-width: 480px) {
  .styles_body__Y3MsP {
    padding: 20px 12px;
    font-size: 14px;
  }

  .styles_footer__TAMh1 {
    justify-content: center;     /* 👈 center buttons on phones */
  }
}
.styles_header__gFCD8.styles_success__kXNqH {
  background: #2ecc71;
}

.styles_icon__ZNtq2.styles_success__kXNqH {
  color: #2ecc71;
}

.styles_confirmBtn__G37Ef.styles_success__kXNqH {
  background: #2ecc71;
}

/*!****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./app/playground/styles.module.css ***!
  \****************************************************************************************************************************************************************************************************************************************************************************/
/* styles.module.css */

/* ---------- Layout ---------- */
.styles_container__8fW5z {
  max-width: 1000px;
  margin: 0 auto;
  padding: 2rem;
  font-family: "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #222;
}

/* ---------- Title ---------- */
.styles_title__2Jv6y {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  text-align: center;
  color: #2c3e50;
}

/* ---------- Button Row ---------- */
.styles_buttonRow__WbxMI {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

.styles_createBtn__V0iEt {
  background: linear-gradient(135deg, #4facfe, #00f2fe);
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.8rem 1.6rem;
  border: none;
  border-radius: 0.75rem;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.styles_createBtn__V0iEt:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.15);
}

.styles_createBtn__V0iEt:active {
  transform: translateY(0);
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.1);
}

/* ---------- Subtitle (cleaned) ---------- */
.styles_subtitle__FTdjv {
  margin-top: -6px;
  margin-bottom: 20px;
  font-size: 18px;
  color: #6b7280;   /* gray-500 */
  text-align: center;
}

/* ---------- Empty State ---------- */
.styles_empty__mJJ39 {
  font-style: italic;
  text-align: center;
  color: #888;
  margin: 1rem 0 2rem;
}

/* ---------- Show past section ---------- */
.styles_pastSection__G5PwJ {
  margin-top: 20px;
  text-align: center;
}

.styles_showPastBtn__WYT4e {
  background-color: #f1f1f1;
  border: 1px solid #ccc;
  padding: 8px 16px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  transition: background 0.2s, transform 0.2s;
}

.styles_showPastBtn__WYT4e:hover {
  background-color: #e2e2e2;
  transform: translateY(-1px);
}

.styles_showPastBtn__WYT4e:active {
  background-color: #d6d6d6;
  transform: translateY(0);
}

/* ---------- Mobile adjustments ---------- */
@media (max-width: 768px) {
  .styles_container__8fW5z {
    padding: 1rem;
  }

  .styles_title__2Jv6y {
    font-size: 1.6rem;
  }

  .styles_createBtn__V0iEt {
    padding: 0.6rem 1.2rem;
    font-size: 0.95rem;
  }

  .styles_subtitle__FTdjv {
    font-size: 16px;
  }
}

