:root,[data-theme=light]{--ct-neon: #10B981;--ct-neon-deep: #064E3B;--ct-neon-mid: #047857;--ct-neon-dark: #059669;--ct-neon-soft: #D1FAE5;--ct-nav-accent: #ff9500;--ct-nav-accent-soft: #fff4e5;--ct-nav-accent-fg: #1c1c1e;--ct-nav-accent-muted: color-mix(in srgb, #ff9500 78%, #1c1c1e);--ct-bg: #F8FAFC;--ct-surface: #F8FAFC;--ct-surface-soft: #ebebef;--ct-border: #d1d1d6;--ct-divider: #d1d1d6;--ct-text: #1c1c1e;--ct-text-body: #1c1c1e;--ct-text-muted: #8e8e93;--ct-outline: #8e8e93;--ct-outline-variant: #d1d1d6;--ct-accent: #047857;--ct-accent-dark: #047857;--ct-accent-bright: #10B981;--ct-accent-soft: #D1FAE5;--ct-accent-mid: #D1FAE5;--ct-on-accent-bright: #ffffff;--ct-secondary: #059669;--ct-secondary-container: #D1FAE5;--ct-tertiary: #e8a89a;--ct-tertiary-container: #f5f0eb;--ct-danger: #ff3b30;--ct-danger-soft: #ffe8e6;--ct-warning: #8e8e93;--ct-warning-soft: #ebebef;--ct-success: #047857;--ct-success-soft: #D1FAE5;--ct-today-outline: #ff9500;--ct-on-inverse: #ffffff;--ct-glass-border: rgba(0, 0, 0, .06);--ct-hero-gradient-primary: linear-gradient(145deg, #064E3B 0%, #047857 50%, #10B981 100%);--ct-hero-gradient-secondary: linear-gradient(145deg, #047857 0%, #059669 55%, #10B981 100%);--ct-hero-gradient-dark: linear-gradient(145deg, #047857 0%, #059669 50%, #10B981 100%);--ct-tab-dark-bg: #047857;--ct-tab-dark-fg: #ffffff;--ct-tab-dark-stripe: #10B981;--ct-tab-volt-bg: #10B981;--ct-tab-volt-fg: #ffffff;--ct-tab-volt-fg-muted: color-mix(in srgb, var(--ct-tab-volt-fg) 62%, transparent);--ct-tab-volt-stripe: #047857;--ct-tab-neutral-bg: #F8FAFC;--ct-tab-neutral-fg: #ff9500;--ct-tab-neutral-stripe: #3a3a3c;--ct-tab-cool-bg: #6b8299;--ct-tab-cool-fg: #e5e5ea;--ct-tab-cool-stripe: #0d1b2e;--ct-tab-warm-bg: #f5f0eb;--ct-tab-warm-fg: #d4867a;--ct-tab-warm-stripe: #c96e62;--ct-shadow-sm: 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .02);--ct-shadow-lift: 0 4px 16px rgba(0, 0, 0, .08), 0 1px 4px rgba(0, 0, 0, .04);--ct-shadow-material: 0 8px 32px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .04);--ct-radius-xs: 6px;--ct-radius-sm: 10px;--ct-radius-md: 12px;--ct-radius: 14px;--ct-radius-xl: 20px;--ct-radius-pill: 9999px;--ct-sidebar-w: 244px;--ct-mobile-nav-h: 96px;--ct-mobile-nav-rail-w: 52px;--ct-glass-bg: rgba(255, 255, 255, .55);--ct-glass-stroke: rgba(255, 255, 255, .55);--ct-glass-highlight: rgba(255, 255, 255, .72);--ct-glass-text: rgba(28, 28, 30, .92);--ct-glass-text-dim: rgba(28, 28, 30, .55);--ct-glass-lens: rgba(255, 255, 255, .42);--ct-glass-shadow: rgba(0, 0, 0, .18);--ct-glass-spring: cubic-bezier(.3, 1.12, .4, 1);--ct-touch-min: 44px;--ct-font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;--ct-font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--ct-font-mono: "SF Mono", ui-monospace, "Menlo", monospace;--ct-font-cal: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;--ct-blur: 20px;--ct-material-bg: rgba(255, 255, 255, .78);--ct-material-border: rgba(0, 0, 0, .12);--ct-ease-spring: cubic-bezier(.25, .1, .25, 1);--ct-ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ct-duration-press: .2s;--ct-duration-fast: .15s;--ct-duration-normal: .25s;--ct-text-large-title: 34px;--ct-text-title1: 28px;--ct-text-title2: 22px;--ct-text-title3: 20px;--ct-text-headline: 17px;--ct-text-body: 15px;--ct-text-size-body: 15px;--ct-text-callout: 14px;--ct-text-subhead: 13px;--ct-text-footnote: 12px;--ct-text-caption: 11px;--ct-program-card-bg: var(--ct-surface);--ct-program-card-border: var(--ct-border);--ct-program-card-shadow: var(--ct-shadow-sm);--ct-program-card-media-bg: var(--ct-accent-soft);--ct-program-card-media-empty: linear-gradient( 145deg, var(--ct-accent-soft) 0%, color-mix(in srgb, var(--ct-accent-soft) 55%, var(--ct-surface)) 100% );--ct-program-card-title: var(--ct-text-body);--ct-program-card-meta: var(--ct-accent);--ct-program-card-subtitle: var(--ct-text-muted);--ct-program-card-action-bg: var(--ct-surface-soft);--ct-program-card-action-fg: var(--ct-text-body);--ct-program-card-action-hover: var(--ct-accent-soft);--ct-program-card-badge-fg: var(--ct-neon-deep);--ct-program-card-media-btn-bg: color-mix(in srgb, var(--ct-text) 72%, transparent);--ct-program-card-media-btn-fg: var(--ct-on-inverse);--ct-program-card-add-border: color-mix(in srgb, var(--ct-accent) 28%, var(--ct-border));--ct-program-card-add-bg: var(--ct-surface);--ct-program-card-add-hover-bg: var(--ct-accent-soft);--ct-program-card-add-icon-border: color-mix(in srgb, var(--ct-neon) 65%, var(--ct-border));--ct-modal-backdrop: color-mix(in srgb, var(--ct-bg) 55%, transparent);--ct-modal-input-bg: var(--ct-surface-soft)}[data-theme=dark]{--ct-neon: #10B981;--ct-neon-deep: #022C22;--ct-neon-mid: #064E3B;--ct-neon-dark: #34D399;--ct-neon-soft: rgba(16, 185, 129, .14);--ct-nav-accent: #ff9f0a;--ct-nav-accent-soft: rgba(255, 159, 10, .16);--ct-nav-accent-fg: #1c1c1e;--ct-nav-accent-muted: #ff9f0a;--ct-glass-bg: rgba(30, 30, 32, .38);--ct-glass-stroke: rgba(255, 255, 255, .14);--ct-glass-highlight: rgba(255, 255, 255, .35);--ct-glass-text: rgba(255, 255, 255, .92);--ct-glass-text-dim: rgba(255, 255, 255, .62);--ct-glass-lens: rgba(255, 255, 255, .1);--ct-glass-shadow: rgba(0, 0, 0, .45);--ct-bg: #000000;--ct-surface: #1c1c1e;--ct-surface-soft: #2c2c2e;--ct-border: #48484a;--ct-divider: #48484a;--ct-text: #f5f5f7;--ct-text-body: #f5f5f7;--ct-text-muted: #a1a1a6;--ct-outline: #545456;--ct-outline-variant: #48484a;--ct-accent: #ffffff;--ct-accent-dark: #10B981;--ct-accent-bright: #10B981;--ct-accent-soft: rgba(16, 185, 129, .14);--ct-accent-mid: rgba(16, 185, 129, .18);--ct-on-accent-bright: #ffffff;--ct-secondary: #6b8299;--ct-secondary-container: rgba(16, 185, 129, .14);--ct-tertiary: #e8a89a;--ct-tertiary-container: #3a3a3c;--ct-danger: #ff453a;--ct-danger-soft: rgba(255, 69, 58, .15);--ct-warning: #98989d;--ct-warning-soft: #2c2c2e;--ct-success: #10B981;--ct-success-soft: rgba(16, 185, 129, .14);--ct-today-outline: #ff9f0a;--ct-on-inverse: #ffffff;--ct-glass-border: rgba(255, 255, 255, .08);--ct-hero-gradient-primary: linear-gradient(145deg, #022C22 0%, #064E3B 50%, #047857 100%);--ct-hero-gradient-secondary: linear-gradient(145deg, #064E3B 0%, #047857 55%, #10B981 100%);--ct-hero-gradient-dark: linear-gradient(145deg, #022C22 0%, #064E3B 100%);--ct-tab-dark-bg: #3a3a3c;--ct-tab-dark-fg: #ffffff;--ct-tab-dark-stripe: #ff3b30;--ct-tab-volt-bg: #10B981;--ct-tab-volt-fg: #ffffff;--ct-tab-volt-fg-muted: color-mix(in srgb, var(--ct-tab-volt-fg) 62%, transparent);--ct-tab-volt-stripe: #047857;--ct-tab-neutral-bg: #2c2c2e;--ct-tab-neutral-fg: #ff9f0a;--ct-tab-neutral-stripe: #0d1b2e;--ct-tab-cool-bg: #1a2d5a;--ct-tab-cool-fg: #e5e5ea;--ct-tab-cool-stripe: #0d1b2e;--ct-tab-warm-bg: #3a3a3c;--ct-tab-warm-fg: #ff453a;--ct-tab-warm-stripe: #0d1b2e;--ct-shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--ct-shadow-lift: 0 4px 16px rgba(0, 0, 0, .4), 0 1px 4px rgba(0, 0, 0, .25);--ct-shadow-material: 0 8px 32px rgba(0, 0, 0, .5), 0 2px 8px rgba(0, 0, 0, .3);--ct-material-bg: rgba(18, 18, 20, .88);--ct-material-border: rgba(255, 255, 255, .16);--ct-program-card-bg: #0a111a;--ct-program-card-border: color-mix(in srgb, var(--ct-neon) 12%, var(--ct-border));--ct-program-card-shadow: var(--ct-shadow-lift);--ct-program-card-media-bg: #121c28;--ct-program-card-media-empty: linear-gradient(145deg, #121c28 0%, #1a2838 55%, #0d1520 100%);--ct-program-card-title: #ffffff;--ct-program-card-meta: var(--ct-neon);--ct-program-card-subtitle: rgba(255, 255, 255, .72);--ct-program-card-action-bg: #1b2633;--ct-program-card-action-fg: #ffffff;--ct-program-card-action-hover: #243244;--ct-program-card-badge-fg: #0a111a;--ct-program-card-media-btn-bg: rgba(10, 17, 26, .72);--ct-program-card-media-btn-fg: rgba(255, 255, 255, .92);--ct-program-card-add-border: color-mix(in srgb, var(--ct-neon) 22%, transparent);--ct-program-card-add-bg: rgba(10, 17, 26, .55);--ct-program-card-add-hover-bg: rgba(10, 17, 26, .82);--ct-program-card-add-icon-border: color-mix(in srgb, var(--ct-neon) 55%, transparent);--ct-modal-backdrop: color-mix(in srgb, var(--ct-bg) 72%, transparent);--ct-modal-input-bg: var(--ct-surface-soft)}.tint-sage{--tint-bg: #D1FAE5;--tint-fg: #047857}.tint-clay{--tint-bg: #fff4e5;--tint-fg: #ff9500}.tint-sky{--tint-bg: #6b8299;--tint-fg: #e5e5ea}.tint-lilac{--tint-bg: #f5f0eb;--tint-fg: #d4867a}.tint-amber{--tint-bg: #10B981;--tint-fg: #ffffff}.tint-rose{--tint-bg: #3a3a3c;--tint-fg: #ffffff}.tint-teal{--tint-bg: #D1FAE5;--tint-fg: #047857}.tint-stone{--tint-bg: #ebebef;--tint-fg: #8e8e93}[data-theme=dark] .tint-sage{--tint-bg: rgba(16, 185, 129, .14);--tint-fg: #10B981}[data-theme=dark] .tint-clay{--tint-bg: rgba(255, 159, 10, .16);--tint-fg: #ff9f0a}[data-theme=dark] .tint-sky{--tint-bg: #1a2d5a;--tint-fg: #e5e5ea}[data-theme=dark] .tint-lilac{--tint-bg: #3a3a3c;--tint-fg: #e8a89a}[data-theme=dark] .tint-amber{--tint-bg: #10B981;--tint-fg: #ffffff}[data-theme=dark] .tint-teal{--tint-bg: rgba(16, 185, 129, .14);--tint-fg: #10B981}[data-theme=dark] .tint-stone{--tint-bg: #2c2c2e;--tint-fg: #a1a1a6}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;min-height:max(100vh,var(--ct-app-height, 100dvh))}#root{position:relative;isolation:isolate;background:var(--ct-bg)}body{margin:0;font-family:var(--ct-font-body);font-size:var(--ct-text-body);color:var(--ct-text);background:var(--ct-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--ct-font-display);margin:0;font-weight:600;letter-spacing:-.022em}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.ct-scroll::-webkit-scrollbar{display:none}.ct-scroll{scrollbar-width:none;-ms-overflow-style:none}.ct-press{transition:transform var(--ct-duration-press) var(--ct-ease-spring)}.ct-press:active{transform:scale(.97)}.ct-row{transition:background var(--ct-duration-fast) var(--ct-ease-spring)}.ct-row:hover{background:var(--ct-surface-soft)}.ct-coach-lift{transition:transform var(--ct-duration-normal) var(--ct-ease-spring),box-shadow var(--ct-duration-normal) var(--ct-ease-spring)}.ct-coach-lift:hover{transform:scale(1.01);box-shadow:var(--ct-shadow-lift)}.ct-coach-action:hover{border-color:color-mix(in srgb,var(--ct-tab-volt-stripe) 35%,var(--ct-border))!important;background:var(--ct-accent-soft)!important}.ct-coach-week-card:hover{border-color:var(--ct-outline-variant)!important;box-shadow:var(--ct-shadow-lift)!important}.ct-coach-panel-btn:hover{background:var(--ct-divider)!important}.ct-shell{width:100%;height:var(--ct-app-height, 100dvh);min-height:var(--ct-app-height, 100dvh);display:flex;flex-direction:column;overflow:hidden;background:transparent}.ct-topbar{display:flex;align-items:center;gap:0;padding:14px 24px 14px 0;border-bottom:1px solid var(--ct-border);background:var(--ct-material-bg);backdrop-filter:saturate(180%) blur(var(--ct-blur));-webkit-backdrop-filter:saturate(180%) blur(var(--ct-blur));flex-shrink:0;z-index:35}.ct-topbar-brand-col{width:var(--ct-sidebar-w);flex-shrink:0;display:flex;align-items:center;padding-left:24px;padding-right:16px;border-right:1px solid var(--ct-border);box-sizing:border-box}.ct-topbar-main{flex:1;display:flex;align-items:center;gap:16px;min-width:0;padding-left:16px}.ct-topbar-brand{display:flex;align-items:center;gap:11px;min-width:0}.ct-brand-logo{display:block;height:auto;width:auto;max-width:100%;object-fit:contain;background:transparent}.ct-brand-logo--topbar{height:28px;width:auto;max-width:168px}.ct-brand-logo--compact{height:24px;width:auto;max-width:140px}.ct-brand-logo--auth{width:auto;height:auto;max-width:min(280px,100%);max-height:clamp(36px,7vw,56px)}.ct-brand-mark{width:36px;height:36px;border-radius:var(--ct-radius-sm);background:var(--ct-tab-volt-bg);color:var(--ct-tab-volt-fg);display:grid;place-items:center;box-shadow:var(--ct-shadow-sm);font-family:var(--ct-font-display);font-weight:700;font-size:.72rem;border:1px solid color-mix(in srgb,var(--ct-tab-volt-stripe) 35%,transparent)}.ct-topbar-brand-compact{display:none}.ct-topbar-title{flex:1;min-width:0}.ct-topbar-title-row{display:flex;align-items:baseline;min-width:0}.ct-topbar-title-row h1{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 14px;font-size:var(--ct-text-title2);font-weight:700;min-width:0;line-height:1.2}.ct-topbar-title-stat{font-family:var(--ct-font-display);font-size:19px;font-weight:600;color:var(--ct-nav-accent);letter-spacing:-.02em;white-space:nowrap}.ct-topbar-title p{margin:2px 0 0;font-size:13px;color:var(--ct-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-icon-btn{width:var(--ct-touch-min);height:var(--ct-touch-min);border-radius:50%;border:none;background:var(--ct-surface-soft);display:grid;place-items:center;position:relative;flex-shrink:0;color:var(--ct-text-body);transition:background var(--ct-duration-fast) var(--ct-ease-spring)}.ct-icon-btn:hover{background:var(--ct-border)}.ct-icon-btn.is-active{background:var(--ct-accent-soft);color:var(--ct-accent-dark);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-accent-bright) 35%,transparent)}.ct-icon-btn-dot{position:absolute;top:9px;right:10px;width:7px;height:7px;border-radius:var(--ct-radius-pill);background:var(--ct-danger);border:1.5px solid var(--ct-surface-soft)}.ct-body{flex:1;display:flex;min-height:0;overflow:hidden}.ct-sidebar{width:var(--ct-sidebar-w);flex-shrink:0;background:var(--ct-surface-soft);border-right:1px solid var(--ct-border);display:flex;flex-direction:column;min-height:0}.ct-sidebar-scroll{flex:1;overflow-y:auto;min-height:0;scrollbar-gutter:stable}.ct-nav-section{padding:10px 12px 6px;display:flex;flex-direction:column;gap:4px}.ct-nav-section:last-of-type{padding-bottom:10px}.ct-nav-section-title{font-family:var(--ct-font-body);font-size:11px;font-weight:600;color:var(--ct-text-muted);margin-bottom:1px;padding-left:2px;letter-spacing:.03em;text-transform:uppercase}.ct-nav-btn{width:100%;display:flex;align-items:center;gap:10px;min-height:36px;padding:7px 10px;border-radius:var(--ct-radius-sm);border:none;cursor:pointer;margin-bottom:0;background:transparent;text-align:left;color:inherit;text-decoration:none;transition:background var(--ct-duration-fast) var(--ct-ease-spring);box-sizing:border-box}.ct-nav-btn:hover{background:var(--ct-surface-soft)}.ct-nav-btn .ct-nav-icon{display:flex;flex-shrink:0;color:var(--ct-text-muted)}.ct-nav-btn.active .ct-nav-icon{color:var(--ct-nav-accent)}.ct-nav-btn.active{background:var(--ct-nav-accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-nav-accent) 28%,transparent)}.ct-nav-btn-label{display:block;font-size:13.5px;font-weight:500;color:var(--ct-text-body);line-height:1.25}.ct-nav-btn.active .ct-nav-btn-label{font-weight:600;color:var(--ct-nav-accent-muted)}.ct-nav-btn-detail{display:block;font-size:11.5px;color:var(--ct-text-muted);margin-top:1px;line-height:1.25}.ct-nav-badge{min-width:18px;height:18px;padding:0 5px;background:var(--ct-border);color:var(--ct-text-body);border-radius:var(--ct-radius-pill);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ct-nav-btn.active .ct-nav-badge{background:var(--ct-nav-accent);color:var(--ct-nav-accent-fg)}.ct-sidebar-footer{padding:10px 12px 12px;border-top:1px solid var(--ct-border);position:relative;flex-shrink:0}.ct-profile-card{width:100%;display:flex;align-items:center;gap:10px;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);padding:7px 8px;cursor:pointer;margin-bottom:0}.ct-profile-card-label{font-size:11px;font-weight:500;color:var(--ct-text-muted);margin-bottom:2px}.ct-profile-card-name{font-size:13px;font-weight:600;color:var(--ct-text)}.ct-sidebar-footer-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ct-switch-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:1px dashed var(--ct-border);border-radius:var(--ct-radius-sm);padding:7px 6px;cursor:pointer;margin-bottom:0;font-size:11.5px;font-weight:600;color:var(--ct-text-muted)}.ct-signout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);padding:7px 6px;cursor:pointer;font-size:11.5px;font-weight:600;color:var(--ct-text-muted)}.ct-topbar-signout{width:var(--ct-touch-min);height:var(--ct-touch-min);padding:0;flex-shrink:0;border:none;border-radius:var(--ct-radius-sm);background:transparent;color:var(--ct-text-body)}.ct-topbar-signout-icon{width:34px;height:34px;border-radius:var(--ct-radius-sm);background:var(--ct-surface-soft);border:1px solid var(--ct-border);display:grid;place-items:center;color:inherit;transition:background var(--ct-duration-fast) var(--ct-ease-spring),border-color var(--ct-duration-fast) var(--ct-ease-spring),color var(--ct-duration-fast) var(--ct-ease-spring)}.ct-topbar-signout:hover{background:transparent;color:var(--ct-danger)}.ct-topbar-signout:hover .ct-topbar-signout-icon{color:var(--ct-danger);background:color-mix(in srgb,var(--ct-danger) 16%,var(--ct-surface-soft));border-color:color-mix(in srgb,var(--ct-danger) 42%,var(--ct-border))}.ct-topbar-profile{text-decoration:none;color:inherit}.ct-liquid-back{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:47;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:min(220px,70vw);min-height:48px;padding:12px 28px;border:none;color:var(--ct-glass-text);font:inherit;font-size:15px;font-weight:600;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .35s var(--ct-glass-spring),color .2s ease}.ct-liquid-back:active{transform:translate(-50%) scale(.93)}.ct-main{flex:1;overflow-y:auto;padding:28px;min-width:0;min-height:0;position:relative;background:transparent}.ct-main.ct-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ct-text-muted) 42%,transparent) transparent;-ms-overflow-style:auto}.ct-pending-banner{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:12px 14px;border-radius:var(--ct-radius-sm);border:1px solid color-mix(in srgb,var(--ct-tab-cool-fg) 28%,transparent);background:color-mix(in srgb,var(--ct-tab-cool-bg) 22%,transparent);color:var(--ct-text-body);font-size:13.5px;line-height:1.45}.ct-pending-banner-chip{flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--ct-tab-cool-bg) 40%,transparent);color:var(--ct-tab-cool-fg)}.ct-main.ct-scroll::-webkit-scrollbar{display:block;width:10px}.ct-main.ct-scroll::-webkit-scrollbar-track{background:transparent}.ct-main.ct-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ct-text-muted) 36%,transparent);border:2px solid transparent;border-radius:var(--ct-radius-pill);background-clip:padding-box}.ct-main.ct-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ct-text-muted) 54%,transparent);background-clip:padding-box}.ct-main-surface{background:var(--ct-surface);padding:0}.ct-today-list{min-height:100%;padding-inline:clamp(24px,4vw,48px);padding-block:8px 24px}.ct-today-list.is-empty{display:flex;align-items:center;justify-content:center;min-height:min(520px,calc(100% - 24px))}.ct-today-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:32px 16px}.ct-today-empty-title{margin:0;font-family:var(--ct-font-display);font-size:18px;font-weight:700;color:var(--ct-text-body)}.ct-today-empty-desc{margin:0 0 12px;font-size:13.5px;color:var(--ct-text-muted)}.ct-today-empty-add{width:64px;height:64px;border:none;border-radius:50%;display:grid;place-items:center;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright, #fff);cursor:pointer;box-shadow:var(--ct-shadow-sm);transition:transform .12s ease,background .15s ease}.ct-today-empty-add svg{width:28px;height:28px}.ct-today-empty-add:hover{transform:scale(1.04)}.ct-today-empty-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}.ct-assign-modal{display:flex;flex-direction:column;padding:0;overflow:hidden;max-height:min(90dvh,720px)}.ct-assign-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 12px;border-bottom:1px solid var(--ct-border)}.ct-assign-modal-head-main{display:flex;flex-direction:column;gap:10px;min-width:0;flex:1}.ct-assign-modal-head h2{margin:0;font-size:18px;font-weight:700}.ct-assign-modal-sub{margin:4px 0 0;font-size:13px;color:var(--ct-text-muted)}.ct-assign-modal-body{padding:14px 20px;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:14px}.ct-assign-modal-help{margin:0;font-size:13px;line-height:1.45;color:var(--ct-text-muted);padding:10px 12px;border-radius:var(--ct-radius-sm);background:var(--ct-accent-soft);border:1px solid color-mix(in srgb,var(--ct-accent-bright) 28%,var(--ct-border))}.ct-assign-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.ct-assign-modal-row>.ct-field:only-child{grid-column:1 / -1}.ct-assign-time-stepper{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:6px;padding:8px 10px;border:1px solid var(--ct-border);border-radius:var(--ct-radius);background:var(--ct-surface-soft);overflow-x:auto}.ct-assign-time-adjust{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:6px;flex-shrink:0}.ct-assign-time-btn{box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:0;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);color:var(--ct-text-body);font-size:12px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer;display:grid;place-items:center}.ct-assign-time-btn:hover{background:var(--ct-accent-soft);border-color:color-mix(in srgb,var(--ct-accent-bright) 40%,var(--ct-border));color:var(--ct-accent-dark)}.ct-assign-time-center{position:relative;display:grid;place-items:center;flex:0 0 auto;min-width:88px;padding:4px 8px}.ct-assign-time-value{font-family:var(--ct-font-display);font-size:18px;font-weight:700;letter-spacing:.01em;color:var(--ct-text-body);line-height:1.1;white-space:nowrap;pointer-events:none}.ct-assign-time-native{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;background:transparent}.ct-date-field{position:relative;width:100%}.ct-date-field-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:8px 12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius);background:var(--ct-surface);color:var(--ct-text-body);font-size:14px;font-weight:600;cursor:pointer;text-align:left}.ct-date-field-icon{color:var(--ct-text-muted);font-size:12px}.ct-date-popover{position:absolute;z-index:40;top:calc(100% + 6px);left:0;min-width:min(100%,280px);max-height:min(360px,calc(100dvh - 24px));overflow:auto;padding:12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius);background:var(--ct-surface);box-shadow:var(--ct-shadow-md, 0 12px 28px rgba(0, 0, 0, .14))}.ct-date-popover-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.ct-date-month{font-weight:700;font-size:14px}.ct-date-nav{width:32px;height:32px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface-soft);font-size:18px;line-height:1;cursor:pointer}.ct-date-weekdays,.ct-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.ct-date-weekdays{margin-bottom:4px;font-size:11px;font-weight:600;color:var(--ct-text-muted);text-align:center}.ct-date-day{height:34px;border:none;border-radius:var(--ct-radius-sm);background:transparent;color:var(--ct-text-body);font-size:13px;font-weight:600;cursor:pointer}.ct-date-day.is-empty{pointer-events:none}.ct-date-day.is-today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-accent-bright) 70%,transparent)}.ct-date-day.is-selected{background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);box-shadow:none}.ct-date-day.is-selected.is-today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-on-accent-bright) 35%,transparent)}.ct-date-day:disabled{opacity:.35;cursor:not-allowed}.ct-date-popover-foot{display:flex;justify-content:flex-end;margin-top:10px}.ct-time-field{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius);background:var(--ct-surface-soft)}.ct-time-field-display{font-family:var(--ct-font-display);font-size:20px;font-weight:700;letter-spacing:.01em;color:var(--ct-text-body);line-height:1.1;text-align:center}.ct-time-wheels{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;flex:1 1 auto;min-width:0}.ct-time-field-picker{display:flex;align-items:center;justify-content:center;gap:10px}.ct-time-wheel-wrap{position:relative;width:52px;height:108px;overflow:hidden;border-radius:var(--ct-radius-sm);background:var(--ct-surface)}.ct-time-wheel{height:108px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:none;touch-action:none}.ct-time-wheel::-webkit-scrollbar{display:none}.ct-time-wheel-pad{height:36px}.ct-time-wheel-item{height:36px;display:grid;place-items:center;font-size:16px;font-weight:600;color:var(--ct-text-muted);cursor:pointer;user-select:none}.ct-time-wheel-item.is-selected{color:var(--ct-text-body);font-size:18px;font-weight:700}.ct-time-wheel-highlight{position:absolute;left:2px;right:2px;top:36px;height:36px;border-radius:var(--ct-radius-sm);border:1px solid color-mix(in srgb,var(--ct-accent-bright) 45%,var(--ct-border));background:color-mix(in srgb,var(--ct-accent-soft) 70%,transparent);pointer-events:none}.ct-time-wheel-fade{position:absolute;left:0;right:0;height:28px;pointer-events:none;z-index:1}.ct-time-wheel-fade--top{top:0;background:linear-gradient(to bottom,var(--ct-surface),transparent)}.ct-time-wheel-fade--bottom{bottom:0;background:linear-gradient(to top,var(--ct-surface),transparent)}.ct-time-wheels-sep{font-weight:700;font-size:18px;color:var(--ct-text-muted);padding-bottom:2px}.ct-time-period,.ct-field .ct-time-period,.ct-time-field .ct-time-period{box-sizing:border-box;width:52px;min-width:52px;max-width:52px;flex:0 0 52px;height:36px;margin-left:4px;padding:0 4px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);color:var(--ct-text-body);font-size:12px;font-weight:700;text-align:center;cursor:pointer}[data-theme=dark] .ct-date-popover{background:var(--ct-surface);border-color:var(--ct-outline-variant);box-shadow:var(--ct-shadow-material, 0 12px 28px rgba(0, 0, 0, .45))}[data-theme=dark] .ct-date-field-trigger{background:var(--ct-surface);border-color:var(--ct-outline-variant);color:var(--ct-text-body)}[data-theme=dark] .ct-date-day.is-selected{background:var(--ct-accent-bright);color:#06281f}[data-theme=dark] .ct-time-field{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-time-wheel-wrap,[data-theme=dark] .ct-time-period,[data-theme=dark] .ct-assign-time-btn{background:var(--ct-surface);border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-time-wheel-fade--top{background:linear-gradient(to bottom,var(--ct-surface),transparent)}[data-theme=dark] .ct-time-wheel-fade--bottom{background:linear-gradient(to top,var(--ct-surface),transparent)}.ct-assign-clients-field{flex:1;min-height:0;display:flex;flex-direction:column}.ct-assign-pick-body{flex:1;min-height:0}.ct-assign-client-list{max-height:320px;overflow:auto;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface-soft)}.ct-assign-client-list--pick{flex:1;min-height:200px;max-height:none}.ct-assign-client-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--ct-divider);cursor:pointer}.ct-assign-client-row:last-child{border-bottom:none}.ct-assign-client-pick{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;width:100%;padding:10px 12px;border:none;border-bottom:1px solid var(--ct-divider);background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.ct-assign-client-pick:last-child{border-bottom:none}.ct-assign-client-pick:hover{background:color-mix(in srgb,var(--ct-accent-soft) 70%,transparent)}.ct-assign-client-pick.is-on{background:var(--ct-accent-soft)}.ct-assign-client-check{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;border:1.5px solid var(--ct-border);font-size:12px;font-weight:700;color:var(--ct-accent-dark);background:var(--ct-surface)}.ct-assign-client-pick.is-on .ct-assign-client-check{border-color:var(--ct-accent-bright);background:var(--ct-accent-bright);color:#fff}.ct-assign-client-name{font-size:13.5px;font-weight:600}.ct-assign-client-program{font-size:12px;color:var(--ct-text-muted)}.ct-assign-selected{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius);background:var(--ct-surface-soft)}.ct-assign-selected--head{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:0;border:none;border-radius:0;background:transparent}.ct-assign-selected-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ct-assign-selected-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ct-text-muted)}.ct-assign-change-client{border:none;background:none;padding:0;font-size:12.5px;font-weight:700;color:var(--ct-accent-dark);cursor:pointer;flex-shrink:0}.ct-assign-change-client:hover{text-decoration:underline}.ct-assign-selected-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.ct-assign-selected-chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:var(--ct-radius-pill);background:var(--ct-surface);border:1px solid color-mix(in srgb,var(--ct-accent-bright) 35%,var(--ct-border));font-size:13px;font-weight:600;color:var(--ct-text-body)}.ct-assign-modal-foot{display:flex;justify-content:center;align-items:center;gap:10px;padding:14px 20px 18px;border-top:1px solid var(--ct-border)}@media(max-width:767px){.ct-modal-backdrop:has(.ct-assign-modal){padding:0;place-items:stretch}.ct-modal.ct-assign-modal{width:100%;max-width:none;height:100%;max-height:none;min-height:100%;min-height:100dvh;border-radius:0;border:none}.ct-assign-modal-head{padding:14px 16px calc(10px + env(safe-area-inset-top,0px));padding-top:max(14px,env(safe-area-inset-top,0px))}.ct-assign-modal-body{padding:12px 16px;gap:12px}.ct-assign-modal-row{grid-template-columns:1fr}.ct-assign-time-stepper{flex-wrap:wrap;justify-content:center;gap:8px;overflow-x:visible}.ct-assign-time-stepper .ct-assign-time-adjust{flex:1 1 100%;flex-direction:row;justify-content:center}.ct-assign-time-center{order:-1;flex:1 1 100%;padding:6px 8px}.ct-assign-time-value{font-size:22px}.ct-assign-modal-foot{padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;flex-wrap:wrap}.ct-assign-modal-foot .ct-btn-secondary,.ct-assign-modal-foot .ct-btn-primary{min-width:120px;justify-content:center}}.ct-assign-program-pick{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow:auto}.ct-assign-program-pick-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);cursor:pointer}.ct-assign-program-pick-btn strong{font-size:14px}.ct-assign-program-pick-btn span{font-size:12px;color:var(--ct-text-muted)}.ct-assign-program-pick-btn:hover{background:var(--ct-accent-soft);border-color:color-mix(in srgb,var(--ct-accent-bright) 40%,var(--ct-border))}.ct-today-add-row{display:flex;justify-content:center;padding:18px 0 8px}.ct-today-add-below{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 18px;border:1px dashed color-mix(in srgb,var(--ct-accent-bright) 45%,var(--ct-border));border-radius:var(--ct-radius-pill);background:var(--ct-surface);color:var(--ct-accent-dark);font-size:13.5px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease}.ct-today-add-below svg{width:16px;height:16px}.ct-today-add-below:hover{background:var(--ct-accent-soft);border-color:var(--ct-accent-bright)}.ct-today-page-head{margin:4px 0 20px}.ct-today-page-count{margin:0;font-size:15px;font-weight:500;color:var(--ct-text-muted)}.ct-today-timeline{display:flex;flex-direction:column;gap:14px;width:100%;max-width:880px;margin-inline:auto}.ct-today-item{min-width:0}.ct-today-card{display:flex;align-items:center;justify-content:space-between;gap:20px 28px;background:var(--ct-surface);border:1px solid var(--ct-outline-variant);border-radius:var(--ct-radius);padding:22px 24px;box-shadow:0 4px 16px #0000000a;transition:box-shadow .25s ease,border-color .2s ease,background .2s ease}.ct-today-card:hover{box-shadow:0 8px 24px #00000014}.ct-today-item.is-past .ct-today-card{background:color-mix(in srgb,var(--ct-surface-soft) 72%,var(--ct-surface));border-color:var(--ct-outline-variant);color:var(--ct-text-muted)}.ct-today-item.is-past .ct-today-card-title,.ct-today-item.is-past .ct-today-client-name{color:color-mix(in srgb,var(--ct-text) 62%,var(--ct-text-muted))}.ct-today-item.is-past .ct-today-time-pill{background:color-mix(in srgb,var(--ct-surface-soft) 80%,var(--ct-divider));color:var(--ct-text-muted)}.ct-today-item.is-current .ct-today-card{background:color-mix(in srgb,var(--ct-accent-soft) 78%,var(--ct-surface));border-color:color-mix(in srgb,var(--ct-accent-bright) 45%,var(--ct-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--ct-accent-bright) 22%,transparent),0 4px 16px #0000000a}.ct-today-item.is-current .ct-today-time-pill{background:var(--ct-accent-soft);color:var(--ct-accent-dark)}.ct-today-item.is-upcoming .ct-today-card{background:var(--ct-surface);border-color:var(--ct-outline-variant)}.ct-today-item.is-upcoming .ct-today-time-pill{background:color-mix(in srgb,var(--ct-accent-soft) 45%,var(--ct-surface-soft));color:var(--ct-accent-dark)}.ct-today-item.is-upcoming.is-soon .ct-today-card{background:color-mix(in srgb,var(--ct-accent-soft) 35%,var(--ct-surface));border-color:color-mix(in srgb,var(--ct-nav-accent) 40%,var(--ct-border))}.ct-today-item.is-missed .ct-today-card{background:color-mix(in srgb,var(--ct-nav-accent-soft) 70%,var(--ct-surface));border-color:color-mix(in srgb,var(--ct-nav-accent) 40%,var(--ct-border))}.ct-today-item.is-missed .ct-today-time-pill{background:var(--ct-nav-accent-soft);color:var(--ct-nav-accent-muted)}.ct-today-card-body{flex:1;min-width:0}.ct-today-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.ct-today-card-meta{min-width:0}.ct-today-time-pill{display:inline-block;margin-bottom:8px;padding:4px 10px;border-radius:var(--ct-radius-pill);background:var(--ct-surface-soft);color:var(--ct-text-muted);font-size:12px;font-weight:600;letter-spacing:.02em}.ct-today-card-title{margin:0;font-family:var(--ct-font-display);font-size:18px;font-weight:700;line-height:1.3;color:var(--ct-text)}.ct-today-status{flex-shrink:0;font-size:var(--ct-text-caption);font-weight:600;border-radius:var(--ct-radius-pill);padding:5px 12px;letter-spacing:.01em;white-space:nowrap;border:1px solid transparent}.ct-today-status-ongoing{color:var(--ct-on-accent-bright);background:var(--ct-accent-bright)}.ct-today-status-done,.ct-today-status-ended{color:var(--ct-text-muted);background:var(--ct-surface-soft);border-color:var(--ct-border)}.ct-today-status-missed{color:var(--ct-nav-accent-fg);background:var(--ct-nav-accent)}.ct-today-status-moved,.ct-today-status-rescheduled{color:var(--ct-text-muted);background:var(--ct-surface-soft);border-color:var(--ct-border)}.ct-today-item.is-current .ct-today-status-rescheduled,.ct-today-item.is-upcoming .ct-today-status-rescheduled{color:var(--ct-accent-dark);background:var(--ct-accent-soft);border-color:transparent}.ct-today-status-next,.ct-today-status-due{color:var(--ct-on-accent-bright);background:var(--ct-accent-bright)}.ct-today-status-scheduled{color:var(--ct-accent-dark);background:color-mix(in srgb,var(--ct-accent-soft) 55%,var(--ct-surface-soft))}.ct-today-status-soon{color:var(--ct-nav-accent-muted);background:var(--ct-nav-accent-soft)}.ct-today-card-client{display:flex;align-items:center;gap:14px;margin-bottom:0;min-width:0}.ct-today-card-client-text{min-width:0}.ct-today-client-name{margin:0;font-size:14px;font-weight:700;color:var(--ct-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-today-client-sub{margin:2px 0 0;font-size:13px;font-weight:500;color:var(--ct-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-today-client-sub.is-missed{color:var(--ct-nav-accent-muted)}.ct-today-client-sub.is-moved{color:var(--ct-text-muted)}.ct-today-card-actions{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:8px;flex:0 0 auto;min-width:148px;margin-left:auto}.ct-today-action-btn{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;font-size:13.5px;font-weight:700;letter-spacing:.02em;padding:10px 16px;min-height:40px;min-width:148px;border-radius:var(--ct-radius-sm);border:none;cursor:pointer;transition:opacity .15s,background .15s,border-color .15s;white-space:nowrap;line-height:1;text-decoration:none}.ct-today-action-btn:disabled{opacity:.4;cursor:default}.ct-today-action-start{background:var(--ct-neon-mid);color:var(--ct-on-accent-bright)}.ct-today-action-start:hover:not(:disabled){opacity:.92}.ct-today-action-live{background:var(--ct-danger);color:#fff}.ct-today-action-secondary{background:var(--ct-surface);color:var(--ct-text);border:1px solid var(--ct-outline-variant)}.ct-today-action-secondary:hover{background:var(--ct-surface-soft)}.ct-today-item.is-past .ct-today-action-secondary{background:color-mix(in srgb,var(--ct-surface) 70%,var(--ct-surface-soft));color:color-mix(in srgb,var(--ct-text) 70%,var(--ct-text-muted))}.ct-today-action-reschedule{color:var(--ct-nav-accent-muted);background:var(--ct-nav-accent-soft);border:1px solid color-mix(in srgb,var(--ct-nav-accent) 40%,var(--ct-border))}.ct-today-action-start.is-pulse{animation:ct-today-pulse 1.4s ease-in-out infinite}@keyframes ct-today-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--ct-accent-bright) 45%,transparent)}50%{box-shadow:0 0 0 6px transparent}}.ct-reschedule-reason{resize:vertical;min-height:72px;line-height:1.4}.ct-reschedule-dialog .ct-reschedule-field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--ct-text-muted)}.ct-reschedule-required{font-style:normal;font-weight:700;font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:var(--ct-danger);margin-left:6px}.ct-reschedule-hint{font-size:12px;font-weight:600;color:var(--ct-text-muted)}.ct-reschedule-hint.is-warn{color:var(--ct-danger)}.ct-reschedule-error{margin:0 0 12px;padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--ct-danger) 35%,var(--ct-border));background:color-mix(in srgb,var(--ct-danger) 12%,var(--ct-surface));color:var(--ct-danger);font-size:13px;font-weight:600}.ct-reschedule-dialog{display:flex;flex-direction:column;max-height:min(92dvh,760px);overflow:hidden;padding:0}.ct-reschedule-dialog-body{flex:1 1 auto;min-height:0;overflow:auto;padding:22px 22px 8px}.ct-reschedule-dialog-actions{flex:0 0 auto;margin:0;padding:14px 22px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--ct-border);background:var(--ct-surface)}.ct-reschedule-input{font:inherit;font-weight:600;color:var(--ct-text);padding:10px 12px;border-radius:10px;border:1px solid var(--ct-border);background:var(--ct-bg)}.ct-reschedule-time-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ct-reschedule-time-btn{border:1px solid var(--ct-border);background:var(--ct-surface);color:var(--ct-text-body);font:inherit;font-size:12px;font-weight:650;padding:6px 8px;border-radius:8px;cursor:pointer}.ct-reschedule-time-value{min-width:78px;text-align:center;font-size:15px;font-weight:700;color:var(--ct-text)}.ct-live-banner{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;border-radius:12px;border:none;background:var(--ct-danger);color:#fff;font:inherit;font-size:14px;font-weight:500;cursor:pointer;margin-bottom:16px;text-align:left;transition:opacity .15s}.ct-live-banner:hover{opacity:.9}.ct-live-banner-dot{width:10px;height:10px;border-radius:50%;background:#fff;flex-shrink:0;animation:ct-live-pulse 2s ease-in-out infinite}.ct-live-banner-text{flex:1}.ct-live-banner-arrow{font-size:16px;flex-shrink:0}.ct-client-toast{position:fixed;top:max(12px,env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);z-index:90;display:flex;align-items:flex-start;gap:12px;width:min(420px,calc(100vw - 24px));padding:12px 14px;border-radius:var(--ct-radius);border:1px solid color-mix(in srgb,var(--ct-accent-bright) 35%,var(--ct-border));background:var(--ct-surface);box-shadow:var(--ct-shadow-lift)}.ct-client-toast-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;font-size:13px;line-height:1.35}.ct-client-toast-copy strong{font-size:13.5px}.ct-client-toast-copy span{color:var(--ct-text-muted)}.ct-client-toast-dismiss{border:none;background:transparent;color:var(--ct-text-muted);cursor:pointer;font-size:14px;line-height:1;padding:2px 4px}.ct-client-toast-action{border:none;background:var(--ct-accent-soft);color:var(--ct-accent-dark);font:inherit;font-size:12px;font-weight:700;padding:6px 10px;border-radius:var(--ct-radius-pill);cursor:pointer;white-space:nowrap}.ct-session-history-client-note{margin-top:6px;color:var(--ct-text-muted)}.ct-panel{background:var(--ct-surface);border:none;border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-sm)}.ct-panel-header{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-bottom:1px solid var(--ct-divider)}.ct-panel-header-title{font-family:var(--ct-font-display);font-size:var(--ct-text-headline);font-weight:600;color:var(--ct-text)}.ct-panel-body{padding:20px}.ct-page{max-width:920px;display:flex;flex-direction:column;gap:14px}.ct-page-wide{max-width:1200px;width:100%}.ct-page-narrow{max-width:860px}.ct-client-detail-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}.ct-client-detail-back{width:40px;height:40px;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-border);background:var(--ct-surface-soft);color:var(--ct-text-body);display:grid;place-items:center;flex-shrink:0}.ct-client-detail-head-copy{flex:1;min-width:0}.ct-client-detail-head-action{margin-left:auto;flex-shrink:0}.ct-client-program-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.ct-client-program-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}.ct-client-program-copy{min-width:0}.ct-client-program-label{font-size:12px;color:var(--ct-text-muted)}.ct-client-program-name{font-size:16px;font-weight:600;margin-top:4px;color:var(--ct-text)}.ct-client-program-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ct-client-program-btn{padding:8px 14px;font-size:12.5px;min-height:36px}.ct-client-program-btn.is-active{background:var(--ct-accent-soft);color:var(--ct-accent-dark)}.ct-client-program-btn.is-remind{background:color-mix(in srgb,var(--ct-today-outline) 16%,var(--ct-surface));color:var(--ct-today-outline)}.ct-client-program-btn.is-remind:hover:not(:disabled){background:color-mix(in srgb,var(--ct-today-outline) 24%,var(--ct-surface))}.ct-client-action-note{margin-top:12px;font-size:12.5px;font-weight:600;color:var(--ct-success)}.ct-client-notes-compose{margin-top:14px;padding-top:14px;border-top:1px solid var(--ct-divider)}.ct-client-notes-input{width:100%;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);padding:11px 13px;background:var(--ct-surface-soft);color:var(--ct-text-body);resize:none;line-height:1.5}.ct-client-notes-input:focus{outline:none;border-color:var(--ct-accent-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 20%,transparent)}.ct-client-notes-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}[data-theme=dark] .ct-client-program-btn.is-active{background:var(--ct-accent-soft);color:var(--ct-accent-bright)}[data-theme=dark] .ct-client-program-btn.is-remind{background:color-mix(in srgb,var(--ct-today-outline) 22%,var(--ct-surface-soft));color:var(--ct-today-outline)}[data-theme=dark] .ct-client-notes-input{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant);color:var(--ct-text-body)}.ct-session-history-panel{padding:0}.ct-session-history-item{padding:16px 20px}.ct-session-history-item.has-border{border-top:1px solid var(--ct-divider)}.ct-session-history-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.ct-session-history-copy{min-width:0}.ct-session-history-title{font-weight:700;color:var(--ct-text)}.ct-session-history-meta{color:var(--ct-text-muted);font-size:.9rem;margin-top:4px}.ct-session-history-edit{border:none;background:transparent;color:var(--ct-accent-dark);font-weight:600;font-size:13px;flex-shrink:0}.ct-session-history-compose{margin-top:12px}.ct-session-history-input{width:100%;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);padding:11px 13px;background:var(--ct-surface-soft);color:var(--ct-text-body);resize:none;line-height:1.5}.ct-session-history-input:focus{outline:none;border-color:var(--ct-accent-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 20%,transparent)}.ct-session-history-compose-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.ct-session-history-note{margin:8px 0 0;color:var(--ct-text-body);line-height:1.55}.ct-session-history-note.is-empty{color:var(--ct-text-muted)}[data-theme=dark] .ct-session-history-edit{color:var(--ct-accent-bright)}[data-theme=dark] .ct-session-history-input{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant);color:var(--ct-text-body)}.ct-page-messages{min-height:calc(100vh - 132px);display:flex;flex-direction:column;gap:12px;max-width:none;width:100%}.ct-messages-search-row{display:flex;align-items:center;gap:10px}.ct-messages-search-row .ct-search{flex:1}.ct-messages-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:12px;align-items:stretch;flex:1;min-height:520px}.ct-messages-list-panel,.ct-messages-thread-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.ct-messages-list-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--ct-divider);flex-shrink:0}.ct-messages-list-title{font-size:15px;font-weight:700;color:var(--ct-text-body)}.ct-messages-list-subtitle{font-size:12px;color:var(--ct-text-muted);margin-top:2px}.ct-messages-list-toggle{flex-shrink:0;border:1px solid var(--ct-border);background:var(--ct-surface-soft);color:var(--ct-text-body);font-size:12px;font-weight:600;padding:7px 11px;border-radius:var(--ct-radius-pill)}.ct-messages-list-body{flex:1;min-height:0;overflow-y:auto}.ct-messages-list-empty{padding:28px 18px;text-align:center;color:var(--ct-text-muted);font-size:14px}.ct-messages-list-empty-action{margin-top:12px}.ct-messages-section-label{padding:10px 18px 6px;font-size:var(--ct-text-footnote);font-weight:600;color:var(--ct-text-muted)}.ct-messages-section-label.has-border{border-top:1px solid var(--ct-divider)}.ct-messages-thread-row{width:100%;display:flex;align-items:center;gap:13px;padding:13px 18px;border:none;border-top:1px solid var(--ct-divider);background:transparent;cursor:pointer;text-align:left}.ct-messages-thread-row.is-first{border-top:none}.ct-messages-thread-row.is-active{background:var(--ct-accent-soft)}.ct-messages-thread-copy{flex:1;min-width:0}.ct-messages-thread-name{font-size:15px;font-weight:600}.ct-messages-thread-preview{font-size:13px;color:var(--ct-text-muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-messages-thread-meta{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex-shrink:0}.ct-messages-thread-time{font-size:11.5px;font-weight:700;color:var(--ct-accent)}.ct-messages-thread-unread{min-width:19px;height:19px;padding:0 5px;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);border-radius:var(--ct-radius-pill);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.ct-messages-thread{display:flex;flex-direction:column;min-height:520px;height:100%}.ct-messages-thread-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--ct-divider);flex-shrink:0}.ct-messages-back{display:none;width:40px;height:40px;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-border);background:var(--ct-surface-soft);color:var(--ct-text-body);place-items:center;flex-shrink:0}.ct-messages-thread-head-copy{min-width:0}.ct-messages-thread-head-name{font-weight:700}.ct-messages-thread-head-detail{font-size:12.5px;color:var(--ct-text-muted);margin-top:2px}.ct-messages-thread-body{flex:1;min-height:320px;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.ct-messages-thread-empty{align-items:center;justify-content:center}.ct-messages-thread-placeholder{color:var(--ct-text-muted);font-size:14px}.ct-messages-bubble-wrap{align-self:flex-start;max-width:76%}.ct-messages-bubble-wrap.is-coach{align-self:flex-end}.ct-messages-bubble{background:var(--ct-surface-soft);padding:10px 14px;border-radius:var(--ct-radius-sm);font-size:14px;line-height:1.45}.ct-messages-bubble-wrap.is-coach .ct-messages-bubble{background:var(--ct-accent-soft)}.ct-messages-bubble-time{font-size:11.5px;color:var(--ct-text-muted);margin-top:4px}.ct-messages-bubble-wrap.is-coach .ct-messages-bubble-time{text-align:right}.ct-messages-compose{padding:12px 14px 16px;border-top:1px solid var(--ct-border);background:var(--ct-surface-soft);flex-shrink:0}.ct-messages-compose-inner{display:flex;align-items:center;gap:8px;background:var(--ct-surface-soft);border:none;border-radius:var(--ct-radius-xl);padding:6px 6px 6px 16px}.ct-messages-compose-inner input{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:var(--ct-text-body)}.ct-messages-send{width:34px;height:34px;border-radius:50%;border:none;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);display:grid;place-items:center;font-size:16px;font-weight:700}.ct-dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,400px);gap:20px;align-items:start}.ct-dashboard-sessions{min-width:0;width:100%;height:auto;align-self:start;display:flex;flex-direction:column}.ct-today-panel-wrap{width:100%;border-radius:var(--ct-radius-xl);overflow:hidden}.ct-today-panel{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);width:100%;max-height:min(380px,calc(100dvh - 220px));overflow:hidden;border-radius:var(--ct-radius-xl);--ct-panel-bg: var(--ct-tab-volt-bg);--ct-panel-fg: #022C22;--ct-panel-fg-muted: color-mix(in srgb, #022C22 62%, transparent);--ct-panel-border: var(--ct-tab-volt-stripe);--ct-panel-stripe: var(--ct-tab-volt-stripe);--ct-panel-badge-fg: #ffffff;--ct-panel-row-bg: color-mix(in srgb, #ffffff 38%, transparent);--ct-panel-row-bg-featured: color-mix(in srgb, #ffffff 52%, transparent);--ct-panel-row-bg-next: color-mix(in srgb, #ffffff 64%, transparent);--ct-panel-row-border: color-mix(in srgb, var(--ct-panel-fg) 10%, transparent);--ct-panel-schedule-divider: color-mix(in srgb, var(--ct-panel-fg) 18%, transparent);--ct-panel-ring-track: color-mix(in srgb, var(--ct-panel-fg) 18%, transparent);background:var(--ct-panel-bg);border:1px solid color-mix(in srgb,var(--ct-panel-stripe) 40%,transparent);box-shadow:var(--ct-shadow-lift);color:var(--ct-panel-fg)}.ct-today-panel-glow{display:none}.ct-today-panel-main{position:relative;min-width:0;min-height:0;padding:20px;display:flex;flex-direction:column;justify-content:center}.ct-today-panel-header{display:flex;align-items:center;gap:16px;margin-bottom:14px}.ct-today-panel-heading{flex:1;min-width:0}.ct-today-panel-kicker{font-size:var(--ct-text-footnote);font-weight:600;color:var(--ct-panel-fg-muted)}.ct-today-panel-progress{font-family:var(--ct-font-display);font-size:26px;font-weight:600;color:var(--ct-panel-fg);letter-spacing:-.02em;margin-top:4px;line-height:1.1}.ct-today-panel-empty{padding:16px 4px 8px}.ct-today-panel-empty.is-inline{padding:12px 4px}.ct-today-panel-empty-title{font-size:14px;font-weight:700;color:var(--ct-panel-fg)}.ct-today-panel-empty-desc{margin-top:4px;font-size:12.5px;line-height:1.4;color:var(--ct-panel-fg-muted)}.ct-client-progress-empty{margin:0;padding:12px 0;font-size:13px;color:var(--ct-text-muted)}.ct-today-panel-ring{position:relative;width:72px;height:72px;flex-shrink:0}.ct-today-panel-ring svg{display:block;width:100%;height:100%;transform:rotate(-90deg)}.ct-today-panel-ring-label{position:absolute;inset:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.ct-today-panel-ring-value{font-family:var(--ct-font-display);font-weight:600;font-size:17px;color:var(--ct-panel-fg);line-height:1}.ct-today-panel-ring-caption{font-size:9px;color:var(--ct-panel-fg-muted);margin-top:2px;line-height:1.1;max-width:100%}.ct-today-panel-ring-track{stroke:var(--ct-panel-ring-track)}.ct-today-panel-ring-progress{stroke:var(--ct-panel-stripe)}.ct-today-panel-row{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ct-panel-fg);border-radius:var(--ct-radius);padding:9px 12px;border:none;background:var(--ct-panel-row-bg);transition:opacity var(--ct-duration-fast) var(--ct-ease-spring)}.ct-today-panel-row.is-featured{gap:11px;padding:10px 13px;border-radius:var(--ct-radius-xl);background:var(--ct-panel-row-bg-featured);border-color:color-mix(in srgb,var(--ct-panel-stripe) 28%,transparent)}.ct-today-panel-row.is-closed{opacity:.5}.ct-today-panel-row.is-next{background:var(--ct-panel-row-bg-next);border-color:color-mix(in srgb,var(--ct-panel-stripe) 35%,transparent);opacity:1}.ct-today-panel-row-bar{width:3px;height:28px;border-radius:var(--ct-radius-pill);background:var(--ct-panel-stripe);opacity:.45;flex-shrink:0}.ct-today-panel-row.is-featured .ct-today-panel-row-bar{width:4px;height:32px;opacity:1}.ct-today-panel-row-bar.is-active{opacity:1}.ct-today-panel-row-check{width:20px;height:20px;border-radius:var(--ct-radius-pill);background:color-mix(in srgb,var(--ct-panel-stripe) 72%,transparent);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ct-today-panel-row-time{width:48px;flex-shrink:0;font-size:12px;font-weight:700;color:var(--ct-panel-fg);line-height:1.2}.ct-today-panel-row.is-featured .ct-today-panel-row-time{width:46px}.ct-today-panel-row-period,.ct-today-panel-row-period-inline{font-size:10px;font-weight:400;color:var(--ct-panel-fg-muted)}.ct-today-panel-row-copy{flex:1;min-width:0}.ct-today-panel-row-title{font-size:13px;font-weight:600;color:var(--ct-panel-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-today-panel-row.is-featured .ct-today-panel-row-title{font-size:13.5px}.ct-today-panel-row-client{font-size:11.5px;color:var(--ct-panel-fg-muted);margin-top:1px}.ct-today-panel-row.is-featured .ct-today-panel-row-client{font-size:12px}.ct-today-panel-row-badge{font-size:10px;font-weight:700;color:var(--ct-panel-badge-fg);background:var(--ct-panel-stripe);border-radius:var(--ct-radius-pill);padding:3px 8px;flex-shrink:0}.ct-today-panel-row-chevron{color:var(--ct-panel-fg-muted);flex-shrink:0}.ct-today-panel-schedule{min-width:0;min-height:0;overflow:hidden;border-left:1px solid var(--ct-panel-schedule-divider);display:flex;flex-direction:column}.ct-today-panel-schedule-inner{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0;width:100%;padding:10px 16px 16px;overflow-y:auto}.ct-today-panel-row.is-featured .ct-today-panel-row-badge{padding:3px 7px}.ct-today-panel-calendar-link{margin-top:4px;text-align:center;padding:4px 0;font-size:12px;font-weight:600;color:var(--ct-panel-fg-muted);letter-spacing:.02em;text-decoration:none}.ct-today-panel-calendar-link-compact{display:none}.ct-today-panel-wrap.is-compact .ct-today-panel{grid-template-columns:1fr;max-height:none}.ct-today-panel-wrap.is-compact .ct-today-panel-main{padding:18px 16px 16px;justify-content:flex-start;gap:4px}.ct-today-panel-wrap.is-compact .ct-today-panel-header{margin-bottom:14px;align-items:flex-start}.ct-today-panel-wrap.is-compact .ct-today-panel-progress{font-size:24px;margin-top:6px}.ct-today-panel-wrap.is-compact .ct-today-panel-ring{width:64px;height:64px;flex-shrink:0;margin-top:2px}.ct-today-panel-wrap.is-compact .ct-today-panel-ring-label{inset:8px}.ct-today-panel-wrap.is-compact .ct-today-panel-ring-value{font-size:15px}.ct-today-panel-wrap.is-compact .ct-today-panel-ring-caption{font-size:8px;letter-spacing:.01em;margin-top:1px}.ct-today-panel-wrap.is-compact .ct-today-panel-row.is-featured{padding:12px 13px;gap:12px}.ct-today-panel-wrap.is-compact .ct-today-panel-row.is-featured .ct-today-panel-row-time{width:50px}.ct-today-panel-wrap.is-compact .ct-today-panel-row.is-featured .ct-today-panel-row-bar{height:36px}.ct-today-panel-wrap.is-compact .ct-today-panel-schedule{display:none}.ct-today-panel-wrap.is-compact .ct-today-panel-calendar-link-compact{display:block;margin-top:12px}.ct-dashboard-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:14px;min-width:0;height:100%}.ct-dashboard-stat-card{display:flex;flex-direction:column;justify-content:center;min-height:100px;padding:14px 16px;background:transparent;border:1px solid color-mix(in srgb,var(--ct-tab-volt-stripe) 40%,transparent);border-radius:var(--ct-radius);box-shadow:none;color:var(--ct-text-body)}.ct-dashboard-stat-label{font-size:12.5px;font-weight:500;color:var(--ct-text-muted);line-height:1.35}.ct-dashboard-stat-body{display:flex;align-items:center;gap:12px;margin-top:10px}.ct-dashboard-stat-icon{width:44px;height:44px;border-radius:var(--ct-radius-sm);display:grid;place-items:center;flex-shrink:0;background:var(--ct-accent-soft)!important;color:var(--ct-tab-volt-stripe)!important}.ct-dashboard-stat-value{font-family:var(--ct-font-display);font-size:28px;font-weight:600;line-height:1;color:var(--ct-text-body)}.ct-dashboard-page{display:flex;flex-direction:column;gap:32px;width:100%;max-width:1160px;margin:0 auto}.ct-client-progress-widget{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:0;border-radius:var(--ct-radius-xl);overflow:hidden;background:var(--ct-tab-volt-bg);border:1px solid color-mix(in srgb,var(--ct-tab-volt-stripe) 40%,transparent);box-shadow:var(--ct-shadow-lift);color:var(--ct-tab-volt-fg)}.ct-client-progress-widget.is-compact{grid-template-columns:1fr}.ct-client-progress-widget-main{padding:20px;min-width:0}.ct-client-progress-widget-header{display:flex;align-items:center;gap:16px;margin-bottom:18px}.ct-client-progress-widget-kicker{font-size:var(--ct-text-footnote);font-weight:600;color:var(--ct-tab-volt-fg-muted)}.ct-client-progress-widget-title{font-family:var(--ct-font-display);font-size:26px;font-weight:600;letter-spacing:-.02em;margin-top:4px;line-height:1.1}.ct-client-progress-ring{position:relative;width:72px;height:72px;flex-shrink:0}.ct-client-progress-ring svg{display:block;width:100%;height:100%;transform:rotate(-90deg)}.ct-client-progress-ring-track{stroke:color-mix(in srgb,var(--ct-tab-volt-fg) 18%,transparent)}.ct-client-progress-ring-fill{stroke:var(--ct-tab-volt-stripe)}.ct-client-progress-ring-label{position:absolute;inset:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.ct-client-progress-ring-value{font-family:var(--ct-font-display);font-weight:600;font-size:17px;line-height:1}.ct-client-progress-ring-caption{font-size:9px;color:var(--ct-tab-volt-fg-muted);margin-top:2px}.ct-client-progress-widget-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ct-client-progress-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:var(--ct-radius);background:color-mix(in srgb,#ffffff 38%,transparent)}.ct-client-progress-stat-value{font-weight:700;font-size:16px;line-height:1.1}.ct-client-progress-stat-label{font-size:11px;color:var(--ct-tab-volt-fg-muted);line-height:1.25}.ct-client-progress-widget-side{padding:20px;border-left:1px solid color-mix(in srgb,var(--ct-tab-volt-stripe) 24%,transparent);min-width:0;display:flex;flex-direction:column;gap:14px}.ct-client-progress-widget-side-title{font-size:13px;font-weight:700}.ct-client-progress-week-chart{display:flex;align-items:flex-end;gap:8px;height:88px}.ct-client-progress-week-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}.ct-client-progress-week-bar-area{flex:1;width:100%;display:flex;align-items:flex-end;min-height:0;border-radius:var(--ct-radius-xs);background:color-mix(in srgb,#ffffff 28%,transparent)}.ct-client-progress-week-bar{width:100%;min-height:8px;background:var(--ct-tab-volt-stripe);border-radius:var(--ct-radius-xs) var(--ct-radius-xs) 0 0}.ct-client-progress-week-meta{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:6px;font-size:10px;color:var(--ct-tab-volt-fg-muted)}.ct-client-progress-recent-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid color-mix(in srgb,var(--ct-tab-volt-stripe) 20%,transparent)}.ct-client-progress-recent-row:first-of-type{border-top:none;padding-top:0}.ct-client-progress-recent-title{font-size:13px;font-weight:600}.ct-client-progress-recent-meta{font-size:11px;color:var(--ct-tab-volt-fg-muted);margin-top:2px}.ct-client-progress-feeling{font-size:18px;line-height:1;flex-shrink:0}.ct-history-panel{padding:0}.ct-history-list{list-style:none;margin:0;padding:0}.ct-history-row{display:flex;align-items:center;gap:12px;padding:14px 18px;border-top:1px solid var(--ct-divider);color:inherit;text-decoration:none}.ct-history-list>li:first-child .ct-history-row{border-top:none}.ct-history-row:hover{background:var(--ct-surface-soft)}.ct-history-row-main{flex:1;min-width:0}.ct-history-row-title{font-size:14px;font-weight:650;color:var(--ct-text)}.ct-history-row-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ct-history-label{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--ct-nav-accent-muted, #b45309);background:color-mix(in srgb,var(--ct-nav-accent, #ff9500) 16%,transparent)}.ct-history-row-meta{margin-top:3px;font-size:12px;color:var(--ct-text-muted)}.ct-history-row-note{margin-top:6px;font-size:12px;color:var(--ct-text-body)}.ct-history-row-coach{margin-top:4px;font-size:12px;color:var(--ct-text-muted)}.ct-history-empty{margin:0;font-size:14px;color:var(--ct-text-muted)}.ct-client-progress-widget-link{margin-top:auto;font-size:13px;font-weight:600;color:inherit;text-decoration:underline;text-underline-offset:3px}.ct-client-feeling-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.ct-role-dashboard-stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:720px){.ct-client-progress-widget-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.ct-dashboard-status-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,400px);gap:20px;align-items:stretch}.ct-dashboard-status-main{min-width:0}.ct-dashboard-quick-panel{display:flex;flex-direction:column;min-width:0;height:100%}.ct-dashboard-week-table{background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius);overflow:hidden;box-shadow:var(--ct-shadow-sm)}.ct-dashboard-week-head,.ct-dashboard-week-row{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:14px;align-items:center;padding:14px 20px}.ct-dashboard-week-head{border-bottom:1px solid var(--ct-divider);font-family:var(--ct-font-body);font-size:var(--ct-text-caption);font-weight:600;color:var(--ct-text-muted)}.ct-dashboard-week-row{border-bottom:1px solid var(--ct-divider);color:inherit}.ct-dashboard-week-row.is-last{border-bottom:none}.ct-dashboard-week-metric{font-size:14px;font-weight:600}.ct-dashboard-week-value{font-family:var(--ct-font-display);font-size:22px;font-weight:600;line-height:1;color:var(--ct-text-body)}.ct-dashboard-week-row.is-primary .ct-dashboard-week-value{color:var(--ct-tab-volt-stripe)}.ct-dashboard-week-detail{font-size:12px;font-weight:500;color:var(--ct-text-muted);text-align:right}.ct-dashboard-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;flex:1}.ct-dashboard-quick-action:last-child:nth-child(odd){grid-column:1 / -1}.ct-dashboard-quick-action:last-child:nth-child(odd) .ct-dashboard-quick-action-media{height:112px}.ct-dashboard-quick-action{position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;min-height:220px;padding:0;overflow:hidden;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-sm);text-align:left}.ct-dashboard-quick-action.ct-coach-action:hover{border-color:color-mix(in srgb,var(--ct-accent-bright) 38%,var(--ct-border))!important;background:var(--ct-surface)!important;box-shadow:var(--ct-shadow-lift)}.ct-dashboard-quick-action-media{position:relative;flex:none;height:132px;overflow:hidden;background:var(--ct-surface-soft)}.ct-dashboard-quick-action-media img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.02)}.ct-dashboard-quick-action-body{position:relative;flex:1;display:flex;align-items:flex-start;padding:22px 14px 14px 58px;background:var(--ct-surface);border-top:1px solid var(--ct-border)}.ct-dashboard-quick-action-icon{position:absolute;top:-20px;left:14px;z-index:3;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--ct-accent-bright);background:var(--ct-surface);color:var(--ct-accent-dark);display:grid;place-items:center;box-shadow:var(--ct-shadow-sm)}.ct-dashboard-quick-action-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.ct-dashboard-quick-action-title{font-size:15px;font-weight:700;line-height:1.2;color:var(--ct-text-body)}.ct-dashboard-quick-action-desc{font-size:11.5px;font-weight:500;line-height:1.35;color:var(--ct-text-muted)}.ct-calendar-page{display:flex;flex-direction:column;gap:8px;min-height:0}.ct-calendar-view-tabs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex-shrink:0}.ct-calendar-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-shrink:0;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--ct-border)}.ct-calendar-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0}.ct-calendar-nav-arrow{width:39px;height:39px;border-radius:50%;border:1px solid var(--ct-border);background:var(--ct-surface);display:grid;place-items:center;font-size:16px;color:var(--ct-text-body)}.ct-calendar-nav-arrow:hover{background:var(--ct-surface-soft)}.ct-calendar-nav-arrow:disabled{opacity:.35;pointer-events:none}.ct-calendar-block-entry{display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--ct-tab-volt-stripe) 22%,transparent);border-radius:var(--ct-radius-sm);background:var(--ct-tab-volt-bg);padding:8px 14px;min-height:34px;font-size:13px;font-weight:600;color:var(--ct-tab-volt-fg);box-shadow:var(--ct-shadow-sm)}.ct-calendar-block-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ct-calendar-block-modal-close{flex-shrink:0;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--ct-text-muted)}.ct-calendar-ooo-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.ct-calendar-ooo-chip{height:34px;min-width:72px;padding:0 14px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);font-size:12.5px;font-weight:600;color:var(--ct-text-body);text-align:center}.ct-calendar-ooo-chip.is-active{background:var(--ct-accent-bright);border-color:transparent;color:var(--ct-on-accent-bright);box-shadow:var(--ct-shadow-sm)}.ct-calendar-block-modal-grid-wrap{margin-top:16px;padding:10px;border-radius:var(--ct-radius-md);background:var(--ct-surface-soft);border:1px solid var(--ct-border)}.ct-calendar-block-modal-grid-wrap .ct-calendar-grid{gap:6px}.ct-calendar-block-modal-grid-wrap .ct-calendar-dow{gap:6px;margin-bottom:6px;flex-shrink:0}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell:not(.is-pad){border:1px solid var(--ct-border)}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-pickable{cursor:pointer}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell-head{position:relative}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-blocked:not(.is-picked){background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ct-text-muted) 7%,var(--ct-surface-soft)),color-mix(in srgb,var(--ct-text-muted) 7%,var(--ct-surface-soft)) 7px,color-mix(in srgb,var(--ct-text-muted) 14%,var(--ct-surface-soft)) 7px 14px);border-style:dashed;border-color:color-mix(in srgb,var(--ct-text-muted) 35%,var(--ct-border));cursor:pointer}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-blocked.is-pickable:hover:not(.is-picked){border-color:color-mix(in srgb,var(--ct-secondary) 45%,var(--ct-border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-secondary) 18%,transparent)}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-pickable.is-picked{filter:none;opacity:1;border:1px solid var(--ct-outline);background:var(--ct-surface-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-outline) 18%,transparent)}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-picked.is-blocked{border-style:solid}.ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-picked .ct-calendar-day-num{color:var(--ct-text-body)}.ct-calendar-block-modal .ct-calendar-cell-pick-mark{position:absolute;top:0;right:0;margin:0;padding:0;font-size:9px;font-weight:800;letter-spacing:.06em;line-height:1;color:var(--ct-today-outline)}.ct-calendar-block-modal .ct-calendar-cell-existing-mark{position:absolute;top:0;right:0;margin:0;padding:0;font-size:8px;font-weight:700;letter-spacing:.06em;line-height:1;color:var(--ct-text-muted)}.ct-calendar-block-modal .ct-calendar-cell-sessions{margin-top:auto;padding-top:4px;flex:0;min-height:0;gap:0}.ct-calendar-block-modal .ct-calendar-session-dots{gap:4px}.ct-calendar-block-modal .ct-calendar-session-dot{width:7px;height:7px}.ct-calendar-dialog-backdrop{position:fixed;inset:0;z-index:70;background:color-mix(in srgb,var(--ct-bg) 55%,transparent);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.ct-calendar-dialog{width:min(480px,100%);max-height:min(90dvh,640px);overflow:auto;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-lift);padding:22px}.ct-modal-backdrop{position:fixed;inset:0;z-index:75;background:var(--ct-modal-backdrop);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.ct-modal{width:min(480px,100%);max-height:min(90dvh,720px);overflow:auto;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-lift);padding:22px;color:var(--ct-text-body)}.ct-modal h2,.ct-modal h3{color:var(--ct-text-body)}.ct-modal .ct-field input,.ct-modal .ct-field textarea,.ct-modal .ct-field select{background:var(--ct-modal-input-bg);color:var(--ct-text-body)}.ct-modal-md{width:min(560px,100%)}.ct-modal-sm{width:min(420px,100%)}.ct-session-form{display:flex;flex-direction:column;padding:0;overflow:hidden;max-height:min(90dvh,640px)}.ct-session-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 12px;border-bottom:1px solid var(--ct-border);flex-shrink:0}.ct-session-form-head h2{margin:0;font-size:18px;font-weight:700}.ct-session-form-date{margin:4px 0 0;font-size:13px;color:var(--ct-text-muted)}.ct-session-form-close{width:32px;height:32px;border:none;border-radius:8px;background:var(--ct-surface-soft);color:var(--ct-text-muted);display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ct-session-form-close svg{width:14px;height:14px}.ct-session-form-close:hover{background:var(--ct-border);color:var(--ct-text-body)}.ct-session-form-body{padding:14px 20px 8px;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:16px}.ct-session-form-section{display:flex;flex-direction:column;gap:8px}.ct-session-form-section>label,.ct-session-form-label-row label{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ct-text-muted)}.ct-session-form-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.ct-session-form-search{width:min(160px,46%);height:30px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-pill);background:var(--ct-modal-input-bg, var(--ct-surface-soft));color:var(--ct-text-body);font-size:12.5px;padding:0 12px}.ct-session-form-hint{margin:0;font-size:12.5px;color:var(--ct-text-muted)}.ct-session-client-picker-backdrop{z-index:85}.ct-session-client-picker{display:flex;flex-direction:column;gap:12px;max-height:min(70dvh,520px);padding:18px;overflow:hidden}.ct-session-client-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.ct-session-client-picker-head h3{margin:0;font-size:16px;font-weight:700}.ct-session-client-picker-search{width:100%;min-width:0;height:40px;box-sizing:border-box;border-radius:var(--ct-radius);font-size:14px}.ct-session-client-picker-list{display:flex;flex-direction:column;gap:4px;overflow:auto;min-height:0;flex:1;margin:0 -4px;padding:0 4px 2px}.ct-session-client-picker-row{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;border:1px solid transparent;background:transparent;color:var(--ct-text-body);border-radius:var(--ct-radius-sm);padding:10px 12px;cursor:pointer}.ct-session-client-picker-row:hover{background:var(--ct-surface-soft)}.ct-session-client-picker-row.is-on{background:var(--ct-accent-soft);border-color:color-mix(in srgb,var(--ct-accent-bright) 55%,var(--ct-border))}.ct-session-client-picker-name{font-size:14px;font-weight:600}.ct-session-client-picker-meta{font-size:12px;color:var(--ct-text-muted)}.ct-session-form-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.ct-session-form-chips--wrap{flex-wrap:wrap;overflow:visible}.ct-session-form-chip{flex-shrink:0;border:1px solid var(--ct-border);background:var(--ct-surface);color:var(--ct-text-body);border-radius:var(--ct-radius-pill);padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.ct-session-form-chip:hover{background:var(--ct-surface-soft)}.ct-session-form-chip.is-on{background:var(--ct-accent-soft);border-color:color-mix(in srgb,var(--ct-accent-bright) 55%,var(--ct-border));color:var(--ct-accent-dark)}.ct-session-form-time-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.ct-session-form-time,.ct-session-form-title{border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-modal-input-bg, var(--ct-surface-soft));color:var(--ct-text-body);font-size:14px;padding:10px 12px}.ct-session-form-time{width:140px}.ct-session-form-title{width:100%;font-weight:600}.ct-session-form-time:focus,.ct-session-form-title:focus,.ct-session-form-search:focus{outline:none;border-color:var(--ct-accent-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 20%,transparent)}.ct-session-form-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ct-session-form-mode-btn{border:1px solid var(--ct-border);background:var(--ct-surface);color:var(--ct-text-body);border-radius:var(--ct-radius-sm);min-height:42px;font-size:13.5px;font-weight:700;cursor:pointer}.ct-session-form-mode-btn.is-on{background:var(--ct-accent-soft);border-color:color-mix(in srgb,var(--ct-accent-bright) 55%,var(--ct-border));color:var(--ct-accent-dark)}.ct-session-form-foot{display:flex;justify-content:center;align-items:center;gap:10px;padding:14px 20px 18px;border-top:1px solid var(--ct-border);flex-shrink:0;background:var(--ct-surface)}.ct-session-form-foot .ct-btn-primary,.ct-session-form-foot .ct-btn-secondary{min-width:120px;justify-content:center}@media(max-width:767px){.ct-modal-backdrop:has(.ct-session-form){padding:0;place-items:stretch}.ct-modal.ct-session-form{width:100%;max-width:none;height:100%;max-height:none;min-height:100%;min-height:100dvh;border-radius:0;border:none}.ct-session-form-head{padding:14px 16px;padding-top:max(14px,env(safe-area-inset-top,0px))}.ct-session-form-body{padding:12px 16px}.ct-session-form .ct-assign-time-stepper{flex-wrap:wrap;justify-content:center;gap:8px;overflow-x:visible}.ct-session-form .ct-assign-time-stepper .ct-assign-time-adjust{flex:1 1 100%;flex-direction:row;justify-content:center}.ct-session-form .ct-assign-time-center{order:-1;flex:1 1 100%}.ct-session-form-foot{padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px))}}.ct-calendar-dialog.ct-calendar-block-modal{width:min(960px,calc(100vw - 32px));height:min(calc(100dvh - 32px),780px);max-height:min(calc(100dvh - 32px),780px);overflow:hidden;display:flex;flex-direction:column;gap:0;padding:20px 22px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-head{flex-shrink:0}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-ooo-chips{flex-shrink:0;margin-top:14px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap{flex:1 1 auto;min-height:0;margin-top:16px;display:flex;flex-direction:column;overflow:hidden}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-grid{flex:1 1 auto;min-height:0;height:100%;grid-auto-rows:minmax(0,1fr)}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-cell{min-height:0;height:100%;padding:6px 8px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-day-num{font-size:clamp(16px,2.2vw,22px);line-height:1}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-month-label{font-size:9px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-dialog-actions{flex-shrink:0;margin-top:16px;padding-top:0}.ct-calendar-dialog-title{font-size:18px;font-weight:700;color:var(--ct-text-body)}.ct-calendar-dialog-copy{margin-top:8px;font-size:13.5px;line-height:1.45;color:var(--ct-text-muted)}.ct-calendar-dialog-options{display:flex;flex-direction:column;gap:10px;margin-top:18px}.ct-calendar-dialog-option{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);background:var(--ct-surface-soft);cursor:pointer}.ct-calendar-dialog-option span{display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--ct-text-muted)}.ct-calendar-dialog-option strong{color:var(--ct-text-body);font-size:13.5px}.ct-calendar-dialog-check{display:flex;align-items:center;gap:10px;margin-top:16px;font-size:13px;font-weight:600;color:var(--ct-text-body)}.ct-calendar-dialog-session-list{margin:14px 0 0;padding:12px 14px;border-radius:var(--ct-radius-md);background:var(--ct-accent-soft);list-style:none;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--ct-text-body)}.ct-calendar-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.ct-calendar-dialog-btn{border:1px solid var(--ct-border);border-radius:var(--ct-radius-pill);background:var(--ct-surface);padding:10px 18px;font-size:13px;font-weight:600;color:var(--ct-text-body)}.ct-calendar-dialog-btn.is-primary{background:var(--ct-accent-bright);border-color:transparent;color:var(--ct-on-accent-bright)}.ct-calendar-view-tab{background:var(--ct-surface-soft);color:var(--ct-text-body);border:1px solid var(--ct-border);font-size:13px;font-weight:600;padding:6px 13px;border-radius:var(--ct-radius-pill)}.ct-calendar-view-tab.is-active{background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);border:none}.ct-calendar-month-summary-card{display:flex;align-items:center;gap:24px;padding:16px 20px;background:var(--ct-surface);border:1px solid var(--ct-neon-dark);border-radius:var(--ct-radius-md);margin-bottom:12px}.ct-calendar-month-summary-left{display:flex;flex-direction:column;gap:6px;min-width:160px}.ct-calendar-month-summary-title{font-size:18px;font-weight:700;font-family:var(--ct-font-display);letter-spacing:-.02em;color:var(--ct-neon-dark);min-width:120px;text-align:center}.ct-calendar-month-summary-card .ct-calendar-month-nav{display:flex;align-items:center;gap:10px}.ct-calendar-today-btn{font-size:12px;font-weight:600;padding:4px 12px;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-neon-dark);background:transparent;color:var(--ct-neon-dark);margin-left:6px}.ct-calendar-today-btn:hover{background:color-mix(in srgb,var(--ct-neon-dark) 10%,transparent)}.ct-calendar-month-summary-stats{display:flex;gap:24px;flex:1;justify-content:flex-end}.ct-calendar-month-summary-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.ct-calendar-month-summary-stat-count{font-size:20px;font-weight:700;color:var(--ct-neon-dark)}.ct-calendar-month-summary-stat-label{font-size:11px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.02em}.ct-calendar-month-shell{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px}.ct-calendar-dow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;flex-shrink:0}.ct-calendar-dow-label{text-align:center;font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--ct-text-muted);background:transparent;padding:8px 0}.ct-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;flex:1;min-height:0}.ct-calendar-cell{display:flex;flex-direction:column;align-items:stretch;text-align:left;min-height:0;height:100%;padding:18px 18px 16px;border-radius:var(--ct-radius);border:none;cursor:pointer}.ct-calendar-cell:not(.is-pad){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr);align-items:stretch;container-type:size;container-name:cal-day}.ct-calendar-cell-head{grid-column:1;grid-row:1;flex-shrink:0;min-width:0}.ct-calendar-month-label{font-size:var(--ct-text-caption);font-weight:600}.ct-calendar-day-num{font-family:var(--ct-font-cal);font-size:32px;font-weight:700;line-height:1.1;margin-top:2px}.ct-calendar-cell-sessions{display:flex;flex-direction:column;grid-column:1 / -1;grid-row:2;flex:1;min-height:0;margin-top:auto;gap:8px;padding-top:6px}.ct-calendar-session-summary{font-size:11px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-calendar-session-dots{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.ct-calendar-session-dot{display:block;width:11px;height:11px;border-radius:var(--ct-radius-pill);flex-shrink:0;background:var(--ct-secondary)}@container cal-day (max-height: 64px){.ct-calendar-session-summary{display:none}.ct-calendar-cell-sessions{grid-column:2;grid-row:1 / -1;align-self:center;justify-self:end;width:auto;margin-top:0;padding-top:0;flex:unset;gap:0}.ct-calendar-session-dots{flex-direction:column;flex-wrap:nowrap;justify-content:center;gap:3px;max-height:100%;overflow:hidden}.ct-calendar-session-dot{width:7px;height:7px}.ct-calendar-session-dots.is-overflow .ct-calendar-session-dot{width:5px;height:5px;border-radius:1px}.ct-calendar-session-dots.is-overflow{gap:2px}}@container cal-day (max-height: 44px){.ct-calendar-session-dot{width:5px;height:5px;border-radius:1px}.ct-calendar-session-dots{gap:2px}}.ct-calendar-cell.is-past .ct-calendar-month-label,.ct-calendar-cell.is-past .ct-calendar-session-summary,.ct-calendar-cell.is-past .ct-calendar-day-num{color:var(--ct-text-muted)}.ct-calendar-cell.is-past .ct-calendar-session-dot{background:var(--ct-text-muted)}.ct-calendar-cell.is-pad{background:transparent;cursor:default;min-height:0;padding:0}.ct-calendar-cell.is-past{background:var(--ct-surface-soft);border:1px solid var(--ct-border);opacity:.9}.ct-calendar-cell.is-today{border:2px solid var(--ct-success);background:var(--ct-accent-soft);box-shadow:0 0 0 1px color-mix(in srgb,var(--ct-success) 18%,transparent)}.ct-calendar-cell.is-today .ct-calendar-month-label{color:var(--ct-text-body)}.ct-calendar-cell.is-today .ct-calendar-day-num{color:var(--ct-success)}.ct-calendar-cell.is-today .ct-calendar-session-summary{color:var(--ct-text)}.ct-calendar-cell.is-today .ct-calendar-session-dot{background:var(--ct-success)}.ct-calendar-cell.is-future{background:var(--ct-surface);border:1px solid var(--ct-border);box-shadow:var(--ct-shadow-sm)}.ct-calendar-cell.is-future .ct-calendar-month-label,.ct-calendar-cell.is-future .ct-calendar-day-num{color:var(--ct-text-body)}.ct-calendar-cell.is-future .ct-calendar-session-summary{color:var(--ct-text)}.ct-calendar-cell.is-accent{background:var(--ct-tab-volt-bg);border:1px solid var(--ct-tab-volt-stripe);box-shadow:var(--ct-shadow-lift);color:var(--ct-tab-volt-fg)}.ct-calendar-cell.is-today.is-accent{background:var(--ct-tab-volt-bg);border:2px solid var(--ct-today-outline);box-shadow:0 0 0 1px color-mix(in srgb,var(--ct-today-outline) 22%,transparent)}.ct-calendar-cell.is-accent .ct-calendar-month-label,.ct-calendar-cell.is-accent .ct-calendar-day-num,.ct-calendar-cell.is-accent .ct-calendar-session-summary{color:var(--ct-tab-volt-fg)}.ct-calendar-cell.is-accent .ct-calendar-month-label{color:var(--ct-tab-volt-fg-muted)}.ct-calendar-cell.is-accent .ct-calendar-session-dot{background:var(--ct-tab-volt-fg)}.ct-calendar-cell.is-selected{outline:2px solid var(--ct-secondary);outline-offset:2px}.ct-calendar-cell.is-blocked{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ct-text-muted) 7%,var(--ct-surface-soft)),color-mix(in srgb,var(--ct-text-muted) 7%,var(--ct-surface-soft)) 7px,color-mix(in srgb,var(--ct-text-muted) 14%,var(--ct-surface-soft)) 7px 14px);border:1px dashed color-mix(in srgb,var(--ct-text-muted) 35%,var(--ct-border))}.ct-calendar-cell.is-blocked.is-today{border:2px solid var(--ct-success)}.ct-calendar-cell-ooo{display:flex;flex-direction:column;grid-column:1 / -1;grid-row:2;gap:2px;margin-top:auto;padding-top:8px;min-width:0}.ct-calendar-cell-ooo-label{font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--ct-text-muted)}.ct-calendar-cell-ooo-reason{font-size:10px;font-weight:600;color:var(--ct-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-calendar-action-note{padding:10px 14px;border-radius:var(--ct-radius-md);background:var(--ct-accent-soft);color:var(--ct-accent-dark);font-size:var(--ct-text-subhead);font-weight:500}.ct-calendar-day-view{display:flex;flex-direction:column;gap:14px;min-height:0}.ct-calendar-day-ooo{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:var(--ct-radius-xl);border:1px dashed var(--ct-border);background:var(--ct-surface-soft)}.ct-calendar-day-ooo.is-blocked{align-items:center;border-style:solid;border-color:color-mix(in srgb,var(--ct-text-muted) 35%,var(--ct-border));background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ct-text-muted) 6%,var(--ct-surface-soft)),color-mix(in srgb,var(--ct-text-muted) 6%,var(--ct-surface-soft)) 8px,color-mix(in srgb,var(--ct-text-muted) 12%,var(--ct-surface-soft)) 8px 16px)}.ct-calendar-day-ooo-title{font-size:13px;font-weight:700;color:var(--ct-text-body)}.ct-calendar-day-ooo-sub{font-size:12px;color:var(--ct-text-muted);margin-top:3px;line-height:1.35}.ct-calendar-day-ooo-reasons{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.ct-calendar-day-ooo-reason{border:1px solid var(--ct-border);border-radius:var(--ct-radius-pill);background:var(--ct-surface);padding:6px 11px;font-size:11.5px;font-weight:600;color:var(--ct-text-body)}.ct-calendar-day-ooo-clear{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:34px;padding:6px 12px;border:1px solid color-mix(in srgb,var(--ct-danger) 28%,var(--ct-border));border-radius:var(--ct-radius-sm);background:var(--ct-surface);font-size:12.5px;font-weight:600;color:var(--ct-danger);box-shadow:var(--ct-shadow-sm)}.ct-calendar-day-summary{display:flex;align-items:center;gap:24px;padding:16px 20px;border-radius:var(--ct-radius-md);background:var(--ct-surface);border:1px solid var(--ct-neon-dark);color:var(--ct-text-body);width:100%;text-align:left;cursor:default}.ct-calendar-day-summary.has-nav{padding:16px 20px}.ct-calendar-day-summary.is-blocked{border-style:dashed;border-color:color-mix(in srgb,var(--ct-warn) 50%,var(--ct-border));background:repeating-linear-gradient(-45deg,var(--ct-surface),var(--ct-surface) 8px,color-mix(in srgb,var(--ct-warn) 6%,var(--ct-surface)) 8px,color-mix(in srgb,var(--ct-warn) 6%,var(--ct-surface)) 16px)}.ct-calendar-day-summary-left{display:flex;flex-direction:column;gap:4px;min-width:160px}.ct-calendar-day-summary-nav-row{display:flex;align-items:center;gap:10px}.ct-calendar-day-summary-title{font-size:18px;font-weight:700;font-family:var(--ct-font-display);letter-spacing:-.02em;color:var(--ct-neon-dark);min-width:120px;text-align:center}.ct-calendar-day-summary-right{display:flex;align-items:center;gap:16px;margin-left:auto}.ct-calendar-day-summary-ooo-row{display:flex;align-items:center;gap:12px}.ct-calendar-day-ooo-tag{font-size:13px;font-weight:600;color:var(--ct-warn)}.ct-calendar-day-ooo-clear-btn{font-size:13px;font-weight:600;padding:8px 16px;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-neon-dark);background:transparent;color:var(--ct-neon-dark)}.ct-calendar-day-ooo-clear-btn:hover{background:color-mix(in srgb,var(--ct-neon-dark) 10%,transparent)}.ct-calendar-day-summary-stats{display:flex;gap:24px;justify-content:flex-end}.ct-calendar-day-summary-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.ct-calendar-day-summary-stat-count{font-size:20px;font-weight:700;color:var(--ct-neon-dark)}.ct-calendar-day-summary-stat-label{font-size:11px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.02em}.ct-calendar-day-summary.is-today{border-color:var(--ct-neon-dark)}.ct-calendar-day-events{display:flex;flex-direction:column;gap:0;border:1px solid var(--ct-border);border-radius:var(--ct-radius-xl);background:var(--ct-surface);overflow:hidden}.ct-calendar-day-empty{padding:28px 20px;text-align:center;color:var(--ct-text-muted);font-size:var(--ct-text-callout);background:var(--ct-surface);border:1px dashed var(--ct-border);border-radius:var(--ct-radius-xl)}.ct-calendar-day-event{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 18px;background:var(--ct-surface);border:none;border-bottom:1px solid var(--ct-border);border-radius:0;box-shadow:none}.ct-calendar-day-event:last-child{border-bottom:none}.ct-calendar-day-event-time-col{display:flex;align-items:flex-start;align-self:start;padding-top:2px;padding-right:14px;border-right:1px solid var(--ct-border)}.ct-calendar-day-event-time{font-family:var(--ct-font-display);font-size:18px;font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--ct-text-body);font-variant-numeric:tabular-nums}.ct-calendar-day-event-body{min-width:0;display:flex;flex-direction:column;gap:0;align-self:start}.ct-calendar-day-event-head{display:flex;align-items:center;gap:8px}.ct-calendar-day-event-mode{display:inline-flex;align-items:center;padding:3px 8px;border-radius:var(--ct-radius-pill);background:var(--ct-accent-soft);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ct-accent-dark)}.ct-calendar-day-event-title{font-size:var(--ct-text-headline);font-weight:700;color:var(--ct-text);margin:8px 0 0;line-height:1.25}.ct-calendar-day-event-who{font-size:var(--ct-text-subhead);color:var(--ct-text-muted);margin:4px 0 0}.ct-calendar-day-event-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.ct-calendar-day-action{border:1px solid var(--ct-border);background:var(--ct-surface-soft);color:var(--ct-text-body);font-size:var(--ct-text-caption);font-weight:600;padding:7px 12px;border-radius:var(--ct-radius-sm);white-space:nowrap}.ct-calendar-day-action.is-primary{background:var(--ct-tab-volt-bg);border-color:color-mix(in srgb,var(--ct-tab-volt-stripe) 22%,transparent);color:var(--ct-tab-volt-fg)}.ct-calendar-day-action.is-danger{background:transparent;border-color:color-mix(in srgb,var(--ct-danger) 28%,var(--ct-border));color:var(--ct-danger)}.ct-calendar-week-view{display:flex;flex-direction:column;gap:14px;flex:1;min-height:0}.ct-calendar-week-summary{display:flex;flex-direction:column;gap:14px;flex:1;min-height:0;overflow:hidden}.ct-calendar-week-summary-card{display:flex;align-items:center;gap:24px;padding:16px 20px;border-radius:var(--ct-radius-md);background:var(--ct-surface);border:1px solid var(--ct-neon-dark);color:var(--ct-text-body);flex-shrink:0}.ct-calendar-week-summary-card.is-current{border-color:var(--ct-neon-dark)}.ct-calendar-week-summary-left{display:flex;flex-direction:column;gap:4px;min-width:160px}.ct-calendar-week-summary-nav-row{display:flex;align-items:center;gap:10px}.ct-calendar-week-summary-title{font-size:18px;font-weight:700;font-family:var(--ct-font-display);letter-spacing:-.02em;color:var(--ct-neon-dark)}.ct-calendar-week-summary-kicker{font-size:var(--ct-text-footnote);font-weight:600;letter-spacing:.06em;color:var(--ct-text-muted)}.ct-calendar-week-summary-stats{display:flex;gap:24px;flex:1;justify-content:flex-end}.ct-calendar-week-summary-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.ct-calendar-week-summary-stat-count{font-size:var(--ct-text-title3);font-weight:700;line-height:1;color:var(--ct-neon-dark)}.ct-calendar-week-summary-stat-label{font-size:11px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.02em}.ct-calendar-week-days{display:flex;flex-direction:column;background:var(--ct-accent-soft);border:1px solid color-mix(in srgb,var(--ct-text-body) 12%,var(--ct-border));border-radius:var(--ct-radius-xl);overflow-x:hidden;overflow-y:auto;flex:1;min-height:0}.ct-calendar-week-day-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;padding:14px 16px;border:none;border-bottom:1px solid color-mix(in srgb,var(--ct-secondary) 12%,transparent);background:transparent;text-align:left;cursor:pointer}.ct-calendar-week-day-row:last-child{border-bottom:none}.ct-calendar-week-day-row.is-today{background:color-mix(in srgb,var(--ct-accent-bright) 18%,transparent)}.ct-calendar-week-day-row.is-highlighted,.ct-calendar-week-day-row:hover{background:color-mix(in srgb,var(--ct-secondary) 12%,var(--ct-accent-soft))}.ct-calendar-week-day-row.is-past{opacity:.72}.ct-calendar-week-day-row.is-blocked{background:color-mix(in srgb,var(--ct-text-muted) 8%,var(--ct-accent-soft))}.ct-calendar-week-day-row-date{display:flex;flex-direction:column;align-items:center;min-width:44px}.ct-calendar-week-day-row-dow{font-size:9px;font-weight:700;letter-spacing:.06em;color:var(--ct-secondary)}.ct-calendar-week-day-row-num{font-family:var(--ct-font-display);font-size:22px;font-weight:700;color:var(--ct-text);line-height:1.1}.ct-calendar-week-day-row.is-today .ct-calendar-week-day-row-num{color:var(--ct-tab-neutral-fg)}.ct-calendar-week-day-row-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.ct-calendar-week-day-row-count{font-size:var(--ct-text-subhead);font-weight:600;color:var(--ct-text)}.ct-calendar-week-day-row-preview{font-size:var(--ct-text-footnote);color:var(--ct-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-calendar-week-day-row-sessions{display:flex;flex-direction:column;gap:4px}.ct-calendar-week-session-chip{font-size:var(--ct-text-footnote);color:var(--ct-text-muted);line-height:1.35}.ct-calendar-week-day-row-empty{font-size:var(--ct-text-subhead);color:var(--ct-text-muted)}.ct-calendar-week-day-row-chevron{color:var(--ct-text-muted);flex-shrink:0}.ct-activity-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.ct-activity-title{font-weight:600;color:var(--ct-text)}.ct-activity-range-select{border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);padding:6px 13px;background:var(--ct-surface-soft);color:var(--ct-text-body);cursor:pointer}.ct-activity-range-select:focus{outline:none;border-color:var(--ct-accent-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 20%,transparent)}.ct-activity-chart{display:flex;align-items:flex-end;gap:8px;height:132px;margin-top:16px}.ct-activity-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-height:0}.ct-activity-bar-area{flex:1;width:100%;display:flex;align-items:flex-end;min-height:0;border-radius:var(--ct-radius-xs);background:color-mix(in srgb,var(--ct-surface-soft) 72%,transparent)}.ct-activity-bar{width:100%;min-height:8px;background:var(--ct-tab-volt-stripe);border-radius:var(--ct-radius-xs) var(--ct-radius-xs) 0 0}.ct-activity-bar-label{flex-shrink:0;font-size:11px;color:var(--ct-text-muted);margin-top:6px}[data-theme=dark] .ct-activity-range-select{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant);color:var(--ct-text-body)}[data-theme=dark] .ct-activity-range-select option{background:var(--ct-surface);color:var(--ct-text-body)}[data-theme=dark] .ct-activity-bar-area{background:color-mix(in srgb,var(--ct-surface-soft) 88%,var(--ct-bg))}[data-theme=dark] .ct-activity-bar{background:linear-gradient(180deg,color-mix(in srgb,var(--ct-accent-bright) 92%,white) 0%,var(--ct-accent-bright) 100%);box-shadow:0 0 12px color-mix(in srgb,var(--ct-accent-bright) 28%,transparent)}[data-theme=dark] .ct-activity-bar-label{color:var(--ct-text-muted)}.ct-search{display:flex;align-items:center;gap:9px;background:var(--ct-surface-soft);border:none;border-radius:var(--ct-radius-md);padding:10px 14px}.ct-search input{flex:1;border:none;background:transparent;outline:none;font-size:14px;color:var(--ct-text)}.ct-search input::placeholder{color:var(--ct-text-muted)}.ct-filter-row{display:flex;gap:4px;overflow-x:auto;padding:3px;background:var(--ct-surface-soft);border-radius:var(--ct-radius-pill);width:fit-content}.ct-filter-pill{border:none;background:transparent;color:var(--ct-text-muted);font-size:var(--ct-text-subhead);font-weight:500;padding:7px 14px;border-radius:var(--ct-radius-pill);cursor:pointer;white-space:nowrap;transition:all var(--ct-duration-fast) var(--ct-ease-spring)}.ct-filter-pill.active{background:var(--ct-surface);color:var(--ct-text-body);font-weight:600;box-shadow:var(--ct-shadow-sm)}.ct-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--ct-tab-volt-bg);color:var(--ct-tab-volt-fg);border:none;font-weight:600;font-size:var(--ct-text-subhead);padding:10px 18px;border-radius:var(--ct-radius-pill);min-height:var(--ct-touch-min)}.ct-btn-primary-lg{padding:14px 24px;font-size:var(--ct-text-callout);border-radius:var(--ct-radius-pill)}.ct-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--ct-surface-soft);color:var(--ct-text-body);border:none;font-weight:600;font-size:var(--ct-text-subhead);padding:10px 18px;border-radius:var(--ct-radius-pill);min-height:var(--ct-touch-min)}.ct-section-divider{display:flex;align-items:center;gap:16px;margin-bottom:16px}.ct-section-divider h2{font-size:15px;font-weight:600;white-space:nowrap}.ct-section-divider-line{flex:1;height:1px;background:color-mix(in srgb,var(--ct-tab-volt-stripe) 22%,var(--ct-divider))}.ct-avatar{display:grid;place-items:center;flex-shrink:0;background:var(--tint-bg, var(--ct-accent-soft));color:var(--tint-fg, var(--ct-accent-dark));font-family:var(--ct-font-display);font-weight:600}.ct-avatar.round{border-radius:var(--ct-radius-pill)}.ct-avatar.square{border-radius:var(--ct-radius-sm)}.ct-pill{display:inline-flex;align-items:center;font-family:var(--ct-font-body);font-weight:500;font-size:var(--ct-text-footnote);padding:4px 10px;border-radius:var(--ct-radius-pill);white-space:nowrap}.ct-pill-done{background:var(--ct-tab-volt-bg);color:var(--ct-tab-volt-fg)}.ct-pill-pending{background:color-mix(in srgb,var(--ct-tab-cool-bg) 18%,transparent);color:var(--ct-tab-cool-fg)}.ct-pill-overdue{background:var(--ct-tab-warm-bg);color:var(--ct-tab-neutral-fg)}.ct-pill-open{background:var(--ct-tab-warm-bg);color:var(--ct-tab-warm-fg)}.ct-pill-replied{background:var(--ct-surface-soft);color:var(--ct-text-body)}.ct-pill-resolved{background:var(--ct-success-soft);color:var(--ct-success)}.ct-table-head{display:grid;gap:14px;padding:12px 20px;border-bottom:1px solid var(--ct-divider);min-width:700px}.ct-table-head span{font-family:var(--ct-font-body);font-size:var(--ct-text-caption);font-weight:600;color:var(--ct-text-muted)}.ct-table-row{display:grid;gap:14px;align-items:center;padding:13px 20px;min-width:700px;border-bottom:1px solid var(--ct-divider);cursor:pointer}.ct-table-row:last-child{border-bottom:none}.ct-clients-panel{overflow:hidden}.ct-clients-table{min-width:0;overflow-x:hidden}.ct-clients-table-head,.ct-clients-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1.5fr) minmax(0,.9fr) minmax(0,.8fr) minmax(0,1.1fr) minmax(0,.6fr);gap:14px;color:inherit}.ct-clients-table-head,.ct-clients-row{min-width:0}.ct-clients-row-client{display:flex;align-items:center;gap:11px;min-width:0;grid-column:1;grid-row:1}.ct-clients-row-name{font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-clients-row-program{font-size:13px;color:var(--ct-text-body);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;grid-column:2;grid-row:1}.ct-clients-row-payment{grid-column:4;grid-row:1;align-self:center;justify-self:start;flex-shrink:0;pointer-events:none;user-select:none}.ct-clients-row-meta{display:contents}.ct-clients-row-completion{font-size:13.5px;font-weight:600;grid-column:3;grid-row:1}.ct-clients-row-payee{font-size:12px;color:var(--ct-text-muted);grid-column:5;grid-row:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-clients-row-streak{font-size:13px;font-weight:600;color:var(--ct-text-body);grid-column:6;grid-row:1}.ct-auth-layout{min-height:100vh;display:grid;place-items:center;padding:24px;background:transparent}@media(max-width:480px){.ct-auth-layout{padding:14px}.ct-auth-layout .ct-panel-body{padding:16px}}.ct-auth-theme-corner{position:fixed;top:16px;right:16px;z-index:10}.ct-auth-card{width:100%;max-width:420px}.ct-onboarding-progress{display:flex;gap:8px;margin-bottom:20px}.ct-onboarding-dot{flex:1;height:4px;border-radius:999px;background:var(--ct-divider)}.ct-onboarding-dot.is-done{background:var(--ct-tab-volt-bg)}.ct-auth-card h1{font-size:1.5rem;margin-bottom:8px}.ct-field{display:flex;flex-direction:column;gap:6px}.ct-field label{font-size:var(--ct-text-subhead);font-weight:500;color:var(--ct-text-muted)}.ct-field input,.ct-field textarea,.ct-field select{border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);padding:11px 14px;background:var(--ct-surface);outline:none;transition:border-color var(--ct-duration-fast) var(--ct-ease-spring),box-shadow var(--ct-duration-fast) var(--ct-ease-spring)}.ct-field input:focus,.ct-field textarea:focus,.ct-field select:focus{border-color:var(--ct-accent-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 20%,transparent)}.ct-field-error{color:var(--ct-danger);font-size:var(--ct-text-footnote)}.ct-password-field{position:relative;display:flex}.ct-password-field input{width:100%;padding-right:64px}.ct-password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);border:none;background:none;color:var(--ct-text-muted);font-size:12px;font-weight:600;padding:6px 8px;cursor:pointer;border-radius:var(--ct-radius-sm, 6px)}.ct-password-toggle:hover{color:var(--ct-text);background:var(--ct-surface-soft)}.ct-parq-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--ct-divider)}.ct-parq-row:last-child{border-bottom:none}.ct-parq-question{flex:1;color:var(--ct-text)}.ct-yesno{display:inline-flex;flex-shrink:0;border:1px solid var(--ct-border);border-radius:var(--ct-radius-pill);overflow:hidden}.ct-yesno-btn{border:none;background:var(--ct-surface);color:var(--ct-text-muted);font-weight:600;font-size:13px;padding:7px 16px;cursor:pointer;transition:background var(--ct-duration-fast) var(--ct-ease-spring),color var(--ct-duration-fast) var(--ct-ease-spring)}.ct-yesno-btn+.ct-yesno-btn{border-left:1px solid var(--ct-border)}.ct-yesno-btn.is-selected{background:var(--ct-tab-volt-bg);color:var(--ct-tab-volt-fg)}@media(max-width:420px){.ct-parq-row{flex-direction:column;align-items:stretch;gap:10px}.ct-yesno{align-self:stretch}.ct-yesno-btn{flex:1;padding:9px 12px}}.ct-number-stepper{display:inline-flex;align-items:stretch;width:150px;height:35px;border-radius:var(--ct-radius-pill);background:var(--ct-surface);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;overflow:hidden;border:1px solid var(--ct-border)}.ct-number-stepper-btn{flex:0 0 36px;display:grid;place-items:center;border:none;background:var(--ct-surface-soft);color:var(--ct-text-body);font-size:18px;font-weight:500;line-height:1;cursor:pointer;padding:0;transition:background var(--ct-duration-fast) var(--ct-ease-spring),color var(--ct-duration-fast) var(--ct-ease-spring);user-select:none}.ct-number-stepper-btn:hover:not(:disabled){background:color-mix(in srgb,var(--ct-accent-soft) 70%,var(--ct-surface-soft));color:var(--ct-accent-dark)}.ct-number-stepper-btn:active:not(:disabled){transform:scale(.96)}.ct-number-stepper-btn:disabled{opacity:.35;cursor:default}.ct-number-stepper-value{flex:1;min-width:0;border:none!important;border-radius:0!important;background:var(--ct-surface)!important;box-shadow:none!important;text-align:center;font-size:15px;font-weight:600;color:var(--ct-text-body);padding:0 4px!important;height:100%;outline:none;-moz-appearance:textfield}.ct-number-stepper-value::-webkit-outer-spin-button,.ct-number-stepper-value::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ct-number-stepper-value:focus{border:none!important;box-shadow:none!important}.ct-number-stepper-sm{width:112px;height:28px}.ct-number-stepper-sm .ct-number-stepper-btn{flex-basis:28px;font-size:15px}.ct-number-stepper-sm .ct-number-stepper-value{font-size:13px}.ct-field .ct-number-stepper{width:100%;max-width:150px}.ct-builder-custom-field .ct-number-stepper,.exs-contribute-field .ct-number-stepper,.exs-edit-field .ct-number-stepper{width:100%;max-width:none;min-width:0;height:32px}.exs-edit-field .ct-number-stepper,.exs-edit-field .ct-number-stepper-sm{width:100%;height:30px}.exs-edit-field .ct-number-stepper-btn{flex-basis:26px;font-size:14px;background:var(--ct-surface-soft)}[data-theme=dark] .ct-number-stepper{box-shadow:0 1px 3px #00000059}.ct-auth-shell{min-height:100vh;background:var(--ct-bg);color:var(--ct-text)}.ct-auth-split{display:grid;grid-template-columns:1fr 1fr;height:100vh;overflow:hidden}.ct-auth-split>.ct-auth-hero{grid-column:1;grid-row:1}.ct-auth-split>.ct-auth-form-panel{grid-column:2;grid-row:1}@media(max-width:899px){.ct-auth-split{grid-template-columns:1fr;grid-template-rows:100vh 100vh;height:auto;overflow:auto;scroll-snap-type:y mandatory}.ct-auth-split>.ct-auth-hero{grid-column:1;grid-row:1;scroll-snap-align:start}.ct-auth-split>.ct-auth-form-panel{grid-column:1;grid-row:2;scroll-snap-align:start}.ct-auth-hero{min-height:auto!important;height:100vh!important;padding:150px 24px 32px!important;align-items:center;text-align:center}.ct-auth-form-panel{height:100vh!important}.ct-auth-hero:after{background-image:url(/backgrounds/hero-gym-mobile.png)!important;background-size:cover!important;background-position:center center!important}.ct-auth-hero:before{background:linear-gradient(to bottom,rgb(0,0,0) 0%,rgba(0,0,0,.95) 5%,rgba(0,0,0,.75) 12%,rgba(0,0,0,.35) 22%,transparent 32%),linear-gradient(to bottom,#0000008c,#00000073)!important}.ct-auth-split .ct-auth-brand{position:absolute!important;top:56px!important;left:50%!important;transform:translate(-50%)!important;margin:0!important;max-width:min(240px,70%)}.ct-auth-split .ct-auth-brand .ct-brand-logo--auth{max-height:clamp(28px,6vw,40px);max-width:min(200px,60vw)}.ct-auth-headline{font-size:clamp(24px,7vw,34px)!important;margin-top:0!important;margin-bottom:12px!important}.ct-auth-hero-cta{display:none!important}.ct-auth-hero-img{display:none}.ct-auth-hero-sub{font-size:13px!important;max-width:320px!important;margin-bottom:8px!important}.ct-auth-hero-scroll-btn{display:flex!important;margin-top:0!important}.ct-auth-hero-btn-row{display:flex!important;margin-top:auto!important;padding-bottom:88px}.ct-auth-hero-register-btn{display:inline-flex!important}}.ct-auth-hero{display:flex;flex-direction:column;justify-content:center;padding:48px 56px 28px;height:100vh;box-sizing:border-box;color:#fff;position:relative;overflow:hidden;gap:16px}.ct-auth-hero:after{content:"";position:absolute;inset:0;background:url(/backgrounds/hero-gym.jpg) 80% center / auto 100% no-repeat;transform:scaleX(-1);z-index:0}.ct-auth-shell--dim-hero .ct-auth-hero:after{opacity:1}.ct-auth-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,#0000009e,#00000073,#00000061);z-index:1}.ct-auth-hero>*{position:relative;z-index:2}.ct-auth-brand{display:inline-flex;align-items:center;text-decoration:none;position:absolute;top:40px;left:56px;z-index:2;width:min(280px,calc(100% - 112px))}.ct-auth-headline{font-family:var(--ct-font-display);font-size:clamp(30px,4.5vw,52px);font-weight:800;line-height:1.1;text-transform:uppercase;margin-bottom:0;letter-spacing:-.01em;text-shadow:0 2px 12px rgba(0,0,0,.6)}.ct-auth-headline .neon{color:var(--ct-neon)}.ct-auth-hero-sub{font-size:clamp(14px,1.1vw,17px);line-height:1.55;color:#ffffffd1;max-width:420px;margin-bottom:0;text-shadow:0 1px 8px rgba(0,0,0,.5)}.ct-auth-hero-features{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:16px;margin-top:20px}.ct-auth-hero-features li{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#ffffffe0}.ct-auth-hero-check{color:var(--ct-neon);font-size:16px}.ct-auth-hero-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;max-width:420px;padding:14px 16px 14px 18px;border-radius:14px;text-decoration:none;cursor:pointer;color:#fff;background:color-mix(in srgb,rgba(255,255,255,.12) 70%,transparent);border:1px solid color-mix(in srgb,rgba(255,255,255,.28) 80%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 28px #00000038;transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}.ct-auth-hero-cta:hover{background:color-mix(in srgb,var(--ct-neon) 22%,rgba(255,255,255,.1));border-color:color-mix(in srgb,var(--ct-neon) 55%,rgba(255,255,255,.35));transform:translateY(-2px);box-shadow:0 14px 32px #00000047,0 0 0 1px color-mix(in srgb,var(--ct-neon) 25%,transparent)}.ct-auth-hero-cta-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.ct-auth-hero-cta-label{display:block;font-size:12.5px;font-weight:600;letter-spacing:.01em;color:#ffffffb8}.ct-auth-hero-cta-link{font-family:var(--ct-font-display);font-size:17px;font-weight:700;color:#fff;letter-spacing:-.01em;line-height:1.25}.ct-auth-hero-cta-arrow{flex-shrink:0;display:grid;place-items:center;min-width:28px;font-size:34px;font-weight:800;line-height:1;color:var(--ct-neon);transition:transform .25s ease,color .25s ease}.ct-auth-hero-cta:hover .ct-auth-hero-cta-arrow{transform:translate(3px);color:color-mix(in srgb,var(--ct-neon) 80%,white)}.ct-auth-hero-cta:hover .ct-auth-hero-cta-label{color:#ffffffe0}.ct-auth-hero-scroll-btn{display:none;align-items:center;justify-content:center;gap:6px;margin-top:16px;padding:12px 28px;background:var(--ct-neon);color:#fff;font-family:var(--ct-font-display);font-weight:700;font-size:15px;text-transform:uppercase;align-self:center;letter-spacing:.04em;border:none;border-radius:50px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;align-self:flex-start}.ct-auth-hero-scroll-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #10b9814d}.ct-auth-hero-scroll-btn:active{transform:translateY(0)}.ct-auth-hero-btn-row{display:none;gap:12px;align-items:center;justify-content:center;margin-top:16px}.ct-auth-hero-register-btn{display:none;align-items:center;justify-content:center;padding:12px 28px;background:transparent;color:var(--ct-neon);font-family:var(--ct-font-display);font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;border:2px solid var(--ct-neon);border-radius:50px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.ct-auth-hero-register-btn:hover{background:#10b9811a;transform:translateY(-1px);box-shadow:0 4px 16px #10b98133}.ct-auth-hero-img{margin-top:40px;position:relative;z-index:1}.ct-auth-hero-img img{width:100%;max-width:420px;border-radius:var(--ct-radius);opacity:.85}.ct-auth-form-panel{display:flex;flex-direction:column;align-items:center;padding:48px 40px;background:var(--ct-surface);height:100vh;overflow-y:auto}@media(max-width:480px){.ct-auth-form-panel{padding:64px 18px 28px}}.ct-auth-form-card{width:min(420px,100%);margin:auto 0}.ct-auth-form-card h2{font-family:var(--ct-font-display);font-weight:800;font-size:clamp(26px,3.2vw,40px);text-transform:uppercase;letter-spacing:-.01em;line-height:1.15;margin-bottom:20px}.ct-auth-form-card .ct-auth-form-sub{color:var(--ct-text-muted);font-size:14px;margin-bottom:28px;text-transform:uppercase;letter-spacing:.04em;font-weight:500}.ct-auth-form-card .ct-field label{text-transform:uppercase;letter-spacing:.05em;font-weight:700;font-size:11px;color:var(--ct-text-muted)}.ct-auth-form-footer{margin-top:24px;font-size:14px;color:var(--ct-text-muted);text-align:center}.ct-auth-form-footer a{color:var(--ct-neon-dark);font-weight:600;text-decoration:none}[data-theme=dark] .ct-auth-form-panel{background:var(--ct-surface)}[data-theme=dark] .ct-auth-form-card input,[data-theme=dark] .ct-auth-form-card textarea,[data-theme=dark] .ct-auth-form-card select{color:var(--ct-text);background:var(--ct-surface-soft)}[data-theme=dark] .ct-auth-form-footer a{color:var(--ct-neon)}.ct-auth-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 24px;background:var(--ct-tab-volt-bg);color:var(--ct-on-accent-bright);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;border:none;border-radius:var(--ct-radius-md);cursor:pointer;transition:opacity var(--ct-duration-fast) var(--ct-ease-spring)}.ct-auth-cta:hover{opacity:.88}.ct-auth-cta:disabled{opacity:.5;cursor:not-allowed}.ct-auth-demo-hint{margin:-4px 0 16px;font-size:12.5px;color:var(--ct-text-muted)}.ct-auth-demo-hint code{font-size:12px;padding:1px 5px;border-radius:4px;background:var(--ct-surface-soft);color:var(--ct-text-body)}.ct-auth-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--ct-text-muted);margin-bottom:20px}.ct-auth-row label{display:flex;align-items:center;gap:6px;cursor:pointer}.ct-auth-row a{color:var(--ct-neon-dark);font-weight:600;text-decoration:none}[data-theme=dark] .ct-auth-row a{color:var(--ct-neon)}.ct-auth-path-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;background:var(--ct-bg);color:var(--ct-text)}@media(max-width:480px){.ct-auth-path-page{padding:64px 20px 32px}}.ct-auth-path-page .ct-auth-brand{position:static;transform:none;margin-bottom:24px}.ct-auth-path-title{font-family:var(--ct-font-display);font-size:clamp(28px,5vw,44px);font-weight:800;text-transform:uppercase;text-align:center;margin-bottom:8px;letter-spacing:-.01em}.ct-auth-path-title .neon{color:var(--ct-neon)}.ct-auth-path-sub{text-align:center;color:var(--ct-text-muted);font-size:15px;max-width:460px;line-height:1.5;margin-bottom:24px}.ct-auth-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:min(720px,100%)}@media(max-width:640px){.ct-auth-path-grid{grid-template-columns:1fr;gap:16px}}.ct-auth-path-card{display:flex;flex-direction:column;padding:24px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-xl);background:var(--ct-surface);color:inherit;text-decoration:none;cursor:pointer;transition:border-color var(--ct-duration-normal) var(--ct-ease-spring),box-shadow var(--ct-duration-normal) var(--ct-ease-spring)}.ct-auth-path-card:hover{border-color:var(--ct-neon);box-shadow:0 0 0 1px var(--ct-neon),0 8px 32px #10b98114}.ct-auth-path-card:focus-visible{outline:2px solid var(--ct-neon);outline-offset:2px}.ct-auth-path-icon{width:48px;height:48px;border-radius:var(--ct-radius-sm);display:flex;align-items:center;justify-content:center;margin-bottom:14px;background:var(--ct-accent-soft);color:var(--ct-accent-dark)}[data-theme=dark] .ct-auth-path-icon{background:var(--ct-neon-soft);color:var(--ct-neon)}.ct-auth-path-card h3{font-size:20px;font-weight:700;margin-bottom:8px}.ct-auth-path-card p{font-size:14px;color:var(--ct-text-muted);line-height:1.55;flex:1;margin-bottom:16px}.ct-auth-path-link{display:inline-flex;align-items:center;gap:6px;color:var(--ct-neon-dark);font-weight:700;font-size:14px;text-decoration:none;text-transform:uppercase;letter-spacing:.02em}[data-theme=dark] .ct-auth-path-link{color:var(--ct-neon)}.ct-auth-gym-footer{margin-top:24px;text-align:center}.ct-auth-gym-footer a{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;border:1.5px solid color-mix(in srgb,var(--ct-neon-dark) 55%,var(--ct-border));border-radius:var(--ct-radius-pill);background:color-mix(in srgb,var(--ct-neon-dark) 12%,var(--ct-surface));color:var(--ct-neon-dark);font-size:13px;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-neon-dark) 10%,transparent);transition:border-color var(--ct-duration-fast) var(--ct-ease-spring),background var(--ct-duration-fast) var(--ct-ease-spring),color var(--ct-duration-fast) var(--ct-ease-spring),box-shadow var(--ct-duration-fast) var(--ct-ease-spring)}[data-theme=dark] .ct-auth-gym-footer a{border-color:color-mix(in srgb,var(--ct-neon) 50%,var(--ct-border));background:color-mix(in srgb,var(--ct-neon) 14%,var(--ct-surface));color:var(--ct-neon);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-neon) 12%,transparent)}.ct-auth-gym-footer a:hover{border-color:var(--ct-neon-dark);background:color-mix(in srgb,var(--ct-neon-dark) 20%,var(--ct-surface));color:var(--ct-neon-dark);box-shadow:0 0 0 4px color-mix(in srgb,var(--ct-neon-dark) 18%,transparent)}[data-theme=dark] .ct-auth-gym-footer a:hover{border-color:var(--ct-neon);background:color-mix(in srgb,var(--ct-neon) 22%,var(--ct-surface));color:var(--ct-neon);box-shadow:0 0 0 4px color-mix(in srgb,var(--ct-neon) 20%,transparent)}.ct-auth-badge{display:inline-block;padding:6px 14px;border:1px solid var(--ct-neon);border-radius:var(--ct-radius-pill);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ct-neon);margin-bottom:20px}.ct-popover{position:absolute;left:12px;right:12px;bottom:100%;margin-bottom:8px;background:var(--ct-material-bg);backdrop-filter:saturate(180%) blur(var(--ct-blur));-webkit-backdrop-filter:saturate(180%) blur(var(--ct-blur));border:1px solid var(--ct-material-border);border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-material);padding:8px;z-index:60;max-height:min(64vh,420px);overflow-y:auto}.ct-settings-menu{position:absolute;top:calc(100% + 8px);right:0;width:min(260px,calc(100vw - 32px));background:var(--ct-surface);border:1px solid var(--ct-material-border);border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-material);padding:8px;z-index:60}.ct-settings-theme-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 4px 4px 10px;font-size:11.5px;font-weight:700}.ct-notifications-menu{display:flex;flex-direction:column;overflow:hidden;background:var(--ct-surface);border:1px solid var(--ct-material-border);border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-material)}.ct-notifications-menu.is-desktop{position:absolute;top:calc(100% + 8px);right:0;width:min(340px,calc(100vw - 32px));max-height:min(560px,calc(100dvh - 88px));min-height:480px;z-index:60}.ct-notifications-menu-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px 10px;border-bottom:1px solid var(--ct-divider);flex-shrink:0}.ct-notifications-menu-footer{display:flex;justify-content:center;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--ct-divider);flex-shrink:0}.ct-notifications-test-note{margin:0;padding:8px 14px 0;font-size:12px;line-height:1.4;color:var(--ct-text-muted);flex-shrink:0}.ct-notifications-menu-heading{min-width:0}.ct-notifications-menu-title{display:block;font-size:13.5px;font-weight:700;color:var(--ct-text-body)}.ct-notifications-menu-sub{display:block;font-size:11.5px;color:var(--ct-text-muted);margin-top:2px}.ct-notifications-menu-list{flex:1;overflow-y:auto;min-height:0;touch-action:pan-y;pointer-events:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ct-text-muted) 42%,transparent) transparent;-ms-overflow-style:auto}.ct-notifications-menu-list::-webkit-scrollbar{display:block;width:8px}.ct-notifications-menu-list::-webkit-scrollbar-track{background:transparent}.ct-notifications-menu-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ct-text-muted) 36%,transparent);border:2px solid transparent;border-radius:var(--ct-radius-pill);background-clip:padding-box}.ct-notifications-menu-list::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ct-text-muted) 54%,transparent);background-clip:padding-box}.ct-notifications-menu.is-desktop .ct-notifications-menu-list{min-height:360px}.ct-notifications-clear,.ct-notifications-test{flex-shrink:0;background:var(--ct-surface-soft);border:1px solid var(--ct-border);border-radius:var(--ct-radius-pill, 999px);font-size:13px;font-weight:650;color:var(--ct-text-body);padding:8px 20px;line-height:1.3;cursor:pointer}.ct-notifications-clear:hover:not(:disabled),.ct-notifications-test:hover:not(:disabled){color:var(--ct-text);border-color:var(--ct-accent-bright);background:var(--ct-accent-soft)}.ct-notifications-clear:disabled,.ct-notifications-test:disabled{opacity:.45;cursor:default}.ct-notifications-item{width:100%;text-align:left;background:transparent;border:none;padding:12px 14px;color:inherit}.ct-notifications-item-title{font-size:14px;font-weight:600;color:var(--ct-text-body)}.ct-notifications-item-sub{font-size:12.5px;color:var(--ct-text-muted);margin-top:2px}.ct-notifications-empty{pointer-events:auto;display:flex;align-items:center;justify-content:center;min-height:100%;padding:24px 14px;text-align:center;font-size:13px;color:var(--ct-text-muted)}.ct-notifications-backdrop{position:fixed;inset:0;z-index:90;display:flex;pointer-events:auto;touch-action:none;background:color-mix(in srgb,var(--ct-bg) 72%,transparent);isolation:isolate;animation:ct-notifications-backdrop-in .22s var(--ct-ease-spring)}.ct-notifications-backdrop:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:color-mix(in srgb,var(--ct-bg) 35%,transparent)}.ct-notifications-backdrop.is-mobile{flex-direction:column;align-items:center;justify-content:flex-start;padding:max(10dvh,72px) 16px calc(var(--ct-mobile-nav-h) + env(safe-area-inset-bottom,0px) + 12px)}.ct-role-switch-backdrop{position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:max(10dvh,72px) 16px calc(var(--ct-mobile-nav-h) + env(safe-area-inset-bottom,0px) + 12px);background:color-mix(in srgb,var(--ct-bg) 55%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:ct-notifications-backdrop-in .22s var(--ct-ease-spring)}.ct-role-switch-sheet{width:min(420px,100%);max-height:min(75dvh,680px);overflow-y:auto;background:var(--ct-surface);border:1px solid var(--ct-material-border);border-radius:var(--ct-radius-xl);box-shadow:var(--ct-shadow-material);padding:8px;transform-origin:top center;animation:ct-notifications-panel-down .32s var(--ct-ease-spring)}.ct-notifications-panel.is-mobile{position:relative;z-index:1;width:min(420px,100%);max-height:min(75dvh,680px);min-height:min(520px,calc(100dvh - var(--ct-mobile-nav-h) - 120px));pointer-events:auto;touch-action:manipulation;transform-origin:top center;animation:ct-notifications-panel-down .32s var(--ct-ease-spring)}.ct-notifications-panel.is-mobile .ct-notifications-menu-list{min-height:320px}.ct-notifications-panel.is-mobile .ct-notifications-menu-header{padding:16px 18px 12px}.ct-notifications-panel.is-mobile .ct-notifications-menu-title{font-size:18px}.ct-notifications-panel.is-mobile .ct-notifications-menu-sub{font-size:12.5px;margin-top:4px}.ct-notifications-panel.is-mobile .ct-notifications-item{padding:16px 18px}.ct-notifications-panel.is-mobile .ct-notifications-item-title{font-size:15px}.ct-notifications-panel.is-mobile .ct-notifications-item-sub{font-size:13px;margin-top:4px}@keyframes ct-notifications-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ct-notifications-panel-down{0%{opacity:0;transform:translateY(-18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ct-notifications-sheet-footer{flex-shrink:0;display:flex;justify-content:center;align-items:center;padding:14px 18px calc(18px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--ct-divider);background:var(--ct-surface)}.ct-notifications-sheet-footer.is-pair,.ct-notifications-sheet-footer.is-triple{gap:10px;justify-content:stretch}.ct-notifications-sheet-footer.is-pair .ct-notifications-back,.ct-notifications-sheet-footer.is-pair .ct-notifications-clear,.ct-notifications-sheet-footer.is-triple .ct-notifications-back,.ct-notifications-sheet-footer.is-triple .ct-notifications-clear,.ct-notifications-sheet-footer.is-triple .ct-notifications-test{flex:1;min-width:0;width:auto;min-height:44px;padding:12px 16px;font-size:15px;font-weight:600}.ct-notifications-sheet-footer.is-pair .ct-notifications-clear,.ct-notifications-sheet-footer.is-triple .ct-notifications-clear,.ct-notifications-sheet-footer.is-triple .ct-notifications-test{border-radius:var(--ct-radius-pill)}.ct-notifications-back{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:148px;padding:12px 28px;border:none;border-radius:var(--ct-radius-pill);background:var(--ct-surface-soft);color:var(--ct-text-body);font-size:15px;font-weight:600;line-height:1}.ct-mobile-back-bar{display:none}.ct-mobile-back-bar--pair{display:none;gap:10px;align-items:stretch}.ct-mobile-back-bar--pair .ct-notifications-back,.ct-mobile-back-bar--pair .exs-sheet-add-new{flex:1;min-width:0;width:auto}.ct-mobile-back-bar--pair .exs-sheet-add-new{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:41px;border-radius:var(--ct-radius-pill);font-size:14px;font-weight:700;padding:12px 16px;white-space:nowrap}.exs-sheet-bar-spacer{display:none;width:36px;flex-shrink:0}[data-theme=dark] .ct-notifications-back{background:var(--ct-accent-bright);color:var(--ct-on-accent-bright)}[data-theme=dark] .ct-notifications-backdrop{background:color-mix(in srgb,var(--ct-bg) 78%,transparent)}[data-theme=dark] .ct-icon-btn.is-active{background:var(--ct-accent-soft);color:var(--ct-tab-neutral-fg)}[data-theme=dark] .ct-notifications-panel.is-mobile{border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-notifications-menu-list{scrollbar-color:color-mix(in srgb,var(--ct-text-muted) 55%,transparent) transparent}[data-theme=dark] .ct-notifications-menu-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ct-text-muted) 48%,transparent);background-clip:padding-box}[data-theme=dark] .ct-notifications-menu-list::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ct-text-muted) 65%,transparent);background-clip:padding-box}[data-theme=dark] .ct-dashboard-stat-card{background:transparent;border-color:color-mix(in srgb,var(--ct-tab-volt-stripe) 55%,transparent)}[data-theme=dark] .ct-dashboard-stat-icon{background:var(--ct-accent-soft)!important;color:var(--ct-tab-volt-bg)!important}[data-theme=dark] .ct-dashboard-week-row.is-primary .ct-dashboard-week-value{color:var(--ct-tab-volt-bg)}[data-theme=dark] .ct-brand-mark{border-color:color-mix(in srgb,var(--ct-tab-volt-stripe) 55%,transparent)}[data-theme=dark] .ct-dashboard-quick-action.ct-coach-action:hover{border-color:color-mix(in srgb,var(--ct-accent-bright) 45%,var(--ct-outline-variant))!important;background:color-mix(in srgb,var(--ct-surface) 92%,var(--ct-bg))!important}[data-theme=dark] .ct-dashboard-quick-action-media:before{background:linear-gradient(180deg,color-mix(in srgb,var(--ct-bg) 12%,transparent),color-mix(in srgb,var(--ct-bg) 58%,transparent))}[data-theme=dark] .ct-dashboard-quick-action-media:after{background:radial-gradient(circle at 50% 20%,transparent 0%,color-mix(in srgb,var(--ct-bg) 28%,transparent) 100%)}[data-theme=dark] .ct-dashboard-quick-action-body{background:color-mix(in srgb,var(--ct-surface) 92%,var(--ct-bg));border-top-color:var(--ct-outline-variant)}[data-theme=dark] .ct-dashboard-quick-action-icon{background:color-mix(in srgb,var(--ct-bg) 90%,var(--ct-surface));color:var(--ct-accent-bright)}.ct-theme-toggle-compact{width:40px;height:40px;display:grid;place-items:center;border:none;background:var(--ct-surface-soft);border-radius:50%;color:var(--ct-text-body);flex-shrink:0;cursor:pointer}[data-theme=dark] .ct-nav-btn.active{background:var(--ct-nav-accent-soft)}[data-theme=dark] .ct-nav-btn.active .ct-nav-icon,[data-theme=dark] .ct-nav-btn.active .ct-nav-btn-label{color:var(--ct-nav-accent)}[data-theme=dark] .ct-calendar-cell.is-today:not(.is-blocked){border-color:var(--ct-success);background:var(--ct-accent-soft)}[data-theme=dark] .ct-calendar-cell.is-today:not(.is-blocked) .ct-calendar-day-num{color:var(--ct-success)}[data-theme=dark] .ct-calendar-cell.is-future:not(.is-blocked){background:var(--ct-surface);border-color:var(--ct-border)}[data-theme=dark] .ct-calendar-cell.is-blocked{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ct-text-muted) 12%,var(--ct-surface-soft)),color-mix(in srgb,var(--ct-text-muted) 12%,var(--ct-surface-soft)) 7px,color-mix(in srgb,var(--ct-text-muted) 22%,var(--ct-surface-soft)) 7px 14px);border:1px dashed color-mix(in srgb,var(--ct-text-muted) 48%,var(--ct-outline-variant))}[data-theme=dark] .ct-calendar-cell.is-blocked.is-today{border:2px solid var(--ct-success)}[data-theme=dark] .ct-calendar-cell.is-blocked .ct-calendar-cell-ooo-label{color:var(--ct-today-outline)}[data-theme=dark] .ct-calendar-cell.is-blocked .ct-calendar-cell-ooo-reason,[data-theme=dark] .ct-calendar-cell.is-blocked .ct-calendar-day-num,[data-theme=dark] .ct-calendar-cell.is-blocked .ct-calendar-month-label{color:var(--ct-text-body)}[data-theme=dark] .ct-calendar-week-days{border-color:color-mix(in srgb,var(--ct-text-body) 18%,var(--ct-outline-variant));background:color-mix(in srgb,var(--ct-accent-soft) 75%,var(--ct-surface-soft))}[data-theme=dark] .ct-calendar-week-day-row.is-blocked{background:color-mix(in srgb,var(--ct-text-muted) 14%,var(--ct-surface-soft));box-shadow:inset 3px 0 0 var(--ct-today-outline)}[data-theme=dark] .ct-calendar-day-ooo.is-blocked{border-color:color-mix(in srgb,var(--ct-text-muted) 45%,var(--ct-outline-variant));background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ct-text-muted) 10%,var(--ct-surface-soft)),color-mix(in srgb,var(--ct-text-muted) 10%,var(--ct-surface-soft)) 8px,color-mix(in srgb,var(--ct-text-muted) 18%,var(--ct-surface-soft)) 8px 16px)}[data-theme=dark] .ct-calendar-day-events{border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-calendar-day-event{background:var(--ct-surface);border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-calendar-day-event-time-col,[data-theme=dark] .ct-calendar-day-event-actions{border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-calendar-day-action{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-calendar-day-action.is-danger{background:var(--ct-danger-soft);border-color:color-mix(in srgb,var(--ct-danger) 42%,var(--ct-outline-variant))}[data-theme=dark] .ct-mobile-nav-sheet,[data-theme=dark] .ct-mobile-nav-sheet-head{border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-mobile-nav-sheet-scroll{background:var(--ct-bg)}[data-theme=dark] .ct-mobile-nav-item.active{color:var(--ct-nav-accent);background:var(--ct-nav-accent-soft)}[data-theme=dark] .ct-mobile-nav-item.active .ct-mobile-nav-icon{color:var(--ct-nav-accent)}[data-theme=dark] .ct-main.ct-scroll{scrollbar-color:color-mix(in srgb,var(--ct-text-muted) 55%,transparent) transparent}[data-theme=dark] .ct-main.ct-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ct-text-muted) 48%,transparent);background-clip:padding-box}[data-theme=dark] .ct-main.ct-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ct-text-muted) 68%,transparent);background-clip:padding-box}[data-theme=dark] .ct-calendar-dialog-backdrop{background:color-mix(in srgb,var(--ct-bg) 78%,transparent)}[data-theme=dark] .ct-calendar-dialog{border-color:var(--ct-outline-variant);box-shadow:var(--ct-shadow-material)}[data-theme=dark] .ct-calendar-block-modal-grid-wrap{background:color-mix(in srgb,var(--ct-bg) 65%,var(--ct-surface));border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-dow-label{background:transparent;color:var(--ct-text-muted)}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-future:not(.is-picked):not(.is-blocked){background:var(--ct-surface-soft);border:1px solid var(--ct-border)}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-blocked:not(.is-picked){background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ct-text-muted) 10%,var(--ct-surface-soft)),color-mix(in srgb,var(--ct-text-muted) 10%,var(--ct-surface-soft)) 7px,color-mix(in srgb,var(--ct-text-muted) 18%,var(--ct-surface-soft)) 7px 14px);border-color:color-mix(in srgb,var(--ct-text-muted) 42%,var(--ct-outline-variant))}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-past{background:color-mix(in srgb,var(--ct-surface) 55%,var(--ct-bg));border-color:var(--ct-outline-variant);opacity:.72}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-today:not(.is-picked){border-color:var(--ct-today-outline);background:color-mix(in srgb,var(--ct-accent-soft) 70%,var(--ct-surface-soft))}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-today.is-blocked:not(.is-picked){background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ct-text-muted) 10%,var(--ct-surface-soft)),color-mix(in srgb,var(--ct-text-muted) 10%,var(--ct-surface-soft)) 7px,color-mix(in srgb,var(--ct-text-muted) 18%,var(--ct-surface-soft)) 7px 14px)}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-today:not(.is-picked) .ct-calendar-day-num{color:var(--ct-accent-dark)}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-pickable.is-picked{filter:none;border-color:var(--ct-outline);background:var(--ct-surface-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-outline) 24%,transparent)}[data-theme=dark] .ct-calendar-block-modal-grid-wrap .ct-calendar-cell.is-picked .ct-calendar-day-num{color:var(--ct-text-body)}[data-theme=dark] .ct-calendar-block-modal .ct-calendar-cell-pick-mark{color:var(--ct-today-outline)}[data-theme=dark] .ct-calendar-block-modal .ct-calendar-cell-existing-mark{color:var(--ct-text-muted)}[data-theme=dark] .ct-calendar-ooo-chip{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-calendar-ooo-chip.is-active{background:var(--ct-accent-bright);color:var(--ct-on-accent-bright)}[data-theme=dark] .ct-calendar-block-modal-close{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant);color:var(--ct-text-muted)}[data-theme=dark] .ct-calendar-dialog-option,[data-theme=dark] .ct-calendar-dialog-btn{background:var(--ct-surface-soft);border-color:var(--ct-outline-variant)}[data-theme=dark] .ct-calendar-dialog-btn.is-primary{background:var(--ct-accent-bright);border-color:transparent;color:var(--ct-on-accent-bright)}[data-theme=dark] .ct-calendar-block-entry{border-color:color-mix(in srgb,var(--ct-tab-volt-stripe) 35%,transparent);box-shadow:var(--ct-shadow-sm)}[data-theme=dark] .ct-calendar-day-ooo-clear{background:var(--ct-danger-soft);border-color:color-mix(in srgb,var(--ct-danger) 42%,var(--ct-outline-variant));color:var(--ct-danger)}[data-theme=dark] .ct-calendar-cell.is-accent{background:var(--ct-tab-volt-bg);border-color:var(--ct-tab-volt-stripe);color:var(--ct-tab-volt-fg)}[data-theme=dark] .ct-pill-overdue{background:var(--ct-tab-warm-bg);color:var(--ct-tab-warm-fg)}[data-theme=dark] .ct-pill-pending{background:color-mix(in srgb,var(--ct-tab-cool-bg) 55%,transparent);color:var(--ct-tab-cool-fg)}.ct-page-loading{position:absolute;inset:0;z-index:30;display:grid;place-items:center;opacity:0;visibility:hidden;pointer-events:none;background:color-mix(in srgb,var(--ct-bg) 82%,transparent);transition:opacity .28s cubic-bezier(.22,1,.36,1)}.ct-page-loading.is-visible,.ct-page-loading.is-leaving{visibility:visible}.ct-page-loading.is-visible{opacity:1;pointer-events:auto}.ct-page-loading.is-leaving{opacity:0;pointer-events:none;transition-duration:.22s}.ct-page-loading-stage{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:14px;padding:0;background:transparent;transform:translateY(6px) scale(.99);opacity:0;transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .28s cubic-bezier(.22,1,.36,1)}.ct-page-loading.is-visible .ct-page-loading-stage{transform:translateY(0) scale(1);opacity:1}.ct-page-loading.is-leaving .ct-page-loading-stage{transform:translateY(-4px) scale(.99);opacity:0;transition-duration:.22s}.ct-page-loading-spinner{width:44px;height:44px;border-radius:var(--ct-radius-pill);border:3px solid color-mix(in srgb,var(--ct-neon) 28%,transparent);border-top-color:var(--ct-neon);animation:ct-page-loading-spin .85s linear infinite}.ct-page-loading-caption{margin:0;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--ct-text-muted)}@keyframes ct-page-loading-spin{to{transform:rotate(360deg)}}.ct-mobile-nav{display:none;position:fixed;left:0;right:0;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:45;height:auto;min-height:0;padding:0 16px;pointer-events:none;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-top:none;justify-content:flex-end;align-items:center;flex-direction:column}.ct-mobile-nav-primary{display:flex;width:100%;max-width:430px;min-width:0;margin:0 auto;pointer-events:auto;justify-content:center}.ct-liquid-nav-wrap{width:100%;max-width:430px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:10px;transition:max-width .55s var(--ct-glass-spring),width .55s var(--ct-glass-spring)}.ct-liquid-nav-wrap.is-focused{max-width:min(320px,calc(100vw - 90px))}.ct-mobile-nav-rail{display:none}.ct-mobile-nav-more{border:none;background:transparent;font:inherit}.ct-glass{position:relative;background:var(--ct-glass-bg);backdrop-filter:blur(18px) saturate(170%);-webkit-backdrop-filter:blur(18px) saturate(170%);border-radius:999px;box-shadow:0 18px 40px var(--ct-glass-shadow),inset 0 1px 0 var(--ct-glass-highlight),inset 0 -1px 1px #00000059,inset 1.5px 0 1px -1px #ffffff2e,inset -1.5px 0 1px -1px #ffffff1a;border:1px solid var(--ct-glass-stroke)}@supports (backdrop-filter: url(#ct-glass-distort)){.ct-glass.refract{backdrop-filter:blur(14px) saturate(175%) url(#ct-glass-distort);-webkit-backdrop-filter:blur(14px) saturate(175%)}}.ct-liquid-tabbar{width:100%;display:grid;padding:6px;isolation:isolate;touch-action:none;-webkit-tap-highlight-color:transparent}.ct-liquid-lens{position:absolute;top:6px;bottom:6px;left:6px;width:calc((100% - 12px) / var(--ct-liquid-cols, 4));border-radius:999px;z-index:0;background:radial-gradient(120% 90% at 50% 0%,#ffffff38,#ffffff0d 55%),var(--ct-glass-lens);box-shadow:inset 0 1px #ffffff73,inset 0 -1px 2px #0000004d,inset 2px 0 2px -1.5px #ffffff40,inset -2px 0 2px -1.5px #ffffff2e,0 6px 16px #0000004d;border:1px solid rgba(255,255,255,.22);transition:transform .32s var(--ct-glass-spring),scale .32s var(--ct-glass-spring);will-change:transform,scale;pointer-events:none}.ct-liquid-lens.is-travelling{scale:1.07 .95}.ct-liquid-lens.is-dragging{transition:scale .25s ease;scale:1.12 1.06;background:radial-gradient(120% 90% at 50% 0%,#ffffff4d,#ffffff14 55%),#ffffff24;box-shadow:inset 0 1px #ffffff8c,inset 0 -1px 2px #0000004d,inset 2px 0 2px -1.5px #ffffff4d,inset -2px 0 2px -1.5px #ffffff38,0 10px 24px #00000061}.ct-liquid-tab{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:11px 0 9px;border:none;background:none;color:var(--ct-glass-text-dim);font:inherit;font-size:11px;font-weight:600;letter-spacing:.01em;cursor:pointer;border-radius:999px;transition:color .3s ease,transform .35s var(--ct-glass-spring);min-width:0}.ct-liquid-tab:active{transform:scale(.9)}.ct-liquid-tab.is-active,.ct-liquid-tab.is-hovered{color:var(--ct-glass-text)}.ct-liquid-tab.is-active .ct-liquid-tab-icon{transform:translateY(-1px) scale(1.06)}.ct-liquid-tab-icon{position:relative;display:flex;align-items:center;justify-content:center;transition:transform .45s var(--ct-glass-spring)}.ct-liquid-tab-icon svg{width:22px;height:22px}.ct-liquid-tab-label{display:block;max-height:16px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.1;opacity:1;transition:max-height .5s var(--ct-glass-spring),opacity .3s ease,margin .5s var(--ct-glass-spring)}.ct-liquid-nav-wrap.is-focused .ct-liquid-tab{padding:13px 0}.ct-liquid-nav-wrap.is-focused .ct-liquid-tab-label{max-height:0;opacity:0;margin-top:-4px}.ct-liquid-nav-wrap.is-focused .ct-liquid-tab-icon{transform:scale(1.05)}.ct-liquid-nav-wrap.is-focused .ct-liquid-tab.is-active .ct-liquid-tab-icon{transform:translateY(0) scale(1.12)}.ct-liquid-tab:focus-visible{outline:2px solid color-mix(in srgb,var(--ct-glass-text) 70%,transparent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.ct-liquid-nav-wrap,.ct-liquid-lens,.ct-liquid-tab,.ct-liquid-tab-icon,.ct-liquid-tab-label{transition:none}}.ct-mobile-nav-sheet-backdrop{position:fixed;inset:0;z-index:46;background:color-mix(in srgb,var(--ct-bg) 55%,transparent);backdrop-filter:blur(8px);display:grid;align-items:end;padding:0}.ct-mobile-nav-sheet{width:100%;max-height:min(88dvh,720px);background:var(--ct-surface);border-top:1px solid var(--ct-border);border-radius:var(--ct-radius-xl) var(--ct-radius-xl) 0 0;box-shadow:var(--ct-shadow-material);display:flex;flex-direction:column;overflow:hidden}.ct-mobile-nav-sheet-head{display:flex;align-items:center;padding:18px 18px 12px;border-bottom:1px solid var(--ct-border);flex-shrink:0}.ct-mobile-nav-sheet-title{font-size:18px;font-weight:700;color:var(--ct-text-body)}.ct-mobile-nav-sheet-scroll{overflow-y:auto;min-height:0;flex:1;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));background:var(--ct-surface-soft)}.ct-mobile-nav-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px 2px;border-radius:var(--ct-radius-sm);color:var(--ct-text-muted);text-decoration:none}.ct-mobile-nav-item.active{color:var(--ct-nav-accent);background:var(--ct-nav-accent-soft)}.ct-mobile-nav-item.active .ct-mobile-nav-icon{color:var(--ct-nav-accent)}.ct-mobile-nav-icon{position:relative;display:flex;align-items:center;justify-content:center}.ct-mobile-nav-label{font-size:10px;font-weight:600;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ct-mobile-nav-badge{position:absolute;top:-4px;right:-8px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--ct-radius-pill);background:var(--ct-danger);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--ct-surface)}@media(max-width:1100px){.ct-dashboard-hero,.ct-dashboard-status-row,.ct-client-progress-widget{grid-template-columns:1fr}.ct-client-progress-widget-side{border-left:none;border-top:1px solid color-mix(in srgb,var(--ct-tab-volt-stripe) 24%,transparent)}.ct-dashboard-stats{height:auto}.ct-dashboard-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:961px){.ct-main:has(.ct-calendar-page){display:flex;flex-direction:column;overflow:hidden}.ct-calendar-page{flex:1;min-height:0}.ct-calendar-grid{grid-auto-rows:1fr}.ct-calendar-cell{min-height:0;overflow:hidden;padding:10px 12px}.ct-calendar-cell-head{display:flex;flex-direction:row;align-items:baseline;gap:4px}.ct-calendar-day-num{font-size:18px;margin-top:0}.ct-calendar-month-label{font-size:9px}.ct-calendar-cell-ooo{flex-direction:row;gap:4px;padding-top:4px}.ct-calendar-cell-ooo-reason,.ct-calendar-cell-ooo-label{font-size:9px}.ct-calendar-session-summary{font-size:10px}.ct-calendar-session-dots{gap:4px}.ct-calendar-session-dot{width:8px;height:8px}.ct-calendar-day-view,.ct-calendar-week-view{flex:1;min-height:0}.ct-calendar-day-events,.ct-calendar-week-days{min-height:0;overflow-y:auto}}@media(max-width:960px){.ct-topbar{position:relative;padding:max(10px,env(safe-area-inset-top,0px)) 14px 10px 14px;background:var(--ct-surface);backdrop-filter:none;-webkit-backdrop-filter:none}.ct-topbar:before{content:"";position:absolute;left:0;right:0;top:0;height:env(safe-area-inset-top,0px);background:var(--ct-surface);pointer-events:none;z-index:0}.ct-topbar>*{position:relative;z-index:1}.ct-topbar-brand-col{display:none}.ct-topbar-main{padding-left:0;gap:10px}.ct-topbar-mobile-welcome{align-items:center;padding:max(10px,env(safe-area-inset-top,0px)) 14px 10px 14px;background:var(--ct-surface)}.ct-topbar-main-mobile-welcome{flex-direction:row;align-items:center;gap:10px}.ct-topbar-main-mobile-welcome .ct-topbar-brand-compact{display:flex;align-items:center;gap:8px;flex-shrink:0;min-width:0}.ct-topbar-main-mobile-welcome .ct-topbar-brand-compact-name{display:none}.ct-brand-mark-compact{width:30px;height:30px;flex-shrink:0}.ct-topbar-brand-compact-name{font-family:var(--ct-font-display);font-size:15px;font-weight:700;line-height:1;white-space:nowrap}.ct-topbar-signout{display:none}.ct-topbar-title-row h1{font-size:var(--ct-text-title1);font-weight:700;gap:8px 10px}.ct-topbar-title-stat{font-size:var(--ct-text-title3)}.ct-topbar-title p{font-size:12px}.ct-sidebar{display:none}.ct-shell{padding-bottom:0;background:var(--ct-bg);min-height:var(--ct-app-height, max(100vh, 100dvh));height:var(--ct-app-height, max(100vh, 100dvh))}html:has(.ct-shell){background-color:var(--ct-surface);min-height:var(--ct-app-height, max(100vh, 100dvh))}html:has(.ct-shell) body,html:has(.ct-shell) #root{background-color:var(--ct-bg);min-height:var(--ct-app-height, max(100vh, 100dvh))}.ct-mobile-nav,.ct-mobile-nav-primary{display:flex}.ct-mobile-nav-rail{display:none}.ct-body{background:var(--ct-bg)}.ct-main{padding:16px;background:var(--ct-bg);padding-bottom:calc(16px + var(--ct-mobile-nav-h) + env(safe-area-inset-bottom,0px))}.ct-clients-panel .ct-panel-header{flex-wrap:wrap;gap:10px;padding:14px 16px}.ct-clients-invite-link{padding:8px 14px;font-size:12px;min-height:36px}.ct-clients-table-head{display:none}.ct-clients-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"client payment" "program program" "meta meta";gap:8px 12px;padding:14px 16px;align-items:center}.ct-clients-row-client{grid-area:client;grid-column:auto;align-self:center}.ct-clients-row-program{grid-area:program;grid-column:auto;white-space:normal}.ct-clients-row-payment{grid-area:payment;grid-row:1;grid-column:2;align-self:center;justify-self:end}.ct-clients-row-meta{display:flex;grid-area:meta;align-items:center;gap:12px;flex-wrap:wrap}.ct-clients-row-completion,.ct-clients-row-streak{grid-column:auto;font-size:12px;font-weight:600;color:var(--ct-text-muted)}.ct-clients-row-completion:before{content:"Completion ";font-weight:500}.ct-main-surface{padding:0;padding-bottom:calc(var(--ct-mobile-nav-h) + env(safe-area-inset-bottom,0px));background:var(--ct-bg)}.ct-today-list{padding-inline:12px;padding-block:12px 20px;background:transparent;min-height:100%}.ct-today-card{flex-direction:column;align-items:stretch;gap:12px;padding:12px 14px}.ct-today-card-top{margin-bottom:10px;gap:8px}.ct-today-time-pill{margin-bottom:4px;padding:2px 8px;font-size:11px}.ct-today-card-title{font-size:14px;line-height:1.25}.ct-today-status{font-size:11px;padding:3px 8px}.ct-today-card-client{gap:10px}.ct-today-client-name{font-size:12px}.ct-today-client-sub{font-size:11px;margin-top:1px}.ct-today-card-actions{flex-direction:row;flex-wrap:wrap;width:100%;min-width:0;margin-left:0;margin-top:2px;gap:6px}.ct-today-action-btn{flex:1 1 auto;min-width:0;min-height:40px;font-size:12px;padding:8px 10px}.ct-page-messages{flex:1;min-height:0;height:100%;gap:0;overflow:hidden}.ct-main:has(.ct-page-messages){display:flex;flex-direction:column;padding:0;overflow:hidden;background:transparent}html.ct-keyboard-open .ct-shell{padding-bottom:0}html.ct-keyboard-open .ct-mobile-nav{display:none}html.ct-keyboard-open .ct-main:has(.ct-page-messages){padding-bottom:0}.ct-messages-layout.is-chat-open .ct-messages-compose{position:fixed;left:0;right:0;bottom:calc(var(--ct-mobile-nav-h) + env(safe-area-inset-bottom,0px));z-index:44;padding:8px 12px;background:var(--ct-material-bg);backdrop-filter:saturate(180%) blur(var(--ct-blur));-webkit-backdrop-filter:saturate(180%) blur(var(--ct-blur));border-top:1px solid var(--ct-material-border)}html.ct-keyboard-open .ct-messages-layout.is-chat-open .ct-messages-compose{bottom:var(--ct-viewport-inset-bottom, 0);padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}.ct-messages-layout.is-chat-open .ct-messages-thread-body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}.ct-messages-compose-inner input,.ct-page-messages .ct-search input{font-size:16px}.ct-page-messages:has(.ct-messages-layout.is-chat-open) .ct-messages-search-row{display:none}.ct-messages-search-row{flex-shrink:0}.ct-page-messages .ct-search{border:none;border-radius:0;box-shadow:none;background:transparent;padding:12px 14px}.ct-page-messages .ct-panel,.ct-messages-list-panel,.ct-messages-thread-panel{border:none;border-radius:0;box-shadow:none;background:transparent}.ct-messages-layout{grid-template-columns:1fr;min-height:0;flex:1;position:relative;gap:0;overflow:hidden}.ct-messages-list-panel,.ct-messages-thread-panel{min-height:0;height:100%;flex:1}.ct-messages-thread{min-height:0;height:100%}.ct-messages-list-body,.ct-messages-thread-body{min-height:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ct-messages-list-toolbar{border-bottom:none;padding:10px 14px 8px}.ct-messages-section-label,.ct-messages-section-label.has-border{border-top:none;padding-left:14px;padding-right:14px}.ct-messages-thread-row{padding:12px 14px;border-top:none}.ct-messages-thread-head{padding:10px 12px;border-bottom:none;flex-shrink:0}.ct-messages-thread-body{min-height:0;padding-inline:14px}.ct-messages-compose{border-top:none;background:transparent;flex-shrink:0}.ct-messages-layout.is-chat-open .ct-messages-compose{padding:8px 12px}.ct-messages-compose-inner{background:var(--ct-surface-soft)}.ct-messages-compose-inner input{line-height:1.35}.ct-messages-layout.is-chat-open .ct-messages-list-panel{display:none}.ct-messages-layout:not(.is-chat-open) .ct-messages-thread-panel{display:none}.ct-messages-back{display:grid;border:none;background:transparent}.ct-calendar-page{min-height:0;gap:6px}.ct-calendar-dow{gap:3px}.ct-calendar-dow-label{font-size:8px;letter-spacing:.06em;padding:4px 0}.ct-calendar-grid{gap:3px;flex:0 0 auto}.ct-calendar-cell{min-height:0;aspect-ratio:1;padding:4px;border-radius:var(--ct-radius-xs);align-items:center;text-align:center}.ct-calendar-cell:not(.is-pad){display:grid;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr;place-items:center;gap:2px}.ct-calendar-cell.is-blocked:not(.is-pad){grid-template-rows:1fr;grid-template-columns:auto 1fr;place-items:center start;gap:4px}.ct-calendar-cell.is-today{border:2px solid var(--ct-success);box-shadow:0 0 0 1px color-mix(in srgb,var(--ct-success) 20%,transparent)}.ct-calendar-cell-head{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:unset;grid-row:1;align-self:center;width:100%;min-height:0}.ct-calendar-day-num{font-size:13px;margin-top:0}.ct-calendar-cell.is-blocked .ct-calendar-cell-ooo-reason{display:none}.ct-calendar-cell.is-blocked .ct-calendar-cell-head{flex-direction:row;gap:3px;align-items:baseline;justify-content:flex-start;grid-column:1;grid-row:1}.ct-calendar-cell.is-blocked .ct-calendar-cell-ooo{grid-column:2;grid-row:1;align-self:center;justify-self:end;padding-top:0;margin-top:0;width:auto;text-align:right}.ct-calendar-cell.is-blocked .ct-calendar-cell-ooo-label{font-size:8px;color:var(--ct-text-muted)}.ct-calendar-toolbar{flex-direction:row;align-items:center;flex-wrap:nowrap;gap:8px}.ct-calendar-view-tabs{flex:1;min-width:0;flex-wrap:nowrap;gap:6px}.ct-calendar-view-tab{font-size:11px;padding:5px 9px;white-space:nowrap}.ct-calendar-toolbar-actions{justify-content:flex-end;flex-shrink:0}.ct-calendar-block-entry{padding:5px 10px;font-size:11px;min-height:34px;white-space:nowrap}.ct-calendar-dialog.ct-calendar-block-modal{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);padding:14px 16px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-head{gap:10px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-close{display:none}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-cell{aspect-ratio:auto;align-items:stretch;text-align:left;padding:4px 6px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-month-label{display:block;font-size:8px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-day-num{font-size:14px}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-block-modal-grid-wrap .ct-calendar-grid{flex:1;min-height:0;grid-auto-rows:1fr}.ct-calendar-dialog.ct-calendar-block-modal .ct-calendar-ooo-chips{margin-top:12px}.ct-calendar-day-ooo{flex-direction:column;align-items:stretch}.ct-calendar-day-ooo-reasons{justify-content:flex-start}.ct-calendar-session-summary{display:none}.ct-calendar-cell-sessions{grid-row:1;grid-column:2;align-self:center;justify-self:end;width:auto;margin-top:0;padding-top:0;padding-bottom:0;flex:unset;gap:0}.ct-calendar-session-dots{flex-direction:column;justify-content:center;flex-wrap:nowrap;gap:2px;min-height:0;max-width:none;overflow:hidden}.ct-calendar-session-dot{width:5px;height:5px}.ct-calendar-session-dots.is-overflow .ct-calendar-session-dot{width:4px;height:4px;border-radius:1px}.ct-calendar-session-dots.is-overflow{gap:1px}.ct-calendar-cell.has-session:not(.is-pad){grid-template-rows:1fr;grid-template-columns:1fr auto;place-items:center;gap:4px}.ct-calendar-cell.has-session .ct-calendar-cell-head{grid-column:1;grid-row:1}.ct-calendar-cell.has-session.is-past .ct-calendar-session-dot{background:var(--ct-text-muted)}.ct-calendar-cell.has-session.is-today .ct-calendar-session-dot{background:var(--ct-success)}.ct-calendar-cell.has-session:not(.is-today):not(.is-past) .ct-calendar-session-dot{background:var(--ct-secondary)}.ct-calendar-month-label{display:none}.ct-calendar-month-summary-card,.ct-calendar-week-summary-card,.ct-calendar-day-summary{flex-direction:column;align-items:stretch;gap:12px;padding:12px 14px}.ct-calendar-month-summary-left,.ct-calendar-week-summary-left,.ct-calendar-day-summary-left{min-width:0}.ct-calendar-month-summary-card .ct-calendar-month-nav,.ct-calendar-week-summary-nav-row,.ct-calendar-day-summary-nav-row{justify-content:space-between;width:100%}.ct-calendar-month-summary-title,.ct-calendar-week-summary-title,.ct-calendar-day-summary-title{font-size:16px;min-width:0}.ct-calendar-week-summary-kicker{text-align:center}.ct-calendar-nav-arrow{width:40px;height:40px;font-size:18px}.ct-calendar-month-summary-stats,.ct-calendar-week-summary-stats,.ct-calendar-day-summary-stats{justify-content:center;gap:16px;flex-wrap:wrap}.ct-calendar-month-summary-stat-count,.ct-calendar-week-summary-stat-count,.ct-calendar-day-summary-stat-count{font-size:16px}.ct-calendar-today-btn{font-size:11px;padding:3px 10px}.ct-calendar-day-summary.has-nav{padding:12px 14px}.ct-calendar-day-event{grid-template-columns:1fr;gap:12px;padding:14px 16px;align-items:stretch}.ct-calendar-day-event-time-col{border-right:none;border-bottom:1px solid var(--ct-border);padding-top:0;padding-right:0;padding-bottom:10px}.ct-calendar-day-event-time{font-size:16px}.ct-calendar-day-event-actions{flex-direction:row;flex-wrap:wrap;margin-top:4px;padding-top:12px;border-top:1px solid var(--ct-border)}.ct-calendar-week-summary-card{grid-template-columns:1fr;gap:16px;padding:18px}.ct-calendar-week-day-row{gap:10px;padding:12px 14px}.ct-dashboard-sessions{height:auto}}@media(max-width:960px)and (orientation:landscape),(max-width:960px)and (max-height:500px){.ct-shell{padding-bottom:0;height:var(--ct-app-height, 100dvh);min-height:var(--ct-app-height, 100dvh)}.ct-topbar{padding:max(4px,env(safe-area-inset-top,0px)) 12px 6px calc(12px + var(--ct-mobile-nav-rail-w) + env(safe-area-inset-left,0px));min-height:44px}.ct-topbar-title-row h1{font-size:var(--ct-text-headline);font-weight:600;gap:6px 10px;line-height:1.2}.ct-topbar-title-stat{font-size:var(--ct-text-headline)}.ct-topbar-title p{display:none}.ct-topbar-mobile-welcome{padding:max(4px,env(safe-area-inset-top,0px)) 12px 8px calc(12px + var(--ct-mobile-nav-rail-w) + env(safe-area-inset-left,0px));min-height:0}.ct-topbar-main-mobile-welcome{gap:8px}.ct-icon-btn{width:36px;height:36px;min-width:36px;min-height:36px}.ct-body{margin-left:calc(var(--ct-mobile-nav-rail-w) + env(safe-area-inset-left,0px));min-height:0}.ct-mobile-nav{inset:0 auto 0 0;width:calc(var(--ct-mobile-nav-rail-w) + env(safe-area-inset-left,0px));height:100%;min-height:0;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;padding:8px 4px 8px max(4px,env(safe-area-inset-left,0px));border-top:none;border-right:1px solid var(--ct-material-border);pointer-events:auto;background:var(--ct-material-bg);backdrop-filter:saturate(180%) blur(var(--ct-blur));-webkit-backdrop-filter:saturate(180%) blur(var(--ct-blur))}.ct-mobile-nav-primary{display:none}.ct-mobile-nav-rail{display:flex;flex-direction:column;gap:2px;overflow-y:auto;min-height:0;width:100%;pointer-events:auto}.ct-mobile-nav-item{flex:0 0 auto;width:100%;padding:6px 2px;gap:2px}.ct-mobile-nav-icon{transform:scale(.92)}.ct-mobile-nav-label{font-size:8px;line-height:1.1}.ct-main{padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom,0px))}.ct-main-surface{padding-bottom:max(0px,env(safe-area-inset-bottom,0px))}.ct-main:has(.ct-page-messages){padding-bottom:max(0px,env(safe-area-inset-bottom,0px));overflow:hidden}.ct-messages-list-panel,.ct-messages-thread-panel,.ct-messages-thread{min-height:0;height:100%}.ct-messages-thread-body{min-height:0}.ct-dashboard-page{gap:14px}.ct-dashboard-hero{grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:12px;align-items:stretch}.ct-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;height:100%}.ct-dashboard-stat-card{min-height:0;padding:10px 12px}.ct-dashboard-stat-value{font-size:22px}.ct-dashboard-stat-icon{width:36px;height:36px}.ct-dashboard-status-row{grid-template-columns:minmax(0,1fr) minmax(200px,260px);gap:12px}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-height:min(220px,calc(100dvh - 88px))}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel-main{padding:12px 14px}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel-header{margin-bottom:8px}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel-progress{font-size:20px;margin-top:2px}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel-ring{width:52px;height:52px}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel-schedule{display:flex}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel-calendar-link-compact{display:none}.ct-today-panel-wrap:not(.is-compact) .ct-today-panel-calendar-link{display:block}.ct-page-messages{flex:1;min-height:0;height:100%;overflow:hidden}.ct-messages-list-panel,.ct-messages-thread-panel{min-height:0;height:100%}.ct-messages-search-row{padding:8px 12px 0}.ct-page-messages .ct-search{padding:8px 12px}}.ct-payouts-page{max-width:920px;gap:18px}.ct-payouts-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,280px);gap:20px 28px;align-items:end;border-radius:var(--ct-radius-xl);padding:22px 24px;background:var(--ct-hero-gradient-dark);color:#fff;box-shadow:var(--ct-shadow-sm)}.ct-payouts-hero-main{min-width:0}.ct-payouts-hero-kicker{font-size:12px;font-weight:700;letter-spacing:.06em;color:#ffffffb8;text-transform:uppercase}.ct-payouts-hero-headline{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:10px}.ct-payouts-hero-amount{font-family:var(--ct-font-display);font-size:clamp(34px,5vw,42px);font-weight:600;line-height:1.05;color:#fff}.ct-payouts-hero-delta{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:700;padding:7px 14px;border-radius:var(--ct-radius-pill);line-height:1.2}.ct-payouts-hero-delta.is-up{color:#1a2208;background:var(--ct-accent-bright)}.ct-payouts-hero-delta.is-down{color:#5c1510;background:#ffb4ab}.ct-payouts-hero-sub{margin:10px 0 0;font-size:13.5px;font-weight:500;color:#ffffffc7}.ct-payouts-chart{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;height:112px;min-width:0;padding-bottom:2px}.ct-payouts-chart-col{flex:0 0 44px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;height:100%}.ct-payouts-chart-bar{width:100%;min-height:14px;border-radius:var(--ct-radius-xs) var(--ct-radius-xs) 0 0;background:#ffffff38}.ct-payouts-chart-bar.is-current{background:var(--ct-accent-bright);box-shadow:0 0 0 1px #10b98159}.ct-payouts-chart-label{font-size:10px;font-weight:700;letter-spacing:.05em;color:#ffffff9e;text-transform:uppercase}.ct-payouts-metrics{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px}.ct-payouts-metric-panel{height:100%}.ct-payouts-plan-modal{position:relative;width:min(820px,100%)}.ct-payouts-plan-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.ct-payouts-plan-modal-head h2{margin:6px 0 0;font-family:var(--ct-font-display);font-size:24px;font-weight:700;color:var(--ct-text)}.ct-payouts-plan-modal-head p{margin:6px 0 0;font-size:13px;color:var(--ct-text-body)}.ct-payouts-plan-impact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.ct-payouts-plan-impact{border:1px solid var(--ct-border);border-radius:var(--ct-radius-lg);padding:14px;background:var(--ct-surface-soft)}.ct-payouts-plan-impact.is-upgrade{border-color:color-mix(in srgb,var(--ct-accent) 35%,var(--ct-border));background:color-mix(in srgb,var(--ct-accent-soft) 48%,var(--ct-surface))}.ct-payouts-plan-impact.is-downgrade{border-color:color-mix(in srgb,#f59e0b 35%,var(--ct-border));background:color-mix(in srgb,#fef3c7 36%,var(--ct-surface))}.ct-payouts-plan-impact span{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ct-text-muted)}.ct-payouts-plan-impact strong{display:block;margin-top:5px;font-size:15px;color:var(--ct-text)}.ct-payouts-plan-impact p{margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--ct-text-body)}.ct-payouts-plan-confirm-backdrop{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:20px;border-radius:inherit;background:color-mix(in srgb,var(--ct-modal-backdrop) 70%,transparent);backdrop-filter:blur(8px)}.ct-payouts-plan-confirm h3{margin:6px 0 10px;font-family:var(--ct-font-display);font-size:22px;color:var(--ct-text)}.ct-payouts-plan-confirm p{margin:0;font-size:13px;line-height:1.5;color:var(--ct-text-body)}.ct-payouts-plan-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.ct-payouts-plan-scheduled{display:flex;flex-direction:column;gap:4px;margin-top:14px;padding:12px 14px;border:1px solid color-mix(in srgb,#f59e0b 45%,var(--ct-border));border-radius:var(--ct-radius-lg);background:color-mix(in srgb,#fef3c7 40%,var(--ct-surface))}.ct-payouts-plan-scheduled strong{font-size:13px;color:var(--ct-text)}.ct-payouts-plan-scheduled span{font-size:12.5px;line-height:1.45;color:var(--ct-text-body)}.ct-payouts-plan-scheduled.is-payment{border-color:color-mix(in srgb,var(--ct-accent) 45%,var(--ct-border));background:color-mix(in srgb,var(--ct-accent-soft) 40%,var(--ct-surface))}.ct-payouts-plan-warnings{margin:12px 0 0;padding-left:18px;font-size:12.5px;line-height:1.45;color:var(--ct-text-body)}.ct-payouts-metric-label{font-size:12px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.04em}.ct-payouts-metric-value{font-family:var(--ct-font-display);font-size:clamp(24px,4vw,28px);font-weight:600;margin-top:6px;color:var(--ct-text)}.ct-payouts-metric-sub{margin:6px 0 0;font-size:13px;color:var(--ct-text-body);line-height:1.4}.ct-payouts-target-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ct-payouts-target-ring{flex-shrink:0;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--ct-accent-soft);border:2px solid color-mix(in srgb,var(--ct-accent) 35%,transparent)}.ct-payouts-target-pct{font-family:var(--ct-font-display);font-size:17px;font-weight:700;color:var(--ct-accent-dark);line-height:1}.ct-payouts-progress-track{margin-top:16px;height:10px;border-radius:var(--ct-radius-pill);background:color-mix(in srgb,var(--ct-text) 8%,var(--ct-surface-soft));overflow:hidden}.ct-payouts-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ct-accent-mid),var(--ct-accent-bright))}.ct-payouts-target-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--ct-divider)}.ct-payouts-target-stat{display:flex;flex-direction:column;gap:4px;min-width:0}.ct-payouts-target-stat-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ct-text-muted)}.ct-payouts-target-stat-value{font-size:16px;font-weight:700;color:var(--ct-text)}.ct-payouts-target-stat-value.is-pending{color:var(--ct-today-outline)}.ct-payouts-platform-panel{width:100%}.ct-payouts-platform-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ct-payouts-platform-fee{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}.ct-payouts-platform-fee-value{font-family:var(--ct-font-display);font-size:20px;font-weight:700;color:var(--ct-text)}.ct-payouts-platform-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.ct-payouts-platform-period{font-size:13px;font-weight:600}.ct-payouts-platform-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.ct-payouts-platform-note{margin:12px 0 0;font-size:13px;color:var(--ct-text-muted)}.ct-payouts-pending-clients{font-size:12.5px;font-weight:700;color:var(--ct-today-outline);background:color-mix(in srgb,var(--ct-today-outline) 14%,var(--ct-surface));padding:4px 10px;border-radius:var(--ct-radius-pill)}.ct-payouts-pending-total{font-size:13px;font-weight:700;color:var(--ct-accent-dark);background:var(--ct-accent-soft);padding:4px 10px;border-radius:var(--ct-radius-pill)}.ct-payouts-pending-header{flex-wrap:wrap;gap:12px}.ct-payouts-pending-header-main{display:flex;align-items:center;gap:10px;min-width:0}.ct-payouts-pending-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.ct-payouts-header-btn{padding:8px 14px;font-size:12.5px;min-height:36px;border-radius:var(--ct-radius-pill)}.ct-payouts-header-btn.is-remind{background:color-mix(in srgb,var(--ct-today-outline) 16%,var(--ct-surface));color:var(--ct-today-outline)}.ct-payouts-header-btn.is-remind:hover:not(:disabled){background:color-mix(in srgb,var(--ct-today-outline) 24%,var(--ct-surface))}.ct-payouts-header-btn:disabled{opacity:.55;cursor:not-allowed}.ct-payouts-remind-note{padding:0 18px 12px;font-size:12.5px;font-weight:600;color:var(--ct-success)}.ct-payouts-pending-row{display:flex;align-items:center;gap:12px;padding:14px 18px}.ct-payouts-pending-row.has-border{border-top:1px solid var(--ct-divider)}.ct-payouts-pending-icon{width:38px;height:38px;border-radius:var(--ct-radius-sm);background:var(--ct-accent-soft);color:var(--ct-accent-dark);display:grid;place-items:center;flex-shrink:0}.ct-payouts-pending-copy{flex:1;min-width:0}.ct-payouts-pending-label{font-size:14px;font-weight:600}.ct-payouts-pending-meta{font-size:12px;color:var(--ct-text-muted);margin-top:2px;text-transform:capitalize}.ct-payouts-pending-amount{font-size:15px;font-weight:600;flex-shrink:0}.ct-payouts-history-section{display:flex;flex-direction:column;gap:10px}.ct-payouts-history-heading{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600;color:var(--ct-text-muted)}.ct-payouts-history-heading:after{content:"";flex:1;height:1px;background:var(--ct-divider)}.ct-payouts-history-item{display:flex;align-items:center;gap:14px;padding:14px 18px}.ct-payouts-history-item.has-border{border-top:1px solid var(--ct-divider)}.ct-payouts-history-icon{width:36px;height:36px;border-radius:var(--ct-radius-sm);background:var(--ct-accent-soft);color:var(--ct-accent-dark);display:grid;place-items:center;flex-shrink:0}.ct-payouts-history-copy{flex:1;min-width:0}.ct-payouts-history-month{font-size:14.5px;font-weight:600;color:var(--ct-text)}.ct-payouts-history-meta{font-size:12px;color:var(--ct-text-muted);margin-top:2px}.ct-payouts-history-amount{font-size:16px;font-weight:600;color:var(--ct-text);flex-shrink:0}@media(max-width:720px){.ct-payouts-metrics,.ct-payouts-plan-impact-grid{grid-template-columns:1fr}.ct-payouts-plan-modal-head{flex-direction:column}.ct-payouts-hero{grid-template-columns:1fr;padding:18px 16px}.ct-payouts-chart{justify-content:flex-start;height:96px}.ct-payouts-target-stats{grid-template-columns:1fr}.ct-payouts-pending-header-actions{width:100%;margin-left:0}.ct-payouts-header-btn{flex:1;min-width:0}}.ct-page.ct-program-library{max-width:none;width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;align-content:start}.ct-program-card{width:100%;min-width:0;background:var(--ct-program-card-bg);border-radius:var(--ct-radius-xl);overflow:hidden;border:1px solid var(--ct-program-card-border);box-shadow:var(--ct-program-card-shadow)}.ct-program-card-media{position:relative;aspect-ratio:16 / 9;background:var(--ct-program-card-media-bg)}.ct-program-card-cover{width:100%;height:100%;object-fit:cover;display:block}.ct-program-card-cover-empty{background:var(--ct-program-card-media-empty)}.ct-program-card-badge{position:absolute;left:8px;bottom:8px;padding:4px 9px;border-radius:var(--ct-radius-pill);background:var(--ct-neon);color:var(--ct-program-card-badge-fg);font-size:var(--ct-text-caption);font-weight:600;line-height:1}.ct-program-card-media-btn{position:absolute;top:8px;right:8px;padding:4px 8px;border-radius:6px;border:none;background:var(--ct-program-card-media-btn-bg);color:var(--ct-program-card-media-btn-fg);font-size:10px;font-weight:600;cursor:pointer;backdrop-filter:blur(6px)}.ct-program-card-media-btn:hover{background:color-mix(in srgb,var(--ct-program-card-media-btn-bg) 88%,var(--ct-neon) 12%)}.ct-program-card-delete{position:absolute;top:8px;left:8px;z-index:2;width:34px;height:34px;padding:0;border:none;border-radius:var(--ct-radius-sm);background:color-mix(in srgb,var(--ct-danger, #c0392b) 42%,transparent);color:#ffffffb8;display:grid;place-items:center;cursor:pointer;box-shadow:none;opacity:.45;transition:background .15s,opacity .15s,color .15s,box-shadow .15s,transform .12s}.ct-program-card-delete:hover,.ct-program-card:hover .ct-program-card-delete:hover{background:var(--ct-danger, #c0392b);color:#fff;opacity:1;box-shadow:0 1px 6px #00000047;transform:scale(1.05)}.ct-program-card:hover .ct-program-card-delete{opacity:.72}.ct-program-card-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px}.ct-program-card-headline{display:flex;align-items:baseline;gap:8px}.ct-program-card-title{margin:0;font-family:var(--ct-font-display);font-size:15px;font-weight:700;color:var(--ct-program-card-title);letter-spacing:-.02em}.ct-program-card-pills{position:absolute;right:8px;bottom:8px;display:flex;flex-direction:column;align-items:flex-end;gap:5px;max-width:calc(100% - 96px)}.ct-program-card-meta{padding:6px 11px;border-radius:var(--ct-radius-pill);background:var(--ct-program-card-media-btn-bg);color:var(--ct-program-card-media-btn-fg);font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;backdrop-filter:blur(6px)}.ct-program-card-meta--duration{font-size:12px}.ct-program-card-meta--price{font-size:15px;padding:7px 13px}.ct-program-card-coach{display:flex;align-items:center;gap:8px}.ct-program-card-coach-avatar{position:relative;padding:0;border:none;background:transparent;border-radius:999px;line-height:0}.ct-program-card-coach-camera{position:absolute;right:-2px;bottom:-2px;width:12px;height:12px;border-radius:999px;background:var(--ct-neon);color:var(--ct-program-card-badge-fg);font-size:9px;font-weight:800;display:grid;place-items:center;border:1.5px solid var(--ct-program-card-bg)}.ct-program-card-coach-name{font-size:12px;color:var(--ct-program-card-subtitle)}.ct-program-card-action{width:100%;padding:10px 12px;border:none;border-radius:var(--ct-radius-pill);background:var(--ct-program-card-action-bg);color:var(--ct-program-card-action-fg);font-size:var(--ct-text-caption);font-weight:600}.ct-program-card-action:hover{background:var(--ct-program-card-action-hover)}.ct-program-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.ct-program-card-actions .ct-program-card-action{width:auto;min-width:0;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.ct-program-card-actions:has(>:only-child){grid-template-columns:1fr}.ct-program-card-action--secondary{background:var(--ct-surface);color:var(--ct-text-body);box-shadow:inset 0 0 0 1px var(--ct-border)}.ct-program-card-action--secondary:hover{background:var(--ct-surface-soft)}.ct-program-card-add{padding:0;text-align:left;cursor:pointer;border:1px dashed var(--ct-program-card-add-border);background:var(--ct-program-card-add-bg);box-shadow:none}.ct-program-card-add:hover{border-color:color-mix(in srgb,var(--ct-neon) 45%,var(--ct-program-card-add-border));background:var(--ct-program-card-add-hover-bg)}.ct-program-card-add-media{display:grid;place-items:center;background:var(--ct-program-card-media-empty)}.ct-program-card-add-icon{width:44px;height:44px;border-radius:999px;border:1.5px dashed var(--ct-program-card-add-icon-border);color:var(--ct-neon);font-size:28px;font-weight:300;line-height:1;display:grid;place-items:center}.ct-program-card-add-body{gap:4px}.ct-program-card-add-title{font-family:var(--ct-font-display);font-size:15px;font-weight:700;color:var(--ct-program-card-title)}.ct-program-card-add-sub{font-size:12px;color:var(--ct-program-card-subtitle)}.ct-auth-loading{min-height:var(--ct-app-height, 100dvh);background:var(--ct-bg)}.ct-access-denied-shell{min-height:var(--ct-app-height, 100dvh);display:grid;place-items:center;padding:24px;background:var(--ct-bg);position:relative}.ct-access-denied-theme{position:absolute;top:16px;right:16px}.ct-access-denied-card{width:min(420px,100%);text-align:center;padding:32px 28px;border-radius:var(--ct-radius-lg);border:1px solid var(--ct-border);background:var(--ct-surface);box-shadow:var(--ct-shadow-soft)}.ct-access-denied-icon{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;font-size:28px;font-weight:800;color:var(--ct-danger-fg, #fff);background:var(--ct-danger, #c0392b)}.ct-access-denied-card h1{margin:0 0 10px;font-family:var(--ct-font-display);font-size:24px}.ct-access-denied-card p{margin:0 0 22px;color:var(--ct-text-muted);line-height:1.5}.ct-access-denied-card .ct-auth-cta{width:100%}.ct-access-denied-link{display:inline-block;margin-top:14px;font-size:13px;color:var(--ct-text-muted);text-decoration:none}.ct-access-denied-link:hover{color:var(--ct-text-body);text-decoration:underline}@media(display-mode:standalone){html,body{background-color:var(--ct-bg)}.ct-shell{background:transparent}.ct-topbar,.ct-mobile-nav,.ct-glass,.ct-notifications-backdrop,.ct-calendar-dialog-backdrop,.ct-mobile-nav-sheet-backdrop,.ct-role-switch-backdrop,.ct-popover{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.ct-topbar{background:var(--ct-surface)}.ct-mobile-nav{background:transparent}.ct-glass{background:color-mix(in srgb,var(--ct-surface) 88%,transparent)}.ct-notifications-backdrop,.ct-calendar-dialog-backdrop,.ct-mobile-nav-sheet-backdrop,.ct-role-switch-backdrop{background:color-mix(in srgb,var(--ct-bg) 78%,transparent)}}html.ct-standalone-pwa,html.ct-standalone-pwa body{background-color:var(--ct-bg);overscroll-behavior-y:contain}html.ct-standalone-pwa #root{overscroll-behavior-y:contain}html.ct-standalone-pwa .ct-shell{background:transparent}html.ct-standalone-pwa .ct-topbar{padding-top:max(10px,env(safe-area-inset-top,0px));background:var(--ct-surface)}html.ct-standalone-pwa .ct-topbar,html.ct-standalone-pwa .ct-mobile-nav,html.ct-standalone-pwa .ct-glass,html.ct-standalone-pwa .ct-notifications-backdrop,html.ct-standalone-pwa .ct-calendar-dialog-backdrop,html.ct-standalone-pwa .ct-mobile-nav-sheet-backdrop,html.ct-standalone-pwa .ct-role-switch-backdrop,html.ct-standalone-pwa .ct-popover{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.ct-standalone-pwa .ct-topbar{background:var(--ct-surface)}html.ct-standalone-pwa .ct-mobile-nav{background:transparent}html.ct-standalone-pwa .ct-glass{background:color-mix(in srgb,var(--ct-surface) 88%,transparent)}html.ct-standalone-pwa .ct-notifications-backdrop,html.ct-standalone-pwa .ct-calendar-dialog-backdrop,html.ct-standalone-pwa .ct-mobile-nav-sheet-backdrop,html.ct-standalone-pwa .ct-role-switch-backdrop{background:color-mix(in srgb,var(--ct-bg) 78%,transparent)}html.ct-pwa-resume #root{will-change:transform}.ct-route-fallback{display:flex;align-items:flex-start;justify-content:center;min-height:200px;padding-top:64px}.ct-route-fallback-bar{width:48px;height:4px;border-radius:2px;background:color-mix(in srgb,var(--ct-text-muted) 30%,transparent);animation:ct-route-pulse 1.2s ease-in-out infinite}@keyframes ct-route-pulse{0%,to{opacity:.3;transform:scaleX(1)}50%{opacity:1;transform:scaleX(2.2)}}.ct-pwa-banner,.ct-pwa-update-banner,.ct-pwa-offline-banner{position:fixed;left:12px;right:12px;z-index:9999;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--ct-radius-md, 12px);font-size:13px;font-weight:600;box-shadow:0 4px 20px #0000002e;animation:ct-pwa-slide-in .3s ease-out}.ct-pwa-banner{bottom:calc(var(--ct-mobile-nav-h, 56px) + env(safe-area-inset-bottom,0px) + 12px);background:var(--ct-surface);color:var(--ct-text-body);border:1px solid var(--ct-border)}.ct-pwa-update-banner{top:calc(env(safe-area-inset-top,0px) + 12px);background:var(--ct-tab-volt-stripe);color:#fff}.ct-pwa-offline-banner{top:calc(env(safe-area-inset-top,0px) + 12px);background:var(--ct-surface);color:var(--ct-text-muted);border:1px solid var(--ct-border)}.ct-pwa-banner-text{flex:1;min-width:0}.ct-pwa-banner-action{flex-shrink:0;padding:5px 14px;border-radius:var(--ct-radius-sm, 8px);border:none;font-weight:700;font-size:12px;cursor:pointer;background:var(--ct-neon, #10B981);color:var(--ct-tab-volt-fg, #ffffff)}.ct-pwa-banner-close{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:inherit;font-size:18px;font-weight:400;cursor:pointer;display:grid;place-items:center;opacity:.6}.ct-pwa-banner-close:hover{opacity:1}@keyframes ct-pwa-slide-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(min-width:768px){.ct-pwa-banner{left:auto;right:20px;bottom:20px;max-width:380px}.ct-pwa-update-banner,.ct-pwa-offline-banner{left:auto;right:20px;max-width:380px}}.ct-toast{padding:10px 16px;border-radius:var(--ct-radius-sm);font-size:13px;font-weight:600;margin-bottom:12px;animation:ct-toast-in .25s var(--ct-ease-spring)}.ct-toast-success{background:var(--ct-success-soft);color:var(--ct-success);border:1px solid color-mix(in srgb,var(--ct-success) 20%,transparent)}.ct-toast-error{background:color-mix(in srgb,var(--ct-danger, #dc3545) 12%,transparent);color:var(--ct-danger, #b42318);border:1px solid color-mix(in srgb,var(--ct-danger, #dc3545) 25%,transparent)}@keyframes ct-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ct-shell-immersive .ct-topbar,.ct-shell-immersive .ct-sidebar,.ct-shell-immersive .ct-mobile-nav{display:none}.ct-shell-immersive .ct-main-immersive{padding:0;max-width:none;flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.ct-shell-immersive{display:flex;flex-direction:column;height:100vh;height:100dvh}.ct-shell-immersive .ct-main-immersive:has(.ct-ex-select)>*,.ct-shell-immersive .ct-main-immersive:has(.ct-program-builder)>*{height:100%;min-height:0;min-width:0;max-width:100%;width:100%;overflow-x:hidden;display:flex;flex-direction:column}.ct-slide-enter-forward{animation:ct-slide-forward .38s cubic-bezier(.16,1,.3,1) both}.ct-slide-enter-back{animation:ct-slide-back .34s cubic-bezier(.16,1,.3,1) both}@keyframes ct-slide-forward{0%{transform:translate(40%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes ct-slide-back{0%{transform:translate(-20%);opacity:0}to{transform:translate(0);opacity:1}}.ct-builder-enter .ct-builder-stagger-1,.ct-builder-enter .ct-builder-stagger-2,.ct-builder-enter .ct-builder-stagger-3,.ct-builder-enter .ct-builder-stagger-4{animation:ct-builder-fade-up .42s cubic-bezier(.16,1,.3,1) both}.ct-builder-enter .ct-builder-stagger-1{animation-delay:60ms}.ct-builder-enter .ct-builder-stagger-2{animation-delay:.12s}.ct-builder-enter .ct-builder-stagger-3{animation-delay:.18s}.ct-builder-enter .ct-builder-stagger-4{animation-delay:.24s}@keyframes ct-builder-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ct-program-builder{display:flex;flex-direction:column;flex:1;height:100%;min-height:0;min-width:0;width:100%;max-width:100%;overflow-x:hidden;background:var(--ct-bg);color:var(--ct-text-body)}.ct-builder-header{display:flex;align-items:center;gap:12px;padding:10px 24px;background:var(--ct-surface);border-bottom:1px solid var(--ct-border);flex-shrink:0;min-height:52px;min-width:0;max-width:100%;box-sizing:border-box}.ct-program-builder>.ct-builder-header{border:1px solid var(--ct-border);border-radius:var(--ct-radius);margin:12px 12px 0}.ct-builder-back{display:flex;align-items:center;gap:4px;font-size:13.5px;font-weight:600;color:var(--ct-text-muted);border:none;background:none;cursor:pointer;padding:6px 10px 6px 6px;border-radius:var(--ct-radius-sm);transition:color .15s,background .15s}.ct-builder-back:hover{color:var(--ct-text-body);background:var(--ct-surface-soft)}.ct-builder-header-center{flex:1;display:flex;justify-content:center;min-width:0}.ct-builder-header-name{width:100%;max-width:400px;font-size:15px;font-weight:700;font-family:var(--ct-font-display);border:1px solid transparent;background:transparent;color:var(--ct-text-body);outline:none;padding:6px 10px;border-radius:var(--ct-radius-sm);text-align:center;transition:border-color .15s,background .15s}.ct-builder-header-title{font-size:15px;font-weight:700;font-family:var(--ct-font-display);color:var(--ct-text-body)}.ct-builder-header-name:hover{border-color:var(--ct-border);background:var(--ct-surface-soft)}.ct-builder-header-name:focus{border-color:var(--ct-accent-bright);background:var(--ct-surface)}.ct-builder-header-name::placeholder{color:var(--ct-text-muted);opacity:.6;font-weight:500}.ct-builder-save{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:700;border-radius:var(--ct-radius-sm);border:none;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);cursor:pointer;transition:opacity .15s}.ct-builder-save:disabled{opacity:.5;cursor:default}.ct-builder-save:hover:not(:disabled){opacity:.9}.ct-builder-save-spinner{width:12px;height:12px;border:2px solid rgba(0,0,0,.2);border-top-color:var(--ct-on-accent-bright);border-radius:50%;animation:ct-spin .6s linear infinite}@keyframes ct-spin{to{transform:rotate(360deg)}}.ct-builder-plan-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 24px;background:var(--ct-surface);border-bottom:1px solid var(--ct-border);flex-shrink:0;min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box}.ct-program-builder>.ct-builder-plan-bar{border:1px solid var(--ct-border);border-radius:var(--ct-radius);margin:8px 12px 0}.ct-builder-plan-bar-left{display:flex;align-items:center;gap:10px;min-width:0;flex:0 1 auto;max-width:min(52%,420px)}.ct-builder-plan-stats{font-size:12.5px;font-weight:500;color:var(--ct-text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-builder-plan-stats-short,.ct-builder-btn-label-short{display:none}.ct-builder-plan-actions{display:flex;gap:8px;flex-shrink:0}.ct-builder-plan-actions .ct-btn-secondary{display:inline-flex;align-items:center;gap:6px}.ct-builder-plan-days{display:flex;align-items:center;gap:6px;flex:1 1 auto;justify-content:flex-end;min-width:0;overflow-x:auto;scrollbar-width:thin}.ct-builder-empty-sm{padding:18px 12px;text-align:center;font-size:13px;color:var(--ct-text-muted);display:flex;flex-direction:column;align-items:center;gap:12px}.ct-builder-empty-sm p{margin:0}.ct-builder-section-add-fab{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);box-shadow:var(--ct-shadow-material);border:none;cursor:pointer;transition:transform .15s,opacity .15s}.ct-builder-section-add-fab svg{width:22px;height:22px}.ct-builder-section-add-fab:active{transform:scale(.93)}.ct-builder-section-add-row{padding:10px 12px 12px;display:flex;justify-content:center}.ct-builder-section-add-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1.5px solid var(--ct-accent-bright);background:transparent;color:var(--ct-accent-bright);font-size:13px;font-weight:600;cursor:pointer}.ct-builder-section-add-btn svg{width:16px;height:16px}.ct-ex-select-backdrop{padding:20px;display:flex;align-items:center;justify-content:center;z-index:80}.ct-ex-select-modal{width:min(1120px,96vw);height:min(860px,92dvh);max-width:none;max-height:92dvh;margin:0;border-radius:var(--ct-radius-xl);border:1px solid var(--ct-border);padding:0;overflow:hidden;display:flex;flex-direction:column;background:var(--ct-bg);box-shadow:var(--ct-shadow-lift);animation:ct-ex-select-rise .28s cubic-bezier(.16,1,.3,1)}.ct-ex-select-modal .ct-ex-select,.ct-ex-select--modal{height:100%;min-height:0;flex:1;overflow:hidden;display:flex;flex-direction:column}.ct-ex-select--direct .exs-selected-panel{display:none}.ct-ex-select--direct .exs-wrap{grid-template-columns:minmax(0,1fr)}.ct-ex-select--direct .exs-main{min-height:0;overflow:auto}@keyframes ct-ex-select-rise{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.ct-ex-select-modal{animation:none}}@media(max-width:860px){.ct-ex-select-backdrop.ct-ex-select-backdrop--direct{padding:0;background:transparent;pointer-events:none}.ct-ex-select-backdrop.ct-ex-select-backdrop--direct .ct-ex-select-modal{pointer-events:none;width:100%;height:100%;max-height:none;border:none;border-radius:0;background:transparent;box-shadow:none}.ct-ex-select--direct{background:transparent}.ct-ex-select--direct .exs-wrap{display:none}.ct-ex-select--direct .exs-sheet-backdrop,.ct-ex-select--direct .exs-sheet,.ct-ex-select--direct .exs-contribute-backdrop,.ct-ex-select--direct .exs-edit-popup{pointer-events:auto}}.ct-btn-sm{font-size:12px!important;padding:6px 12px!important;min-height:0!important}.ct-builder-plan-body{flex:1;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;padding:16px 20px 28px;min-height:0;min-width:0;width:100%;max-width:100%;box-sizing:border-box}.ct-builder-plan-split{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:20px 24px;align-items:start;flex:1;min-height:0;min-width:0;width:100%;max-width:100%}.ct-builder-plan-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:0;min-width:0;max-width:100%}.ct-builder-plan-main{min-width:0;max-width:100%;display:flex;flex-direction:column;gap:12px}.ct-builder-side-block{display:flex;flex-direction:column;gap:8px}.ct-builder-cover{position:relative;aspect-ratio:16 / 9;border-radius:var(--ct-radius);overflow:hidden;border:1px solid var(--ct-border);background:var(--ct-surface-soft)}.ct-builder-cover-img{width:100%;height:100%;object-fit:cover;display:block}.ct-builder-cover-btn{position:absolute;top:8px;right:8px;padding:6px 10px;border:1px solid var(--ct-border);border-radius:6px;background:color-mix(in srgb,var(--ct-surface) 88%,transparent);color:var(--ct-text);font-size:11px;font-weight:600;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:var(--ct-shadow-sm)}.ct-builder-cover-btn:hover{background:var(--ct-surface);border-color:color-mix(in srgb,var(--ct-accent-bright) 45%,var(--ct-border));color:var(--ct-accent-bright)}.ct-builder-side-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ct-text-muted)}.ct-builder-side-fields{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--ct-border);border-radius:12px;background:var(--ct-surface-soft)}.ct-builder-side-field{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--ct-text-muted)}.ct-builder-side-field>span,.ct-builder-side-field-pair>span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ct-text-muted)}.ct-builder-side-field input,.ct-builder-side-pair input{height:36px;width:100%;border:1px solid var(--ct-border);border-radius:8px;padding:0 10px;font-size:14px;font-weight:600;background:var(--ct-bg);color:var(--ct-text)}.ct-builder-side-field input:focus,.ct-builder-side-pair input:focus{outline:none;border-color:var(--ct-accent-bright)}.ct-builder-side-field-pair{display:flex;flex-direction:column;gap:4px}.ct-builder-side-pair{display:flex;align-items:center;gap:6px}.ct-builder-side-pair input{flex:1;min-width:0;text-align:center}.ct-builder-side-pair-sep{color:var(--ct-text-muted);font-weight:600}.ct-builder-main-head{margin-bottom:4px}.ct-builder-main-hint{margin:4px 0 0;font-size:12.5px;color:var(--ct-text-muted);line-height:1.4}.ct-builder-settings-fold{border:1px solid var(--ct-border);border-radius:12px;background:var(--ct-surface-soft);overflow:hidden}.ct-builder-settings-summary{list-style:none;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 12px;user-select:none}.ct-builder-settings-summary::-webkit-details-marker{display:none}.ct-builder-settings-summary-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ct-text-muted)}.ct-builder-settings-summary-meta{font-size:12.5px;font-weight:600;color:var(--ct-text-body);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ct-builder-settings-fold[open]>.ct-builder-settings-summary{border-bottom:1px solid var(--ct-border)}.ct-builder-settings-fold .ct-builder-side-fields{border:none;border-radius:0;background:transparent}@media(min-width:961px){.ct-builder-settings-summary{pointer-events:none;cursor:default;padding-bottom:0;border-bottom:none!important}.ct-builder-settings-summary-meta{display:none}.ct-builder-settings-fold[open]>.ct-builder-settings-summary{border-bottom:none}}.ct-builder-session-pills{display:flex;flex-direction:column;gap:8px;overflow:visible;padding-bottom:0;margin-bottom:0;flex-shrink:0;min-width:0;max-width:100%}.ct-builder-plan-side .ct-session-pill{width:100%;border-radius:12px;align-items:stretch}.ct-builder-plan-side .ct-session-pill-with-remove{align-items:stretch}.ct-builder-plan-side .ct-session-pill-remove{border-radius:0 12px 12px 0}.ct-builder-plan-side .ct-session-pill-with-remove .ct-session-pill-main{flex:1;min-width:0;justify-content:flex-start}.ct-builder-plan-side .ct-session-pill-add{justify-content:center;gap:8px;min-height:40px}.ct-builder-plan-side .ct-session-pill-label{overflow:hidden;text-overflow:ellipsis}.ct-builder-plan-side .ct-builder-session-head{margin-bottom:0}.ct-session-pill{display:flex;align-items:center;gap:6px;padding:8px 14px;min-height:40px;font-size:13.5px;font-weight:500;border-radius:999px;border:1px solid var(--ct-border);background:var(--ct-bg);color:var(--ct-text-body);white-space:nowrap;cursor:pointer;transition:all .15s}.ct-session-pill:hover{border-color:var(--ct-accent-bright)}.ct-session-pill-active{background:var(--ct-accent-bright);border-color:var(--ct-accent-bright);color:var(--ct-on-accent-bright);font-weight:700}.ct-session-pill-num{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;background:var(--ct-surface-soft);color:var(--ct-text-muted)}.ct-session-pill-active .ct-session-pill-num{background:#0000001f;color:var(--ct-on-accent-bright)}.ct-session-pill-label{font-size:13.5px}.ct-session-pill-count{font-size:11px;font-weight:700;background:var(--ct-surface-soft);color:var(--ct-text-muted);padding:2px 7px;border-radius:999px}.ct-session-pill-active .ct-session-pill-count{background:#0000001f;color:var(--ct-on-accent-bright)}.ct-session-pill-with-remove{padding:0;gap:0;align-items:stretch;cursor:default;overflow:hidden}.ct-session-pill-with-remove .ct-session-pill-main{display:flex;align-items:center;align-self:stretch;gap:6px;padding:8px 8px 8px 14px;border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;white-space:nowrap}.ct-session-pill-actions{display:flex;align-items:stretch;flex-shrink:0;align-self:stretch}.ct-session-pill-edit,.ct-session-pill-remove{display:grid;place-items:center;width:40px;height:auto;min-height:0;align-self:stretch;padding:0;border:none;background:transparent;cursor:pointer;transition:background .12s,color .12s,opacity .12s}.ct-session-pill-edit{color:var(--ct-text, #111);opacity:1}.ct-session-pill-edit:hover{color:var(--ct-text, #111);opacity:1;background:var(--ct-surface-soft)}.ct-session-pill-edit svg{width:16px;height:16px}.ct-session-pill-remove{color:#fff;background:var(--ct-danger, #e11d48);font-size:17px;font-weight:700;line-height:1;opacity:1;border-radius:0 999px 999px 0}.ct-session-pill-remove svg{width:18px;height:18px}.ct-session-pill-remove:hover{background:color-mix(in srgb,var(--ct-danger, #e11d48) 85%,#000);color:#fff}.ct-session-pill-with-remove.ct-session-pill-active .ct-session-pill-edit{color:#111;opacity:1}.ct-session-pill-with-remove.ct-session-pill-active .ct-session-pill-edit:hover{opacity:1;color:#111;background:#0000001a}.ct-session-pill-with-remove.ct-session-pill-active .ct-session-pill-remove{background:#00000038;color:#fff}.ct-session-pill-with-remove.ct-session-pill-active .ct-session-pill-remove:hover{background:var(--ct-danger, #e11d48);color:#fff}.ct-session-pill-rename{flex:1;min-width:80px;max-width:160px;margin:6px 0 6px 12px;padding:4px 10px;border:1px solid var(--ct-accent-bright);border-radius:999px;background:var(--ct-bg);color:var(--ct-text);caret-color:var(--ct-text);font-size:13.5px;font-weight:600;outline:none}.ct-session-pill-active .ct-session-pill-rename{border-color:color-mix(in srgb,var(--ct-on-accent-bright) 35%,transparent);background:var(--ct-bg);color:var(--ct-text);caret-color:var(--ct-text)}[data-theme=dark] .ct-session-pill-rename,[data-theme=dark] .ct-session-pill-active .ct-session-pill-rename{background:var(--ct-surface-soft);color:var(--ct-text);caret-color:var(--ct-text);border-color:var(--ct-accent-bright)}.ct-builder-session-head{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-bottom:14px}.ct-builder-session-head-row{display:flex;align-items:center;gap:8px}.ct-builder-session-details{border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);overflow:hidden}.ct-builder-session-details>summary{list-style:none;cursor:pointer;padding:8px 12px;font-size:12.5px;font-weight:600;color:var(--ct-text-muted);user-select:none}.ct-builder-session-details>summary::-webkit-details-marker{display:none}.ct-builder-session-details>summary:before{content:"";display:inline-block;width:0;height:0;margin-right:8px;border-left:5px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;vertical-align:middle;transition:transform .15s}.ct-builder-session-details[open]>summary:before{transform:rotate(90deg)}.ct-builder-session-details[open]>summary{border-bottom:1px solid var(--ct-border);color:var(--ct-text-body)}.ct-builder-session-details .ct-builder-session-meta-fields{margin:0;padding:12px}.ct-builder-session-badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ct-accent-dark);background:var(--ct-accent-soft);padding:3px 8px;border-radius:var(--ct-radius-sm);flex-shrink:0}.ct-builder-session-badge-edit{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;cursor:text;min-height:28px}.ct-builder-session-badge-edit input{border:none;background:transparent;color:inherit;font:inherit;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:0;margin:0;min-width:0;outline:none;field-sizing:content;width:auto}.ct-builder-session-badge-edit input[type=number]{width:2.6em;text-align:center;-moz-appearance:textfield}.ct-builder-session-badge-edit input[type=number]::-webkit-outer-spin-button,.ct-builder-session-badge-edit input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ct-builder-session-badge-edit input[type=text]{width:7.5em;text-align:left;text-transform:none;letter-spacing:.02em;font-weight:600}.ct-builder-session-badge-edit input::placeholder{color:color-mix(in srgb,var(--ct-accent-dark) 55%,transparent);text-transform:none;font-weight:600}.ct-builder-session-badge-edit:focus-within{outline:1px solid var(--ct-accent-bright);background:color-mix(in srgb,var(--ct-accent-soft) 70%,var(--ct-surface))}.ct-builder-session-badge-edit span{flex-shrink:0;opacity:.85}.ct-builder-session-label{flex:1;margin:0;font-size:15px;font-weight:700;color:var(--ct-text-body);line-height:1.3}.ct-builder-session-label-input{flex:1;font-size:13.5px;font-weight:600;padding:6px 10px;border:1px solid transparent;border-radius:var(--ct-radius-sm);background:transparent;color:var(--ct-text-body);transition:border-color .15s,background .15s}.ct-builder-session-label-input:hover{background:var(--ct-bg);border-color:var(--ct-border)}.ct-builder-session-label-input:focus{background:var(--ct-bg);border-color:var(--ct-accent-bright);outline:none}.ct-builder-session-label-input::placeholder{color:var(--ct-text-muted);font-weight:400}.ct-builder-session-ex-count{font-size:11.5px;color:var(--ct-text-muted);white-space:nowrap;flex-shrink:0}.ct-builder-add-custom-wrap{margin-bottom:14px}.ct-builder-add-custom-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:12.5px;font-weight:600;border:1px dashed var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);color:var(--ct-accent-dark);cursor:pointer;transition:border-color .15s,background .15s;width:100%;justify-content:center}.ct-builder-add-custom-btn:hover{border-color:var(--ct-accent-dark);background:var(--ct-accent-soft)}.ct-builder-custom-form{margin-top:10px;padding:12px;background:var(--ct-bg);border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);animation:ct-meta-expand .2s ease both}.ct-builder-custom-name{width:100%;padding:8px 10px;font-size:13px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);color:var(--ct-text-body);margin-bottom:8px;transition:border-color .15s}.ct-builder-custom-name:focus{border-color:var(--ct-accent-bright);outline:none}.ct-builder-custom-fields{display:flex;gap:8px;margin-bottom:10px}.ct-builder-custom-field{flex:1;display:flex;flex-direction:column;gap:3px}.ct-builder-custom-field label{font-size:10px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase}.ct-builder-custom-field input{padding:6px 8px;font-size:12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);color:var(--ct-text-body);text-align:center;transition:border-color .15s}.ct-builder-custom-field input:focus{border-color:var(--ct-accent-bright);outline:none}.ct-builder-custom-submit{width:100%;padding:8px;font-size:12.5px;font-weight:700;border-radius:var(--ct-radius-sm);border:none;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);cursor:pointer;transition:opacity .15s}.ct-builder-custom-submit:hover{opacity:.9}.ct-builder-danger-zone{margin-top:32px;padding-top:20px;border-top:1px dashed var(--ct-border)}.ct-btn-danger{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;font-size:13.5px;font-weight:700;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-error, #dc3545);background:transparent;color:var(--ct-error, #dc3545);cursor:pointer;font-family:var(--ct-font-body);transition:background .15s,color .15s}.ct-btn-danger:hover{background:var(--ct-error, #dc3545);color:#fff}.ct-btn-danger:disabled{opacity:.45;cursor:not-allowed}.ct-delete-backdrop{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;z-index:9000;padding:20px}.ct-delete-dialog{background:var(--ct-surface);border-radius:var(--ct-radius);box-shadow:var(--ct-shadow-material);width:min(420px,100%);padding:24px;animation:ct-pop-in .18s ease}@keyframes ct-pop-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.ct-delete-dialog-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.ct-delete-dialog-icon{width:40px;height:40px;border-radius:50%;background:color-mix(in srgb,var(--ct-error, #dc3545) 12%,transparent);color:var(--ct-error, #dc3545);display:grid;place-items:center;flex-shrink:0}.ct-delete-dialog-icon svg{width:20px;height:20px}.ct-delete-dialog-head h2{font-family:var(--ct-font-display);font-size:18px;font-weight:700;margin:0;flex:1}.ct-delete-close{width:30px;height:30px;border-radius:50%;background:var(--ct-surface-soft);color:var(--ct-text-muted);display:grid;place-items:center;border:none;cursor:pointer;flex-shrink:0}.ct-delete-close svg{width:14px;height:14px}.ct-delete-close:hover{background:var(--ct-outline)}.ct-delete-dialog-copy{font-size:14px;color:var(--ct-text-muted);line-height:1.55;margin:0 0 18px}.ct-delete-dialog-label{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:var(--ct-text-body)}.ct-delete-dialog-input{width:100%;padding:10px 14px;font-size:14px;font-weight:700;font-family:var(--ct-font-body);border:2px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);color:var(--ct-text-body);letter-spacing:2px;text-align:center;transition:border-color .15s;outline:none}.ct-delete-dialog-input:focus{border-color:var(--ct-error, #dc3545)}.ct-delete-dialog-input.valid{border-color:var(--ct-error, #dc3545)}.ct-delete-dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.ct-delete-dialog-actions .ct-btn-danger{flex:1;justify-content:center}.ct-delete-dialog-actions .ct-btn-secondary{flex:none}.ct-delete-dialog-error{color:var(--ct-error, #dc3545);font-size:13px;margin:0 0 8px;text-align:center}.ct-builder-schedule-btn{gap:6px}.ct-builder-exercise-table{background:var(--ct-bg);border:none;border-radius:0;overflow-x:auto;overflow-y:hidden;max-width:100%;min-width:0}.ct-exercise-table-header{display:flex;align-items:center;padding:4px 8px;gap:6px;border-bottom:1px solid var(--ct-border);border-radius:0;background:var(--ct-surface-soft);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ct-text-muted)}.ct-eth-num{width:22px;text-align:center;flex-shrink:0}.ct-eth-view{width:24px;flex-shrink:0}.ct-eth-name{flex:1;min-width:64px}.ct-eth-grip{width:22px;flex-shrink:0}.ct-eth-field{width:48px;text-align:center}.ct-eth-sets{width:96px}.ct-eth-actions{width:28px}.ct-exercise-row{display:flex;align-items:center;gap:6px;padding:3px 8px;border-bottom:1px solid var(--ct-border);transition:background .1s,opacity .12s,box-shadow .12s;cursor:default;animation:ct-exercise-row-in .28s cubic-bezier(.16,1,.3,1) both}@keyframes ct-exercise-row-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes ct-meta-expand{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ct-exercise-row:last-child{border-bottom:none}.ct-exercise-row:hover{background:color-mix(in srgb,var(--ct-accent-soft) 30%,transparent)}.ct-exercise-row-dragging{opacity:.4}.ct-exercise-row-dragover{box-shadow:inset 0 -2px 0 var(--ct-accent-bright)}.ct-exercise-row-grip{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:28px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--ct-text-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.ct-exercise-row-grip:hover{color:var(--ct-text);background:var(--ct-surface-soft)}.ct-exercise-row-grip:active{cursor:grabbing}.ct-exercise-row-num{width:20px;height:20px;display:grid;place-items:center;font-size:10px;font-weight:700;color:var(--ct-text-muted);background:var(--ct-surface-soft);border-radius:50%;flex-shrink:0}.ct-exercise-row-view{flex-shrink:0;opacity:.7;width:24px;height:24px}.ct-exercise-row-view:hover{opacity:1;color:var(--ct-accent-dark)}.ct-exercise-row-name-wrap{flex:1;min-width:64px}.ct-exercise-row-name{width:100%;font-size:12px;font-weight:600;padding:2px 4px;border:1px solid transparent;border-radius:var(--ct-radius-sm);background:transparent;color:var(--ct-text-body);transition:border-color .15s,background .15s}.ct-exercise-row-name:hover{border-color:var(--ct-border);background:var(--ct-surface)}.ct-exercise-row-name:focus{border-color:var(--ct-accent-bright);background:var(--ct-surface);outline:none}.ct-exercise-row-meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.ct-exercise-row-meta-field{display:flex;flex-direction:column;gap:0;margin:0}.ct-exercise-row-meta-label{display:none}.ct-exercise-row-field{width:48px;font-size:12px;padding:2px 3px;border:1px solid transparent;border-radius:var(--ct-radius-sm);background:transparent;color:var(--ct-text-body);text-align:center;transition:border-color .15s,background .15s}.ct-exercise-row-field:hover{border-color:var(--ct-border);background:var(--ct-surface)}.ct-exercise-row-field:focus{border-color:var(--ct-accent-bright);background:var(--ct-surface);outline:none}.ct-exercise-row-actions{display:flex;gap:2px;flex-shrink:0;opacity:0;transition:opacity .15s}.ct-exercise-row:hover .ct-exercise-row-actions{opacity:1}.ct-builder-exercise-table .ct-number-stepper-sm{height:26px}.ct-builder-exercise-table .ct-number-stepper-sm .ct-number-stepper-btn{flex-basis:22px;font-size:11px}.ct-exercise-preview-backdrop{position:fixed;inset:0;z-index:80;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px}.ct-exercise-preview{width:min(420px,100%);max-height:min(80dvh,560px);overflow-y:auto;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md, 12px);box-shadow:0 16px 40px #0003;color:var(--ct-text-body)}.ct-exercise-preview-head{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--ct-border)}.ct-exercise-preview-head h2{flex:1;margin:0;font-size:16px;font-weight:700;font-family:var(--ct-font-display);line-height:1.3}.ct-exercise-preview-close{width:28px;height:28px;display:grid;place-items:center;border:none;border-radius:var(--ct-radius-sm);background:transparent;color:var(--ct-text-muted);cursor:pointer}.ct-exercise-preview-close:hover{background:var(--ct-surface-soft);color:var(--ct-text-body)}.ct-exercise-preview-body{padding:16px;display:flex;flex-direction:column;gap:12px}.ct-exercise-preview-img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:var(--ct-radius-sm);background:var(--ct-surface-soft)}.ct-exercise-preview-meta{display:flex;flex-wrap:wrap;gap:6px}.ct-exercise-preview-meta span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--ct-accent-dark);background:var(--ct-accent-soft);padding:3px 8px;border-radius:var(--ct-radius-sm)}.ct-exercise-preview-instruction{margin:0;font-size:13.5px;line-height:1.5;color:var(--ct-text-body)}.ct-exercise-preview-loading{margin:0;padding:24px 16px;text-align:center;color:var(--ct-text-muted);font-size:13px}.ct-exercise-preview-video{font-size:13px;font-weight:600;color:var(--ct-accent-dark);text-decoration:none}.ct-exercise-preview-video:hover{text-decoration:underline}.ct-btn-icon{width:26px;height:26px;display:grid;place-items:center;border-radius:var(--ct-radius-sm);border:none;background:transparent;color:var(--ct-text-muted);cursor:pointer;transition:background .1s,color .1s}.ct-btn-icon:hover{background:var(--ct-surface-soft);color:var(--ct-text-body)}.ct-btn-icon:disabled{opacity:.25;cursor:default;pointer-events:none}.ct-btn-icon-danger:hover{color:var(--ct-danger);background:var(--ct-danger-soft)}.ct-builder-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background:var(--ct-bg);border:2px dashed var(--ct-border);border-radius:var(--ct-radius-sm);text-align:center}.ct-builder-empty-icon{color:var(--ct-text-muted);opacity:.4;margin-bottom:12px}.ct-builder-empty-title{font-size:14px;font-weight:700;color:var(--ct-text-body);margin:0 0 4px}.ct-builder-empty-desc{font-size:12.5px;color:var(--ct-text-muted);margin:0;max-width:260px;line-height:1.5}.ct-builder-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100vh;color:var(--ct-text-muted);font-size:13px}.ct-builder-loading-spinner{width:24px;height:24px;border:3px solid var(--ct-border);border-top-color:var(--ct-accent-bright);border-radius:50%;animation:ct-spin .7s linear infinite}.ct-catalog-grid-pane{display:flex;flex-direction:column;height:100%;padding:20px;overflow:hidden}.ct-catalog-grid-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.ct-catalog-grid-header h3{font-size:16px;font-weight:700;margin:0}.ct-catalog-grid-count{font-size:12px;color:var(--ct-text-muted)}.ct-catalog-grid-toolbar{display:flex;gap:10px;margin-bottom:12px;flex-shrink:0}.ct-catalog-grid-toolbar .ct-catalog-search-wrap{flex:1;position:relative;margin-bottom:0}.ct-catalog-search-wrap{position:relative}.ct-catalog-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--ct-text-muted);pointer-events:none}.ct-catalog-search{width:100%;padding:9px 10px 9px 34px;font-size:13px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);color:var(--ct-text-body);transition:border-color .15s}.ct-catalog-search:focus{border-color:var(--ct-accent-bright);outline:none}.ct-catalog-category-select{padding:8px 12px;font-size:13px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);color:var(--ct-text-body);cursor:pointer;min-width:140px;transition:border-color .15s}.ct-catalog-category-select:focus{border-color:var(--ct-accent-bright);outline:none}.ct-catalog-preview-bar{display:flex;gap:12px;padding:12px;margin-bottom:12px;background:var(--ct-surface-soft);border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);animation:ct-meta-expand .2s ease both}.ct-catalog-preview-img{width:80px;height:80px;border-radius:var(--ct-radius-sm);object-fit:cover;flex-shrink:0}.ct-catalog-preview-placeholder{width:80px;height:80px;border-radius:var(--ct-radius-sm);display:grid;place-items:center;font-size:24px;font-weight:700;color:#fffc;flex-shrink:0}.ct-catalog-preview-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ct-catalog-preview-info strong{font-size:14px;text-transform:capitalize}.ct-catalog-preview-meta{font-size:12px;color:var(--ct-text-muted)}.ct-catalog-preview-instruction{font-size:12px;color:var(--ct-text-muted);margin:4px 0 0;line-height:1.4;max-height:56px;overflow-y:auto}.ct-catalog-preview-close{width:26px;height:26px;display:grid;place-items:center;border-radius:var(--ct-radius-sm);border:none;background:transparent;color:var(--ct-text-muted);cursor:pointer;flex-shrink:0;align-self:flex-start}.ct-catalog-preview-close:hover{color:var(--ct-text-body)}.ct-catalog-error{padding:12px;font-size:13px;color:var(--ct-danger);margin:0}.ct-catalog-grid{flex:1;overflow-y:auto;padding-bottom:8px}.ct-catalog-grid-list{display:flex;flex-direction:column;gap:6px}.ct-catalog-card{display:flex;flex-direction:row;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);cursor:pointer;transition:border-color .15s,background .15s}.ct-catalog-card:hover{border-color:var(--ct-accent-bright);background:var(--ct-surface-soft)}.ct-catalog-card-thumb{width:44px;height:44px;border-radius:var(--ct-radius-sm);overflow:hidden;background:var(--ct-surface-soft);flex-shrink:0}.ct-catalog-card-thumb img{width:100%;height:100%;object-fit:cover}.ct-catalog-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff}.ct-catalog-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ct-catalog-card-name{font-size:13.5px;font-weight:600;text-transform:capitalize;line-height:1.3;color:var(--ct-text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-catalog-card-meta{font-size:11.5px;color:var(--ct-text-muted)}.ct-catalog-card-actions{display:flex;gap:4px;flex-shrink:0}.ct-catalog-grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.ct-catalog-grid-card{display:flex;flex-direction:column;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s}.ct-catalog-grid-card:hover{border-color:var(--ct-accent-bright);box-shadow:0 2px 8px #00000014}.ct-catalog-grid-card-thumb{width:100%;height:100px;overflow:hidden;background:var(--ct-surface-soft);flex-shrink:0}.ct-catalog-grid-card-thumb img{width:100%;height:100%;object-fit:cover}.ct-catalog-grid-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fffc}.ct-catalog-grid-card-body{padding:8px 10px 4px;display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.ct-catalog-grid-card-name{font-size:12.5px;font-weight:600;text-transform:capitalize;line-height:1.3;color:var(--ct-text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-catalog-grid-card-meta{font-size:10.5px;color:var(--ct-text-muted)}.ct-catalog-grid-card-actions{display:flex;gap:4px;padding:4px 10px 8px}.ct-catalog-card-add,.ct-catalog-card-view{width:30px;height:30px;display:grid;place-items:center;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-border);background:var(--ct-bg);color:var(--ct-text-muted);cursor:pointer;transition:all .1s}.ct-catalog-card-add:hover{border-color:var(--ct-accent-bright);color:var(--ct-accent-dark);background:var(--ct-accent-soft)}.ct-catalog-card-view:hover{border-color:var(--ct-border);color:var(--ct-text-body)}.ct-catalog-no-results{text-align:center;padding:40px 20px;color:var(--ct-text-muted)}.ct-catalog-no-results p{margin:0 0 4px;font-size:14px}.ct-catalog-no-results-hint{font-size:12px}.ct-catalog-pagination{display:flex;align-items:center;justify-content:space-between;padding:10px 0 0;flex-shrink:0;border-top:1px solid var(--ct-border);margin-top:8px}.ct-catalog-page-size{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ct-text-muted)}.ct-catalog-page-size select{padding:4px 6px;font-size:12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);color:var(--ct-text-body);cursor:pointer}.ct-catalog-page-nav{display:flex;align-items:center;gap:4px}.ct-catalog-page-info{font-size:12px;color:var(--ct-text-muted);margin-right:8px}.ct-catalog-page-nav button{width:28px;height:28px;display:grid;place-items:center;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-border);background:var(--ct-bg);color:var(--ct-text-body);cursor:pointer;font-size:14px;transition:all .1s}.ct-catalog-page-nav button:hover:not(:disabled){border-color:var(--ct-accent-bright)}.ct-catalog-page-nav button:disabled{opacity:.3;cursor:default}.ct-modal-lg{width:min(960px,calc(100vw - 32px));max-height:min(calc(100dvh - 32px),820px);overflow:hidden;display:flex;flex-direction:column}.ct-wizard-step-header{display:flex;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid var(--ct-border);flex-shrink:0}.ct-wizard-step-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ct-text-muted)}.ct-wizard-step-title{font-size:16px;font-weight:700;color:var(--ct-text-body)}.ct-wizard-dots{margin-left:auto;display:flex;gap:6px}.ct-wizard-dot{width:8px;height:8px;border-radius:50%;background:var(--ct-border);transition:background .2s}.ct-wizard-dot.is-done{background:var(--ct-accent-bright)}.ct-wizard-body{padding:20px 22px;overflow-y:auto;flex:1}.ct-wizard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.ct-wizard-grid--metrics{grid-template-columns:1fr 1fr 1.15fr;align-items:end;gap:12px}.ct-field--price{padding:10px 12px;border-radius:var(--ct-radius-sm);background:color-mix(in srgb,var(--ct-accent-soft) 70%,var(--ct-surface));border:1px solid color-mix(in srgb,var(--ct-accent-bright) 45%,var(--ct-border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-accent-bright) 12%,transparent)}.ct-field--price label{color:var(--ct-accent-dark);font-weight:700}.ct-field--price input{font-size:18px;font-weight:700;font-family:var(--ct-font-display);letter-spacing:.01em;color:var(--ct-text-body);background:var(--ct-surface);border-color:color-mix(in srgb,var(--ct-accent-bright) 35%,var(--ct-border));min-height:42px;padding:8px 12px}.ct-field--price input:focus{border-color:var(--ct-accent-bright);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 22%,transparent)}.ct-wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 22px;border-top:1px solid var(--ct-border);flex-shrink:0}.ct-wizard-footer-right{display:flex;gap:8px}.ct-wizard-pair-back{display:none}.ct-wizard-footer-pair .ct-wizard-pair-continue{min-width:0}.ct-modal.ct-modal-settings{display:flex;flex-direction:column;padding:0;overflow:hidden;max-height:min(90dvh,720px)}.ct-modal.ct-modal-settings .ct-wizard-step-header,.ct-modal.ct-modal-settings .ct-wizard-footer{margin:0}.ct-modal.ct-modal-settings .ct-wizard-body{flex:1;min-height:0}.ct-field-hint{display:block;margin-top:4px;font-size:12px;color:var(--ct-text-muted);line-height:1.35}.ct-wizard-sessions{padding:10px 22px;border-bottom:1px solid var(--ct-border);flex-shrink:0}.ct-wizard-split{flex:1;display:flex;overflow:hidden;min-height:0}.ct-wizard-selected{width:260px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--ct-border);background:var(--ct-surface)}.ct-wizard-selected-header{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--ct-border);flex-shrink:0}.ct-wizard-selected-header .ct-builder-session-label-input{flex:1;font-size:12.5px;padding:5px 8px}.ct-wizard-selected-count{font-size:10.5px;color:var(--ct-text-muted);white-space:nowrap;flex-shrink:0}.ct-wizard-selected-list{flex:1;overflow-y:auto;padding:6px 0}.ct-wizard-selected-item{display:flex;align-items:center;gap:8px;padding:7px 14px;transition:background .1s}.ct-wizard-selected-item:hover{background:var(--ct-surface-soft)}.ct-wizard-selected-num{width:22px;height:22px;display:grid;place-items:center;font-size:10px;font-weight:700;color:var(--ct-text-muted);background:var(--ct-bg);border-radius:50%;flex-shrink:0}.ct-wizard-selected-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ct-wizard-selected-name{font-size:12.5px;font-weight:600;color:var(--ct-text-body);text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-wizard-selected-meta{font-size:10.5px;color:var(--ct-text-muted)}.ct-wizard-selected-remove{width:22px;height:22px;display:grid;place-items:center;border-radius:var(--ct-radius-sm);border:none;background:transparent;color:var(--ct-text-muted);cursor:pointer;flex-shrink:0;opacity:0;transition:opacity .15s,color .1s,background .1s}.ct-wizard-selected-item:hover .ct-wizard-selected-remove{opacity:1}.ct-wizard-selected-remove:hover{color:var(--ct-danger);background:var(--ct-danger-soft)}.ct-wizard-selected-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:20px;text-align:center;color:var(--ct-text-muted)}.ct-wizard-selected-empty svg{opacity:.35}.ct-wizard-selected-empty p{margin:0;font-size:12.5px;font-weight:600}.ct-wizard-selected-empty-hint{font-size:11px;font-weight:400;opacity:.7}.ct-wizard-selected-total{padding:8px 14px;border-top:1px solid var(--ct-border);font-size:11px;font-weight:600;color:var(--ct-text-muted);flex-shrink:0}.ct-wizard-catalog-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-width:0}.ct-wizard-catalog-body .ct-catalog-grid-pane{flex:1;overflow:hidden;display:flex;flex-direction:column}.ct-wizard-catalog-body .ct-catalog-grid{flex:1;overflow-y:auto}.ct-field{display:flex;flex-direction:column;gap:4px}.ct-field label{font-size:11px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.03em}.ct-field input,.ct-field textarea,.ct-field select{font-size:13px;padding:8px 10px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);color:var(--ct-text-body);font-family:inherit;width:100%;transition:border-color .15s;outline:none}.ct-field input:focus,.ct-field textarea:focus{border-color:var(--ct-accent-bright)}@media(max-width:767px){.exs-sheet .ct-mobile-back-bar{display:flex;flex-shrink:0;z-index:30;border-radius:0}.exs-sheet .ct-mobile-back-bar--pair{display:flex}.ct-wizard-cancel-desktop{display:none}.ct-wizard-footer-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px))}.ct-wizard-footer-pair .ct-wizard-pair-back{display:inline-flex;width:100%;min-width:0;box-sizing:border-box}.ct-wizard-footer-pair .ct-wizard-pair-continue{width:100%;justify-content:center;min-height:41px;box-sizing:border-box}.ct-modal.ct-modal-settings .ct-mobile-back-bar,.exs-close-x--desktop{display:none}.exs-sheet-bar-spacer{display:block}.exs-sheet{padding-bottom:0}.ct-builder-header{padding:8px 12px;gap:8px;min-height:48px}.ct-builder-back{padding:6px 8px;gap:4px}.ct-builder-back span{display:inline;font-size:13px}.ct-builder-header-name{font-size:14px;padding:6px 8px;text-align:left}.ct-builder-save{padding:8px 12px;font-size:12.5px}.ct-builder-plan-bar{flex-direction:column;align-items:stretch;gap:8px;padding:8px 12px}.ct-builder-plan-bar-left{max-width:none;width:100%;justify-content:space-between}.ct-builder-plan-days{justify-content:flex-start;width:100%}.ct-builder-plan-stats-full{display:none}.ct-builder-plan-stats-short{display:inline}.ct-builder-btn-label-full{display:none}.ct-builder-btn-label-short{display:inline}.ct-builder-plan-actions{display:flex;gap:8px;width:auto}.ct-builder-plan-actions .ct-btn-secondary{width:auto;justify-content:center}.ct-builder-plan-body{padding:8px 10px calc(16px + env(safe-area-inset-bottom,0px))}.ct-builder-session-pills{margin-bottom:0;padding-bottom:2px}.ct-session-pill{padding:5px 10px;min-height:34px}.ct-builder-session-meta-fields{grid-template-columns:1fr 1fr}.ct-builder-inline-form{flex-wrap:wrap}.ct-builder-inline-form input{flex:1 1 100%}.ct-catalog-grid-pane{padding:14px}.ct-catalog-grid-cards{grid-template-columns:repeat(2,1fr)}.ct-exercise-row-actions{opacity:1}.ct-exercise-table-header{display:none}.ct-exercise-row{display:grid;grid-template-columns:28px 22px 28px minmax(0,1fr) auto;grid-template-areas:"grip num view name actions" "meta meta meta meta meta";gap:6px 8px;padding:8px 10px;align-items:center}.ct-exercise-row-grip{grid-area:grip;width:28px;height:36px}.ct-exercise-row-num{grid-area:num;width:22px;height:22px;font-size:10px}.ct-exercise-row-view{grid-area:view;opacity:1}.ct-exercise-row-name-wrap{grid-area:name;min-width:0;flex:none}.ct-exercise-row-name{font-size:13px;padding:2px 4px}.ct-exercise-row-actions{grid-area:actions;gap:0}.ct-exercise-row-meta{grid-area:meta;display:grid;grid-template-columns:minmax(96px,1.2fr) 1fr;gap:6px;width:100%}.ct-exercise-row-meta-field{gap:2px;min-width:0}.ct-exercise-row-meta-label{display:block;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ct-text-muted);line-height:1}.ct-exercise-row .ct-number-stepper,.ct-exercise-row .ct-number-stepper-sm{width:100%;height:30px}.ct-exercise-row .ct-number-stepper-sm .ct-number-stepper-btn{flex-basis:26px}.ct-exercise-row-field{width:100%;height:30px;padding:0 6px;border:1px solid var(--ct-border);background:var(--ct-surface);border-radius:var(--ct-radius-sm);font-size:12.5px}.ct-wizard-grid{grid-template-columns:1fr 1fr}.ct-wizard-grid--metrics{grid-template-columns:1fr 1fr 1.1fr;gap:8px}.ct-field--price{padding:8px 10px}.ct-field--price input{font-size:16px;min-height:38px;padding:6px 10px}.ct-wizard-split{flex-direction:column}.ct-wizard-selected{width:100%;max-height:180px;border-right:none;border-bottom:1px solid var(--ct-border)}.ct-wizard-selected-remove{opacity:1}}.ct-ex-select{font-family:var(--ct-font-body);background:var(--ct-bg);color:var(--ct-text-body);-webkit-font-smoothing:antialiased;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.ct-ex-select ::-webkit-scrollbar{width:6px;height:6px}.ct-ex-select ::-webkit-scrollbar-track{background:transparent}.ct-ex-select ::-webkit-scrollbar-thumb{background:var(--ct-outline);border-radius:3px}.ct-ex-select ::-webkit-scrollbar-thumb:hover{background:var(--ct-text-muted)}.ct-ex-select{scrollbar-width:thin;scrollbar-color:var(--ct-outline) transparent}.exs-pills-bar{padding:10px 24px;border-bottom:1px solid var(--ct-border);background:var(--ct-surface);flex-shrink:0}.ct-ex-select>.ct-builder-header{flex-shrink:0}.exs-wrap{display:grid;grid-template-columns:264px minmax(0,1fr);gap:24px;max-width:1280px;width:100%;margin:0 auto;padding:26px 22px 24px;align-items:stretch;flex:1;min-height:0;overflow:hidden}.exs-selected-panel{background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);box-shadow:var(--ct-shadow-sm);display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.exs-selected-head{padding:16px 16px 12px;border-bottom:1px solid var(--ct-border);display:flex;align-items:baseline;justify-content:space-between}.exs-selected-head h2{font-family:var(--ct-font-display);font-size:15px;font-weight:700;letter-spacing:.2px;margin:0}.exs-selected-count{font-size:12px;font-weight:600;color:var(--ct-accent-dark);background:var(--ct-accent-soft);padding:2px 9px;border-radius:99px}.exs-selected-list{list-style:none;overflow-y:auto;padding:6px 8px;flex:1;margin:0}.exs-selected-item{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:9px;animation:exs-pop .18s ease}@keyframes exs-pop{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.exs-selected-item+.exs-selected-item{border-top:1px solid var(--ct-border)}.exs-sel-num{width:22px;height:22px;border-radius:7px;background:var(--ct-accent-dark);color:var(--ct-on-inverse);font-size:11px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.exs-sel-meta{min-width:0;flex:1}.exs-sel-meta b{display:block;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exs-sel-meta span{font-size:11.5px;color:var(--ct-text-muted)}.exs-remove-btn{width:26px;height:26px;border-radius:8px;color:var(--ct-outline);display:grid;place-items:center;flex-shrink:0;background:none;border:none;cursor:pointer;transition:background .15s,color .15s}.exs-remove-btn svg{width:14px;height:14px}.exs-remove-btn:hover{background:var(--ct-danger-soft);color:var(--ct-danger)}.exs-settings-btn{width:26px;height:26px;border-radius:8px;color:var(--ct-outline);display:grid;place-items:center;flex-shrink:0;background:none;border:none;cursor:pointer;transition:background .15s,color .15s}.exs-settings-btn svg{width:14px;height:14px}.exs-settings-btn:hover{background:var(--ct-accent-soft);color:var(--ct-accent-dark)}.exs-selected-item{position:relative}.exs-sel-meta[role=button]{cursor:pointer;border-radius:6px;transition:background .12s}.exs-sel-meta[role=button]:hover{background:var(--ct-surface-soft)}.exs-edit-popup{position:fixed;z-index:90;width:min(280px,calc(100vw - 24px));box-sizing:border-box;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);box-shadow:var(--ct-shadow-material);padding:12px;display:flex;flex-direction:column;gap:10px;animation:exs-pop .15s ease}.exs-edit-popup-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.exs-edit-popup-head .exs-close-x{width:24px;height:24px;flex-shrink:0}.exs-edit-popup-head .exs-close-x svg{width:11px;height:11px}.exs-edit-popup-title{font-size:13px;font-weight:700;color:var(--ct-text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.exs-edit-popup-fields{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:end}.exs-edit-field{display:flex;flex-direction:column;gap:3px;min-width:0}.exs-edit-field span{font-size:10px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.4px}.exs-edit-field input{width:100%;min-width:0;box-sizing:border-box;height:30px;padding:0 8px;font-size:13px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-xs);background:var(--ct-bg);color:var(--ct-text-body);font-family:var(--ct-font-body);text-align:center}.exs-edit-field input:focus{outline:none;border-color:var(--ct-accent-bright)}.exs-edit-save{width:100%;padding:8px;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);font-weight:700;font-size:12px;border:none;border-radius:var(--ct-radius-sm);cursor:pointer;font-family:var(--ct-font-body)}.exs-edit-save:hover{opacity:.9}.exs-selected-empty{padding:22px 14px;text-align:center;color:var(--ct-text-muted);font-size:13px;line-height:1.55;display:flex;flex-direction:column;align-items:center;gap:10px}.exs-selected-empty p{margin:0}.exs-empty-icon{font-size:26px;display:block;margin-bottom:0}.exs-list-add-fab{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);box-shadow:var(--ct-shadow-material);border:none;cursor:pointer}.exs-list-add-fab svg{width:22px;height:22px}.exs-list-add-fab:active{transform:scale(.93)}.exs-selected-add-row{list-style:none;padding:10px 8px 12px;display:flex;justify-content:center}.exs-list-add-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:none;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);font-size:13px;font-weight:600;cursor:pointer}.exs-list-add-btn svg{width:16px;height:16px}.exs-selected-foot{padding:12px;border-top:1px solid var(--ct-border);display:flex;flex-direction:column;gap:6px}.exs-selected-total{font-size:11px;font-weight:600;color:var(--ct-text-muted);text-align:center}.exs-start-btn{width:100%;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);font-weight:700;font-size:13.5px;padding:11px;border-radius:var(--ct-radius-sm);border:none;cursor:pointer;transition:opacity .15s;font-family:var(--ct-font-body)}.exs-start-btn:disabled{opacity:.4;cursor:not-allowed}.exs-start-btn:not(:disabled):hover{opacity:.9}.exs-main{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.exs-page-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:20px;flex-shrink:0}.exs-page-head h1{font-family:var(--ct-font-display);font-size:32px;font-weight:800;letter-spacing:-.5px;margin:0}.exs-venue-tabs{display:flex;gap:8px;flex-shrink:0}.exs-venue-tab{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border-radius:999px;border:1px solid var(--ct-border);background:var(--ct-bg);color:var(--ct-text-body);font-size:13px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.exs-venue-tab:hover{border-color:var(--ct-accent-bright)}.exs-venue-tab.on{background:var(--ct-accent-bright);border-color:var(--ct-accent-bright);color:var(--ct-on-accent-bright)}.exs-search-box{position:relative}.exs-search-box input{width:250px;height:40px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);padding:0 12px 0 36px;font-size:13.5px;transition:border-color .15s,box-shadow .15s;color:var(--ct-text-body);font-family:var(--ct-font-body)}.exs-search-box input:focus{outline:none;border-color:var(--ct-accent-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 18%,transparent)}.exs-search-box svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:16px;height:16px;stroke:var(--ct-outline)}.exs-contribute-btn{display:flex;align-items:center;gap:8px;margin-left:auto;background:var(--ct-surface);border:1px solid var(--ct-accent-bright);color:var(--ct-accent-dark);font-weight:700;font-size:13px;letter-spacing:.01em;text-transform:none;padding:11px 16px;border-radius:var(--ct-radius-sm);cursor:pointer;transition:background .15s;font-family:var(--ct-font-body)}.exs-contribute-btn:hover{background:var(--ct-accent-soft)}.exs-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(196px,280px);gap:22px;align-items:stretch;flex:1;min-height:0;overflow:hidden}.exs-filters{background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);padding:16px 16px 8px;box-shadow:var(--ct-shadow-sm);overflow-y:auto;min-height:0;align-self:stretch}.exs-filters h3{font-family:var(--ct-font-display);font-size:13.5px;font-weight:700;margin:0 0 12px}.exs-filter-group{margin-bottom:18px;display:grid;grid-template-columns:1fr;column-gap:8px}@media(min-width:1180px){.exs-content{grid-template-columns:minmax(0,1fr) 320px}.exs-filter-group{grid-template-columns:1fr 1fr}.exs-filter-group h3{grid-column:1 / -1}}.exs-toggle-row{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:13px;color:var(--ct-text-muted);cursor:pointer;user-select:none}.exs-toggle-row input{position:absolute;opacity:0;pointer-events:none}.exs-switch{width:32px;height:18px;border-radius:99px;background:var(--ct-outline-variant);position:relative;transition:background .18s;flex-shrink:0}.exs-switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--ct-on-inverse);transition:left .18s;box-shadow:0 1px 2px #0003}.exs-toggle-row input:checked+.exs-switch{background:var(--ct-accent-bright)}.exs-toggle-row input:checked+.exs-switch:after{left:16px}.exs-toggle-row input:checked~span:last-child{color:var(--ct-text-body);font-weight:600}.exs-toggle-row input:focus-visible+.exs-switch{outline:2px solid var(--ct-accent-bright);outline-offset:2px}.exs-grid{display:flex;flex-direction:column;gap:12px;min-height:0;overflow:hidden}.exs-grid-toolbar{flex-shrink:0}.exs-search-box-grid{width:100%}.exs-search-box-grid input{width:100%;max-width:100%}.exs-grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-auto-rows:max-content;gap:16px;overflow-y:auto;min-height:0;flex:1;align-content:start;align-items:start;padding-right:4px;padding-bottom:8px}.exs-show-more{grid-column:1 / -1;padding:12px 24px;border:1px dashed var(--ct-border, rgba(255,255,255,.12));border-radius:8px;background:transparent;color:var(--ct-text-secondary, rgba(255,255,255,.6));font-size:14px;cursor:pointer;transition:background .15s,color .15s}.exs-show-more:hover{background:#ffffff0a;color:var(--ct-text, #fff)}.exs-card{background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);overflow:hidden;box-shadow:var(--ct-shadow-sm);position:relative;text-align:left;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;flex-direction:column;font-family:var(--ct-font-body);color:var(--ct-text-body);padding:0;width:100%;min-height:max-content;align-self:start}.exs-card:hover{transform:translateY(-2px);box-shadow:var(--ct-shadow-lift)}.exs-card.on{border-color:var(--ct-success);box-shadow:0 0 0 2px var(--ct-success),var(--ct-shadow-sm)}.exs-card-thumb{height:128px;flex:0 0 128px;background:var(--ct-surface-soft);display:grid;place-items:center;position:relative;overflow:hidden}.exs-card-img{width:100%;height:100%;object-fit:cover;display:block}.exs-card-thumb svg.exs-fig{width:86px;height:86px;stroke:var(--ct-text-muted);fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.exs-chip{position:absolute;top:9px;left:9px;background:var(--ct-accent-dark);color:var(--ct-on-inverse);font-size:10.5px;font-weight:600;padding:3px 10px;border-radius:99px;letter-spacing:.2px}.exs-tick{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:var(--ct-success);color:var(--ct-on-inverse);display:grid;place-items:center;opacity:0;transform:scale(.6);transition:opacity .15s,transform .15s}.exs-tick svg{width:13px;height:13px}.exs-card.on .exs-tick{opacity:1;transform:scale(1)}.exs-card-body{padding:12px 13px 13px}.exs-card-body b{display:block;font-size:14px;font-weight:700;margin-bottom:4px}.exs-card-body span{font-size:12px;color:var(--ct-text-muted)}.exs-no-results{grid-column:1 / -1;text-align:center;padding:44px 0;color:var(--ct-text-muted);font-size:14px}.exs-sheet-backdrop,.exs-sheet,.exs-mobile-selected,.exs-popup-backdrop,.exs-filter-popup{display:none}.exs-close-x{width:30px;height:30px;border-radius:50%;background:var(--ct-surface-soft);color:var(--ct-text-muted);display:grid;place-items:center;border:none;cursor:pointer;flex-shrink:0;transition:background .12s}.exs-close-x:hover{background:var(--ct-outline)}.exs-close-x svg{width:14px;height:14px}.exs-contribute-backdrop{position:fixed;inset:0;background:var(--ct-modal-backdrop);z-index:100;display:grid;place-items:center}.exs-contribute-modal{background:var(--ct-surface);border-radius:var(--ct-radius);box-shadow:var(--ct-shadow-material);width:min(380px,calc(100vw - 40px));max-width:100%;max-height:min(90vh,560px);display:flex;flex-direction:column;overflow:hidden}.exs-contribute-head{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 8px;flex-shrink:0}.exs-contribute-head h3{font-family:var(--ct-font-display);font-size:16px;font-weight:700;margin:0}.exs-contribute-body{padding:8px 16px 4px;overflow-y:auto;min-height:0}.exs-contribute-input{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-bg);color:var(--ct-text-body);margin-bottom:12px;font-family:var(--ct-font-body);box-sizing:border-box}.exs-contribute-input:focus{outline:none;border-color:var(--ct-accent-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent-bright) 18%,transparent)}.exs-contribute-fields{display:flex;gap:8px;flex-wrap:wrap}.exs-contribute-field{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:4px}.exs-contribute-field label{font-size:11px;font-weight:600;color:var(--ct-text-muted);text-transform:uppercase}.exs-contribute-field input{width:100%;min-width:0;padding:8px 10px;font-size:13px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-xs);background:var(--ct-bg);color:var(--ct-text-body);font-family:var(--ct-font-body);box-sizing:border-box}.exs-contribute-field input:focus{outline:none;border-color:var(--ct-accent-bright)}.exs-contribute-field .ct-number-stepper{width:100%;max-width:100%;min-width:0}.exs-contribute-error{margin:10px 0 0;font-size:12px;color:var(--ct-danger, #c0392b)}.exs-contribute-foot{padding:12px 16px 16px;flex-shrink:0}@media(max-width:860px){.ct-ex-select{overflow:auto;height:auto;min-height:100%}.ct-ex-select--modal,.ct-ex-select-modal .ct-ex-select{height:100%;max-height:100%;min-height:0;overflow:hidden}.ct-ex-select--modal>.ct-builder-header{padding-top:max(8px,env(safe-area-inset-top,0px));padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}.ct-ex-select--modal .exs-wrap{display:flex;flex-direction:column;flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;padding:14px 14px 16px}.ct-ex-select--modal.ct-ex-select--direct .exs-wrap{display:none}.exs-wrap{display:block;padding:18px 16px calc(24px + env(safe-area-inset-bottom,0px));overflow:visible;flex:none;min-height:auto}.exs-main{overflow:visible}.exs-selected-panel,.exs-contribute-btn,.exs-content .exs-filters{display:none}.exs-content{display:block;overflow:visible;flex:none;min-height:auto}.exs-page-head{margin-bottom:14px}.exs-page-head h1{font-size:22px;line-height:1.2;width:100%}.exs-venue-tabs-desktop{display:none}.exs-venue-tabs-sheet{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:auto;margin:0 16px 10px;flex-shrink:0}.exs-venue-tabs-sheet .exs-venue-tab{min-height:40px;justify-content:center}.exs-mobile-selected{display:block}.exs-m-card{background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);box-shadow:var(--ct-shadow-sm);overflow:hidden}.exs-m-card .exs-selected-head{padding:14px 14px 10px}.exs-m-card .exs-selected-list{max-height:none;padding:4px 6px 6px}.exs-m-card .exs-selected-foot{padding:10px}.exs-grid{display:none}.exs-sheet-backdrop{display:block;position:fixed;inset:0;background:var(--ct-modal-backdrop);opacity:0;pointer-events:none;transition:opacity .22s;z-index:95}.exs-sheet-backdrop.open{opacity:1;pointer-events:auto}.exs-sheet{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;top:max(6dvh,env(safe-area-inset-top,0px));background:var(--ct-bg);border-radius:var(--ct-radius-xl) var(--ct-radius-xl) 0 0;z-index:100;transform:translateY(104%);transition:transform .3s cubic-bezier(.32,.72,.24,1);box-shadow:var(--ct-shadow-material);padding-bottom:env(safe-area-inset-bottom,0px)}.exs-sheet.open{transform:translateY(0)}.exs-sheet-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:14px 16px 10px}.exs-sheet-bar-side{display:flex;align-items:center;min-width:0}.exs-sheet-bar-side--start{justify-content:flex-start}.exs-sheet-bar-side--end{justify-content:flex-end}.exs-sheet-bar h2{font-family:var(--ct-font-display);font-size:16px;font-weight:700;margin:0;text-align:center;justify-self:center}.exs-add-done{font-size:15px;font-weight:700;color:var(--ct-accent-dark);padding:4px 2px;background:none;border:none;cursor:pointer;font-family:var(--ct-font-body)}.exs-sheet-search{padding:0 16px 12px;display:flex;gap:10px;align-items:center}.exs-sheet-search .exs-search-box{margin:0;flex:1}.exs-sheet-search input{width:100%;background:var(--ct-surface-soft);border-color:transparent;font-size:16px;min-height:44px}.exs-filter-btn{position:relative;width:44px;height:44px;flex-shrink:0;border-radius:var(--ct-radius-sm);background:var(--ct-surface-soft);color:var(--ct-text-body);display:grid;place-items:center;border:none;cursor:pointer;transition:background .15s,color .15s}.exs-filter-btn svg{width:20px;height:20px}.exs-filter-btn.active{background:var(--ct-accent-dark);color:var(--ct-on-inverse)}.exs-filter-dot{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--ct-accent-bright);border:2px solid var(--ct-bg)}.exs-filter-btn.active .exs-filter-dot{background:var(--ct-on-inverse);border-color:var(--ct-accent-dark)}.exs-popup-backdrop{display:block;position:fixed;inset:0;background:var(--ct-modal-backdrop);opacity:0;pointer-events:none;transition:opacity .2s;z-index:110}.exs-popup-backdrop.open{opacity:1;pointer-events:auto}.exs-filter-popup{display:flex;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(.94);width:min(340px,calc(100vw - 40px));max-height:78dvh;background:var(--ct-surface);border-radius:var(--ct-radius);box-shadow:var(--ct-shadow-material);z-index:120;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}.exs-filter-popup.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.exs-popup-head{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 8px}.exs-popup-head h3{font-family:var(--ct-font-display);font-size:16px;font-weight:700;margin:0}.exs-popup-head-actions{display:flex;align-items:center;gap:10px}.exs-popup-clear{font-size:13px;font-weight:600;color:var(--ct-accent-dark);padding:4px 2px;background:none;border:none;cursor:pointer;font-family:var(--ct-font-body)}.exs-popup-body{padding:6px 16px 4px;overflow-y:auto}.exs-popup-body .exs-filter-group{margin-bottom:14px;grid-template-columns:1fr 1fr}.exs-popup-body .exs-filter-group h3{font-family:var(--ct-font-display);font-size:13px;font-weight:700;margin:0 0 6px;grid-column:1 / -1}.exs-popup-foot{padding:12px 16px 16px}.exs-popup-apply{width:100%;background:var(--ct-accent-bright);color:var(--ct-on-accent-bright);font-weight:700;font-size:14px;padding:12px;border-radius:var(--ct-radius-sm);border:none;cursor:pointer;font-family:var(--ct-font-body)}.exs-sheet-list-wrap{flex:1;position:relative;overflow:hidden;background:var(--ct-surface);border-top:1px solid var(--ct-border)}.exs-sheet-list{list-style:none;overflow-y:auto;height:100%;padding:0 0 24px;margin:0;-webkit-overflow-scrolling:touch}.exs-row{display:flex;align-items:center;gap:12px;padding:10px 44px 10px 14px;border-bottom:1px solid var(--ct-border);background:var(--ct-surface);width:100%;text-align:left;border-top:none;border-left:none;border-right:none;cursor:pointer;font-family:var(--ct-font-body);color:var(--ct-text-body)}.exs-row-fig-box{width:46px;height:46px;border-radius:10px;background:var(--ct-surface-soft);display:grid;place-items:center;flex-shrink:0;overflow:hidden}.exs-row-fig-box svg{width:34px;height:34px;stroke:var(--ct-text-muted);fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.exs-row-fig-box .exs-card-img{width:100%;height:100%;object-fit:cover}.exs-row-meta{flex:1;min-width:0}.exs-row-meta b{display:block;font-size:14.5px;font-weight:600}.exs-row-meta span{font-size:12.5px;color:var(--ct-text-muted)}.exs-row-state{width:24px;height:24px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;color:var(--ct-outline)}.exs-row.on{background:var(--ct-accent-soft)}.exs-row.on .exs-row-state{color:var(--ct-accent-dark)}.exs-row-state svg{width:18px;height:18px}.exs-alpha-rail{position:absolute;right:2px;top:8px;bottom:8px;display:flex;flex-direction:column;justify-content:center;gap:1px;z-index:5}.exs-alpha-rail button{font-size:10px;font-weight:700;color:var(--ct-accent-dark);padding:0 8px;line-height:1.25;background:none;border:none;cursor:pointer;font-family:var(--ct-font-body)}.exs-sheet-empty{padding:36px 16px;text-align:center;color:var(--ct-text-muted);font-size:14px;list-style:none}}@media(prefers-reduced-motion:reduce){.ct-ex-select *{transition:none!important;animation:none!important}}.ct-pin-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0000008c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);outline:none}.ct-pin-sheet{position:relative;display:flex;flex-direction:column;align-items:center;width:min(340px,92vw);padding:40px 24px 32px;border-radius:20px;background:var(--ct-surface);box-shadow:0 16px 48px #00000038}.ct-pin-cancel{position:absolute;top:14px;left:18px;background:none;border:none;color:var(--ct-accent);font-size:15px;font-weight:500;cursor:pointer;padding:4px 8px}.ct-pin-title{margin:0 0 4px;font-size:20px;font-weight:600;color:var(--ct-text);text-align:center}.ct-pin-subtitle{margin:0 0 24px;font-size:14px;color:var(--ct-text-muted);text-align:center}.ct-pin-dots{display:flex;gap:16px;margin-bottom:8px;height:32px;align-items:center}.ct-pin-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--ct-text-muted);background:transparent;transition:background .12s,border-color .12s}.ct-pin-dot--filled{background:var(--ct-text);border-color:var(--ct-text)}.ct-pin-error{margin:4px 0 0;font-size:13px;color:var(--ct-danger);text-align:center;min-height:20px}.ct-pin-keypad{display:grid;grid-template-columns:repeat(3,72px);gap:12px;margin-top:20px}.ct-pin-key{width:72px;height:72px;border-radius:50%;border:1px solid var(--ct-border);background:var(--ct-surface);font-size:28px;font-weight:400;color:var(--ct-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s,transform .1s;user-select:none;-webkit-tap-highlight-color:transparent}.ct-pin-key:active:not(:disabled){background:var(--ct-surface-soft);transform:scale(.95)}.ct-pin-key:disabled{opacity:.3;cursor:default}.ct-pin-key--del{border:none;background:transparent}.ct-pin-key--del:active:not(:disabled){background:transparent;opacity:.5}.ct-pin-spacer{width:72px;height:72px}.ct-pin-loading{position:absolute;bottom:20px;width:24px;height:24px;border:2px solid var(--ct-border);border-top-color:var(--ct-accent);border-radius:50%;animation:ct-pin-spin .7s linear infinite}@keyframes ct-pin-spin{to{transform:rotate(360deg)}}@keyframes ct-pin-shake-anim{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}.ct-pin-shake{animation:ct-pin-shake-anim .4s ease-in-out}@media(prefers-reduced-motion:reduce){.ct-pin-shake,.ct-pin-loading{animation:none!important}}.ct-session-pill-add{border-style:dashed;color:var(--ct-text-muted)}.ct-builder-inline-form{display:flex;gap:8px;align-items:center;margin:8px 0}.ct-builder-inline-form input{flex:1;height:32px;border:1px solid var(--ct-border);border-radius:6px;padding:0 10px;font-size:13px;background:var(--ct-surface);color:var(--ct-text)}.ct-builder-session-meta{display:flex;gap:6px;flex-wrap:wrap}.ct-builder-session-meta-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px}.ct-builder-session-meta-fields label{display:flex;flex-direction:column;font-size:11px;color:var(--ct-text-muted);gap:2px;min-width:0}.ct-builder-session-meta-fields input{height:32px;width:100%;border:1px solid var(--ct-border);border-radius:6px;padding:0 8px;font-size:13px;background:var(--ct-surface);color:var(--ct-text)}.ct-btn-danger-sm{font-size:12px;color:var(--ct-danger);background:transparent;border:1px solid var(--ct-danger);border-radius:6px;padding:4px 10px;cursor:pointer;flex-shrink:0;white-space:nowrap}.ct-builder-sections{display:flex;flex-direction:column;gap:12px;margin-top:0;width:100%;max-width:100%;min-width:0}.ct-builder-add-section{margin-top:4px}@media(max-width:960px){.ct-builder-plan-split{grid-template-columns:1fr;gap:10px}.ct-builder-plan-side{position:static;gap:8px;width:100%;max-width:100%}.ct-builder-side-label{display:none}.ct-builder-session-pills{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:6px;padding:0 2px 2px;margin:0;width:100%;max-width:100%;min-width:0;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain}.ct-builder-session-pills::-webkit-scrollbar{display:none}.ct-builder-plan-side .ct-session-pill{width:auto;flex-shrink:0;border-radius:999px;min-height:34px;font-size:12.5px}.ct-builder-plan-side .ct-session-pill-remove{border-radius:0 999px 999px 0}.ct-builder-plan-side .ct-session-pill-with-remove .ct-session-pill-main{padding:5px 6px 5px 10px;gap:5px}.ct-builder-plan-side .ct-session-pill-label{font-size:12.5px}.ct-builder-plan-side .ct-session-pill-count{font-size:10px;padding:1px 5px}.ct-builder-plan-side .ct-session-pill-edit,.ct-builder-plan-side .ct-session-pill-remove{width:36px;height:auto;min-height:0;align-self:stretch}.ct-builder-plan-side .ct-session-pill-add{min-height:34px;padding:0 12px}.ct-builder-plan-side .ct-session-pill-add span{display:none}.ct-builder-settings-fold{border-radius:10px}.ct-builder-settings-summary{padding:8px 10px}.ct-builder-settings-summary-title{font-size:10px}.ct-builder-settings-summary-meta{font-size:12px}.ct-builder-side-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px 10px}.ct-builder-side-field:nth-child(n+3){grid-column:1 / -1}.ct-builder-side-field>span,.ct-builder-side-field-pair>span{font-size:10px}.ct-builder-side-field input,.ct-builder-side-pair input{height:34px;font-size:14px;border-radius:7px;padding:0 8px}.ct-builder-side-field input:focus,.ct-builder-side-pair input:focus{font-size:16px}.ct-builder-main-head{display:none}.ct-builder-sections{gap:8px}.ct-builder-section{border-radius:8px}.ct-builder-section-head{padding:10px 12px;min-height:42px;gap:6px}.ct-builder-section-grip{width:22px;height:30px}.ct-builder-section-chevron{width:28px;height:28px;font-size:20px}.ct-builder-section-name{max-width:46%;font-size:15px;padding:2px 5px}.ct-builder-section-count{font-size:12px;padding:2px 8px}.ct-builder-section-delete{width:34px;height:34px;min-width:34px;min-height:34px}.ct-builder-section-delete svg{width:17px;height:17px}.ct-builder-empty-sm{padding:12px 10px;gap:8px;font-size:12px}.ct-builder-section-add-fab{width:40px;height:40px}.ct-builder-section-add-fab svg{width:18px;height:18px}.ct-builder-section-add-btn{padding:6px 12px;font-size:12px}.ct-builder-add-section-btn{min-height:38px;padding:8px 12px;font-size:12.5px}.ct-builder-danger-zone{margin-top:12px;padding-bottom:8px}}@media(max-width:767px){.ct-program-builder{min-height:0}.ct-builder-plan-body{padding:8px 10px 16px}.ct-builder-plan-split{gap:8px}.ct-builder-plan-bar{padding:6px 10px;gap:6px}.ct-builder-header{padding:6px 10px;min-height:44px}.ct-builder-header-name{font-size:14px}}.ct-builder-section{border:1px solid var(--ct-border);border-radius:10px;overflow:hidden;transition:box-shadow .12s,border-color .12s,opacity .12s,background .12s}.ct-builder-section-active{border-color:var(--ct-border);box-shadow:inset 3px 0 0 0 var(--ct-accent-bright)}.ct-builder-section-active>.ct-builder-section-head{background:color-mix(in srgb,var(--ct-accent-bright) 10%,var(--ct-surface-soft))}.ct-builder-section-active>.ct-builder-section-head:hover{background:color-mix(in srgb,var(--ct-accent-bright) 16%,var(--ct-surface-soft))}.ct-builder-section-dragging{opacity:.45}.ct-builder-section-dragover{box-shadow:inset 3px 0 0 0 var(--ct-accent-bright);border-color:var(--ct-accent-bright)}.ct-builder-section-head{display:flex;align-items:center;gap:8px;width:100%;padding:12px 14px;min-height:46px;background:var(--ct-surface-soft);border:none;cursor:pointer;text-align:left;color:inherit;font:inherit;box-sizing:border-box}.ct-builder-section-head:hover{background:var(--ct-surface)}.ct-builder-section-grip{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:32px;margin-left:-4px;padding:0;border:none;background:transparent;color:var(--ct-text-muted);cursor:grab;border-radius:4px;touch-action:none;-webkit-user-select:none;user-select:none}.ct-builder-section-grip:hover{color:var(--ct-text);background:var(--ct-surface)}.ct-builder-section-grip:active{cursor:grabbing}body.ct-reorder-active{cursor:grabbing!important;user-select:none;-webkit-user-select:none;touch-action:none}body.ct-reorder-active *{cursor:grabbing!important}.ct-builder-section-delete{display:grid;place-items:center;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border:none;background:transparent;border-radius:6px;color:var(--ct-danger);cursor:pointer}.ct-builder-section-delete svg{width:18px!important;height:18px!important}.ct-builder-section-delete:hover{background:var(--ct-danger-soft)}.ct-builder-section-chevron{flex-shrink:0;width:32px;height:32px;font-size:22px;line-height:1;color:var(--ct-text-muted);transition:transform .15s ease;display:inline-flex;align-items:center;justify-content:center}.ct-builder-section-chevron-open{transform:rotate(90deg)}.ct-builder-section-name{flex:0 0 auto;max-width:50%;border:none;background:transparent;font-size:16px;font-weight:600;color:var(--ct-text);padding:2px 6px;border-radius:4px;cursor:text;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.ct-builder-section-name:hover{background:var(--ct-surface)}.ct-builder-section-name-editing{width:auto;min-width:4ch;max-width:min(50%,280px);cursor:text;outline:1px solid var(--ct-accent);background:var(--ct-surface);overflow:visible;text-overflow:clip}.ct-builder-section-name-editing:focus{outline:1px solid var(--ct-accent);background:var(--ct-surface)}.ct-builder-section-name::placeholder{color:var(--ct-text-muted);opacity:.7}.ct-builder-section-head-spacer{flex:1;min-width:8px}.ct-builder-section-count{flex-shrink:0;font-size:12.5px;font-weight:600;color:var(--ct-text-muted);background:var(--ct-surface);border-radius:10px;padding:3px 9px;white-space:nowrap;line-height:1.3}.ct-builder-section-body{border-top:1px solid var(--ct-border);background:var(--ct-bg)}.ct-builder-section-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.ct-builder-section-actions button:not(.ct-builder-section-delete){width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;font-size:14px;color:var(--ct-text-muted);cursor:pointer;border-radius:4px}.ct-builder-section-actions button:not(.ct-builder-section-delete):hover{background:var(--ct-surface);color:var(--ct-text)}.ct-btn-danger-icon{color:var(--ct-danger)!important}.ct-builder-section-instr{font-size:12px;color:var(--ct-text-muted);padding:4px 12px;margin:0}.ct-builder-add-section-btn{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ct-accent);background:transparent;border:1px dashed var(--ct-border);border-radius:8px;padding:8px 14px;cursor:pointer;width:100%;justify-content:center}.ct-builder-schedule-section{margin-top:20px;border-top:1px solid var(--ct-border);padding-top:16px}.ct-builder-schedule-title{font-size:14px;font-weight:600;margin:0 0 4px}.ct-builder-schedule-desc{font-size:12px;color:var(--ct-text-muted);margin:0 0 12px}.ct-builder-placement-grid{display:flex;flex-direction:column;gap:4px;max-height:280px;overflow-y:auto}.ct-builder-placement-week{display:flex;align-items:center;gap:4px}.ct-builder-placement-week-label{width:28px;font-size:11px;color:var(--ct-text-muted);text-align:right;flex-shrink:0}.ct-builder-placement-day{width:28px;height:28px;border-radius:6px;border:1px solid var(--ct-border);background:var(--ct-surface);font-size:11px;color:var(--ct-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.ct-builder-placement-day:hover{border-color:var(--ct-accent)}.ct-placement-active{background:var(--ct-accent);color:#fff;border-color:var(--ct-accent)}.ct-pricing-page{width:100%;max-width:1120px;margin:0 auto;display:flex;flex-direction:column;gap:40px;padding-bottom:32px}.ct-pricing-auth{min-height:100vh;display:grid;place-items:start center;padding:48px 24px 64px;background:radial-gradient(ellipse 80% 50% at 50% -10%,color-mix(in srgb,var(--ct-neon) 18%,transparent),transparent 55%),var(--ct-bg)}.ct-pricing-hero{text-align:center;max-width:720px;margin:0 auto}.ct-pricing-audience{display:inline-flex;align-items:center;justify-content:center;margin:0 0 20px;padding:8px 20px;border-radius:999px;background:color-mix(in srgb,#93c5fd 28%,var(--ct-surface-soft));color:var(--ct-text);font-size:13px;font-weight:600;letter-spacing:.04em}.ct-pricing-hero-title{margin:0 0 14px;font-size:clamp(28px,4vw,42px);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--ct-text)}.ct-pricing-hero-sub{margin:0 auto 12px;max-width:560px;font-size:16px;line-height:1.55;color:var(--ct-text-muted)}.ct-pricing-hero-note{margin:0 auto;max-width:520px;font-size:13px;line-height:1.45;color:var(--ct-text-muted);opacity:.9}.ct-pricing-note{margin:0;text-align:center;font-size:13px;color:var(--ct-text-muted)}.ct-pricing-note.is-error{color:var(--ct-danger)}.ct-pricing-grid{display:grid;gap:24px;align-items:stretch}.ct-pricing-grid.is-solo{grid-template-columns:repeat(2,minmax(0,1fr));max-width:880px;margin:0 auto;width:100%}.ct-pricing-grid.is-gym{grid-template-columns:repeat(3,minmax(0,1fr))}.ct-pricing-card{position:relative;display:flex;flex-direction:column;gap:0;padding:28px 24px;border-radius:16px;border:1px solid var(--ct-border);background:var(--ct-surface);box-shadow:0 16px 40px -12px #00000014;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.ct-pricing-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px -14px #0000001f}.ct-pricing-card.is-featured{background:linear-gradient(145deg,#0d1117,#181c22);border-color:#181c22;color:#fff}.ct-pricing-card.is-featured:before{content:"";position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:color-mix(in srgb,#10b981 35%,transparent);filter:blur(36px);pointer-events:none}.ct-pricing-card.is-selected:not(.is-featured){border-color:color-mix(in srgb,#10b981 55%,var(--ct-border));box-shadow:0 0 0 2px color-mix(in srgb,#10b981 35%,transparent)}.ct-pricing-card.is-selected.is-featured{box-shadow:0 0 0 2px #10b981,0 20px 44px -14px #00000047}.ct-pricing-card-ribbon{position:absolute;top:18px;right:-34px;width:140px;padding:6px 0;background:#10b981;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:center;transform:rotate(45deg);z-index:2}.ct-pricing-card-head{position:relative;z-index:1;margin-bottom:20px}.ct-pricing-card-tags{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.ct-pricing-card-tag{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:500;background:color-mix(in srgb,#93c5fd 22%,var(--ct-surface-soft));color:var(--ct-text-muted)}.ct-pricing-card.is-featured .ct-pricing-card-tag{background:#10b981;color:#fff}.ct-pricing-card.is-featured.has-ribbon .ct-pricing-card-tag{background:color-mix(in srgb,#fff 16%,transparent);color:#e5e7eb}.ct-pricing-card-bolt{color:#10b981;display:inline-flex}.ct-pricing-card-title{margin:0 0 8px;font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--ct-text)}.ct-pricing-card.is-featured .ct-pricing-card-title{color:#fff}.ct-pricing-card-desc{margin:0;font-size:13px;line-height:1.45;color:var(--ct-text-muted)}.ct-pricing-card.is-featured .ct-pricing-card-desc{color:#9ca3af}.ct-pricing-card-price{position:relative;z-index:1;display:flex;align-items:baseline;gap:6px;margin-bottom:24px}.ct-pricing-card-amount{font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--ct-text);white-space:nowrap}.ct-pricing-card.is-featured .ct-pricing-card-amount{color:#fff}.ct-pricing-card-period{font-size:13px;font-weight:600;color:var(--ct-text-muted);white-space:nowrap;flex-shrink:0}.ct-pricing-card.is-featured .ct-pricing-card-period{color:#9ca3af}.ct-pricing-card-features{position:relative;z-index:1;list-style:none;margin:0 0 28px;padding:0;display:grid;gap:14px;flex:1}.ct-pricing-card-features li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.4;color:var(--ct-text)}.ct-pricing-card.is-featured .ct-pricing-card-features li{color:#f3f4f6}.ct-pricing-card-check{flex-shrink:0;width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,#10b981 16%,transparent);color:#059669}.ct-pricing-card.is-featured .ct-pricing-card-check{background:color-mix(in srgb,#6ee7b7 22%,transparent);color:#6ee7b7}.ct-pricing-card-cta{position:relative;z-index:1;width:100%;margin-top:auto;padding:14px 16px;border-radius:10px;border:1.5px solid var(--ct-text);background:transparent;color:var(--ct-text);font-size:13px;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:background .2s ease,opacity .2s ease,border-color .2s ease}.ct-pricing-card-cta:hover:not(:disabled){background:var(--ct-surface-soft)}.ct-pricing-card-cta.is-accent{border:none;background:#10b981;color:#fff}.ct-pricing-card-cta.is-accent:hover:not(:disabled){opacity:.92;background:#10b981}.ct-pricing-card-cta.is-solid{border:none;background:#0d1117;color:#fff}.ct-pricing-card-cta.is-solid:hover:not(:disabled){opacity:.9;background:#0d1117}.ct-pricing-card-cta.is-current,.ct-pricing-card-cta:disabled{opacity:.55;cursor:default}.ct-pricing-card.is-featured .ct-pricing-card-cta:not(.is-accent):not(.is-solid){border-color:#fff;color:#fff}html[data-theme=dark] .ct-pricing-card:not(.is-featured){box-shadow:0 16px 40px -12px #00000073}html[data-theme=dark] .ct-pricing-card.is-featured{background:linear-gradient(145deg,#050608,#14181f);border-color:color-mix(in srgb,#10b981 25%,#14181f)}html[data-theme=dark] .ct-pricing-card-cta.is-solid{background:#f8fafc;color:#0d1117}html[data-theme=dark] .ct-pricing-audience{background:color-mix(in srgb,#60a5fa 22%,var(--ct-surface-soft))}@media(max-width:900px){.ct-pricing-grid.is-gym{grid-template-columns:1fr;max-width:420px;margin:0 auto;width:100%}.ct-pricing-grid.is-solo{grid-template-columns:1fr;max-width:420px}}@media(max-width:640px){.ct-pricing-auth{padding:28px 16px 48px}.ct-pricing-page{gap:28px}.ct-pricing-card{padding:24px 20px}.ct-pricing-card-amount{font-size:24px}}.ct-sub-badge{display:inline-flex;align-items:center;margin-left:10px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}.ct-sub-badge.is-trial{background:color-mix(in srgb,#10b981 18%,transparent);color:#047857}.ct-sub-badge.is-grace{background:color-mix(in srgb,#f59e0b 20%,transparent);color:#b45309}html[data-theme=dark] .ct-sub-badge.is-trial{color:#6ee7b7}html[data-theme=dark] .ct-sub-badge.is-grace{color:#fbbf24}.ct-pending-banner.is-grace{border-color:color-mix(in srgb,#f59e0b 40%,var(--ct-border))}.ct-paywall-shell{min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% -10%,color-mix(in srgb,#10b981 14%,transparent),transparent 55%),var(--ct-bg);padding:24px 16px 48px}.ct-paywall-header{max-width:1120px;margin:0 auto 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.ct-paywall-brand{display:inline-flex;align-items:center}.ct-topbar-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.ct-auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--ct-text-muted);font-size:var(--ct-text-caption);letter-spacing:.08em;text-transform:uppercase}.ct-auth-divider:before,.ct-auth-divider:after{content:"";flex:1;height:1px;background:var(--ct-divider)}.ct-oauth-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:var(--ct-touch-min);padding:12px 16px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);color:var(--ct-text);font-family:var(--ct-font-body);font-size:var(--ct-text-callout);font-weight:600;text-decoration:none;cursor:pointer;transition:border-color var(--ct-duration-fast) var(--ct-ease-spring),box-shadow var(--ct-duration-fast) var(--ct-ease-spring)}.ct-oauth-btn:hover{border-color:var(--ct-outline);box-shadow:var(--ct-shadow-sm)}.ct-oauth-btn svg{flex-shrink:0}.ct-legal-link{color:var(--ct-neon-dark);font-weight:600;text-decoration:underline;text-underline-offset:2px}.ct-legal-link:hover{color:var(--ct-neon-mid)}.ct-legal-footer{margin-top:20px;font-size:var(--ct-text-footnote);color:var(--ct-text-muted);text-align:center}.ct-legal-footer-left{text-align:left}.ct-legal-footer-sep{margin:0 8px;opacity:.5}.ct-legal-doc{font-size:var(--ct-text-callout);line-height:1.65;color:var(--ct-text)}.ct-legal-doc-meta{font-size:var(--ct-text-footnote);color:var(--ct-text-muted);margin-bottom:16px}.ct-legal-doc-intro{margin-bottom:20px}.ct-legal-doc-section{margin-bottom:22px}.ct-legal-doc-section h3{font-family:var(--ct-font-display);font-size:var(--ct-text-headline);font-weight:700;margin:0 0 8px;color:var(--ct-text)}.ct-legal-doc-section p{margin:0 0 10px}.ct-legal-doc-section ul{padding-left:20px;margin:0 0 10px}.ct-legal-doc-section li{margin-bottom:6px}.ct-legal-modal{display:flex;flex-direction:column;padding:0;overflow:hidden;max-height:min(85dvh,720px)}.ct-legal-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--ct-divider)}.ct-legal-modal-head h2{font-family:var(--ct-font-display);font-size:var(--ct-text-headline);font-weight:700;margin:0;color:var(--ct-text)}.ct-legal-modal-body{overflow-y:auto;padding:18px 20px;-webkit-overflow-scrolling:touch}.ct-legal-modal-permalink{font-size:var(--ct-text-footnote);color:var(--ct-text-muted);margin-top:8px}.ct-legal-page{min-height:100vh;background:var(--ct-bg)}.ct-legal-page-inner{max-width:760px;margin:0 auto;padding:48px 24px 72px}.ct-legal-page-brand{display:inline-block;margin-bottom:24px;font-family:var(--ct-font-display);font-size:var(--ct-text-title3);font-weight:700;text-decoration:none;color:var(--ct-text)}.ct-legal-page-title{font-family:var(--ct-font-display);font-size:var(--ct-text-title1);font-weight:700;margin:0 0 16px;color:var(--ct-text)}.ct-legal-page-foot{margin-top:18px;padding-top:18px;border-top:1px solid var(--ct-divider);font-size:var(--ct-text-subhead);color:var(--ct-text-muted)}.ct-settings-block{display:flex;flex-direction:column;gap:12px;padding-block:16px;border-bottom:1px solid var(--ct-divider)}.ct-settings-block:last-of-type{border-bottom:0}.ct-settings-block-title{font-size:var(--ct-text-callout);font-weight:700;color:var(--ct-text)}.ct-settings-block-desc{font-size:var(--ct-text-subhead);line-height:1.5;color:var(--ct-text-muted);margin:4px 0 0}.ct-settings-section-head{margin-bottom:8px}.ct-settings-section-head h3{font-family:var(--ct-font-display);font-size:var(--ct-text-headline);font-weight:700;margin:0 0 4px;color:var(--ct-text)}.ct-settings-action{align-self:flex-start}.ct-settings-saved{font-size:var(--ct-text-subhead);color:var(--ct-success)}.ct-consent-row{display:flex;align-items:flex-start;gap:10px;font-size:var(--ct-text-subhead);line-height:1.5;color:var(--ct-text);cursor:pointer}.ct-consent-row input[type=checkbox]{margin-top:2px;flex-shrink:0;accent-color:var(--ct-neon-dark);min-width:16px;min-height:16px}.ct-consent-row.is-disabled{color:var(--ct-text-muted);cursor:default}.ct-consent-hint{display:block;font-size:var(--ct-text-footnote);color:var(--ct-text-muted);margin-top:2px}.ct-consent-row-spaced{margin-bottom:16px}.ct-parq-group{display:flex;flex-direction:column;gap:10px;margin:0;padding:14px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface-soft)}.ct-parq-group legend{padding:0 4px}.ct-parq-warning{margin:4px 0 0;padding:10px 12px;border-radius:var(--ct-radius-xs);background:var(--ct-danger-soft);color:var(--ct-danger);font-size:var(--ct-text-footnote);line-height:1.5}.ct-role-option{display:block;width:100%;text-align:left;padding:16px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm);background:var(--ct-surface);color:var(--ct-text);font-family:var(--ct-font-body);cursor:pointer;transition:border-color var(--ct-duration-fast) var(--ct-ease-spring)}.ct-role-option:hover{border-color:var(--ct-outline)}.ct-role-option.is-selected{border-color:var(--ct-neon-dark);box-shadow:inset 0 0 0 1px var(--ct-neon-dark);background:var(--ct-accent-soft)}.ct-role-option-title{font-size:var(--ct-text-callout);font-weight:700;margin-bottom:4px}.ct-role-option-desc{font-size:var(--ct-text-subhead);line-height:1.45;color:var(--ct-text-muted)}.ct-role-option-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.ct-auth-note{font-size:var(--ct-text-callout);line-height:1.6;color:var(--ct-text-muted);margin:0 0 16px}.ct-auth-note-sm{font-size:var(--ct-text-subhead);color:var(--ct-text)}.ct-auth-note-tight{margin-bottom:0}.ct-auth-success{font-size:var(--ct-text-callout);line-height:1.6;color:var(--ct-success);margin:0 0 16px}.ct-auth-back-link{display:inline-block;margin-top:16px;font-size:var(--ct-text-callout);font-weight:600;color:var(--ct-neon-dark);text-decoration:none}.ct-auth-back-link:hover{text-decoration:underline}.ct-auth-form-stack{display:flex;flex-direction:column;gap:16px}.ct-auth-cta-link{text-decoration:none;text-align:center}.ct-auth-cta-spaced{margin-top:16px}.ct-availability{display:flex;flex-direction:column;gap:12px}.ct-availability-intro{display:flex;flex-direction:column;gap:2px}.ct-availability-title{font-family:var(--ct-font-display);font-size:var(--ct-text-title, 1.125rem);font-weight:700;margin:0;color:var(--ct-text)}.ct-availability-desc{margin:0;font-size:var(--ct-text-subhead);line-height:1.4;color:var(--ct-text-muted)}.ct-availability-label{display:block;font-size:13px;font-weight:600;color:var(--ct-text)}.ct-availability-hint{display:block;margin:1px 0 0;font-size:12px;line-height:1.35;color:var(--ct-text-muted)}.ct-availability-prefs{display:grid;grid-template-columns:1fr;gap:8px}@media(min-width:720px){.ct-availability-prefs{grid-template-columns:1fr 1fr}}.ct-availability-pref{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm, 8px);background:var(--ct-surface);cursor:pointer}.ct-availability-days{display:grid;grid-template-columns:1fr;gap:8px}@media(min-width:720px){.ct-availability-days{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:8px}}.ct-availability-day{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--ct-border);border-radius:var(--ct-radius-sm, 8px);background:var(--ct-surface);min-width:0}.ct-availability-day.is-off{opacity:.72;background:color-mix(in srgb,var(--ct-surface-soft) 80%,transparent)}.ct-availability-day-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ct-availability-day-name{font-size:13px;font-weight:600;color:var(--ct-text)}.ct-availability-day-short{display:none}.ct-availability-day-full{display:inline}@media(min-width:720px){.ct-availability-day-short{display:inline}.ct-availability-day-full{display:none}}.ct-availability-day-body{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ct-availability-chips{display:flex;flex-wrap:wrap;gap:4px}.ct-availability-chip{display:inline-flex;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:600;color:var(--ct-text);background:color-mix(in srgb,var(--ct-neon, #b5d858) 22%,transparent)}.ct-availability-pick{border:1px solid var(--ct-border);border-radius:8px;background:var(--ct-surface);color:var(--ct-text);font-size:12px;font-weight:600;padding:6px 10px;cursor:pointer}.ct-availability-pick:hover{background:var(--ct-surface-soft)}.ct-availability-off{font-size:12px;color:var(--ct-text-muted)}.ct-availability-popup{width:min(420px,calc(100vw - 32px));max-height:min(90vh,520px);display:flex;flex-direction:column;padding:0;overflow:hidden}.ct-availability-popup-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--ct-divider)}.ct-availability-popup-head h2{margin:0;font-family:var(--ct-font-display);font-size:1.05rem;font-weight:700}.ct-availability-popup-body{padding:14px 16px;overflow:auto}.ct-availability-popup-lead{margin:0 0 12px;font-size:13px;color:var(--ct-text-muted)}.ct-availability-period-list{display:flex;flex-direction:column;gap:8px}.ct-availability-period{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--ct-border);border-radius:10px;cursor:pointer;background:var(--ct-surface)}.ct-availability-period.is-on{border-color:color-mix(in srgb,var(--ct-neon, #b5d858) 55%,var(--ct-border));background:color-mix(in srgb,var(--ct-neon, #b5d858) 12%,var(--ct-surface))}.ct-availability-period input{margin-top:2px}.ct-availability-period-label{display:block;font-size:14px;font-weight:600;color:var(--ct-text)}.ct-availability-period-hint{display:block;margin-top:2px;font-size:12px;color:var(--ct-text-muted)}.ct-availability-popup-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--ct-divider)}.ct-reminders-page{gap:12px}.ct-reminders-top{display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch}@media(min-width:800px){.ct-reminders-top{grid-template-columns:minmax(0,1.45fr) minmax(220px,.75fr)}}.ct-reminders-card{height:100%;display:flex;flex-direction:column;min-height:0}.ct-reminders-card>.ct-panel-body,.ct-reminders-card>.ct-reminders-contact-main,.ct-reminders-card>.ct-reminders-coach{flex:1}.ct-reminders-heading h2{font-family:var(--ct-font-display);font-size:1.125rem;font-weight:700;margin:0 0 2px;color:var(--ct-text)}.ct-reminders-heading p{margin:0 0 10px;font-size:13px;line-height:1.4;color:var(--ct-text-muted)}.ct-reminders-contact-main{display:flex;flex-direction:column;gap:12px;min-width:0;height:100%;box-sizing:border-box}.ct-reminders-phone-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto}.ct-reminders-phone-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.ct-reminders-phone-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ct-text-muted)}.ct-reminders-phone-value{font-size:15px;font-weight:600;color:var(--ct-text);word-break:break-word}.ct-reminders-phone-status{font-size:12px;color:var(--ct-text-muted)}.ct-reminders-phone-popup{width:min(420px,calc(100vw - 32px));padding:0;overflow:hidden;display:flex;flex-direction:column}.ct-reminders-phone-popup-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--ct-divider)}.ct-reminders-phone-popup-head h2{margin:0;font-family:var(--ct-font-display);font-size:1.05rem;font-weight:700}.ct-reminders-phone-popup-body{padding:14px 16px;display:flex;flex-direction:column;gap:12px}.ct-reminders-phone-popup-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--ct-divider)}.ct-reminders-coach{display:flex;flex-direction:column;gap:8px;height:100%;box-sizing:border-box}.ct-reminders-coach-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;color:var(--ct-nav-accent, #ff9500);background:color-mix(in srgb,var(--ct-nav-accent, #ff9500) 14%,transparent)}.ct-reminders-coach-title{font-size:14px;font-weight:700;color:var(--ct-text)}.ct-reminders-coach-copy,.ct-reminders-coach-hint{margin:0;font-size:12px;line-height:1.4;color:var(--ct-text-muted)}.ct-reminders-coach-action{margin-top:auto;padding-top:8px}.ct-reminders-coach-actions{display:flex;flex-wrap:wrap;gap:8px}.ct-reminders-message-btn{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.ct-reminders-coach .ct-btn-secondary,.ct-reminders-coach .ct-btn-primary{align-self:flex-start}.ct-coach-profile-popup{width:min(420px,calc(100vw - 32px));padding:0;overflow:hidden;display:flex;flex-direction:column}.ct-coach-profile-popup-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--ct-divider)}.ct-coach-profile-popup-head h2{margin:0;font-family:var(--ct-font-display);font-size:1.1rem;font-weight:700}.ct-coach-profile-popup-body{padding:16px;display:flex;flex-direction:column;gap:10px}.ct-coach-profile-photo{width:72px;height:72px;border-radius:16px;object-fit:cover}.ct-coach-profile-photo.is-placeholder{display:inline-flex;align-items:center;justify-content:center;color:var(--ct-nav-accent, #ff9500);background:color-mix(in srgb,var(--ct-nav-accent, #ff9500) 14%,transparent)}.ct-coach-profile-tagline{margin:0;font-size:14px;font-weight:600;color:var(--ct-text)}.ct-coach-profile-intro{margin:0;font-size:13px;line-height:1.45;color:var(--ct-text-muted)}.ct-coach-profile-popup-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--ct-divider)}.ct-reminders-availability{display:flex;flex-direction:column;gap:12px}.ct-reminders-actions{display:flex;justify-content:flex-end;padding-top:4px}.ct-reminders-saved{margin:0;font-size:13px;color:var(--ct-neon-dark)}.ct-switch{position:relative;display:inline-flex;flex-shrink:0;width:40px;height:22px;cursor:pointer}.ct-switch input{position:absolute;opacity:0;width:0;height:0}.ct-switch-track{position:absolute;inset:0;border-radius:999px;background:var(--ct-border);transition:background .15s ease}.ct-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s ease}.ct-switch input:checked+.ct-switch-track{background:var(--ct-neon, #b5d858)}.ct-switch input:checked+.ct-switch-track:after{transform:translate(18px)}.ct-switch input:focus-visible+.ct-switch-track{outline:2px solid var(--ct-neon-dark);outline-offset:2px}.ct-assign-schedule-backdrop{display:flex;align-items:stretch;justify-content:stretch;place-items:unset;padding:0;z-index:80;animation:ct-assign-backdrop-in .22s var(--ct-ease-spring)}.ct-assign-schedule{display:flex;flex-direction:column;flex:1 1 auto;width:100%;height:100%;min-width:0;min-height:0;max-height:100dvh;background:var(--ct-bg);overflow:hidden;animation:ct-assign-shell-in .28s var(--ct-ease-spring)}@keyframes ct-assign-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ct-assign-shell-in{0%{opacity:0;transform:translateY(10px) scale(.992)}to{opacity:1;transform:none}}@media(min-width:900px){.ct-assign-schedule:not(.is-mobile){flex-direction:row;gap:20px;padding:20px}}.ct-assign-schedule-aside{display:flex;flex-direction:column;gap:16px;width:100%;max-width:100%;padding:16px;min-height:0;min-width:0;overflow:hidden;flex:1 1 auto}@media(min-width:900px){.ct-assign-schedule-aside{width:320px;flex:0 0 320px;align-self:stretch;height:auto;max-height:100%;padding:0}}.ct-assign-schedule-card{background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-lg, 12px);padding:16px;box-shadow:0 8px 24px #0000000a}.ct-assign-schedule-aside>.ct-assign-schedule-card:not(.ct-assign-schedule-blocks){flex-shrink:0}.ct-assign-schedule-blocks{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.ct-assign-schedule-eyebrow{margin:0 0 6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ct-text-muted)}.ct-assign-schedule-client{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--ct-border)}.ct-assign-schedule-client h2{margin:0;font-size:18px;font-weight:700}.ct-assign-schedule-status{margin:2px 0 0;font-size:13px;color:var(--ct-success, #006c49)}.ct-assign-schedule-avatar{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;background:var(--ct-accent-soft);border:1px solid var(--ct-border);font-size:12px;font-weight:700;flex-shrink:0}.ct-assign-schedule-program h3{margin:0 0 4px;font-size:15px;font-weight:650}.ct-assign-schedule-program p{margin:0;font-size:13px;color:var(--ct-text-muted)}.ct-assign-schedule-blocks-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:12px;flex-shrink:0}.ct-assign-schedule-blocks-title{display:flex;flex-direction:column;gap:2px;min-width:0}.ct-assign-schedule-blocks-head h3{margin:0;font-size:18px;font-weight:700}.ct-assign-schedule-count{margin:0;font-size:28px;font-weight:750;letter-spacing:-.03em;line-height:1.1;color:var(--ct-text);font-variant-numeric:tabular-nums}.ct-assign-clear-all{border:0;background:transparent;color:var(--ct-text-muted);font-size:12px;font-weight:600;padding:4px 6px;border-radius:var(--ct-radius-sm)}.ct-assign-clear-all:hover:not(:disabled){color:var(--ct-danger, #ba1a1a);background:color-mix(in srgb,var(--ct-danger, #ba1a1a) 10%,transparent)}.ct-assign-clear-all:disabled{opacity:.4;cursor:default}.ct-assign-schedule-hint{margin:0 0 12px;font-size:13px;color:var(--ct-text-muted);line-height:1.4}.ct-assign-schedule-block-list{display:flex;flex-direction:column;gap:10px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1 1 0;padding-right:2px}.ct-assign-schedule-block{position:relative;display:flex;gap:0;flex:0 0 auto;min-height:auto;border:1px solid var(--ct-border);border-radius:var(--ct-radius);background:var(--ct-bg);cursor:grab;overflow:hidden;transition:box-shadow var(--ct-duration-fast) var(--ct-ease-spring),border-color var(--ct-duration-fast) var(--ct-ease-spring),opacity var(--ct-duration-fast) ease,transform var(--ct-duration-fast) var(--ct-ease-spring)}.ct-assign-schedule-block.is-draggable{touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.ct-assign-schedule-block.is-selectable{cursor:pointer;touch-action:manipulation}.ct-assign-drag-ghost{position:fixed;z-index:200;pointer-events:none;transform:translate(-50%,-120%);max-width:220px;padding:8px 12px;border-radius:var(--ct-radius);border:1px solid var(--ct-border);background:var(--ct-surface);box-shadow:0 10px 28px #00000029;font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-assign-schedule-block:hover{box-shadow:0 6px 16px #00000014;border-color:color-mix(in srgb,var(--ct-text) 22%,var(--ct-border))}.ct-assign-schedule-block:active{cursor:grabbing;transform:scale(.98)}.ct-assign-schedule-block.is-dragging{opacity:.5;box-shadow:none;transform:scale(.98);touch-action:none;cursor:grabbing}.ct-assign-schedule.is-dragging-active{cursor:grabbing;user-select:none}.ct-assign-schedule.is-dragging-active .ct-assign-schedule-cell.is-droppable{cursor:copy}.ct-assign-schedule-block-accent{width:4px;flex-shrink:0;background:var(--ct-success, #006c49);transition:width .2s var(--ct-ease-spring)}.ct-assign-schedule-block:hover .ct-assign-schedule-block-accent{width:6px}.ct-assign-schedule-block-accent[data-tone="1"]{background:#3b82f6}.ct-assign-schedule-block-body{flex:1;padding:10px 12px;min-width:0}.ct-assign-schedule-block-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.ct-assign-schedule-block-copy{min-width:0;flex:1}.ct-assign-schedule-block-grip{flex-shrink:0;touch-action:none;cursor:grab;display:grid;place-items:center;width:44px;min-width:44px;min-height:44px;margin:-8px -6px -8px 0;border-radius:var(--ct-radius-sm);color:var(--ct-text-muted);opacity:.7;transition:opacity var(--ct-duration-fast) ease,color var(--ct-duration-fast) ease,background var(--ct-duration-fast) ease}.ct-assign-schedule-block:hover .ct-assign-schedule-block-grip,.ct-assign-schedule-block-grip:active{opacity:1;color:var(--ct-text)}.ct-assign-schedule-block-grip:active{cursor:grabbing;background:color-mix(in srgb,var(--ct-text) 6%,transparent)}.ct-assign-schedule-block-body h4{margin:0 0 2px;font-size:14px;font-weight:650}.ct-assign-schedule-block-body p{margin:0;font-size:12px;color:var(--ct-text-muted)}.ct-assign-schedule-block-tag{display:inline-block;margin-bottom:4px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:color-mix(in srgb,var(--ct-success, #006c49) 14%,transparent);color:var(--ct-success, #006c49)}.ct-assign-schedule-day-toggle{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;flex-shrink:0}.ct-assign-schedule-day-toggle button{flex:1;min-width:0;border:1px solid var(--ct-border);background:var(--ct-surface);border-radius:var(--ct-radius-sm);padding:5px 8px;font-size:11px;font-weight:600;color:var(--ct-text-muted);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background var(--ct-duration-fast) ease,border-color var(--ct-duration-fast) ease,color var(--ct-duration-fast) ease}.ct-assign-schedule-day-toggle button.is-on{border-color:var(--ct-text);color:var(--ct-text);background:var(--ct-accent-soft)}.ct-assign-schedule-day-toggle button:hover:not(.is-on){border-color:color-mix(in srgb,var(--ct-text) 22%,var(--ct-border));color:var(--ct-text)}.ct-assign-schedule-main{position:relative;flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:var(--ct-radius-lg, 12px);overflow:hidden;box-shadow:0 12px 32px #0000000f}.ct-assign-schedule-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--ct-border);background:var(--ct-surface)}.ct-assign-schedule-toolbar h2{margin:0;font-size:22px;font-weight:750}.ct-assign-schedule-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.ct-assign-schedule-cal{flex:1;min-height:0;overflow:auto;padding:0 0 12px;background:var(--ct-surface-soft, var(--ct-bg))}.ct-assign-schedule-grid{min-height:420px}.ct-assign-schedule.is-mobile .ct-assign-schedule-grid{min-height:0}.ct-assign-schedule-cell{position:relative;min-height:96px;align-items:stretch;cursor:default;transition:background var(--ct-duration-fast) ease,border-color var(--ct-duration-fast) ease,box-shadow var(--ct-duration-fast) ease}.ct-assign-schedule-cell:not(.is-past):hover{background:color-mix(in srgb,var(--ct-accent-soft) 55%,var(--ct-surface))}.ct-assign-schedule-cell.is-drag-over{background:var(--ct-bg)!important;box-shadow:inset 0 0 0 2px var(--ct-text);border-style:dashed;outline:none}.ct-assign-schedule-cell.is-selected{outline:none;z-index:1;box-shadow:inset 0 0 0 2px var(--ct-secondary)}.ct-assign-schedule-chip{display:flex;align-items:stretch;gap:2px;margin-top:4px;border-radius:6px;overflow:hidden;border:1px solid color-mix(in srgb,var(--ct-success, #006c49) 35%,var(--ct-border));background:color-mix(in srgb,var(--ct-success, #006c49) 12%,var(--ct-surface));animation:ct-assign-chip-in .22s var(--ct-ease-spring)}@keyframes ct-assign-chip-in{0%{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:none}}.ct-assign-schedule-chip-main{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:4px 6px;border:0;background:transparent;text-align:left;font-size:11px;font-weight:650;color:var(--ct-text);min-width:0}.ct-assign-schedule-chip-time{font-size:10px;font-weight:500;color:var(--ct-text-muted)}.ct-assign-schedule-chip-remove{display:grid;place-items:center;border:0;background:transparent;color:var(--ct-text-muted);padding:0 8px;min-width:28px;opacity:.55;transition:opacity var(--ct-duration-fast) ease,color var(--ct-duration-fast) ease,background var(--ct-duration-fast) ease}.ct-assign-schedule-chip:hover .ct-assign-schedule-chip-remove,.ct-assign-schedule-chip-remove:focus-visible{opacity:1}.ct-assign-schedule-chip-remove:hover,.ct-assign-schedule-chip-remove:focus-visible{color:#fff;background:var(--ct-danger, #ba1a1a)}.ct-calendar-day-hover{z-index:120;box-sizing:border-box;overflow:hidden;background:var(--ct-surface);border:1px solid var(--ct-border);border-radius:8px;box-shadow:0 10px 24px #00000029;padding:8px;pointer-events:none;font-size:12px;line-height:1.3;display:flex;flex-direction:column;gap:6px;animation:ct-calendar-day-hover-in .16s var(--ct-ease-spring)}.ct-calendar-day-hover.is-top-left{transform-origin:bottom right}.ct-calendar-day-hover.is-top-right{transform-origin:bottom left}.ct-calendar-day-hover.is-bottom-left{transform-origin:top right}.ct-calendar-day-hover.is-bottom-right{transform-origin:top left}@keyframes ct-calendar-day-hover-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ct-calendar-day-hover-list{display:flex;flex-direction:column;flex:1 1 auto;gap:0;min-height:0;overflow-y:auto}.ct-calendar-day-hover-note{margin:0;padding:0 2px;font-size:11px;font-weight:600;color:var(--ct-warn, #9a6700)}.ct-calendar-day-hover .ct-calendar-day-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;margin:0;min-height:0;width:100%;box-sizing:border-box;border-radius:999px;cursor:default}.ct-calendar-day-hover .ct-calendar-day-summary-title{min-width:0;flex:1 1 auto;font-size:11px;font-weight:700;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-calendar-day-hover .ct-calendar-day-summary-stat{display:flex;flex-direction:row;align-items:baseline;gap:4px;flex:0 0 auto;min-width:0;margin:0}.ct-calendar-day-hover .ct-calendar-day-summary-stat-count{font-size:13px;line-height:1}.ct-calendar-day-hover .ct-calendar-day-summary-stat-label{font-size:9px;letter-spacing:.04em}.ct-calendar-day-hover .ct-calendar-day-event{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:stretch;gap:0;padding:7px 2px;min-height:0;border:0;border-bottom:1px solid var(--ct-border);border-radius:0;background:transparent;box-shadow:none;pointer-events:none}.ct-calendar-day-hover .ct-calendar-day-event:last-child{border-bottom:0}.ct-calendar-day-hover .ct-calendar-day-event-time-col{display:flex;align-items:flex-start;align-self:stretch;padding:1px 8px 0 0;margin:0;border-right:1px solid var(--ct-border)}.ct-calendar-day-hover .ct-calendar-day-event-time{font-size:10px;font-weight:650;line-height:1.2;white-space:nowrap}.ct-calendar-day-hover .ct-calendar-day-event-body{min-width:0;padding-left:8px;display:flex;flex-direction:column;gap:2px}.ct-calendar-day-hover .ct-calendar-day-event-head{margin:0}.ct-calendar-day-hover .ct-calendar-day-event-mode{font-size:9px;padding:1px 5px}.ct-calendar-day-hover .ct-calendar-day-event-title{font-size:12px;font-weight:650;margin:0;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-calendar-day-hover .ct-calendar-day-event-who{font-size:10px;margin:0;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-calendar-day-hover .ct-calendar-day-empty{font-size:11px;margin:2px 0 0;padding:4px 2px;border:0;background:transparent}.ct-assign-time-panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,94vw);background:var(--ct-surface);border-left:1px solid var(--ct-border);box-shadow:-8px 0 28px #0000001a;display:flex;flex-direction:column;z-index:8;transform:translate(100%);transition:transform .3s ease-in-out;pointer-events:none}.ct-assign-time-panel .ct-time-field{width:100%;max-width:none}.ct-assign-time-panel.is-open{transform:translate(0);pointer-events:auto}.ct-assign-time-panel-head,.ct-assign-time-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--ct-border);background:var(--ct-surface)}.ct-assign-time-panel-foot{border-bottom:0;border-top:1px solid var(--ct-border)}.ct-assign-time-panel-head h3{margin:0;font-size:18px;font-weight:700}.ct-assign-time-panel-head p{margin:2px 0 0;font-size:13px;color:var(--ct-text-muted)}.ct-assign-time-panel-body{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:16px}.ct-assign-time-panel-foot .ct-btn-primary{width:100%}.ct-assign-time-assigned{padding:10px 12px;border-radius:var(--ct-radius);border:1px solid var(--ct-border);background:var(--ct-surface-soft, var(--ct-bg))}.ct-assign-time-assigned h4{margin:0 0 4px;font-size:15px;font-weight:650}.ct-assign-time-assigned p{margin:0;font-size:13px;color:var(--ct-text-muted)}.ct-assign-time-avail-list{margin:0;padding-left:18px;font-size:13px;color:var(--ct-text);display:flex;flex-direction:column;gap:4px}.ct-assign-time-busy{margin:0 0 6px;font-size:13px;color:var(--ct-danger, #ba1a1a);font-weight:600}.ct-assign-time-repeat{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;cursor:pointer}.ct-assign-time-repeat input{margin-top:2px}.ct-assign-schedule-block.is-selected{border-color:var(--ct-text);box-shadow:0 0 0 1px var(--ct-text)}.ct-assign-schedule-cell.is-place-target{outline:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ct-accent-bright) 55%,var(--ct-border))}.ct-assign-schedule-cell.is-selected.is-place-target{box-shadow:inset 0 0 0 2px var(--ct-secondary)}.ct-calendar-day-sheet-backdrop{position:fixed;inset:0;z-index:130;background:color-mix(in srgb,var(--ct-bg) 45%,transparent);display:flex;align-items:flex-end;justify-content:center;padding:0}.ct-calendar-day-hover.is-sheet{position:relative;width:100%;max-width:520px;max-height:min(70dvh,520px);border-radius:16px 16px 0 0;padding:10px 12px 16px;pointer-events:auto;animation:ct-assign-sheet-up .22s var(--ct-ease-spring)}.ct-calendar-day-sheet-head{display:flex;justify-content:flex-end;margin-bottom:4px}@keyframes ct-assign-sheet-up{0%{opacity:.6;transform:translateY(16px)}to{opacity:1;transform:none}}.ct-assign-schedule.is-mobile{flex-direction:column;gap:0;padding:0}.ct-assign-schedule.is-mobile .ct-assign-schedule-main{flex:1 1 0;min-height:0;border-radius:0;border:0;box-shadow:none;overflow:hidden}.ct-assign-mobile-top{flex-shrink:0;display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:var(--ct-surface);border-bottom:1px solid var(--ct-border)}.ct-assign-schedule.is-mobile .ct-assign-schedule-avatar{width:32px;height:32px;font-size:12px}.ct-assign-mobile-top-main{display:flex;align-items:center;gap:10px;min-width:0}.ct-assign-mobile-top-copy{flex:1;min-width:0}.ct-assign-mobile-top-copy h2{margin:0;font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-assign-mobile-top-copy p{margin:2px 0 0;font-size:11px;color:var(--ct-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-assign-mobile-top .ct-assign-schedule-count{font-size:20px;margin:0;flex-shrink:0}.ct-assign-mobile-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.ct-assign-mobile-level{margin:0}.ct-assign-mobile-level label{font-size:11px}.ct-assign-mobile-selected,.ct-assign-mobile-hint{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:8px 10px;border-radius:var(--ct-radius-sm);background:var(--ct-accent-soft);font-size:12px;font-weight:600}.ct-assign-mobile-hint{background:var(--ct-surface-soft);color:var(--ct-text-muted);font-weight:500}.ct-assign-mobile-selected button{border:0;background:transparent;color:var(--ct-text);font-size:12px;font-weight:700;padding:4px}.ct-assign-schedule.is-mobile .ct-assign-schedule-toolbar{flex-shrink:0;padding:6px 10px;gap:4px}.ct-assign-schedule.is-mobile .ct-assign-schedule-toolbar h2{font-size:13px;font-weight:700}.ct-assign-schedule.is-mobile .ct-assign-schedule-hint{font-size:11px;margin:0}.ct-assign-schedule.is-mobile .ct-assign-schedule-cal{flex:1 1 0;min-height:0;display:flex;flex-direction:column;gap:4px;padding:0 6px 6px;overflow:hidden;background:var(--ct-surface)}.ct-assign-schedule.is-mobile .ct-assign-schedule-cal .ct-calendar-dow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;flex-shrink:0;margin:0}.ct-assign-schedule.is-mobile .ct-assign-schedule-cal .ct-calendar-dow-label{font-size:9px;letter-spacing:.04em;padding:2px 0;text-align:center}.ct-assign-schedule.is-mobile .ct-assign-schedule-grid.ct-calendar-grid{flex:1 1 0;min-height:0;height:auto;gap:2px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);align-content:stretch}.ct-assign-schedule.is-mobile .ct-assign-schedule-cell.ct-calendar-cell,.ct-assign-schedule.is-mobile .ct-calendar-cell.is-pad{aspect-ratio:auto;min-height:0;height:auto;padding:2px;border-radius:6px;overflow:hidden;container-type:normal}.ct-assign-schedule.is-mobile .ct-assign-schedule-cell.has-draft{background:color-mix(in srgb,var(--ct-success, #006c49) 10%,var(--ct-surface))}.ct-assign-schedule.is-mobile .ct-assign-schedule-cell.ct-calendar-cell:not(.is-pad){display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;text-align:center;gap:2px;grid-template-columns:none;grid-template-rows:none;place-items:unset}.ct-assign-schedule.is-mobile .ct-calendar-cell-head{display:flex;flex-direction:row;align-items:center;justify-content:center;width:100%;grid-column:unset;grid-row:unset}.ct-assign-schedule.is-mobile .ct-calendar-month-label{display:none}.ct-assign-schedule.is-mobile .ct-calendar-day-num{font-size:12px;font-weight:700;line-height:1.1;margin:0}.ct-assign-schedule.is-mobile .ct-calendar-cell-sessions{margin-top:auto;justify-content:center}.ct-assign-schedule.is-mobile .ct-assign-schedule-cell{touch-action:manipulation}.ct-assign-schedule.is-mobile .ct-assign-day-mark{display:flex;align-items:center;justify-content:center;gap:3px;margin-top:auto;min-height:14px;pointer-events:none}.ct-assign-schedule.is-mobile .ct-assign-day-mark-dot{width:8px;height:8px;border-radius:999px;background:var(--ct-success, #006c49);box-shadow:0 0 0 2px color-mix(in srgb,var(--ct-success, #006c49) 22%,transparent)}.ct-assign-schedule.is-mobile .ct-assign-day-mark-count{font-size:10px;font-weight:750;line-height:1;color:var(--ct-success, #006c49)}.ct-assign-day-manage-sheet{max-height:min(70dvh,480px)}.ct-assign-day-manage-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex:1 1 auto;min-height:0;overflow-y:auto}.ct-assign-day-manage-item{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--ct-border);border-radius:var(--ct-radius);background:var(--ct-surface-soft, var(--ct-bg))}.ct-assign-day-manage-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:0;background:transparent;padding:4px 0;text-align:left;color:var(--ct-text)}.ct-assign-day-manage-main strong{font-size:14px;font-weight:700}.ct-assign-day-manage-main span{font-size:12px;color:var(--ct-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ct-assign-day-manage-remove{flex:0 0 auto;min-height:40px;min-width:84px;font-size:13px}.ct-assign-day-manage-foot{flex-shrink:0;padding-top:10px;margin-top:4px;border-top:1px solid var(--ct-border)}.ct-assign-day-manage-foot .ct-btn-primary{width:100%;min-height:44px}.ct-assign-mobile-foot{flex-shrink:0;display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:var(--ct-surface);border-top:1px solid var(--ct-border)}.ct-assign-mobile-foot .ct-btn-secondary,.ct-assign-mobile-foot .ct-btn-primary{flex:1 1 auto;min-width:0;min-height:40px;font-size:13px}.ct-assign-sessions-sheet-backdrop{position:fixed;inset:0;z-index:90;background:color-mix(in srgb,var(--ct-bg) 50%,transparent);display:flex;align-items:flex-end}.ct-assign-sessions-sheet{width:100%;max-height:min(72dvh,560px);background:var(--ct-surface);border-radius:16px 16px 0 0;border-top:1px solid var(--ct-border);box-shadow:0 -8px 28px #0000001f;display:flex;flex-direction:column;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));animation:ct-assign-sheet-up .22s var(--ct-ease-spring)}.ct-assign-sessions-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px;flex-shrink:0}.ct-assign-sessions-sheet-head h3{margin:0;font-size:17px;font-weight:700}.ct-assign-sessions-sheet-head p{margin:2px 0 0;font-size:12px;color:var(--ct-text-muted)}.ct-assign-sessions-sheet .ct-assign-schedule-block-list{flex:1 1 auto;min-height:0;overflow-y:auto}.ct-assign-repeat-backdrop{z-index:110;padding:16px}.ct-assign-repeat-modal{width:min(360px,100%)}.ct-assign-repeat-modal h3{margin:0 0 8px;font-size:18px;font-weight:750}.ct-assign-repeat-modal p{margin:0 0 16px;font-size:14px;color:var(--ct-text-muted);line-height:1.4}.ct-assign-repeat-modal .ct-delete-dialog-actions{display:flex;flex-wrap:wrap;gap:8px}.ct-assign-repeat-modal .ct-delete-dialog-actions .ct-btn-secondary,.ct-assign-repeat-modal .ct-delete-dialog-actions .ct-btn-primary{flex:1 1 auto;min-height:44px}.ct-assign-time-sheet-backdrop{position:fixed;inset:0;z-index:96;background:var(--ct-bg);display:flex;align-items:stretch;justify-content:stretch;opacity:0;pointer-events:none;transition:opacity .2s ease}.ct-assign-time-sheet-backdrop.is-open{opacity:1;pointer-events:auto}.ct-assign-time-sheet-backdrop>div{width:100%;height:100%;display:flex;align-items:stretch}.ct-assign-time-panel.is-sheet{position:relative;inset:auto;width:100%;height:100%;max-height:none;border:0;border-radius:0;box-shadow:none;transform:translateY(12px);pointer-events:auto;transition:transform .22s var(--ct-ease-spring),opacity .22s ease;opacity:.92}.ct-assign-time-panel.is-sheet.is-open{transform:translateY(0);opacity:1}.ct-assign-time-panel.is-sheet .ct-assign-time-panel-head{padding:12px 14px calc(10px + env(safe-area-inset-top,0px));flex-shrink:0}.ct-assign-time-panel.is-sheet .ct-assign-time-panel-head h3{font-size:18px}.ct-assign-time-panel.is-sheet .ct-assign-time-panel-body{flex:1 1 auto;gap:12px;padding:12px 14px;min-height:0;overflow-y:auto}.ct-assign-time-panel.is-sheet .ct-assign-time-assigned{padding:8px 10px}.ct-assign-time-panel.is-sheet .ct-assign-time-assigned h4{margin:0;font-size:13px;font-weight:700;line-height:1.25}.ct-assign-time-day-sessions{min-width:0;padding:8px 10px;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-border);background:var(--ct-surface-soft, var(--ct-bg))}.ct-assign-time-day-sessions>span{display:block;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ct-text-muted);margin-bottom:4px}.ct-assign-time-day-sessions .ct-field-hint{margin:0;font-size:12px}.ct-assign-time-day-sessions ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;max-height:88px;overflow-y:auto}.ct-assign-time-day-sessions li{font-size:12px;font-weight:600;line-height:1.3;color:var(--ct-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-assign-time-panel.is-sheet .ct-assign-time-field-wrap{margin:0}.ct-assign-time-panel.is-sheet .ct-assign-time-field-wrap label{font-size:11px;margin-bottom:4px}.ct-assign-time-panel.is-sheet .ct-time-field{gap:8px;padding:8px}.ct-assign-time-panel.is-sheet .ct-time-field-display{font-size:18px}.ct-assign-time-panel.is-sheet .ct-assign-time-adjust{display:none}.ct-assign-time-panel.is-sheet .ct-time-field-picker{gap:0;justify-content:center}.ct-assign-time-panel.is-sheet .ct-assign-time-repeat{font-size:12px;gap:8px;align-items:flex-start}.ct-assign-time-panel.is-sheet .ct-assign-time-panel-foot{padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));flex-shrink:0;margin-top:auto}.ct-assign-time-panel.is-sheet .ct-assign-time-panel-foot .ct-btn-primary{min-height:48px;font-size:15px}.ct-assign-time-panel.is-sheet .ct-assign-time-day-sessions ul{max-height:none}@media(max-width:960px){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=hidden]):not([type=color]):not([type=image]),textarea,select,.ct-field input,.ct-field textarea,.ct-field select,.ct-builder-side-field input,.ct-client-notes-input,.ct-session-history-input,.ct-reschedule-input,.ct-messages-compose-inner input{font-size:16px!important}}
