/* Theme tokens are optional; the calendar also works with another theme. */
.mm-sc{--mm-sc-day-gap:1.25rem;--mm-sc-service-gap:.75rem;--mm-sc-detail-gap:.375rem;--mm-sc-date-gap:.5rem;--mm-sc-time-width:4em;--mm-sc-line:var(--mm-ui-border,#c5c5c5);--mm-sc-muted:var(--text-secondary,#555);font:inherit;color:inherit;width:100%;max-width:var(--mm-content-width,100%);min-width:0}
.mm-sc .mm-sc-day{position:relative;padding-bottom:var(--mm-sc-day-gap)}
.mm-sc .mm-sc-date{display:flex;align-items:center;gap:1rem;position:sticky;top:0;z-index:4;margin:0 0 var(--mm-sc-date-gap);padding:.375rem 0;background:var(--panel,#fff);font-size:var(--mm-type-small,.875rem);font-weight:500;line-height:1.5}
.mm-sc .mm-sc-date::after{content:"";flex:1;min-width:0;border-top:1px solid var(--mm-sc-line)}
body.admin-bar .mm-sc .mm-sc-date{top:32px}
.mm-sc .mm-sc-day-label{margin:0 0 var(--mm-sc-detail-gap) var(--mm-content-indent,1.5rem);font-weight:500}
.mm-sc .mm-sc-services{list-style:none;margin:0 0 0 var(--mm-content-indent,1.5rem);padding:0}
.mm-sc .mm-sc-service{display:grid;grid-template-columns:var(--mm-sc-time-width) minmax(0,1fr);gap:.75rem;margin:0;padding:0;overflow-wrap:anywhere}
.mm-sc .mm-sc-service+.mm-sc-service{margin-top:var(--mm-sc-service-gap)}
.mm-sc .mm-sc-time{font-size:var(--mm-type-body,1rem);font-weight:500;line-height:1.5}
.mm-sc .mm-sc-title{margin:0;font-size:var(--mm-type-h3,1.25rem);font-weight:500;line-height:1.25}
.mm-sc .mm-sc-note,.mm-sc .mm-sc-status{margin:var(--mm-sc-detail-gap) 0 0;font-size:var(--mm-type-body,1rem);line-height:1.5;color:var(--mm-sc-muted)}
.mm-sc .mm-sc-status{font-weight:500}
.mm-sc .mm-sc-cancelled .mm-sc-title{color:var(--mm-sc-muted)}
.mm-sc .mm-sc-add{display:inline-block;margin-top:var(--mm-sc-detail-gap);font-size:var(--mm-type-small,.875rem);color:var(--mm-sc-muted);text-decoration:underline;text-underline-offset:.18em}
.mm-sc .mm-sc-subscribe{padding-top:1rem;border-top:1px solid var(--mm-sc-line)}
.mm-sc .mm-sc-subscribe>a{font-weight:500;text-decoration:underline;text-underline-offset:.18em;color:inherit}
.mm-sc .mm-sc-subscribe details{margin-top:1rem;color:var(--mm-sc-muted);font-size:var(--mm-type-small,.875rem)}
.mm-sc .mm-sc-subscribe summary{cursor:pointer}
.mm-sc .mm-sc-subscribe label{display:block}
.mm-sc .mm-sc-subscribe input{box-sizing:border-box;display:block;width:100%;max-width:100%;margin:.5rem 0 1rem;padding:.6rem;border:1px solid var(--mm-sc-line);border-radius:4px;background:transparent;color:inherit;font:inherit}
.mm-sc .mm-sc-empty{margin:0 0 1.5rem;font-size:var(--mm-type-body,1rem);line-height:1.65;color:var(--mm-sc-muted)}
@media(max-width:600px){.mm-sc .mm-sc-services,.mm-sc .mm-sc-day-label{margin-left:var(--mm-content-indent,.75rem)}.mm-sc .mm-sc-service{grid-template-columns:var(--mm-sc-time-width) minmax(0,1fr);gap:.5rem}}
@media(max-width:782px){body.admin-bar .mm-sc .mm-sc-date{top:46px}}
@media print{.mm-sc .mm-sc-date{position:static;background:transparent}.mm-sc .mm-sc-subscribe,.mm-sc .mm-sc-add{display:none}.mm-sc .mm-sc-service{break-inside:avoid}}
.mm-sc .mm-sc-period-controls,.mm-sc .mm-sc-period-controls form,.mm-sc .mm-sc-month-nav{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem}
.mm-sc .mm-sc-period-controls{justify-content:space-between;margin-bottom:1.5rem}
.mm-sc .mm-sc-period-controls a,.mm-sc .mm-sc-month-nav a{color:inherit;text-decoration:underline;text-underline-offset:.18em;font-size:var(--mm-type-small,.875rem)}
.mm-sc .mm-sc-period-controls [aria-current]{font-weight:500}
.mm-sc .mm-sc-period-controls label{font-size:var(--mm-type-small,.875rem)}
.mm-sc .mm-sc-period-controls input,.mm-sc .mm-sc-period-controls button{box-sizing:border-box;max-width:100%;min-height:2.5rem;padding:.35rem .65rem;border:1px solid var(--mm-sc-line);border-radius:4px;background:transparent;color:inherit;font:inherit;font-size:var(--mm-type-small,.875rem)}
.mm-sc .mm-sc-period-controls button{cursor:pointer}
.mm-sc .mm-sc-period-title{margin:0 0 .75rem;font-size:var(--mm-type-small,.875rem);font-weight:500;color:var(--mm-sc-muted)}
.mm-sc .mm-sc-month-nav{margin-bottom:1.5rem}
.mm-sc .mm-sc-day-description{margin:0 0 .5rem var(--mm-content-indent,1.5rem);font-size:var(--mm-type-small,.875rem);line-height:1.65;color:var(--mm-sc-muted)}
.mm-sc .mm-sc-time-end{display:block;font-size:var(--mm-type-small,.875rem);font-weight:400;color:var(--mm-sc-muted)}
.mm-sc-info{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--mm-ui-border,#c5c5c5)}
.mm-sc-info>summary{cursor:pointer;font-weight:500}
@media(max-width:600px){.mm-sc .mm-sc-period-controls{display:block}.mm-sc .mm-sc-period-controls form{margin-top:1rem}.mm-sc .mm-sc-day-description{margin-left:var(--mm-content-indent,.75rem)}}
@media print{.mm-sc .mm-sc-period-controls,.mm-sc .mm-sc-month-nav{display:none}}
/* Compact calendar controls opt out of the theme's volume/disclosure enhancement. */
.mm-sc .mm-sc-period-controls{justify-content:flex-start;align-items:flex-start;margin-bottom:1.5rem}
.mm-sc .mm-sc-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--mm-ui-height,2.5rem);padding:.4rem 1rem;border:1px solid var(--mm-ui-border,#c5c5c5);border-radius:var(--mm-toolbar-radius,4px);background:transparent;box-shadow:none;font:inherit;font-size:var(--mm-type-small,.875rem);font-weight:400;color:inherit;text-decoration:none;cursor:pointer;list-style:none}
.mm-sc .mm-sc-button:hover{background:var(--mm-ui-hover,#e9e9e9)}
.mm-sc .mm-sc-archive{width:auto;margin:0;padding:0;border:0;background:none;box-shadow:none}
.mm-sc .mm-sc-archive>summary::-webkit-details-marker{display:none}
.mm-sc .mm-sc-archive>summary::after,.mm-sc .mm-sc-subscription-help>summary::after{display:none}
.mm-sc .mm-sc-months{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;max-width:36rem;padding:1rem 0}
.mm-sc .mm-sc-months a{font-size:var(--mm-type-small,.875rem)}
.mm-sc .mm-sc-history-heading{margin:1rem 0 .5rem;font-size:var(--mm-type-small,.875rem);font-weight:400;color:var(--mm-sc-muted)}
.mm-sc .mm-sc-past{color:var(--mm-sc-muted);padding-bottom:1rem}
.mm-sc .mm-sc-past .mm-sc-date{position:static;font-weight:400;margin-bottom:.75rem;padding:.25rem 0;background:none}
.mm-sc .mm-sc-past .mm-sc-title{font-size:var(--mm-type-body,1rem);font-weight:400;line-height:1.5;color:inherit}
.mm-sc .mm-sc-past .mm-sc-time{font-weight:400;color:inherit}
.mm-sc .mm-sc-past .mm-sc-service+.mm-sc-service{margin-top:.5rem}
.mm-sc .mm-sc-pagination{display:flex;gap:1rem;align-items:center;margin:0 0 1.5rem;font-size:var(--mm-type-small,.875rem)}
.mm-sc .mm-sc-subscribe{margin-top:1.5rem;padding-top:1rem;font-size:var(--mm-type-small,.875rem)}
.mm-sc .mm-sc-subscription-help{padding:0;border:0;background:none;box-shadow:none}
.mm-sc .mm-sc-subscription-help>summary{display:list-item;width:auto;min-height:0;margin:0;padding:0;border:0;background:none;box-shadow:none;color:inherit;font:inherit;font-weight:400;cursor:pointer}
.mm-sc .mm-sc-subscription-help p{font-size:inherit;margin:.75rem 0;line-height:1.5}
.mm-sc .mm-sc-calendar-url{display:block;overflow-wrap:anywhere;font-size:inherit;text-decoration:underline}

/* Archive is a section disclosure, sharing the date/rule alignment. */
.mm-sc .mm-sc-archive{width:100%}
.mm-sc .mm-sc-archive>.mm-sc-archive-toggle{display:flex;align-items:center;gap:1rem;width:100%;min-height:44px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:var(--mm-sc-muted);font:inherit;font-size:var(--mm-type-body,1rem);font-weight:400;line-height:1.5;cursor:pointer;list-style:none}
.mm-sc .mm-sc-archive>.mm-sc-archive-toggle::after{content:"";display:block;flex:1;min-width:1rem;border-top:1px solid var(--mm-sc-line);position:static;transform:none;background:none;box-shadow:none;width:auto;height:0}
.mm-sc .mm-sc-archive-toggle>span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
.mm-sc .mm-sc-archive-toggle:hover{color:var(--mm-color-link-hover,inherit)}
