.home-hub-glass--calendar{display:flex;flex-direction:column;gap:clamp(1.8rem,4vw,3rem)}.calendar-hub--filters-open{overflow:visible}.calendar-hub__spotlight{position:relative;width:100%;border-radius:clamp(32px,5vw,42px);padding:clamp(1.8rem,4vw,2.8rem);box-shadow:0 36px 82px rgba(15,23,42,.12);display:flex;flex-direction:column;gap:clamp(1.2rem,3vw,2rem)}.calendar-hub__spotlight.tile-card,.calendar-hub__spotlight.tile-card--frosted{width:100%;max-width:none}.calendar-hub__spotlight .calendar-hero__content{position:relative;display:flex;flex-wrap:wrap;gap:clamp(1.4rem,3.8vw,2.6rem);justify-content:space-between;align-items:stretch}.calendar-hub__body{width:100%}.calendar-hero__content{position:relative;display:flex;flex-wrap:wrap;gap:clamp(24px,4vw,48px);align-items:stretch;justify-content:space-between}.calendar-hero__lead{flex:1 1 320px;max-width:520px;color:var(--fg)}.calendar-hero__eyebrow{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .85rem;border-radius:999px;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;background:rgba(15,90,99,.12);color:color-mix(in oklab,var(--brand) 75%,var(--fg))}.calendar-hero__title{margin-top:.9rem;font-size:clamp(1.9rem,3.2vw,2.8rem);font-weight:700;letter-spacing:-.01em}.calendar-hero__subtitle{margin-top:.8rem;max-width:36ch;font-size:1rem;color:color-mix(in oklab,var(--fg) 65%,transparent)}.calendar-hero__actions{margin-top:1.6rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.calendar-hero__secondary{border-radius:999px;border:1px solid color-mix(in oklab,var(--brand) 35%,transparent);padding:.55rem 1.2rem;font-size:.875rem;font-weight:500;color:color-mix(in oklab,var(--brand) 78%,var(--fg));background:color-mix(in oklab,var(--brand) 5%,transparent);transition:transform .18s ease,background .18s ease}.calendar-hero__secondary:hover{transform:translateY(-1px);background:color-mix(in oklab,var(--brand) 12%,transparent)}.calendar-hero__stats{display:grid;gap:16px;flex:1 1 280px;min-width:260px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.calendar-stat{position:relative;padding:1.4rem;border-radius:24px;background:rgba(255,255,255,.9);box-shadow:0 16px 32px rgba(12,74,82,.12);border:1px solid rgba(255,255,255,.4);color:#0c4a52}[data-theme=dark] .calendar-stat{background:rgba(9,28,34,.92);border-color:rgba(15,90,99,.3);color:#e4f7fa}.calendar-stat__label{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;opacity:.65}.calendar-stat__value{margin-top:.5rem;font-size:2rem;font-weight:700}.calendar-stat__hint{margin-top:.35rem;font-size:.85rem;opacity:.65}.calendar-hero__chips{position:relative;z-index:1;margin-top:clamp(24px,4vw,38px);display:flex;flex-wrap:wrap;gap:.65rem}.calendar-filter-chip__label{display:inline-flex;align-items:center;white-space:nowrap;line-height:1.1;font-weight:600}.calendar-filter-chip__count{font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.35rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:.08rem .55rem}.calendar-filter-chip__count,[data-theme=dark] .calendar-filter-chip__count{background:rgba(255,255,255,.32);color:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 4px 12px rgba(15,23,42,.12)}.share-status-bar.calendar-filter-shell{width:100%;padding:0;border:none;background:transparent;box-shadow:none;gap:clamp(.45rem,1.6vw,.85rem);flex-wrap:wrap;justify-content:space-between}.calendar-filter-shell .share-filter-hint{margin-left:auto}.calendar-toolbar__filters{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(.65rem,1.6vw,1rem)}.calendar-filter-trigger{position:relative;display:inline-flex;align-self:flex-start}.calendar-filter-popover{--filter-dialog-pad-x:24px;position:absolute;top:calc(100% + 14px);left:0;width:min(340px,86vw);max-height:min(78vh,36rem);display:flex;flex-direction:column;border-radius:24px;border:1px solid rgba(218,234,255,.62);background:repeating-linear-gradient(135deg,rgba(255,255,255,.48),rgba(255,255,255,.48) 1.5px,rgba(255,255,255,.08) 0,rgba(255,255,255,.08) 16px),linear-gradient(150deg,rgba(252,255,255,.4),rgba(232,243,255,.14)),radial-gradient(150% 120% at 12% -24%,rgba(255,255,255,.34),transparent 58%),radial-gradient(160% 120% at 86% -30%,rgba(178,212,255,.3),transparent 70%),radial-gradient(110% 130% at 50% 120%,rgba(202,226,255,.16),transparent 78%),rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 18px 36px rgba(86,138,216,.22),0 38px 72px rgba(96,146,224,.2);padding:22px var(--filter-dialog-pad-x) 24px;backdrop-filter:blur(28px) saturate(185%) contrast(1.04);-webkit-backdrop-filter:blur(28px) saturate(185%) contrast(1.04);z-index:55;overflow:hidden;isolation:isolate}.calendar-filter-popover:after,.calendar-filter-popover:before{content:"";position:absolute;pointer-events:none;z-index:-1}.calendar-filter-popover:before{inset:-36% -12% -30%;background:conic-gradient(from 120deg at 28% 20%,transparent 0deg,rgba(255,255,255,.4) 140deg,transparent 240deg),radial-gradient(150% 120% at 18% -28%,rgba(255,255,255,.45),transparent 62%),radial-gradient(150% 130% at 82% -34%,rgba(186,220,255,.35),transparent 72%),linear-gradient(184deg,rgba(255,255,255,.24),transparent 78%);mix-blend-mode:screen;filter:blur(18px);opacity:.72}.calendar-filter-popover:after{inset:32% -28% -48%;background:radial-gradient(120% 120% at 38% 96%,rgba(255,255,255,.22),transparent 76%),radial-gradient(120% 100% at 72% -8%,rgba(170,210,255,.24),transparent 82%),linear-gradient(205deg,rgba(130,196,255,.16),transparent 80%);mix-blend-mode:plus-lighter;filter:blur(22px);opacity:.55}.calendar-filter-popover__header{position:relative;display:flex;flex-direction:column;gap:10px;margin-bottom:18px;padding-right:clamp(3.8rem,4.8vw,4.5rem);padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.65)}.calendar-filter-popover__header:after{content:"";display:block;width:56px;height:3px;border-radius:999px;background:linear-gradient(120deg,rgba(255,146,92,.75),rgba(255,106,58,.9));box-shadow:0 8px 18px rgba(255,122,66,.25),inset 0 1px 0 rgba(255,255,255,.55)}.calendar-filter-popover__header p{margin:0;font-size:1.05rem;letter-spacing:-.01em;font-weight:700;color:rgba(61,35,20,.95);text-shadow:0 4px 12px rgba(255,255,255,.65)}.calendar-filter-popover__header-close{--classification-close-size:clamp(3.05rem,3.8vw,3.5rem);margin:-.55rem -.55rem -.25rem 0}.calendar-filter-popover__body{background:transparent;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding-right:var(--filter-dialog-pad-x);padding-bottom:6px;margin-right:calc(var(--filter-dialog-pad-x) * -1);scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(255,138,61,.7) rgba(255,138,61,.18)}.calendar-filter-popover__body::-webkit-scrollbar{width:10px}.calendar-filter-popover__body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(255,156,94,.95),rgba(255,106,43,.85));border-radius:12px;box-shadow:0 4px 10px rgba(255,106,43,.16)}.calendar-filter-popover__body::-webkit-scrollbar-track{background:rgba(255,138,61,.08)}.calendar-filter-popover__section{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.calendar-filter-popover__body .calendar-filter-popover__section:last-child{margin-bottom:0}.calendar-filter-popover__label{font-size:.78rem;font-weight:600;color:rgba(12,139,198,.9)}.calendar-filter-popover__search{width:100%;margin:0;flex:0 0 auto!important;align-items:center;display:flex;border-color:rgba(218,234,255,.65);background:linear-gradient(140deg,rgba(255,255,255,.45),rgba(234,246,255,.28)),rgba(255,255,255,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 10px 20px rgba(86,138,216,.1)}.calendar-filter-popover__search .share-search__icon{color:rgba(61,35,20,.65)}.calendar-filter-popover__search .share-search__input{color:rgba(61,35,20,.85)}.calendar-filter-popover__options{display:flex;flex-direction:column;gap:.65rem;padding:3px 2px 6px}.calendar-filter-popover__option{width:100%}.calendar-filter-popover__options .human-docs__view-button{width:100%;display:flex;justify-content:space-between;gap:.5rem}.calendar-filter-popover__options .human-docs__view-button+.human-docs__view-button:before{display:none}[data-theme=dark] .calendar-toolbar__filters{align-items:center}[data-theme=dark] .calendar-filter-popover{border-color:rgba(218,234,255,.62);background:repeating-linear-gradient(135deg,rgba(255,255,255,.48),rgba(255,255,255,.48) 1.5px,rgba(255,255,255,.08) 0,rgba(255,255,255,.08) 16px),linear-gradient(150deg,rgba(252,255,255,.4),rgba(232,243,255,.14)),radial-gradient(150% 120% at 12% -24%,rgba(255,255,255,.34),transparent 58%),radial-gradient(160% 120% at 86% -30%,rgba(178,212,255,.3),transparent 70%),radial-gradient(110% 130% at 50% 120%,rgba(202,226,255,.16),transparent 78%),rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 18px 36px rgba(86,138,216,.22),0 38px 72px rgba(96,146,224,.2);backdrop-filter:blur(28px) saturate(185%) contrast(1.04);-webkit-backdrop-filter:blur(28px) saturate(185%) contrast(1.04)}[data-theme=dark] .calendar-filter-popover:before{background:conic-gradient(from 120deg at 28% 20%,transparent 0deg,rgba(255,255,255,.4) 140deg,transparent 240deg),radial-gradient(150% 120% at 18% -28%,rgba(255,255,255,.45),transparent 62%),radial-gradient(150% 130% at 82% -34%,rgba(186,220,255,.35),transparent 72%),linear-gradient(184deg,rgba(255,255,255,.24),transparent 78%);opacity:.72}[data-theme=dark] .calendar-filter-popover:after{background:radial-gradient(120% 120% at 38% 96%,rgba(255,255,255,.22),transparent 76%),radial-gradient(120% 100% at 72% -8%,rgba(170,210,255,.24),transparent 82%),linear-gradient(205deg,rgba(130,196,255,.16),transparent 80%);opacity:.55}[data-theme=dark] .calendar-filter-popover__search{border-color:rgba(218,234,255,.65);background:linear-gradient(140deg,rgba(255,255,255,.45),rgba(234,246,255,.28)),rgba(255,255,255,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 16px 28px rgba(86,138,216,.18);align-items:center}[data-theme=dark] .calendar-filter-popover__search .share-search__icon{color:rgba(61,35,20,.65)}[data-theme=dark] .calendar-filter-popover__search .share-search__input{color:rgba(61,35,20,.85)}[data-theme=dark] .calendar-filter-popover__header p{color:rgba(61,35,20,.95);text-shadow:0 4px 12px rgba(255,255,255,.65)}[data-theme=dark] .calendar-filter-popover__label{color:rgba(15,23,42,.88)}[data-theme=dark] .calendar-filter-popover__option{color:rgba(15,23,42,.85)}[data-theme=dark] .calendar-filter-popover__count{color:rgba(71,85,105,.82)}[data-theme=dark] .calendar-filter-popover__body{scrollbar-color:rgba(255,138,61,.7) rgba(255,138,61,.18)}[data-theme=dark] .calendar-filter-popover__body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(255,198,153,.95),rgba(255,136,82,.85))}[data-theme=dark] .calendar-filter-popover__body::-webkit-scrollbar-track{background:rgba(255,138,61,.08)}.calendar-toolbar{margin-top:clamp(20px,4vw,34px)}.calendar-toolbar .share-toolbar__controls{grid-template-columns:minmax(0,1fr) max-content;gap:clamp(.8rem,1.6vw,1.1rem)}@media (max-width:960px){.calendar-toolbar .share-toolbar__controls{grid-template-columns:1fr}}.calendar-toolbar .share-status-bar{flex-wrap:wrap;row-gap:.35rem}.calendar-toolbar .share-status-bar__filters{flex-wrap:wrap;justify-content:flex-start}.calendar-toolbar .share-toolbar__actions{justify-content:flex-end}.calendar-toolbar__search{flex:1 1 280px;width:100%}.calendar-layout{display:grid;gap:clamp(24px,3vw,40px);grid-template-columns:minmax(0,1fr)}@media (max-width:1080px){.calendar-layout{grid-template-columns:minmax(0,1fr)}}.calendar-board{position:relative;width:100%;max-width:none;border-radius:clamp(30px,4vw,38px);border:1.2px solid rgba(148,198,255,.42);background:radial-gradient(138% 126% at 18% -12%,rgba(255,216,240,.28),transparent 66%),radial-gradient(118% 118% at 88% -6%,rgba(174,214,255,.24),transparent 70%),linear-gradient(165deg,rgba(255,255,255,.97),rgba(236,244,253,.92));box-shadow:0 18px 42px rgba(66,120,255,.1),0 8px 18px rgba(15,23,42,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);isolation:isolate;overflow:hidden;padding:clamp(20px,3vw,32px)}.calendar-board.admin-console-overview{margin:0}.calendar-board:before{content:"";position:absolute;inset:-20% -18% -30% -12%;border-radius:40px;background:radial-gradient(60% 60% at 50% 20%,rgba(255,255,255,.5),transparent 70%);opacity:.46;filter:blur(22px);pointer-events:none}.calendar-board.surface-depth-404:before{inset:-24% -18% -30% -18%;filter:blur(18px);opacity:.84}[data-theme=dark] .calendar-board{border-color:rgba(118,180,255,.32);background:radial-gradient(120% 120% at 18% -12%,rgba(68,124,255,.24),transparent 62%),radial-gradient(140% 120% at 100% 0,rgba(26,212,255,.18),transparent 68%),linear-gradient(165deg,rgba(17,26,46,.92),rgba(10,18,38,.88));box-shadow:0 34px 78px rgba(2,9,23,.68),0 18px 36px rgba(2,6,23,.46)}[data-theme=dark] .calendar-board:before{background:radial-gradient(70% 70% at 50% 20%,rgba(64,180,255,.32),transparent 72%);opacity:.5}[data-theme=dark] .calendar-board.surface-depth-404:before{filter:blur(20px);opacity:.6}.calendar-month-nav{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:clamp(16px,2vw,24px);flex-wrap:wrap;row-gap:12px}.calendar-month-nav__eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.calendar-month-nav>div:first-child{flex:1 1 220px;min-width:220px}.calendar-month-nav__title{margin-top:.4rem;font-size:clamp(1.6rem,2.4vw,2.1rem);font-weight:600;color:var(--bv-color-action)}[data-theme=dark] .calendar-month-nav__title{color:#ffb38a}.calendar-month-nav__actions{justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.calendar-month-nav__actions,.calendar-nav-shell{display:inline-flex;align-items:center;flex-shrink:0}.calendar-nav-shell{border-radius:999px;border:1px solid rgba(255,106,43,.34);background:linear-gradient(140deg,rgba(255,255,255,.95),rgba(255,241,233,.92));color:var(--bv-color-action);box-shadow:0 10px 24px rgba(255,106,43,.16);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;backdrop-filter:blur(12px)}.calendar-nav-shell:focus-within,.calendar-nav-shell:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(255,140,83,.22)}.calendar-nav-btn{background:transparent;color:inherit;cursor:pointer;transition:background .2s ease,color .2s ease}.calendar-month-nav__actions>.calendar-month-nav__add,.calendar-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:none}.calendar-month-nav__actions>.calendar-month-nav__add{flex-shrink:0;padding:0;border-radius:999px;font-size:1.8rem;line-height:1;background:linear-gradient(90deg,var(--bv-color-action) 0,var(--bv-color-action-hover) 100%);color:#fff;box-shadow:0 10px 22px rgba(255,106,43,.24);transition:transform .2s ease,box-shadow .2s ease}.calendar-month-nav__actions>.calendar-month-nav__add:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(255,106,43,.28)}.calendar-month-nav__actions>.calendar-month-nav__add:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(255,138,61,.35)}.calendar-nav-btn:hover{background:rgba(255,106,43,.12)}.calendar-nav-btn:focus-visible{outline:none;background:rgba(255,106,43,.2)}.calendar-nav-divider{width:1px;height:24px;background:rgba(255,140,83,.55)}[data-theme=dark] .calendar-nav-shell{border-color:rgba(255,157,97,.48);background:linear-gradient(145deg,rgba(24,17,12,.9),rgba(32,19,10,.85));color:#ffb38a;box-shadow:0 16px 30px rgba(0,0,0,.55)}[data-theme=dark] .calendar-nav-shell:focus-within,[data-theme=dark] .calendar-nav-shell:hover{box-shadow:0 22px 46px rgba(0,0,0,.65)}[data-theme=dark] .calendar-nav-btn:focus-visible,[data-theme=dark] .calendar-nav-btn:hover{background:rgba(255,157,97,.18)}[data-theme=dark] .calendar-nav-divider{background:rgba(255,157,97,.55)}.calendar-month-nav__actions>button:not(.calendar-month-nav__add){appearance:none;border:1px solid color-mix(in oklab,var(--border) 75%,transparent);background:var(--card);color:var(--muted);width:2.6rem;height:2.6rem;border-radius:999px;font-size:1.2rem;line-height:1;display:grid;place-items:center;transition:background .18s ease,transform .18s ease}.calendar-month-nav__actions>button:not(.calendar-month-nav__add):hover{background:color-mix(in oklab,var(--brand) 8%,transparent);color:color-mix(in oklab,var(--fg) 80%,var(--brand));transform:translateY(-1px)}.calendar-board-toolbar{width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:1rem}.calendar-view-toggle-bar{flex:1 1 auto;display:flex;justify-content:flex-end;align-items:flex-start}.calendar-view-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.65rem;width:100%}.calendar-view-toggle__add{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.calendar-view-toggle__add.filter-button-shell{overflow:hidden}.calendar-view-toggle__add.filter-button-shell:after{inset:0;height:100%}.calendar-view-toggle__add-legacy{flex-shrink:0;position:relative;z-index:1;background:linear-gradient(90deg,var(--bv-color-action) 0,var(--bv-color-action-hover) 100%);color:#fff;box-shadow:0 12px 30px rgba(255,106,43,.32);opacity:1;filter:none}.calendar-view-toggle__add-legacy:hover{box-shadow:0 18px 42px rgba(255,106,43,.38)}.calendar-view-toggle__add-legacy:focus-visible{box-shadow:0 0 0 3px rgba(255,138,61,.35)}.calendar-view-toggle__add .calendar-view-toggle__add-btn{padding:.55rem .9rem;font-size:1.1rem;font-weight:700;line-height:1}.calendar-view-toggle__add .calendar-view-toggle__add-icon{display:inline-flex;align-items:center;justify-content:center;width:1.1em;height:1.1em}.calendar-view-toggle{margin:0}.calendar-view-toggle__option{font-size:.82rem;font-weight:600;gap:.45rem;min-width:0;padding:.42rem .85rem}.calendar-view-toggle__label{display:inline-flex;align-items:center;line-height:1.1;color:inherit}.calendar-view-toggle__icon{width:18px;height:18px;color:inherit}@media (max-width:640px){.calendar-board-toolbar{flex-direction:column;align-items:flex-start}.calendar-view-actions,.calendar-view-toggle-bar{justify-content:flex-start}.calendar-view-toggle__option{gap:.3rem;padding-inline:.65rem}.calendar-view-toggle__label{font-size:.75rem}}.calendar-error{margin-bottom:16px;padding:1rem 1.2rem;border-radius:18px;border:1px solid rgba(245,101,101,.35);background:rgba(245,101,101,.12);color:#7f1d1d;display:flex;align-items:center;justify-content:space-between;gap:1rem}.calendar-error button{border:1px solid;border-radius:999px;padding:.35rem .9rem;font-size:.8rem;font-weight:600;background:transparent}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.75rem;margin-top:.4rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:color-mix(in oklab,var(--muted) 82%,var(--fg))}.calendar-month-view,.calendar-week-view__scroller{--calendar-month-span-row-height:1.52rem;--calendar-month-span-gap:0.22rem;--calendar-month-strip-height:calc((var(--calendar-month-span-row-height) * 2) + var(--calendar-month-span-gap));--calendar-month-day-height:clamp(7.8rem,12vw,8.7rem);--calendar-week-span-row-height:1.8rem;--calendar-week-span-gap:0.35rem;--calendar-week-strip-height:calc((var(--calendar-week-span-row-height) * 3) + (var(--calendar-week-span-gap) * 2));display:flex;flex-direction:column;gap:.75rem}.calendar-grid{display:grid;gap:.75rem}.calendar-grid__week{display:grid;grid-template-rows:var(--calendar-month-strip-height) auto;gap:.32rem}.calendar-grid__week:not([data-has-spans=true]){grid-template-rows:0 auto;gap:0}.calendar-grid__row{gap:.75rem}.calendar-grid__row,.calendar-span-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-span-grid{grid-auto-rows:minmax(1.8rem,auto);gap:.35rem .75rem;align-content:start}.calendar-month-view .calendar-grid__row,.calendar-month-view .calendar-span-grid,.calendar-month-view .calendar-weekdays{gap:.58rem}.calendar-month-view .calendar-grid{gap:.62rem}.calendar-span-grid--month{min-height:var(--calendar-month-strip-height);max-height:var(--calendar-month-strip-height);grid-template-rows:repeat(2,var(--calendar-month-span-row-height))}.calendar-grid__week:not([data-has-spans=true]) .calendar-span-grid--month{min-height:0;max-height:0;overflow:hidden}.calendar-span-grid--week{min-height:var(--calendar-week-strip-height);max-height:var(--calendar-week-strip-height);grid-template-rows:repeat(3,var(--calendar-week-span-row-height))}.calendar-span-grid--week[data-empty=true]{min-height:0;max-height:0;overflow:hidden}.calendar-span-grid[data-empty=true]{opacity:.72}.calendar-span-bar{--calendar-span-accent:100,116,139;appearance:none;min-width:0;min-height:1.8rem;display:inline-flex;align-items:center;gap:.38rem;padding:.3rem .58rem;border-radius:12px;border:1px solid rgba(var(--calendar-span-accent,100,116,139),.22);background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0)),linear-gradient(135deg,rgba(var(--calendar-span-accent,100,116,139),.15),rgba(var(--calendar-span-accent,100,116,139),.09));color:color-mix(in oklab,rgb(var(--calendar-span-accent,100,116,139)) 76%,#0f172a);box-shadow:0 4px 10px rgba(var(--calendar-span-accent,100,116,139),.08);font:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.calendar-span-bar:hover{transform:translateY(-1px);box-shadow:0 8px 14px rgba(var(--calendar-span-accent,100,116,139),.12)}.calendar-span-bar[draggable=true]{cursor:grab}.calendar-span-bar[data-dragging=true]{opacity:.54;transform:scale(.985)}.calendar-span-bar:focus-visible{outline:none;border-color:rgba(var(--calendar-span-accent,100,116,139),.44);box-shadow:0 0 0 2px rgba(var(--calendar-span-accent,100,116,139),.16),0 12px 26px rgba(var(--calendar-span-accent,100,116,139),.16)}.calendar-span-bar[data-highlight=true]{border-color:rgba(var(--calendar-span-accent,100,116,139),.36);box-shadow:0 10px 18px rgba(var(--calendar-span-accent,100,116,139),.14)}.calendar-span-bar[data-tone=appointment]{--calendar-span-accent:8,145,120}.calendar-span-bar[data-tone=procedure]{--calendar-span-accent:99,102,241}.calendar-span-bar[data-tone=reminder]{--calendar-span-accent:245,158,11}.calendar-span-bar[data-tone=other]{--calendar-span-accent:100,116,139}.calendar-span-bar[data-custom-color=true]{--calendar-span-accent:var(--calendar-accent-rgb,100,116,139)}.calendar-span-bar__time{flex:0 0 auto;font-size:.66rem;font-weight:700;letter-spacing:.01em;opacity:.72}.calendar-span-bar__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-weight:600}.calendar-day{position:relative;display:flex;flex-direction:column;padding:.82rem;min-height:140px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 82%,transparent);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 92%,transparent),var(--card));text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.calendar-day:hover{border-color:color-mix(in oklab,var(--brand) 24%,var(--border));box-shadow:0 10px 18px rgba(12,74,82,.08)}.calendar-day[data-muted=true]{border-color:rgba(196,212,224,.72);background:linear-gradient(180deg,rgba(236,244,249,.94),rgba(228,238,245,.98));box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 4px 12px rgba(148,163,184,.05)}.calendar-day[data-muted=true]:hover{border-color:rgba(184,204,218,.86);box-shadow:inset 0 1px 0 rgba(255,255,255,.76),0 8px 16px rgba(148,163,184,.08)}.calendar-day[data-muted=true] .calendar-day__date{color:rgba(86,118,136,.84)}.calendar-day[data-muted=true] .calendar-day__badge{background:rgba(203,216,225,.72);color:rgba(91,118,133,.9)}.calendar-day[data-muted=true] .calendar-day__plan{background:rgba(203,216,225,.82);color:rgba(88,122,140,.92)}.calendar-day[data-muted=true] .calendar-day__plan:hover{background:rgba(191,208,219,.94)}.calendar-day[data-muted=true] .calendar-event-pill{opacity:.9;filter:saturate(.82)}.calendar-day[data-today=true]{border-color:color-mix(in oklab,var(--accent-personal) 60%,transparent);box-shadow:0 10px 18px color-mix(in oklab,var(--accent-personal) 18%,rgba(0,0,0,.06)),0 0 0 1px color-mix(in oklab,var(--accent-personal) 16%,transparent)}.calendar-day[data-highlight=true]{border-color:color-mix(in oklab,var(--accent-personal) 75%,transparent);box-shadow:0 12px 22px color-mix(in oklab,var(--accent-personal) 18%,rgba(0,0,0,.06)),0 0 0 1px color-mix(in oklab,var(--accent-personal) 18%,transparent);animation:calendar-focus-glow 1.6s ease-out}.calendar-day[data-drop-target=true]{border-color:color-mix(in oklab,var(--brand) 36%,var(--border));box-shadow:0 12px 22px rgba(12,74,82,.12),0 0 0 1px color-mix(in oklab,var(--brand) 20%,transparent);transform:translateY(-1px)}[data-theme=dark] .calendar-day[data-muted=true]{border-color:rgba(95,122,146,.4);background:linear-gradient(180deg,rgba(28,39,58,.84),rgba(22,31,46,.9));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 4px 12px rgba(2,6,23,.18)}[data-theme=dark] .calendar-day[data-muted=true]:hover{border-color:rgba(116,148,174,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 8px 16px rgba(2,6,23,.24)}[data-theme=dark] .calendar-day[data-muted=true] .calendar-day__date{color:rgba(180,200,216,.78)}[data-theme=dark] .calendar-day[data-muted=true] .calendar-day__badge,[data-theme=dark] .calendar-day[data-muted=true] .calendar-day__plan{background:rgba(83,106,124,.68);color:rgba(210,227,238,.88)}[data-theme=dark] .calendar-span-bar{color:color-mix(in oklab,rgb(var(--calendar-span-accent,100,116,139)) 30%,#f8fafc);border-color:rgba(var(--calendar-span-accent,100,116,139),.3);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0)),linear-gradient(135deg,rgba(var(--calendar-span-accent,100,116,139),.18),rgba(var(--calendar-span-accent,100,116,139),.1));box-shadow:0 8px 16px rgba(2,6,23,.22)}[data-theme=dark] .calendar-span-bar:hover{box-shadow:0 14px 28px rgba(2,6,23,.3),0 0 0 1px rgba(var(--calendar-span-accent,100,116,139),.12)}[data-theme=dark] .calendar-span-bar[data-highlight=true]{box-shadow:0 12px 22px rgba(2,6,23,.28),0 0 0 1px rgba(var(--calendar-span-accent,100,116,139),.16)}[data-theme=dark] .calendar-day[data-drop-target=true]{border-color:color-mix(in oklab,var(--brand) 42%,rgba(255,255,255,.14));box-shadow:0 14px 24px rgba(2,6,23,.3),0 0 0 1px color-mix(in oklab,var(--brand) 20%,transparent)}.calendar-day__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.52rem}.calendar-day__link{appearance:none;border:none;background:transparent;padding:0;display:inline-flex;align-items:center;color:inherit;font:inherit;cursor:pointer}.calendar-day__date{font-size:.98rem;font-weight:650;color:color-mix(in oklab,var(--fg) 86%,transparent)}.calendar-day__header-actions{display:inline-flex;align-items:center;gap:.35rem}.calendar-day__badge{font-size:.68rem;font-weight:700;border-radius:999px;min-width:1.65rem;height:1.45rem;padding:0 .48rem;background:color-mix(in oklab,var(--brand) 18%,transparent);display:inline-flex;align-items:center;justify-content:center}.calendar-day__badge,.calendar-day__plan{color:color-mix(in oklab,var(--muted) 68%,var(--fg))}.calendar-day__plan{appearance:none;border:none;background:color-mix(in oklab,var(--brand) 14%,transparent);width:1.65rem;height:1.65rem;border-radius:999px;font-size:.9rem;font-weight:650;display:grid;place-items:center;cursor:pointer;transition:transform .18s ease,background .18s ease}.calendar-day__plan:hover{transform:translateY(-1px);background:color-mix(in oklab,var(--brand) 20%,transparent)}.calendar-day__events{display:flex;flex-direction:column;gap:.4rem;flex:1;min-height:0;overflow:hidden}.calendar-day__empty{margin:auto 0;font-size:.64rem;font-weight:500;letter-spacing:.02em;text-align:center;color:color-mix(in oklab,var(--muted) 84%,var(--fg))}.calendar-day--week,.calendar-month-view .calendar-day{min-height:0;padding:.7rem .72rem;border-radius:18px}.calendar-day--week,.calendar-month-view .calendar-day{height:var(--calendar-month-day-height)}.calendar-day--week .calendar-day__header,.calendar-month-view .calendar-day__header{margin-bottom:.4rem}.calendar-day--week .calendar-day__date,.calendar-month-view .calendar-day__date{font-size:.94rem;font-weight:680}.calendar-day--week .calendar-day__header-actions,.calendar-month-view .calendar-day__header-actions{gap:.26rem}.calendar-day--week .calendar-day__badge,.calendar-month-view .calendar-day__badge{min-width:1.36rem;height:1.18rem;padding:0 .34rem;font-size:.6rem;background:color-mix(in oklab,var(--brand) 12%,transparent);color:color-mix(in oklab,var(--muted) 72%,var(--fg))}.calendar-day--week .calendar-day__plan,.calendar-month-view .calendar-day__plan{width:1.34rem;height:1.34rem;font-size:.8rem;font-weight:700;border:1px solid color-mix(in oklab,var(--border) 78%,transparent);background:rgba(255,255,255,.42);color:color-mix(in oklab,var(--muted) 76%,var(--fg))}.calendar-day--week .calendar-day__plan:hover,.calendar-month-view .calendar-day__plan:hover{background:rgba(255,255,255,.72);border-color:color-mix(in oklab,var(--brand) 18%,var(--border))}.calendar-day__events--week,.calendar-month-view .calendar-day__events{gap:.3rem}.calendar-day--week[data-today=true],.calendar-month-view .calendar-day[data-today=true]{border-color:rgba(255,138,61,.52);box-shadow:0 8px 16px rgba(255,138,61,.12),0 0 0 1px rgba(255,138,61,.14)}.calendar-day--week[data-highlight=true],.calendar-month-view .calendar-day[data-highlight=true]{box-shadow:0 10px 20px rgba(255,138,61,.14),0 0 0 1px rgba(255,138,61,.16)}.calendar-day__skeleton{display:block;height:.55rem;border-radius:999px;background:color-mix(in oklab,var(--border) 65%,transparent);animation:calendar-pulse 1.6s ease-in-out infinite}@keyframes calendar-pulse{0%,to{opacity:.45}50%{opacity:1}}@keyframes calendar-focus-glow{0%{box-shadow:0 10px 18px rgba(12,74,82,.14)}50%{box-shadow:0 12px 22px rgba(12,74,82,.18)}to{box-shadow:0 10px 18px rgba(12,74,82,.14)}}.calendar-event-pill{appearance:none;display:flex;flex-direction:column;gap:.24rem;width:100%;padding:.46rem .56rem;border-radius:14px;font-size:.76rem;font:inherit;text-align:left;line-height:1.2;border:1px solid rgba(255,255,255,.34);background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,0)),transparent;color:inherit;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.calendar-event-pill:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(12,74,82,.08)}.calendar-event-pill[draggable=true]{cursor:grab}.calendar-event-pill[data-dragging=true]{opacity:.52;transform:scale(.985)}.calendar-event-pill:focus-visible{outline:none;border-color:color-mix(in oklab,var(--brand) 55%,transparent);box-shadow:0 0 0 2px color-mix(in oklab,var(--brand) 18%,transparent)}.calendar-event-pill[data-highlight=true]{border-color:color-mix(in oklab,var(--brand) 55%,transparent);box-shadow:0 10px 20px rgba(12,74,82,.14)}.calendar-event-pill[data-tone=appointment]{background:linear-gradient(135deg,rgba(40,199,170,.18),rgba(8,145,120,.16));border-color:rgba(8,145,120,.28);color:color-mix(in oklab,#026b50 82%,#0f5132)}.calendar-event-pill[data-tone=procedure]{background:linear-gradient(135deg,rgba(167,139,250,.18),rgba(124,58,237,.16));border-color:rgba(99,102,241,.28);color:color-mix(in oklab,#3730a3 78%,#312e81)}.calendar-event-pill[data-tone=reminder]{background:linear-gradient(135deg,rgba(252,211,77,.18),rgba(245,158,11,.16));border-color:rgba(245,158,11,.28);color:color-mix(in oklab,#92400e 78%,#b45309)}.calendar-event-pill[data-tone=other]{background:linear-gradient(135deg,rgba(148,163,184,.16),rgba(100,116,139,.16));border-color:rgba(100,116,139,.28);color:color-mix(in oklab,#475569 78%,#1f2937)}.calendar-event-pill[data-custom-color=true]{background:linear-gradient(135deg,rgba(var(--calendar-accent-rgb,100,116,139),.18),rgba(var(--calendar-accent-rgb,100,116,139),.14));border-color:rgba(var(--calendar-accent-rgb,100,116,139),.32);color:color-mix(in oklab,rgb(var(--calendar-accent-rgb,100,116,139)) 76%,#0f172a)}.calendar-event-pill[data-custom-color=true][data-highlight=true]{box-shadow:0 14px 26px rgba(var(--calendar-accent-rgb,100,116,139),.24);border-color:rgba(var(--calendar-accent-rgb,100,116,139),.32)}.calendar-event-pill__time{font-size:.66rem;font-weight:700;opacity:.64}.calendar-event-pill__title{font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-day--week .calendar-event-pill,.calendar-month-view .calendar-event-pill{flex-direction:row;align-items:center;gap:.34rem;padding:.3rem .42rem;border-radius:10px;box-shadow:inset 0 1px 0 rgba(255,255,255,.22)}.calendar-day--week .calendar-event-pill__time,.calendar-month-view .calendar-event-pill__time{flex:0 0 auto;font-size:.62rem;opacity:.68}.calendar-day--week .calendar-event-pill__title,.calendar-month-view .calendar-event-pill__title{min-width:0;font-size:.73rem;letter-spacing:-.01em}.calendar-day--week .calendar-event-pill[data-tone=appointment],.calendar-month-view .calendar-event-pill[data-tone=appointment]{background:rgba(40,199,170,.12);border-color:rgba(8,145,120,.34)}.calendar-day--week .calendar-event-pill[data-tone=procedure],.calendar-month-view .calendar-event-pill[data-tone=procedure]{background:rgba(167,139,250,.12);border-color:rgba(99,102,241,.34)}.calendar-day--week .calendar-event-pill[data-tone=reminder],.calendar-month-view .calendar-event-pill[data-tone=reminder]{background:rgba(252,211,77,.12);border-color:rgba(245,158,11,.34)}.calendar-day--week .calendar-event-pill[data-tone=other],.calendar-month-view .calendar-event-pill[data-tone=other]{background:rgba(148,163,184,.11);border-color:rgba(100,116,139,.3)}.calendar-day--week .calendar-event-pill[data-custom-color=true],.calendar-month-view .calendar-event-pill[data-custom-color=true]{background:rgba(var(--calendar-accent-rgb,100,116,139),.12);border-color:rgba(var(--calendar-accent-rgb,100,116,139),.34)}.calendar-day__more{appearance:none;border:none;background:transparent;font-size:.68rem;font-weight:600;color:color-mix(in oklab,var(--muted) 70%,var(--fg));cursor:pointer;padding:0;text-align:left;letter-spacing:-.01em;margin-top:auto}.calendar-drag-feedback{display:inline-flex;align-items:center;gap:.72rem;margin:0 0 1rem;padding:.7rem .9rem;border-radius:14px;border:1px solid color-mix(in oklab,var(--brand) 24%,var(--border));background:color-mix(in oklab,var(--card) 94%,rgba(255,255,255,.12));color:color-mix(in oklab,var(--fg) 86%,var(--brand));box-shadow:0 10px 18px rgba(12,74,82,.08)}.calendar-drag-feedback>button{appearance:none;border:none;background:transparent;color:color-mix(in oklab,var(--brand) 82%,var(--fg));font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;padding:0}[data-theme=dark] .calendar-drag-feedback{border-color:color-mix(in oklab,var(--brand) 32%,rgba(255,255,255,.12));background:color-mix(in oklab,var(--surface-2) 90%,rgba(12,18,28,.72));box-shadow:0 12px 24px rgba(2,6,23,.22)}[data-theme=dark] .calendar-drag-feedback>button{color:color-mix(in oklab,var(--brand) 74%,#f8fafc)}.calendar-year-grid{margin-top:1.8rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.calendar-year-card{position:relative;padding:1.2rem;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:linear-gradient(135deg,color-mix(in oklab,var(--card) 96%,transparent),var(--card));text-align:left;display:flex;flex-direction:column;gap:.75rem;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.calendar-year-card:hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--brand) 28%,transparent);box-shadow:0 16px 28px rgba(12,74,82,.16)}.calendar-year-card[data-active=true]{border-color:color-mix(in oklab,var(--accent-personal) 65%,transparent);box-shadow:0 20px 42px color-mix(in oklab,var(--accent-personal) 34%,rgba(0,0,0,.05)),0 10px 24px color-mix(in oklab,var(--accent-personal) 28%,transparent)}.calendar-year-card__header{display:flex;justify-content:space-between;align-items:baseline;gap:.8rem}.calendar-year-card__title{font-size:.95rem;font-weight:600}.calendar-year-card__count{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;border-radius:999px;background:color-mix(in oklab,var(--brand) 15%,transparent);color:color-mix(in oklab,var(--brand) 90%,var(--fg));font-size:.85rem;font-weight:700}.calendar-year-card__hint{font-size:.82rem;color:var(--muted);min-height:2.6rem}.calendar-week-view{margin-top:1.5rem;display:flex;flex-direction:column;gap:.8rem}.calendar-week-view__timeline{display:flex;flex-direction:column;gap:.6rem}.calendar-week-view .calendar-span-grid,.calendar-week-view .calendar-weekdays,.calendar-week-view__summary-grid{gap:.58rem}.calendar-week-view__bands{display:flex;flex-direction:column;gap:.32rem}.calendar-week-view__bands-label{font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in oklab,var(--muted) 82%,var(--fg))}.calendar-week-view__summary-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch}[data-theme=dark] .calendar-week-view__bands-label{color:rgba(186,204,224,.72)}.calendar-day-view{--calendar-day-hours-width:4.7rem;--calendar-day-track-max-width:min(100%,860px);margin-top:1.8rem;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 75%,transparent);background:linear-gradient(135deg,color-mix(in oklab,var(--card) 97%,transparent),var(--card));padding:clamp(20px,3vw,28px);display:flex;flex-direction:column;gap:1.4rem}.calendar-day-view__controls{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:flex-end}.calendar-day-view__date-picker{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;color:color-mix(in oklab,var(--muted) 85%,var(--fg))}.calendar-day-view__date-picker>input[type=date]{appearance:none;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);border-radius:14px;padding:.45rem .75rem;background:rgba(255,255,255,.9);color:inherit;font-size:.92rem}.calendar-day-view__summary{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;min-width:min(100%,18rem);margin-left:auto;padding:.5rem .8rem;border-radius:16px;border:1px solid color-mix(in oklab,var(--border) 76%,transparent);background:color-mix(in oklab,var(--card) 94%,rgba(255,255,255,.24));text-align:right}.calendar-day-view__summary[data-has-events=true]{border-color:color-mix(in oklab,var(--brand) 18%,var(--border));background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(255,255,255,.28)),color-mix(in oklab,var(--card) 92%,rgba(255,138,61,.06))}.calendar-day-view__summary-label{font-size:.8rem;font-weight:700;color:color-mix(in oklab,var(--fg) 82%,transparent)}.calendar-day-view__summary-detail{font-size:.74rem;color:color-mix(in oklab,var(--muted) 78%,var(--fg))}.calendar-day-view__bands{display:grid;gap:.85rem;grid-template-columns:var(--calendar-day-hours-width) minmax(0,1fr);align-items:start}.calendar-day-view__bands-label{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in oklab,var(--muted) 82%,var(--fg));padding-top:.42rem}.calendar-day-view__bands-list{display:flex;flex-direction:column;gap:.5rem;width:var(--calendar-day-track-max-width);max-width:100%}.calendar-day-view__band{--calendar-day-band-accent:100,116,139;appearance:none;display:flex;flex-direction:column;gap:.18rem;width:100%;padding:.52rem .62rem;border-radius:14px;border:1px solid rgba(var(--calendar-day-band-accent,100,116,139),.22);background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,0)),linear-gradient(135deg,rgba(var(--calendar-day-band-accent,100,116,139),.16),rgba(var(--calendar-day-band-accent,100,116,139),.08));color:color-mix(in oklab,rgb(var(--calendar-day-band-accent,100,116,139)) 78%,#0f172a);text-align:left;cursor:pointer}.calendar-day-view__band[data-tone=appointment]{--calendar-day-band-accent:8,145,120}.calendar-day-view__band[data-tone=procedure]{--calendar-day-band-accent:99,102,241}.calendar-day-view__band[data-tone=reminder]{--calendar-day-band-accent:245,158,11}.calendar-day-view__band[data-tone=other]{--calendar-day-band-accent:100,116,139}.calendar-day-view__band[data-custom-color=true]{--calendar-day-band-accent:var(--calendar-accent-rgb,100,116,139)}.calendar-day-view__band[data-highlight=true]{box-shadow:0 10px 18px rgba(var(--calendar-day-band-accent,100,116,139),.14)}.calendar-day-view__band-time{font-size:.66rem;font-weight:700;opacity:.74}.calendar-day-view__band-title{font-size:.82rem;font-weight:650}.calendar-day-view__timeline{--calendar-day-slot-height:2.9rem;display:grid;gap:1.1rem;grid-template-columns:var(--calendar-day-hours-width) minmax(0,1fr);align-items:start;max-height:min(76vh,860px);overflow-y:auto;overflow-x:hidden;padding-right:.18rem;scrollbar-gutter:stable}.calendar-day-view__hours{height:calc(var(--calendar-day-slot-count) * var(--calendar-day-slot-height));display:flex;flex-direction:column;justify-content:flex-start}.calendar-day-view__hour{display:flex;align-items:flex-start;height:var(--calendar-day-slot-height);font-size:.72rem;font-weight:650;color:color-mix(in oklab,var(--muted) 80%,var(--fg))}.calendar-day-view__hour[data-current=true]{color:color-mix(in oklab,var(--brand) 78%,var(--fg));font-weight:700}.calendar-day-view__stage{min-width:0;display:flex;align-items:stretch;width:100%}.calendar-day-view__track{position:relative;width:var(--calendar-day-track-max-width);max-width:100%;flex:0 1 var(--calendar-day-track-max-width);height:calc(var(--calendar-day-slot-count) * var(--calendar-day-slot-height));border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 76%,transparent);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(250,252,255,.98));box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 12px 24px rgba(148,163,184,.08);overflow:hidden}.calendar-day-view__track:after,.calendar-day-view__track:before{content:"";position:absolute;inset:0;pointer-events:none}.calendar-day-view__track:before{background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,0)),linear-gradient(180deg,rgba(191,219,254,.09),transparent 24%)}.calendar-day-view__track:after{background:repeating-linear-gradient(to bottom,rgba(148,163,184,.2) 0,rgba(148,163,184,.2) 1px,transparent 1px,transparent var(--calendar-day-slot-height)),repeating-linear-gradient(to bottom,rgba(148,163,184,.11) 0,rgba(148,163,184,.11) 1px,transparent 1px,transparent calc(var(--calendar-day-slot-height) / 2))}.calendar-day-view__track-loading{position:relative;z-index:1;display:flex;flex-direction:column;gap:.65rem;padding:1.1rem 1rem 0}.calendar-day-view__track-loading .calendar-day__skeleton:first-child{width:22%;height:.75rem}.calendar-day-view__track-loading .calendar-day__skeleton:last-child{width:32%;height:.62rem}.calendar-day-view__now-line{position:absolute;z-index:3;left:.7rem;right:.7rem;display:flex;align-items:center;gap:.45rem;transform:translateY(-50%);pointer-events:none;transition:top 14s linear;will-change:top}.calendar-day-view__now-line:after{content:"";flex:1 1 auto;height:1.5px;border-radius:999px;background:linear-gradient(90deg,rgba(255,138,61,.96),rgba(255,138,61,.18) 52%,rgba(255,138,61,.02))}.calendar-day-view__now-dot{flex:0 0 auto;width:.6rem;height:.6rem;border-radius:999px;background:var(--bv-color-action-hover);box-shadow:0 0 0 4px rgba(255,138,61,.12),0 2px 8px rgba(255,138,61,.22);animation:calendar-now-pulse 2.8s ease-in-out infinite}.calendar-day-view__now-label{flex:0 0 auto;padding:.18rem .42rem;border-radius:999px;border:1px solid rgba(255,138,61,.18);background:rgba(255,250,245,.92);font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--bv-color-action-hover);box-shadow:0 4px 10px rgba(255,138,61,.08)}@keyframes calendar-now-pulse{0%,to{box-shadow:0 0 0 4px rgba(255,138,61,.12),0 2px 8px rgba(255,138,61,.22)}50%{box-shadow:0 0 0 6px rgba(255,138,61,.08),0 3px 10px rgba(255,138,61,.24)}}.calendar-day-view__event{--calendar-day-event-accent:100,116,139;position:absolute;z-index:2;appearance:none;min-height:3.9rem;display:flex;flex-direction:column;gap:.18rem;padding:.64rem .74rem .58rem;border-radius:17px;border:1px solid rgba(var(--calendar-day-event-accent,100,116,139),.24);background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0)),linear-gradient(135deg,rgba(var(--calendar-day-event-accent,100,116,139),.16),rgba(var(--calendar-day-event-accent,100,116,139),.08));color:color-mix(in oklab,rgb(var(--calendar-day-event-accent,100,116,139)) 78%,#0f172a);text-align:left;overflow:hidden;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.calendar-day-view__event:hover{transform:translateY(-1px);box-shadow:0 12px 20px rgba(var(--calendar-day-event-accent,100,116,139),.14),inset 0 1px 0 rgba(255,255,255,.3)}.calendar-day-view__event:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(255,138,61,.22),0 12px 20px rgba(var(--calendar-day-event-accent,100,116,139),.14)}.calendar-day-view__event[data-tone=appointment]{--calendar-day-event-accent:8,145,120}.calendar-day-view__event[data-tone=procedure]{--calendar-day-event-accent:99,102,241}.calendar-day-view__event[data-tone=reminder]{--calendar-day-event-accent:245,158,11}.calendar-day-view__event[data-tone=other]{--calendar-day-event-accent:100,116,139}.calendar-day-view__event[data-custom-color=true]{--calendar-day-event-accent:var(--calendar-accent-rgb,100,116,139)}.calendar-day-view__event[data-highlight=true]{box-shadow:0 14px 24px rgba(var(--calendar-day-event-accent,100,116,139),.16)}.calendar-day-view__event[data-compact=true]{min-height:3.1rem;padding:.46rem .56rem;gap:.12rem}.calendar-day-view__event-time{font-size:.66rem;font-weight:700;line-height:1.1;opacity:.76}.calendar-day-view__event-title{font-size:.84rem;font-weight:650;line-height:1.15;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.calendar-day-view__event-meta{font-size:.72rem;line-height:1.15;color:color-mix(in oklab,rgb(var(--calendar-day-event-accent,100,116,139)) 54%,var(--muted));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-day-view__event[data-compact=true] .calendar-day-view__event-title{-webkit-line-clamp:1}.calendar-day-view__empty{position:absolute;inset:0;z-index:1;display:grid;place-items:center;padding:1rem;text-align:center;font-size:.88rem;color:var(--muted)}[data-theme=dark] .calendar-day-view__bands-label,[data-theme=dark] .calendar-day-view__hour{color:rgba(186,204,224,.74)}[data-theme=dark] .calendar-day-view__summary{border-color:rgba(96,114,140,.34);background:rgba(15,23,42,.44)}[data-theme=dark] .calendar-day-view__summary[data-has-events=true]{border-color:color-mix(in oklab,var(--brand) 24%,rgba(255,255,255,.14));background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0)),rgba(18,26,40,.72)}[data-theme=dark] .calendar-day-view__summary-label{color:rgba(236,244,255,.94)}[data-theme=dark] .calendar-day-view__summary-detail{color:rgba(186,204,224,.74)}[data-theme=dark] .calendar-day-view__hour[data-current=true]{color:#fdba74}[data-theme=dark] .calendar-day-view__track{border-color:rgba(96,114,140,.38);background:linear-gradient(180deg,rgba(22,31,46,.94),rgba(15,23,42,.92));box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 12px 24px rgba(2,6,23,.3)}[data-theme=dark] .calendar-day-view__track:before{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,0)),linear-gradient(180deg,rgba(96,165,250,.08),transparent 28%)}[data-theme=dark] .calendar-day-view__track:after{background:repeating-linear-gradient(to bottom,rgba(71,85,105,.52) 0,rgba(71,85,105,.52) 1px,transparent 1px,transparent var(--calendar-day-slot-height)),repeating-linear-gradient(to bottom,rgba(71,85,105,.34) 0,rgba(71,85,105,.34) 1px,transparent 1px,transparent calc(var(--calendar-day-slot-height) / 2))}[data-theme=dark] .calendar-day-view__band,[data-theme=dark] .calendar-day-view__event{color:color-mix(in oklab,rgb(var(--calendar-day-event-accent,100,116,139)) 28%,#f8fafc)}[data-theme=dark] .calendar-day-view__band{color:color-mix(in oklab,rgb(var(--calendar-day-band-accent,100,116,139)) 28%,#f8fafc);border-color:rgba(var(--calendar-day-band-accent,100,116,139),.28);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,0)),linear-gradient(135deg,rgba(var(--calendar-day-band-accent,100,116,139),.18),rgba(var(--calendar-day-band-accent,100,116,139),.08))}[data-theme=dark] .calendar-day-view__event{border-color:rgba(var(--calendar-day-event-accent,100,116,139),.28);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,0)),linear-gradient(135deg,rgba(var(--calendar-day-event-accent,100,116,139),.18),rgba(var(--calendar-day-event-accent,100,116,139),.08))}[data-theme=dark] .calendar-day-view__event:focus-visible,[data-theme=dark] .calendar-day-view__event:hover{box-shadow:0 14px 24px rgba(2,6,23,.34),0 0 0 1px rgba(var(--calendar-day-event-accent,100,116,139),.28)}[data-theme=dark] .calendar-day-view__empty,[data-theme=dark] .calendar-day-view__event-meta{color:rgba(186,204,224,.74)}[data-theme=dark] .calendar-day-view__now-line:after{background:linear-gradient(90deg,rgba(255,138,61,.96),rgba(255,138,61,.24) 52%,rgba(255,138,61,.02))}[data-theme=dark] .calendar-day-view__now-dot{box-shadow:0 0 0 4px rgba(255,138,61,.16),0 2px 10px rgba(255,138,61,.22)}[data-theme=dark] .calendar-day-view__now-label{border-color:rgba(255,138,61,.22);background:rgba(39,24,14,.84);color:#fdba74;box-shadow:0 6px 14px rgba(0,0,0,.18)}.calendar-sidebar{display:flex;flex-direction:column;gap:18px}.calendar-sidebar__card{border-radius:clamp(26px,4vw,32px);border:1.2px solid rgba(148,198,255,.45);background:radial-gradient(120% 140% at 16% -20%,rgba(255,255,255,.92),transparent 70%),radial-gradient(120% 120% at 90% 0,rgba(214,232,255,.32),transparent 80%),linear-gradient(170deg,rgba(255,255,255,.96),rgba(238,244,255,.88));padding:clamp(20px,3vw,28px);box-shadow:0 26px 48px rgba(15,23,42,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}[data-theme=dark] .calendar-sidebar__card{border-color:rgba(118,180,255,.32);background:radial-gradient(120% 140% at 16% -20%,rgba(44,76,126,.34),transparent 68%),radial-gradient(120% 120% at 100% 0,rgba(20,44,88,.4),transparent 82%),linear-gradient(172deg,rgba(9,16,34,.94),rgba(5,10,22,.9));box-shadow:0 24px 52px rgba(2,6,23,.58)}.calendar-sidebar__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.calendar-sidebar__eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.calendar-sidebar__title{margin-top:.35rem;font-size:1.15rem;font-weight:600}.calendar-sidebar__refresh{appearance:none;border:none;background:transparent;color:color-mix(in oklab,var(--brand) 80%,var(--fg));font-size:.8rem;font-weight:600}.calendar-sidebar__list{margin-top:1.4rem;display:flex;flex-direction:column;gap:.85rem}.calendar-sidebar__empty{font-size:.85rem;color:var(--muted)}.calendar-upcoming-item{display:flex;flex-direction:column;gap:.3rem;border-radius:20px;padding:.9rem 1rem;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:linear-gradient(135deg,color-mix(in oklab,var(--card) 95%,transparent),var(--card));text-align:left;transition:transform .18s ease,border-color .18s ease}.calendar-upcoming-item:hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--brand) 25%,var(--border))}.calendar-upcoming-item[data-highlight=true]{transform:translateY(-2px);border-color:color-mix(in oklab,var(--brand) 55%,transparent);box-shadow:0 14px 24px rgba(12,74,82,.2)}.calendar-upcoming-item__type{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;opacity:.7}.calendar-upcoming-item__type[data-tone=appointment]{color:#0f766e}.calendar-upcoming-item__type[data-tone=procedure]{color:#6d28d9}.calendar-upcoming-item__type[data-tone=reminder]{color:#b45309}.calendar-upcoming-item__type[data-tone=other]{color:#475569}.calendar-upcoming-item__title{font-weight:600;font-size:.95rem}.calendar-upcoming-item__meta{font-size:.82rem;color:var(--muted)}.calendar-upcoming-item__location{font-size:.76rem;color:color-mix(in oklab,var(--muted) 80%,var(--fg))}.calendar-sidebar__tip{border-radius:24px;border:1px dashed rgba(12,139,198,.3);padding:1.5rem 1.6rem;background:radial-gradient(120% 120% at 0 0,rgba(12,139,198,.15),transparent 65%),rgba(12,139,198,.08);color:rgba(12,60,96,.9);display:flex;flex-direction:column;gap:.9rem}[data-theme=dark] .calendar-sidebar__tip{border-color:rgba(118,180,255,.32);background:radial-gradient(120% 120% at 0 0,rgba(12,139,198,.22),transparent 68%),rgba(10,26,52,.85);color:rgba(216,235,255,.92)}.calendar-sidebar__tip-actions{display:flex;flex-wrap:wrap;gap:.65rem 1rem;align-items:center}.calendar-sidebar__tip-primary{align-self:flex-start;border-radius:999px;border:1px solid rgba(12,139,198,.32);padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;background:rgba(12,139,198,.12);color:rgba(12,60,96,.92)}.calendar-sidebar__tip-primary:hover{background:rgba(12,139,198,.18)}.calendar-sidebar__tip-link{appearance:none;border:none;background:transparent;font-size:.85rem;font-weight:600;color:rgba(12,60,96,.85);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:0}.calendar-sidebar__tip-link:hover{color:var(--bv-color-info-ink)}[data-theme=dark] .calendar-sidebar__tip-primary{border-color:rgba(118,180,255,.42);background:rgba(118,180,255,.18);color:rgba(222,242,255,.92)}[data-theme=dark] .calendar-sidebar__tip-link{color:rgba(226,241,255,.9)}[data-theme=dark] .calendar-sidebar__tip-link:hover{color:rgba(118,180,255,.9)}.calendar-modal{--calendar-modal-frame-pad:clamp(1rem,5vw,2.6rem);--calendar-modal-top-offset:0px;--calendar-modal-panel-height:min(920px,calc(100vh - var(--calendar-modal-top-offset) - var(--calendar-modal-frame-pad) - var(--calendar-modal-frame-pad)));position:fixed;inset:0;z-index:2600;display:grid;place-items:center;place-content:center;padding:var(--calendar-modal-frame-pad);padding-top:calc(var(--calendar-modal-top-offset) + var(--calendar-modal-frame-pad))}body:has(header[data-app-header]) .calendar-modal{--calendar-modal-top-offset:var(--header-h,64px)}.calendar-modal.calendar-modal--warm-hidden{opacity:0;visibility:hidden;pointer-events:none}.calendar-modal__overlay{position:absolute;inset:0;background:rgba(5,16,24,.55);backdrop-filter:blur(12px)}.calendar-modal__panel{position:relative;z-index:1;justify-self:stretch;width:100%;max-width:1040px;height:var(--calendar-modal-panel-height);max-height:var(--calendar-modal-panel-height);overflow-y:auto;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(255,138,61,.78) rgba(255,138,61,.12);border-radius:36px;padding:clamp(1.3rem,3vw,1.9rem);background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(255,255,255,.72));border:1px solid rgba(255,255,255,.65);box-shadow:0 28px 80px rgba(12,74,82,.26);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);display:flex;flex-direction:column;gap:24px}.calendar-modal__panel.calendar-modal__panel--form-edit{width:min(1040px,calc(100vw - 2 * var(--calendar-modal-frame-pad, 1rem)));max-width:none}@media (max-width:980px){.calendar-modal__panel.calendar-modal__panel--form-edit{width:min(760px,calc(100vw - 2 * var(--calendar-modal-frame-pad, 1rem)))}}.calendar-modal__panel.calendar-modal__panel--event{--calendar-modal-accent-rgb:255,138,61;width:min(1180px,100%);height:min(980px,calc(100vh - var(--calendar-modal-top-offset) - var(--calendar-modal-frame-pad) - var(--calendar-modal-frame-pad)));max-height:min(980px,calc(100vh - var(--calendar-modal-top-offset) - var(--calendar-modal-frame-pad) - var(--calendar-modal-frame-pad)));padding:clamp(1.45rem,3.2vw,2.2rem);gap:clamp(1.1rem,2.4vw,1.7rem);scrollbar-color:rgba(var(--calendar-modal-accent-rgb,255,138,61),.82) rgba(var(--calendar-modal-accent-rgb,255,138,61),.12);background:radial-gradient(120% 120% at 8% -8%,rgba(var(--calendar-modal-accent-rgb,255,138,61),.24),transparent 58%),radial-gradient(120% 120% at 100% 0,rgba(var(--calendar-modal-accent-rgb,255,138,61),.14),transparent 52%),linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.76));border-color:rgba(var(--calendar-modal-accent-rgb,255,138,61),.26);box-shadow:0 36px 92px rgba(var(--calendar-modal-accent-rgb,255,138,61),.18),0 18px 46px rgba(12,74,82,.2)}.calendar-modal__panel.calendar-modal__panel--event::-webkit-scrollbar-thumb{border-color:rgba(255,255,255,.22);background:linear-gradient(180deg,rgba(var(--calendar-modal-accent-rgb,255,138,61),.96),rgba(var(--calendar-modal-accent-rgb,255,138,61),.82));background-clip:padding-box;box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 6px 14px rgba(var(--calendar-modal-accent-rgb,255,138,61),.18)}.calendar-modal__panel.calendar-modal__panel--event::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(var(--calendar-modal-accent-rgb,255,138,61),.98),rgba(var(--calendar-modal-accent-rgb,255,138,61),.9));background-clip:padding-box}.calendar-modal__panel.calendar-modal__panel--event::-webkit-scrollbar-track{background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(var(--calendar-modal-accent-rgb,255,138,61),.12))}.calendar-modal__panel::-webkit-scrollbar{width:12px}.calendar-modal__panel::-webkit-scrollbar-thumb{border-radius:999px;border:3px solid rgba(255,255,255,.22);background:linear-gradient(180deg,rgba(255,168,111,.96),rgba(255,106,43,.9));background-clip:padding-box;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 6px 14px rgba(255,106,43,.18)}.calendar-modal__panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(255,179,127,.98),rgba(255,106,43,.94));background-clip:padding-box}.calendar-modal__panel::-webkit-scrollbar-track{border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.2),rgba(255,138,61,.08));box-shadow:inset 0 0 0 1px rgba(255,255,255,.26)}.calendar-modal__panel::-webkit-scrollbar-corner{background:transparent}[data-theme=dark] .calendar-modal__panel{background:linear-gradient(145deg,rgba(15,23,42,.8),rgba(15,23,42,.62));border-color:rgba(226,232,240,.32);box-shadow:0 30px 78px rgba(0,0,0,.65);scrollbar-color:rgba(255,179,127,.88) rgba(255,138,61,.16)}[data-theme=dark] .calendar-modal__panel.calendar-modal__panel--event{background:radial-gradient(120% 120% at 8% -8%,rgba(var(--calendar-modal-accent-rgb,255,138,61),.2),transparent 56%),radial-gradient(120% 120% at 100% 0,rgba(var(--calendar-modal-accent-rgb,255,138,61),.14),transparent 48%),linear-gradient(145deg,rgba(15,23,42,.88),rgba(15,23,42,.72));border-color:rgba(var(--calendar-modal-accent-rgb,255,138,61),.24);box-shadow:0 34px 88px rgba(0,0,0,.58),0 16px 42px rgba(var(--calendar-modal-accent-rgb,255,138,61),.14);scrollbar-color:rgba(var(--calendar-modal-accent-rgb,255,138,61),.84) rgba(var(--calendar-modal-accent-rgb,255,138,61),.14)}[data-theme=dark] .calendar-modal__panel.calendar-modal__panel--event::-webkit-scrollbar-track{background:linear-gradient(180deg,rgba(15,23,42,.3),rgba(var(--calendar-modal-accent-rgb,255,138,61),.1))}[data-theme=dark] .calendar-modal__panel::-webkit-scrollbar-thumb{border-color:rgba(15,23,42,.24);background:linear-gradient(180deg,rgba(255,190,144,.96),rgba(255,120,64,.9));background-clip:padding-box;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 18px rgba(255,106,43,.24)}[data-theme=dark] .calendar-modal__panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(255,204,164,.98),rgba(255,129,78,.94));background-clip:padding-box}[data-theme=dark] .calendar-modal__panel::-webkit-scrollbar-track{background:linear-gradient(180deg,rgba(15,23,42,.28),rgba(255,138,61,.12));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}[data-theme=dark] .calendar-modal__close{background:transparent;color:#ff7a1a;box-shadow:none;filter:drop-shadow(0 0 7px rgba(255,122,26,.7)) drop-shadow(0 0 20px rgba(255,122,26,.45))}[data-theme=dark] .calendar-modal__close:focus-visible,[data-theme=dark] .calendar-modal__close:hover{background:transparent;color:#ffbf6b;filter:drop-shadow(0 0 10px rgba(255,122,26,.9)) drop-shadow(0 0 26px rgba(255,122,26,.6))}[data-theme=dark] .calendar-modal__close:focus-visible{box-shadow:0 0 0 3px rgba(255,122,26,.5)}.calendar-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.calendar-modal__heading{display:flex;flex-direction:column;gap:.55rem}.calendar-modal__eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.calendar-modal__title{font-size:clamp(1.6rem,2.8vw,2.1rem);font-weight:600;letter-spacing:-.01em}.calendar-modal__subtitle{max-width:38ch;font-size:.95rem;color:color-mix(in oklab,var(--fg) 75%,transparent)}.calendar-modal__close{--calendar-modal-close-size:clamp(3.8rem,4.8vw,4.45rem);align-self:flex-start;width:var(--calendar-modal-close-size);height:var(--calendar-modal-close-size);border:none;border-radius:999px;padding:0;background:transparent;color:#ff7a1a;box-shadow:none;display:grid;place-items:center;flex-shrink:0;cursor:pointer;isolation:isolate;transform-origin:50% 50%;filter:drop-shadow(0 0 6px rgba(255,122,26,.58)) drop-shadow(0 0 18px rgba(255,122,26,.32));transition:transform .22s cubic-bezier(.16,1,.3,1),color .18s ease,filter .22s ease,opacity .24s ease}.calendar-modal__close:focus-visible,.calendar-modal__close:hover{background:transparent;transform:translateY(-1px) scale(1.04);color:#ffb347;filter:drop-shadow(0 0 8px rgba(255,122,26,.8)) drop-shadow(0 0 22px rgba(255,122,26,.5));outline:none}.calendar-modal__close:active{transform:translateY(0) scale(.98);filter:drop-shadow(0 0 6px rgba(255,122,26,.6)) drop-shadow(0 0 16px rgba(255,122,26,.35))}.calendar-modal__close:focus-visible{box-shadow:0 0 0 3px rgba(255,122,26,.4)}.calendar-modal__close svg{width:1.62rem;height:1.62rem;transition:transform .22s ease}.calendar-modal__close:focus-visible svg,.calendar-modal__close:hover svg{transform:rotate(90deg) scale(1.08)}.calendar-modal__body{display:flex;flex-direction:column;gap:20px}.calendar-field{border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:color-mix(in oklab,var(--card) 90%,transparent);padding:.75rem 1rem;font-size:.95rem;color:var(--fg)}.calendar-field:focus{outline:none;border-color:color-mix(in oklab,var(--brand) 45%,transparent);box-shadow:0 0 0 2px color-mix(in oklab,var(--brand) 18%,transparent)}.calendar-field--textarea{resize:vertical;min-height:120px}.calendar-field--compact{padding:.55rem .85rem;border-radius:999px;font-size:.82rem}.calendar-field--pill{padding:.35rem .7rem;border-radius:999px;font-size:.75rem}.calendar-checkbox{appearance:none;width:1.05rem;height:1.05rem;border-radius:4px;border:1px solid color-mix(in oklab,var(--border) 75%,transparent);position:relative;cursor:pointer}.calendar-checkbox:checked{background:var(--brand);border-color:color-mix(in oklab,var(--brand) 80%,transparent)}.calendar-checkbox:checked:after{content:"";position:absolute;inset:2px;border-radius:2px;background:var(--brand-ink-contrast)}.calendar-reminders{border-radius:26px;border:1px solid rgba(148,163,184,.22);background:linear-gradient(145deg,rgba(235,242,245,.8),rgba(229,237,240,.92));box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 10px 28px rgba(15,23,42,.04);padding:1.05rem 1.15rem;display:flex;flex-direction:column;gap:.85rem}.calendar-reminders__toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:.85rem 1rem;align-items:start}.calendar-reminders__intro{display:flex;flex-direction:column;gap:.35rem;max-width:36rem}.calendar-reminders__title{font-size:1rem;font-weight:650;letter-spacing:-.01em}.calendar-reminders__caption{margin:0;max-width:34ch;font-size:.82rem;line-height:1.45;color:color-mix(in oklab,var(--brand) 75%,var(--fg))}.calendar-reminders__controls{display:flex;gap:.7rem;align-items:flex-end;justify-self:end;width:min(100%,420px)}.calendar-reminders__field-stack{flex:1 1 auto;min-width:0;display:grid;gap:.55rem}.calendar-reminders__offset-row{display:grid;grid-template-columns:minmax(86px,112px) minmax(0,1fr);gap:.55rem}.calendar-reminders__controls .calendar-field--compact{width:100%;min-width:0}.calendar-reminders__amount{text-align:center;font-variant-numeric:tabular-nums}.calendar-reminders__add{flex:0 0 auto;margin-bottom:.05rem}.calendar-reminders__list{display:flex;flex-direction:column;gap:.6rem}.calendar-reminders__item{display:flex;justify-content:space-between;align-items:center;gap:.8rem;border-radius:16px;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.76);padding:.65rem .8rem;font-size:.85rem}[data-theme=dark] .calendar-reminders__item{background:rgba(12,32,39,.85);border-color:rgba(15,90,99,.22)}.calendar-reminders__item-text{min-width:0;display:grid;gap:.14rem}.calendar-reminders__item-title{margin:0;font-weight:600}.calendar-reminders__item-meta{margin:0;font-size:.75rem;color:color-mix(in oklab,var(--brand) 65%,var(--fg))}.calendar-reminders__item-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem}.calendar-reminders__remove{border-radius:999px;border:1px solid color-mix(in oklab,var(--brand) 40%,transparent);width:2.1rem;height:2.1rem;color:color-mix(in oklab,var(--brand) 75%,var(--fg));background:transparent}.calendar-reminders__empty{margin:0;max-width:58ch;padding:.8rem .95rem;border-radius:16px;border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.4);font-size:.8rem;line-height:1.5;color:color-mix(in oklab,var(--brand) 70%,var(--fg))}.calendar-readonly-card{min-height:100%}.calendar-readonly-list{display:grid;gap:.75rem}.calendar-readonly-list__item{display:grid;gap:.3rem}.calendar-readonly-list__label{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:color-mix(in oklab,var(--fg) 48%,transparent)}.calendar-readonly-list__value{font-size:.88rem;color:color-mix(in oklab,var(--fg) 88%,transparent)}[data-theme=dark] .calendar-reminders{border-color:rgba(103,232,249,.14);background:linear-gradient(145deg,rgba(15,23,42,.66),rgba(15,23,42,.8));box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 14px 32px rgba(0,0,0,.22)}[data-theme=dark] .calendar-reminders__empty{border-color:rgba(103,232,249,.1);background:rgba(15,23,42,.34)}@media (max-width:860px){.calendar-reminders__toolbar{grid-template-columns:1fr}.calendar-reminders__controls{width:100%;justify-self:stretch;align-items:flex-end}.calendar-reminders__add{margin-bottom:0}.calendar-reminders__item{flex-direction:column;align-items:flex-start}.calendar-reminders__item-actions{width:100%;justify-content:space-between}}@media (max-width:640px){.calendar-reminders__controls{flex-direction:column;align-items:stretch}.calendar-reminders__offset-row{grid-template-columns:minmax(72px,92px) minmax(0,1fr)}.calendar-reminders__add{align-self:flex-end}}.calendar-linked-resource{border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:color-mix(in oklab,var(--card) 95%,transparent);padding:1.05rem 1.2rem;display:flex;flex-direction:column;gap:.9rem}.calendar-linked-resource--editor{border:0;background:transparent;border-radius:0;padding:0}.calendar-linked-resource[data-loading=true]{min-height:clamp(560px,52vw,700px)}.calendar-linked-resource__intro{display:flex;flex-direction:column;gap:.35rem}.calendar-linked-resource__title{font-weight:600;font-size:.92rem}.calendar-linked-resource__hint{margin:0;font-size:.82rem;color:color-mix(in oklab,var(--fg) 60%,transparent)}.calendar-linked-resource__hint--error{color:#d02626}.calendar-linked-resource__loading{display:grid;gap:.95rem;flex:1 1 auto}.calendar-linked-resource__loading-status{display:inline-flex;align-items:center;gap:.55rem;font-size:.82rem;color:color-mix(in oklab,var(--fg) 68%,transparent)}.calendar-linked-resource__loading-card,.calendar-linked-resource__loading-count,.calendar-linked-resource__loading-select,.calendar-linked-resource__loading-title{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(215,226,238,.82),rgba(243,248,252,.94));animation:calendar-pulse 1.5s ease-in-out infinite}.calendar-linked-resource__loading-card:after,.calendar-linked-resource__loading-count:after,.calendar-linked-resource__loading-select:after,.calendar-linked-resource__loading-title:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);transform:translateX(-100%);animation:calendar-linked-resource-shimmer 1.35s ease-in-out infinite}.calendar-linked-resource__loading-select{height:74px;border-radius:20px}.calendar-linked-resource__loading-rail{display:grid;gap:.7rem}.calendar-linked-resource__loading-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.calendar-linked-resource__loading-title{width:84px;height:14px;border-radius:999px}.calendar-linked-resource__loading-count{width:92px;height:26px;border-radius:999px}.calendar-linked-resource__loading-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.calendar-linked-resource__loading-card{min-height:220px;border-radius:26px}[data-theme=dark] .calendar-linked-resource__loading-card,[data-theme=dark] .calendar-linked-resource__loading-count,[data-theme=dark] .calendar-linked-resource__loading-select,[data-theme=dark] .calendar-linked-resource__loading-title{background:linear-gradient(145deg,rgba(47,61,80,.78),rgba(30,41,59,.9))}.calendar-linked-resource__selects{display:grid;gap:.75rem}.calendar-linked-resource__rails{display:flex;flex-direction:column;gap:1.1rem}.calendar-linked-resource--editor .behavior-visual-rail--frame.behavior-visual-rail--centered{padding-inline:0}.calendar-linked-resource .tile-card.human-tile{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.calendar-linked-resource .tile-card.human-tile:before{filter:blur(8px);opacity:.74}.calendar-linked-resource .tile-card.human-tile:after{opacity:.58}.calendar-linked-resource__rail{display:flex;flex-direction:column;gap:.6rem}.calendar-linked-resource__rail-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.calendar-linked-resource__rail-title{font-weight:600;font-size:.86rem}.calendar-linked-resource__rail-count{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.2rem .65rem;border-radius:999px;font-size:.72rem;color:color-mix(in oklab,var(--brand) 70%,var(--fg));border:1px solid color-mix(in oklab,var(--brand) 40%,transparent);background:color-mix(in oklab,var(--card) 90%,transparent)}.calendar-linked-resource__rail-list{--share-grant-rail-gap:clamp(0.6rem,2.2vw,0.95rem);--share-grant-rail-side-pad:clamp(0.45rem,2vw,0.9rem);--share-grant-rail-card:clamp(170px,55vw,210px);--calendar-rail-offset:clamp(0.65rem,2.4vw,1.1rem);--share-grant-rail-view-width:max(0px,calc(100% - 2 * var(--calendar-rail-offset)));--share-grant-rail-center-offset:max(0px,calc((var(--share-grant-rail-view-width) - var(--share-grant-rail-card)) / 2));--share-grant-rail-edge-pad:var(--share-grant-rail-center-offset);margin-left:calc(-1 * var(--calendar-rail-offset));margin-right:calc(-1 * var(--calendar-rail-offset));width:calc(100% + 2 * var(--calendar-rail-offset));padding:clamp(.7rem,3vw,1.2rem) var(--share-grant-rail-side-pad) clamp(.9rem,3vw,1.35rem);padding-left:var(--share-grant-rail-edge-pad);padding-right:var(--share-grant-rail-edge-pad);scroll-padding-inline:var(--calendar-rail-offset);scroll-padding-inline-start:var(--share-grant-rail-edge-pad);scroll-padding-inline-end:var(--share-grant-rail-edge-pad)}.calendar-linked-resource__rail-list .share-grant-scope-rail__item{padding:.35rem;border-radius:24px}.calendar-linked-resource__rail-list .tile-card.animal-tile,.calendar-linked-resource__rail-list .tile-card.human-tile{width:min(100%,200px)!important;min-height:208px!important;border-radius:26px!important;contain-intrinsic-size:220px 220px}.calendar-linked-resource__rail-list .human-tile__inner{padding:clamp(12px,2.2vw,16px)!important}.calendar-linked-resource__rail-list .tile-title{max-width:clamp(128px,50vw,170px);font-size:14px}.calendar-linked-resource__rail-list .human-tile__household{font-size:11px}.calendar-linked-resource__viewer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.calendar-linked-resource__viewer-card.tile-card.animal-tile,.calendar-linked-resource__viewer-card.tile-card.human-tile{width:100%!important;min-height:190px!important;border-radius:24px!important}.calendar-linked-resource__viewer-card .human-tile__inner{padding:clamp(12px,2.2vw,16px)!important}.calendar-linked-resource__viewer-pills{display:flex;flex-wrap:wrap;gap:.55rem}.calendar-linked-resource__viewer-pill{display:inline-flex;align-items:center;min-height:36px;padding:.45rem .85rem;border-radius:999px;border:1px solid color-mix(in oklab,var(--brand) 24%,transparent);background:color-mix(in oklab,var(--brand) 8%,var(--card));font-size:.8rem;color:color-mix(in oklab,var(--fg) 84%,transparent)}.calendar-linked-resource__missing{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.45rem}.calendar-linked-resource__missing-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.78rem}.calendar-linked-resource__missing-remove{border-radius:999px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:color-mix(in oklab,var(--card) 85%,transparent);font-size:.72rem;padding:.2rem .6rem;color:color-mix(in oklab,var(--fg) 70%,transparent);transition:color .18s ease,border-color .18s ease,background .18s ease}.calendar-linked-resource__missing-remove:focus-visible,.calendar-linked-resource__missing-remove:hover{color:var(--brand);border-color:color-mix(in oklab,var(--brand) 70%,transparent);background:color-mix(in oklab,var(--brand) 10%,transparent)}.calendar-linked-resource__retry{margin-left:.75rem;font-size:.78rem;color:var(--brand);background:transparent;border:none;cursor:pointer}.calendar-linked-resource__retry:focus-visible,.calendar-linked-resource__retry:hover{text-decoration:underline}@media (min-width:640px){.calendar-linked-resource__selects{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.calendar-linked-resource[data-loading=true]{min-height:0}.calendar-linked-resource__loading-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.calendar-linked-resource__loading-cards{grid-template-columns:1fr}}@keyframes calendar-linked-resource-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.calendar-modal__error{padding:.9rem 1rem;border-radius:20px;border:1px solid rgba(245,101,101,.35);background:rgba(245,101,101,.12);color:#7f1d1d;font-size:.85rem}.calendar-modal__footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.2rem;padding-top:.7rem;border-top:1px solid rgba(148,163,184,.16)}.calendar-modal__actions{display:flex;gap:.8rem;padding-right:clamp(.45rem,1.6vw,.95rem)}.calendar-modal__spacer{width:1px;height:1px;visibility:hidden}.calendar-modal__save{min-width:168px;height:48px;padding:0 1.15rem 0 .95rem;border-radius:999px;border-color:rgba(249,115,22,.26);background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(255,247,237,.96));color:var(--bv-color-action-strong);box-shadow:0 8px 18px rgba(249,115,22,.08),inset 0 1px 0 rgba(255,255,255,.9);gap:.68rem}.calendar-modal__save:focus-visible,.calendar-modal__save:hover{border-color:rgba(249,115,22,.42);background:linear-gradient(145deg,rgba(255,250,245,.99),rgba(255,237,213,.97));color:#9a3412;box-shadow:0 12px 24px rgba(249,115,22,.12),inset 0 1px 0 rgba(255,255,255,.94)}.calendar-modal__save:disabled{border-color:rgba(249,115,22,.18);background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,247,237,.88));color:rgba(194,65,12,.58);box-shadow:none}.calendar-modal__save-label{font-size:.98rem;font-weight:700;letter-spacing:.01em;line-height:1;white-space:nowrap}[data-theme=dark] .calendar-modal__save{border-color:rgba(251,146,60,.34);background:linear-gradient(145deg,rgba(51,65,85,.92),rgba(30,41,59,.94));color:#fdba74;box-shadow:0 12px 24px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.08)}[data-theme=dark] .calendar-modal__save:focus-visible,[data-theme=dark] .calendar-modal__save:hover{border-color:rgba(253,186,116,.48);background:linear-gradient(145deg,rgba(71,85,105,.94),rgba(30,41,59,.96));color:#ffedd5;box-shadow:0 16px 28px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.1)}[data-theme=dark] .calendar-modal__save:disabled{border-color:rgba(251,146,60,.18);background:linear-gradient(145deg,rgba(51,65,85,.66),rgba(30,41,59,.72));color:rgba(253,186,116,.5)}@media (max-width:980px){.calendar-modal__panel{max-width:760px}}@media (max-width:640px){.calendar-modal{--calendar-modal-frame-pad:1rem}.calendar-hero__content{flex-direction:column}.calendar-grid__row{grid-template-columns:repeat(7,minmax(88px,1fr))}.calendar-month-view,.calendar-week-view__scroller{overflow-x:auto;padding-bottom:.3rem}.calendar-grid,.calendar-grid__week,.calendar-span-grid,.calendar-week-view__bands,.calendar-week-view__timeline,.calendar-weekdays{min-width:680px}.calendar-day-view__bands,.calendar-day-view__timeline{grid-template-columns:3.4rem minmax(0,1fr);gap:.72rem}.calendar-day-view__timeline{--calendar-day-slot-height:2.45rem;max-height:min(68vh,720px)}.calendar-day-view__bands-label{padding-top:.32rem}.calendar-day-view__bands-list,.calendar-day-view__track{width:100%;flex-basis:100%}.calendar-day-view{--calendar-day-hours-width:3.4rem;--calendar-day-track-max-width:100%}.calendar-day-view__summary{width:100%;min-width:0;align-items:flex-start;margin-left:0;text-align:left}.calendar-layout{gap:24px}.calendar-modal__panel{border-radius:28px}.calendar-modal__footer{flex-wrap:wrap}.calendar-modal__actions{width:100%;justify-content:flex-end;padding-right:0}.calendar-modal__save{min-width:152px}}main[data-fast-scroll=true] .calendar-board,main[data-fast-scroll=true] .calendar-filter-popover,main[data-fast-scroll=true] .calendar-modal__overlay,main[data-fast-scroll=true] .calendar-modal__panel,main[data-fast-scroll=true] .calendar-sidebar__card,main[data-fast-scroll=true] .filter-reset-button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:none!important;animation:none!important}main[data-fast-scroll=true] .calendar-board:after,main[data-fast-scroll=true] .calendar-board:before,main[data-fast-scroll=true] .calendar-filter-popover:after,main[data-fast-scroll=true] .calendar-filter-popover:before{filter:none!important;transition:none!important;animation:none!important}