.csb{--csb-primary:#000;--csb-accent:#f58220;--navy:#14212b;--green:var(--csb-accent);--yellow:var(--csb-accent);--border:#dfe3e4;--on-green:#111;--muted:#59646c;font:inherit;color:inherit;max-width:100%;box-sizing:border-box}.csb *{box-sizing:border-box}.csb button,.csb input,.csb select{font:inherit}.csb button{cursor:pointer}.csb button:disabled{cursor:default;opacity:.65}.csb button:focus-visible,.csb input:focus-visible,.csb select:focus-visible,.csb a:focus-visible{outline:3px solid var(--csb-accent);outline-offset:3px}.csb input:not([type=checkbox]),.csb select{border:1px solid var(--border);background:#fff;color:#14212b;border-radius:6px;padding:9px 11px;max-width:100%}.csb .csb-btn,.csb-login input[type=submit]{display:inline-block;border:1px solid var(--csb-primary);background:var(--csb-primary);color:#fff;border-radius:6px;padding:10px 16px;font-size:13px;line-height:1.4;text-decoration:none}.csb .csb-btn:hover{background:var(--csb-accent);border-color:var(--csb-accent);color:#111}.csb-status{font-size:13px;line-height:1.6;padding:12px 0}.csb-status:empty{display:none}.csb-error,.csb-dialog-status{color:#a22620}.csb h2{margin:0 0 24px}.csb h3,.csb h4{margin:0 0 10px}.csb p{line-height:1.7}.csb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0;flex-wrap:wrap}.csb-toolbar>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.csb-toolbar strong{padding:0 8px;font-size:16px}.csb-toolbar label{display:flex;gap:10px;align-items:center;font-size:12px}.csb-views .csb-btn{background:white;color:#14212b;border-color:var(--border)}.csb-views .csb-btn[aria-pressed=true]{background:var(--csb-primary);color:white}.csb .calendar-legend{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin:20px 0 12px}.csb .calendar-legend span{display:flex;align-items:center;gap:6px}.csb .calendar-legend i{width:9px;height:9px;border-radius:2px;background:var(--green)}.csb .calendar-legend .legend-booked{background:#314d71}.csb .calendar-legend .legend-full{background:#bfc6ca}.csb .calendar-scroll{overflow:auto;border:1px solid var(--border);border-radius:9px;background:white;max-height:740px}.csb .booking-calendar{min-width:800px}.csb .calendar-head,.csb .calendar-body{display:grid;grid-template-columns:72px repeat(7,minmax(0,1fr))}.csb .calendar-head{position:sticky;top:0;z-index:2;background:white;border-bottom:1px solid var(--border)}.csb .zone-label{font-size:9px;align-self:center;text-align:center;overflow-wrap:anywhere}.csb .day-heading{text-align:center;padding:14px 0;border-left:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:5px}.csb .day-heading span{font-size:10px;text-transform:uppercase}.csb .day-heading strong{font-size:20px}.csb .day-heading small{font-size:10px}.csb .day-heading.today{background:#fff0e3}.csb .time-axis,.csb .day-column{position:relative}.csb .time-axis span{position:absolute;right:10px;font-size:11px;padding-top:4px}.csb .day-column{border-left:1px solid var(--border);background:repeating-linear-gradient(to bottom,transparent 0px,transparent 33px,#f2f4f5 33px,#f2f4f5 34px,transparent 34px,transparent 67px,var(--border) 67px,var(--border) 68px)}.csb .calendar-slot{position:absolute;left:4px;width:calc(100% - 8px);border:0;border-left:3px solid var(--green);border-radius:5px;padding:4px 5px;background:#fff0e3;color:#14212b;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:3px;overflow:hidden;min-height:33px;line-height:1.1}.csb .calendar-slot strong{font-size:10px;white-space:nowrap}.csb .calendar-slot span{font-size:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.csb .calendar-slot small{font-size:9px;white-space:nowrap}.csb .calendar-slot:hover:not(:disabled){background:var(--green);color:#111;z-index:1}.csb .calendar-slot:disabled{opacity:1}.csb .calendar-slot.is-booked{border-color:#314d71;background:#e2eaf4}.csb .calendar-slot.is-full{background:#f0f2f3;border-color:#bdc5ca;color:#64717a}.csb .calendar-slot.short-slot span{display:none}.csb .day-view{min-width:300px}.csb .day-view .calendar-head,.csb .day-view .calendar-body{grid-template-columns:72px 1fr}.csb .day-view .calendar-slot{padding-left:14px}.csb .calendar-empty{padding:20px;text-align:center;color:var(--muted)}.csb .month-calendar{overflow:auto;border:1px solid var(--border);border-radius:9px;background:white}.csb .month-weekdays,.csb .month-cells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:700px}.csb .month-weekdays span{text-align:center;padding:13px;font-size:12px;border-bottom:1px solid var(--border)}.csb .month-cell{min-height:125px;padding:7px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.csb .month-cell.other-month{background:#f3f5f6}.csb .month-cell.today .month-day{background:var(--csb-accent)}.csb .month-day{border:0;background:transparent;border-radius:50%;width:28px;height:28px;margin-bottom:7px;color:#14212b;font-size:12px;padding:0}.csb .month-event{display:flex;flex-wrap:wrap;gap:5px;width:100%;padding:7px;border:0;border-left:3px solid var(--green);border-radius:4px;background:#fff0e3;color:#14212b;font-size:10px;margin-bottom:5px;text-align:left;line-height:1.3}.csb .month-event:hover:not(:disabled){background:var(--green);color:#111}.csb .month-event.is-booked{background:#e2eaf4;border-color:#314d71}.csb .month-event.is-full{background:#eceff1;border-color:#ccc;color:#64717a}.csb .month-event:disabled{opacity:1}.csb-small,.csb .small{font-size:12px;line-height:1.7}.csb-membership{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:20px;border:1px solid var(--border);border-radius:8px;margin-bottom:18px;background:#fafbfc}.csb-credit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}.csb-credit,.csb-booking{padding:22px;border:1px solid var(--border);border-radius:8px;background:white;margin:0 0 16px}.csb-credit strong{font-size:24px}.csb-credit p{font-size:12px}.csb-expired{opacity:.7}.csb-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.csb-notice{background:#fff1e4;padding:16px;border-radius:7px;margin:15px 0}.csb-policy{font-size:13px}.csb-login{max-width:480px}.csb-login label{display:block;margin-bottom:6px}.csb-login input:not([type=checkbox]){width:100%}.csb-login .login-remember label{display:flex;align-items:center;gap:8px}.csb-dialog{border:1px solid var(--border);border-radius:12px;padding:32px;width:min(500px,calc(100% - 30px));max-height:90vh;overflow:auto;background:white;box-shadow:0 20px 80px #0003}.csb-dialog::backdrop{background:#0008}.csb-close{position:absolute;right:12px;top:8px;border:0;background:transparent;color:#333;font-size:25px;padding:3px 7px}.csb-dialog-status{font-size:13px;margin:14px 0 0}.csb-dialog-status:empty{display:none}@media(max-width:650px){.csb-toolbar{align-items:flex-start;flex-direction:column}.csb-toolbar strong{font-size:13px}.csb .csb-btn{padding:9px 12px;font-size:12px}.csb-membership{align-items:flex-start;flex-direction:column}.csb .calendar-scroll{max-height:600px}.csb .calendar-legend{font-size:10px;gap:10px}}
.csb .csb-field{display:block;margin:18px 0;font-size:14px;line-height:1.7}.csb .csb-field select,.csb .csb-field input[type=email]{display:block;width:100%;margin-top:8px}.csb .csb-field input[type=checkbox]{width:auto;margin-right:8px}.csb .calendar-slot,.csb .month-event{color:inherit}

.csb.csb-inherit{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}.csb.csb-inherit .csb-content{font:inherit;color:inherit}.csb.csb-inherit .csb-btn{font-family:inherit}.csb[data-csb="hello"],.csb[data-csb="name"],.csb[data-csb="credit_balance"]{margin:0;padding:0}

/* Component controls override theme button defaults, including modal close states. */
.csb{font-family:Arial,Helvetica,sans-serif;font-size:var(--csb-body-size,15px);color:var(--csb-body-color,#14212b)}
.csb :is(p,li,label,.csb-content,h2,h3,h4){font-family:inherit;color:inherit}
.csb :is(p,li,label){font-size:inherit}
.csb.csb-policy,.csb .csb-credit p{font-size:var(--csb-body-size,15px)}
.csb.csb-policy p{font-size:inherit;color:inherit}
.csb .csb-btn,.csb.csb-login input[type=submit]{font-family:Arial,Helvetica,sans-serif!important;font-size:var(--csb-button-size,13px)!important;background:var(--csb-button-bg,#000)!important;color:var(--csb-button-text,#fff)!important;border-width:var(--csb-button-border-width,1px)!important;border-style:var(--csb-button-border-style,solid)!important;border-color:var(--csb-button-border,#000)!important;border-radius:var(--csb-button-radius,6px)!important;text-decoration:none!important}
.csb .csb-btn:is(:hover,:focus-visible),.csb.csb-login input[type=submit]:is(:hover,:focus-visible){color:var(--csb-button-hover-text,#fff)!important;background:var(--csb-button-hover-bg,var(--csb-accent))!important;border-color:var(--csb-button-hover-border,var(--csb-accent))!important}
.csb.csb-dialog .csb-close,.csb.csb-dialog .csb-close:is(:hover,:focus,:active){background:var(--csb-accent)!important;color:var(--csb-button-text,#fff)!important;border:0!important;font-family:Arial,Helvetica,sans-serif!important;border-radius:4px;padding:5px 12px;line-height:1.2;box-shadow:none!important}
.csb .calendar-slot:not(.is-booked):not(.is-full),.csb .month-event:not(.is-booked):not(.is-full){background:var(--csb-slot-bg,#fff0e3)}
.csb .calendar-slot.is-booked,.csb .month-event.is-booked,.csb .day-heading.today,.csb .month-cell.today .month-day{background:var(--csb-booked-bg,#e2eaf4)!important}
.csb .calendar-slot:not(:disabled):hover,.csb .month-event:not(:disabled):hover{background:var(--csb-accent);color:#111}
.csb.csb-inherit{font-family:inherit;font-size:inherit;color:inherit;line-height:inherit}
.csb.csb-policy.csb-inherit{font-size:inherit}

/* Elementor widget styles inherit into confirmation dialogs from the opening component. */
.csb .csb-btn,.csb.csb-login input[type=submit]{font-family:var(--csb-button-font,Arial,Helvetica,sans-serif)!important;line-height:var(--csb-button-line,1.4)!important;font-weight:var(--csb-button-weight,400)!important;letter-spacing:var(--csb-button-spacing,normal)!important;padding:var(--csb-button-padding,10px 16px)!important}

.csb .csb-views .csb-btn[aria-pressed=true]{background:var(--csb-view-active-bg,var(--csb-accent))!important;color:var(--csb-view-active-text,#111)!important;border-color:var(--csb-view-active-border,var(--csb-view-active-bg,var(--csb-accent)))!important}
.csb .csb-calendar-arrow{background:var(--csb-arrow-bg,var(--csb-button-bg))!important;color:var(--csb-arrow-text,var(--csb-button-text))!important;border-color:var(--csb-arrow-border,var(--csb-button-border))!important;font-size:var(--csb-arrow-size,var(--csb-button-size))!important;border-width:var(--csb-arrow-width,var(--csb-button-border-width))!important;border-radius:var(--csb-arrow-radius,var(--csb-button-radius))!important;padding:var(--csb-arrow-padding,var(--csb-button-padding,10px 16px))!important}
.csb .csb-calendar-arrow:is(:hover,:focus-visible){background:var(--csb-arrow-hover-bg,var(--csb-button-hover-bg))!important;color:var(--csb-arrow-hover-text,var(--csb-button-hover-text))!important;border-color:var(--csb-arrow-hover-border,var(--csb-button-hover-border))!important}
.csb [data-csb-timezone]{max-width:260px}

.csb .csb-editor-note{font:12px/1.5 Arial,sans-serif;padding:8px 10px;border:1px dashed #9aa4ae;background:#f6f7f8;color:#374151;margin:0 0 16px}.csb .csb-login-preview{opacity:1}

/* Discovery call scheduler only; group calendar styles stay unchanged. */
.csb[data-csb="discovery"] .csb-discovery-layout{--discovery-blue:#FF6904;--discovery-line:#e5d8ca;display:grid;grid-template-columns:minmax(190px,1fr) minmax(300px,1.25fr) minmax(150px,.65fr);background:#fff;color:#242321;border:1px solid var(--discovery-line);border-radius:12px;overflow:hidden;min-height:470px;font:14px/1.5 Arial,Helvetica,sans-serif}
.csb[data-csb="discovery"] .csb-discovery-layout>*{min-width:0;padding:26px 24px}
.csb[data-csb="discovery"] .csb-discovery-details{border-right:1px solid var(--discovery-line)}
.csb[data-csb="discovery"] .csb-discovery-details h3{font-size:22px;line-height:1.3;font-weight:600;color:#242321;margin:0 0 22px}
.csb[data-csb="discovery"] .csb-discovery-details p{display:flex;align-items:baseline;margin:5px 0;color:#666;font-size:14px;line-height:1.7}
.csb[data-csb="discovery"] .csb-discovery-details p>span{display:inline-block;width:26px;flex-shrink:0;color:#7e8d96}
.csb[data-csb="discovery"] .csb-discovery-month h4{font-size:16px;font-weight:600;margin:0 0 18px;color:#242321}
.csb[data-csb="discovery"] .csb-discovery-month-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}
.csb[data-csb="discovery"] .csb-discovery-month-nav strong{font-size:16px;font-weight:600}
.csb[data-csb="discovery"] .csb-discovery-arrow{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--discovery-line);width:32px;height:32px;padding:0;border-radius:50%;background:#fff;color:#343434;font:20px/1 Arial,sans-serif;box-shadow:none}
.csb[data-csb="discovery"] .csb-discovery-arrow:hover{background:#fff0e5;color:var(--discovery-blue)}
.csb[data-csb="discovery"] .csb-discovery-weekdays,.csb[data-csb="discovery"] .csb-discovery-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}
.csb[data-csb="discovery"] .csb-discovery-weekdays{font-size:11px;color:#999;margin-bottom:10px}
.csb[data-csb="discovery"] .csb-discovery-days{grid-auto-rows:44px;align-items:center;justify-items:center}
.csb[data-csb="discovery"] .csb-discovery-day{display:inline-flex;align-items:center;justify-content:center;width:calc(100% - 4px);max-width:38px;min-width:0;height:38px;border:1px solid transparent;border-radius:50%;padding:0;background:transparent;color:#ccc;font:14px/1 Arial,sans-serif;box-shadow:none;opacity:1}
.csb[data-csb="discovery"] .csb-discovery-day.has-times{background:var(--csb-date-available-bg,#fff0e5);color:var(--csb-date-available-text,#25272b)}
.csb[data-csb="discovery"] .csb-discovery-day.has-times:not(.is-selected):not(:disabled):is(:hover,:focus-visible){background:var(--csb-date-hover-bg,#ffe0c9);color:var(--csb-date-hover-text,var(--csb-date-available-text,#25272b))}
.csb[data-csb="discovery"] .csb-discovery-day.is-today{border-color:var(--discovery-blue)}
.csb[data-csb="discovery"] .csb-discovery-day.is-selected{background:var(--csb-date-selected-bg,var(--discovery-blue));color:var(--csb-date-selected-text,#fff);font-weight:600}
.csb[data-csb="discovery"] .csb-discovery-day.is-selected:not(:disabled):is(:hover,:focus-visible){background:var(--csb-date-selected-hover-bg,var(--csb-date-selected-bg,var(--discovery-blue)));color:var(--csb-date-selected-hover-text,var(--csb-date-selected-text,#fff))}
.csb[data-csb="discovery"] .csb-discovery-zone{display:flex;align-items:flex-start;margin-top:22px;color:#888;font-size:13px;line-height:1.5}
.csb[data-csb="discovery"] .csb-discovery-zone>span:first-child{color:var(--discovery-blue);margin-right:8px;font-size:20px;line-height:1}
.csb[data-csb="discovery"] .csb-discovery-zone select{display:block;width:100%;max-width:240px;margin-top:5px;padding:3px 0;border:0;border-radius:0;background:#fff;color:#666;font-size:12px;cursor:pointer}
.csb[data-csb="discovery"] .csb-discovery-times{border-left:1px solid var(--discovery-line);max-height:470px;overflow-y:auto;scrollbar-width:thin}
.csb[data-csb="discovery"] .csb-discovery-time{display:block;width:100%;min-height:45px;margin:0 0 8px;padding:10px 8px;border:1px solid var(--discovery-blue);border-radius:8px;background:#fff;color:var(--discovery-blue);font:600 14px/1.5 Arial,sans-serif;text-align:center;box-shadow:none}
.csb[data-csb="discovery"] .csb-discovery-time:hover,.csb[data-csb="discovery"] .csb-discovery-time:focus-visible{background:var(--discovery-blue);color:#fff}
.csb[data-csb="discovery"] .csb-discovery-empty{margin:0;font-size:14px;color:#777}
@media(max-width:760px){.csb[data-csb="discovery"] .csb-discovery-layout{grid-template-columns:minmax(0,1.6fr) minmax(140px,1fr)}.csb[data-csb="discovery"] .csb-discovery-details{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--discovery-line)}.csb[data-csb="discovery"] .csb-discovery-layout>*{padding:22px 18px}.csb[data-csb="discovery"] .csb-discovery-details h3{margin-bottom:12px}}
@media(max-width:480px){.csb[data-csb="discovery"] .csb-discovery-layout{grid-template-columns:minmax(0,1fr)}.csb[data-csb="discovery"] .csb-discovery-times{border-left:0;border-top:1px solid var(--discovery-line);max-height:300px}.csb[data-csb="discovery"] .csb-discovery-days{grid-auto-rows:44px}.csb[data-csb="discovery"] .csb-discovery-zone select{max-width:100%}}

/* Action-button gradients inherit into the existing confirmation dialogs.
   Calendar view switches and navigation arrows retain their own backgrounds. */
.csb .csb-btn:not(.csb-calendar-arrow):not([data-view]),.csb.csb-login input[type=submit]{background-image:var(--csb-button-image,none)!important}
.csb .csb-btn:not(.csb-calendar-arrow):not([data-view]):hover,.csb .csb-btn:not(.csb-calendar-arrow):not([data-view]):focus-visible,.csb.csb-login input[type=submit]:hover,.csb.csb-login input[type=submit]:focus-visible{background-image:var(--csb-button-hover-image,var(--csb-button-image,none))!important}

/* Alternative group date picker; original group and discovery styles are unchanged. */
.csb[data-csb="calendar_picker"] .csb-discovery-layout{--discovery-blue:#19728e;--discovery-line:#e5d8ca;display:grid;grid-template-columns:var(--csb-picker-columns,minmax(190px,1fr) minmax(300px,1.25fr) minmax(150px,.65fr));background:#fff;color:#242321;border:1px solid var(--discovery-line);border-radius:12px;overflow:hidden;min-height:470px;font:14px/1.5 Arial,Helvetica,sans-serif}
.csb[data-csb="calendar_picker"] .csb-discovery-layout>*{min-width:0;padding:26px 24px}
.csb[data-csb="calendar_picker"] .csb-discovery-details{border-right:var(--csb-picker-side-border,1px) solid var(--discovery-line);border-bottom:var(--csb-picker-row-border,0px) solid var(--discovery-line)}
.csb[data-csb="calendar_picker"] .csb-discovery-details h3{font-size:22px;line-height:1.3;font-weight:600;color:#242321;margin:0 0 22px}
.csb[data-csb="calendar_picker"] .csb-discovery-details p{display:flex;align-items:baseline;margin:5px 0;color:#666;font-size:14px;line-height:1.7}
.csb[data-csb="calendar_picker"] .csb-discovery-details p>span{display:inline-block;width:26px;flex-shrink:0;color:#7e8d96}
.csb[data-csb="calendar_picker"] .csb-discovery-month h4{font-size:16px;font-weight:600;margin:0 0 18px;color:#242321}
.csb[data-csb="calendar_picker"] .csb-discovery-month-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}
.csb[data-csb="calendar_picker"] .csb-discovery-month-nav strong{font-size:16px;font-weight:600}
.csb[data-csb="calendar_picker"] .csb-discovery-arrow{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--discovery-line);width:32px;height:32px;padding:0;border-radius:50%;background:#fff;color:#343434;font:20px/1 Arial,sans-serif;box-shadow:none}
.csb[data-csb="calendar_picker"] .csb-discovery-arrow:hover{background:#f1f5f9;color:var(--discovery-blue)}
.csb[data-csb="calendar_picker"] .csb-discovery-weekdays,.csb[data-csb="calendar_picker"] .csb-discovery-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}
.csb[data-csb="calendar_picker"] .csb-discovery-weekdays{font-size:11px;color:#999;margin-bottom:10px}
.csb[data-csb="calendar_picker"] .csb-discovery-days{grid-auto-rows:44px;align-items:center;justify-items:center}
.csb[data-csb="calendar_picker"] .csb-discovery-day{display:inline-flex;align-items:center;justify-content:center;width:calc(100% - 4px);max-width:38px;min-width:0;height:38px;border:1px solid transparent;border-radius:50%;padding:0;background:transparent;color:#ccc;font:14px/1 Arial,sans-serif;box-shadow:none;opacity:1}
.csb[data-csb="calendar_picker"] .csb-discovery-day.has-times{background:var(--csb-date-available-bg,#eaf1fc);color:var(--csb-date-available-text,#25272b)}
.csb[data-csb="calendar_picker"] .csb-discovery-day.has-times:not(.is-selected):not(:disabled):is(:hover,:focus-visible){background:var(--csb-date-hover-bg,#d3e7f0);color:var(--csb-date-hover-text,var(--csb-date-available-text,#25272b))}
.csb[data-csb="calendar_picker"] .csb-discovery-day.is-today{border-color:var(--discovery-blue)}
.csb[data-csb="calendar_picker"] .csb-discovery-day.is-selected{background:var(--csb-date-selected-bg,var(--discovery-blue));color:var(--csb-date-selected-text,#fff);font-weight:600}
.csb[data-csb="calendar_picker"] .csb-discovery-day.is-selected:not(:disabled):is(:hover,:focus-visible){background:var(--csb-date-selected-hover-bg,var(--csb-date-selected-bg,var(--discovery-blue)));color:var(--csb-date-selected-hover-text,var(--csb-date-selected-text,#fff))}
.csb[data-csb="calendar_picker"] .csb-discovery-zone{display:flex;align-items:flex-start;margin-top:22px;color:#888;font-size:13px;line-height:1.5}
.csb[data-csb="calendar_picker"] .csb-discovery-zone>span:first-child{color:var(--discovery-blue);margin-right:8px;font-size:20px;line-height:1}
.csb[data-csb="calendar_picker"] .csb-discovery-zone select{display:block;width:100%;max-width:240px;margin-top:5px;padding:3px 0;border:0;border-radius:0;background:#fff;color:#666;font-size:12px;cursor:pointer}
.csb[data-csb="calendar_picker"] .csb-discovery-times{border-left:var(--csb-picker-side-border,1px) solid var(--discovery-line);border-top:var(--csb-picker-row-border,0px) solid var(--discovery-line);max-height:var(--csb-picker-times-height,470px);overflow-y:auto;scrollbar-width:thin}
.csb[data-csb="calendar_picker"] .csb-discovery-time{display:block;width:100%;min-height:45px;margin:0 0 8px;padding:10px 8px;border:1px solid var(--discovery-blue);border-radius:8px;background:#fff;color:var(--discovery-blue);font:600 14px/1.5 Arial,sans-serif;text-align:center;box-shadow:none}
.csb[data-csb="calendar_picker"] .csb-discovery-time:hover,.csb[data-csb="calendar_picker"] .csb-discovery-time:focus-visible{background:var(--discovery-blue);color:#fff}
.csb[data-csb="calendar_picker"] .csb-discovery-empty{margin:0;font-size:14px;color:#777}
@media(max-width:1200px){.csb[data-csb="calendar_picker"]{--csb-picker-columns:minmax(0,1fr);--csb-picker-side-border:0px;--csb-picker-row-border:1px;--csb-picker-times-height:300px}.csb[data-csb="calendar_picker"] .csb-discovery-layout>*{padding:22px 18px}.csb[data-csb="calendar_picker"] .csb-discovery-details h3{margin-bottom:12px}.csb[data-csb="calendar_picker"] .csb-discovery-zone select{max-width:100%}}


.csb[data-csb="calendar_picker"] .csb-discovery-time strong,.csb[data-csb="calendar_picker"] .csb-discovery-time span,.csb[data-csb="calendar_picker"] .csb-discovery-time small{display:block}
.csb[data-csb="calendar_picker"] .csb-discovery-time span{font-size:12px;font-weight:400;margin-top:3px}
.csb[data-csb="calendar_picker"] .csb-discovery-time small{font-size:11px;font-weight:400;margin-top:3px}
.csb[data-csb="calendar_picker"] .csb-discovery-time:disabled{opacity:1;color:#68717b;border-color:#d8dde2;background:#f4f5f6}
.csb[data-csb="calendar_picker"] .csb-discovery-time.is-booked{background:var(--csb-booked-bg,#e2eaf4);color:var(--csb-picker-booked-text,#243a53);border-color:var(--csb-picker-accent,#19728e)}
.csb[data-csb="calendar_picker"] .csb-discovery-layout{--discovery-blue:var(--csb-picker-accent,#19728e)}
.csb[data-csb="calendar_picker"] .csb-discovery-time:not(:disabled){background:var(--csb-picker-slot-bg,#fff);color:var(--csb-picker-slot-text,var(--discovery-blue))}
.csb[data-csb="calendar_picker"] .csb-discovery-time:not(:disabled):hover,.csb[data-csb="calendar_picker"] .csb-discovery-time:not(:disabled):focus-visible{background:var(--csb-picker-hover-bg,var(--discovery-blue));color:var(--csb-picker-hover-text,#fff)}

/* Private student materials, independent of calendar layouts. */
.csb.csb-materials{width:100%;max-width:100%}
.csb-materials .csb-materials-intro{margin-bottom:24px}
.csb-materials .csb-materials-list{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.csb-materials .csb-material-card{min-width:0;padding:24px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--csb-body-color,#14212b);overflow-wrap:anywhere}
.csb-materials .csb-material-card h3{font-size:20px;line-height:1.4;margin:0 0 8px}
.csb-materials .csb-material-meta{font-size:12px;color:#67727c;margin:0 0 14px}
.csb-materials .csb-material-notes{line-height:1.7;margin-bottom:18px}
.csb-materials .csb-material-notes:empty{display:none}
.csb-materials .csb-material-notes img{max-width:100%;height:auto}
.csb-materials audio,.csb-materials video{display:block;width:100%;max-width:100%;margin:16px 0}
.csb-materials video{max-height:540px;background:#111;border-radius:8px}
.csb-materials .csb-actions{margin-top:14px}
.csb-materials .csb-actions .csb-material-meta{margin:0}
.csb-materials .page-numbers{display:inline-block;margin:18px 5px 0;padding:5px 9px}
@media(max-width:600px){.csb-materials .csb-material-card{padding:18px}.csb-materials .csb-actions{align-items:stretch;flex-direction:column}.csb-materials .csb-actions a{text-align:center;overflow-wrap:anywhere}}

/* Studio login hover effects, scoped to the login controls only. */
body .csb.csb-login a.csb-login-open,
body .csb.csb-login #carter-login input[type=submit],
body .csb.csb-login a.csb-login-text-link{
    display:inline-block;
    transform-origin:center;
    transition:transform 160ms ease;
}
body .csb.csb-login a.csb-login-open:is(:hover,:focus-visible),
body .csb.csb-login #carter-login input[type=submit]:is(:hover,:focus-visible),
body .csb.csb-login a.csb-login-text-link:is(:hover,:focus-visible){
    transform:scale(1.03);
}
body .csb.csb-login a.csb-btn.csb-login-open:is(:hover,:focus-visible),
body .csb.csb-login #carter-login input[type=submit]:is(:hover,:focus-visible){
    background:var(--csb-button-bg,#000)!important;
    background-image:var(--csb-button-image,none)!important;
    border-color:var(--csb-button-border,#000)!important;
    color:var(--csb-button-text,#fff)!important;
}
body .csb.csb-login a.csb-login-text-link:not(.csb-btn):is(:hover,:focus-visible),
.elementor .elementor-element .csb.csb-login a.csb-login-text-link:not(.csb-btn):is(:hover,:focus-visible){
    color:#1B6B8A!important;
}

@media(prefers-reduced-motion:reduce){
    body .csb.csb-login a.csb-login-open,
    body .csb.csb-login #carter-login input[type=submit],
    body .csb.csb-login a.csb-login-text-link{
        transition:none;
        transform:none;
    }
}

/* Keep the calendar and Elementor form mounted; toggle visibility without losing state. */
.csb[data-csb="discovery"] .csb-content[hidden],
.csb[data-csb="discovery"] .csb-discovery-form[hidden]{display:none!important}
.csb[data-csb="discovery"] .csb-discovery-form{width:100%;min-width:0}
.csb[data-csb="discovery"] .csb-discovery-back{margin-bottom:4px!important}
.csb[data-csb="discovery"] .csb-discovery-selection{margin:0 0 4px!important}

/* Orange hover for the inline discovery form's submit button. */
body .csb[data-csb="discovery"] .csb-discovery-form .elementor-button[type=submit]:is(:hover,:focus-visible){
    background:#FF6904!important;
    background-image:none!important;
    border-color:#FF6904!important;
    color:#fff!important;
}

/* Plain Back to calendar link. */
body .csb[data-csb="discovery"] .csb-discovery-form a.csb-discovery-back{
    display:inline-block;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    padding:0!important;
    box-shadow:none!important;
    font:inherit;
    color:inherit;
    text-decoration:none!important;
}
body .csb[data-csb="discovery"] .csb-discovery-form a.csb-discovery-back:is(:hover,:focus-visible){
    color:#FF6904!important;
    background:transparent!important;
}

/* Remove extra space at the top of the embedded Elementor template only. */
body .csb[data-csb="discovery"] .csb-discovery-form-template,
body .csb[data-csb="discovery"] .csb-discovery-form-template > .elementor,
body .csb[data-csb="discovery"] .csb-discovery-form-template > .elementor > :first-child,
body .csb[data-csb="discovery"] .csb-discovery-form-template > .elementor > :first-child > .e-con-inner{
    margin-top:0!important;
    padding-top:0!important;
}
body .csb[data-csb="discovery"] .csb-discovery-form-template .elementor-widget-form{
    margin-top:0!important;
}
body .csb[data-csb="discovery"] .csb-discovery-form a.csb-discovery-back:is(:hover,:focus-visible){
    text-decoration:none!important;
}

.csb .csb-upcoming-payment{margin:0 0 16px;line-height:1.6}
.csb .csb-upcoming-payment p{margin:0 0 6px}

/* Independent time-slot borders; calendar date colours use their own controls. */
.csb[data-csb="calendar_picker"] .csb-discovery-time:not(:disabled):not(.is-booked){border-color:var(--csb-picker-slot-border,var(--csb-picker-accent,#19728e))}
.csb[data-csb="calendar_picker"] .csb-discovery-time:not(:disabled):not(.is-booked):is(:hover,:focus-visible){border-color:var(--csb-picker-hover-border,var(--csb-picker-slot-border,var(--csb-picker-accent,#19728e)))}
.csb[data-csb="calendar_picker"] .csb-discovery-time.is-booked{border-color:var(--csb-picker-booked-border,var(--csb-picker-accent,#19728e))}
.csb[data-csb="calendar_picker"] .csb-discovery-time.is-booked:is(:hover,:focus-visible){border-color:var(--csb-picker-booked-hover-border,var(--csb-picker-booked-border,var(--csb-picker-accent,#19728e)))}
