html,body{position:relative;width:100%;height:100%}body{margin:0;padding:0;box-sizing:border-box;font-family:'-apple-system', BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif}input,button,select,textarea{font-family:inherit;font-size:inherit;padding:0.5rem;margin:0;box-sizing:border-box;border:1px solid rgba(0,0,0,0.25);background-color:var(--page-bg);color:var(--font);border-radius:0}input:hover,button:hover,select:hover,textarea:hover{border-color:var(--font)}@media(prefers-color-scheme: dark){input,button,select,textarea{border-color:rgba(255,255,255,0.25)}}button{cursor:pointer}:root{background-color:var(--page-bg);color:var(--font);--page-bg:#fff;--font:#000;--tile-bg:rgba(0,0,0,0.025);--overlay-bg:rgba(255,255,255,0.9);--tool-tip-shadow:drop-shadow(3px 3px 0 rgba(0,0,0,0.2)) drop-shadow(0 0 1px rgba(0,0,0,0.2));--modal-shadow:10px 10px 0 rgba(0,0,0,0.25)}@media(prefers-color-scheme: dark){:root{--page-bg:#000;--font:#fff;--tile-bg:rgba(255,255,255,0.05);--overlay-bg:rgba(0,0,0,0.9);--tool-tip-shadow:drop-shadow(3px 3px 0 rgba(255,255,255,0.2)) drop-shadow(0 0 1px rgba(255,255,255,0.2));--modal-shadow:10px 10px 0 rgba(255,255,255,0.15)}}#Title{font-size:3rem;margin:2rem 0 1rem 0;font-weight:400}#Explanation{line-height:1.5;margin:0 0 2rem 0;opacity:0.65}main{margin:auto;max-width:500px;padding-bottom:25vh;box-sizing:border-box}.config{display:flex;flex-flow:row wrap;align-items:center;gap:0.5rem;margin-bottom:2rem}.config .check-fields{display:flex;flex-flow:row wrap;gap:1rem}.config .date-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.config .date-inputs .date-input{display:grid;grid-template-columns:1fr 1fr 1fr}.check-field{display:flex;flex-flow:row wrap;align-items:center}.input-field{display:inline-block}.input-field .label{display:block;flex:1 1 100%;margin-bottom:0.25rem;font-size:0.7rem;font-weight:600}.input-field input{width:100%;height:100%;margin:0;flex:1 1 auto}.calendars-header{z-index:10;position:sticky;position:-webkit-sticky;top:0;display:grid;grid-template-columns:repeat(7, 1fr);margin:auto;background-color:var(--page-bg);gap:2px}.calendars-header>span{padding:0.5rem;font-size:0.75rem;text-align:center;border-bottom:solid 1px #000}.calendar .days,.pattern{display:grid;justify-content:start;grid-template-columns:repeat(7, 1fr);gap:2px;box-sizing:border-box;margin:auto}.calendar{display:grid;grid-template-columns:1fr;margin:auto}.calendar .title{display:flex;flex-flow:row nowrap;align-items:center;margin:1rem 0;gap:1rem}.calendar .title>h1{font-size:1.5rem;margin:0;font-weight:400}.calendar .title>span{flex:1 1 auto;height:1rem;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23000' fill-opacity='1' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");background-size:0.5rem}@media(prefers-color-scheme: dark){.calendar .title>span{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='1' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E")}}.calendar .day,.pattern .day{position:relative;display:flex;flex-flow:row wrap;justify-content:center;align-content:center;align-items:center;aspect-ratio:1/1;cursor:default;line-height:1;font-weight:300;box-sizing:border-box;background-color:var(--tile-bg);color:#999}.calendar .day>span,.pattern .day>span{flex:1 1 100%;text-align:center}.calendar .day>.plan-index,.pattern .day>.plan-index{margin-top:0.5rem;font-size:0.75em;font-weight:600}.calendar .day.pattern-day,.pattern .day.pattern-day{text-shadow:1px 1px 0 rgba(0,0,0,0.25);color:#fff}.calendar .day.gap,.pattern .day.gap{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23000' fill-opacity='0.1' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");background-size:0.5rem;color:var(--font)}@media(prefers-color-scheme: dark){.calendar .day.gap,.pattern .day.gap{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.15' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E")}}.calendar .day.gap>span,.pattern .day.gap>span{text-shadow:0 0 2px var(--page-bg), 0 0 2px var(--page-bg), 0 0 2px var(--page-bg), 0 0 2px var(--page-bg)}.calendar .day.holiday,.pattern .day.holiday{background-color:var(--font);color:var(--page-bg);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.3' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");background-size:0.5rem}.calendar .day.holiday>span,.pattern .day.holiday>span{text-shadow:0 0 2px var(--font), 0 0 2px var(--font), 0 0 2px var(--font), 0 0 2px var(--font)}.calendar .day.holiday>.amount,.pattern .day.holiday>.amount{font-size:1.5rem;line-height:0.5;font-weight:900}@media(prefers-color-scheme: dark){.calendar .day.holiday,.pattern .day.holiday{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23000' fill-opacity='0.4' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");font-weight:700}}.calendar .day.offset-fill,.pattern .day.offset-fill{background-color:transparent}.calendar .day .tool-tip,.pattern .day .tool-tip{z-index:1;position:absolute;left:auto;bottom:calc(100% + 0.75rem);padding:0.5rem;background-color:#fff;filter:var(--tool-tip-shadow);color:#000;transition:all ease 0.2s;pointer-events:none;box-sizing:border-box;font-size:0.8rem;font-weight:400}.calendar .day .tool-tip span,.pattern .day .tool-tip span{display:block;line-height:1;box-sizing:border-box;white-space:nowrap;padding:0.5rem}.calendar .day .tool-tip span:not(:last-child),.pattern .day .tool-tip span:not(:last-child){border-bottom:solid 1px rgba(0,0,0,0.1)}.calendar .day .tool-tip:after,.pattern .day .tool-tip:after{z-index:-1;content:'';position:absolute;bottom:-0.25rem;left:calc(50% - 0.25rem);height:0.5rem;width:0.5rem;transform:rotate(45deg);background-color:inherit;box-sizing:border-box}.calendar .day:not(:hover) .tool-tip,.pattern .day:not(:hover) .tool-tip{opacity:0;transform:translateY(0.5rem)}.pattern{margin:1rem auto}.pattern .day{font-size:1.15rem;font-weight:300}.pattern .day.gap{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23000' fill-opacity='0.2' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");color:var(--font)}@media(prefers-color-scheme: dark){.pattern .day.gap{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.2' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E")}}.pattern .day.offset-fill{background-color:var(--tile-bg);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23000' fill-opacity='0.05' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");background-size:0.5rem}@media(prefers-color-scheme: dark){.pattern .day.offset-fill{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.08' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E")}}.pattern .day.offset-fill>span{text-shadow:0 0 2px var(--page-bg), 0 0 2px var(--page-bg), 0 0 2px var(--page-bg), 0 0 2px var(--page-bg)}.pattern .day .delete{position:absolute;top:0;left:0;display:flex;justify-content:center;align-items:center;height:100%;width:100%;color:#fff;background-color:rgba(0,0,0,0.75);cursor:pointer}.pattern .day .delete .icon{width:50%;height:50%}.pattern .day:not(:hover) .delete{opacity:0;pointer-events:none}.pattern .add-day{display:flex;flex-flow:row wrap;justify-content:center;align-content:center;align-items:center;aspect-ratio:1/1;padding:0;background-color:var(--tile-bg);color:var(--font);font-size:3rem;cursor:pointer;line-height:1;font-weight:100;box-sizing:border-box;border:none}.pattern .add-day:hover{background-color:var(--font);color:var(--page-bg)}.pattern .add-day .icon{width:40%;height:40%;transform:rotate(45deg)}.check-field{cursor:pointer}.check-field .checkbox{position:relative;display:flex;height:1rem;width:1rem;margin:0.5rem 0.5rem 0.5rem 0;padding:0.5rem;justify-content:center;align-content:center;align-items:center;border:solid 1px rgba(0,0,0,0.1);box-sizing:border-box}@media(prefers-color-scheme: dark){.check-field .checkbox{border-color:rgba(255,255,255,0.25)}}.check-field:not(.active):hover .checkbox{border-color:var(--font)}.check-field.active .checkbox{border-color:#50f}.check-field.active .checkbox:after{content:'';position:absolute;height:0.5rem;width:0.5rem;background-color:#50f}.modal-container.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg{z-index:50;position:fixed;top:0;left:0;display:flex;height:100%;width:100%;flex-flow:row nowrap;justify-content:center;align-content:flex-start;align-items:center;background-color:var(--overlay-bg);box-sizing:border-box}.modal-container.svelte-v03vvg>.modal.svelte-v03vvg.svelte-v03vvg{display:grid;padding:1.5rem;width:100%;max-width:450px;min-width:450px;grid-gap:1rem;background-color:var(--page-bg);box-shadow:var(--modal-shadow);border:solid 1px var(--font);box-sizing:border-box}.header.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg{display:flex;flex-flow:row wrap;justify-content:center;align-items:center}.header.svelte-v03vvg>.close-modal.svelte-v03vvg.svelte-v03vvg{display:flex;justify-content:center;align-items:center;margin-left:auto;padding:0.25rem}.header.svelte-v03vvg>.close-modal.svelte-v03vvg>.icon.svelte-v03vvg{width:1.25rem;height:1.25rem}.header.svelte-v03vvg>h1.svelte-v03vvg.svelte-v03vvg{margin:0;font-size:1.25rem;font-weight:500}button.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg{background-color:rgba(0,0,0,0.05);border:solid 1px rgba(0,0,0,0.2);padding:0.5rem 1rem}button.add-day.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg{background-color:#05f;color:#fff;padding:0.5rem 1.5rem}button.add-day.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg:hover{background-color:#03c;color:#fff}button.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg:hover{background-color:transparent;border-color:var(--font);box-shadow:0 0 0 2px rgba(0,0,0,0.05)}@media(prefers-color-scheme: dark){button.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg{border-color:rgba(255,255,255,0.2)}button.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg:hover{box-shadow:0 0 0 2px rgba(255,255,255,0.1)}}.or-separator.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg{display:flex;flex-flow:row nowrap;align-items:center;margin:0.5rem 0;gap:1rem}.or-separator.svelte-v03vvg .fill.svelte-v03vvg.svelte-v03vvg{flex:1 1 auto;height:0.5rem;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23000' fill-opacity='0.15' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");background-size:0.5rem}@media(prefers-color-scheme: dark){.or-separator.svelte-v03vvg .fill.svelte-v03vvg.svelte-v03vvg{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.25' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E")}}.add-day-wrapper.svelte-v03vvg.svelte-v03vvg.svelte-v03vvg{display:grid;grid-template-columns:auto 1fr auto;gap:1rem}.add-day-wrapper.svelte-v03vvg .color-picker.svelte-v03vvg.svelte-v03vvg{position:relative;border:solid 1px rgba(0,0,0,0.2)}.add-day-wrapper.svelte-v03vvg .color-picker.svelte-v03vvg.svelte-v03vvg:hover{border-color:#000}.add-day-wrapper.svelte-v03vvg .color-picker.svelte-v03vvg>div.svelte-v03vvg{width:100%;height:100%;box-sizing:border-box}.add-day-wrapper.svelte-v03vvg .color-picker.svelte-v03vvg>input.svelte-v03vvg{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}