/*
 * Villa Rosa Kalender 0.5: spaltenbreites, zentriertes und mobiles Zwei-Monats-Layout.
 * Selektoren sind auf .vrc-* begrenzt, um WordPress-Themes nicht zu veraendern.
 */
.vrc-list {display:flex;flex-direction:column;gap:28px;width:100%;min-width:0;align-items:center}
/* Theme-typische ::before/::after-Platzhalter duerfen weder als grauer
   Balken erscheinen noch als Flex-Kind eine Leerzeile mit gap ausloesen. */
.vrc-list::before,.vrc-list::after,
.vrc-calendar::before,.vrc-calendar::after,
.vrc-calendar .vrc-legend::before,.vrc-calendar .vrc-legend::after,
.vrc-calendar .vrc-board::before,.vrc-calendar .vrc-board::after {
  content:none!important;display:none!important
}
.vrc-calendar {
  --vrc-busy-color:#2a7332;
  --vrc-busy-text:#fff;
  --vrc-edge:#173b67;
  font:normal 11px/1.1 Arial,Helvetica,sans-serif!important;
  color:#080808!important;background:transparent!important;border:0!important;box-shadow:none!important;
  display:block!important;box-sizing:border-box;width:100%!important;max-width:700px!important;
  min-width:0!important;margin:0 auto!important;
  padding:0!important;text-align:left!important;overflow:visible!important
}
.vrc-calendar * {box-sizing:border-box}
.vrc-tone-light {--vrc-busy-text:#080808}
.vrc-calendar .vrc-property {
  font:700 17px/1.35 Arial,Helvetica,sans-serif!important;color:inherit!important;
  padding:0!important;margin:0 0 14px!important;text-align:center!important
}
.vrc-calendar .vrc-legend {
  display:flex!important;align-items:center;justify-content:center;gap:8px;
  width:100%;height:23px;margin:0 0 12px!important;
  padding:0!important;font:normal 11px/1.2 Arial,Helvetica,sans-serif!important;
  color:#000!important
}
.vrc-calendar .vrc-key {display:inline-block;width:16px;height:16px;flex:0 0 16px;background:var(--vrc-busy-color)}
/* Das gesamte Bedienelement (Pfeile + Monate) bleibt innerhalb der
   WordPress-Inhaltsspalte. Beide Monate nutzen die verfuegbare Breite. */
.vrc-calendar .vrc-board {
  display:grid!important;grid-template-columns:33px minmax(0,1fr) 33px;
  grid-template-rows:auto;column-gap:10px;align-items:center;justify-items:stretch;
  position:relative;width:100%!important;max-width:100%!important;min-width:0;
  margin:0 auto!important;padding:0!important;overflow:visible
}
.vrc-calendar .vrc-months {
  grid-column:2;grid-row:1;display:grid!important;
  grid-template-columns:repeat(var(--vrc-columns,2),minmax(0,1fr));
  gap:17px;align-items:start;width:100%!important;max-width:100%!important;min-width:0;
  margin:0!important;padding:0!important
}
.vrc-calendar .vrc-month {width:100%!important;max-width:100%!important;min-width:0;outline:1px solid var(--vrc-edge);outline-offset:0}
.vrc-calendar[data-months="1"] .vrc-months {max-width:360px!important;margin:0 auto!important}
.vrc-calendar .vrc-month-title {
  display:block!important;min-height:15px;line-height:14px!important;padding:0 2px!important;
  margin:0!important;border:0!important;border-bottom:1px solid #000!important;
  text-align:center!important;font:700 10.5px/14px Arial,Helvetica,sans-serif!important;
  color:var(--vrc-busy-text)!important;background:var(--vrc-busy-color)!important
}
.vrc-calendar table.vrc-table {
  width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;border-spacing:0!important;
  border:0!important;margin:0!important;padding:0!important;background:#fff!important;
  box-shadow:none!important;border-radius:0!important;color:#111!important;
  font:normal 11px/1 Arial,Helvetica,sans-serif!important
}
.vrc-calendar .vrc-table thead,.vrc-calendar .vrc-table tbody,.vrc-calendar .vrc-table tr {
  background:none!important;margin:0!important;padding:0!important;border:0!important
}
.vrc-calendar .vrc-table th,.vrc-calendar .vrc-table td {
  width:14.2857%!important;border:1px solid #070707!important;box-shadow:none!important;
  text-align:center!important;vertical-align:middle!important;border-radius:0!important;
  padding:0!important;margin:0!important;letter-spacing:0!important;text-transform:none!important
}
.vrc-calendar .vrc-table th {
  height:15px!important;background:#dcdcdc!important;color:#0b0b0b!important;
  font:normal 10px/14px Arial,Helvetica,sans-serif!important
}
.vrc-calendar .vrc-table td.vrc-day {
  height:17.5px!important;min-height:17.5px!important;
  font:normal 11px/17px Arial,Helvetica,sans-serif!important;
  color:#111!important;background:#fff!important;
  white-space:nowrap!important
}
.vrc-calendar .vrc-table td.vrc-day span {color:inherit!important;font:inherit!important;position:relative;z-index:1}
.vrc-calendar .vrc-table td.vrc-busy {
  color:var(--vrc-busy-text)!important;background:var(--vrc-busy-color)!important
}
/* Diagonale von links unten nach rechts oben: Anreise rechts/unten, Abreise links/oben. */
.vrc-calendar .vrc-table td.vrc-in {
  background:linear-gradient(135deg,#fff 49.5%,var(--vrc-busy-color) 50.5%)!important
}
.vrc-calendar .vrc-table td.vrc-out {
  background:linear-gradient(135deg,var(--vrc-busy-color) 49.5%,#fff 50.5%)!important
}
.vrc-calendar.vrc-tone-dark .vrc-table td.vrc-in span,
.vrc-calendar.vrc-tone-dark .vrc-table td.vrc-out span {
  color:#fff!important;text-shadow:0 1px 1px #172719,1px 0 1px #172719,-1px 0 1px #172719
}
.vrc-calendar .vrc-table td.vrc-unknown {background:#ececec!important;color:#707070!important}
.vrc-calendar .vrc-table td.vrc-outside {background:#fff!important;color:#c6c6c6!important}
.vrc-calendar .vrc-arrow {
  position:static!important;top:auto!important;left:auto!important;right:auto!important;
  display:none;align-items:center!important;justify-content:center!important;
  width:33px!important;height:33px!important;min-width:33px!important;min-height:33px!important;
  padding:0 0 3px!important;margin:0!important;border:0!important;border-radius:0!important;
  background:#f0f0f0!important;color:#050505!important;box-shadow:none!important;
  font:normal 35px/1 Arial,Helvetica,sans-serif!important;text-align:center!important;
  cursor:pointer!important;transition:background-color .15s
}
.vrc-calendar.vrc-ready .vrc-arrow:not([hidden]) {display:flex!important}
.vrc-calendar .vrc-arrow[hidden],.vrc-calendar .vrc-notice[hidden] {display:none!important}
.vrc-calendar .vrc-prev {grid-column:1;grid-row:1;justify-self:start}
.vrc-calendar .vrc-next {grid-column:3;grid-row:1;justify-self:end}
.vrc-calendar .vrc-arrow:hover {background:#dedede!important}
.vrc-calendar .vrc-arrow:focus-visible {outline:2px solid #173b67!important;outline-offset:2px!important}
.vrc-calendar .vrc-notice {
  font:normal 11px/1.4 Arial,Helvetica,sans-serif!important;
  color:#7d351c!important;margin:12px 0 0!important;padding:0!important;max-width:463px
}
/* Mobil: ZWEI Monate untereinander (statt nur ein Monat). Die Pfeile
   stehen darueber und nehmen den Monatsrastern keine Breite weg. */
@media(max-width:620px) {
  .vrc-calendar .vrc-board {
    grid-template-columns:1fr 1fr;grid-template-rows:33px auto;
    column-gap:0;row-gap:10px
  }
  .vrc-calendar .vrc-months {
    grid-column:1 / -1;grid-row:2;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;max-width:360px!important;
    margin:0 auto!important
  }
  .vrc-calendar .vrc-prev {grid-column:1;grid-row:1;justify-self:start}
  .vrc-calendar .vrc-next {grid-column:2;grid-row:1;justify-self:end}
  .vrc-calendar .vrc-table td.vrc-day {height:24px!important;min-height:24px!important;line-height:23px!important}
  .vrc-calendar .vrc-table th {height:19px!important;line-height:18px!important}
}
@media(prefers-reduced-motion:reduce){.vrc-calendar .vrc-arrow{transition:none!important}}
