/* Latest */
.page.-sub .calendarize.-latest {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 0 var(--g-gap);
}
.calendarize.-latest .calendarize__item {
  display: grid;
  grid-template-columns: 60px 1fr;
  grid-gap: var(--g-gap-s);
}
.calendarize__dayview .calendarize__item,
.calendarize.-events .calendarize__item {
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid rgb(var(--c-neutral-light));
}
.calendarize.-recycling .calendarize__item,
.calendarize.-garbage .calendarize__item {
  align-items: center;
  margin-bottom: 1.5rem;
}

.calendarize__date {
  background: rgb(var(--c-primary));
  color: rgb(var(--c-neutral-lightest));
  display: grid;
  grid-template-rows: 1fr 1fr;
  justify-content: center;
  width: 60px;
  height: 60px;
  padding: 10px 0;
  font-family: var(--f-family);
  font-weight: var(--f-weight-sb);
  text-transform: uppercase;
  line-height: 100%;
  text-align: center;
}

.calendarize__addtext {
  text-transform: uppercase;
  font-size: var(--f-size-s-1);
}
.t3ddy .calendarize__addtext {
  display: none;
}
.calendarize__addtext > span {
  display: inline-block;
}

.calendarize__text {
  padding-top: 5px;
}

.calendarize.-garbage .calendarize__text {
  padding-top: 0;
}

/* Month */
.calendarize table.-month {
  width: 100%;
}
.calendarize__title {
  font-family: var(--f-family);
  font-weight: var(--f-weight-b);
}
.calendarize__dayview .browser,
.calendarize table.-month th {
  color: rgb(var(--c-neutral-lightest));
  background: rgb(var(--c-primary));
  font-family: var(--f-family);
  border: 2px solid rgb(var(--c-neutral-lightest));
  text-transform: uppercase;
  padding: 0.3rem 0.7rem;
  font-weight: var(--f-weight);
}
.t3ddy-tabContainer .calendarize table.-month th {
  border: 2px solid rgb(var(--c-neutral-lighter));
}
.calendarize table.-month td {
  border: 2px solid rgb(var(--c-neutral-lightest));
  background: rgb(var(--c-neutral-lighter));
}
.t3ddy-tabContainer .calendarize table.-month td {
  border: 2px solid rgb(var(--c-neutral-lighter));
  background: rgb(var(--c-neutral-lightest));
}
.calendarize table.-month td.not-current-month {
  background: rgb(var(--c-neutral-lighter));
}
.calendarize__th {
  display: grid;
  grid-template-columns: 50px 1fr 50px;
  width: 100%;
}
.calendarize__dayview .calendarize__th {
  grid-template-columns: repeat(3, 1fr);
}
.calendarize__dayview .calendarize__th span {
  justify-self: center;
}
.calendarize__dayview .calendarize__th a:last-child {
  justify-self: flex-end;
}
.calendarize__day {
  padding: 0.3rem 0.7rem;
  background: rgb(var(--c-neutral-light));
  font-size: var(--f-size-l-1);
  font-family: var(--f-family-cd);
  font-weight: var(--f-weight-b);
  color: rgb(var(--c-neutral-darkest));
}
.not-current-month .calendarize__day {
  background: rgb(var(--c-neutral-lighter));
  color: rgb(var(--c-neutral));
}
.hasEvents .calendarize__day {
  background: rgb(var(--c-primary));
}
.hasEvents .calendarize__day a {
  color: rgb(var(--c-neutral-lightest));
}
.calendarize__dayevent {
  padding: 1rem 0.7rem;
}
.hasEvents .calendarize__dayevent {
  display: none;
}
.calendarize__dayevent ul {
  padding: 0 !important;
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}
.calendarize__dayevent li {
  list-style-type: none;
  margin-bottom: 0.5rem !important;
  padding-bottom: 0.5rem !important;
  border-bottom: 1px solid rgb(var(--c-neutral-light));
  display: block !important;
}
.calendarize__dayevent li:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: none;
}
.calendarize__prev,
.calendarize__next {
  color: rgb(var(--c-neutral-lightest));
  font-size: 18px;
}

/* Suche */
.calendarize__search {
  background: rgb(var(--c-neutral-light));
  padding: 0.5rem 1rem;
  display: grid;
  grid-gap: var(--g-gap-s);
  grid-template-columns: 1fr;
  grid-template-rows: repeat(4, 1fr);
}
.calendarize__search label {
  font-size: var(--f-size-l-1);
  font-family: var(--f-family-cd);
  font-weight: var(--f-weight-b);
  color: rgb(var(--c-neutral-darkest));
  margin-right: 0.5rem;
}
.calendarize__search input {
  margin-bottom: 0;
}

.calendarize__search .form-group {
  display: flex;
  align-items: center;
  margin-top: 0;
}

.calendarize__search input[type="date"],
.calendarize__search input[type="date"],
.calendarize__search input[type="text"],
.calendarize__search input[type="password"],
.calendarize__search input[type="email"],
.calendarize__search input[type="tel"],
.calendarize__search textarea {
  border-radius: 0;
  width: auto;
}

.calendarize__search button {
  border-radius: 0;
}

/* Pagination */
.calendarize .pagination {
  padding: 0;
}
.calendarize .pagination li {
  list-style-type: none;
  display: inline-block;
  margin: 0 5px 5px 0;
  background: rgb(var(--c-neutral-lighter));
  width: auto;
}
.calendarize .pagination li a {
  display: block;
  padding: 0 18px;
  height: 45px;
  line-height: 45px;
}
.calendarize .pagination li:hover,
.calendarize .pagination li.active {
  background: rgb(var(--c-primary));
}
.calendarize .pagination li:hover a,
.calendarize .pagination li.active a {
  color: rgb(var(--c-neutral-lightest));
}
.calendarize.-latest .text-center {
  text-align: left;
  width: 100%;
}

/* Detail */
.calendarize__image {
  grid-column: span 12;
}
.calendarize__image img {
  margin-bottom: 2rem;
}

.calendarize__textwrap {
  grid-column: span 12;
}
.calendarize__textwrap dl {
  display: grid;
  grid-template-columns: min-content 1fr;
}

/* Day view */
.dayview__wrap {
  padding: 1.5rem 0.7rem;
}

@media (min-width: 640px) {
  .calendarize__image {
    grid-column: span 4;
  }

  .calendarize__textwrap {
    grid-column: span 8;
  }
}
@media (min-width: 800px) {
  .page.-sub .calendarize.-latest {
    grid-template-columns: 1fr 1fr;
  }
  .calendarize__search {
    grid-template-columns: 1fr 1fr 1fr 100px;
    align-items: center;
    grid-template-rows: 1fr;
    grid-gap: 0 var(--g-gap-s);
    align-items: center;
  }
  .calendarize.-latest .text-center {
    grid-column: span 2;
  }
  .hasEvents .calendarize__day {
    background: rgb(var(--c-neutral-light));
  }
  .hasEvents .calendarize__day a {
    color: rgb(var(--c-primary));
  }
  .hasEvents .calendarize__dayevent {
    display: block;
  }
}
