/* Overall layout (matches your pricing aesthetic) */
.mma-schedule{
  --gap:12px;
  --bg:var(--mma-gym-bg);
  --card:var(--mma-gym-card);
  --text:var(--mma-gym-ink);
  --accent:var(--mma-gym-accent);
  --accent-2:var(--mma-gym-accent-2);
  --ring:var(--mma-gym-ring);
  display:grid; gap:var(--gap);
  font-family:system-ui,-apple-system,Segoe UI,Roboto;
}

/* Day buttons */
.mma-day-switch{display:flex;gap:8px;flex-wrap:nowrap;width:100%;justify-content:center;align-items:center;margin:0 auto 12px;text-align:center}
.mma-day-btn{
  appearance:none;display:inline-block;padding:8px 12px;border-radius:10px;
  background:var(--accent)!important;color:var(--mma-gym-black)!important;
  font-weight:800;letter-spacing:.08em;border:0!important;cursor:pointer;line-height:1;text-decoration:none;
}
.mma-day-btn[aria-pressed="false"]{background:transparent!important;color:var(--text)!important;border:1px solid #333!important;font-weight:700}
.mma-day-subdate{display:block;font-weight:700;font-size:.7em;opacity:.9;line-height:1.15;margin-top:4px}

/* Content shells */
.mma-day-wrap{background:var(--bg);border-radius:14px;padding:12px}
.mma-day-heading{font-weight:900;letter-spacing:.12em;text-align:center;margin:2px 0 8px;opacity:.9}

/* AM/PM columns */
.mma-periods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px}
.mma-period{background:var(--card);border-radius:12px;padding:10px}
.mma-period h4{margin:0 0 8px;font-size:.95rem;opacity:.9}

/* Cards */
.mma-card{background:var(--card);color:var(--text);border-left:6px solid var(--accent);padding:10px;border-radius:14px;box-shadow:0 6px 20px var(--mma-gym-shadow-1);margin-bottom:8px}
.mma-card.is-full{opacity:.45;filter:grayscale(.35)}
.mma-card .mma-title{font-weight:700}
.mma-card .mma-meta{opacity:.85;font-size:.9em}
.mma-badge{display:inline-block;font-size:.75em;padding:4px 8px;border-radius:999px;background:var(--mma-gym-card)}

/* Buttons (match pricing plugin) */
.mma-schedule .mma-cta, .mma-schedule button.mma-cta, .mma-schedule a.mma-cta, .mma-schedule .mma-book {
  appearance:none; display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  padding:.7rem 1rem; border-radius:10px; background:var(--accent)!important; color:var(--mma-gym-black)!important;
  font-weight:800; text-transform:uppercase; border:0!important; cursor:pointer; text-decoration:none!important; width:100%;
}
.mma-schedule .mma-cta.ghost { background:transparent!important; color:var(--text)!important; border:1px solid #333!important; font-weight:700 }
.mma-schedule .mma-cta.cash { background:var(--accent-2)!important; color:var(--accent)!important; border:2px solid var(--accent)!important }
.mma-schedule .mma-cta[disabled], .mma-schedule .mma-book[disabled] { opacity:.6; pointer-events:none; filter:grayscale(.5); }

/* Modal (shared style with pricing plugin) */
.mma-modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;z-index:9999}
.mma-modal.active{display:flex}
.mma-modal .inner{background:var(--mma-gym-card);color:var(--mma-gym-ink);border-radius:14px;padding:20px;min-width:300px;max-width:min(560px,90vw);border-left:6px solid var(--accent);box-shadow:0 14px 40px rgba(0,0,0,.35)}
.mma-modal input{width:100%;margin:4px 0;padding:10px;border-radius:10px;border:1px solid #2b2b2e;background:var(--mma-gym-bg);color:var(--mma-gym-ink);font-family:inherit}
.mma-actions{display:flex;gap:8px;justify-content:center;margin-top:10px}
.mma-form-step{display:none}
.mma-form-step.mma-active-step{display:block}

@media (max-width:600px){
  .mma-day-btn{padding:7px 10px}
  .mma-day-subdate{font-size:.68em}
  .mma-period{padding:8px}
  .mma-card{padding:8px}
  .mma-card .mma-meta{font-size:.85em}
}

.mma-consent{display:flex;gap:.5rem;align-items:center;margin:.35rem 0 .5rem;font-size:.95em}
