/* CETL theme integration: use the site's Bootstrap variables and typography.
   Scoped to the public poll so the WordPress dashboard remains native. */
.cetl-poll {
  --cetl-accent: var(--bs-primary, #781e35);
  --cetl-accent-contrast: var(--bs-white, #fff);
  --cetl-ink: var(--bs-body-color, inherit);
  --cetl-border: var(--bs-border-color, #d9d9d9);
  --cetl-surface: var(--bs-body-bg, #fff);
  --cetl-soft: var(--bs-tertiary-bg, #f7f7f7);
  --cetl-radius: var(--bs-border-radius, .375rem);
  color: var(--cetl-ink);
  font-family: inherit;
}
.cetl-poll h2 { margin-bottom: .75rem; line-height: 1.25; }
.cetl-poll .card { background: var(--cetl-surface); border: 1px solid var(--cetl-border); border-radius: var(--cetl-radius); box-shadow: none; }
.cetl-poll .cetl-public-calendar { max-width: 560px; margin-block: 1.25rem; }
.cetl-poll .cetl-slot { padding: 1.15rem 1.25rem; margin-bottom: .85rem; }
.cetl-poll .cetl-slot > strong { display: block; font-size: 1.04rem; line-height: 1.45; }
.cetl-poll .form-control { border-color: var(--cetl-border); border-radius: var(--cetl-radius); font-family: inherit; }
.cetl-poll .btn { font-family: inherit; border-radius: var(--cetl-radius); font-weight: 600; transition: background-color .15s ease, border-color .15s ease; }
.cetl-poll .btn-primary,
.cetl-poll .cetl-calendar-grid button.cetl-selected { background: var(--cetl-accent); border-color: var(--cetl-accent); color: var(--cetl-accent-contrast); }
.cetl-poll .btn-outline-primary { color: var(--cetl-accent); border-color: var(--cetl-accent); background: transparent; }
.cetl-poll .btn-outline-primary:hover { background: var(--cetl-accent); color: var(--cetl-accent-contrast); }
.cetl-poll .btn-outline-secondary { border-color: var(--cetl-border); color: var(--cetl-ink); background: var(--cetl-surface); }
.cetl-poll .btn-outline-secondary:hover { background: var(--cetl-soft); color: var(--cetl-ink); }
.cetl-poll .cetl-calendar-nav { padding-bottom: .35rem; }
.cetl-poll .cetl-calendar-grid > span { font-weight: 600; }
.cetl-poll .cetl-calendar-grid button:not(:disabled) { border-radius: var(--cetl-radius); }
.cetl-poll .cetl-choice-btn { border-color: var(--cetl-border); background: var(--cetl-surface); color: var(--cetl-ink); }
.cetl-poll .cetl-choice-input:checked + .cetl-choice-yes { background: #23764b; border-color: #23764b; color: #fff; }
.cetl-poll .cetl-choice-input:checked + .cetl-choice-maybe { background: #815d09; border-color: #815d09; color: #fff; }
.cetl-poll .cetl-choice-input:checked + .cetl-choice-no { background: #aa3441; border-color: #aa3441; color: #fff; }
.cetl-poll .cetl-choice-input:focus-visible + .cetl-choice-btn,
.cetl-poll .btn:focus-visible,
.cetl-poll input:focus-visible { outline: 3px solid var(--cetl-accent); outline-offset: 3px; }
.cetl-poll .cetl-success, .cetl-poll .cetl-final { border-left: 4px solid #23764b; background: var(--cetl-soft); padding: 1rem 1.15rem; border-radius: var(--cetl-radius); }
.cetl-poll .cetl-matrix { color: var(--cetl-ink); }
.cetl-poll .cetl-matrix th { background: var(--cetl-soft); font-weight: 700; }
.cetl-poll .cetl-matrix th, .cetl-poll .cetl-matrix td { border-color: var(--cetl-border); }
@media (max-width: 480px) { .cetl-poll .cetl-slot { padding: .9rem; } .cetl-poll .cetl-calendar-nav { flex-wrap: wrap; } }
@media (prefers-reduced-motion: reduce) { .cetl-poll .btn { transition: none; } }

/* v1.9 weekly controls and results surface inherit CETL palette. */
.cetl-poll .cetl-results-section{border-color:var(--cetl-border);background:var(--cetl-surface);border-radius:var(--cetl-radius)}
.cetl-poll .cetl-weekly-calendar{border-color:var(--cetl-border);border-radius:var(--cetl-radius)}
