.calendar-page{--calendar-numeric-font:"Segoe UI", "Helvetica Neue", Arial, var(--font-sans)}.calendar-page .calendar-section-title{width:auto;color:var(--text-sec);font-family:var(--font-sans);letter-spacing:0;align-items:center;gap:9px;margin:0;font-size:16px;font-weight:500;line-height:24px;display:flex}.calendar-page .calendar-section-title svg{color:var(--text-sec);flex-shrink:0}.calendar-page .calendar-title{width:124px;min-width:100px;color:var(--text-main);font-family:var(--calendar-numeric-font);font-variant-numeric:tabular-nums;letter-spacing:0;text-align:center;flex:0 0 124px;font-size:16px;font-weight:500;line-height:28px}.calendar-page .calendar-day-number{z-index:3;border-radius:var(--radius-sm);color:var(--text-main);font-family:var(--calendar-numeric-font);font-variant-numeric:tabular-nums;text-shadow:none;background:0 0;padding:0;font-size:14px;font-weight:500;line-height:20px;position:absolute;top:7px;left:10px}.calendar-page .calendar-panel-date{width:360px;color:var(--text-main);font-family:var(--font-sans);letter-spacing:0;margin:0;font-weight:500}.calendar-panel-date-parts{align-items:center;gap:12px;display:flex}.calendar-panel-date-number{font-family:var(--calendar-numeric-font);font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:18px;font-weight:500;line-height:28px}.calendar-panel-date-context{color:var(--text-sec);flex-direction:column;gap:1px;font-size:12px;font-weight:400;line-height:15px;display:flex}.calendar-panel-date-year{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:11px}.calendar-view{gap:var(--spacing-xl);grid-template-columns:minmax(0,1.75fr) minmax(300px,.92fr);align-items:start;display:grid}.calendar-main{min-width:0;padding:var(--spacing-xl);border:0;border-right:1px solid var(--border-light);box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border-radius:0}.calendar-header{padding:0 0 var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light);align-items:center;display:flex}.calendar-nav{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;width:100%;display:flex}.calendar-nav-btn{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-main);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.calendar-nav-btn:hover{border-color:var(--accent);color:var(--accent)}.calendar-today-btn{height:auto;font-size:.7rem;font-family:var(--font-serif);letter-spacing:.1em;color:var(--text-muted);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0;padding:2px 0}.calendar-today-btn:hover{border-bottom-color:color-mix(in srgb, var(--accent) 45%, transparent);color:var(--primary)}.calendar-month-hint{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:.72rem}.calendar-grid-wrapper{background:color-mix(in srgb, var(--bg-card) 92%, var(--bg));border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:0;display:grid}.calendar-day-header{padding:var(--spacing-xs) var(--spacing-sm);text-align:center;color:var(--text-muted);letter-spacing:.5px;background:var(--bg-surface);border-bottom:1px solid var(--border-light);font-size:.7rem;font-weight:600;font-family:var(--font-sans)}.calendar-day{aspect-ratio:1;min-height:88px;color:var(--text-main);cursor:pointer;transition:background var(--transition-fast), box-shadow var(--transition-fast);border:none;border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light);background:color-mix(in srgb, var(--bg-card) 92%, transparent);font-size:.84rem;font-family:var(--font-sans);padding:0;position:relative;overflow:hidden}.calendar-day:nth-child(7n){border-right:none}.calendar-day:hover{background:var(--bg-hover)}.calendar-day.other-month{color:var(--text-light);background:var(--bg)}.calendar-day.other-month:hover{background:var(--bg-surface)}.calendar-day-has-plans .calendar-day-number{color:var(--bg-card);background:color-mix(in srgb, var(--primary-dark) 55%, transparent);text-shadow:none}.calendar-day-favorites{background:var(--border-light);z-index:1;gap:1px;display:grid;position:absolute;inset:0}.calendar-day-plan-marker{z-index:4;color:var(--accent);opacity:.9;font-size:.78rem;line-height:1;position:absolute;bottom:6px;right:7px}.calendar-day-plan-marker--animate{animation:calendar-plan-pulse var(--transition-normal)}@keyframes calendar-plan-pulse{0%{opacity:.5;transform:scale(.8)}to{opacity:.9;transform:scale(1)}}.calendar-day-favorites.is-count-1{grid-template-rows:1fr;grid-template-columns:1fr}.calendar-day-favorites.is-count-2{grid-template-rows:1fr;grid-template-columns:1fr 1fr}.calendar-day-favorites.is-count-3{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.calendar-day-favorites.is-count-3 .calendar-fav-poster:first-child{grid-row:1/-1}.calendar-day-favorites.is-count-4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.calendar-fav-poster{background:var(--bg-surface);min-width:0;min-height:0;position:relative;overflow:hidden}.calendar-fav-poster-enter{animation:calendar-fav-poster-enter var(--transition-normal) both}@keyframes calendar-fav-poster-enter{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.calendar-fav-poster img{object-fit:cover;filter:saturate(.86);opacity:.94;width:100%;height:100%;display:block}.calendar-fav-poster--fallback{background:color-mix(in srgb, var(--primary) 8%, var(--bg-surface));justify-content:center;align-items:center;display:flex}.calendar-fav-poster--fallback span{font-family:var(--font-display);color:var(--primary);font-size:.62rem}.calendar-fav-poster-fallback{background:color-mix(in srgb, var(--primary) 8%, var(--bg-surface));width:100%;height:100%;color:var(--primary);font-family:var(--font-display);justify-content:center;align-items:center;font-size:.62rem;display:flex}.calendar-fav-more{z-index:4;border-radius:var(--radius-sm);background:color-mix(in srgb, var(--primary-dark) 72%, transparent);color:var(--bg-card);padding:1px 5px;font-size:.55rem;font-weight:600;line-height:1.2;position:absolute;bottom:4px;right:4px}.calendar-day-public-hint{z-index:4;color:var(--text-sec);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--bg-card) 88%, transparent);padding:1px 4px;font-size:.55rem;line-height:1;position:absolute;bottom:4px;right:5px}.calendar-day-public-hint:after{content:attr(data-count)}.calendar-day-has-plans .calendar-day-public-hint{left:5px;right:auto}.calendar-day-public-hint--muted{opacity:.75}.calendar-day-public-hint--dot{background:var(--semantic-ongoing);border-radius:50%;width:5px;height:5px;padding:0}.calendar-day.today .calendar-day-number{color:var(--primary);font-weight:700}.calendar-day.today:not(.calendar-day-has-plans) .calendar-day-number{box-shadow:inset 0 0 0 1px var(--primary)}.calendar-day.calendar-day-has-plans{background:var(--bg-surface)}.calendar-day.calendar-day-selected{box-shadow:inset 0 0 0 2px var(--primary)}.calendar-day.calendar-day-selected.today,.calendar-day.calendar-day-has-plans.today{box-shadow:inset 0 0 0 2px var(--accent)}.calendar-day-panel,.calendar-side-panel{top:var(--spacing-lg);gap:var(--spacing-md);min-width:0;max-height:calc(100vh - var(--spacing-3xl) - 96px);flex-direction:column;align-self:start;display:flex;position:sticky;overflow:hidden}.selected-date-events{border:0;border-left:1px solid var(--border-light);-webkit-backdrop-filter:none;min-height:0;box-shadow:none;background:0 0;border-radius:0;flex-direction:column;flex:0 auto;margin-top:0;display:flex;overflow:hidden}.calendar-side-panel-header{padding:var(--spacing-md) var(--spacing-md) var(--spacing-sm);border-bottom:1px solid var(--border-light);flex-shrink:0}.calendar-panel-count{color:var(--text-sec);margin:0;font-size:.78rem}.calendar-side-panel-body{overscroll-behavior:contain;flex:0 auto;min-height:0;max-height:min(52vh,420px);overflow-y:auto}.calendar-day-events{padding:var(--spacing-sm);padding-right:calc(var(--spacing-sm) + 6px);gap:var(--spacing-md);flex-direction:column;min-height:4.5rem;display:flex}.calendar-day-events-group-title{margin:0 0 var(--spacing-xs);color:var(--text-sec);letter-spacing:.04em;font-size:.72rem;font-weight:600}.calendar-day-events-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.calendar-day-event{padding:var(--spacing-sm) 0;border:0;border-bottom:1px solid var(--border-light);background:0 0;border-radius:0;flex-direction:column;gap:6px;display:flex}.calendar-day-event-main{text-align:left;cursor:pointer;width:100%;font-family:var(--font-sans);background:0 0;border:none;gap:.75rem;padding:0;display:flex}.calendar-day-event-thumb{aspect-ratio:5/7;object-fit:cover;object-position:center 22%;background:var(--bg-surface);width:2.75rem;height:auto;box-shadow:none;filter:grayscale(.18)saturate(.8)contrast(.97);border-radius:0;flex:0 0 2.75rem}.calendar-day-event-thumb--fallback{font-family:var(--font-serif);letter-spacing:.06em;color:var(--text-sec);background:var(--bg-surface);border:0;justify-content:center;align-items:center;font-size:.58rem;font-weight:500;display:flex}.calendar-day-event-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.calendar-day-event-time{font-family:var(--font-display);letter-spacing:.04em;color:var(--text-sec);font-size:.72rem;font-weight:500}.calendar-day-event-title{font-family:var(--font-serif);color:var(--text-main);letter-spacing:.02em;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;font-weight:400;line-height:1.4;display:-webkit-box;overflow:hidden}.calendar-day-event-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;overflow:hidden}.calendar-day-event-actions{align-items:center;gap:var(--spacing-xs);padding-left:3.5rem;display:flex}.calendar-event-action{font-size:.66rem;font-family:var(--font-serif);letter-spacing:.08em;cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast);border-radius:0;padding:2px 0}.calendar-event-action--join{border:0;border-bottom:1px solid color-mix(in srgb, var(--accent) 45%, transparent);color:var(--primary);background:0 0}.calendar-event-action--join:hover{border-bottom-color:var(--accent);color:var(--primary-dark);background:0 0}.calendar-event-action--joined{color:var(--text-light);cursor:default;background:0 0;border:none}.calendar-event-action--remove{color:var(--text-muted);background:0 0;border:0;border-bottom:1px solid #0000}.calendar-event-action--remove:hover{color:var(--semantic-danger);border-bottom-color:color-mix(in srgb, var(--semantic-danger) 40%, transparent)}.calendar-panel-footer{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);border-top:1px solid var(--border-light);flex-shrink:0}@media (max-width:1024px){.calendar-view{grid-template-columns:1fr}.calendar-day-panel,.calendar-side-panel{max-height:none;position:static}}.calendar-page{padding:2.5rem 0 7rem}.calendar-shell{width:min(1120px,100% - 3rem);margin:0 auto}.calendar-page-header{justify-content:space-between;align-items:end;gap:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-light);display:flex}.calendar-page-kicker{margin:0 0 var(--spacing-xs);font-family:var(--font-sans);letter-spacing:.1em;color:var(--accent-dark);font-size:.7rem;font-weight:600}.calendar-page-intro{max-width:18rem;color:var(--text-sec);margin:0;font-size:.88rem;line-height:1.6}.calendar-page .calendar-view{gap:var(--spacing-lg);margin-top:var(--spacing-lg);grid-template-columns:minmax(0,1.45fr) minmax(280px,.68fr)}.calendar-page .calendar-main{padding:var(--spacing-lg);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-card);box-shadow:var(--shadow-sm)}.calendar-page .calendar-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.calendar-page .calendar-nav{gap:var(--spacing-sm)}.calendar-page .calendar-nav-btn{border-color:var(--border);border-radius:var(--radius-full);width:36px;height:36px;font-size:1.1rem}.calendar-page .calendar-nav-btn:hover{border-color:var(--border-focus);color:var(--primary)}.calendar-page .calendar-today-btn{border:1px solid var(--border);border-radius:var(--radius-full);min-height:32px;font-family:var(--font-sans);letter-spacing:0;color:var(--text-sec);padding:0 10px;font-size:.74rem;font-weight:600}.calendar-page .calendar-today-btn:hover{border-color:var(--border-focus);color:var(--primary)}.calendar-page .calendar-month-hint{font-size:.74rem}.calendar-page .calendar-grid-wrapper{border-color:var(--border);border-radius:var(--radius-lg)}.calendar-page .calendar-day-header{padding:9px var(--spacing-sm);letter-spacing:0;font-size:.68rem}.calendar-page .calendar-day{aspect-ratio:auto;min-height:82px}.calendar-page .calendar-day:hover{background:var(--bg-hover)}.calendar-page .calendar-day.calendar-day-selected{box-shadow:inset 0 0 0 2px var(--accent)}.calendar-page .selected-date-events{border:1px solid var(--border);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--bg-card) 84%, transparent);box-shadow:var(--shadow-sm)}.calendar-page .calendar-side-panel-header{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md)}.calendar-page .calendar-panel-count,.calendar-page .calendar-day-events-group-title{font-family:var(--font-sans);letter-spacing:0}.calendar-page .calendar-day-event{padding:var(--spacing-sm);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-hover)}.calendar-page .calendar-day-event-thumb{border-radius:var(--radius-sm);filter:none;flex-basis:48px;width:48px}.calendar-page .calendar-day-event-title{font-size:.9rem;font-weight:650}.calendar-page .calendar-event-action{font-size:.72rem;font-weight:600}.calendar-page .calendar-nav-btn:focus-visible,.calendar-page .calendar-today-btn:focus-visible,.calendar-page .calendar-day:focus-visible,.calendar-page .calendar-day-event-main:focus-visible{outline:2px solid var(--border-focus);outline-offset:3px}@media (max-width:1024px){.calendar-page .calendar-view{grid-template-columns:1fr}.calendar-page .calendar-day-panel{position:static}}@media (max-width:640px){.calendar-page{padding-top:var(--spacing-lg)}.calendar-shell{width:min(100% - 2rem,36rem)}.calendar-page-header{align-items:start;gap:var(--spacing-sm);padding-bottom:var(--spacing-md);flex-direction:column}.calendar-page-intro{max-width:28rem;font-size:.82rem}.calendar-page .calendar-main{padding:var(--spacing-md)}.calendar-page .calendar-header{margin-bottom:var(--spacing-md)}.calendar-page .calendar-month-hint{display:none}.calendar-page .calendar-day{min-height:50px}.calendar-page .calendar-day-header{padding:7px 0}.calendar-page .calendar-side-panel-header{padding:var(--spacing-md)}}.calendar-page{min-height:940px;padding:0 0 var(--shell-dock-clearance);background:var(--bg);overflow-x:clip}.calendar-page .calendar-shell{width:min(1312px,100% - 128px);max-width:none;margin:0 auto;padding-top:112px}.calendar-page .calendar-page-header{border:0;height:48px;padding:0;display:block}.calendar-page .calendar-page-kicker{width:320px;color:var(--accent);font-family:var(--font-sans);letter-spacing:0;text-transform:none;margin:0 0 8px;font-size:12px;font-weight:500;line-height:18px}.calendar-page .calendar-page-intro{width:620px;max-width:none;color:var(--text-sec);font-family:var(--font-sans);margin:0;font-size:14px;line-height:22px}.calendar-page .calendar-view{grid-template-columns:858px 430px;gap:24px;width:1312px;height:638px;margin:0;display:grid}.calendar-page .calendar-main{width:858px;height:638px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;overflow:hidden}.calendar-page .calendar-header{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);height:56px;margin:0 0 12px;padding:0}.calendar-page .calendar-nav{align-items:center;gap:12px;height:100%;padding:5px 7px;display:flex}.calendar-page .calendar-nav-btn{border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-main);font-family:var(--font-sans);background:0 0;border:0;flex:0 0 44px;font-size:20px}.calendar-page .calendar-today-btn{display:none}.calendar-page .calendar-month-hint{width:280px;color:var(--text-sec);font-family:var(--font-sans);margin-left:0;font-size:14px;line-height:22px;display:block}.calendar-page .calendar-grid-wrapper{background:0 0;border:0;border-radius:0;height:560px;padding:0;overflow:hidden}.calendar-page .calendar-grid{grid-template-rows:40px repeat(5,104px);grid-template-columns:repeat(7,1fr);gap:0;width:858px;height:560px;display:grid}.calendar-page .calendar-grid.calendar-grid--six-weeks{grid-template-rows:40px repeat(6,86.6667px)}.calendar-page .calendar-grid.calendar-grid--six-weeks .calendar-day{height:86.6667px;min-height:86.6667px}.calendar-page .calendar-day-header{height:28px;color:var(--text-sec);font-family:var(--font-sans);text-align:left;border:0;align-items:center;padding:0;font-size:12px;font-weight:600;line-height:18px;display:flex}.calendar-page .calendar-day{border:0;border-top:1px solid var(--border-light);border-left:1px solid var(--border-light);background:var(--bg);border-radius:0;height:104px;min-height:104px;overflow:hidden}.calendar-page .calendar-day:nth-child(7n){border-right:1px solid var(--border-light)}.calendar-page .calendar-day:nth-last-child(-n+7){border-bottom:1px solid var(--border-light)}.calendar-page .calendar-day.other-month{background:var(--bg-hover)}.calendar-page .calendar-day.calendar-day-selected{z-index:2;box-shadow:inset 0 0 0 2px var(--semantic-success);border-radius:4px}.calendar-page .calendar-day.calendar-day-has-ongoing:not(.other-month):after{border-radius:var(--radius-full);background:var(--semantic-ongoing);content:"";opacity:.85;width:20px;height:3px;position:absolute;bottom:10px;left:10px}.calendar-page .calendar-day.calendar-day-has-closing:not(.other-month):after{background:var(--semantic-danger);opacity:.95;width:28px}.calendar-page .calendar-day-public-hint{color:var(--text-main);font-family:var(--font-sans);font-size:11px;line-height:14px;bottom:8px;right:8px}.calendar-page .calendar-day-panel,.calendar-page .calendar-side-panel{width:430px;height:auto;max-height:638px;position:static}.calendar-page .selected-date-events{border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--bg-surface) 90%, transparent);width:430px;height:auto;min-height:280px;max-height:638px;box-shadow:0 9px 26px color-mix(in srgb, var(--primary) 7%, transparent);-webkit-backdrop-filter:blur(15px);flex-direction:column;gap:10px;padding:16px;display:flex;overflow:hidden}.calendar-page .calendar-side-panel-header{border:0;flex-direction:column;flex:0 0 70px;gap:4px;height:70px;padding:0;display:flex}.calendar-page .calendar-panel-label{width:360px;color:var(--accent);font-family:var(--font-sans);margin:0;font-size:12px;font-weight:500;line-height:18px}.calendar-page .calendar-panel-count{width:360px;color:var(--text-sec);font-family:var(--font-sans);margin:0;font-size:14px;line-height:22px}.calendar-day-poster-field{border:1px solid var(--border);background:var(--bg-surface);border-radius:12px;flex:0 0 160px;justify-content:center;align-items:center;gap:10px;width:398px;height:160px;padding:10px;display:flex;overflow:hidden}.calendar-day-poster{border-radius:var(--spacing-sm);width:119px;height:140px;color:var(--text-sec);font-family:var(--font-sans);flex:1 1 0;justify-content:center;align-items:center;font-size:11px;line-height:16px;display:flex;overflow:hidden}.calendar-day-poster img{object-fit:contain;width:100%;height:100%}.calendar-page .calendar-side-panel-body{scrollbar-gutter:stable;border:0;flex:auto;min-height:0;overflow:hidden auto}.calendar-page .calendar-day-events{padding:0}.calendar-page .calendar-day-events-group-title{display:none}.calendar-page .calendar-day-events-group+.calendar-day-events-group{margin-top:10px}.calendar-page .calendar-day-events-list{gap:10px}.calendar-page .calendar-day-event{border:0;border-bottom:1px solid var(--border-light);background:0 0;border-radius:0;flex-direction:row;align-items:center;gap:8px;width:100%;min-width:0;min-height:96px;padding:8px 0;display:flex;overflow:hidden}.calendar-page .calendar-day-event-main{flex:auto;align-items:center;gap:12px;min-width:0;padding:0;display:flex}.calendar-page .calendar-day-event-thumb{border:1px solid var(--border-light);border-radius:var(--radius-sm);object-fit:cover;object-position:center;filter:none;flex:0 0 54px;width:54px;height:76px;display:flex}.calendar-page .calendar-day-event-body{flex-direction:column;gap:5px;min-width:0;display:flex}.calendar-page .calendar-day-event-time,.calendar-page .calendar-day-event-title,.calendar-page .calendar-event-action{font-family:var(--font-sans);letter-spacing:0}.calendar-page .calendar-event-action--plan{border-radius:var(--radius-md);width:44px;min-height:54px;color:var(--primary);border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:20px;line-height:1;display:inline-flex}.calendar-page .calendar-event-action--plan:hover{border-color:var(--border-light);background:var(--bg-hover)}.calendar-page .calendar-event-action--plan.is-planned{color:var(--accent)}.calendar-page .calendar-event-action--plan:focus-visible{outline:2px solid var(--border-focus);outline-offset:3px}.calendar-page .calendar-day-event-time{color:var(--text-sec);font-size:12px;font-weight:500;line-height:18px}.calendar-page .calendar-day-event-title{color:var(--text-main);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:600;line-height:21px;display:-webkit-box;overflow:hidden}.calendar-page .calendar-day-event-meta{display:none}.calendar-page .calendar-day-event-meta--range{color:var(--text-sec);display:block}.calendar-page .calendar-day-event[data-status=postponed] .calendar-day-event-meta,.calendar-page .calendar-day-event[data-status=cancelled] .calendar-day-event-meta{display:block}.calendar-page .calendar-day-event-actions{flex:0 0 44px;justify-content:flex-end;align-items:center;padding:0;display:flex}.calendar-page .calendar-event-action{color:var(--text-sec);background:0 0;border:0;padding:0;font-size:12px;font-weight:500;line-height:18px}.calendar-page .calendar-event-action-label{white-space:nowrap;font-size:10px;font-weight:500;line-height:12px}.calendar-page .calendar-event-action--joined{color:var(--accent)}.calendar-page .calendar-panel-footer{display:none}@media (min-width:769px) and (max-width:1119px){.calendar-page .calendar-view{grid-template-columns:1fr;width:100%;height:auto}.calendar-page .calendar-main,.calendar-page .calendar-grid-wrapper,.calendar-page .calendar-grid{width:100%}.calendar-page .calendar-day-panel,.calendar-page .calendar-side-panel,.calendar-page .selected-date-events{width:100%;height:auto}.calendar-page .selected-date-events{min-height:280px;overflow:visible}.calendar-page .calendar-side-panel-body{max-height:none;overflow:visible}.calendar-page .calendar-panel-label,.calendar-page .calendar-panel-date,.calendar-page .calendar-panel-count,.calendar-day-poster-field,.calendar-page .calendar-day-event{width:100%}}@media (min-width:1120px) and (max-width:1399px){.calendar-page .calendar-view{grid-template-columns:minmax(0,1fr) clamp(340px,36%,430px);width:100%;height:638px}.calendar-page .calendar-main,.calendar-page .calendar-grid-wrapper,.calendar-page .calendar-grid{width:100%}.calendar-page .calendar-day-panel,.calendar-page .calendar-side-panel,.calendar-page .selected-date-events{width:100%;height:auto}.calendar-page .calendar-panel-label,.calendar-page .calendar-panel-date,.calendar-page .calendar-panel-count,.calendar-day-poster-field,.calendar-page .calendar-day-event{width:100%}}@media (max-width:768px){.calendar-page{min-height:920px;padding:0 0 80px}.calendar-page .calendar-shell{width:calc(100% - 48px);margin:0 24px;padding-top:82px}.calendar-page .calendar-page-header{height:48px;padding:0}.calendar-page .calendar-page-kicker,.calendar-page .calendar-section-title,.calendar-page .calendar-page-intro{width:100%}.calendar-page .calendar-page-intro{font-size:13px;line-height:20px}.calendar-page .calendar-view{flex-direction:column;gap:16px;width:100%;height:auto;display:flex}.calendar-page .calendar-main{width:100%;height:366px}.calendar-page .calendar-grid.calendar-grid--six-weeks{grid-template-rows:34px repeat(6,45px)}.calendar-page .calendar-grid.calendar-grid--six-weeks .calendar-day{height:45px;min-height:45px}.calendar-page .calendar-header{height:46px;margin-bottom:16px}.calendar-page .calendar-nav{gap:8px;padding:1px}.calendar-page .calendar-nav-btn{flex-basis:44px;width:44px;height:44px}.calendar-page .calendar-month-hint{display:none}.calendar-page .calendar-grid-wrapper,.calendar-page .calendar-grid{width:100%;height:304px}.calendar-page .calendar-grid{grid-template-rows:34px repeat(5,54px)}.calendar-page .calendar-day-header{justify-content:center;height:18px;font-size:11px}.calendar-page .calendar-day{height:54px;min-height:54px}.calendar-page .calendar-day-favorites{height:54px;top:0}.calendar-page .calendar-day-panel,.calendar-page .calendar-side-panel,.calendar-page .selected-date-events{width:100%;height:auto;max-height:none}.calendar-page .selected-date-events{gap:6px;padding:16px;overflow:visible}.calendar-page .calendar-side-panel-body{max-height:none;overflow:visible}.calendar-page .calendar-side-panel-header{flex-basis:80px;height:80px}.calendar-page .calendar-panel-label,.calendar-page .calendar-panel-date,.calendar-page .calendar-panel-count{width:100%}.calendar-day-poster-field{display:none}.calendar-page .calendar-day-events{flex-direction:column;gap:6px;display:flex}.calendar-page .calendar-day-events-group+.calendar-day-events-group{margin-top:6px}.calendar-page .calendar-day-events-list{gap:6px}.calendar-page .calendar-day-event{gap:6px;width:100%;min-height:76px;padding:7px 0}.calendar-page .calendar-day-event-main{gap:10px;padding:0}.calendar-page .calendar-day-event-thumb{object-fit:cover;flex:0 0 42px;width:42px;height:58px;display:flex}.calendar-page .calendar-day-event-body{min-width:0}.calendar-page .calendar-day-event-time,.calendar-page .calendar-event-action{font-size:11px;line-height:16px}.calendar-page .calendar-day-event-title{font-size:13px;line-height:18px}.calendar-page .calendar-day-event-actions{flex-basis:40px}.calendar-page .calendar-event-action--plan{width:40px;min-height:48px}.calendar-page .calendar-event-action-label{font-size:9px}}body:has(.calendar-page) .shell-content-offset{padding-bottom:var(--shell-dock-clearance)!important}.calendar-page .calendar-header{border-radius:var(--radius-lg);background:var(--bg-card)}.calendar-page .calendar-nav-btn{background:var(--bg-surface)}.calendar-page .calendar-nav-btn:hover{background:var(--primary);color:var(--bg-card)}.calendar-page .calendar-today-btn{min-height:44px;color:var(--text-main);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;padding:0 12px;font-size:13px;display:inline-flex}.calendar-page .calendar-month-hint{width:auto;margin-left:auto;padding-right:12px;font-size:13px}.calendar-page .calendar-side-panel{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow-sm)}.calendar-page .calendar-day-event-time{color:var(--text-sec);font-size:13px;line-height:20px}.calendar-page .calendar-day.calendar-day-selected{box-shadow:inset 0 0 0 2px var(--primary);background:color-mix(in srgb, var(--primary) 5%, var(--bg-card))}.calendar-page .calendar-day.calendar-day-selected .calendar-day-number{background:var(--primary);color:var(--bg-card);border-color:var(--primary)}.calendar-page .calendar-day-event:focus-within{background:var(--bg-hover)}.calendar-page .selected-date-events{background:var(--bg-card);border-color:var(--border-light);box-shadow:0 12px 40px color-mix(in srgb, var(--primary) 5%, transparent)}.calendar-page .calendar-header{border-color:var(--border-light);box-shadow:0 6px 24px color-mix(in srgb, var(--primary) 3%, transparent)}.calendar-page .calendar-day.calendar-day-selected .calendar-day-number,.calendar-page .calendar-day.calendar-day-has-plans .calendar-day-number{padding:1px 5px}.calendar-page .calendar-day.calendar-day-has-ongoing:not(.other-month){background:color-mix(in srgb, var(--primary) 5%, var(--bg))}.calendar-page .calendar-day.calendar-day-has-ongoing:not(.other-month):after{display:none}.calendar-page .calendar-day.calendar-day-has-closing:not(.other-month):after{border-radius:var(--radius-full);opacity:1;width:6px;height:6px;display:block}.calendar-page .calendar-day-public-hint{background:0 0;font-size:12px;line-height:17px}.calendar-page .calendar-day-header{font-size:13px;font-weight:500}.calendar-page .calendar-side-panel-header{flex-basis:auto;height:auto;min-height:78px}.calendar-page .calendar-day-event-title{font-size:16px;line-height:23px}.calendar-page .calendar-day-event-time{font-size:13px;line-height:19px}.calendar-page .selected-date-events{box-shadow:0 8px 28px color-mix(in srgb, var(--primary) 4%, transparent)}@media (max-width:768px){.calendar-page .calendar-title{flex:1;width:auto;line-height:22px}.calendar-page .calendar-day-number{top:6px;left:8px}.calendar-page .calendar-nav{gap:6px}.calendar-page .calendar-today-btn{padding:0 10px}.calendar-page .calendar-month-hint{display:none}.calendar-page .calendar-day-event-time{font-size:12px;line-height:18px}.calendar-page .calendar-day-event{gap:10px;padding:14px 0}.calendar-page .calendar-event-action-label{font-size:11px;line-height:16px}.calendar-page .calendar-day-event-actions{flex-basis:48px}.calendar-page .calendar-event-action--plan{width:48px}.calendar-page .calendar-day-public-hint{font-size:11px;bottom:5px;right:6px}.calendar-page .calendar-day-header{font-size:12px}.calendar-page .calendar-day-event-title{font-size:16px;line-height:23px}}
/*# sourceMappingURL=0bskwd9gct4eb.css.map*/