.calendar-options { color: #221712; line-height: 1.6; }
.calendar-options details { margin: 14px 0; }
.calendar-options summary { cursor: pointer; font-weight: bold; }
.calendar-url-label { display: grid; gap: 8px; font-weight: bold; }
.calendar-feed-url { width: 100%; box-sizing: border-box; min-width: 0; padding: 12px; font: inherit; color: #221712; background: #fffdf7; border: 1px solid #9a7a2c; border-radius: 4px; }
.calendar-copy { margin: 12px 8px 12px 0; padding: 8px 16px; cursor: pointer; }
body .calendar-action { display: inline-block; background: #5b0710; color: #fff4df; padding: 10px 16px; border: 1px solid #9a7a2c; border-radius: 5px; text-decoration: none; font-weight: bold; }
body .calendar-action:hover { background: #790e1b; }
.calendar-action:focus-visible { outline: 3px solid #b88712; outline-offset: 3px; }
.calendar-subscribe-row { margin: 20px 0; }
body.home-page .events-summary a.calendar-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: auto;
  height: auto;
  min-height: 50px;
  max-width: 100%;
  padding: 14px 24px;
  font: bold 1rem/1.4 Arial, sans-serif;
  text-align: center;
  white-space: normal;
}
.calendar-app-choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 22px 0; }
.calendar-app-choices > div { padding: 18px; background: #fff8ea; border: 1px solid #dac49a; border-radius: 6px; }
.calendar-app-choices p { font-size: .95rem; margin: 12px 0 0; }
.calendar-app-choices .calendar-action { font: inherit; font-weight: bold; cursor: pointer; }
.calendar-manual { padding-top: 16px; border-top: 1px solid #dac49a; }
.calendar-manual[hidden] { display: none; }
body.home-page .calendar-back, body.home-page .calendar-back:visited { color: #fff4df; text-decoration: underline; font-weight: bold; }
body.home-page .calendar-back:hover { color: #f2d16b; }
.calendar-back:focus-visible { outline: 2px solid #f2d16b; outline-offset: 4px; }
.events-title-card .calendar-intro { color: #fff4df; margin: 16px 0 0; line-height: 1.5; }
@media (max-width: 760px) { .calendar-app-choices { grid-template-columns: 1fr; } }
