.calendar-page{gap:var(--sp-4);padding-block:var(--sp-6) 96px;grid-template-columns:minmax(0,1fr);display:grid}.calendar-head{align-items:flex-end;gap:var(--sp-3) var(--sp-6);flex-wrap:wrap;display:flex}.calendar-head h1{margin:0}.calendar-head p{max-width:60ch;margin:var(--sp-1) 0 0;color:var(--ink-2);font-size:var(--fs-lead)}.calendar-head p b{color:var(--foreground);font-weight:var(--fw-semibold)}.calendar-now h2{margin:0 0 var(--sp-2);font-size:var(--fs-body);font-weight:var(--fw-bold)}.calendar-now-cards{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}@media (min-width:768px){.calendar-now-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.calendar-live-card{gap:var(--sp-1) var(--sp-3);padding:14px var(--sp-4);border-radius:var(--r-card);background:var(--card);color:var(--foreground);box-shadow:inset 0 0 0 2px var(--live);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.calendar-live-card>*{grid-column:1}.calendar-live-card [data-slot=badge]{justify-self:start}.calendar-live-card b{font-size:var(--fs-h3);font-weight:var(--fw-bold);overflow-wrap:anywhere;line-height:1.2}.calendar-live-card:hover b{text-underline-offset:3px;text-decoration:underline}.calendar-live-card:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.calendar-live-card small{color:var(--muted-foreground);font-size:var(--fs-ui)}.calendar-now-more{min-height:44px;margin-top:var(--sp-1);color:var(--primary);font-size:var(--fs-ui);font-weight:var(--fw-semibold);text-underline-offset:3px;align-items:center;text-decoration:underline;display:inline-flex}.calendar-live-card svg{width:20px;height:20px;color:var(--primary);grid-area:1/2/span 3}.calendar-head-actions{gap:var(--sp-2);align-items:center;margin-left:auto;display:flex}.calendar-bar{gap:var(--sp-3);display:grid}.calendar-time{gap:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.calendar-time-rule{width:1px;height:24px;margin:0 var(--sp-1);background:var(--input)}.calendar-chips{gap:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.calendar-chips svg{width:14px;height:14px;margin-left:var(--sp-1)}.calendar-chip-popover{width:18rem;max-height:min(26rem,70dvh);overflow-y:auto}.calendar-more-fields{gap:var(--sp-4);display:grid}.calendar-summary{gap:var(--sp-2);flex-wrap:wrap;align-items:center;min-height:36px;display:flex}.calendar-active{gap:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.calendar-active-chip{align-items:center;gap:var(--sp-1-5);min-height:36px;padding:0 10px 0 var(--sp-3);border:1px solid var(--input);border-radius:var(--r-chip);background:var(--secondary);color:var(--foreground);font-size:var(--fs-caption);font-weight:510;display:inline-flex}.calendar-active-chip svg{width:14px;height:14px;color:var(--muted-foreground)}.calendar-clear{min-height:36px;padding:0 var(--sp-1-5);color:var(--primary);font-size:var(--fs-caption);text-underline-offset:3px;font-weight:600;text-decoration:underline}.calendar-total{color:var(--muted-foreground);font-size:var(--fs-caption);margin-left:auto}.calendar-total b{color:var(--foreground);font-weight:600}.calendar-aside{display:none}.calendar-aside-box{gap:var(--sp-2);padding:var(--sp-4);border-radius:var(--r-card);background:var(--card);display:grid}.calendar-aside-box h2{font-size:var(--fs-body);font-weight:var(--fw-bold);margin:0}.calendar-aside-box p{color:var(--muted-foreground);font-size:var(--fs-ui);margin:0}@media (min-width:1024px){.calendar-body:has(>.calendar-aside){gap:var(--sp-8);grid-template-columns:minmax(0,1fr) 320px;align-items:start;display:grid}.calendar-aside{gap:var(--sp-4);display:grid}.calendar-head .calendar-subscribe{display:none}}.calendar-body:has(>.calendar-rail){gap:var(--sp-8);grid-template-columns:272px minmax(0,1fr);align-items:start;display:grid}.calendar-rail{top:calc(var(--app-header-h,0px) + 12px);gap:var(--sp-5);max-height:calc(100dvh - var(--app-header-h,0px) - 24px);padding-right:var(--sp-1);display:grid;position:sticky;overflow-y:auto}.calendar-facet{border:0;gap:2px;margin:0;padding:0;display:grid}.calendar-facet legend{margin-bottom:var(--sp-1-5);color:var(--muted-foreground);font-size:var(--fs-micro);letter-spacing:.06em;text-transform:uppercase;padding:0;font-weight:600}.calendar-option{min-height:40px;padding:0 var(--sp-2);font-size:var(--fs-body);cursor:pointer;border-radius:8px;align-items:center;gap:10px;display:flex}.calendar-option:hover{background:var(--accent)}.calendar-option input{width:18px;height:18px;accent-color:var(--foreground);flex:none}.calendar-option[data-zero]{color:var(--muted-foreground)}.calendar-count{color:var(--muted-foreground);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;margin-left:auto}.calendar-more{min-height:36px;padding:0 var(--sp-2);color:var(--primary);font-size:var(--fs-caption);justify-self:start;font-weight:600}.calendar-results{min-width:0;position:relative}.calendar-results[data-pending] .calendar-list{opacity:.55;transition:opacity var(--dur-fast) var(--ease-standard)}.calendar-progress{z-index:3;background:linear-gradient(90deg, transparent, var(--primary), transparent);background-repeat:no-repeat;background-size:40% 100%;border-radius:2px;height:3px;animation:1.1s linear infinite calendar-sweep;position:absolute;inset:0 0 auto}@keyframes calendar-sweep{0%{background-position:-40% 0}to{background-position:140% 0}}@media (prefers-reduced-motion:reduce){.calendar-progress{background:var(--primary);opacity:.4;animation:none}}.calendar-more-pages{padding:var(--sp-6) 0;justify-content:center;display:flex}.calendar-dock{display:none}.calendar-sheet-head{align-items:center;gap:var(--sp-3);padding:var(--sp-1) var(--sp-4) var(--sp-3);border-bottom:1px solid var(--border);display:flex}.calendar-sheet-head .calendar-clear{margin-left:auto}.calendar-sheet-body{gap:var(--sp-5);padding:var(--sp-4);overscroll-behavior:contain;display:grid;overflow-y:auto}.calendar-sheet-foot{padding:var(--sp-3) var(--sp-4) var(--sp-4);border-top:1px solid var(--border)}@media (max-width:959px){.calendar-body:has(>.calendar-rail){grid-template-columns:minmax(0,1fr)}.calendar-rail{display:none}.calendar-chips{margin-inline:calc(-1 * var(--sp-4));padding:2px var(--sp-4);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.calendar-chips [data-popover]{display:none}.calendar-dock{z-index:40;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4) max(var(--sp-3), env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--background) 30%);display:flex;position:fixed;inset:auto 0 0}}@media (max-width:639px){.calendar-head-actions{width:100%;margin-left:0}}.calendar-month-nav{align-items:center;gap:var(--sp-2);display:flex}.calendar-month-nav p{min-width:10ch;font-size:var(--fs-h3);text-align:center;margin:0;font-weight:680}.calendar-nav-button{border:1px solid var(--input);background:var(--card);border-radius:10px;place-items:center;width:44px;height:44px;display:grid}.calendar-nav-button svg{width:18px;height:18px}.calendar-howto{border:1px solid var(--border);border-radius:12px}.calendar-howto details+details{border-top:1px solid var(--border)}.calendar-howto summary{min-height:44px;font-size:var(--fs-body);cursor:pointer;align-items:center;padding:0 14px;font-weight:600;display:flex}.calendar-howto p{color:var(--muted-foreground);font-size:var(--fs-caption);margin:0;padding:0 14px 14px;line-height:1.55}.calendar-howto a{color:var(--primary);text-underline-offset:3px;font-weight:600;text-decoration:underline}@media (max-width:959px){.calendar-subscribe{display:none}}
