body.ko-year-vacation-optimizer{--ko-vacation-day-color:var(--ko-calendar-vacation-day-color);--ko-vacation-free-day-color:var(--ko-calendar-vacation-free-day-color);--ko-vacation-period-line-color:color-mix(in srgb,var(--ko-vacation-day-color) 82%,white);--ko-vacation-period-highlight-bg:color-mix(in srgb,var(--ko-vacation-day-color) 12%,transparent);}body.ko-year-vacation-optimizer .ko-vacation-controls,body.ko-year-vacation-optimizer .ko-vacation-active-summary,body.ko-year-vacation-optimizer .ko-vacation-period{border:1px solid var(--ko-surface-card-border-color);background:var(--ko-surface-card-bg);box-shadow:var(--ko-surface-card-shadow);}body.ko-year-vacation-optimizer .ko-year-view-segment{flex-wrap:wrap;}body.ko-year-vacation-optimizer .ko-year-view-segment-btn{justify-content:center;}@media (max-width:767.98px){body.ko-year-vacation-optimizer .ko-year-view-switch-inner{align-items:stretch}body.ko-year-vacation-optimizer .ko-year-view-segment{display:grid;grid-template-columns:1fr;gap:.35rem;padding:0;border:0;border-radius:0;background:transparent}body.ko-year-vacation-optimizer .ko-year-view-segment-btn{width:100%;min-height:2.75rem;border:1px solid transparent;border-radius:999px}body.ko-year-vacation-optimizer .ko-year-view-segment-btn.is-active{border-color:color-mix(in srgb,var(--bs-body-bg) 84%,var(--bs-body-color));box-shadow:0 0 0 1px color-mix(in srgb,var(--bs-body-bg) 80%,transparent)}}body.ko-year-vacation-optimizer .ko-year-summary .ko-report-grid{grid-template-columns:1fr;}@media (min-width:768px){body.ko-year-vacation-optimizer .ko-year-summary .ko-report-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}body.ko-year-vacation-optimizer .ko-vacation-controls{padding:1.15rem;border-radius:1rem;}body.ko-year-vacation-optimizer .ko-vacation-field{display:grid;gap:.35rem;}body.ko-year-vacation-optimizer .ko-vacation-label{color:var(--ko-muted-text-color);font-size:.86rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;}body.ko-year-vacation-optimizer .ko-vacation-label-with-help{display:inline-flex;align-items:center;gap:1rem;}body.ko-year-vacation-optimizer .ko-vacation-help-button{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;color:var(--ko-muted-text-color);line-height:1;transform:translateY(-1px);}body.ko-year-vacation-optimizer .ko-vacation-help-button .ko-question-circle,body.ko-year-vacation-optimizer .ko-vacation-help-button .ko-question-circle svg{display:block;}body.ko-year-vacation-optimizer .ko-vacation-help-button .icon{fill:currentColor;}body.ko-year-vacation-optimizer .ko-vacation-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem;margin-top:1rem;padding-top:1rem;border-top:1px solid color-mix(in srgb,var(--bs-body-color) 9%,transparent);}body.ko-year-vacation-optimizer .ko-vacation-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.65rem;padding-inline:1rem;border-radius:.62rem;line-height:1.15;}body.ko-year-vacation-optimizer .ko-vacation-actions .ko-button{border-color:var(--ko-button-bg-color);background:var(--ko-button-bg-color);color:var(--bs-light);}body.ko-year-vacation-optimizer .ko-vacation-actions .ko-button:hover{filter:brightness(.96);color:var(--bs-light);}body.ko-year-vacation-optimizer .ko-vacation-actions .btn-outline-secondary{color:var(--ko-muted-text-color);font-weight:600;}body.ko-year-vacation-optimizer .ko-vacation-actions .btn-outline-secondary:hover{color:var(--bs-body-color);}body.ko-year-vacation-optimizer .ko-vacation-submit{min-height:2.65rem;padding-inline:1.15rem;border-radius:.62rem;font-size:1rem;font-weight:700;}body.ko-year-vacation-optimizer .ko-vacation-divider{margin:1rem 0;border-top:1px solid color-mix(in srgb,var(--bs-body-color) 9%,transparent);}body.ko-year-vacation-optimizer .ko-vacation-months{display:grid;gap:1rem;}body.ko-year-vacation-optimizer .ko-vacation-month-header{display:flex;align-items:center;justify-content:flex-start;gap:.8rem;flex-wrap:wrap;}body.ko-year-vacation-optimizer .ko-vacation-weekend-workdays{display:grid;gap:.65rem;}body.ko-year-vacation-optimizer .ko-vacation-preset-row{display:flex;flex-wrap:wrap;gap:.35rem;}body.ko-year-vacation-optimizer .ko-vacation-preset{min-height:2rem;padding:.32rem .65rem;border:1px solid color-mix(in srgb,var(--bs-body-color) 14%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bs-body-bg) 92%,transparent);color:var(--bs-body-color);font-size:.92rem;line-height:1.1;}body.ko-year-vacation-optimizer .ko-vacation-preset:hover{border-color:color-mix(in srgb,var(--ko-button-bg-color) 58%,transparent);color:var(--bs-body-color);}body.ko-year-vacation-optimizer .ko-vacation-preset.is-active{border-color:color-mix(in srgb,var(--ko-button-bg-color) 74%,black);background:color-mix(in srgb,var(--ko-button-bg-color) 88%,black);color:var(--bs-light);}@media (min-width:1200px){body.ko-year-vacation-optimizer .ko-vacation-weekend-workdays{padding-left:1rem}}body.ko-year-vacation-optimizer .ko-vacation-month-toggle{position:relative;display:flex;align-items:center;justify-content:center;min-height:2.18rem;padding:.36rem .5rem;border:1px solid color-mix(in srgb,var(--bs-body-color) 12%,transparent);border-radius:.6rem;background:color-mix(in srgb,var(--bs-body-bg) 92%,transparent);color:var(--bs-body-color);cursor:pointer;line-height:1.15;width:100%;}body.ko-year-vacation-optimizer .ko-vacation-month-toggle input{position:absolute;inset:0;opacity:0;cursor:pointer;}body.ko-year-vacation-optimizer .ko-vacation-month-toggle span{position:relative;z-index:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;}body.ko-year-vacation-optimizer .ko-vacation-month-toggle:hover{border-color:color-mix(in srgb,var(--bs-body-color) 22%,transparent);}body.ko-year-vacation-optimizer .ko-vacation-month-toggle.is-active,body.ko-year-vacation-optimizer .ko-vacation-month-toggle:has(input:checked){border-color:color-mix(in srgb,var(--ko-button-bg-color) 74%,black);background:var(--ko-button-bg-color);color:var(--bs-light);}body.ko-year-vacation-optimizer .ko-vacation-help{color:var(--ko-muted-text-color);font-size:.94rem;}body.ko-year-vacation-optimizer .ko-vacation-active-summary{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;padding:1rem 1.1rem;}@media (min-width:992px){body.ko-year-vacation-optimizer .ko-vacation-active-summary{grid-template-columns:minmax(0,1fr) minmax(280px,38%);align-items:start}}body.ko-year-vacation-optimizer .ko-vacation-active-title{margin:0 0 .45rem;font-size:1.15rem;font-weight:700;}body.ko-year-vacation-optimizer .ko-vacation-date-list{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-start;}@media (min-width:992px){body.ko-year-vacation-optimizer .ko-vacation-date-list{justify-content:flex-end}}body.ko-year-vacation-optimizer .ko-vacation-extra-details{}body.ko-year-vacation-optimizer .ko-vacation-extra-summary{display:inline-flex;align-items:center;gap:.45rem;min-height:2.4rem;padding:.45rem .75rem;color:var(--bs-body-color);cursor:pointer;font-weight:700;list-style:none;}body.ko-year-vacation-optimizer .ko-vacation-extra-summary::-webkit-details-marker{display:none;}body.ko-year-vacation-optimizer .ko-vacation-extra-summary .icon{width:1rem;height:1rem;color:currentColor;fill:currentColor;transition:transform .16s ease;}body.ko-year-vacation-optimizer .ko-vacation-extra-details[open] .ko-vacation-extra-summary .icon{transform:rotate(90deg);}body.ko-year-vacation-optimizer .ko-vacation-extra-details .ko-vacation-period-grid{padding:0 .75rem .75rem;}body.ko-year-vacation-optimizer .ko-vacation-period-grid{display:grid;grid-template-columns:1fr;gap:.75rem;}@media (min-width:768px){body.ko-year-vacation-optimizer .ko-vacation-period-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1200px){body.ko-year-vacation-optimizer .ko-vacation-period-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}body.ko-year-vacation-optimizer .ko-vacation-period{padding:.95rem;border-radius:.75rem;}body.ko-year-vacation-optimizer .ko-vacation-period-meta{color:var(--ko-muted-text-color);font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;}body.ko-year-vacation-optimizer .ko-vacation-period-title{margin:.25rem 0 .35rem;font-size:1.05rem;font-weight:700;}body.ko-year-vacation-optimizer .ko-year-calendar-legend-swatch.is-vacation-day{background:var(--ko-vacation-day-color);border-color:color-mix(in srgb,var(--ko-vacation-day-color) 72%,black);}body.ko-year-vacation-optimizer .ko-year-calendar-legend-swatch.is-extra-day-off{background:var(--ko-vacation-free-day-color);border-color:color-mix(in srgb,var(--ko-vacation-free-day-color) 72%,black);}body.ko-year-vacation-optimizer .ko-year-calendar-month.is-context-month{opacity:.78;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.is-suggested-period{background-image:linear-gradient(var(--ko-vacation-period-highlight-bg),var(--ko-vacation-period-highlight-bg));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--ko-vacation-day-color) 32%,transparent);}body.ko-year-vacation-optimizer .ko-year-calendar-cell.is-suggested-period::after{content:"";position:absolute;left:-3px;right:-3px;top:50%;height:4px;background:var(--ko-vacation-period-line-color);border-radius:999px;pointer-events:none;transform:translateY(-50%);z-index:2;opacity:1}body.ko-year-vacation-optimizer .ko-year-calendar-cell.is-suggested-period.is-weekend:not(.is-weekend-workday){box-shadow:none;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.is-suggested-period.has-extra-day-off{box-shadow:none;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.is-suggested-period.has-holiday.is-weekend-workday{box-shadow:none;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.has-vacation-day,body.ko-year-vacation-optimizer .ko-year-calendar-cell.has-vacation-day.is-other-month{background:var(--ko-vacation-day-color);background-image:none;color:#fff;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.has-vacation-day.is-weekend-workday{background-color:var(--ko-vacation-day-color);background-image:none;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.has-vacation-day .ko-year-calendar-day-number{color:inherit;font-weight:850;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.has-period-workday{background:var(--ko-calendar-vacation-period-workday-bg);}body.ko-year-vacation-optimizer .ko-year-calendar-cell.is-weekend-workday:not(.has-vacation-day):not(.has-extra-day-off):not(.has-holiday):not(.has-period-workday){background:var(--ko-calendar-cell-bg-color);background-image:none;}body.ko-year-public-holidays.ko-year-vacation-optimizer .ko-year-calendar-cell.is-weekend.is-weekend-workday:not(.has-vacation-day):not(.has-extra-day-off):not(.has-holiday):not(.has-period-workday){background:var(--ko-calendar-cell-bg-color);background-image:none;}body.ko-year-public-holidays.ko-year-vacation-optimizer .ko-year-calendar-cell.is-sunday.is-weekend-workday:not(.has-vacation-day):not(.has-extra-day-off):not(.has-holiday) .ko-year-calendar-day-number{color:inherit;text-decoration:none;}body.ko-year-vacation-optimizer .ko-year-calendar-cell.has-extra-day-off,body.ko-year-vacation-optimizer .ko-year-calendar-cell.has-extra-day-off.is-other-month{background:var(--ko-vacation-free-day-color);}body.ko-year-public-holidays.ko-year-vacation-optimizer .ko-year-calendar-cell.has-holiday.is-weekend-workday,body.ko-year-public-holidays.ko-year-vacation-optimizer .ko-year-calendar-cell.has-holiday.is-weekend-workday.is-other-month{background:var(--ko-vacation-free-day-color);background-image:none;color:#fff;}body.ko-year-public-holidays.ko-year-vacation-optimizer .ko-year-calendar-cell.has-holiday.is-weekend-workday .ko-year-calendar-day-number{color:inherit;text-decoration:none;font-weight:850;}@media (max-width:767.98px){body.ko-year-vacation-optimizer .ko-vacation-controls{padding:.85rem}body.ko-year-vacation-optimizer .ko-vacation-actions,body.ko-year-vacation-optimizer .ko-vacation-actions .btn{width:100%}}