/* MyCollegePark v65.74 — Unified visual system, themes, Calendar refinements and shared presentation overrides.
   Source-order module: keep stylesheet link order unchanged. */
/* =========================================================
   v59.1 — unified site chrome + accessible map themes
   ========================================================= */

/* One header language on every top-level page. */











/* v59 no longer needs a decorative initials tile. */
.home-brand-mark { display:none !important; }


/* Carry the same modern visual system through secondary pages. */
.event-page-body {
  background:#edf2f0;
  color:#19312d;
}
.calendar-page-body {
  background:#edf2f0;
  color:#19312d;
}
.messages-page-body {
  background:#edf2f0;
  color:#19312d;
}
.event-page-main-card {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.event-community-section {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.calendar-toolbar {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.calendar-sidebar {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.calendar-loading {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.calendar-empty-state {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.messages-thread-list {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.messages-conversation {
  border-color:#dce5e2;
  background:#fff;
  box-shadow:0 8px 26px rgba(33,57,52,.065);
}
.event-page-main-card { border-radius:18px; }
.event-community-section { border-radius:18px; }
.calendar-toolbar { border-radius:18px; }
.calendar-sidebar { border-radius:18px; }
.calendar-loading { border-radius:18px; }
.calendar-empty-state { border-radius:18px; }
.event-page-back { color:#176b5b; }
.calendar-event-copy span,
.calendar-agenda-date strong { color:#176b5b; }
.calendar-month-button.active { color:#176b5b; }
.calendar-month-button.active { background:#e9f4f0; }
.calendar-today-button,
.calendar-period-nav>button { border-color:#d5dfdc; }
.messages-thread-item.active { border-color:#65a99a; background:#eef8f4; }

/* Dark map style — Midnight Teal. High contrast, no grey-on-grey text. */
body.dark-theme {
  --bg:#0b1216;
  --surface:#121c22;
  --surface-soft:#18252c;
  --text:#f4fbf8;
  --muted:#b3c2bd;
  --line:#263941;
  --line-strong:#38515a;
  --accent:#5eead4;
  --accent-soft:#123630;
  --shadow:0 12px 30px rgba(0,0,0,.38);
  --shadow-soft:0 4px 12px rgba(0,0,0,.28);
}
body.dark-theme .filter-panel { background:#121c22; border-color:#263941; }
body.dark-theme .workspace { background:#0b1216; }
body.dark-theme .sidebar { background:#10191f; border-color:#263941; }
body.dark-theme .sidebar-header { background:#121c22; border-color:#263941; }
body.dark-theme .sidebar-filters { background:#152128; border-color:#263941; }
body.dark-theme .event-list { background:#0e171c; }
body.dark-theme .card { background:#142028; border-color:#294049; color:#f4fbf8; }
body.dark-theme .card h3 { color:#f4fbf8; }
body.dark-theme .card .meta { color:#b3c2bd; }
body.dark-theme .description-clamp,
body.dark-theme .result-period,
body.dark-theme .demo-label { color:#b3c2bd; }
body.dark-theme .card.selected { background:#17302e; border-color:#5eead4; }
body.dark-theme .card-link,
body.dark-theme .card-link-button { color:#79f2df; }
body.dark-theme .badge { background:#203139; color:#d7e7e2; }
body.dark-theme .official-source-badge { background:#143b32; color:#9ff6df; }
body.dark-theme .search-wrap input,
body.dark-theme .icon-button { background:#101a20; color:#f4fbf8; border-color:#38515a; }
body.dark-theme .filter-control,
body.dark-theme .quick-filter,
body.dark-theme .past-checkbox { background:#101a20; color:#f4fbf8; border-color:#38515a; }
body.dark-theme .search-wrap input::placeholder { color:#90a39d; }
body.dark-theme .quick-filter:hover,
body.dark-theme .quick-filter.active { background:#5eead4; border-color:#5eead4; color:#08201d; }
body.dark-theme .map-bottom-actions{ background:rgba(15,25,31,.96)!important; border-color:#38515a!important; }body.dark-theme .map-style-fab{ background:rgba(15,25,31,.96)!important; border-color:#38515a!important; }
body.dark-theme .map-bottom-actions .floating-action { color:#f4fbf8; }
body.dark-theme .map-bottom-actions .floating-action:hover { background:#203139; }

/* Satellite map style — Aerial Neutral. Opaque neutral UI over busy imagery. */
body.satellite-theme {
  --bg:#f1f0ea;
  --surface:#fffdf8;
  --surface-soft:#f5f4ee;
  --text:#17221d;
  --muted:#5e6c65;
  --line:#d4d9d4;
  --line-strong:#bbc6bf;
  --accent:#176b5b;
  --accent-soft:#e6f1ed;
  --shadow:0 10px 28px rgba(28,42,34,.14);
  --shadow-soft:0 3px 10px rgba(28,42,34,.09);
}
body.satellite-theme .filter-panel { background:#fffdf8; border-color:#d4d9d4; }
body.satellite-theme .workspace { background:#e9ebe6; }
body.satellite-theme .sidebar { background:#f8f7f2; border-color:#d4d9d4; }
body.satellite-theme .sidebar-header { background:#fffdf8; border-color:#d4d9d4; }
body.satellite-theme .sidebar-filters { background:#f1f2ed; border-color:#d4d9d4; }
body.satellite-theme .event-list { background:#eeefea; }
body.satellite-theme .card { background:#fffdf8; border-color:#d4d9d4; color:#17221d; }
body.satellite-theme .card h3 { color:#17221d; }
body.satellite-theme .card .meta { color:#5e6c65; }
body.satellite-theme .description-clamp,
body.satellite-theme .result-period,
body.satellite-theme .demo-label { color:#5e6c65; }
body.satellite-theme .card.selected { background:#f0f8f5; border-color:#4c907e; }
body.satellite-theme .badge { background:#eceee9; color:#425149; }
body.satellite-theme .official-source-badge { background:#e4f2ec; color:#185a49; }
body.satellite-theme .search-wrap input,
body.satellite-theme .icon-button { background:#fffdf8; color:#17221d; border-color:#bbc6bf; }
body.satellite-theme .filter-control,
body.satellite-theme .quick-filter,
body.satellite-theme .past-checkbox { background:#fffdf8; color:#17221d; border-color:#bbc6bf; }
body.satellite-theme .search-wrap input::placeholder { color:#748078; }
body.satellite-theme .quick-filter:hover,
body.satellite-theme .quick-filter.active { background:#176b5b; border-color:#176b5b; color:#fff; }
body.satellite-theme .map-bottom-actions{ background:rgba(255,253,248,.97)!important; border-color:#bbc6bf!important; }body.satellite-theme .map-style-fab{ background:rgba(255,253,248,.97)!important; border-color:#bbc6bf!important; }
body.satellite-theme .map-bottom-actions .floating-action { color:#17221d; }
body.satellite-theme .map-bottom-actions .floating-action:hover { background:#edf1ed; }

/* Basemap theme must never recolor the global brand/header. */













@media(max-width:900px){
  
  
  
}
@media(max-width:680px){
  
  
  
}


/* ==========================================================
   v59.2 — global persistent themes + page navigation
   ========================================================== */
.page-back-button{
  display:inline-flex;align-items:center;gap:7px;width:max-content;
  margin:0 0 14px;padding:8px 12px;border:1px solid var(--border,#d9e2df);
  border-radius:999px;background:var(--surface,#fff);color:var(--text,#17221d);
  text-decoration:none;font-weight:700;font-size:.84rem;line-height:1;
  box-shadow:0 3px 10px rgba(20,48,43,.05);transition:.16s ease;
}
.page-back-button:hover{transform:translateY(-1px);border-color:#79a99e;background:#f5fbf9;}

/* Midnight Teal is a whole-site theme, including the hero/header. */







/* Calendar — theme all surfaces, controls, cards and modal content. */
body.dark-theme.calendar-page-body {background:#0b1216;color:#f4fbf8;}
body.dark-theme .calendar-shell {background:#0b1216;color:#f4fbf8;}
body.dark-theme .calendar-heading h1,
body.dark-theme .calendar-heading h2,
body.dark-theme .calendar-period-nav h2,
body.dark-theme .calendar-content,
body.dark-theme .calendar-sidebar{color:#f4fbf8;}
body.dark-theme .calendar-heading p,
body.dark-theme .calendar-event-copy small,
body.dark-theme .calendar-past-checkbox,
body.dark-theme .calendar-year-label{color:#b3c2bd;}
body.dark-theme .calendar-toolbar,
body.dark-theme .calendar-sidebar,
body.dark-theme .calendar-content {background:#121c22;border-color:#263941;color:#f4fbf8;}
body.dark-theme .calendar-day-modal-card {background:#121c22;border-color:#263941;color:#f4fbf8;}
body.dark-theme .calendar-month-button,
body.dark-theme .calendar-view-switch button,
body.dark-theme .calendar-period-nav button,
body.dark-theme .calendar-filter-row select,
body.dark-theme .calendar-filter-row input,
body.dark-theme .calendar-year-label select{background:#101a20;color:#f4fbf8;border-color:#38515a;}
body.dark-theme .calendar-month-button:hover,
body.dark-theme .calendar-month-button.active,
body.dark-theme .calendar-view-switch button.active,
body.dark-theme .calendar-today-button{background:#17302e!important;color:#9ff6df!important;border-color:#5eead4!important;}
body.dark-theme .calendar-day-cell{background:#142028;border-color:#294049;color:#f4fbf8;}body.dark-theme .calendar-agenda-day{background:#142028;border-color:#294049;color:#f4fbf8;}
body.dark-theme .calendar-event-card {background:#142028;border-color:#294049;color:#f4fbf8;}
body.dark-theme .calendar-day-cell.is-outside-month{background:#0e171c;color:#738680;}
body.dark-theme .calendar-event-card:hover{border-color:#5eead4;box-shadow:0 10px 24px rgba(0,0,0,.2);}
body.dark-theme .calendar-event-copy strong{color:#f4fbf8;}

/* Event details page — dark theme. */
body.dark-theme.event-page-body,
body.dark-theme .event-page-shell{background:#0b1216;color:#f4fbf8;}
body.dark-theme .event-page-main-card {background:#121c22;border-color:#263941;color:#f4fbf8;}
body.dark-theme .event-community-section {background:#121c22;border-color:#263941;color:#f4fbf8;}
body.dark-theme .event-info-card,
body.dark-theme .event-location-card,
body.dark-theme .review-card,
body.dark-theme .nearby-event-card {background:#121c22;border-color:#263941;color:#f4fbf8;}
body.dark-theme .event-page-main-card h1,
body.dark-theme .event-page-main-card h2 {color:#f4fbf8;}
body.dark-theme .event-community-section h2 {color:#f4fbf8;}
body.dark-theme .nearby-event-card h3 {color:#f4fbf8;}
body.dark-theme .event-page-main-card .meta {color:#b3c2bd;}
body.dark-theme .event-community-section .meta,
body.dark-theme .event-detail-meta dt {color:#b3c2bd;}
body.dark-theme .nearby-event-card .meta {color:#b3c2bd;}
body.dark-theme .event-detail-meta dd{color:#f4fbf8;}
body.dark-theme .event-page-actions{border-color:#263941;}
body.dark-theme .secondary-action,
body.dark-theme .nearby-events-arrow {background:#101a20;color:#f4fbf8;border-color:#38515a;}
body.dark-theme .page-back-button {background:#101a20;color:#f4fbf8;border-color:#38515a;}
body.dark-theme .secondary-action:hover,
body.dark-theme .nearby-events-arrow:hover {background:#203139;border-color:#5eead4;color:#9ff6df;}
body.dark-theme .page-back-button:hover {background:#203139;border-color:#5eead4;color:#9ff6df;}
body.dark-theme .event-section-kicker,
body.dark-theme .event-directions-link{color:#79f2df;}
body.dark-theme .event-location-map{border-color:#38515a;}
body.dark-theme .modal-card input,
body.dark-theme .modal-card select,
body.dark-theme .modal-card textarea{background:#0e171c;color:#f4fbf8;border-color:#38515a;}

/* Messages and general secondary pages inherit the persisted dark surface too. */
body.dark-theme.messages-page-body {background:#0b1216;color:#f4fbf8;}
body.dark-theme .messages-shell {background:#0b1216;color:#f4fbf8;}
body.dark-theme .messages-panel,
body.dark-theme .message-thread-panel,
body.dark-theme .conversation-row{background:#121c22;border-color:#263941;color:#f4fbf8;}

/* Aerial Neutral theme on Calendar/Event/secondary pages. */
body.satellite-theme.calendar-page-body,
body.satellite-theme.event-page-body,
body.satellite-theme.messages-page-body,
body.satellite-theme .event-page-shell {background:#f1f0ea;color:#17221d;}
body.satellite-theme .calendar-shell,
body.satellite-theme .messages-shell {background:#f1f0ea;color:#17221d;}






body.satellite-theme .calendar-toolbar,
body.satellite-theme .calendar-sidebar,
body.satellite-theme .calendar-content,
body.satellite-theme .calendar-day-cell,
body.satellite-theme .calendar-agenda-day,
body.satellite-theme .event-community-section,
body.satellite-theme .messages-panel,
body.satellite-theme .message-thread-panel,
body.satellite-theme .conversation-row {background:#fffdf8;border-color:#d4d9d4;color:#17221d;}
body.satellite-theme .calendar-event-card,
body.satellite-theme .event-info-card,
body.satellite-theme .event-location-card,
body.satellite-theme .review-card,
body.satellite-theme .nearby-event-card {background:#fffdf8;border-color:#d4d9d4;color:#17221d;}
body.satellite-theme .event-page-main-card {background:#fffdf8;border-color:#d4d9d4;color:#17221d;}
body.satellite-theme .calendar-filter-row select,
body.satellite-theme .calendar-filter-row input,
body.satellite-theme .calendar-year-label select,
body.satellite-theme .calendar-month-button,
body.satellite-theme .calendar-view-switch button,
body.satellite-theme .calendar-period-nav button,
body.satellite-theme .page-back-button {background:#fffdf8;color:#17221d;border-color:#cbd4cf;}
body.satellite-theme .secondary-action,
body.satellite-theme .nearby-events-arrow {background:#fffdf8;color:#17221d;border-color:#cbd4cf;}
body.satellite-theme .calendar-month-button:hover,
body.satellite-theme .calendar-month-button.active,
body.satellite-theme .calendar-view-switch button.active,
body.satellite-theme .calendar-today-button,
body.satellite-theme .page-back-button:hover{background:#e5f1ec!important;border-color:#176b5b!important;color:#0d4f43!important;}
body.satellite-theme .event-section-kicker,
body.satellite-theme .event-directions-link{color:#176b5b;}
body.satellite-theme .modal-card{background:#fffdf8;color:#17221d;border-color:#cbd4cf;}

/* =========================================================
   v59.3 — account menu clipping hotfix
   The unified hero header must allow the account dropdown to
   extend below the header.
   ========================================================= */



/* v59.4 — guest create-event login prompt */

@media (max-width:760px){
  
}


/* =========================================================
   v59.5 — visual system pass
   Shared spacing, radii, controls, cards, hierarchy and themes.
   ========================================================= */

/* Consistent controls */
.btn, .button, textarea { font: inherit; }
button {
  min-height: var(--control-h);
  border-radius: var(--radius-control);
}
.btn {
  min-height: var(--control-h);
}
.button {
  min-height: var(--control-h);
}
input[type="text"] {
  min-height: var(--control-h);
  border-radius: var(--radius-control);
}
input[type="search"] {
  min-height: var(--control-h);
  border-radius: var(--radius-control);
}
input[type="email"] {
  min-height: var(--control-h);
  border-radius: var(--radius-control);
}
input[type="password"] {
  min-height: var(--control-h);
  border-radius: var(--radius-control);
}
select {
  min-height: var(--control-h);
}
button, .btn, .button { font-weight: 700; transition: transform .14s ease, box-shadow .14s ease, background-color .14s ease, border-color .14s ease; }
button:hover, .btn:hover, .button:hover { transform: translateY(-1px); }
.btn:focus-visible, .button:focus-visible {
  outline: 3px solid rgba(24, 156, 127, .34);
  outline-offset: 2px;
}

/* One card/panel language */
.event-card {
  border-radius: var(--radius-card);
}
.event-detail-card {
  border-radius: var(--radius-card);
}
.details-card {
  border-radius: var(--radius-card);
}
.location-card {
  border-radius: var(--radius-card);
}
.dropdown-menu {
  border-radius: var(--radius-card);
}
.user-menu-dropdown {
  border-radius: var(--radius-card);
}
.calendar-event{
  border-radius: var(--radius-card);
}.messages-panel{
  border-radius: var(--radius-card);
}.filter-panel{
  border-radius: var(--radius-card);
}.map-shell{
  border-radius: var(--radius-card);
}
.event-card {
  border-color: var(--ui-border);
  box-shadow: var(--ui-shadow);
}
.event-detail-card {
  border-color: var(--ui-border);
  box-shadow: var(--ui-shadow);
}
.details-card {
  border-color: var(--ui-border);
  box-shadow: var(--ui-shadow);
}
.location-card {
  border-color: var(--ui-border);
  box-shadow: var(--ui-shadow);
}
.calendar-event {
  border-color: var(--ui-border);
  box-shadow: var(--ui-shadow);
}
.event-card { transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.event-card:hover { transform: translateY(-2px); box-shadow: var(--ui-shadow-hover); }

/* Event hierarchy: title first, metadata quieter */
.event-card h3,
.event-card .event-title { font-weight: 800; letter-spacing: -.015em; line-height: 1.2; }
.calendar-event-title { font-weight: 800; letter-spacing: -.015em; line-height: 1.2; }
.event-card .event-date, .event-card .date, .event-card .event-time { font-weight: 750; }
.event-card .event-location, .event-card .event-source, .event-card .meta, .event-card .muted { opacity: .74; }
.event-card img { border-radius: calc(var(--radius-card) - 2px); }

/* Calendar: events carry more visual weight than the grid itself */
.calendar-grid, .calendar-day, .calendar-cell { border-color: rgba(15, 64, 55, .09) !important; }
.calendar-day.is-past, .calendar-cell.is-past { opacity: .68; }
.calendar-day.is-today, .calendar-cell.is-today { box-shadow: inset 0 0 0 2px rgba(24, 156, 127, .55); }

/* Dark / Midnight Teal depth */
html[data-site-theme="dark"], body[data-site-theme="dark"] {
  --ui-border: rgba(169, 207, 198, .16);
  --ui-shadow: 0 12px 30px rgba(0,0,0,.22);
  --ui-shadow-hover: 0 16px 36px rgba(0,0,0,.30);
}
html[data-site-theme="dark"] .event-card,
html[data-site-theme="dark"] .details-card,
html[data-site-theme="dark"] .location-card,
body[data-site-theme="dark"] .event-card,
body[data-site-theme="dark"] .details-card,
body[data-site-theme="dark"] .location-card {
  background: #121C22; color: #F4FBF8; border-color: #2A3A40;
}
html[data-site-theme="dark"] .calendar-event,
body[data-site-theme="dark"] .calendar-event {
  background: #121C22; color: #F4FBF8; border-color: #2A3A40;
}
html[data-site-theme="dark"] .event-card:hover, body[data-site-theme="dark"] .event-card:hover { background: #18252B; }
html[data-site-theme="dark"] .event-card .event-location, html[data-site-theme="dark"] .event-card .event-source,
body[data-site-theme="dark"] .event-card .event-location, body[data-site-theme="dark"] .event-card .event-source { color: #A9BAB5; opacity: 1; }

/* Satellite / Aerial Neutral: UI stays calm over imagery */
html[data-site-theme="satellite"] .event-card,
html[data-site-theme="satellite"] .details-card,
html[data-site-theme="satellite"] .location-card,
body[data-site-theme="satellite"] .event-card,
body[data-site-theme="satellite"] .details-card,
body[data-site-theme="satellite"] .location-card {
  background: #FFFDF8; color: #17221D; border-color: rgba(23,34,29,.13);
}
html[data-site-theme="satellite"] .calendar-event,
body[data-site-theme="satellite"] .calendar-event {
  background: #FFFDF8; color: #17221D; border-color: rgba(23,34,29,.13);
}

/* Mobile rhythm */
@media (max-width: 720px) {
  :root { --control-h: 44px; }
  .event-card,
.details-card,
.location-card { border-radius: 14px; }
.calendar-event { border-radius: 14px; }
}


/* =========================================================
   v59.6 — Home + Calendar polish
   ========================================================= */

/* Event cards: metadata supports the title instead of competing with it. */
.event-card .badge,
.event-card .tag,
.event-card .event-badge,
.event-card .audience-badge,
.event-card .source-badge {
  font-size: 11px;
  line-height: 1.15;
  padding: 4px 7px;
  font-weight: 700;
}
.event-card .delete-event-btn,
.event-card .event-delete,
.event-card button[aria-label*="Delete"],
.event-card button[title*="Delete"] {
  width: 30px;
  min-width: 30px;
  min-height: 30px;
  height: 30px;
  padding: 0;
  border-radius: 9px;
  box-shadow: none;
  opacity: .62;
  background: transparent;
  border-color: transparent;
}
.event-card .delete-event-btn:hover,
.event-card .event-delete:hover,
.event-card button[aria-label*="Delete"]:hover,
.event-card button[title*="Delete"]:hover {
  opacity: 1;
  color: #b42318;
  background: #fff1f0;
  border-color: #ffd5d2;
}

/* v65.63 — removed obsolete generic calendar selectors (.calendar-day/.calendar-cell/.calendar-grid and legacy view toggles); current Calendar uses .calendar-day-cell/.calendar-month-grid/.calendar-view-switch. */

/* Slightly calmer dark-map treatment: UI remains dark while map details stay legible. */
html[data-site-theme="dark"] #map .leaflet-tile-pane,
body[data-site-theme="dark"] #map .leaflet-tile-pane {
  opacity: .94;
}

/* =========================================================
   v59.6.1 — corrected Home + Calendar polish
   Uses the actual live selectors from current markup.
   ========================================================= */

/* HOME: actual event card markup is .card.clickable */
#sidebar .card.clickable .card-badges .badge {
  font-size: 10px !important;
  line-height: 1.1;
  padding: 4px 7px !important;
  font-weight: 700;
}
#sidebar .card.clickable .event-admin-delete {
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  opacity: .58;
  background: transparent !important;
  border-color: transparent !important;
  color: #667085;
}
#sidebar .card.clickable .event-admin-delete:hover {
  opacity: 1;
  color: #b42318 !important;
  background: #fff1f0 !important;
  border-color: #ffd5d2 !important;
  transform: none;
}
body.dark-theme #sidebar .card.clickable .event-admin-delete {
  color: #A9BAB5;
}
body.dark-theme #sidebar .card.clickable .event-admin-delete:hover {
  color: #ffb4ad !important;
  background: rgba(180,35,24,.18) !important;
  border-color: rgba(255,180,173,.24) !important;
}

/* CALENDAR: actual month cells are .calendar-day-cell */
.calendar-day-cell {
  min-height: 132px;
}
@media (max-width:1050px) and (min-width:761px) {
  .calendar-day-cell { min-height: 122px; }
}

/* Actual dark theme class is body.dark-theme */
body.dark-theme .calendar-month-grid {
  background: #314149 !important;
  border-color: #314149 !important;
}
body.dark-theme .calendar-weekday {
  background: #1B2B32 !important;
  color: #DCE9E5 !important;
}
body.dark-theme .calendar-day-cell {
  background: #142129 !important;
  color: #F4FBF8 !important;
}
body.dark-theme .calendar-day-cell.muted {
  background: #101A20 !important;
  color: #778C86 !important;
}
body.dark-theme .calendar-day-number {
  color: #F4FBF8;
}
body.dark-theme .calendar-day-cell.muted .calendar-day-number {
  color: #778C86;
}

/* Hide the actual floating report button on Calendar only */
.calendar-page-body #reportProblemButton {
  display: none;
}

/* Compact the actual Month / Agenda switch */
.calendar-view-switch {
  padding: 3px;
  border-radius: 12px;
  align-self: end;
}
.calendar-view-switch button {
  min-height: 34px;
  padding: 7px 11px;
  font-size: .92rem;
}

/* Make the calendar toolbar visually easier to scan */
.calendar-toolbar {
  align-items: center;
}
.calendar-filter-row {
  gap: 8px;
}

/* Dark map: make details a little easier to read without changing the basemap. */
body.dark-theme #map {
  background: #0f171b;
}
body.dark-theme #map .leaflet-tile-pane {
  filter: brightness(1.16) contrast(.92);
}


/* =========================================================
   v59.6.3 — compact ACTUAL calendar heading selectors
   ========================================================= */
.calendar-page-body .calendar-heading {
  gap: 16px !important;
  
}
.calendar-page-body .calendar-toolbar {
  margin-top: 0 !important;
}

/* Keep the same tighter rhythm in dark/satellite themes. */
body.dark-theme.calendar-page-body .calendar-shell,
body.satellite-theme.calendar-page-body .calendar-shell {
  padding-top: 14px !important;
}


/* =========================================================
   v59.6.4 — single-row compact calendar heading
   ========================================================= */
.calendar-page-body .calendar-heading {
  margin-bottom: 8px !important;
  align-items: flex-end !important;
}

.calendar-page-body .calendar-heading-copy {
  min-width: 0;
}

.calendar-page-body .calendar-title-line {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
}

.calendar-page-body .calendar-title-line h1 {
  margin: 0 !important;
  line-height: 1 !important;
}

.calendar-page-body .calendar-title-kicker {
  margin: 2px 0 0 !important;
  white-space: nowrap;
  line-height: 1 !important;
}

.calendar-page-body .calendar-back-square {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  min-width: 38px;
  height: 38px;
  min-height: 38px;
  padding: 0 !important;
  margin: 0 2px 0 0 !important;
  border-radius: 10px;
  font-size: 19px;
  line-height: 1;
  text-decoration: none;
}

.calendar-page-body .calendar-heading-copy > p {
  margin: 5px 0 0 50px !important;
  line-height: 1.25 !important;
}

.calendar-page-body .calendar-shell {
  padding-top: 10px !important;
}

@media (max-width: 760px) {
  .calendar-page-body .calendar-title-line {
    gap: 8px;
    flex-wrap: wrap;
  }
  .calendar-page-body .calendar-back-square {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
  }
  .calendar-page-body .calendar-title-kicker {
    flex-basis: auto;
  }
  .calendar-page-body .calendar-heading-copy > p {
    margin-left: 44px !important;
  }
}


/* =========================================================
   v59.6.5 — homepage hero/filter spacing alignment
   ========================================================= */
.filter-panel {
  margin: 10px 12px 10px !important;
}

@media (max-width: 1000px) {
  .filter-panel {
    margin-left: 12px !important;
    margin-right: 12px !important;
  }
}

@media (max-width: 760px) {
  .filter-panel {
    margin-top: 8px !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
    margin-bottom: 10px !important;
  }
}


