/* Vakantiehuis Toxopeus — beschikbaarheidskalender (leest /beschikbaarheid-feed) */
.ox-cal,.dk-pop{--vr:var(--c-sand);--bz:var(--c-taupe)}
.ox-cal.ox-cal--live{border:0;padding:0;margin:0 0 6px;color:var(--ox-ink);font-size:15px;text-align:left}
.ox-calcard .ox-cal.ox-cal--live{padding:0}
.cal-msg{margin:0;padding:18px 4px;color:var(--c-rose);font-size:14px;line-height:1.6}
.cal-bar{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px}
.cal-nav{width:40px;height:40px;border-radius:50%;border:0;background:var(--ox-grad);color:#fff;font:700 22px/1 var(--f-head);cursor:pointer;display:grid;place-items:center;padding:0 0 3px}
.cal-nav:disabled{opacity:.3;cursor:default}
.cal-ms{display:grid;gap:22px}
.cal-ms--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cal-ms--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cal-mt{font:700 20px/1.2 var(--f-head);color:var(--ox-h);text-transform:capitalize;margin:0 0 8px;text-align:center}
.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.cal-h{font:600 12px/1.6 var(--f-head);text-transform:uppercase;letter-spacing:.04em;color:var(--c-rose);text-align:center}
.cal-d{aspect-ratio:1/1;display:grid;place-items:center;border-radius:6px;font:500 14px/1 var(--f-body);position:relative}
.cal-d.is-leeg{visibility:hidden}
.cal-d.is-vrij{background:var(--vr);color:var(--c-plum)}
.cal-d.is-d{background:linear-gradient(90deg,var(--bz) 0 41.667%,var(--vr) 41.667% 100%)}
.cal-d.is-a{background:linear-gradient(90deg,var(--vr) 0 62.5%,var(--bz) 62.5% 100%)}
.cal-d.is-t{background:linear-gradient(90deg,var(--bz) 0 41.667%,var(--vr) 41.667% 62.5%,var(--bz) 62.5% 100%)}
.cal-d.is-d,.cal-d.is-a,.cal-d.is-t{color:var(--c-plum)}
.cal-d.is-bezet{background:var(--bz);color:var(--c-sand);text-decoration:line-through}
.cal-d.is-past{color:var(--c-mauve);background:transparent}
.cal-d.is-vandaag{outline:2px solid var(--ox-or);outline-offset:-2px;font-weight:700}
.cal-leg{display:flex;flex-wrap:wrap;gap:6px 18px;list-style:none;margin:14px 0 0;padding:0;font-size:13px;color:var(--ox-ink)}
.cal-leg li{display:flex;align-items:center;gap:8px}
.cal-sw{display:inline-block;width:18px;height:18px;border-radius:4px}
.cal-sw.is-vrij{background:var(--vr)}
.cal-sw.is-bezet{background:var(--bz)}
.cal-sw.is-t{background:linear-gradient(90deg,var(--bz) 0 41.667%,var(--vr) 41.667% 62.5%,var(--bz) 62.5% 100%)}
.cal-note{margin:8px 0 0;font-size:12.5px;line-height:1.5;color:var(--c-rose)}
.ox-book .ox-cal.ox-cal--live{margin-bottom:18px}
.ox-book .cal-mt{font-size:18px}
.ox-book .cal-d{font-size:13px}
@media(max-width:700px){.cal-ms--2,.cal-ms--3{grid-template-columns:1fr}}
.ox-book .cal-note{font-size:12.5px;line-height:1.5;margin:8px 0 0;text-align:left}
.ox-book .cal-leg{justify-content:flex-start}

/* Datumkiezer in het aanvraagformulier (datumkiezer.js) */
.dk-pop{position:absolute;z-index:40;left:0;top:calc(100% - 14px);width:min(340px,calc(100vw - 32px));background:var(--c-plum-2);border:1.5px solid var(--c-taupe);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.5);padding:14px}
.dk-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 4px}
.dk-title{font:700 17px/1.2 var(--f-head);color:var(--ox-h);text-transform:capitalize}
.dk-nav{width:34px;height:34px;border-radius:50%;border:0;background:var(--ox-grad);color:#fff;font:700 20px/1 var(--f-head);cursor:pointer;padding:0 0 2px}
.dk-nav:disabled{opacity:.3;cursor:default}
.dk-pick{margin:2px 0 8px;font:600 13px/1.4 var(--f-body);color:var(--ox-or);text-align:center}
.dk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.dk-h{font:600 11px/1.6 var(--f-head);text-transform:uppercase;color:var(--c-rose);text-align:center}
.dk-d{aspect-ratio:1/1;display:grid;place-items:center;border:0;border-radius:6px;background:var(--vr);color:var(--c-plum);font:500 14px/1 var(--f-body);cursor:pointer;padding:0}
.dk-d.dk-leeg{background:transparent;cursor:default}
.dk-d.is-d{background:linear-gradient(90deg,var(--bz) 0 41.667%,var(--vr) 41.667% 100%)}
.dk-d.is-a{background:linear-gradient(90deg,var(--vr) 0 62.5%,var(--bz) 62.5% 100%)}
.dk-d.is-t{background:linear-gradient(90deg,var(--bz) 0 41.667%,var(--vr) 41.667% 62.5%,var(--bz) 62.5% 100%)}
.dk-d.is-bezet{background:var(--bz);color:var(--c-sand);text-decoration:line-through}
.dk-d:hover:not(:disabled){filter:brightness(.93)}
.dk-d:disabled{cursor:not-allowed}
.dk-d.is-uit:not(.is-bezet){opacity:.45}
.dk-d.is-past{background:transparent;color:var(--c-mauve);text-decoration:none;opacity:1}
.dk-d.is-range{background:var(--c-rose);color:var(--c-plum)}
.dk-d.is-sel{background:var(--ox-or);color:#fff;font-weight:700}
.dk-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:10px 0 0;font-size:12px;line-height:1.4;color:var(--c-rose)}
.dk-foot span{flex:1 1 100%}
.dk-foot b{color:var(--ox-h)}
.dk-clear{margin-left:auto;background:none;border:0;color:var(--ox-or);font:600 12px/1 var(--f-body);cursor:pointer;text-decoration:underline;padding:4px 0}

/* Bezette uren gearceerd: een diagonaal streepje over het bezette deel van de dag (00:00-10:00 en/of 15:00-24:00) */
.cal-d,.dk-d,.cal-sw{position:relative;isolation:isolate}
.cal-d.is-d::before,.cal-d.is-a::before,.cal-d.is-t::before,.cal-d.is-bezet::before,
.dk-d.is-d::before,.dk-d.is-a::before,.dk-d.is-t::before,.dk-d.is-bezet::before,
.cal-sw.is-bezet::before,.cal-sw.is-t::before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;background:repeating-linear-gradient(135deg,color-mix(in srgb, var(--c-sand) 30%, transparent) 0 1.5px,transparent 1.5px 5px)}
.cal-d.is-d::before,.dk-d.is-d::before{-webkit-mask-image:linear-gradient(90deg,#000 0 41.667%,transparent 41.667%);mask-image:linear-gradient(90deg,#000 0 41.667%,transparent 41.667%)}
.cal-d.is-a::before,.dk-d.is-a::before{-webkit-mask-image:linear-gradient(90deg,transparent 0 62.5%,#000 62.5%);mask-image:linear-gradient(90deg,transparent 0 62.5%,#000 62.5%)}
.cal-d.is-t::before,.dk-d.is-t::before,.cal-sw.is-t::before{-webkit-mask-image:linear-gradient(90deg,#000 0 41.667%,transparent 41.667% 62.5%,#000 62.5%);mask-image:linear-gradient(90deg,#000 0 41.667%,transparent 41.667% 62.5%,#000 62.5%)}
