:root{--ctl-h:2.125rem;--ctl-radius:8px;--ctl-font:.875rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}:root[data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root,:root[data-scheme=roz][data-mode=light]{--bg:#fffafc;--surface:#fff;--fg:#2a1f26;--muted:#6f5e68;--line:#efe4ea;--accent:#b0185a;--accent-fg:#fff;--focus:#1f5fd1;--selected:#1f5fd12e;--danger:#b3261e;--warning:#7a4d00;--free:#ffe4f0;--free-edge:#d6739f;--holiday-mark:#c2185b;--month-line:#8a7f86;--today-bg:#b0185a;--today-fg:#fff;--leave:#00796b;--leave-fg:#fff;--fill-planned:22%}:root[data-scheme=roz][data-mode=dark]{--bg:#161216;--surface:#1f191e;--fg:#f4eaf0;--muted:#b8a5b0;--line:#33282f;--accent:#f27ab2;--accent-fg:#1a0d14;--focus:#8ab8ff;--selected:#8ab8ff40;--danger:#ff8a80;--warning:#f5c46b;--free:#3a2330;--free-edge:#b05a86;--holiday-mark:#ff8fc0;--month-line:#8f8189;--today-bg:#f27ab2;--today-fg:#1a0d14;--leave:#4db6ac;--leave-fg:#0b1f1d;--fill-planned:30%}:root[data-scheme=neutru][data-mode=light]{--bg:#f7f7f8;--surface:#fff;--fg:#1c1c1e;--muted:#63636b;--line:#e6e6ea;--accent:#2563eb;--accent-fg:#fff;--focus:#2563eb;--selected:#2563eb29;--danger:#b91c1c;--warning:#92400e;--free:#ececf0;--free-edge:#8e8e99;--holiday-mark:#1c1c1e;--month-line:#9a9aa3;--today-bg:#2563eb;--today-fg:#fff;--leave:#2563eb;--leave-fg:#fff;--fill-planned:20%}:root[data-scheme=neutru][data-mode=dark]{--bg:#121214;--surface:#1b1b1f;--fg:#ececf1;--muted:#a1a1aa;--line:#2c2c33;--accent:#60a5fa;--accent-fg:#0b1220;--focus:#93c5fd;--selected:#60a5fa40;--danger:#f87171;--warning:#fbbf24;--free:#2a2a31;--free-edge:#7a7a85;--holiday-mark:#ececf1;--month-line:#6b6b75;--today-bg:#60a5fa;--today-fg:#0b1220;--leave:#60a5fa;--leave-fg:#0b1220;--fill-planned:28%}:root[data-scheme=contrast][data-mode=light]{--bg:#fff;--surface:#fff;--fg:#000;--muted:#333;--line:#b0b0b0;--accent:#0050a0;--accent-fg:#fff;--focus:#d40000;--selected:#0050a033;--danger:#b00000;--warning:#6b4500;--free:#d6d6d6;--free-edge:#6b6b6b;--holiday-mark:#000;--month-line:#000;--today-bg:#000;--today-fg:#fff;--leave:#0050a0;--leave-fg:#fff;--fill-planned:25%}:root[data-scheme=contrast][data-mode=dark]{--bg:#000;--surface:#000;--fg:#fff;--muted:#ddd;--line:#666;--accent:#6cb6ff;--accent-fg:#000;--focus:#ffd400;--selected:#6cb6ff4d;--danger:#ff6b6b;--warning:#ffd400;--free:#3a3a3a;--free-edge:#a8a8a8;--holiday-mark:#fff;--month-line:#fff;--today-bg:#fff;--today-fg:#000;--leave:#6cb6ff;--leave-fg:#000;--fill-planned:35%}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0}button,select{font:inherit;font-size:var(--ctl-font);min-height:var(--ctl-h);color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:var(--ctl-radius);cursor:pointer;padding:0 .8rem}button:hover,select:hover{border-color:var(--muted)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=combobox]:focus-visible{outline:2px solid var(--focus);outline-offset:1px}button.primary{background:var(--accent);color:var(--accent-fg);border-color:#0000}button.primary:disabled{opacity:.5;cursor:not-allowed}button.danger{color:var(--danger)}button.link{color:var(--accent);text-align:left;background:0 0;border:0;padding:0;text-decoration:underline}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{inset-inline-start:0;height:var(--rdp-nav-height);display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{inset-inline-end:0;height:var(--rdp-nav-height);justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.editor{width:min(28rem,100vw - 32px);color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:1.1rem 1.2rem}.editor::backdrop{background:#00000059}.editor form{gap:.75rem;display:grid}.editor h2:focus{outline:none}.editor h2{margin:0;font-size:1.1rem}.editor .dialog-body{gap:.75rem;display:grid}.editor .dialog-body p{margin:0}.editor .file-name{overflow-wrap:anywhere}.editor .dialog-help{color:var(--muted);font-size:.85rem}.editor label{color:var(--muted);gap:.2rem;font-size:.85rem;display:grid}.editor input,.editor select,.editor textarea{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;width:100%;padding:.4rem .5rem}.editor .dates{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.statuses{border:0;flex-wrap:wrap;gap:.4rem 1rem;margin:0;padding:0;display:flex}.statuses legend{color:var(--muted);margin-bottom:.2rem;padding:0;font-size:.85rem}.editor .status-option{color:var(--fg);align-items:center;gap:.35rem;font-size:.95rem;display:flex}.editor .status-option input{width:auto}.editor .status-option:has(input:disabled){color:var(--muted);opacity:.6;cursor:help}.summary{gap:.2rem;margin:0;font-size:.9rem;display:grid}.summary .describe{display:grid}.summary .spend{font-weight:600}.summary .warning,.editor>form>.warning{color:var(--warning)}.editor>form>.warning{margin:0;font-size:.9rem}.editor .actions.confirm{flex-wrap:wrap;font-size:.9rem}.also-here{font-size:.85rem}.also-here ul{margin:.25rem 0 0;padding-left:1.1rem}.editor .actions{align-items:center;gap:.5rem;display:flex}.editor .spacer{flex:1}.select{gap:.2rem;display:grid;position:relative}.select-label{color:var(--muted);cursor:default;justify-self:start;font-size:.85rem}.select-field{min-height:var(--ctl-h);font-size:var(--ctl-font);color:var(--fg);background:var(--bg);border:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:.5rem;padding:.25rem .5rem;display:flex}.select-field[aria-disabled=true]{color:var(--muted);cursor:default}.select-field.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.select-value,.select-option-label{overflow-wrap:anywhere;flex:1;min-width:0}.select-chevron{color:var(--muted);flex-shrink:0}.select-field .swatch,.select-list .swatch{flex-shrink:0}.select-list{z-index:5;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);border-radius:8px;max-height:min(22rem,60vh);margin-top:2px;padding:.25rem;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 6px 18px #0000002e}.select-list [role=option]{min-height:var(--ctl-h);cursor:pointer;border-radius:6px;align-items:center;gap:.5rem;padding:.25rem .5rem;display:flex}.select-list [role=option].active{background:color-mix(in srgb, var(--accent) 14%, var(--surface));box-shadow:inset 0 0 0 2px var(--focus)}.select-tick{color:var(--accent);flex-shrink:0}@media (forced-colors:active){.select-list [role=option].active{outline:2px solid highlight}.swatch.free{forced-color-adjust:none;background:repeating-linear-gradient(45deg,canvastext 0 1px,canvas 1px 4px)}}.date-range{gap:.5rem;display:grid}.dp-field{gap:.2rem;display:grid}.dp-label{color:var(--muted);font-size:.85rem}.editor .dp-button{text-align:left;background:var(--bg);justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding:.35rem .6rem;font-size:.9rem;line-height:1.3;display:flex}.editor .dp-button>span:first-child:first-letter{text-transform:uppercase}.editor .dp-button.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.dp-icon{flex-shrink:0}.dp-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;justify-self:center;padding:.6rem .75rem}.dp-step{color:var(--muted);text-align:center;margin:0 0 .25rem;font-size:.85rem}.dp-panel .rdp-root{--rdp-accent-color:var(--leave);--rdp-accent-background-color:color-mix(in srgb, var(--leave) var(--fill-planned), var(--surface));--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_start-date-background-color:var(--leave);--rdp-range_end-date-background-color:var(--leave);--rdp-range_start-color:var(--leave-fg);--rdp-range_end-color:var(--leave-fg);--rdp-today-color:var(--today-bg);--rdp-day-height:2.3rem;--rdp-day-width:2.3rem;--rdp-day_button-height:2.15rem;--rdp-day_button-width:2.15rem;--rdp-day_button-border-radius:6px;--rdp-selected-border:2px solid var(--leave);--rdp-nav-height:2.25rem;color:var(--fg);font-size:.9rem}.dp-panel.choosing .rdp-root{--rdp-range_middle-background-color:color-mix(in srgb, var(--leave) 14%, var(--surface))}.dp-panel .rdp-caption_label{text-transform:capitalize;font-size:.95rem}.dp-panel .rdp-weekday{color:var(--muted);text-transform:capitalize;font-size:.75rem}.dp-panel .rdp-chevron{fill:var(--fg)}.dp-panel .rdp-day_button{min-height:0;color:inherit;background:0 0;border:0;padding:0}.dp-panel .rdp-range_start .rdp-day_button,.dp-panel .rdp-range_end .rdp-day_button{background-color:var(--leave);color:var(--leave-fg)}.dp-panel .rdp-selected{font-size:inherit}@media (width<=360px){.dp-panel{padding:.5rem .25rem}.dp-panel .rdp-root{--rdp-day-height:2rem;--rdp-day-width:2rem;--rdp-day_button-height:1.9rem;--rdp-day_button-width:1.9rem}}@media (width<=300px){.dp-panel .rdp-root{--rdp-day-height:1.75rem;--rdp-day-width:1.75rem;--rdp-day_button-height:1.65rem;--rdp-day_button-width:1.65rem}}.dp-panel .rdp-day.dp-off{background:var(--free)}.dp-panel .rdp-day.dp-holiday .rdp-day_button{font-weight:700;position:relative}.dp-panel .rdp-day.dp-holiday .rdp-day_button:after{content:"";background:var(--holiday-mark);border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:3px;left:50%}.dp-panel .rdp-range_start.dp-holiday .rdp-day_button:after,.dp-panel .rdp-range_end.dp-holiday .rdp-day_button:after{background:var(--leave-fg)}.dp-panel .rdp-day.rdp-range_middle{background:var(--rdp-range_middle-background-color)}.dp-panel .rdp-day.rdp-outside{color:var(--muted)}.also-here li{overflow-wrap:anywhere}.cal-help{margin:0}.cal-pending{left:50%;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:15;background:var(--fg);max-width:calc(100vw - 32px);color:var(--bg);text-align:center;border-radius:10px;padding:.5rem 1rem;font-size:.9rem;transition:bottom .15s;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #00000040}.calendar{-webkit-user-select:none;user-select:none;--row-h:2.75rem;max-width:46rem}.week{grid-template-columns:2rem repeat(7,minmax(2.6rem,1fr));display:grid}.cal-head{top:var(--header-offset,0px);z-index:4;background:var(--bg);transition:top .2s;position:sticky}.weekday{text-align:center;color:var(--muted);text-transform:capitalize;padding:.25rem 0;font-size:.8rem}.month-col{position:relative}.month-band{z-index:1;height:calc(var(--span) * var(--row-h));border-top:2px dashed var(--month-line);white-space:nowrap;justify-content:center;align-items:center;font-size:.8rem;font-weight:650;display:flex;position:absolute;inset:0 0 auto}.month-band.first{border-top:0}.month-band>span{writing-mode:vertical-rl;text-transform:capitalize;transform:rotate(180deg)}.base-weekend,.base-holiday,.free-block{background-color:var(--free)}.fill-planned{background-color:color-mix(in srgb, var(--leave) var(--fill-planned), var(--surface))}.fill-approved{background-color:var(--leave)}.idea-only{background-color:color-mix(in srgb, var(--leave) 9%, var(--surface))}.day{min-height:var(--row-h);cursor:pointer;box-shadow:inset 0 0 0 .5px var(--line);font-variant-numeric:tabular-nums;outline:none;justify-content:center;align-items:center;display:flex;position:relative}.day:not(.base-weekend,.base-holiday,.free-block,.idea-only,.fill-planned,.fill-approved){background-color:var(--surface)}.day.base-holiday .num{font-weight:700}.day.base-holiday:before{content:"";background:var(--holiday-mark);border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;bottom:5px;left:50%}.day .num{z-index:1;text-align:center;min-width:1.6em;position:relative}.day.past .num,.day.out-of-year .num{color:var(--muted)}.day.fill-approved .num{color:var(--leave-fg);font-weight:700}.day.today .num{background:var(--today-bg);color:var(--today-fg);opacity:1;border-radius:999px;padding:.05em .35em;font-weight:700}.day.selected:after{content:"";background:var(--selected);pointer-events:none;position:absolute;inset:0}.day:focus-visible{z-index:3;outline:2px solid var(--focus);outline-offset:-2px;box-shadow:inset 0 0 0 4px var(--surface)}.month-edge{z-index:2;pointer-events:none;position:absolute;top:0;left:0}.month-edge.top{background:repeating-linear-gradient(to right, var(--month-line) 0 10px, var(--surface) 10px 15px);height:2px;right:0}.month-edge.left{background:repeating-linear-gradient(to bottom, var(--month-line) 0 10px, var(--surface) 10px 15px);width:2px;bottom:0}.calendar{--step:3px}.outline{--in:calc(var(--i,0) * var(--step,3px));--w:2px;border:0 solid color-mix(in srgb, var(--c) 85%, var(--fg));pointer-events:none;position:absolute;inset:0}.outline.st-idea{border-style:dashed}.outline.st-approved{--w:3px}.outline.e-t{top:var(--in);border-top-width:var(--w)}.outline.e-r{right:var(--in);border-right-width:var(--w)}.outline.e-b{bottom:var(--in);border-bottom-width:var(--w)}.outline.e-l{left:var(--in);border-left-width:var(--w)}.outline .corner{width:calc(var(--in) + var(--w));height:calc(var(--in) + var(--w));border:0 solid;border-color:inherit;border-style:inherit;position:absolute}.outline .corner.tl{border-right-width:var(--w);border-bottom-width:var(--w);top:0;left:0}.outline .corner.tr{border-left-width:var(--w);border-bottom-width:var(--w);top:0;right:0}.outline .corner.bl{border-right-width:var(--w);border-top-width:var(--w);bottom:0;left:0}.outline .corner.br{border-left-width:var(--w);border-top-width:var(--w);bottom:0;right:0}@media (width<=700px){.calendar{--row-h:2.6rem;--step:2px}.week{grid-template-columns:1.6rem repeat(7,1fr)}}.app:has(.toast:not(.toast-settling)) .cal-pending{bottom:calc(4.5rem + env(safe-area-inset-bottom,0px))}.day.with-lines{align-items:flex-start;padding-top:3px}.day.with-lines.base-holiday:before{margin:0;inset:5px 6px auto auto}.lines{--pitch:5px;z-index:1;height:calc(var(--n) * var(--pitch));pointer-events:none;position:absolute;bottom:4px;left:0;right:0}.lines.dense{--pitch:4px;bottom:3px}.line{--ink:color-mix(in srgb, var(--fg) 80%, transparent);left:0;right:0;bottom:calc((var(--n) - 1 - var(--k)) * var(--pitch));height:0;position:absolute}.day.fill-approved .line{--ink:var(--leave-fg)}.line.st-idea{border-top:2px dashed var(--ink)}.line.st-planned{border-top:2px solid var(--ink)}.line.st-approved{border-top:3px solid var(--ink)}.line.start{left:4px}.line.end{right:4px}.together{z-index:2;border-top:5px double var(--fg);box-shadow:0 1px 0 var(--surface), 0 -1px 0 var(--surface);pointer-events:none;position:absolute;top:2px;left:0;right:0}.together.st-planned{border-top-width:3px}@media (forced-colors:active){.base-weekend .num,.base-holiday .num,.free-block .num{color:graytext}.day.base-holiday .num{text-decoration:underline}.day.base-holiday:before{background:canvastext}.fill-approved{forced-color-adjust:none;background-color:highlight}.fill-approved .num{color:highlighttext}.fill-planned .num{color:highlight;font-weight:700}.swatch.base-weekend,.swatch.base-holiday{forced-color-adjust:none;background-color:graytext}.month-edge.top{background:0 0;border-top:2px dotted canvastext}.month-edge.left{background:0 0;border-left:2px dotted canvastext}.outline,.line,.together{forced-color-adjust:none}.outline{border-color:canvastext}.line{--ink:GrayText;box-shadow:none}.together{box-shadow:none;border-top-color:highlight}.fill-approved .outline,.fill-approved .line,.fill-approved .together{--ink:HighlightText;border-color:highlighttext}.day:focus-visible{outline-color:highlight}}.app-header{z-index:5;background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:.5rem 1.25rem;padding:.5rem 16px;transition:transform .2s;display:flex;position:sticky;top:0}.app-header.is-hidden{transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.app-header{transition:none}}.app-header h1{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;margin:0;font-size:1.1rem;overflow:hidden}.app-header button,.app-header .status{white-space:nowrap;flex-shrink:0}.year-nav,.header-end{flex-shrink:0}.status-demo .short{display:none}@media (width<=1199px){.status-demo .long{display:none}.status-demo .short{display:inline}}.year-nav,.header-end{align-items:center;gap:.5rem;display:flex}.header-end{margin-left:auto}button.square{width:var(--ctl-h);padding:0;font-size:1.1rem;line-height:1}.year{text-align:center;font-variant-numeric:tabular-nums;min-width:3.2rem;font-size:1.15rem;font-weight:700}.status{font-size:var(--ctl-font);color:var(--muted);white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.status .dot{background:var(--leave);border-radius:50%;width:.55rem;height:.55rem}.status-saving .dot{background:var(--muted)}.status-error{color:var(--danger);font-weight:600}.status-error .dot{background:var(--danger)}.status-demo{border:1px dashed var(--muted);border-radius:999px;padding:.15rem .6rem}.menu{position:relative}.menu-panel{z-index:10;border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:.75rem;min-width:16rem;padding:.9rem;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000026}.settings{gap:.6rem;display:grid}.people{gap:.6rem;font-size:.875rem;display:grid}.people ul:not(.legend){gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.people li{align-items:center;gap:.4rem;display:flex}.people .person{flex:1;align-items:flex-start;gap:.45rem;min-width:0;display:flex}.people .person-name{overflow-wrap:anywhere;min-width:0;display:grid}.people .person-state,.people-empty,.people-note{color:var(--muted);margin:0;font-size:.8rem}.people .person-actions{gap:.2rem;display:flex}.people .person-actions .square{width:1.9rem;min-height:1.9rem}.people>.link{justify-self:start}.line-sample,.together-sample{vertical-align:middle;width:1.6rem;display:inline-block}.line-sample.st-idea{border-top:2px dashed color-mix(in srgb, var(--fg) 80%, transparent)}.line-sample.st-planned{border-top:2px solid color-mix(in srgb, var(--fg) 80%, transparent)}.line-sample.st-approved{border-top:3px solid color-mix(in srgb, var(--fg) 80%, transparent)}.together-sample{border-top:3px double var(--fg)}.together-sample.st-approved{border-top-width:5px}.share-form{align-items:flex-end;gap:.5rem;display:flex}.share-form label{flex:1;min-width:0}.shares{gap:.35rem;margin:.35rem 0 0;padding:0;list-style:none;display:grid}.shares li{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.shares li>span{flex:12rem;min-width:0}.shares li>button{white-space:nowrap}.data-actions{border-top:1px solid var(--line);font-size:var(--ctl-font);justify-items:start;gap:.35rem;padding-top:.6rem;display:grid}.data-actions .data-label{color:var(--muted)}.picker{font-size:var(--ctl-font);color:var(--muted);grid-template-columns:6.5rem 1fr;align-items:center;gap:.5rem;display:grid}.avatar-btn{width:var(--ctl-h);border-radius:50%;padding:0}.avatar{font-weight:700}.account-info{border-bottom:1px solid var(--line);gap:.1rem;padding-bottom:.6rem;display:grid}.account-info .who{font-size:var(--ctl-font);color:var(--muted);overflow-wrap:anywhere}.langs{height:var(--ctl-h);border:1px solid var(--line);border-radius:var(--ctl-radius);background:var(--surface);align-items:stretch;gap:2px;padding:2px;display:inline-flex}.langs button{border-radius:calc(var(--ctl-radius) - 3px);background:0 0;border:0;min-height:0;padding:0 .75rem}.langs button[aria-pressed=true]{background:var(--accent);color:var(--accent-fg);font-weight:700}.notice{align-items:center;gap:.5rem .9rem;font-size:.9rem;display:flex}.notice-text{flex:16rem;min-width:0}.notice-text p{margin:0}.notice-close{flex-shrink:0;width:2rem;min-height:2rem;padding:0;font-size:1.1rem;line-height:1}.notice-page{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--accent) 7%, var(--bg));padding:.45rem 16px}.notice-inline{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px;padding:.55rem .6rem .55rem .9rem}.auth-error{color:var(--danger);margin:.25rem 0 0;font-size:.85rem}.layout{grid-template-columns:minmax(0,46rem);justify-content:center;align-items:start;gap:1rem 2rem;padding:.75rem 16px 3rem;display:grid}@media (width>=1000px){.layout{grid-template-columns:minmax(0,46rem) 18rem}}.side-pane{top:calc(var(--header-offset,0px) + .75rem);gap:1rem;transition:top .2s;display:grid;position:sticky}.side-pane h2{margin:0 0 .5rem;font-size:.95rem}.above-calendar{gap:.6rem;display:grid}.legend-toggle summary{cursor:pointer;font-size:var(--ctl-font);font-weight:650}.legend-toggle[open] summary{margin-bottom:.5rem}.load-state{color:var(--muted);padding:2rem 16px}.load-state .detail{font-size:.85rem}.legend{flex-wrap:wrap;gap:.35rem 1.1rem;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.legend.stacked{gap:.45rem;display:grid}.legend-group{font-weight:700}.legend:not(.stacked) .legend-group{margin-left:.4rem}.legend.stacked .legend-group{margin-top:.35rem}.swatch{vertical-align:middle;width:1.6rem;height:1.1rem;box-shadow:inset 0 0 0 1px var(--line);display:inline-block;position:relative}.swatch.fill-none{background:var(--surface)}.swatch.base-holiday:before{content:"";background:var(--holiday-mark);border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:2px;left:50%}.app-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem;padding:1.5rem 16px 2rem;font-size:.85rem;display:flex}.app-footer a{color:var(--muted)}@media (width<=599px){:root{--ctl-h:2.75rem}.app-header{flex-wrap:wrap;gap:.5rem}.menu-panel{min-width:min(18rem,100vw - 32px)}}.toast-region{left:50%;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:20;width:max-content;max-width:calc(100vw - 32px);position:fixed;transform:translate(-50%)}.toast{background:var(--fg);color:var(--bg);border-radius:10px;align-items:center;gap:.75rem;padding:.45rem .5rem .45rem 1rem;font-size:.9rem;display:flex;box-shadow:0 8px 24px #00000040}.toast button.link{color:color-mix(in srgb, var(--accent) 45%, var(--bg));font-weight:700;text-decoration:none}.toast .notice-close{color:var(--bg);background:0 0;border-color:#0000}.tooltip{overscroll-behavior:contain;background:var(--fg);max-width:min(18rem,100vw - 16px);max-height:calc(100vh - 16px);color:var(--bg);white-space:pre-line;overflow-wrap:anywhere;border:0;border-radius:8px;margin:0;padding:.4rem .6rem;font-size:.8rem;line-height:1.35;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 6px 18px #0003}.tooltip:not([popover]),.tooltip.open{z-index:50}.tooltip:not(:popover-open):not(.open){display:none}button.status{min-height:var(--ctl-h);border-radius:var(--ctl-radius);font:inherit;font-size:var(--ctl-font);cursor:pointer;background:0 0;border:1px solid;padding:0 .6rem}.header-end>button.primary{text-overflow:ellipsis;max-width:14rem;overflow:hidden}@media (width<=599px){.header-end>button.primary{max-width:9rem}}.menu-panel{max-width:calc(100vw - 16px)}.load-actions{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.load-note{color:var(--muted);flex-basis:100%;margin:0;font-size:.85rem}.load-state details.detail summary{cursor:pointer}main.layout:focus{outline:none}.toast.toast-settling{opacity:0;width:12rem;height:2.5rem}@media print{.app-header,.notice,.app-footer,.toast-region,.cal-pending,.side-pane,.above-calendar,.tooltip{display:none!important}.cal-head{position:static}}
