main.calendar-doc{width:100%;max-width:calc(820px + 2 * var(--pad-x));margin:48px auto 96px;padding:0 var(--pad-x)}main.calendar-doc .cal-head{margin:24px 0 28px}main.calendar-doc .eyebrow{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--mute-2);font-weight:600;margin:0 0 14px}main.calendar-doc h1{font-size:clamp(32px,5vw,52px);line-height:1;letter-spacing:-.02em;color:var(--ink);margin:0 0 14px;font-weight:700}main.calendar-doc h1:before{content:"/";color:var(--mute-2);font-weight:400;margin-right:.04em}main.calendar-doc .kicker{color:var(--mute);line-height:1.7;margin:0 0 32px;padding-bottom:24px;border-bottom:1px solid var(--line)}main.calendar-doc .cal-stats{list-style:none;padding:0 0 24px;margin:0 0 40px;display:flex;flex-wrap:wrap;gap:24px 36px;border-bottom:1px solid var(--line)}main.calendar-doc .cal-stats li{display:flex;flex-direction:column;gap:2px}main.calendar-doc .cal-stats .num{font-size:22px;color:var(--ink);font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1}main.calendar-doc .cal-stats .label{font-size:10px;color:var(--mute-2);letter-spacing:.1em;text-transform:uppercase}main.calendar-doc .cal-month{margin:0 0 32px}main.calendar-doc .cal-month h2{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:600;margin:0 0 4px;border:0;padding:0}main.calendar-doc .cal-list{list-style:none;padding:0;margin:0}main.calendar-doc .cal-item{border-bottom:1px solid var(--line)}main.calendar-doc .cal-row{display:grid;grid-template-columns:38px 60px 64px 56px 1fr 22px;gap:14px;padding:12px 14px;align-items:center;color:inherit;text-decoration:none;font-variant-numeric:tabular-nums;border-radius:4px;transition:color .16s ease,background .16s ease}main.calendar-doc a.cal-row:hover{background:color-mix(in oklch,var(--ink) 3%,transparent)}main.calendar-doc a.cal-row:hover .cal-title{color:var(--accent, var(--ink))}main.calendar-doc .cal-week{color:var(--mute-2);font-size:11px;letter-spacing:.06em}main.calendar-doc .cal-date{color:var(--mute);font-size:11px}main.calendar-doc .cal-type{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute-2)}main.calendar-doc .cal-type[data-type=course]{color:var(--ink);font-weight:600}main.calendar-doc .cal-pillar{color:var(--mute-2);font-size:11px;letter-spacing:.02em}main.calendar-doc .cal-title{color:var(--ink);font-weight:500;transition:color .16s ease}main.calendar-doc .cal-status{width:10px;height:10px;border-radius:50%;justify-self:end;align-self:center;display:inline-block;box-sizing:border-box}main.calendar-doc .cal-item.pub-live .cal-status{background:#40a35c;box-shadow:0 0 0 3px color-mix(in oklch,oklch(64% .14 150) 18%,transparent)}main.calendar-doc .cal-item.pub-current .cal-status{background:oklch(68% .18 50);box-shadow:0 0 0 3px color-mix(in oklch,oklch(68% .18 50) 22%,transparent)}main.calendar-doc .cal-item.pub-planned .cal-status{width:8px;height:8px;background:color-mix(in oklch,var(--mute-2) 65%,transparent);box-shadow:0 0 0 2px color-mix(in oklch,var(--mute-2) 15%,transparent)}main.calendar-doc .cal-item.is-current .cal-row{background:color-mix(in oklch,var(--ink) 4%,transparent)}main.calendar-doc .cal-item.is-current .cal-title{color:var(--ink);font-weight:600}main.calendar-doc .cal-item.is-planned .cal-title{color:var(--mute);font-weight:400}main.calendar-doc .cal-item.is-planned .cal-row{cursor:default}main.calendar-doc .cal-title-placeholder{filter:blur(3.5px);color:var(--mute-2);user-select:none;font-weight:400}main.calendar-doc .cal-item.is-untitled .cal-pillar,main.calendar-doc .cal-item.is-untitled .cal-type{opacity:.65}main.calendar-doc .cal-item.is-next .cal-pillar,main.calendar-doc .cal-item.is-next .cal-type,main.calendar-doc .cal-item.is-next .cal-date,main.calendar-doc .cal-item.is-next .cal-week{opacity:1;color:var(--ink)}main.calendar-doc .cal-item.is-next .cal-title-placeholder{filter:none;color:var(--mute)}main.calendar-doc .cal-item.is-next .cal-status{width:10px;height:10px;background:oklch(68% .18 50);box-shadow:0 0 0 3px color-mix(in oklch,oklch(68% .18 50) 22%,transparent)}@media(max-width:720px){main.calendar-doc .cal-row{grid-template-columns:32px 56px 1fr 16px;gap:10px;row-gap:4px}main.calendar-doc .cal-type,main.calendar-doc .cal-pillar{display:none}main.calendar-doc .cal-title{grid-column:3 / 4}main.calendar-doc .cal-stats{gap:16px 24px}main.calendar-doc .cal-stats .num{font-size:18px}}
