.ec-full{
  --ec-border:#2b2b2b;
  --ec-text:#e6e6e6;
  --ec-muted:#bdbdbd;
  --ec-bg:#0c0c0c;
  --ec-day:#121212;
  --ec-day-hover:#1b1b1b;
  --ec-event-bg:#141414;
  --ec-accent:#f4b23f;
  --ec-accent-strong:#ffcc5c;
  background:var(--ec-bg);
  padding:10px;
  border-radius:8px;
}
.ec-full table{width:100%;border-collapse:collapse}
.ec-full th,.ec-full td{border:1px solid var(--ec-border);padding:6px;text-align:center;color:var(--ec-text)}
.ec-full th{color:var(--ec-muted)}
.ec-full td[data-day]{cursor:pointer;background:var(--ec-day)}
.ec-full td[data-day]:hover{background:var(--ec-day-hover)}
.ec-full td.has-events{background:var(--ec-accent);color:#111;font-weight:700;box-shadow:inset 0 0 0 1px var(--ec-accent-strong)}
.ec-full td.has-events:hover{background:var(--ec-accent-strong)}
.ec-full td.is-selected{outline:2px solid var(--ec-accent-strong);outline-offset:-2px}
.ec-list{margin-top:15px;color:var(--ec-text)}
.ec-list h3{color:var(--ec-text)}
.ec-actions{text-align:center}
.ec-event{display:flex;gap:8px;align-items:flex-start;margin:6px 0;padding:6px 8px;background:var(--ec-event-bg);border-radius:6px}
.ec-event a{color:var(--ec-text);text-decoration:none;flex:1 1 auto;line-height:1.35}
.ec-event a:hover{color:var(--ec-accent-strong)}
.ec-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ec-muted);flex:0 0 auto;min-width:40px}
.ec-badge-icon{width:16px;height:16px;border-radius:3px;flex:0 0 auto}
.ec-badge-color{width:10px;height:10px;border-radius:50%;display:inline-block}
.ec-viewall{display:inline-block;margin-top:10px;padding:6px 10px;background:var(--ec-accent);color:#111;text-decoration:none;border-radius:4px;font-weight:700}

.ec-header{
  position:relative;
  display:block;
  text-align:center;
  margin-bottom:10px;
  padding:4px 0;
  color:var(--ec-text);
}
.ec-arrow{
  cursor:pointer;
  color:var(--ec-text);
  font-weight:700;
  font-size:16px;
  user-select:none;
  display:inline-block;
  width:60px;
  text-align:center;
}
.ec-header .ec-prev{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
}
.ec-header .ec-next{
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
}
.ec-month{
  display:inline-block;
  margin:0 80px;
  font-size:16px;
  font-weight:600;
  line-height:1.15;
  color:var(--ec-text);
  text-transform:capitalize;
}
.ec-arrow:hover{color:var(--ec-accent-strong)}
@media (max-width: 420px) {
  .ec-arrow{width:46px;font-size:15px}
  .ec-month{margin:0 60px;font-size:14px}
}

/* themes */
.ec-theme-dark-amber{
  --ec-border:#3a3a3a;
  --ec-text:#f1f1f1;
  --ec-muted:#c8c8c8;
  --ec-bg:#0a0a0a;
  --ec-day:#141414;
  --ec-day-hover:#1d1d1d;
  --ec-event-bg:#171717;
  --ec-accent:#f0c06a;
  --ec-accent-strong:#ffd48a;
}
.ec-theme-dark-gold{
  --ec-border:#353029;
  --ec-text:#f2efe9;
  --ec-muted:#cfc8bd;
  --ec-bg:#0b0b0b;
  --ec-day:#16130f;
  --ec-day-hover:#1f1a14;
  --ec-event-bg:#1a1510;
  --ec-accent:#d9a441;
  --ec-accent-strong:#f3c36a;
}
.ec-theme-dark-mint{
  --ec-border:#2d3532;
  --ec-text:#e9f4f0;
  --ec-muted:#bcd4cb;
  --ec-bg:#0b0d0c;
  --ec-day:#121614;
  --ec-day-hover:#1a221f;
  --ec-event-bg:#141a18;
  --ec-accent:#7ad6b0;
  --ec-accent-strong:#9be7c7;
}
.ec-theme-dark-custom{
  --ec-border:#2a2a2a;
  --ec-text:#f7f7f7;
  --ec-muted:#b9b9b9;
  --ec-bg:#0f0f0f;
  --ec-day:#141414;
  --ec-day-hover:#1d1d1d;
  --ec-event-bg:#1a1a1a;
  --ec-accent:#ff9800;
  --ec-accent-strong:#ffb24d;
}
.ec-theme-light-amber{
  --ec-border:#e1dfd7;
  --ec-text:#1f1a12;
  --ec-muted:#5e5342;
  --ec-bg:#ffffff;
  --ec-day:#faf7f0;
  --ec-day-hover:#f3eddc;
  --ec-event-bg:#f7f2e6;
  --ec-accent:#f0c06a;
  --ec-accent-strong:#e7a944;
}
.ec-theme-light-slate{
  --ec-border:#d9dde2;
  --ec-text:#1d232a;
  --ec-muted:#4d5966;
  --ec-bg:#ffffff;
  --ec-day:#f5f7fa;
  --ec-day-hover:#edf1f6;
  --ec-event-bg:#f0f3f7;
  --ec-accent:#546a7b;
  --ec-accent-strong:#2f3b45;
}
.ec-theme-light-rose{
  --ec-border:#ead6d1;
  --ec-text:#231817;
  --ec-muted:#6b4e4a;
  --ec-bg:#ffffff;
  --ec-day:#fff7f5;
  --ec-day-hover:#fbeae6;
  --ec-event-bg:#f8eeeb;
  --ec-accent:#e3a08f;
  --ec-accent-strong:#cc6e5b;
}
