.ecui-notice{padding:12px 14px;border:1px solid #dcdcde;background:#fff8e5}
.ecui-engine-compat{display:none!important}

/* The real Pinpoint engine is off-screen from first paint. Never display:none or visibility:hidden. */
.ecui-engine-host{position:fixed!important;left:-20000px!important;top:0!important;width:1180px!important;max-width:none!important;height:auto!important;overflow:visible!important;visibility:visible!important;opacity:.001!important;pointer-events:none!important;z-index:-99999!important}
.ecui-engine-host .eccf-elementor-bridge,.ecui-engine-host .eccf-bridge-engine{width:1180px!important;max-width:none!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}

.ecui-calendar-shell{border:1px solid #d9dfdb;border-radius:12px;background:#fff;padding:16px;box-sizing:border-box}
.ecui-calendar-toolbar{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;margin-bottom:14px}
.ecui-calendar-toolbar>div{text-align:center;color:#1f2923}
.ecui-calendar-toolbar strong{display:block;font-size:19px;line-height:1.2}
.ecui-calendar-toolbar small{display:block;margin-top:3px;color:#68726c;font-size:12px;font-weight:400}
.ecui-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #cbd4ce;border-radius:10px;background:#fff;color:#087a3a;font-size:27px;line-height:1;cursor:pointer}
.ecui-arrow:hover{border-color:#16803d;background:#f2f8f4}
.ecui-arrow:disabled{opacity:.28;cursor:not-allowed;background:#f5f5f5}

.ecui-months{display:grid;grid-template-columns:repeat(var(--ecui-visible,3),minmax(0,1fr));gap:16px}
.ecui-month{border:1px solid #e1e5e2;border-radius:9px;padding:11px;background:#fff;min-width:0}
.ecui-month h3{font-size:17px;margin:0 0 9px;text-align:center;color:#202923}
.ecui-weekdays,.ecui-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.ecui-weekdays span{font-size:11px;font-weight:650;text-align:center;color:#68726c;padding:3px 0}
.ecui-day{display:flex;align-items:center;justify-content:center;min-width:0;min-height:34px;padding:0;border-radius:5px;font:inherit;font-size:13px;border:1px solid transparent;box-sizing:border-box}
button.ecui-day{cursor:pointer}
.ecui-day.is-free{background:#e9f5ec;border-color:#c4dfca;color:#14532d}
.ecui-day.is-booked{background:#f5e7e7;border-color:#dfc1c1;color:#7a2525;font-weight:650}
.ecui-day.is-unavailable{background:#ededed;border-color:#d5d5d5;color:#777}
.ecui-day.is-past{background:#f3f3f3;color:#aaa}
.ecui-day.is-empty{background:transparent;border-color:transparent}
.ecui-day.is-start-choice{box-shadow:inset 0 0 0 1px #16803d;font-weight:800}
.ecui-day.is-start-choice:hover{outline:2px solid #16803d;outline-offset:1px}
.ecui-day.is-end-choice{box-shadow:inset 0 0 0 2px #2f7fc1;font-weight:800}
.ecui-day.is-selected-range{background:#d7eddf!important;border-color:#16803d!important;color:#0f5128!important}
.ecui-day.is-selected-start,.ecui-day.is-selected-end{background:#16803d!important;border-color:#16803d!important;color:#fff!important;font-weight:800}
.ecui-day.is-free:not(.is-start-choice):not(.is-end-choice).is-not-selectable{cursor:default}

.ecui-calendar-status{margin:13px 0 0;padding:10px 12px;border-radius:8px;background:#f5f7f6;color:#405047;font-size:14px}
.ecui-calendar-status.is-error{background:#fff0f0;color:#8a2424}
.ecui-calendar-status.is-syncing{background:#fff8e5;color:#70550e}
.ecui-calendar-legend{display:flex;gap:15px;flex-wrap:wrap;align-items:center;margin-top:10px;font-size:12px;color:#68726c}
.ecui-calendar-legend span{display:inline-flex;gap:5px;align-items:center}
.ecui-calendar-legend i{width:12px;height:12px;border-radius:3px;display:inline-block;border:1px solid #bbb}
.ecui-calendar-legend i.free{background:#e9f5ec;border-color:#c4dfca}
.ecui-calendar-legend i.booked{background:#f5e7e7;border-color:#dfc1c1}
.ecui-calendar-legend i.unavailable{background:#ededed;border-color:#d5d5d5}
.ecui-calendar-legend i.selected{background:#16803d;border-color:#16803d}

.ecui-summary-card{border:1px solid #d9dfdb;border-radius:12px;background:#fff;padding:18px;box-sizing:border-box}
.ecui-summary-box{display:grid;gap:13px}
.ecui-summary-box h3{margin:0 0 4px;font-size:22px;color:#087a20}
.ecui-summary-line{display:flex;justify-content:space-between;gap:18px;padding:3px 0}
.ecui-summary-line span{color:#69736d}
.ecui-summary-line strong{text-align:right}
.ecui-summary-items{display:grid;gap:7px;padding-top:2px}
.ecui-summary-item{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:9px 11px;border-radius:8px;background:#f5f7f6}
.ecui-summary-item-label{min-width:0}
.ecui-summary-item-amount{font-weight:400;white-space:nowrap}
.ecui-summary-subtotal{border-top:1px solid #e2e7e4;padding-top:10px!important;margin-top:2px}
.ecui-summary-total{display:flex;justify-content:space-between;align-items:center;margin:4px -18px -18px;padding:15px 18px;border-radius:0 0 12px 12px;background:#16803d;color:#fff;font-size:18px;font-weight:800}
.ecui-inline-value{font-weight:700}
.ecui-debug{margin:16px 0;padding:12px;border:1px solid #dcdcde;background:#f6f7f7;font:13px/1.5 monospace;white-space:pre-wrap}

@media(max-width:900px){.ecui-months{grid-template-columns:1fr}.ecui-calendar-shell{padding:13px}.ecui-month{padding:10px}}
@media(max-width:600px){.ecui-summary-card{padding:14px}.ecui-summary-total{margin-left:-14px;margin-right:-14px;margin-bottom:-14px}.ecui-calendar-toolbar{grid-template-columns:44px 1fr 44px}.ecui-arrow{width:40px;height:40px}.ecui-day{min-height:38px}}


/* Immediate Elementor option-tile feedback. The base bridge may report the
 * Pinpoint selected class one render later; these classes prevent a one-click
 * visual lag without changing the actual Pinpoint selection. */
.easecamp-option-tile.ecui-authoritative-selected,
.easecamp-option-tile.ecui-pending-selection{outline:2px solid #1d6b42!important;outline-offset:2px!important}
.easecamp-option-tile.ecui-pending-deselection{outline:none!important}
.easecamp-option-tile.is-easecamp-selected:not(.ecui-authoritative-selected):not(.ecui-pending-selection){outline:none!important}

/* Vrijgegeven deelperiodes in een door beheer opgebroken week. */
.ecui-day.is-partial-bookable{box-shadow:inset 0 -3px 0 #2f7fc1}
.ecui-day.is-partial-start{border-left:2px solid #2f7fc1}
.ecui-day.is-partial-end{border-right:2px solid #2f7fc1}
.ecui-calendar-legend i.partial{background:#e9f5ec;border-color:#2f7fc1;box-shadow:inset 0 -3px 0 #2f7fc1}
.ecui-day.is-selected-range.is-partial-bookable{box-shadow:inset 0 -3px 0 #2f7fc1}
.ecui-day.is-selected-start.is-partial-bookable,.ecui-day.is-selected-end.is-partial-bookable{box-shadow:inset 0 -3px 0 rgba(255,255,255,.7)}
.ecui-day.is-extension-only{box-shadow:inset 0 -3px 0 #8a6d1d;background-image:linear-gradient(135deg,rgba(138,109,29,.07) 25%,transparent 25%,transparent 50%,rgba(138,109,29,.07) 50%,rgba(138,109,29,.07) 75%,transparent 75%,transparent);background-size:8px 8px}
.ecui-day.is-split-unassigned{background:#f2f2f2!important;border-color:#d6d6d6!important;color:#929292!important;box-shadow:none!important;cursor:default!important}
.ecui-calendar-legend i.split-unassigned{background:#f2f2f2;border-color:#d6d6d6}
