[data-calendar-chooser]{position:relative}[data-calendar-chooser]>summary{display:inline-flex;align-items:center;gap:.65rem;min-height:44px;box-sizing:border-box;padding:.65rem 1.15rem;border-radius:99px;background:var(--calendar-action-background,#222);color:var(--calendar-action-color,white);font-family:inherit;font-size:var(--calendar-trigger-size,.85rem);font-weight:700;line-height:1.65;white-space:nowrap;list-style:none;cursor:pointer}[data-calendar-chooser]>summary::-webkit-details-marker{display:none}[data-calendar-chooser][open]>summary,[data-calendar-chooser]>summary:hover{background:var(--calendar-action-hover,#444)}[data-calendar-chooser] .subscription-menu{position:absolute;top:calc(100% + .6rem);right:0;z-index:20;box-sizing:border-box;width:min(280px,calc(100vw - 48px));background:var(--calendar-menu-background,white);border:1px solid var(--calendar-border,#ddd);border-radius:14px;padding:.5rem;box-shadow:0 10px 30px var(--calendar-shadow,#0002)}[data-calendar-chooser] .subscription-menu a{display:flex;justify-content:space-between;align-items:center;min-height:44px;box-sizing:border-box;padding:.7rem .8rem;color:var(--calendar-link,inherit);text-decoration:none;border-radius:8px}[data-calendar-chooser] .subscription-menu a:hover{background:var(--calendar-menu-hover,#eee)}[data-calendar-chooser] .provider-link{font-weight:650}[data-calendar-chooser] .subscription-menu .subscription-help-link{margin-top:.4rem;border-top:1px solid var(--calendar-border,#ddd);border-radius:0;font-size:.85rem;color:var(--calendar-text,inherit)}[data-calendar-providers]{display:flex;flex-wrap:wrap;gap:.75rem;margin-block:1.5rem}[data-calendar-providers] a{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:48px;box-sizing:border-box;padding:.8rem 1.5rem;border-radius:99px;background:var(--calendar-link,#222);color:var(--calendar-on-link,white);text-decoration:none;font-size:.95rem;font-weight:650}[data-calendar-providers] a:hover{background:var(--calendar-link-hover,#444)}[data-calendar-upcoming]{position:relative;padding:2rem;border-radius:20px;background:var(--calendar-upcoming-background,#222);color:var(--calendar-upcoming-color,white)}[data-calendar-upcoming] h2{color:inherit;font-size:clamp(1.35rem,2.1vw,1.9rem);margin:0 0 1.5rem}[data-calendar-upcoming] .next-tracks{display:grid;grid-template-columns:repeat(var(--calendar-columns,1),minmax(0,1fr));gap:1.5rem;margin-bottom:1.2rem}[data-calendar-upcoming] .next-track{min-width:0}[data-calendar-upcoming] .next-track+.next-track{border-left:1px solid var(--calendar-upcoming-border,#fff4);padding-left:1.5rem}[data-calendar-upcoming] h3{color:inherit;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .8rem}[data-calendar-upcoming] a{display:inline-block;color:inherit;font-size:1.2rem;font-weight:650;text-decoration:none;margin-block:0 .5rem}[data-calendar-upcoming] a:hover{text-decoration:underline}[data-calendar-upcoming] .next-hours{font-size:.9rem;margin:.4rem 0 0}[data-calendar-upcoming] small{display:block;font-size:.73rem}[data-calendar-copy] label{display:block;font-size:.85rem;font-weight:650;margin-bottom:.4rem}[data-calendar-copy] .copy-field{display:flex;gap:.5rem;margin-bottom:.6rem}[data-calendar-copy] input{box-sizing:border-box;width:100%;min-width:0;background:var(--calendar-input-background,white);border:1px solid var(--calendar-input-border,#aaa);border-radius:8px;padding:.8rem;font:.8rem/1.5 ui-monospace,monospace;color:var(--calendar-text,inherit)}[data-calendar-copy] button{cursor:pointer;border:1px solid var(--calendar-link,#222);background:var(--calendar-link,#222);color:var(--calendar-on-link,white);border-radius:8px;padding:.65rem;font:inherit;font-size:.85rem}[data-calendar-copy] [hidden]{display:none!important}[data-calendar-copy-status]{font-size:.8rem;line-height:1.6}@media(max-width:620px){[data-calendar-chooser]>summary{font-size:var(--calendar-trigger-mobile-size,.78rem);padding:.65rem .85rem}[data-calendar-upcoming]{padding:1.5rem}[data-calendar-upcoming] .next-tracks{grid-template-columns:1fr;gap:1rem}[data-calendar-upcoming] .next-track+.next-track{border-left:0;border-top:1px solid var(--calendar-upcoming-border,#fff4);padding:1rem 0 0}[data-calendar-upcoming] h3{margin-bottom:.5rem}}