.month-page{max-width:1280px;padding-top:20px;padding-bottom:35px}.training-nav{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:16px}.training-nav a{font-size:16px;padding:12px 0;border-bottom:3px solid transparent}.training-nav [aria-current=page]{border-color:var(--brand-green)}
body[data-page=classes] .header{height:76px;min-height:76px;padding-top:12px;padding-bottom:12px}.month-page .month-heading{margin-bottom:12px}.month-page .month-heading h1{font-size:36px;margin-top:0;margin-bottom:8px}.month-page .month-toolbar{margin:12px 0}.month-page .month-weekdays span{padding-top:8px;padding-bottom:8px}.month-page .month-day{min-height:clamp(48px,calc((100dvh - 500px)/6),70px)}.month-page .month-checkout{position:sticky;bottom:0;background:var(--paper);z-index:6}.pt-class-link{display:flex;min-height:100px;align-items:center;justify-content:center;flex-direction:column;font-size:16px;color:var(--ink);background:var(--stone)}.pt-class-link span{font-size:13px;color:var(--muted)}.owner-week-navigation{display:flex;gap:15px;align-items:center;font-size:15px}.owner-week-navigation button{width:40px;height:40px;border:1px solid var(--line)}
.month-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.month-heading h1{font-size:clamp(34px,3.6vw,48px);margin:8px 0 12px}.month-heading p{margin:0;font-size:16px}.month-heading .eyebrow{font-size:11px}.month-time{text-align:right;color:var(--muted);flex-shrink:0}.month-time strong{font-size:19px;font-weight:500;color:var(--ink)}
.month-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0 16px}.month-navigation{display:flex;align-items:center;gap:20px}.month-navigation h2{font:500 25px/1.2 var(--sans);letter-spacing:-.04em;margin:0;min-width:195px;text-align:center}.month-navigation button{width:44px;height:44px;border:1px solid var(--line);font-size:22px}.month-navigation button:disabled{opacity:.35;cursor:default}.repeat-month{font-size:14px}
.month-grid{border:1px solid var(--line)}.month-weekdays,.month-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays{background:var(--stone);border-bottom:1px solid var(--line)}.month-weekdays span{padding:10px 14px;font-size:14px}.month-day{min-width:0;min-height:83px;padding:12px 14px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:10px;text-align:left;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit}.month-day:nth-child(7n){border-right:0}.month-number{display:flex;justify-content:space-between;font-size:19px;font-weight:500;line-height:1.25}.month-check{font-size:16px}.month-day-status{font-size:13px;color:var(--muted);white-space:nowrap}.month-day.today .month-number{text-decoration:underline;text-underline-offset:5px}.month-day.no-class,.month-day.outside{background:var(--stone);color:var(--muted)}.month-day.no-class{opacity:.55}.month-day:disabled:not(.picked){background:var(--stone);color:var(--muted);cursor:default}.month-day.picked{background:var(--lime);color:#000}.month-day.picked .month-day-status{color:#000}.month-day.booked{box-shadow:inset 0 -3px var(--brand-green)}.month-day.past.picked{background:var(--stone);color:var(--ink)}.month-day.past.picked .month-day-status{color:var(--muted)}.month-day:not(:disabled):hover{box-shadow:inset 0 0 0 2px var(--brand-green)}
.month-key{display:flex;gap:22px;flex-wrap:wrap;margin:14px 0 18px;color:var(--muted);font-size:13px}.month-key span{display:flex;align-items:center;gap:8px}.month-key i{width:12px;height:12px;border:1px solid var(--line)}.key-selected{background:var(--lime)}.key-booked{border:0!important;border-bottom:3px solid var(--brand-green)!important}.key-unavailable{background:var(--stone)}
.month-checkout{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0 14px;border-top:2px solid var(--ink)}.month-total>span{font-size:16px}.month-total>div{display:flex;align-items:baseline;gap:10px;margin-top:3px}.month-total strong{font-size:36px;line-height:1.3;font-weight:500;letter-spacing:-.05em}.month-total small,.month-total>div>span{color:var(--muted);font-size:14px}.month-pay{min-width:230px;background:var(--lime)!important;color:#000!important;border-color:var(--lime)!important;justify-content:space-between}.month-pay:disabled{opacity:.55;cursor:default}.month-note{color:var(--muted);font-size:14px;max-width:75ch;line-height:1.6}.month-feedback:not(:empty),.month-pending{padding:15px 18px;background:var(--stone);margin:14px 0;font-size:16px}.month-pending .text-link{margin-left:14px}.confirmed-dates{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.confirmed-dates h2{font-size:22px}.confirmed-dates p{font-size:15px;line-height:1.8;color:var(--muted)}
.owner-month-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);margin:24px 0}.owner-month-summary>div{padding:16px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column}.owner-month-summary>div:last-child{border:0}.owner-month-summary strong{font-size:29px;letter-spacing:-.045em;font-weight:500}.owner-month-summary span{font-size:14px;color:var(--muted)}.owner-month-day{min-height:120px;gap:8px}.month-events{display:flex;flex-direction:column;gap:5px}.month-events>span{font-size:13px;line-height:1.4}.month-class-chip{display:flex;justify-content:space-between;gap:5px;padding-left:7px;border-left:2px solid var(--brand-green)}.month-class-chip strong{font-weight:500}.month-pt-chip{padding-left:7px;border-left:2px solid #a6a391}.month-block-chip{color:var(--muted);padding-left:7px;border-left:2px solid var(--line)}.month-empty-note{color:var(--muted)}.mobile-only{display:none}
.month-agenda-event{border-left:3px solid var(--line);padding:14px 18px;background:var(--stone);margin:16px 0}.month-agenda-event.class{border-color:var(--brand-green)}.month-agenda-event h3{font:500 21px/1.4 var(--sans);margin:4px 0}.month-agenda-event p{font-size:15px;margin:0}.month-roster>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.month-roster strong{font-size:17px;font-weight:500}.month-roster small{display:block;color:var(--muted)}.month-roster label{display:flex;align-items:center;gap:10px}.month-card-details{display:grid;grid-template-columns:1fr 1fr;gap:20px}#month-demo-form label{display:block;margin:16px 0}#month-demo-form input{display:block;width:100%;margin-top:6px}#month-demo-form button:disabled{opacity:.5}
@media(max-width:700px){.month-page{padding:20px 16px 35px}.month-heading{align-items:start}.month-heading h1{font-size:35px}.month-heading p{font-size:15px}.month-time{font-size:12px!important}.month-time strong{font-size:16px}.month-toolbar{align-items:stretch;flex-direction:column;gap:4px}.month-navigation{justify-content:space-between;gap:8px}.month-navigation h2{font-size:23px;min-width:0}.repeat-month{align-self:flex-start;min-height:40px;font-size:14px}.month-weekdays span{padding:9px 0;text-align:center;font-size:12px}.month-day{min-height:70px;padding:9px 5px;gap:7px}.month-number{font-size:18px}.month-day-status{font-size:11px;letter-spacing:-.035em}.month-check{font-size:12px}.month-key{font-size:12px;gap:14px}.month-checkout{align-items:stretch;flex-direction:column;gap:14px;padding-top:14px}.month-total>div{float:right;margin:-22px 0 0}.month-total>div>span{display:none}.month-total strong{font-size:32px}.month-total small{display:block;max-width:75%;margin-top:8px}.month-pay{width:100%;min-height:52px}.training-nav{gap:22px;margin-bottom:22px}.training-nav a{font-size:15px}.owner-month-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-month-summary>div{padding:12px 15px}.owner-month-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.owner-month-summary>div:nth-child(2n){border-right:0}.owner-month-summary strong{font-size:25px}.owner-month-summary span{font-size:13px}.owner-month-day{min-height:100px;padding:8px 4px}.month-events>span{font-size:10px}.month-class-chip{padding-left:3px;flex-direction:column;gap:1px}.month-pt-chip,.month-block-chip{padding-left:3px}.desktop-only{display:none}.mobile-only{display:inline}.month-roster>div{align-items:start}.month-roster label{font-size:14px}.month-roster small{font-size:12px}.month-pending .text-link{display:flex;margin-left:0}.month-note{font-size:13px}}
@media(max-width:700px){body[data-page=classes] .header{height:auto;min-height:0;display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px 16px}body[data-page=classes] .header nav{display:none!important}body[data-page=classes] .header .account-controls{grid-column:1/-1;justify-content:space-between;width:100%}.month-total{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 10px}.month-total>div{grid-column:2;grid-row:1;float:none;margin:0}.month-total small{grid-column:1/-1;max-width:none;margin-top:0}}
body[data-page=owner][data-calendar-mode=month] .header{height:76px;min-height:76px}body[data-page=owner][data-calendar-mode=month] .owner-main{padding-top:20px}body[data-page=owner][data-calendar-mode=month] .page-heading .eyebrow,body[data-page=owner][data-calendar-mode=month] .page-heading>div>p:last-child{display:none}body[data-page=owner][data-calendar-mode=month] .page-heading h1{margin:0;font-size:34px}body[data-page=owner][data-calendar-mode=month] .page-heading{margin-bottom:8px;align-items:center}.owner-month-summary{margin:16px 0}.owner-month-summary>div{padding:10px 18px}.owner-month-grid .owner-month-day{min-height:clamp(64px,calc((100dvh - 450px)/6),90px);padding-top:9px;padding-bottom:9px;gap:5px}.owner-month-grid .month-events{gap:3px}.owner-main .month-toolbar{margin:12px 0}
.owner-month-grid .month-events{display:grid;grid-template-columns:1fr 1fr;gap:3px}.owner-month-grid .month-class-chip{grid-column:1/-1}.owner-month-grid .month-pt-chip .desktop-only{display:none}.owner-month-grid .owner-month-day{padding-top:7px;padding-bottom:7px}
.client-payment-caption{display:block;color:var(--muted);font-size:13px}.month-client-dates{display:flex;flex-direction:column;gap:6px}.owner-main .members-heading h2{font-size:28px}
@media(min-width:701px) and (max-height:850px){.owner-month-summary{margin:12px 0}.owner-month-summary>div{flex-direction:row;align-items:center;gap:12px;padding:8px 14px}.owner-month-summary strong{font-size:24px}.owner-month-summary span{font-size:13px;line-height:1.25}.owner-main .month-toolbar{margin:8px 0}.owner-month-grid .month-weekdays span{padding-top:5px;padding-bottom:5px}.owner-month-grid .month-day{min-height:58px;padding:4px 10px;gap:2px}.owner-month-grid .month-number{font-size:17px;line-height:1.2}.owner-month-grid .month-events>span{font-size:12px;line-height:1.2}.owner-month-grid .month-events{gap:2px}.month-page .month-day{min-height:54px;padding:6px 12px;gap:3px}.month-page .month-toolbar{margin:8px 0}.month-page .month-heading{margin-bottom:8px}.month-page .month-checkout{padding:10px 0}.month-page .month-total{display:grid;grid-template-columns:1fr auto;gap:2px 18px;align-items:center}.month-page .month-total>div{grid-column:2;grid-row:1;margin:0}.month-page .month-total strong{font-size:30px}.month-page .month-total small{grid-column:1/-1}.month-page .month-key{margin:10px 0 12px}}
@media(max-width:700px){body[data-page=owner][data-calendar-mode=month] .header{height:auto;min-height:0}.owner-main .month-toolbar>.segmented{align-self:flex-end}.owner-month-grid .owner-month-day{min-height:95px}.owner-month-grid .month-events{display:flex}.owner-main .page-heading>.button{width:auto}.owner-main .page-heading{flex-direction:row!important}.owner-main .page-heading h1{font-size:29px!important}.owner-main .page-heading>.button{font-size:14px;padding:10px 14px;gap:10px}}
@media(max-width:390px){.month-heading{flex-direction:column;gap:12px}.month-time{text-align:left}.month-time br{display:none}.month-time strong{margin-left:10px}.month-day-status{font-size:11px}.month-day{padding-left:4px;padding-right:4px}}
@media(min-width:701px) and (max-height:850px){.month-page{padding-top:8px}.month-page .training-nav{margin-bottom:10px}.month-page .training-nav a{padding:8px 0}.month-page .month-heading h1{font-size:30px;margin:0 0 3px}.month-page .month-heading p{font-size:14px}.month-page .month-heading{margin-bottom:4px}.month-page .month-toolbar{margin:6px 0}.month-page .month-navigation button{height:38px;width:38px}.month-page .month-navigation h2{font-size:23px}.month-page .month-weekdays span{padding-top:7px;padding-bottom:7px;line-height:1.3}.month-page .month-day{min-height:51px;padding:5px 12px;gap:2px}.month-page .month-number{font-size:18px;line-height:1.2}.month-page .month-day-status{line-height:1.25}.month-page .month-key{margin:7px 0;font-size:12px;line-height:1.4}.month-page .month-checkout{position:static;padding:9px 0}.month-page .month-total strong{font-size:29px;line-height:1.15}.month-page .month-total small{font-size:13px;line-height:1.4}}
@media(max-width:700px){body[data-page=classes] .header .wordmark{justify-self:start;width:max-content}}
@media(min-width:701px) and (max-height:850px){body[data-page=owner][data-calendar-mode=month] .owner-main{padding-top:12px}body[data-page=owner][data-calendar-mode=month] .page-heading>.button{min-height:44px;padding:8px 20px;font-size:15px}body[data-page=owner][data-calendar-mode=month] .owner-tabs>button{padding-top:8px;padding-bottom:8px}.owner-month-summary strong{line-height:1.2}.owner-main .month-toolbar .segmented>button{min-height:34px;padding:6px 18px;font-size:14px}.owner-main .month-navigation button{width:40px;height:40px}.owner-main .month-navigation h2{font-size:24px}}
@media(max-width:700px){.month-page{padding-top:12px}.month-page .training-nav{margin-bottom:14px}.month-page .training-nav a{padding:8px 0;line-height:1.5}.month-page .month-heading{flex-direction:column;gap:8px;margin-bottom:8px}.month-page .month-heading h1{font-size:32px;line-height:1.2;margin:0 0 6px}.month-page .month-heading p{font-size:14px;line-height:1.5}.month-page .month-time{text-align:left}.month-page .month-time br{display:none}.month-page .month-time strong{margin-left:10px}}
.month-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.month-summary{border:1px solid var(--line);padding:18px;background:var(--paper)}.month-selection-details h2{font-size:21px;margin:0 0 12px}.month-selected-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.month-selected-dates button{display:flex;justify-content:space-between;gap:3px;padding:6px 8px;background:var(--lime);color:#000;border:0;min-height:34px;font-size:13px;text-align:left}.month-selected-dates button:disabled{color:#000;opacity:1;cursor:default}.month-selected-dates p{font-size:14px;grid-column:1/-1;color:var(--muted);margin:0}.month-draft-status{font-size:13px;line-height:1.5;color:var(--ink);padding:10px 0;margin:6px 0;border-bottom:1px solid var(--line)}.month-existing-payment{margin:16px 0 12px;padding-top:14px;border-top:1px solid var(--line)}.month-existing-payment h3{font-size:15px;margin:0 0 5px}.month-existing-payment>strong{font-size:24px;font-weight:500}.month-existing-payment small{font-size:12px;color:var(--muted);font-weight:400}.month-existing-payment p{font-size:13px;line-height:1.5;color:var(--muted);margin:5px 0}.month-payment-summary dl{font-size:13px;margin:14px 0}.month-payment-summary dl>div{display:flex;justify-content:space-between;gap:12px;margin:7px 0}.month-payment-summary dd{margin:0;white-space:nowrap}.month-payment-summary dt{color:var(--muted)}.month-summary .month-checkout{position:static;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:12px 0 0}.month-summary .month-total{display:block}.month-summary .month-total>div{display:flex;float:none;margin:4px 0}.month-summary .month-total>div>span{display:inline;font-size:14px}.month-summary .month-total>small{display:block;margin-top:4px;font-size:12px;line-height:1.5;max-width:none}.month-summary .month-total>span{font-size:16px}.month-summary .month-total strong{font-size:32px;line-height:1.15}.month-summary .month-pay{min-width:0;width:100%;font-size:15px;padding:12px 14px}.month-summary .month-note{font-size:12px;line-height:1.5;margin:12px 0 0}.month-summary .month-feedback:not(:empty){font-size:14px;padding:10px;margin:10px 0}.month-day.past.picked,.month-day.past.picked .month-day-status{background:var(--lime);color:#000}
@media(min-width:901px){.month-page .month-day{min-height:62px}.month-page .month-number{font-size:19px}.month-page .month-day-status{font-size:12px}.month-page .month-weekdays span{font-size:13px;padding-left:10px}}
@media(max-width:900px){.month-layout{grid-template-columns:1fr;gap:10px}.month-summary{padding:16px}.month-selected-dates{grid-template-columns:repeat(3,minmax(0,1fr))}.month-summary .month-total{display:grid;grid-template-columns:1fr auto;gap:4px 10px}.month-summary .month-total>div{margin:0}.month-summary .month-total>div>span{display:none}.month-summary .month-total>small{grid-column:1/-1}.month-selected-dates button{font-size:12px}}
@media(min-width:901px){.month-summary{padding:14px}.month-selection-details h2{font-size:19px;margin-bottom:9px}.month-selected-dates{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-height:155px;overflow-y:auto}.month-selected-dates button{font-size:11px;padding:5px;min-height:29px;white-space:nowrap}.month-existing-payment{margin:12px 0;padding-top:10px}.month-existing-payment h3{margin:0 0 3px}.month-existing-payment p{margin:4px 0}.month-summary .month-note{display:none}.month-summary .month-total strong{font-size:29px}.month-summary .month-pay{min-height:44px}.month-summary .month-checkout{gap:9px;padding-top:10px}}

/* Actual booked times lead; empty class capacity remains secondary. */
.owner-month-grid .month-events{display:flex;flex-direction:column;gap:5px}
.owner-month-grid .month-pt-chip{display:flex;flex-direction:column;gap:2px;background:var(--lime);color:#191d17;border:0;padding:5px 7px;line-height:1.2}
.owner-month-grid .month-pt-chip strong{font-size:14px;font-weight:650;color:#191d17;white-space:nowrap}
.owner-month-grid .pt-client{font-size:12px;color:#191d17;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-month-grid .month-class-chip{font-size:12px;align-items:center;border:0;padding:0;flex-direction:row}
.owner-month-grid .month-class-chip.is-empty{color:var(--muted)}
.owner-month-grid .month-more{font-size:12px;color:var(--muted)}
@media(max-width:700px){.owner-month-grid .month-pt-chip{padding:4px 2px}.owner-month-grid .month-pt-chip strong{font-size:12px}.owner-month-grid .pt-end{display:block;font-size:10px}.owner-month-grid .pt-client{display:none}.owner-month-grid .month-class-chip{font-size:10px;flex-direction:column;align-items:start}.owner-month-grid .month-more{font-size:10px}}

.owner-month-grid .month-events{flex:1}.owner-month-grid .month-class-chip{margin-top:auto}
