#whyble-fitpro .calendar-panel {min-width:0;background:var(--wc-panel);border:1px solid var(--wc-line);border-radius:var(--wc-radius);overflow:hidden}
#whyble-fitpro .cal-toolbar {padding:18px;display:grid;gap:14px;border-bottom:1px solid var(--wc-line)}
#whyble-fitpro .cal-toolbar-row {display:flex;flex-wrap:wrap;align-items:center;gap:12px}
#whyble-fitpro .cal-toolbar .control-label select {max-width:220px}
#whyble-fitpro .cal-hours {margin-left:auto;color:var(--wc-muted);font-size:14.4px}
#whyble-fitpro .cal-date-controls {display:flex;align-items:center;gap:7px}
#whyble-fitpro .cal-date-controls input {width:145px}
#whyble-fitpro .cal-arrow {font-size:24px;padding:2px 12px;line-height:1}
#whyble-fitpro .cal-period {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 12px;flex-wrap:wrap}
#whyble-fitpro .cal-period h2 {font-size:20.4px}
#whyble-fitpro .cal-period>span {font-size:14.4px;color:var(--wc-muted)}
#whyble-fitpro .cal-legend {display:flex;gap:9px 16px;flex-wrap:wrap;padding:0 18px 18px;color:var(--wc-muted);font-size:13.2px}
#whyble-fitpro .cal-legend>span {display:flex;align-items:center;gap:6px}
#whyble-fitpro .cal-legend-dot {width:8px;height:8px;border-radius:50%;flex-shrink:0}
#whyble-fitpro .cal-scroll {width:100%;overflow:auto;max-height:690px;height:min(690px,75dvh);min-height:360px;overscroll-behavior:contain;scrollbar-color:#3e6158 #0b1314;scrollbar-width:thin}
#whyble-fitpro .cal-timetable {display:grid;grid-template-columns:64px repeat(var(--cal-columns),minmax(190px,1fr));min-width:calc(64px + var(--cal-columns)*190px);padding-bottom:18px;background:#0d1718}
#whyble-fitpro .cal-axis-header,#whyble-fitpro .cal-column-header {position:sticky;top:0;z-index:3;min-height:62px;padding:12px;background:#1c2b2a;border-block:1px solid var(--wc-line);border-right:1px solid var(--wc-line)}
#whyble-fitpro .cal-axis-header {left:0;z-index:5;font-size:13.2px;color:var(--wc-muted)}
#whyble-fitpro .cal-column-header {display:flex;flex-direction:column;justify-content:center;gap:3px}
#whyble-fitpro .cal-column-header strong {font-size:15.6px;font-weight:550}
#whyble-fitpro .cal-column-header>span {font-size:13.2px;color:var(--wc-muted)}
#whyble-fitpro .cal-time-axis {position:sticky;left:0;z-index:2;background:#101b1c;border-right:1px solid var(--wc-line)}
#whyble-fitpro .cal-time-label {position:absolute;right:10px;transform:translateY(-50%);font-size:13.2px;color:var(--wc-muted);font-variant-numeric:tabular-nums}
#whyble-fitpro .cal-time-label:first-child {transform:none}
#whyble-fitpro .cal-resource {position:relative;border-right:1px solid var(--wc-line);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 23px,#1c2a2c 23px,#1c2a2c 24px),repeating-linear-gradient(to bottom,transparent 0,transparent 95px,#2a3b3b 95px,#2a3b3b 96px)}
#whyble-fitpro .cal-event {position:absolute;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;min-height:0;border:1px solid color-mix(in srgb,var(--event-color) 48%,transparent);border-left:3px solid var(--event-color);border-radius:7px;background:color-mix(in srgb,var(--event-color) 16%,#152022);color:var(--wc-text);padding:5px 7px;text-align:left;overflow:hidden;z-index:1;font-size:14.4px;line-height:1.2}
#whyble-fitpro .cal-event:hover {filter:brightness(1.2);z-index:2}
#whyble-fitpro .cal-event strong {font-size:14.4px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;flex-shrink:0}
#whyble-fitpro .cal-event-time {font-size:12px;font-variant-numeric:tabular-nums;flex-shrink:0;color:#d3e3df}
#whyble-fitpro .cal-event-meta {font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;color:#bdd0cb;flex-shrink:0}
#whyble-fitpro .cal-event-short {flex-direction:row;align-items:center;gap:5px}
#whyble-fitpro .cal-event-short .cal-event-meta {display:none}
#whyble-fitpro .cal-now {position:absolute;left:0;right:0;height:2px;background:#f16c76;pointer-events:none;z-index:2}
#whyble-fitpro .cal-note {font-size:13.2px;color:var(--wc-muted);padding:12px 18px;border-top:1px solid var(--wc-line)}
#whyble-fitpro .cal-empty {padding:36px 20px;text-align:center;display:grid;gap:8px}
#whyble-fitpro .calendar-source {font-size:14.4px;color:var(--wc-muted);margin-top:20px}
#whyble-fitpro .calendar-source .ws-panel {margin-top:14px}
#whyble-fitpro .cal-month-scroll {overflow:auto;scrollbar-color:#3e6158 #0b1314}
#whyble-fitpro .cal-month {display:grid;grid-template-columns:repeat(7,minmax(115px,1fr));min-width:805px}
#whyble-fitpro .cal-month-weekday {padding:10px;text-align:right;font-size:14.4px;color:var(--wc-muted);border-block:1px solid var(--wc-line)}
#whyble-fitpro .cal-month-day {min-height:138px;padding:7px;border-right:1px solid var(--wc-line);border-bottom:1px solid var(--wc-line);background:#101b1c;display:flex;flex-direction:column;gap:4px;min-width:0}
#whyble-fitpro .cal-outside {background:#0c1516}
#whyble-fitpro .cal-outside .cal-day-number {color:#6b8480}
#whyble-fitpro .cal-day-number {border:0;border-radius:50%;align-self:flex-end;width:28px;height:28px;background:transparent;color:var(--wc-text);padding:0;font-size:14.4px}
#whyble-fitpro .cal-today .cal-day-number {background:var(--wc-accent);color:#092923}
#whyble-fitpro .cal-event-compact {position:static;width:100%;height:auto;min-height:24px;padding:4px;display:block}
#whyble-fitpro .cal-event-compact .cal-event-time {display:block}
#whyble-fitpro .cal-event-compact strong {display:block;font-size:13.2px}
#whyble-fitpro .cal-more {border:0;background:transparent;color:var(--wc-accent);font-size:13.2px;text-align:left;padding:4px}
@media(max-width:760px){
 #whyble-fitpro .cal-hours {margin-left:0}
 #whyble-fitpro .cal-toolbar-row {gap:9px}
 #whyble-fitpro .cal-toolbar .control-label {flex-wrap:wrap}
 #whyble-fitpro .cal-period h2 {font-size:18px}
}
@media(max-width:460px){
 #whyble-fitpro .cal-toolbar {padding:12px}
 #whyble-fitpro .cal-date-controls {width:100%;gap:5px}
 #whyble-fitpro .cal-date-controls input {flex:1;min-width:0;width:120px;padding:9px 5px}
 #whyble-fitpro .cal-date-controls .workspace-control {padding-left:8px;padding-right:8px}
 #whyble-fitpro .cal-toolbar .control-label {width:100%;justify-content:space-between}
 #whyble-fitpro .cal-toolbar .control-label select {flex:1;max-width:200px;min-width:0}
 #whyble-fitpro .segmented-control button {padding:7px 11px}
}
@media(pointer:coarse){
 #whyble-fitpro .cal-event {min-height:0}
 #whyble-fitpro .cal-event-compact {min-height:32px}
}

/* Approved agenda treatment: Diep & ingetogen. */
#whyble-fitpro .cal-legend {padding:16px 18px;border-top:1px solid var(--wc-line);background:var(--wc-panel);gap:10px 18px}
#whyble-fitpro .cal-legend-dot {width:9px;height:9px;border-radius:3px}
#whyble-fitpro .cal-column-header {background:#152022}
#whyble-fitpro .cal-column-header strong {overflow-wrap:anywhere}
#whyble-fitpro .cal-resource {background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 47px,#1c2a2c 47px,#1c2a2c 48px),repeating-linear-gradient(to bottom,#10191a 0,#10191a 191px,#354345 191px,#354345 192px)}
#whyble-fitpro .cal-event {background:var(--event-color);border:0;border-radius:7px;padding:10px 12px 14px;gap:6px;color:#f5f7f6;line-height:1.35}
#whyble-fitpro .cal-event:hover {filter:brightness(1.12)}
#whyble-fitpro .cal-event>* {max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#whyble-fitpro .cal-event strong {font-size:14.4px;font-weight:600}
#whyble-fitpro .cal-event-time,#whyble-fitpro .cal-event-meta {font-size:13.2px;color:#ecf1ef}
#whyble-fitpro .cal-event-meta {margin-top:auto}
#whyble-fitpro .cal-event-bookings {margin-top:0}
#whyble-fitpro .cal-event-small .cal-event-bookings {display:none}
#whyble-fitpro .cal-event-short {padding:5px 8px;gap:2px;flex-direction:column;align-items:flex-start}
#whyble-fitpro .cal-event-short strong {font-size:13.2px}
#whyble-fitpro .cal-event-compact {padding:7px;display:flex;gap:3px;min-height:0}
#whyble-fitpro .cal-event-compact .cal-event-meta {margin-top:0}

#whyble-fitpro.wc-fixed-page .calendar-panel{flex:1;min-height:0;display:flex;flex-direction:column}
#whyble-fitpro.wc-fixed-page .cal-toolbar,#whyble-fitpro.wc-fixed-page .cal-period,#whyble-fitpro.wc-fixed-page .cal-legend{flex:none}
#whyble-fitpro.wc-fixed-page .cal-scroll,#whyble-fitpro.wc-fixed-page .cal-month-scroll{flex:1;min-height:0;height:auto;max-height:none;overflow:auto;overscroll-behavior:contain}
#whyble-fitpro.wc-fixed-page .cal-note{display:none}
#whyble-fitpro.wc-fixed-page .cal-empty{flex:1;min-height:0;overflow:auto}
@media(max-width:700px){
 #whyble-fitpro.wc-fixed-page .cal-toolbar{padding:10px 12px;gap:8px}
 #whyble-fitpro.wc-fixed-page .cal-toolbar-row{flex-wrap:nowrap;overflow-x:auto;min-width:0;scrollbar-width:thin}
 #whyble-fitpro.wc-fixed-page .cal-toolbar-row>*{flex-shrink:0}
 #whyble-fitpro.wc-fixed-page .cal-toolbar .control-label{width:auto;flex-wrap:nowrap;justify-content:flex-start}
 #whyble-fitpro.wc-fixed-page .cal-toolbar .control-label select{flex:none;min-width:150px}
 #whyble-fitpro.wc-fixed-page .cal-date-controls{width:auto}
 #whyble-fitpro.wc-fixed-page .cal-date-controls input{flex:none;width:145px}
 #whyble-fitpro.wc-fixed-page .cal-period{padding:10px 12px;gap:5px}
 #whyble-fitpro.wc-fixed-page .cal-legend{flex-wrap:nowrap;overflow-x:auto;padding:9px 12px;scrollbar-width:thin}
 #whyble-fitpro.wc-fixed-page .cal-legend>span{flex-shrink:0;white-space:nowrap}
}

#whyble-fitpro.wc-fixed-page .cal-toolbar{padding:10px 12px;gap:6px}
#whyble-fitpro.wc-fixed-page .cal-toolbar-row{gap:8px}
#whyble-fitpro.wc-fixed-page .cal-toolbar .workspace-control{min-height:32px;padding:6px 9px;font-size:14.4px}
#whyble-fitpro.wc-fixed-page .cal-toolbar .segmented-control{padding:3px;border-radius:8px}
#whyble-fitpro.wc-fixed-page .cal-toolbar .segmented-control button{padding:5px 10px;font-size:14.4px}
#whyble-fitpro.wc-fixed-page .cal-period{padding:7px 12px;gap:6px}
#whyble-fitpro.wc-fixed-page .cal-period h2{font-size:18px}
#whyble-fitpro.wc-fixed-page .cal-legend{padding:9px 12px}
#whyble-fitpro.wc-fixed-page .cal-axis-header,#whyble-fitpro.wc-fixed-page .cal-column-header{min-height:48px;padding:8px 10px}
@media(pointer:coarse){
 #whyble-fitpro.wc-fixed-page .cal-toolbar .workspace-control,#whyble-fitpro.wc-fixed-page .cal-toolbar .segmented-control button{min-height:44px}
}

/* Approved narrower appointments: retain typography, padding and lane placement.
   Width is 85% of the original lane width; the inset stripe uses no layout space. */
#whyble-fitpro .cal-event {box-shadow:inset 4px 0 0 var(--event-accent)}

/* Compact approved agenda: one control strip and quarter-hour rows. */
#whyble-fitpro.wc-fixed-page .cal-toolbar{display:flex;flex-flow:row nowrap;align-items:center;gap:12px;overflow-x:auto;padding:10px 12px;min-height:58px;scrollbar-width:thin}
#whyble-fitpro .cal-toolbar>*{flex-shrink:0}
#whyble-fitpro .cal-toolbar .control-label>span{display:none}
#whyble-fitpro .cal-toolbar .control-label{width:auto;display:flex}
#whyble-fitpro .cal-toolbar .control-label select{max-width:175px}
#whyble-fitpro .cal-hours{white-space:nowrap;margin-left:auto}
#whyble-fitpro .cal-period{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0!important}
#whyble-fitpro.wc-fixed-page .cal-legend{order:0;border-top:0;border-bottom:1px solid var(--wc-line);padding:12px;gap:10px 16px}
#whyble-fitpro .cal-resource{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,#243335 31px,#243335 32px),repeating-linear-gradient(to bottom,#10191a 0,#10191a 127px,#354345 127px,#354345 128px)}
#whyble-fitpro .cal-event{gap:2px}
#whyble-fitpro .cal-event-meta{margin-top:0}
#whyble-fitpro .cal-event-small .cal-event-meta{display:none}

#whyble-fitpro .cal-event:not(.cal-event-compact) .cal-event-bookings{display:none}

/* Agenda-only density: keep the rest of the application unchanged. */
#whyble-fitpro .wc-main:has(.calendar-panel){padding-left:10px;padding-right:10px;padding-top:6px;padding-bottom:6px}
#whyble-fitpro.wc-fixed-page .cal-toolbar{min-height:44px;padding:5px 8px;gap:7px}
#whyble-fitpro.wc-fixed-page .cal-toolbar .workspace-control{min-height:28px;padding:4px 7px;font-size:13px}
#whyble-fitpro.wc-fixed-page .cal-toolbar .segmented-control{padding:2px;gap:1px}
#whyble-fitpro.wc-fixed-page .cal-toolbar .segmented-control button{padding:4px 8px;font-size:13px;min-height:26px}
#whyble-fitpro .cal-toolbar .cl-quick-switch{padding:2px}
#whyble-fitpro .cal-toolbar .cl-quick-tab{padding:5px 9px;font-size:13px}
#whyble-fitpro .cal-toolbar .cal-date-controls{gap:4px}
#whyble-fitpro .cal-toolbar .cal-date-controls input{width:130px}
#whyble-fitpro .cal-toolbar .cl-section-name,#whyble-fitpro .cal-toolbar .cal-hours{font-size:12px}
#whyble-fitpro.wc-fixed-page .cal-legend{padding:8px;gap:8px 13px}
@media(pointer:coarse){#whyble-fitpro.wc-fixed-page .cal-toolbar button,#whyble-fitpro.wc-fixed-page .cal-toolbar select{min-height:36px}}

#whyble-fitpro .cal-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#whyble-fitpro .cal-select-trigger::after{content:'⌄';color:var(--wc-accent)}
#whyble-fitpro .cal-select-dialog{position:fixed;margin:0;padding:8px;background:#101d1e;color:var(--wc-text);border:1px solid #36534f;border-radius:10px;box-shadow:0 16px 40px #0008;max-height:min(420px,70dvh);overflow:hidden}
#whyble-fitpro .cal-select-dialog::backdrop{background:transparent}
#whyble-fitpro .cal-select-search{width:100%;margin:0 0 7px;font-size:14px}
#whyble-fitpro .cal-select-options{max-height:320px;overflow:auto;scrollbar-width:thin;scrollbar-color:#476d65 transparent}
#whyble-fitpro .cal-select-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-radius:6px;background:transparent;color:var(--wc-text);padding:9px 10px;font-size:14px;text-align:left}
#whyble-fitpro .cal-select-option:hover,#whyble-fitpro .cal-select-option:focus-visible{background:#213a37;outline:1px solid var(--wc-accent);outline-offset:-1px}
#whyble-fitpro .cal-select-option[aria-selected=true]{background:#1b3e38;color:var(--wc-accent)}
#whyble-fitpro .cal-select-check{color:var(--wc-accent)}
#whyble-fitpro .cal-select-empty{padding:10px;color:var(--wc-muted)}
