.zp-compact-calendar{--calendar-social:#bd9bff;--calendar-family:#ffba77;--calendar-business:#69d6aa;--calendar-private:#92bfff;--calendar-attending:#66e0dc;box-sizing:border-box;min-width:0;max-width:100%;padding:20px;border:1px solid var(--zp-border);border-radius:16px;background:var(--zp-surface);color:var(--zp-text)}
.zp-compact-calendar *{box-sizing:border-box}
.zp-compact-calendar .zp-calendar-toolbar{margin-bottom:18px}
.zp-compact-calendar .zp-calendar-nav{flex-wrap:wrap;min-width:0;width:100%;gap:8px}
.zp-compact-calendar .zp-calendar-title{margin-right:auto;min-width:0;text-align:left;font-size:23px;order:-1;flex:1 0 100%;color:var(--zp-text)}
.zp-compact-calendar .zp-calendar-nav .zp-button{min-height:40px;min-width:40px}
.zp-compact-calendar .zp-calendar-subtitle{font-size:13px;color:var(--zp-text-soft);margin:8px 0 0}
.zp-compact-calendar #selected-calendar-event{min-width:0!important;max-width:100%;overflow-wrap:anywhere}
.zp-compact-calendar [hidden]{display:none!important}
.zp-compact-calendar .zp-compact-month{border:1px solid var(--zp-border);border-radius:12px;overflow:hidden;background:var(--zp-bg-soft)}
.zp-compact-calendar .zp-calendar-weekdays,.zp-compact-calendar .zp-calendar-grid{min-width:0;grid-template-columns:repeat(7,minmax(0,1fr))}
.zp-compact-calendar .zp-calendar-weekdays{background:var(--zp-surface-2)}
.zp-compact-calendar .zp-calendar-weekday{padding:13px 2px;font:600 11px/1.4 system-ui,sans-serif;letter-spacing:0;text-transform:none;color:var(--zp-text-soft)}
.zp-compact-calendar button.zp-calendar-day{appearance:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:74px;min-width:0;max-width:100%;padding:8px 2px;border:0;border-right:1px solid var(--zp-border);border-bottom:1px solid var(--zp-border);border-radius:0;background:var(--zp-bg-soft);color:var(--zp-text);font:inherit;cursor:pointer;opacity:1}
.zp-compact-calendar button.zp-calendar-day:nth-child(7n){border-right:0}
.zp-compact-calendar button.zp-calendar-day:nth-last-child(-n+7){border-bottom:0}
.zp-compact-calendar button.zp-calendar-day[data-muted="true"]{background:var(--zp-surface-2);color:var(--zp-text-soft)}
.zp-compact-calendar button.zp-calendar-day:hover,.zp-compact-calendar button.zp-calendar-day[aria-pressed="true"]{background:var(--zp-primary-soft);color:var(--zp-primary)}
.zp-compact-calendar button.zp-calendar-day:focus-visible{outline:3px solid var(--zp-primary);outline-offset:-3px;position:relative;z-index:1}
.zp-compact-calendar .zp-calendar-day-number{font:600 17px/26px system-ui,sans-serif;width:28px;height:28px;color:inherit}
.zp-compact-calendar button.zp-calendar-day[data-today="true"] .zp-calendar-day-number{background:var(--zp-primary);color:#071018;border-radius:50%}
.zp-compact-calendar .zp-calendar-dots{display:flex;align-items:center;justify-content:center;gap:4px;min-height:8px}
.zp-compact-calendar .zp-calendar-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--calendar-private)}
.zp-compact-calendar .social{--calendar-category:var(--calendar-social)}
.zp-compact-calendar .family{--calendar-category:var(--calendar-family)}
.zp-compact-calendar .business{--calendar-category:var(--calendar-business)}
.zp-compact-calendar .private{--calendar-category:var(--calendar-private)}
.zp-compact-calendar .attending{--calendar-category:var(--calendar-attending)}
.zp-compact-calendar .zp-calendar-dot,.zp-compact-calendar .zp-calendar-filter-dot{background:var(--calendar-category,var(--calendar-private))}
.zp-compact-calendar .zp-calendar-dot-count{font-size:10px;line-height:12px;color:var(--zp-text-soft)}
.zp-compact-calendar .zp-calendar-filters{gap:14px;margin:16px 0 20px}
.zp-compact-calendar .zp-calendar-filter{padding:0;border:0;background:transparent;font-size:12px;color:var(--zp-text-soft);gap:5px}
.zp-compact-calendar .zp-calendar-filter-dot{width:7px;height:7px}
.zp-compact-calendar .zp-calendar-agenda{border:1px solid var(--zp-border);border-radius:12px;background:var(--zp-bg-soft);padding:20px;min-width:0}
.zp-compact-calendar .zp-calendar-agenda h2{font-size:18px;line-height:1.4;margin:0 0 7px;overflow-wrap:anywhere}
.zp-compact-calendar .zp-agenda-count,.zp-compact-calendar .zp-agenda-empty{font-size:13px;color:var(--zp-text-soft);line-height:1.5;margin:0 0 14px}
.zp-compact-calendar .zp-agenda-empty{padding:12px 0;margin:0}
.zp-compact-calendar .zp-agenda-list{list-style:none;padding:0;margin:0}
.zp-compact-calendar .zp-agenda-row{display:flex;align-items:flex-start;gap:12px;padding:17px 0;border-bottom:1px solid var(--zp-border);min-width:0}
.zp-compact-calendar .zp-agenda-row:last-child{border-bottom:0;padding-bottom:0}
.zp-compact-calendar .zp-agenda-icon{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:10px;background:var(--zp-surface-3);color:var(--calendar-category);font-size:18px}
.zp-compact-calendar .zp-agenda-copy{flex:1;min-width:0;overflow-wrap:anywhere}
.zp-compact-calendar .zp-agenda-copy h3{font-size:15px;line-height:1.4;margin:0 0 6px;color:var(--zp-text)}
.zp-compact-calendar .zp-agenda-copy p{font-size:12px;line-height:1.6;margin:0;color:var(--zp-text-soft)}
.zp-compact-calendar .zp-agenda-copy .zp-agenda-category{margin-top:4px}
.zp-compact-calendar .zp-agenda-details{max-width:100%;min-height:40px;flex-shrink:0;font:600 12px/1.4 system-ui,sans-serif;padding:9px 11px;border-radius:8px;border:1px solid var(--zp-border-strong);color:var(--zp-primary);background:var(--zp-primary-soft);cursor:pointer}
.zp-compact-calendar .zp-calendar-footer{margin:16px 0 0;font-size:12px;line-height:1.6;color:var(--zp-text-soft)}
.zp-compact-calendar .zp-attendee-status{padding:0;margin:5px 0 0;font-size:12px;color:var(--zp-text-soft)}
.zp-calendar-connections-disclosure{margin:18px 0;min-width:0;border:1px solid var(--zp-border);border-radius:12px;background:var(--zp-surface);padding:14px 18px;color:var(--zp-text)}
.zp-calendar-connections-disclosure>summary{cursor:pointer;font-size:14px;font-weight:650}
.zp-calendar-connections-disclosure .zp-calendar-connections{margin:14px 0 0}
@media(max-width:780px){.zp-compact-calendar{padding:16px}.zp-compact-calendar .zp-calendar-title{font-size:22px}.zp-compact-calendar .zp-calendar-day{min-height:68px}.zp-compact-calendar .zp-calendar-nav{width:100%}}
@media(max-width:480px){.zp-compact-calendar{padding:12px}.zp-compact-calendar button.zp-calendar-day{min-height:64px;gap:6px}.zp-compact-calendar .zp-calendar-day-number{font-size:16px}.zp-compact-calendar .zp-calendar-dots{gap:3px}.zp-compact-calendar .zp-calendar-dot{width:6px;height:6px}.zp-compact-calendar .zp-calendar-agenda{padding:15px}.zp-compact-calendar .zp-agenda-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px}.zp-compact-calendar .zp-agenda-details{grid-column:2;justify-self:start;min-height:44px}.zp-compact-calendar .zp-calendar-filters{gap:10px}.zp-compact-calendar .zp-calendar-title{font-size:21px}.zp-compact-calendar .zp-calendar-weekday{font-size:11px}.zp-compact-calendar .zp-calendar-dot-count{font-size:10px}}
