/*
  Gedeelde agenda-styling voor de publieke UIT-agenda en de beheer-weekweergave.
  Pas het agenda-uiterlijk hier aan, niet los in index.html en beheer/index.html.
*/

.themeCreative{
  --agenda-tint:#fdf0f6;
  --agenda-card-tint:#fdf0f6;
  --agenda-line:rgba(229,0,90,.22);
}
.themeCulture{
  --agenda-tint:#f1f0fb;
  --agenda-card-tint:#f1f0fb;
  --agenda-line:rgba(72,70,184,.22);
}
.themeNature{
  --agenda-tint:#eef8f2;
  --agenda-card-tint:#eef8f2;
  --agenda-line:rgba(0,155,72,.22);
}
.themeSocial{
  --agenda-tint:#fff9e8;
  --agenda-card-tint:#fff9e8;
  --agenda-line:rgba(213,163,16,.26);
}
.themeSport{
  --agenda-tint:#edf8fb;
  --agenda-card-tint:#edf8fb;
  --agenda-line:rgba(0,132,168,.22);
}
.themeAction{
  --agenda-tint:#fff3e8;
  --agenda-card-tint:#fff3e8;
  --agenda-line:rgba(199,92,11,.23);
}
.themeDefault{
  --agenda-tint:#eff9f3;
  --agenda-card-tint:#eff9f3;
  --agenda-line:rgba(0,155,72,.18);
}

.weekPanel,
.agendaReviewWeek{
  overflow:hidden;
  background:rgba(255,255,255,.84);
  border-color:rgba(234,236,239,.86);
  box-shadow:0 18px 48px rgba(20,38,42,.055);
}

.weekTop,
.agendaReviewWeekHead{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:18px;
  padding:28px 28px 22px;
  border-bottom:0;
  background:rgba(255,255,255,.70);
}

.weekTitle,
.agendaReviewWeekTitle{
  display:flex;
  align-items:flex-start;
  gap:22px;
}

.weekBadge,
.agendaReviewWeekBadge{
  width:66px;
  height:66px;
  border-radius:14px;
  background:linear-gradient(145deg,rgba(168,225,221,.90),rgba(216,242,238,.76));
  display:grid;
  place-items:center;
  color:#07345e;
  font-weight:600;
  font-size:1.75rem;
  flex:0 0 auto;
}

.weekTop h3,
.agendaReviewWeekHead h3{
  margin:0;
  color:#07345e;
  font-size:clamp(1.72rem,2.55vw,2.28rem);
  font-weight:600;
  line-height:1.1;
  letter-spacing:-.025em;
}

.weekTop .dates,
.agendaReviewWeekHead p{
  margin-top:9px;
  color:#123968;
  font-size:1.04rem;
}

.weekMeta,
.agendaReviewWeekMeta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  padding-top:8px;
}

.weekMeta{max-width:440px}
.agendaReviewWeekMeta{max-width:330px}

.weekBody{padding:0 18px 22px}

.agendaBoard,
.agendaReviewBoard{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:0;
  overflow:hidden;
  background:rgba(250,253,252,.58);
  border:1px solid rgba(79,142,158,.11);
  border-radius:16px;
}

.agendaReviewBoard{
  overflow-x:auto;
  margin:0 18px 22px;
}

.agendaDay,
.agendaReviewDay{
  min-height:520px;
  padding:22px 10px 14px;
  border:0;
  border-left:1px solid rgba(79,142,158,.085);
  background:var(--day-column-tint,rgba(255,255,255,.44));
  display:flex;
  flex-direction:column;
  gap:24px;
}

.agendaDay:first-child,
.agendaReviewDay:first-child{
  border-left:0;
}

.agendaDay:nth-child(odd),
.agendaReviewDay:nth-child(odd){
  --day-column-tint:rgba(255,255,255,.46);
  --day-head-tint:transparent;
}

.agendaDay:nth-child(even),
.agendaReviewDay:nth-child(even){
  --day-column-tint:rgba(226,245,243,.22);
  --day-head-tint:transparent;
}

.agendaDay.today,
.agendaReviewDay.today{
  background:rgba(222,244,241,.32);
}

.agendaHead,
.agendaReviewDayHead{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:8px;
  margin:0 4px;
  padding:0;
  border-radius:0;
  background:transparent;
  border-bottom:0;
}

.agendaHead strong,
.agendaReviewDayHead strong{
  display:block;
  color:#082b55;
  font-size:1rem;
  font-weight:600;
}

.agendaHead span,
.agendaReviewDayHead span{
  display:block;
  margin-top:6px;
  color:#123968;
  font-size:.91rem;
}

.agendaList{gap:12px}
.agendaGroup,
.agendaReviewDayItems{
  gap:14px;
}

.agendaItem,
.agendaReviewCard{
  min-height:132px;
  padding:14px 13px 11px;
  border-radius:13px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(79,142,158,.16);
}

.agendaItem.themeCreative,
.agendaItem.themeCulture,
.agendaItem.themeNature,
.agendaItem.themeSocial,
.agendaItem.themeSport,
.agendaItem.themeAction,
.agendaItem.themeDefault{
  background:var(--agenda-tint);
  border-color:var(--agenda-line);
}

.agendaReviewCard.themeCreative,
.agendaReviewCard.themeCulture,
.agendaReviewCard.themeNature,
.agendaReviewCard.themeSocial,
.agendaReviewCard.themeSport,
.agendaReviewCard.themeAction,
.agendaReviewCard.themeDefault{
  background:var(--agenda-card-tint);
  border-color:var(--agenda-line,var(--theme-line));
}

.agendaItemTitle .domainIcon,
.agendaReviewCardTitle .domainIcon{
  width:19px;
  height:19px;
  opacity:.95;
}

.agendaItemTitle .ideaTitleText,
.agendaReviewCardTitle .ideaTitleText{
  text-indent:26px;
}

.agendaItemMeta,
.agendaReviewCardMeta{
  color:#123968;
  font-size:.79rem;
  line-height:1.48;
}

.agendaItemMeta{margin-top:14px}
.agendaReviewCardMeta{margin-top:8px}

.weekNav{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-right:8px;
}

.weekNavButton{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border:1px solid rgba(7,52,94,.095);
  border-radius:999px;
  background:rgba(255,255,255,.76);
  color:#07345e;
  cursor:pointer;
  box-shadow:0 6px 14px rgba(20,38,42,.028);
  transition:.18s var(--ease);
}

.weekNavButton:hover:not(:disabled){
  background:#fff;
  color:#07345e;
  border-color:rgba(7,52,94,.16);
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(20,38,42,.05);
}

.weekNavButton:disabled{
  opacity:.34;
  cursor:default;
}

.weekNavButton svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media (max-width:1040px){
  .agendaReviewBoard{
    grid-template-columns:repeat(7,180px);
    margin:0 12px 18px;
  }
  .agendaReviewDay{min-height:360px}
}

@media (max-width:980px){
  .weekBody{padding:0 12px 18px}
  .agendaBoard{grid-template-columns:repeat(2,minmax(0,1fr))}
  .agendaDay{min-height:360px}
  .agendaDay:nth-child(odd){border-left:0}
  .agendaDay:nth-child(n+3){border-top:1px solid rgba(11,18,32,.06)}
}

@media (max-width:820px){
  .agendaReviewWeekHead{grid-template-columns:1fr}
  .agendaReviewWeekMeta{justify-content:flex-start}
}

@media (max-width:640px){
  .weekTop,
  .agendaReviewWeekHead{
    grid-template-columns:1fr;
    gap:16px;
    padding:18px 16px;
  }
  .weekTitle,
  .agendaReviewWeekTitle{
    gap:14px;
  }
  .weekBadge,
  .agendaReviewWeekBadge{
    width:56px;
    height:56px;
    font-size:1.42rem;
  }
  .weekTop h3,
  .agendaReviewWeekHead h3{
    font-size:1.55rem;
  }
  .weekMeta{
    justify-content:flex-start;
  }
  .weekNav{
    order:-1;
    width:100%;
    margin:0 0 2px;
  }
  .weekNavButton{
    width:40px;
    height:40px;
  }
  .weekBody{padding:0}
  .agendaBoard,
  .agendaReviewBoard{
    grid-template-columns:1fr;
    overflow:visible;
    margin:0;
  }
  .agendaDay,
  .agendaReviewDay{
    min-height:auto;
    padding:16px 12px 14px;
    gap:14px;
    border-left:0;
    border-top:1px solid rgba(11,18,32,.06);
  }
  .agendaDay:first-child,
  .agendaReviewDay:first-child{
    border-top:0;
  }
  .agendaItem,
  .agendaReviewCard{
    min-height:132px;
  }
}
