@layer components{.calendar-page{background:var(--color-surface);padding-block:var(--page-top-gap) 0}.calendar-page__inner{width:var(--container-wide-width);margin-inline:auto}.calendar-page__layout{grid-template-columns:minmax(260px,30%) minmax(0,1fr);align-items:start;gap:72px;display:grid}.calendar-page__side{min-width:0}.calendar-page__heading p,.calendar-page__intro-note p{max-width:360px;color:var(--color-muted);font-size:var(--text-base);font-weight:var(--font-weight-regular);line-height:var(--leading-long);margin:0}.calendar-page__heading p+p{margin-top:4px}.calendar-page__title{color:var(--color-ink);font-family:var(--font-brand);font-size:var(--text-page-title);font-weight:var(--font-weight-strong);line-height:var(--leading-title);margin:0}.calendar-page__ornament{width:min(100%,260px);color:var(--color-brand);align-items:center;gap:16px;margin-block:28px 30px;display:flex}.calendar-page__ornament:before{content:"";opacity:.72;border:1px solid;flex:none;width:13px;height:13px;transform:rotate(45deg)}.calendar-page__ornament:after{background:#a7352652;flex:1;height:1px}@supports (color:color-mix(in lab,red,red)){.calendar-page__ornament:after{background:color-mix(in srgb,var(--color-brand) 32%,transparent)}}.calendar-page__ornament:after{content:""}.calendar-page__intro-note{border-top:1px solid var(--color-border);margin-top:68px;padding-top:28px}.calendar-page__intro-note h2,.calendar-today-panel__title{color:var(--color-ink);font-family:var(--font-brand);font-size:var(--text-lg);font-weight:var(--font-weight-regular);margin:0;line-height:1.4}.calendar-page__intro-note h2{margin-bottom:18px}.calendar-today-panel{margin-top:74px}.calendar-today-panel__title{padding-left:12px;position:relative}.calendar-today-panel__title:before{background:var(--color-brand);content:"";width:1px;position:absolute;top:.28em;bottom:.28em;left:0}.calendar-today-panel__list{margin:22px 0 0}.calendar-today-panel__row{border-bottom:1px solid var(--color-border-light);color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-body);grid-template-columns:92px minmax(0,1fr);gap:18px;padding-block:11px;display:grid}.calendar-today-panel__row dd,.calendar-today-panel__row dt{margin:0}.calendar-today-panel__row dt{color:var(--color-faint)}.calendar-today-panel__row dd{min-width:0}.calendar-today-panel__value--accent{color:var(--color-brand)}.calendar-month{min-width:0}.calendar-month__header{grid-template-columns:minmax(180px,1fr) auto minmax(210px,1fr);align-items:start;margin-bottom:30px;display:grid}.calendar-month__nav{grid-column:2;justify-content:center;align-items:start;gap:34px;display:flex}.calendar-month__arrow{width:42px;height:42px;color:var(--color-brand);flex:none}.calendar-month__arrow svg{stroke-width:1.5px;width:22px;height:22px}.calendar-month__title-wrap{text-align:center;min-width:128px}.calendar-month__title{color:var(--color-brand);font-family:var(--font-brand);font-size:var(--text-xl);font-weight:var(--font-weight-medium);line-height:var(--leading-section);margin:0}.calendar-month__year{color:var(--color-muted);font-family:var(--font-brand);font-size:var(--text-base);font-weight:var(--font-weight-regular);margin:11px 0 0;line-height:1.4;position:relative}.calendar-month__year:after,.calendar-month__year:before{vertical-align:middle;background:#e8e2dce0;width:30px;height:1px;margin-inline:12px;display:inline-block}@supports (color:color-mix(in lab,red,red)){.calendar-month__year:after,.calendar-month__year:before{background:color-mix(in srgb,var(--color-border) 88%,transparent)}}.calendar-month__year:after,.calendar-month__year:before{content:""}.calendar-month__selectors{grid-column:3;justify-content:end;gap:18px;display:flex}.calendar-month__select{min-width:104px;font-size:var(--text-sm);height:40px}.calendar-month__unavailable{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-base);line-height:var(--leading-long);text-align:center;margin:0;padding-block:34px}.calendar-month-grid{border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-month-grid__cell,.calendar-month-grid__empty,.calendar-month-grid__weekday{border-right:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light)}.calendar-month-grid__weekday{min-width:0;color:var(--color-muted);font-family:var(--font-text);font-size:var(--text-sm);font-weight:var(--font-weight-regular);text-align:center;padding-block:13px;line-height:1.2}.calendar-month-grid__cell,.calendar-month-grid__empty{min-height:112px}.calendar-month-grid__cell{cursor:pointer;min-width:0;color:var(--color-ink);text-align:center;background:0 0;border-top:0;border-left:0;flex-direction:column;align-items:center;padding:17px 8px 12px;transition:background-color var(--motion-duration-base) var(--motion-ease-standard),color var(--motion-duration-base) var(--motion-ease-standard);display:flex;position:relative}.calendar-month-grid__cell:hover{background:#a7352608}@supports (color:color-mix(in lab,red,red)){.calendar-month-grid__cell:hover{background:color-mix(in srgb,var(--color-brand) 3%,transparent)}}.calendar-month-grid__cell.is-today{background:var(--color-bg-soft)}@supports (color:color-mix(in lab,red,red)){.calendar-month-grid__cell.is-today{background:color-mix(in srgb,var(--color-brand) 5%,var(--color-surface))}}.calendar-month-grid__cell.is-today{outline:1px solid var(--color-brand)}@supports (color:color-mix(in lab,red,red)){.calendar-month-grid__cell.is-today{outline:1px solid color-mix(in srgb,var(--color-brand) 24%,var(--color-border))}}.calendar-month-grid__cell.is-today{outline-offset:-1px}.calendar-month-grid__cell.is-selected:not(.is-today){outline:1px solid var(--color-brand)}@supports (color:color-mix(in lab,red,red)){.calendar-month-grid__cell.is-selected:not(.is-today){outline:1px solid color-mix(in srgb,var(--color-brand) 28%,var(--color-border))}}.calendar-month-grid__cell.is-selected:not(.is-today){outline-offset:-1px}.calendar-month-grid__date{color:var(--color-ink);font-family:var(--font-brand);font-size:var(--text-lg);font-weight:var(--font-weight-medium);line-height:var(--leading-control)}.calendar-month-grid__cell.is-weekend .calendar-month-grid__date{color:var(--color-brand-dark)}@supports (color:color-mix(in lab,red,red)){.calendar-month-grid__cell.is-weekend .calendar-month-grid__date{color:color-mix(in srgb,var(--color-brand) 70%,var(--color-ink))}}.calendar-month-grid__tibetan{color:var(--color-muted);font-family:var(--font-text);font-size:var(--text-xs);font-weight:var(--font-weight-regular);line-height:var(--leading-meta);margin-top:6px}.calendar-month-grid__festival,.calendar-month-grid__marker,.calendar-month-grid__today{overflow-wrap:anywhere;max-width:100%;font-size:var(--text-xxs);line-height:var(--leading-meta);display:block}.calendar-month-grid__marker{color:var(--color-faint);margin-top:4px}.calendar-month-grid__festival{color:var(--color-brand);margin-top:5px}.calendar-month-grid__today{color:var(--color-brand);font-family:var(--font-brand);margin-top:4px}.calendar-month-summary{color:var(--color-muted);grid-template-columns:44px minmax(0,1fr);gap:20px;margin-top:30px;display:grid}.calendar-month-summary:before{border:1px solid var(--color-brand);content:"";opacity:.75;place-self:start center;width:19px;height:19px;transform:translateY(6px) rotate(45deg)}.calendar-month-summary h3{color:var(--color-brand);font-family:var(--font-brand);font-size:var(--text-md);font-weight:var(--font-weight-medium);line-height:var(--leading-section);grid-column:2;margin:0 0 8px}.calendar-month-summary p{max-width:760px;font-size:var(--text-sm);grid-column:2;margin:0}.calendar-month-summary p,.calendar-source-notice{font-weight:var(--font-weight-regular);line-height:1.9}.calendar-source-notice{border-top:1px solid var(--color-border);color:var(--color-faint);font-size:var(--text-xs);margin-top:62px;padding-block:22px 42px}.calendar-source-notice p{margin:0}.calendar-source-notice p+p{margin-top:4px}.calendar-source-notice a{color:var(--color-brand);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}@media (max-width:1100px){.calendar-page__layout{grid-template-columns:minmax(190px,28%) minmax(0,1fr);gap:28px}.calendar-page__title{font-size:var(--text-page-title)}.calendar-page__heading p,.calendar-page__intro-note p{font-size:var(--text-sm)}.calendar-today-panel__row{font-size:var(--text-xs);grid-template-columns:78px minmax(0,1fr);gap:12px}.calendar-month__header{grid-template-columns:minmax(0,1fr);gap:18px}.calendar-month__nav,.calendar-month__selectors{grid-column:1}.calendar-month__selectors{justify-content:center}.calendar-month-grid__cell,.calendar-month-grid__empty{min-height:100px}.calendar-month-grid__date{font-size:var(--text-lg)}}@media (max-width:720px){.calendar-page{padding-top:var(--page-top-gap)}.calendar-page__layout{display:block}.calendar-page__title{font-size:var(--text-page-title)}.calendar-page__ornament{margin-block:22px 24px}.calendar-today-panel{margin-top:42px}.calendar-page__intro-note{margin-top:38px}.calendar-month{margin-top:44px}.calendar-month__nav{gap:18px}.calendar-month__title{font-size:var(--text-xl)}.calendar-month__year{font-size:var(--text-base)}.calendar-month__year:after,.calendar-month__year:before{width:18px;margin-inline:8px}.calendar-month__selectors{gap:12px}.calendar-month__select{min-width:92px;font-size:var(--text-sm)}.calendar-month-grid__weekday{font-size:var(--text-sm);padding-block:10px}.calendar-month-grid__cell,.calendar-month-grid__empty{min-height:76px}.calendar-month-grid__cell{padding:10px 3px 8px}.calendar-month-grid__date{font-size:var(--text-lg)}.calendar-month-grid__tibetan{margin-top:4px}.calendar-month-grid__festival,.calendar-month-grid__marker,.calendar-month-grid__tibetan,.calendar-month-grid__today{font-size:var(--text-xxs);line-height:var(--leading-meta)}.calendar-month-summary{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:24px}.calendar-month-summary:before{justify-self:start;width:15px;height:15px;transform:rotate(45deg)}.calendar-month-summary h3,.calendar-month-summary p{grid-column:1}.calendar-source-notice{margin-top:42px;padding-bottom:32px}}}