.calendar-window-navigation{position:relative;display:flex;align-items:center;gap:.35rem;min-height:2.5rem;padding:.35rem .5rem;border-bottom:1px solid var(--color-border)}.calendar-window-navigation-button,.calendar-window-navigation-today,.calendar-window-navigation-range{border:1px solid var(--color-border);border-radius:6px;background:transparent;color:var(--color-text-muted);font:inherit;cursor:pointer}.calendar-window-navigation-button{display:grid;width:1.9rem;height:1.9rem;flex:none;place-items:center;padding:0;font-size:1.3rem;line-height:1}.calendar-window-navigation-button--week{font-size:1.05rem}.calendar-window-navigation-today{padding:.3rem .55rem;font-size:.72rem}.calendar-window-navigation-range{flex:1;min-width:0;padding:.3rem .4rem;overflow:hidden;color:var(--color-text);font-size:.78rem;font-weight:700;text-align:center;text-overflow:ellipsis;white-space:nowrap}.calendar-window-navigation :is(.calendar-window-navigation-button,.calendar-window-navigation-today,.calendar-window-navigation-range):hover,.calendar-window-navigation-range[aria-expanded=true]{background:var(--color-surface-2);color:var(--color-text)}.calendar-window-navigation :is(.calendar-window-navigation-button,.calendar-window-navigation-today,.calendar-window-navigation-range):focus-visible{z-index:1;outline:2px solid var(--color-accent);outline-offset:-2px}.calendar-window-popover{position:absolute;top:calc(100% + .35rem);left:50%;z-index:95;box-sizing:border-box;display:flex;width:min(17rem,calc(100% - 1rem));flex-direction:column;gap:.7rem;padding:.8rem;transform:translate(-50%);border:1px solid var(--color-border);border-radius:10px;background:var(--color-dropdown-bg, var(--color-surface));box-shadow:var(--shadow-dropdown);color:var(--color-text)}.calendar-window-popover[hidden]{display:none}.calendar-window-popover-navigation{display:flex;align-items:center;gap:.25rem}.calendar-window-popover-arrow{display:grid;width:1.8rem;height:1.8rem;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);font:inherit;font-size:1rem;cursor:pointer}.calendar-window-popover-arrow:hover,.calendar-window-popover-arrow:focus-visible{background:var(--color-surface-2);color:var(--color-text);outline:none}.calendar-window-popover-month{flex:1;font-size:.84rem;text-align:center}.calendar-window-popover-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.calendar-window-popover-weekday{padding:.15rem 0 .35rem;color:var(--color-text-muted);font-size:.62rem;font-weight:650;letter-spacing:.04em;text-align:center;text-transform:uppercase}.calendar-window-popover-empty{aspect-ratio:1}.calendar-window-popover-date{position:relative;display:grid;aspect-ratio:1;place-items:center;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--color-text-muted);font:inherit;font-size:.75rem;cursor:pointer}.calendar-window-popover-date:hover,.calendar-window-popover-date:focus-visible{background:var(--color-surface-2);color:var(--color-text);outline:none}.calendar-window-popover-date.is-today{border-color:color-mix(in srgb,var(--color-danger, #ef4444) 28%,var(--color-border));background:color-mix(in srgb,var(--color-danger, #ef4444) 5%,transparent);color:var(--color-text);font-weight:700}.calendar-window-popover-date.is-selected{border-color:var(--color-accent);background:var(--color-accent);color:#fff;font-weight:700}@media(max-width:600px){.calendar-window-navigation{gap:.2rem;padding-right:.35rem;padding-left:.35rem}.calendar-window-navigation-button{width:1.75rem;height:1.75rem}.calendar-window-navigation-today{padding-right:.4rem;padding-left:.4rem;font-size:.68rem}.calendar-window-navigation-range{padding-right:.2rem;padding-left:.2rem;font-size:.72rem}}.calendar-search-view{position:relative;min-width:0;color:var(--color-text);font-family:var(--font-sans)}.calendar-search-navigation{display:flex;align-items:center;gap:.35rem;min-height:2.5rem;padding:.35rem .5rem;border-bottom:1px solid var(--color-border)}.calendar-search-nav-button,.calendar-search-today{border:1px solid var(--color-border);border-radius:6px;background:transparent;color:var(--color-text-muted);font:inherit;cursor:pointer}.calendar-search-nav-button{display:grid;width:1.9rem;height:1.9rem;place-items:center;padding:0;font-size:1.3rem;line-height:1}.calendar-search-today{padding:.3rem .55rem;font-size:.72rem}.calendar-search-nav-button:hover,.calendar-search-today:hover{background:var(--color-surface-2);color:var(--color-text)}.calendar-search-range{flex:1;min-width:0;padding:0 .25rem;overflow:hidden;font-size:.78rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}.calendar-search-list,.calendar-search-popover-list,.calendar-search-week-list{display:grid}.calendar-search-list{gap:.15rem;padding:.25rem 0}.calendar-search-event{position:relative;display:flex;align-items:center;min-width:0;border-radius:7px}.calendar-search-event:hover,.calendar-search-event:focus-within{background:var(--color-surface-2)}.calendar-search-event-main{display:grid;grid-template-columns:minmax(5.8rem,auto) .5rem minmax(0,1fr);flex:1;align-items:start;min-width:0;padding:.48rem .5rem;border:0;background:transparent;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.calendar-search-event-time{padding-right:.4rem;color:var(--color-text-muted);font-size:.72rem;font-variant-numeric:tabular-nums;white-space:nowrap}.calendar-search-event-dot{width:.42rem;height:.42rem;margin-top:.24rem;border-radius:50%;background:var(--calendar-event-color)}.calendar-search-event-summary{display:flex;min-width:0;flex-direction:column}.calendar-search-event-title{overflow:hidden;font-size:.78rem;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.calendar-search-event-meta{overflow:hidden;margin-top:.12rem;color:var(--color-text-muted);font-size:.67rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.calendar-search-event-actions{position:relative;display:flex;flex:none;align-items:center;gap:.18rem;padding-right:.25rem;opacity:0}.calendar-search-event:hover .calendar-search-event-actions,.calendar-search-event:focus-within .calendar-search-event-actions{opacity:1}.calendar-search-event-action{padding:.24rem .42rem;border:1px solid color-mix(in srgb,var(--color-accent) 55%,var(--color-border));border-radius:5px;background:transparent;color:var(--color-accent);font:inherit;font-size:.67rem;cursor:pointer}.calendar-search-event-more{width:28px;height:28px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--color-text-muted);font-size:.62rem;letter-spacing:-.08em;cursor:pointer}.calendar-search-event-more:hover{background:var(--color-surface-2);color:var(--color-text)}.calendar-search-row-menu{position:absolute;top:calc(100% + 2px);right:0;z-index:90;width:9.5rem;padding:.25rem;border:1px solid var(--color-border);border-radius:7px;background:var(--color-dropdown-bg, var(--color-surface));box-shadow:var(--shadow-dropdown)}.calendar-search-row-menu button{display:block;width:100%;padding:.42rem .5rem;border:0;border-radius:4px;background:transparent;color:var(--color-text);font:inherit;font-size:.7rem;text-align:left;cursor:pointer}.calendar-search-row-menu button:hover,.calendar-search-row-menu button:focus-visible{background:var(--color-surface-2);outline:none}.calendar-search-week-scroll{min-width:0;overflow:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior:contain}.calendar-search-week{display:grid;grid-template-columns:repeat(7,minmax(9rem,1fr));min-width:63rem}.calendar-search-week-day{min-width:0;min-height:10rem;border-right:1px solid var(--color-border);scroll-snap-align:start;scroll-snap-stop:always}.calendar-search-week-day:last-child{border-right:0}.calendar-search-week-day.is-today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-danger, #ef4444) 28%,var(--color-border));background:color-mix(in srgb,var(--color-danger, #ef4444) 5%,transparent)}.calendar-search-week-header{width:100%;min-height:2.75rem;padding:.45rem .5rem;border:0;border-bottom:1px solid var(--color-border);background:transparent;color:var(--color-text);font:inherit;font-size:.76rem;font-weight:680;text-align:left;text-transform:uppercase;cursor:pointer}.calendar-search-week-header:hover{background:var(--color-surface-2)}.calendar-search-week-list{gap:.12rem;padding:.35rem}.calendar-search-event--week .calendar-search-event-main{grid-template-columns:.5rem minmax(0,1fr);padding:.42rem .35rem}.calendar-search-event--week .calendar-search-event-actions{position:absolute;top:.25rem;right:0;background:var(--color-surface-2)}.calendar-search-week-empty{padding:.45rem .35rem;color:var(--color-text-muted);font-size:.68rem}.calendar-search-month-weekdays,.calendar-search-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-search-month-weekdays{border-bottom:1px solid var(--color-border)}.calendar-search-month-weekdays span{padding:.4rem .45rem;color:var(--color-text-muted);font-size:.67rem;font-weight:650;text-align:center;text-transform:uppercase}.calendar-search-month-grid{border-left:1px solid var(--color-border)}.calendar-search-month-day{position:relative;min-width:0;min-height:8.75rem;padding:.38rem;overflow:visible;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-bg)}.calendar-search-month-day.is-outside-month{background:color-mix(in srgb,var(--color-surface-2) 50%,var(--color-bg))}.calendar-search-month-day.is-outside-month :is(.calendar-search-month-day-number,.calendar-search-month-event){opacity:.55}.calendar-search-month-day.is-today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-danger, #ef4444) 28%,var(--color-border));background:color-mix(in srgb,var(--color-danger, #ef4444) 5%,transparent)}.calendar-search-month-day-number{display:block;min-height:1.2rem;color:var(--color-text-muted);font-size:.72rem;font-weight:650;text-align:right}.calendar-search-month-events{display:grid;gap:.2rem;margin-top:.2rem}.calendar-search-month-event{display:grid;grid-template-columns:.42rem minmax(0,1fr);align-items:center;gap:.28rem;min-width:0;padding:.28rem .32rem;overflow:hidden;border:0;border-radius:5px;background:var(--color-surface-2);color:var(--color-text);font:inherit;font-size:.68rem;text-align:left;cursor:pointer}.calendar-search-month-event:hover{background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface-2))}.calendar-search-month-event>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-search-month-event .calendar-search-event-dot{margin:0}.calendar-search-month-more{justify-self:start;padding:.18rem .28rem;border:0;border-radius:4px;background:transparent;color:var(--color-accent);font:inherit;font-size:.66rem;font-weight:650;cursor:pointer}.calendar-search-month-more:hover{background:var(--color-surface-2)}.calendar-search-day-popover{position:fixed;top:var(--calendar-popover-top, 7rem);left:var(--calendar-popover-left, 1rem);z-index:100001;display:flex;box-sizing:border-box;width:min(360px,calc(100% - 1rem));max-height:calc(100vh - 1rem);flex-direction:column;overflow:visible;border:1px solid var(--color-border);border-radius:10px;background:var(--color-dropdown-bg, var(--color-surface));box-shadow:var(--shadow-dropdown)}.calendar-search-day-popover>header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.8rem .9rem .55rem}.calendar-search-day-popover h3{margin:0;font-size:.84rem}.calendar-search-day-popover>header span{color:var(--color-text-muted);font-size:.7rem}.calendar-search-popover-list{min-height:0;max-height:17rem;padding:.15rem .45rem .45rem;overflow:auto}.calendar-search-preview{position:fixed;top:var(--calendar-preview-top, 1rem);left:var(--calendar-preview-left, 1rem);z-index:100002;display:flex;box-sizing:border-box;width:var(--calendar-preview-width, 20rem);max-height:min(28rem,calc(100vh - 1.5rem));flex-direction:column;gap:.4rem;padding:.8rem;overflow:auto;border:1px solid var(--color-border);border-radius:10px;background:var(--color-dropdown-bg, var(--color-surface));box-shadow:var(--shadow-dropdown);color:var(--color-text)}.calendar-search-preview-title{font-size:.82rem;line-height:1.25}.calendar-search-preview-time,.calendar-search-preview-empty{color:var(--color-text-muted);font-size:.7rem}.calendar-search-preview-description{margin:.25rem 0;font-size:.74rem;line-height:1.45;white-space:pre-wrap}.calendar-search-preview-description.is-empty{color:var(--color-text-muted)}.calendar-search-preview-label{margin-top:.1rem;color:var(--color-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.calendar-search-preview-attendees{display:grid;gap:.18rem;margin:0;padding:0;color:var(--color-text-muted);font-size:.7rem;list-style:none}.calendar-search-preview-attendees li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-search-preview-join{align-self:flex-start;margin-top:.35rem;padding:.34rem .62rem;border:1px solid color-mix(in srgb,var(--color-accent) 55%,var(--color-border));border-radius:6px;background:color-mix(in srgb,var(--color-accent) 8%,transparent);color:var(--color-accent);font:inherit;font-size:.7rem;font-weight:650;cursor:pointer}.calendar-search-empty{margin:0;padding:.7rem;color:var(--color-text-muted);font-size:.74rem}.calendar-search-view :is(button,.calendar-search-month-event):focus-visible{z-index:1;outline:2px solid var(--color-accent);outline-offset:-2px}@media(max-width:700px){.calendar-search-week{grid-template-columns:repeat(7,minmax(12rem,1fr));min-width:84rem}.calendar-search-month-day{min-height:7.5rem;padding:.25rem}.calendar-search-month-event{padding-right:.2rem;padding-left:.2rem}.calendar-search-event-actions{opacity:1}}@media(max-width:520px){.calendar-search-week{grid-template-columns:repeat(7,calc(100vw - 4.75rem));width:max-content;min-width:0}.calendar-search-month-grid,.calendar-search-month-weekdays{min-width:42rem}.calendar-search-view--month{overflow-x:auto}.calendar-search-day-popover,.calendar-search-preview{inset:auto 0 0 var(--calendar-mobile-left, 0)!important;width:auto;max-height:min(72vh,34rem);border-right:0;border-bottom:0;border-left:0;border-radius:14px 14px 0 0;padding-bottom:calc(.8rem + env(safe-area-inset-bottom))}}
