/* ===== Injection 006: restore calendar colours ===== */
:root{
  --cal-red:#df151d;
  --cal-red-dark:#aa0c12;
  --cal-border:#c8d7c0;
  --cal-ink:#21313d;
  --cal-muted:#9aa3ad;
  --cal-bank:#ef9a9f;
  --cal-return:#8fc8ef;
  --cal-down:#e7e7e7;
  --cal-weekend:#f3d57a;
  --cal-annual:#7ec6bf;
  --cal-xmas:#f2b04e;
  --cal-pattern:#d91b23;
  --cal-work:#b9dd83;
}

body.page-calendar-2026,
body.calendar-page,
body[class*="calendar-2026"]{
  background:#eff4ec !important;
  color:var(--cal-ink) !important;
}

.page-calendar-2026 .lite-page-content,
.calendar-page .lite-page-content,
body[class*="calendar-2026"] .lite-page-content{
  width:min(1520px,calc(100% - 18px)) !important;
  max-width:none !important;
  margin:10px auto 26px !important;
}

.page-calendar-2026 .sheet,
.calendar-page .sheet,
body[class*="calendar-2026"] .sheet{
  border:1px solid var(--cal-border) !important;
  border-radius:14px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 9px 26px rgba(44,78,37,.12) !important;
}

.page-calendar-2026 .title-box,
.calendar-page .title-box,
body[class*="calendar-2026"] .title-box{
  background:linear-gradient(135deg,var(--cal-red),#eb171e) !important;
  padding:12px 14px !important;
}

.page-calendar-2026 .title-box h1,
.calendar-page .title-box h1,
body[class*="calendar-2026"] .title-box h1{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:clamp(31px,3.5vw,54px) !important;
  font-weight:1000 !important;
  line-height:1.04 !important;
  letter-spacing:-.03em !important;
  text-wrap:balance !important;
  text-align:center !important;
}

.page-calendar-2026 .months,
.calendar-page .months,
body[class*="calendar-2026"] .months{
  background:#fff !important;
}

.page-calendar-2026 .month-title,
.calendar-page .month-title,
body[class*="calendar-2026"] .month-title{
  padding:8px 10px !important;
  background:var(--cal-red) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:18px !important;
  font-weight:1000 !important;
  line-height:1 !important;
}

.page-calendar-2026 .month-grid,
.calendar-page .month-grid,
body[class*="calendar-2026"] .month-grid{
  font-size:12px !important;
  color:var(--cal-ink) !important;
}

.page-calendar-2026 .month-grid th,
.calendar-page .month-grid th,
body[class*="calendar-2026"] .month-grid th{
  background:#fff !important;
  color:var(--cal-red-dark) !important;
  -webkit-text-fill-color:var(--cal-red-dark) !important;
  font-size:11px !important;
  font-weight:1000 !important;
  border-bottom:1px solid #ebeff2 !important;
}

.page-calendar-2026 .month-grid td,
.calendar-page .month-grid td,
body[class*="calendar-2026"] .month-grid td{
  min-width:29px !important;
  height:24px !important;
  padding:3px 4px !important;
  border:0 !important;
  color:#142639 !important;
  -webkit-text-fill-color:#142639 !important;
  font-weight:700 !important;
  line-height:1 !important;
  text-align:center !important;
  border-radius:0 !important;
  transition:filter .15s ease !important;
}

.page-calendar-2026 .month-grid td:hover,
.calendar-page .month-grid td:hover,
body[class*="calendar-2026"] .month-grid td:hover{
  filter:brightness(.97) !important;
}

.page-calendar-2026 .month-grid td.outside,
.page-calendar-2026 .month-grid td.is-outside,
.page-calendar-2026 .month-grid td.muted,
.page-calendar-2026 .month-grid td.other-month,
.calendar-page .month-grid td.outside,
.calendar-page .month-grid td.is-outside,
.calendar-page .month-grid td.muted,
.calendar-page .month-grid td.other-month,
body[class*="calendar-2026"] .month-grid td.outside,
body[class*="calendar-2026"] .month-grid td.is-outside,
body[class*="calendar-2026"] .month-grid td.muted,
body[class*="calendar-2026"] .month-grid td.other-month{
  color:#aeb5bc !important;
  -webkit-text-fill-color:#aeb5bc !important;
}

.page-calendar-2026 .month-grid td.week,
.page-calendar-2026 .month-grid td.wk,
.page-calendar-2026 .month-grid td.weeknum,
.calendar-page .month-grid td.week,
.calendar-page .month-grid td.wk,
.calendar-page .month-grid td.weeknum,
body[class*="calendar-2026"] .month-grid td.week,
body[class*="calendar-2026"] .month-grid td.wk,
body[class*="calendar-2026"] .month-grid td.weeknum{
  background:#f6d8de !important;
  color:#b31219 !important;
  -webkit-text-fill-color:#b31219 !important;
  font-weight:1000 !important;
}

.page-calendar-2026 .month-grid td.is-work,
.page-calendar-2026 .month-grid td.work,
.page-calendar-2026 .month-grid td.working,
.calendar-page .month-grid td.is-work,
.calendar-page .month-grid td.work,
.calendar-page .month-grid td.working,
body[class*="calendar-2026"] .month-grid td.is-work,
body[class*="calendar-2026"] .month-grid td.work,
body[class*="calendar-2026"] .month-grid td.working{
  background:var(--cal-work) !important;
}

.page-calendar-2026 .month-grid td.is-return,
.page-calendar-2026 .month-grid td.return,
.page-calendar-2026 .month-grid td.rtw,
.page-calendar-2026 .month-grid td.travel,
.calendar-page .month-grid td.is-return,
.calendar-page .month-grid td.return,
.calendar-page .month-grid td.rtw,
.calendar-page .month-grid td.travel,
body[class*="calendar-2026"] .month-grid td.is-return,
body[class*="calendar-2026"] .month-grid td.return,
body[class*="calendar-2026"] .month-grid td.rtw,
body[class*="calendar-2026"] .month-grid td.travel{
  background:var(--cal-return) !important;
}

.page-calendar-2026 .month-grid td.is-down,
.page-calendar-2026 .month-grid td.down,
.page-calendar-2026 .month-grid td.off,
.page-calendar-2026 .month-grid td.nonwork,
.calendar-page .month-grid td.is-down,
.calendar-page .month-grid td.down,
.calendar-page .month-grid td.off,
.calendar-page .month-grid td.nonwork,
body[class*="calendar-2026"] .month-grid td.is-down,
body[class*="calendar-2026"] .month-grid td.down,
body[class*="calendar-2026"] .month-grid td.off,
body[class*="calendar-2026"] .month-grid td.nonwork{
  background:var(--cal-down) !important;
}

.page-calendar-2026 .month-grid td.is-weekend,
.page-calendar-2026 .month-grid td.weekend,
.page-calendar-2026 .month-grid td.potential-weekend,
.calendar-page .month-grid td.is-weekend,
.calendar-page .month-grid td.weekend,
.calendar-page .month-grid td.potential-weekend,
body[class*="calendar-2026"] .month-grid td.is-weekend,
body[class*="calendar-2026"] .month-grid td.weekend,
body[class*="calendar-2026"] .month-grid td.potential-weekend{
  background:var(--cal-weekend) !important;
}

.page-calendar-2026 .month-grid td.is-annual,
.page-calendar-2026 .month-grid td.annual,
.page-calendar-2026 .month-grid td.operative,
.calendar-page .month-grid td.is-annual,
.calendar-page .month-grid td.annual,
.calendar-page .month-grid td.operative,
body[class*="calendar-2026"] .month-grid td.is-annual,
body[class*="calendar-2026"] .month-grid td.annual,
body[class*="calendar-2026"] .month-grid td.operative{
  background:var(--cal-annual) !important;
}

.page-calendar-2026 .month-grid td.is-bank,
.page-calendar-2026 .month-grid td.bank,
.calendar-page .month-grid td.is-bank,
.calendar-page .month-grid td.bank,
body[class*="calendar-2026"] .month-grid td.is-bank,
body[class*="calendar-2026"] .month-grid td.bank{
  background:var(--cal-bank) !important;
}

.page-calendar-2026 .month-grid td.is-xmasmove,
.page-calendar-2026 .month-grid td.xmasmove,
.page-calendar-2026 .month-grid td.moved-bank,
.calendar-page .month-grid td.is-xmasmove,
.calendar-page .month-grid td.xmasmove,
.calendar-page .month-grid td.moved-bank,
body[class*="calendar-2026"] .month-grid td.is-xmasmove,
body[class*="calendar-2026"] .month-grid td.xmasmove,
body[class*="calendar-2026"] .month-grid td.moved-bank{
  background:var(--cal-xmas) !important;
}

.page-calendar-2026 .month-grid td.is-pattern,
.page-calendar-2026 .month-grid td.pattern,
.page-calendar-2026 .month-grid td.newpattern,
.calendar-page .month-grid td.is-pattern,
.calendar-page .month-grid td.pattern,
.calendar-page .month-grid td.newpattern,
body[class*="calendar-2026"] .month-grid td.is-pattern,
body[class*="calendar-2026"] .month-grid td.pattern,
body[class*="calendar-2026"] .month-grid td.newpattern{
  background:var(--cal-pattern) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-weight:1000 !important;
}

.page-calendar-2026 .key,
.calendar-page .key,
body[class*="calendar-2026"] .key{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:9px 14px !important;
  padding:14px 16px 15px !important;
  background:#fff !important;
  color:var(--cal-ink) !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1.4 !important;
}

.page-calendar-2026 .key strong,
.calendar-page .key strong,
body[class*="calendar-2026"] .key strong{
  width:100% !important;
  color:#a20a11 !important;
  font-size:14px !important;
  font-weight:1000 !important;
}

.page-calendar-2026 .key span,
.page-calendar-2026 .key li,
.calendar-page .key span,
.calendar-page .key li,
body[class*="calendar-2026"] .key span,
body[class*="calendar-2026"] .key li{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  margin:0 !important;
  color:var(--cal-ink) !important;
}

.page-calendar-2026 .legend-bank::before,
.page-calendar-2026 .legend-return::before,
.page-calendar-2026 .legend-down::before,
.page-calendar-2026 .legend-weekend::before,
.page-calendar-2026 .legend-annual::before,
.page-calendar-2026 .legend-xmasmove::before,
.page-calendar-2026 .legend-pattern::before,
.calendar-page .legend-bank::before,
.calendar-page .legend-return::before,
.calendar-page .legend-down::before,
.calendar-page .legend-weekend::before,
.calendar-page .legend-annual::before,
.calendar-page .legend-xmasmove::before,
.calendar-page .legend-pattern::before,
body[class*="calendar-2026"] .legend-bank::before,
body[class*="calendar-2026"] .legend-return::before,
body[class*="calendar-2026"] .legend-down::before,
body[class*="calendar-2026"] .legend-weekend::before,
body[class*="calendar-2026"] .legend-annual::before,
body[class*="calendar-2026"] .legend-xmasmove::before,
body[class*="calendar-2026"] .legend-pattern::before{
  content:"";
  width:13px !important;
  height:13px !important;
  flex:0 0 13px !important;
  border:1px solid rgba(20,38,57,.18) !important;
  border-radius:3px !important;
}

.page-calendar-2026 .legend-bank::before,
.calendar-page .legend-bank::before,
body[class*="calendar-2026"] .legend-bank::before{background:var(--cal-bank) !important}
.page-calendar-2026 .legend-return::before,
.calendar-page .legend-return::before,
body[class*="calendar-2026"] .legend-return::before{background:var(--cal-return) !important}
.page-calendar-2026 .legend-down::before,
.calendar-page .legend-down::before,
body[class*="calendar-2026"] .legend-down::before{background:var(--cal-down) !important}
.page-calendar-2026 .legend-weekend::before,
.calendar-page .legend-weekend::before,
body[class*="calendar-2026"] .legend-weekend::before{background:var(--cal-weekend) !important}
.page-calendar-2026 .legend-annual::before,
.calendar-page .legend-annual::before,
body[class*="calendar-2026"] .legend-annual::before{background:var(--cal-annual) !important}
.page-calendar-2026 .legend-xmasmove::before,
.calendar-page .legend-xmasmove::before,
body[class*="calendar-2026"] .legend-xmasmove::before{background:var(--cal-xmas) !important}
.page-calendar-2026 .legend-pattern::before,
.calendar-page .legend-pattern::before,
body[class*="calendar-2026"] .legend-pattern::before{background:var(--cal-pattern) !important}

@media (max-width:980px){
  .page-calendar-2026 .months,
  .calendar-page .months,
  body[class*="calendar-2026"] .months{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .page-calendar-2026 .month-grid td,
  .calendar-page .month-grid td,
  body[class*="calendar-2026"] .month-grid td{
    height:28px !important;
    font-size:12px !important;
  }
}

@media (max-width:620px){
  .page-calendar-2026 .title-box h1,
  .calendar-page .title-box h1,
  body[class*="calendar-2026"] .title-box h1{
    font-size:clamp(24px,7vw,35px) !important;
  }
  .page-calendar-2026 .months,
  .calendar-page .months,
  body[class*="calendar-2026"] .months{
    grid-template-columns:1fr !important;
  }
  .page-calendar-2026 .key,
  .calendar-page .key,
  body[class*="calendar-2026"] .key{
    gap:8px !important;
  }
}
