:root{--font-main: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--color-bg-login: #f4faef;--color-bg-dashboard: #f4faef;--color-card-bg: #ffffff;--color-sidebar-bg: #184f38;--color-sidebar-hover: #165a3c;--color-sidebar-active: #1e593e;--color-sidebar-text: #c2ccc0;--color-sidebar-text-hover: #ffffff;--color-accent-lime: #d5f282;--color-accent-lime-hover: #b4db42;--color-accent-lime-text: #0b2e1b;--color-dark-green: #113f2a;--color-text-primary: #12231b;--color-text-secondary: #5a6e63;--color-border: #e0ece3;--color-input-bg: #f4f9f6;--color-positive: #10b981;--color-negative: #ef4444;--color-warning-bg: #fdf8ea;--color-warning-border: #f6e8cc;--color-warning-text: #b45309;--color-static: #9333ea;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 2px 4px rgba(17, 63, 42, .03);--shadow-md: 0 8px 16px rgba(17, 63, 42, .04);--shadow-lg: 0 12px 32px rgba(17, 63, 42, .06);--transition-fast: .15s ease;--transition-normal: .25s ease}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);font-optical-sizing:auto;background-color:var(--color-bg-dashboard);color:var(--color-text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}button,input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-dashboard)}::-webkit-scrollbar-thumb{background:#cbdcd0;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a9c2b0}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:var(--color-bg-login);padding:20px}.login-header{display:flex;flex-direction:column;align-items:center;margin-bottom:28px;text-align:center}.login-logo{height:36px;margin-bottom:20px}.login-title{font-size:2rem;font-weight:700;color:var(--color-dark-green);margin-bottom:6px}.login-subtitle{font-size:.95rem;color:var(--color-text-secondary)}.login-card{background:var(--color-card-bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:440px;padding:32px;border:1px solid var(--color-border)}.login-tabs{display:flex;background-color:var(--color-input-bg);padding:4px;border-radius:var(--radius-md);margin-bottom:28px}.login-tab{flex:1;border:none;background:transparent;padding:10px;font-size:.95rem;font-weight:600;color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.login-tab.active{background-color:var(--color-card-bg);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.form-group{margin-bottom:20px}.form-label{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.input-container{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:14px;color:var(--color-text-secondary);pointer-events:none}.form-input{width:100%;padding:14px 14px 14px 44px;font-size:.95rem;background-color:var(--color-input-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);transition:all var(--transition-fast);outline:none}.form-input:focus{border-color:var(--color-dark-green);background-color:var(--color-card-bg);box-shadow:0 0 0 3px #113f2a14}.btn-primary{width:100%;background-color:var(--color-accent-lime);color:var(--color-accent-lime-text);border:none;border-radius:var(--radius-md);padding:14px;font-size:1rem;font-weight:700;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 12px #c5f05133;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px}.btn-primary:hover{background-color:var(--color-accent-lime-hover);box-shadow:0 6px 16px #c5f0514d;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.login-footer{margin-top:24px;text-align:center}.login-footer-link{font-size:.85rem;font-weight:600;color:#7b9e38;display:inline-flex;align-items:center;gap:6px;transition:color var(--transition-fast)}.login-footer-link:hover{color:var(--color-dark-green)}.dashboard-layout{display:flex;min-height:100vh;background-color:var(--color-bg-dashboard)}.sidebar{width:260px;background-color:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;z-index:100;padding:24px 16px;overflow-y:auto;overflow-x:hidden;border-right:1px solid rgba(255,255,255,.05);transition:width var(--transition-normal),padding var(--transition-normal)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;margin-bottom:32px}.sidebar-brand{display:flex;align-items:center;gap:12px;min-width:0;cursor:pointer;position:relative}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--color-sidebar-text);cursor:pointer;transition:all var(--transition-fast)}.sidebar-collapse-btn:hover{background-color:var(--color-sidebar-hover);color:#fff}.sidebar-brand-toggle{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background-color:#0f3925e0;color:#fff;cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:1}.sidebar-logo-circle{width:40px;height:40px;border-radius:50%;background-color:var(--color-accent-lime);display:flex;align-items:center;justify-content:center;color:var(--color-dark-green);flex-shrink:0}.sidebar-brand-name{font-weight:700;font-size:1.15rem;color:#fff;line-height:1.2}.sidebar-brand-subtitle{font-size:.75rem;color:var(--color-sidebar-text);opacity:.8}.sidebar-nav{display:flex;flex-direction:column;gap:4px;flex:1}.nav-section{display:flex;flex-direction:column;margin-bottom:12px}.nav-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);color:var(--color-sidebar-text);width:100%;border:none;background:transparent;text-align:left}.nav-item-content{display:flex;align-items:center;gap:12px}.nav-item:hover{background-color:var(--color-sidebar-hover);color:var(--color-sidebar-text-hover)}.nav-item.active{background-color:var(--color-sidebar-active);color:var(--color-sidebar-text-hover);font-weight:600}.nav-chevron{transition:transform var(--transition-normal)}.nav-chevron.open{transform:rotate(180deg)}.nav-submenu{display:none;flex-direction:column;gap:2px;padding-left:36px;margin-top:2px}.submenu-item{padding:8px 12px;font-size:.9rem;border-radius:var(--radius-sm);color:var(--color-sidebar-text);transition:all var(--transition-fast);font-weight:500;display:block}.submenu-item:hover{color:var(--color-sidebar-text-hover);background-color:#ffffff08}.submenu-item.active{color:var(--color-accent-lime);font-weight:600;background-color:#ffffff0d}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:16px;padding-top:20px}.client-switcher-panel,.admin-client-summary{position:relative;width:100%;background-color:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:12px;display:flex;align-items:flex-start;gap:10px;transition:background var(--transition-fast)}.client-switcher-panel:focus-within{background-color:#ffffff14;border-color:#d5f28257}.client-switcher-content{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.client-switcher-label,.admin-client-label,.admin-location-label{color:var(--color-sidebar-text);font-size:.62rem;font-weight:700;letter-spacing:.06em;line-height:1.2;text-transform:uppercase;opacity:.72}.client-switcher-panel .sidebar-client-dropdown.dd-trigger[data-variant=filter],.admin-client-summary .sidebar-location-dropdown.dd-trigger[data-variant=filter]{width:100%;min-width:0;min-height:22px;padding:0;gap:4px;color:#fff;font:inherit;font-size:.82rem;font-weight:650;line-height:1.35;background:transparent;border:0;border-radius:0;box-shadow:none;outline:0}.client-switcher-panel .sidebar-client-dropdown.dd-trigger[data-variant=filter]:hover:not(:disabled),.client-switcher-panel .sidebar-client-dropdown.dd-trigger[data-variant=filter][data-open=true],.client-switcher-panel .sidebar-client-dropdown.dd-trigger[data-variant=filter]:focus-visible,.admin-client-summary .sidebar-location-dropdown.dd-trigger[data-variant=filter]:hover:not(:disabled),.admin-client-summary .sidebar-location-dropdown.dd-trigger[data-variant=filter][data-open=true],.admin-client-summary .sidebar-location-dropdown.dd-trigger[data-variant=filter]:focus-visible{color:#fff;background:transparent;border:0;box-shadow:none}.client-switcher-panel .sidebar-client-dropdown:disabled,.admin-client-summary .sidebar-location-dropdown:disabled{cursor:wait;opacity:.72}.client-switcher-panel .sidebar-client-dropdown .dd-chevron,.admin-client-summary .sidebar-location-dropdown .dd-chevron{color:var(--color-sidebar-text)}.client-switcher-panel .sidebar-client-dropdown .dd-chevron svg,.admin-client-summary .sidebar-location-dropdown .dd-chevron svg{width:14px;height:14px}.client-switcher-help{color:var(--color-sidebar-text);font-size:.67rem;line-height:1.3;opacity:.8}.client-switcher-error{color:inherit;font:inherit;text-align:left;cursor:pointer}.client-switcher-error:active{transform:translateY(1px)}.admin-client-summary .studio-details{width:100%;gap:3px}.admin-location-list{max-height:108px;margin-top:8px;padding-top:8px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;border-top:1px solid rgba(255,255,255,.08)}.admin-location-item,.admin-location-empty{display:flex;align-items:center;gap:7px;color:var(--color-sidebar-text);font-size:.7rem;line-height:1.25}.admin-location-dot{width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:var(--color-accent-lime)}.studio-icon-circle{width:28px;height:28px;border-radius:50%;background-color:var(--color-sidebar-active);color:var(--color-accent-lime);display:flex;align-items:center;justify-content:center;flex-shrink:0}.studio-details{display:flex;flex-direction:column;min-width:0}.studio-name{color:#fff;font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-subtext{font-size:.7rem;color:var(--color-sidebar-text);opacity:.8}.sign-out-btn{display:flex;align-items:center;gap:10px;padding:8px 12px;color:var(--color-sidebar-text);font-size:.9rem;font-weight:500;border:none;background:transparent;cursor:pointer;transition:color var(--transition-fast);align-self:flex-start}.sign-out-btn:hover{color:#fff}.classes-calendar-shell{overflow-y:auto}.main-content{flex:1;margin-left:260px;padding:32px 40px;min-height:100vh;display:flex;flex-direction:column;transition:margin-left var(--transition-normal)}.tenant-view-state{min-height:280px;display:grid;place-items:center;color:var(--color-text-secondary);font-size:.9rem;text-align:center}.client-selection-modal{display:flex;flex-direction:column;gap:20px}.client-selection-intro{display:flex;align-items:flex-start;gap:12px}.client-selection-intro p{margin:1px 0 0;color:var(--color-text-secondary);font-size:.9rem;line-height:1.55}.client-selection-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:var(--color-dark-green);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.client-selection-field{margin:0}.client-selection-status{display:flex;flex-direction:column;gap:4px;padding:14px 16px;color:var(--color-text-primary);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.86rem;line-height:1.45}.client-selection-status span{color:var(--color-text-secondary)}.client-selection-actions{display:flex;justify-content:flex-end}.client-selection-continue{width:auto;min-width:120px;margin-top:0;padding:11px 22px}.client-selection-continue:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.client-selection-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;color:var(--color-dark-green);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;font-weight:700;cursor:pointer}.client-selection-secondary:hover{border-color:var(--color-dark-green)}.dashboard-layout.collapsed .sidebar{width:72px;padding:24px 8px;overflow:visible}.dashboard-layout.collapsed .sidebar-header{flex-direction:column;gap:16px}.dashboard-layout.collapsed .sidebar-brand{justify-content:center;width:40px;height:40px}.dashboard-layout.collapsed .sidebar-logo-circle{margin:0 auto}.dashboard-layout.collapsed .sidebar-brand:hover .sidebar-brand-toggle,.dashboard-layout.collapsed .sidebar-brand:focus-within .sidebar-brand-toggle{opacity:1;pointer-events:auto}.dashboard-layout.collapsed .sidebar-brand-text,.dashboard-layout.collapsed .nav-item-text,.dashboard-layout.collapsed .nav-chevron,.dashboard-layout.collapsed .studio-details,.dashboard-layout.collapsed .sign-out-btn span{display:none}.dashboard-layout.collapsed .client-switcher-panel,.dashboard-layout.collapsed .admin-client-summary{padding:8px;align-items:center;justify-content:center}.dashboard-layout.collapsed .client-switcher-content{position:absolute;top:0;right:0;bottom:0;left:0}.dashboard-layout.collapsed .client-switcher-label,.dashboard-layout.collapsed .client-switcher-help{display:none}.dashboard-layout.collapsed .client-switcher-panel .sidebar-client-dropdown.dd-trigger[data-variant=filter]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:0;padding:0;opacity:0}.dashboard-layout.collapsed .client-switcher-error .client-switcher-content{display:none}.dashboard-layout.collapsed .sign-out-btn{align-self:center;padding:8px 0}.dashboard-layout.collapsed .main-content{margin-left:72px}.dashboard-layout.collapsed .nav-section{position:relative}.dashboard-layout.collapsed .nav-submenu{display:flex;position:absolute;left:100%;top:0;min-width:188px;padding:8px;margin-top:0;background-color:var(--color-sidebar-bg);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-6px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast)}.dashboard-layout.collapsed .nav-section:hover .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)}.dashboard-layout.collapsed .nav-submenu .submenu-item{white-space:nowrap}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.welcome-section{display:flex;flex-direction:column;gap:4px}.welcome-title{font-size:2.1rem;font-weight:800;color:var(--color-text-primary);letter-spacing:-.5px}.welcome-subtitle{font-size:.95rem;color:var(--color-text-secondary);font-weight:500}.header-actions{display:flex;align-items:center;gap:12px}.btn-dark{background-color:var(--color-dark-green);color:#fff;border:none;border-radius:var(--radius-md);padding:10px 18px;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background var(--transition-fast)}.btn-dark:hover{background-color:var(--color-sidebar-hover)}.filter-select-container{position:relative;display:flex;align-items:center}.filter-select{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 36px 10px 16px;font-size:.95rem;font-weight:600;color:var(--color-text-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;outline:none;transition:all var(--transition-fast)}.filter-select:focus{border-color:var(--color-dark-green)}.select-arrow-icon{position:absolute;right:14px;color:var(--color-text-secondary);pointer-events:none}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px}@media (max-width: 1200px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.kpi-grid{grid-template-columns:1fr}.classes-calendar-shell{max-height:calc(100dvh - 250px);-webkit-overflow-scrolling:touch}}.kpi-card{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:space-between;min-height:140px;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.kpi-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.kpi-card-title{font-size:.9rem;font-weight:600;color:var(--color-text-secondary)}.kpi-icon-wrapper{width:36px;height:36px;border-radius:50%;background-color:#edf5ef;display:flex;align-items:center;justify-content:center;color:var(--color-dark-green)}.kpi-card-body{display:flex;flex-direction:column;gap:8px}.kpi-card-value{font-size:2rem;font-weight:700;color:var(--color-text-primary);line-height:1}.kpi-card-subtext{font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:4px}.kpi-sub-positive{color:var(--color-positive)}.kpi-sub-negative{color:var(--color-negative);background-color:#fdf2f2;padding:2px 6px;border-radius:4px;display:inline-flex}.kpi-sub-neutral{color:var(--color-text-secondary)}.kpi-card.warning-variant{background-color:var(--color-warning-bg);border-color:var(--color-warning-border)}.kpi-card.warning-variant .kpi-card-title{color:var(--color-warning-text)}.kpi-card.warning-variant .kpi-icon-wrapper{background-color:#d977061a;color:var(--color-warning-text)}.kpi-card.warning-variant .kpi-card-subtext{color:var(--color-warning-text);font-weight:500;line-height:1.4}.kpi-card.static-variant .kpi-icon-wrapper{color:var(--color-static);background-color:color-mix(in srgb,var(--color-static) 10%,white)}.widgets-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}@media (max-width: 1024px){.widgets-grid{grid-template-columns:1fr}}.widget-card{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.widget-title{font-size:1.1rem;font-weight:700;color:var(--color-text-primary)}.widget-badge{font-size:.75rem;font-weight:600;color:var(--color-dark-green);background-color:var(--color-input-bg);padding:4px 10px;border-radius:20px}.revenue-chart-mock{display:flex;flex-direction:column;justify-content:flex-end;height:200px;padding-top:10px;border-bottom:1px dashed var(--color-border);position:relative;margin-bottom:12px}.chart-bars-container{display:flex;justify-content:space-around;align-items:flex-end;height:100%;width:100%}.chart-bar-group{display:flex;flex-direction:column;align-items:center;flex:1;height:100%;justify-content:flex-end;gap:8px}.chart-bar{width:32px;background-color:var(--color-input-bg);border-radius:4px 4px 0 0;transition:height .5s ease;position:relative}.chart-bar.filled{background-color:var(--color-accent-lime)}.chart-bar.static-bar{background-color:color-mix(in srgb,var(--color-static) 24%,white)}.chart-bar.static-bar.filled,.chart-bar-group:hover .chart-bar.static-bar.filled{background-color:var(--color-static)}.chart-bar-group:hover .chart-bar.filled{background-color:var(--color-accent-lime-hover)}.chart-label{font-size:.75rem;color:var(--color-text-secondary);font-weight:600}.chart-axis-labels{display:flex;justify-content:space-around;margin-top:8px;padding-top:8px}.classes-list{display:flex;flex-direction:column;gap:14px}.dashboard-widget-state{color:var(--color-text-secondary);font-size:.9rem;padding:20px 0;text-align:center}.class-item{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.class-item-link{margin-inline:-8px;padding-inline:8px;border-radius:var(--radius-sm);color:inherit;text-decoration:none;transition:background-color var(--transition-fast),transform var(--transition-fast)}.class-item-link:hover{background-color:var(--color-input-bg);transform:translate(2px)}.class-item-link:active{transform:translate(2px) scale(.99)}.class-item-link:focus-visible{outline:2px solid var(--color-dark-green);outline-offset:2px}.class-item:last-child{border-bottom:none;padding-bottom:0}.class-item-link:last-child{padding-bottom:8px}.class-info{display:flex;flex-direction:column;gap:2px}.class-name{font-weight:600;font-size:.95rem;color:var(--color-text-primary)}.class-instructor{font-size:.8rem;color:var(--color-text-secondary)}.class-stats{text-align:right;display:flex;flex-direction:column;gap:2px}.class-item-action{display:flex;align-items:center;gap:10px;margin-left:16px}.class-item-chevron{flex:0 0 auto;color:var(--color-text-secondary);transition:transform var(--transition-fast)}.class-item-link:hover .class-item-chevron{transform:translate(2px)}.class-occupancy{font-weight:700;font-size:.95rem;color:var(--color-dark-green)}.class-bookings{font-size:.8rem;color:var(--color-text-secondary)}.dashboard-secondary-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(310px,1fr);grid-template-areas:"tasks staff" "recent snapshot";gap:20px;margin-top:28px;align-items:stretch}.dashboard-ops-card,.dashboard-snapshot-card{border-radius:var(--radius-lg);min-width:0;padding:24px}.dashboard-ops-card{background:var(--color-card-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.dashboard-tasks-card{grid-area:tasks}.dashboard-staff-card{grid-area:staff}.dashboard-recent-card{grid-area:recent}.dashboard-snapshot-card{grid-area:snapshot;background:var(--color-sidebar-bg);color:#fff}.dashboard-ops-heading,.dashboard-snapshot-heading{display:flex;align-items:center}.dashboard-ops-heading{justify-content:space-between;gap:16px;margin-bottom:18px}.dashboard-ops-heading h2,.dashboard-snapshot-heading h2{font-size:1.08rem;line-height:1.25;margin:0}.dashboard-ops-heading h2{display:inline-flex;align-items:center;gap:9px;color:var(--color-dark-green)}.dashboard-open-count{border:1px solid var(--color-border);border-radius:999px;color:var(--color-dark-green);flex:0 0 auto;font-size:.78rem;font-weight:700;padding:5px 12px}.dashboard-task-list,.dashboard-staff-list{display:grid;gap:12px}.dashboard-task-row,.dashboard-staff-row{align-items:center;background:var(--color-input-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;min-width:0}.dashboard-task-row{grid-template-columns:42px minmax(0,1fr) auto;gap:12px;min-height:72px;padding:10px 14px}.dashboard-task-row.is-static .dashboard-task-icon{border-color:color-mix(in srgb,var(--color-static) 35%,white);color:var(--color-static)}.dashboard-task-icon{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:50%;color:var(--color-dark-green);display:inline-flex;height:42px;justify-content:center;width:42px}.dashboard-task-copy,.dashboard-staff-copy,.dashboard-booking-copy{display:flex;flex-direction:column;min-width:0}.dashboard-task-copy{gap:3px}.dashboard-task-copy strong,.dashboard-staff-copy strong,.dashboard-booking-copy strong{color:var(--color-text-primary);font-size:.93rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-task-copy>span,.dashboard-staff-copy>span,.dashboard-booking-copy>span{color:var(--color-text-secondary);font-size:.79rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-row-action{align-items:center;background:transparent;border:1px solid var(--color-border);border-radius:999px;color:var(--color-dark-green);display:inline-flex;font-size:.78rem;font-weight:700;justify-content:center;min-width:66px;padding:9px 13px;text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast)}a.dashboard-row-action:hover{background:#fff;border-color:var(--color-dark-green)}.dashboard-staff-row{color:inherit;gap:11px;grid-template-columns:42px minmax(0,1fr) auto;min-height:72px;padding:11px 13px;text-decoration:none;transition:border-color var(--transition-fast),transform var(--transition-fast)}.dashboard-staff-row:hover{border-color:color-mix(in srgb,var(--color-dark-green) 35%,var(--color-border));transform:translateY(-1px)}.dashboard-avatar{align-items:center;background:#edf6e5;border-radius:50%;color:var(--color-dark-green);display:inline-flex;flex:0 0 auto;font-size:.75rem;font-weight:800;height:42px;justify-content:center;width:42px}.dashboard-staff-copy,.dashboard-booking-copy{gap:4px}.dashboard-assignment,.dashboard-booking-status{border-radius:999px;font-size:.72rem;font-weight:700;padding:5px 10px;white-space:nowrap}.dashboard-assignment{background:#def3d2;color:#285b3d}.dashboard-assignment.is-unassigned{background:#f3f4f1;color:var(--color-text-secondary)}.dashboard-more-link,.dashboard-view-all{color:var(--color-dark-green);font-size:.78rem;font-weight:700;text-decoration:none}.dashboard-more-link{justify-self:center;padding-top:2px}.dashboard-view-all:hover,.dashboard-more-link:hover{text-decoration:underline}.dashboard-recent-list{display:flex;flex-direction:column}.dashboard-booking-row{align-items:center;border-bottom:1px solid var(--color-border);color:inherit;display:grid;gap:12px;grid-template-columns:42px minmax(0,1fr) auto;min-height:68px;padding:10px 0;text-decoration:none}.dashboard-booking-row:last-child{border-bottom:0}.dashboard-booking-row:hover .dashboard-booking-copy strong{color:#236443}.dashboard-booking-status.is-pending{background:#fff1dc;color:#b96800}.dashboard-booking-status.is-attended{background:#e4f4de;color:#245c3a}.dashboard-booking-status.is-no-show{background:#fdf0f0;color:#b42318}.dashboard-panel-state{color:var(--color-text-secondary);font-size:.86rem;padding:28px 6px;text-align:center}.dashboard-snapshot-heading{color:var(--color-accent-lime);gap:9px;margin-bottom:20px}.dashboard-snapshot-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-snapshot-item{background:#ffffff0e;border:1px solid rgba(224,236,227,.18);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:8px;min-height:104px;padding:18px}.dashboard-snapshot-item strong{color:var(--color-accent-lime);font-size:1.85rem;line-height:1}.dashboard-snapshot-item span,.dashboard-snapshot-note{color:#ffffffad;font-size:.79rem}.dashboard-snapshot-note{display:block;margin-top:14px}@media (max-width: 1100px){.dashboard-secondary-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr)}}@media (max-width: 880px){.dashboard-secondary-grid{grid-template-areas:"tasks" "staff" "recent" "snapshot";grid-template-columns:minmax(0,1fr)}}@media (max-width: 560px){.dashboard-ops-card,.dashboard-snapshot-card{padding:18px}.dashboard-task-row,.dashboard-staff-row{grid-template-columns:38px minmax(0,1fr)}.dashboard-task-icon,.dashboard-avatar{height:38px;width:38px}.dashboard-row-action,.dashboard-assignment{grid-column:2;justify-self:start}.dashboard-booking-row{grid-template-columns:38px minmax(0,1fr) auto}.dashboard-snapshot-grid{gap:10px}.dashboard-snapshot-item{min-height:92px;padding:14px}}.dashboard-insights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px;align-items:stretch}.dashboard-insight-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0;padding:24px}.dashboard-booking-mix-card,.dashboard-checkins-card{min-height:370px}.dashboard-risk-card,.dashboard-membership-insights-card{min-height:430px}.dashboard-insight-heading{display:flex;justify-content:space-between;gap:18px;margin-bottom:22px}.dashboard-insight-heading>div:first-child{display:flex;flex-direction:column;gap:7px;min-width:0}.dashboard-insight-heading h2{align-items:center;color:var(--color-dark-green);display:inline-flex;font-size:1.08rem;gap:9px;line-height:1.25;margin:0}.dashboard-insight-heading>div:first-child>span,.dashboard-top-fill span{color:var(--color-text-secondary);font-size:.78rem}.dashboard-booking-type-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:34px 0 28px}.dashboard-booking-type{align-items:center;border-right:1px solid var(--color-border);display:flex;flex-direction:column;gap:7px;min-width:0;padding:0 10px;text-align:center}.dashboard-booking-type:last-child{border-right:0}.dashboard-booking-type>span{color:var(--color-text-primary);font-size:.79rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.dashboard-booking-type strong{color:var(--color-dark-green);font-size:1.65rem;line-height:1}.dashboard-booking-type small{color:var(--color-text-secondary);font-size:.72rem}.dashboard-booking-distribution{background:var(--color-input-bg);border-radius:6px;display:flex;gap:4px;height:24px;overflow:hidden;padding:3px}.dashboard-booking-distribution span{border-radius:4px;min-width:0}.dashboard-booking-distribution .is-membership{background:var(--color-sidebar-bg)}.dashboard-booking-distribution .is-drop-in{background:#f0b85b}.dashboard-booking-distribution .is-static{background:var(--color-static);opacity:.72}.dashboard-booking-distribution .is-trial{opacity:.42}.dashboard-booking-distribution .is-unclassified{background:color-mix(in srgb,var(--color-static) 18%,white);border:1px solid var(--color-static)}.dashboard-booking-mix-footer{align-items:center;color:var(--color-text-secondary);display:flex;flex-wrap:wrap;font-size:.76rem;gap:8px 16px;justify-content:space-between;margin-top:18px}.dashboard-checkins-heading{align-items:flex-start}.dashboard-top-fill{align-items:flex-end;display:flex;flex:0 0 auto;flex-direction:column;gap:5px;max-width:46%;text-align:right}.dashboard-top-fill strong{color:var(--color-dark-green);font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.dashboard-checkins-chart{height:290px;min-height:290px;width:100%}.dashboard-risk-card .dashboard-insight-heading h2{color:var(--color-dark-green)}.dashboard-risk-card .dashboard-insight-heading h2 svg{color:var(--color-negative)}.dashboard-risk-list{display:grid;gap:10px}.dashboard-risk-row{align-items:center;background:#fff8f7;border:1px solid #f5d5d2;border-radius:var(--radius-md);display:grid;gap:12px;grid-template-columns:minmax(0,1fr);min-height:72px;padding:10px 12px}.dashboard-risk-member{align-items:center;color:inherit;display:grid;gap:12px;grid-template-columns:42px minmax(0,1fr);min-width:0;text-decoration:none}.dashboard-risk-member:hover .dashboard-risk-copy>strong{color:#236443}.dashboard-risk-avatar{align-items:center;background:#ffe4e4;border-radius:50%;color:var(--color-negative);display:inline-flex;height:42px;justify-content:center;width:42px}.dashboard-risk-copy{display:flex;flex-direction:column;gap:7px;min-width:0}.dashboard-risk-copy>strong{color:var(--color-text-primary);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-risk-tags{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.dashboard-risk-mobile{align-items:center;color:var(--color-text-secondary);display:inline-flex;font-size:.78rem;gap:6px;line-height:1.2}.dashboard-risk-mobile svg{flex:0 0 auto}.dashboard-risk-copy small{background:#edf5e8;border-radius:999px;color:#366247;font-size:.68rem;font-weight:700;padding:4px 8px}.dashboard-risk-copy small.risk-high{background:#fee6e4;color:#b42318}.dashboard-risk-copy small.risk-medium{background:#fff0d8;color:#b96800}.dashboard-risk-copy small.risk-low{background:#e6f3df;color:#2f6a43}.dashboard-risk-last-seen{color:var(--color-text-secondary);font-size:.7rem;text-align:right;white-space:nowrap}.dashboard-nudge-button{align-items:center;background:#faf5ff;border:1px solid color-mix(in srgb,var(--color-static) 28%,white);border-radius:999px;cursor:not-allowed;display:inline-flex;font:inherit;font-size:.73rem;font-weight:700;gap:7px;justify-content:center;min-width:88px;opacity:1;padding:8px 12px}.dashboard-membership-metrics{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-membership-metric{align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-dark-green);display:flex;gap:14px;min-height:100px;padding:18px}.dashboard-membership-metric.is-active,.dashboard-membership-metric.is-expiring{background:#edf6e7;border-color:#d4e5ca}.dashboard-membership-metric.is-paused{background:#fff8ee;border-color:#f2d8ae}.dashboard-membership-metric.is-cancelled{background:#fff7f6;border-color:#f3d2cf}.dashboard-membership-metric>span,.dashboard-popular-plan>span{display:flex;flex-direction:column;gap:5px;min-width:0}.dashboard-membership-metric strong{color:var(--color-text-primary);font-size:1.65rem;line-height:1}.dashboard-membership-metric small,.dashboard-popular-plan small{color:var(--color-text-secondary);font-size:.76rem}.dashboard-popular-plan{align-items:center;background:#edf6e7;border:1px solid #d4e5ca;border-radius:var(--radius-md);color:var(--color-dark-green);display:flex;gap:14px;margin-top:16px;min-height:82px;padding:16px 20px;text-decoration:none;transition:border-color var(--transition-fast),transform var(--transition-fast)}.dashboard-popular-plan:hover{border-color:color-mix(in srgb,var(--color-dark-green) 35%,var(--color-border));transform:translateY(-1px)}.dashboard-popular-plan strong{color:var(--color-text-primary);font-size:1rem}@media (max-width: 1100px){.dashboard-risk-member{grid-template-columns:38px minmax(0,1fr)}.dashboard-risk-last-seen{grid-column:2;text-align:left}}@media (max-width: 880px){.dashboard-insights-grid{grid-template-columns:minmax(0,1fr)}.dashboard-booking-mix-card,.dashboard-checkins-card,.dashboard-risk-card,.dashboard-membership-insights-card{min-height:0}}@media (max-width: 560px){.dashboard-insight-card{padding:18px}.dashboard-booking-type-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin:26px 0 22px;row-gap:22px}.dashboard-booking-type:nth-child(2){border-right:0}.dashboard-booking-type strong{font-size:1.45rem}.dashboard-checkins-heading{align-items:flex-start}.dashboard-top-fill{max-width:44%}.dashboard-risk-row{align-items:stretch;grid-template-columns:minmax(0,1fr)}.dashboard-nudge-button{justify-self:end}.dashboard-membership-metrics{gap:10px}.dashboard-membership-metric{align-items:flex-start;flex-direction:column;gap:10px;min-height:118px;padding:15px}}.dummy-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:48px;text-align:center;box-shadow:var(--shadow-sm);margin-top:20px}.dummy-icon-container{width:64px;height:64px;border-radius:50%;background-color:var(--color-input-bg);display:flex;align-items:center;justify-content:center;color:var(--color-dark-green);margin-bottom:20px}.dummy-title{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:8px}.dummy-description{font-size:.95rem;color:var(--color-text-secondary);max-width:400px;margin-bottom:24px}@media (max-width: 900px){.sidebar{width:72px;padding:24px 8px;overflow:visible}.sidebar-header{flex-direction:column;gap:16px}.sidebar-brand{justify-content:center}.sidebar-logo-circle{margin:0 auto}.sidebar-brand-text,.nav-item-text,.nav-chevron,.studio-details,.sign-out-btn span{display:none}.nav-item,.nav-item-content{justify-content:center}.client-switcher-panel,.admin-client-summary{padding:8px;align-items:center;justify-content:center}.client-switcher-content{position:absolute;top:0;right:0;bottom:0;left:0}.client-switcher-label,.client-switcher-help{display:none}.client-switcher-panel .sidebar-client-dropdown.dd-trigger[data-variant=filter]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:0;padding:0;opacity:0}.client-switcher-error .client-switcher-content{display:none}.sign-out-btn{align-self:center;padding:8px 0}.main-content{margin-left:72px;padding:24px}.nav-section{position:relative}.nav-submenu,.nav-submenu.open{display:flex;position:absolute;left:100%;top:0;min-width:188px;padding:8px;margin-top:0;background-color:var(--color-sidebar-bg);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-6px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast)}.nav-section:hover .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)}.nav-submenu .submenu-item{white-space:nowrap}}.ff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}@media (max-width: 560px){.ff-grid{grid-template-columns:1fr}}.ff-stack{display:grid;gap:16px}.ff-field{display:grid;gap:8px;min-width:0}.ff-label{font-size:.9rem;font-weight:700;color:var(--color-dark-green)}.ff-required{color:var(--color-negative)}.ff-hint{font-size:.78rem;color:var(--color-text-secondary)}.ff-error{font-size:.85rem;color:var(--color-negative)}.plan-category-access{display:grid;gap:16px;padding:20px;border:1px solid var(--color-border);border-radius:var(--radius-xl)}.plan-category-access__header{display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--color-dark-green);font-size:1rem;font-weight:700}.plan-category-access__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:42px;row-gap:14px}.plan-category-access__option{display:inline-flex;align-items:center;gap:12px;min-width:0;color:var(--color-dark-green);font-size:.95rem;font-weight:600;cursor:pointer}.plan-category-access__option input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--color-accent-lime);cursor:pointer}.plan-category-access__option input[type=checkbox]:focus-visible{outline:3px solid rgba(197,240,81,.34);outline-offset:3px}.plan-category-access__option input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}.classes-filter-row{display:flex;flex:1 0 100%;align-items:center;gap:8px;padding-top:2px;flex-wrap:wrap}.classes-filter-row .dd-trigger[data-variant=filter]{min-height:38px;padding:8px 12px;border-radius:12px;font-size:.82rem}.classes-filter-clear{min-height:38px;padding:7px 12px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-family:inherit;font-size:.78rem;font-weight:700;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.classes-filter-clear:hover{background:var(--color-input-bg);color:var(--color-dark-green)}.classes-filter-clear:focus-visible{outline:2px solid var(--color-dark-green);outline-offset:2px}.plan-category-access__message{margin:0;color:var(--color-text-secondary);font-size:.85rem}.plan-category-access__message--error{color:var(--color-negative)}@media (max-width: 560px){.plan-category-access__grid{grid-template-columns:1fr}}.ff-note{font-size:.85rem;color:var(--color-warning-text)}.ff-control{width:100%;min-height:50px;padding:14px 16px;font-size:.95rem;font-family:inherit;color:var(--color-text-primary);background-color:var(--color-input-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.ff-control::placeholder{color:var(--color-text-secondary);opacity:.7}.ff-control:focus{border-color:var(--color-accent-lime);background-color:var(--color-card-bg);box-shadow:0 0 0 4px #c5f05140}.ff-control:disabled{opacity:.55;cursor:not-allowed}.ff-select-wrap{position:relative;display:block}select.ff-control{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:42px;cursor:pointer}.ff-control::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}.ff-control::-webkit-datetime-edit{line-height:1.2}.static-data{color:var(--color-static)!important;text-decoration:underline dotted rgba(147,51,234,.55);text-underline-offset:3px}.ff-select-chevron{position:absolute;top:50%;right:16px;transform:translateY(-50%);display:flex;pointer-events:none;color:var(--color-text-secondary)}.dd-trigger{display:inline-flex;align-items:center;gap:10px;width:100%;min-height:50px;padding:14px 16px;font-size:.95rem;font-family:inherit;font-weight:500;text-align:left;color:var(--color-text-primary);background-color:var(--color-input-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;outline:none;box-sizing:border-box;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.dd-trigger:hover:not(:disabled){border-color:#cfe0d5}.dd-trigger[data-open=true],.dd-trigger:focus-visible{border-color:var(--color-accent-lime);background-color:var(--color-card-bg);box-shadow:0 0 0 4px #c5f05140}.dd-trigger:disabled{opacity:.55;cursor:not-allowed}.dd-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dd-value[data-placeholder=true]{color:var(--color-text-secondary);opacity:.85;font-weight:400}.dd-chevron{flex-shrink:0;display:flex;color:var(--color-text-secondary);transition:transform var(--transition-fast)}.dd-trigger[data-open=true] .dd-chevron{transform:rotate(180deg)}.dd-trigger[data-variant=filter]{width:auto;padding:10px 14px;font-size:.9rem;font-weight:600;border-width:1px;border-radius:var(--radius-md);background-color:var(--color-card-bg)}.dd-trigger[data-variant=filter][data-open=true],.dd-trigger[data-variant=filter]:focus-visible{border-color:var(--color-dark-green);box-shadow:0 0 0 3px #113f2a14}.dd-popup{position:fixed;z-index:1100;display:flex;flex-direction:column;min-width:160px;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),0 6px 16px #113f2a14;overflow:hidden;box-sizing:border-box;animation:dd-pop var(--transition-fast)}.dd-popup[data-placement=above]{transform-origin:bottom}@keyframes dd-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dd-search-wrap{position:relative;padding:8px 8px 4px}.dd-search{width:100%;padding:9px 12px 9px 34px;font-size:.9rem;font-family:inherit;color:var(--color-text-primary);background:var(--color-input-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;box-sizing:border-box}.dd-search:focus{border-color:var(--color-accent-lime);background:var(--color-card-bg);box-shadow:0 0 0 3px #c5f05133}.dd-search-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);display:flex;color:var(--color-text-secondary);pointer-events:none}.dd-list{list-style:none;margin:0;padding:6px;overflow-y:auto;overscroll-behavior:contain}.dd-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;font-size:.92rem;color:var(--color-text-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.dd-option[data-active=true]{background:var(--color-input-bg)}.dd-option[aria-selected=true]{background:var(--color-sidebar-active);color:#fff;font-weight:600}.dd-option[aria-selected=true][data-active=true]{background:var(--color-dark-green)}.dd-option[aria-disabled=true]{opacity:.4;cursor:not-allowed}.dd-option-text{display:flex;flex-direction:column;gap:2px;min-width:0}.dd-option-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dd-option-desc{font-size:.78rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dd-option[aria-selected=true] .dd-option-desc{color:#ffffffbf}.dd-option-check{flex-shrink:0}.dd-empty{padding:18px 12px;text-align:center;font-size:.88rem;color:var(--color-text-secondary)}.dd-multi-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px;margin:2px 6px 0;border-bottom:1px solid var(--color-border);font-size:.78rem;color:var(--color-text-secondary)}.dd-option-multi{justify-content:flex-start;gap:10px}.dd-option-multi[aria-selected=true]{background:transparent;color:var(--color-text-primary);font-weight:500}.dd-option-multi[data-active=true],.dd-option-multi[aria-selected=true][data-active=true]{background:var(--color-input-bg)}.dd-check{flex-shrink:0;width:18px;height:18px;border-radius:5px;border:1.5px solid var(--color-border);background:var(--color-card-bg);display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.dd-check[data-checked=true]{background:var(--color-dark-green);border-color:var(--color-dark-green)}.ff-divider{border:0;border-top:1px solid var(--color-border);margin:2px 0}.ff-submit{width:100%;padding:16px;border:none;border-radius:var(--radius-lg);background-color:var(--color-accent-lime);color:var(--color-accent-lime-text);font-size:1rem;font-weight:700;cursor:pointer;box-shadow:0 6px 16px #c5f05147;transition:background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.ff-submit:hover:not(:disabled){background-color:var(--color-accent-lime-hover);transform:translateY(-1px)}.ff-submit:active:not(:disabled){transform:translateY(0)}.ff-submit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.ff-day{padding:8px 14px;border-radius:999px;font-size:.75rem;font-weight:600;cursor:pointer;border:1.5px solid var(--color-border);background:transparent;color:var(--color-text-secondary);transition:all var(--transition-fast)}.ff-day.on{background:var(--color-accent-lime);border-color:var(--color-accent-lime);color:var(--color-accent-lime-text)}.live-dot{animation:live-pulse 1.4s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.65)}}.tenant-dashboard{padding-bottom:48px}.tenant-dashboard .dashboard-header{align-items:flex-end;margin-bottom:52px}.tenant-dashboard .welcome-section{gap:10px}.tenant-dashboard .welcome-title{color:#105c3d;font-size:clamp(2.25rem,3.4vw,3.45rem);font-weight:700;letter-spacing:0;line-height:1.05}.tenant-dashboard .welcome-subtitle{color:#587264;font-size:1.1rem;font-weight:500}.tenant-dashboard .header-actions{gap:14px}.dashboard-add-member{align-items:center;background:#105c3d;border:1px solid #105c3d;border-radius:16px;box-shadow:0 5px 12px #105c3d21;color:#e3f788;display:inline-flex;font-size:1rem;font-weight:650;gap:10px;justify-content:center;min-height:52px;padding:0 26px;transition:background-color var(--transition-fast),transform var(--transition-fast)}.dashboard-add-member:hover{background:#0c4d33;transform:translateY(-1px)}.tenant-dashboard .header-actions .dd-trigger[data-variant=filter]{border-color:#e0e6dc;border-radius:16px;font-size:1rem;min-height:52px;min-width:170px;padding:0 18px}.tenant-dashboard .kpi-grid{gap:18px;margin-bottom:36px}.tenant-dashboard .kpi-card{border-color:#e3e9df;border-radius:20px;box-shadow:0 4px 9px #14372606;min-height:136px;padding:20px 22px}.tenant-dashboard .kpi-card:hover{box-shadow:0 7px 16px #1437260f;transform:translateY(-1px)}.tenant-dashboard .kpi-card-title{color:#577063;font-size:.9rem;font-weight:500}.tenant-dashboard .kpi-icon-wrapper{background:#f0f1e9;border-radius:13px;height:40px;width:40px}.tenant-dashboard .kpi-card-value{color:#0c3b28;font-size:2rem;font-weight:650}.tenant-dashboard .kpi-card.warning-variant{background:#fff;border-color:#ffd9bd}.tenant-dashboard .kpi-card.warning-variant .kpi-card-title,.tenant-dashboard .kpi-card.warning-variant .kpi-icon-wrapper{color:#ff7a1a}.tenant-dashboard .kpi-card.warning-variant .kpi-icon-wrapper{background:#fff2e9}.tenant-dashboard .kpi-card.featured-variant{background:linear-gradient(145deg,#126342,#073923);border-color:transparent;box-shadow:0 12px 24px #083a2429}.tenant-dashboard .kpi-card.featured-variant .kpi-card-title{color:#ffffffab}.tenant-dashboard .kpi-card.featured-variant .kpi-icon-wrapper{background:#d3f25b21;color:#d8f15d}.tenant-dashboard .kpi-card.featured-variant .kpi-card-value{color:#fff}.tenant-dashboard .dashboard-revenue-grid{grid-template-columns:minmax(0,1fr)}.tenant-dashboard .widget-card,.tenant-dashboard .dashboard-ops-card,.tenant-dashboard .dashboard-snapshot-card,.tenant-dashboard .dashboard-insight-card{border-color:#e3e9df;border-radius:24px;box-shadow:0 4px 9px #14372606}.tenant-dashboard .dashboard-revenue-card{min-height:400px;padding:26px 28px 22px}.tenant-dashboard .widget-header{align-items:flex-start;margin-bottom:6px}.tenant-dashboard .widget-header>div{display:flex;flex-direction:column;gap:8px}.tenant-dashboard .widget-title{color:#105c3d;font-size:1.2rem;font-weight:650}.widget-subtitle{color:#5b7266;font-size:.92rem}.tenant-dashboard .widget-badge{background:#eff8d7;color:#19573b;font-size:.84rem;padding:5px 13px}.revenue-line-chart{height:290px;min-height:290px;width:100%}.dashboard-line-chart .recharts-cartesian-grid line{stroke:#dce6d8;stroke-dasharray:5 7;stroke-width:1}.dashboard-line-chart text{fill:#5d7468;font-size:13px}.dashboard-line-chart .recharts-tooltip-wrapper{outline:none}.tenant-dashboard .dashboard-secondary-grid{gap:24px;margin-top:36px}.tenant-dashboard .dashboard-ops-card,.tenant-dashboard .dashboard-snapshot-card{border-radius:20px;padding:24px}.tenant-dashboard .dashboard-tasks-card,.tenant-dashboard .dashboard-staff-card{min-height:360px}.tenant-dashboard .dashboard-recent-card,.tenant-dashboard .dashboard-snapshot-card{min-height:430px}.tenant-dashboard .dashboard-ops-heading{margin-bottom:18px}.tenant-dashboard .dashboard-ops-heading h2,.tenant-dashboard .dashboard-snapshot-heading h2,.tenant-dashboard .dashboard-insight-heading h2{font-size:1.22rem;font-weight:650}.tenant-dashboard .dashboard-open-count{background:#fff;border-color:#dfe6d9;font-size:.78rem;padding:5px 12px}.tenant-dashboard .dashboard-task-list{gap:10px}.tenant-dashboard .dashboard-task-row{background:#f6f8f3;border-color:#e4e9df;border-radius:15px;min-height:70px;padding:10px 14px}.tenant-dashboard .dashboard-task-icon{height:38px;width:38px}.tenant-dashboard .dashboard-task-copy strong,.tenant-dashboard .dashboard-staff-copy strong,.tenant-dashboard .dashboard-booking-copy strong{font-size:.94rem;font-weight:550}.tenant-dashboard .dashboard-task-copy>span,.tenant-dashboard .dashboard-staff-copy>span,.tenant-dashboard .dashboard-booking-copy>span{font-size:.84rem}.tenant-dashboard .dashboard-row-action,.dashboard-risk-action{background:#fbfdf9;border:1px solid #dce6d8;border-radius:999px;color:#123f2c;font-size:.84rem;font-weight:650;min-width:108px;padding:9px 14px}.dashboard-staff-section-label{color:#5d7468;font-size:.78rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase}.tenant-dashboard .dashboard-staff-list{gap:8px}.tenant-dashboard .dashboard-staff-row{background:#f6f8f3;border:0;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;min-height:62px;padding:10px 13px}.dashboard-staff-divider{border-top:1px solid #e4eadf;margin:7px 0 5px}.dashboard-staff-empty{color:#60766b;font-size:.94rem;margin:4px 0 0}.tenant-dashboard .dashboard-assignment{background:#eff8cf;color:#2c6445}.tenant-dashboard .dashboard-booking-row{grid-template-columns:40px minmax(0,1fr) auto auto;min-height:66px;padding:8px 0}.tenant-dashboard .dashboard-avatar{background:#f0f2e8;height:40px;width:40px}.dashboard-booking-status.is-recent,.dashboard-booking-status.is-source{background:#f0f2e8;color:#295d42}.tenant-dashboard .dashboard-snapshot-card{background:linear-gradient(155deg,#115f40,#073722);border-color:transparent;box-shadow:0 14px 28px #083a2421}.tenant-dashboard .dashboard-snapshot-grid{gap:12px}.tenant-dashboard .dashboard-snapshot-item{border-radius:14px;min-height:88px;padding:15px}.tenant-dashboard .dashboard-snapshot-item strong{font-size:1.65rem}.tenant-dashboard .dashboard-insights-grid{gap:56px;grid-template-columns:minmax(0,1fr);margin-top:56px}.tenant-dashboard .dashboard-insight-card{padding:34px}.tenant-dashboard .dashboard-checkins-card{min-height:430px}.tenant-dashboard .dashboard-risk-card{min-height:0}.tenant-dashboard .dashboard-checkins-chart{height:290px;min-height:290px}.tenant-dashboard .dashboard-insight-heading{margin-bottom:12px}.tenant-dashboard .dashboard-risk-card .dashboard-insight-heading{margin-bottom:18px}.tenant-dashboard .dashboard-risk-list{gap:12px}.tenant-dashboard .dashboard-risk-row{background:#fff7f6;border-color:#ffd7d4;border-radius:18px;gap:10px;grid-template-columns:minmax(0,1fr);min-height:88px;padding:12px 16px}.tenant-dashboard .dashboard-risk-member{gap:13px;grid-template-columns:48px minmax(0,1fr)}.tenant-dashboard .dashboard-risk-avatar{height:48px;width:48px}.tenant-dashboard .dashboard-risk-copy>strong{font-size:.98rem;font-weight:550}.tenant-dashboard .dashboard-risk-copy small{font-size:.72rem;padding:4px 10px}.dashboard-risk-action{align-items:center;display:inline-flex;justify-content:center;min-width:auto;white-space:nowrap}.dashboard-risk-action:hover{background:#fff;border-color:#bfcfba}.dashboard-risk-message{cursor:not-allowed;gap:8px;opacity:1}@media (max-width: 1280px){.tenant-dashboard .dashboard-risk-row{grid-template-columns:minmax(0,1fr)}.tenant-dashboard .dashboard-risk-message{grid-column:2 / -1;justify-self:end}}@media (max-width: 880px){.tenant-dashboard .dashboard-header{align-items:flex-start;flex-direction:column;gap:24px}.tenant-dashboard .header-actions{width:100%}.tenant-dashboard .header-actions>*{flex:1}.tenant-dashboard .dashboard-revenue-card{min-height:350px;padding:22px}.revenue-line-chart,.dashboard-checkins-chart{height:260px;min-height:260px}.tenant-dashboard .dashboard-task-row,.tenant-dashboard .dashboard-staff-row{grid-template-columns:42px minmax(0,1fr) auto}.tenant-dashboard .dashboard-staff-row{grid-template-columns:minmax(0,1fr) auto}.tenant-dashboard .dashboard-risk-row{grid-template-columns:minmax(0,1fr)}.tenant-dashboard .dashboard-tasks-card,.tenant-dashboard .dashboard-staff-card,.tenant-dashboard .dashboard-recent-card,.tenant-dashboard .dashboard-snapshot-card{min-height:0}}@media (max-width: 620px){.tenant-dashboard .welcome-title{font-size:2rem}.tenant-dashboard .header-actions{align-items:stretch;flex-direction:column}.tenant-dashboard .header-actions .dd-trigger[data-variant=filter]{width:100%}.tenant-dashboard .dashboard-booking-row{grid-template-columns:42px minmax(0,1fr)}.tenant-dashboard .dashboard-risk-row{grid-template-columns:minmax(0,1fr)}.tenant-dashboard .dashboard-booking-status.is-recent,.tenant-dashboard .dashboard-booking-status.is-source{grid-column:2;justify-self:start}.tenant-dashboard .dashboard-risk-member{grid-column:1 / -1}.tenant-dashboard .dashboard-risk-action{grid-column:1 / -1;justify-self:stretch}}.sidebar{width:288px;padding:28px 16px 0;overflow:hidden;background:var(--color-sidebar-bg)}.sidebar-header{flex:0 0 auto;gap:10px;padding:2px 8px;margin-bottom:38px}.sidebar-brand{min-width:0;gap:14px;padding:0;color:inherit;text-align:left;background:transparent;border:0}.sidebar-collapse-btn{width:26px;height:26px;border:0;opacity:0}.sidebar-header:hover .sidebar-collapse-btn,.sidebar-collapse-btn:focus-visible{opacity:1}.sidebar-logo-circle{width:48px;height:48px;border-radius:15px;color:#133d2c;background:#d2f653}.sidebar-brand-text{display:flex;flex-direction:column;gap:2px}.sidebar-brand-header-row{display:flex;align-items:center;gap:6px}.sidebar-brand-name{color:#e8f69e;font-size:1.25rem;font-weight:700;line-height:1.15;letter-spacing:-.03em}.sidebar-brand-tag{font-size:.65rem;font-weight:700;letter-spacing:.05em;padding:1px 6px;border-radius:4px;background:#d2f65333;color:#d2f653;text-transform:uppercase;line-height:1.3}.sidebar-client-pill{display:flex;align-items:center;gap:6px;margin-top:2px;padding:2px 8px 2px 6px;background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:12px;max-width:145px;transition:all var(--transition-fast)}.sidebar-brand:hover .sidebar-client-pill{background:#d2f65324;border-color:#d2f65359}.sidebar-client-dot{width:6px;height:6px;border-radius:50%;background:#d2f653;box-shadow:0 0 6px #d2f653cc;flex-shrink:0}.sidebar-client-name{font-size:.76rem;font-weight:600;color:#ffffffeb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav{flex:1;min-height:0;gap:10px;padding:0 0 24px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.nav-section{gap:4px;margin:0}.nav-item{min-height:46px;padding:10px 14px;color:var(--color-sidebar-text);font-size:1rem;font-weight:500;border-radius:14px}.nav-item-content{min-width:0;gap:14px}.nav-item-content>svg{width:21px;height:21px;flex:0 0 21px;stroke-width:1.85}.nav-item:hover{color:#e7f58e;background:var(--color-sidebar-hover)}.nav-item.active,.nav-item.active:hover{color:#133d2c;font-weight:500;background:#d2f653}.nav-item.active-parent{color:var(--color-sidebar-text)}.nav-item.active-parent:hover{color:#e7f58e}.nav-item.nav-item-disabled,.nav-item.nav-item-disabled:hover,.submenu-item.submenu-item-disabled,.submenu-item.submenu-item-disabled:hover{color:var(--color-sidebar-text);background:transparent;cursor:not-allowed;opacity:.45}.nav-chevron{width:18px;height:18px;flex:0 0 18px;opacity:.68}.nav-submenu{display:none;gap:3px;padding:2px 0 2px 24px;margin:0 0 0 24px;border-left:1px solid rgba(213,242,130,.08)}.nav-submenu.open{display:flex}.submenu-item{min-height:39px;gap:14px;padding:9px 12px;color:var(--color-sidebar-text);font-size:.98rem;font-weight:500;border-radius:13px;display:flex;align-items:center}.submenu-item>svg{width:19px;height:19px;flex:0 0 19px;stroke-width:1.85}.submenu-item:hover,.submenu-item.active{color:#e7f58e;font-weight:500;background:var(--color-sidebar-hover)}.sidebar-footer{flex:0 0 auto;gap:20px;padding:0 16px;margin:0 -16px;background:var(--color-sidebar-bg)}.studio-switcher-card{position:relative;display:flex;align-items:center;width:100%;min-height:70px;gap:12px;padding:11px 12px;color:inherit;font:inherit;text-align:left;background:#0d5e3d5c;border:1px solid rgba(255,255,255,.035);border-radius:17px;transition:background var(--transition-fast),border-color var(--transition-fast)}.studio-switcher-card:hover,.studio-switcher-card:focus-within{background:#0d654180;border-color:#d5f2822e}.studio-switcher-copy{display:flex;flex:1;flex-direction:column;min-width:0;gap:1px}.studio-switcher-copy strong{overflow:hidden;color:#e8f69e;font-size:.98rem;font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.studio-switcher-copy span{overflow:hidden;color:var(--color-sidebar-text);font-size:.78rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap;opacity:.76}.studio-switcher-error{cursor:pointer}.studio-switcher-error:active{transform:translateY(1px)}.studio-icon-circle{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;color:#133d2c;background:#d2f653;border-radius:50%}.studio-icon-circle svg{width:20px;height:20px;stroke-width:2.2}.studio-switcher-chevron{width:18px;height:18px;flex:0 0 18px;color:var(--color-sidebar-text);opacity:.7}.studio-switcher-card .studio-switcher-control.dd-trigger[data-variant=filter]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:inherit;opacity:0;cursor:pointer}.sign-out-btn{align-self:stretch;width:calc(100% + 32px);min-height:72px;gap:13px;padding:20px 28px;margin-left:-16px;color:var(--color-sidebar-text);font-size:1rem;font-weight:500;text-align:left;background:transparent;border:0;border-top:1px solid rgba(255,255,255,.055)}.sign-out-btn svg{width:21px;height:21px;stroke-width:1.8}.sign-out-btn:hover{color:#e7f58e;background:#00000009}.main-content{margin-left:288px}.dashboard-layout.collapsed .sidebar{width:76px;padding:24px 10px 0;overflow:visible}.dashboard-layout.collapsed .sidebar-header{flex-direction:column;padding:0;margin-bottom:30px}.dashboard-layout.collapsed .sidebar-brand{width:48px;height:48px}.dashboard-layout.collapsed .sidebar-brand-text,.dashboard-layout.collapsed .nav-item-text,.dashboard-layout.collapsed .nav-chevron,.dashboard-layout.collapsed .studio-switcher-copy,.dashboard-layout.collapsed .studio-switcher-chevron,.dashboard-layout.collapsed .sign-out-btn span{display:none}.dashboard-layout.collapsed .sidebar-nav{overflow:visible}.dashboard-layout.collapsed .nav-item,.dashboard-layout.collapsed .nav-item-content{justify-content:center}.dashboard-layout.collapsed .nav-item{padding-inline:10px}.dashboard-layout.collapsed .studio-switcher-card{min-height:56px;justify-content:center;padding:7px}.dashboard-layout.collapsed .sidebar-footer{margin-inline:-10px;padding-inline:10px}.dashboard-layout.collapsed .sign-out-btn{width:calc(100% + 20px);justify-content:center;padding-inline:0;margin-left:-10px}.dashboard-layout.collapsed .main-content{margin-left:76px}.dashboard-layout.collapsed .nav-submenu{left:calc(100% + 10px);min-width:220px;padding:8px;margin:0;border:1px solid rgba(255,255,255,.08);border-radius:14px}@media (max-width: 900px){.sidebar{width:76px;padding:24px 10px 0;overflow:visible}.sidebar-header{flex-direction:column;padding:0;margin-bottom:30px}.sidebar-brand{width:48px;height:48px}.sidebar-brand-text,.nav-item-text,.nav-chevron,.studio-switcher-copy,.studio-switcher-chevron,.sign-out-btn span{display:none}.sidebar-nav{overflow:visible}.nav-item,.nav-item-content{justify-content:center}.nav-item{padding-inline:10px}.studio-switcher-card{min-height:56px;justify-content:center;padding:7px}.sidebar-footer{margin-inline:-10px;padding-inline:10px}.sign-out-btn{width:calc(100% + 20px);justify-content:center;padding-inline:0;margin-left:-10px}.main-content{margin-left:76px}.nav-submenu,.nav-submenu.open{left:calc(100% + 10px);min-width:220px;padding:8px;margin:0;border:1px solid rgba(255,255,255,.08);border-radius:14px}}.dashboard-date-range-filter{align-items:flex-end;display:flex;flex-direction:column;gap:10px}.dashboard-custom-range{align-items:flex-end;display:flex;gap:10px}.dashboard-custom-range label{color:#587264;display:flex;flex-direction:column;font-size:.72rem;font-weight:650;gap:5px;letter-spacing:.02em}.dashboard-custom-range input{background:#fff;border:1px solid #e0e6dc;border-radius:12px;color:#173f2d;font:inherit;font-size:.86rem;min-height:40px;padding:0 10px}.dashboard-custom-range input:focus-visible{border-color:#89a97b;box-shadow:0 0 0 3px #89a97b29;outline:none}@media (max-width: 620px){.dashboard-date-range-filter,.dashboard-custom-range{align-items:stretch;width:100%}.dashboard-custom-range label,.dashboard-custom-range input{min-width:0;width:100%}}.platform-dashboard{--platform-ink: #123c2d;--platform-muted: #668077;--platform-line: #dce8d8;--platform-soft: #f4f9f0;display:grid;gap:22px;max-width:1440px;margin:0 auto}.platform-dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px}.platform-dashboard-header h1,.platform-dashboard-error h1{margin:4px 0 7px;color:var(--platform-ink);font-size:clamp(1.9rem,3vw,2.65rem);line-height:1;letter-spacing:-.045em}.platform-dashboard-header p,.platform-dashboard-error p{max-width:650px;margin:0;color:var(--platform-muted);font-size:.94rem;line-height:1.55}.platform-eyebrow,.platform-panel-label{color:#6c8f7f;font-size:.7rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.platform-overview-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.65fr);gap:18px}.platform-network-panel,.platform-activity-panel,.platform-recent-panel,.platform-health-panel,.platform-dashboard-error{border:1px solid var(--platform-line);border-radius:22px;background:#fff;box-shadow:0 16px 38px -30px #14433180}.platform-network-panel{display:flex;min-height:292px;flex-direction:column;padding:26px;overflow:hidden;color:#f5fbf2;background:#154c38;border-color:#154c38}.platform-network-heading,.platform-panel-heading,.platform-rate-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.platform-network-panel .platform-panel-label{color:#b8d8c1}.platform-live-status{display:inline-flex;align-items:center;gap:7px;color:#d9eccd;font-size:.72rem;font-weight:700}.platform-live-status>span{width:7px;height:7px;border-radius:999px;background:#cde77f;box-shadow:0 0 0 4px #cde77f1f;animation:platform-status-pulse 2.4s ease-in-out infinite}.platform-network-total{display:flex;align-items:baseline;gap:12px;margin-top:34px}.platform-network-total strong{font-size:clamp(3.6rem,6vw,5.3rem);line-height:.82;letter-spacing:-.07em}.platform-network-total span{max-width:84px;color:#c7ddd0;font-size:.84rem;font-weight:700;line-height:1.2}.platform-network-panel>p{margin:15px 0 28px;color:#b9d0c3;font-size:.83rem;line-height:1.5}.platform-network-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:auto;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#ffffff1f}.platform-network-stats>div{display:grid;gap:5px;padding:15px;background:#ffffff0e}.platform-network-stats span{color:#a9c5b5;font-size:.7rem;font-weight:700}.platform-network-stats strong{color:#f4fadf;font-size:1.35rem}.platform-activity-panel,.platform-recent-panel,.platform-health-panel{padding:26px}.platform-panel-heading h2{margin:4px 0 0;color:var(--platform-ink);font-size:1.12rem;letter-spacing:-.02em}.platform-activity-caption{color:var(--platform-muted);font-size:.75rem;font-weight:650}.platform-activity-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:30px;border-block:1px solid var(--platform-line)}.platform-activity-metrics>div{display:grid;gap:8px;padding:28px 18px;border-right:1px solid var(--platform-line)}.platform-activity-metrics>div:first-child{padding-left:0}.platform-activity-metrics>div:last-child{border-right:0}.platform-activity-metrics strong{color:var(--platform-ink);font-size:clamp(1.65rem,3vw,2.45rem);line-height:1;letter-spacing:-.045em}.platform-activity-metrics span,.platform-rate-row>span{color:var(--platform-muted);font-size:.72rem;font-weight:700}.platform-rate-row{margin-top:24px}.platform-rate-track{height:7px;flex:1;overflow:hidden;border-radius:999px;background:#e9f0e6}.platform-rate-track>span{display:block;width:100%;height:100%;border-radius:inherit;background:#5f8f74;transform-origin:left center;transition:transform .5s cubic-bezier(.16,1,.3,1)}.platform-rate-row>strong{min-width:45px;color:var(--platform-ink);font-size:.8rem;text-align:right}.platform-detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.72fr);gap:18px;align-items:stretch}.platform-text-link{color:#2f684f;font-size:.78rem;font-weight:750;text-decoration:none}.platform-text-link:hover{text-decoration:underline;text-underline-offset:3px}.platform-client-list{display:grid;margin-top:18px}.platform-client-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:15px 0;border-top:1px solid var(--platform-line);animation:platform-row-enter .42s both cubic-bezier(.16,1,.3,1)}.platform-client-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#285945;background:#e8f2e2;font-size:.72rem;font-weight:850;letter-spacing:.03em}.platform-client-copy{display:grid;min-width:0;gap:4px}.platform-client-copy strong{overflow:hidden;color:var(--platform-ink);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.platform-client-copy span{overflow:hidden;color:var(--platform-muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.platform-client-status{padding:5px 9px;border-radius:999px;font-size:.68rem;font-weight:800}.platform-client-status.is-active{color:#2e674e;background:#e8f3e1}.platform-client-status.is-inactive{color:#8a5a35;background:#fbefe1}.platform-client-action,.platform-retry-button{border:1px solid #bfd4c3;border-radius:11px;color:#24533f;background:#f6faf2;font-size:.72rem;font-weight:800;cursor:pointer;transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .18s ease,background-color .18s ease}.platform-client-action{padding:8px 11px}.platform-client-action:hover,.platform-retry-button:hover{border-color:#7da38a;background:#edf6e8}.platform-client-action:active,.platform-retry-button:active{transform:translateY(1px)}.platform-client-action:disabled{cursor:wait;opacity:.58}.platform-client-action-placeholder{min-width:96px;color:#94a39c;font-size:.7rem;font-weight:700;text-align:center}.platform-health-panel{display:flex;flex-direction:column}.platform-health-total{display:grid;gap:5px;margin:26px 0 17px}.platform-health-total strong{color:var(--platform-ink);font-size:clamp(2.8rem,5vw,4.2rem);line-height:.9;letter-spacing:-.06em}.platform-health-total span{color:var(--platform-muted);font-size:.8rem;font-weight:700}.platform-client-rate{flex:initial;width:100%}.platform-health-list{display:grid;gap:0;margin:25px 0 0}.platform-health-list>div{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid var(--platform-line)}.platform-health-list dt{color:var(--platform-muted);font-size:.76rem;font-weight:700}.platform-health-list dd{margin:0;color:var(--platform-ink);font-size:.9rem;font-weight:850}.platform-data-note{margin:auto 0 0;padding-top:22px;color:#7b8e86;font-size:.72rem;line-height:1.55}.platform-empty-state{display:grid;place-items:start;min-height:220px;align-content:center;margin-top:18px;padding:28px;border:1px dashed #cbdcc9;border-radius:16px;background:var(--platform-soft)}.platform-empty-state strong{color:var(--platform-ink)}.platform-empty-state p{margin:6px 0 16px;color:var(--platform-muted);font-size:.82rem}.platform-empty-state a{color:#2d624b;font-size:.78rem;font-weight:800}.platform-dashboard-error{display:grid;max-width:680px;padding:34px}.platform-retry-button{width:fit-content;margin-top:22px;padding:10px 15px}.platform-skeleton{position:relative;overflow:hidden;border-radius:20px;background:#e9f0e6}.platform-skeleton:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.65) 48%,transparent 76%);transform:translate(-100%);animation:platform-skeleton-shimmer 1.35s infinite}.platform-skeleton-title{width:min(440px,70%);height:72px}.platform-skeleton-filter{width:132px;height:42px}.platform-skeleton-network,.platform-skeleton-activity{min-height:292px}.platform-skeleton-detail{min-height:340px}@keyframes platform-status-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.78);opacity:.68}}@keyframes platform-row-enter{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes platform-skeleton-shimmer{to{transform:translate(100%)}}@media (max-width: 1050px){.platform-overview-grid,.platform-detail-grid{grid-template-columns:1fr}.platform-network-panel{min-height:260px}}@media (max-width: 760px){.platform-dashboard{gap:16px}.platform-dashboard-header{flex-direction:column;gap:16px}.platform-activity-metrics{grid-template-columns:repeat(2,1fr)}.platform-activity-metrics>div{padding:20px 14px}.platform-activity-metrics>div:nth-child(2){border-right:0}.platform-activity-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--platform-line)}.platform-activity-metrics>div:nth-child(3){padding-left:0}.platform-client-row{grid-template-columns:42px minmax(0,1fr) auto}.platform-client-status{display:none}.platform-client-action,.platform-client-action-placeholder{grid-column:2 / -1;width:fit-content;min-width:0}}@media (max-width: 480px){.platform-network-panel,.platform-activity-panel,.platform-recent-panel,.platform-health-panel,.platform-dashboard-error{padding:20px;border-radius:18px}.platform-network-stats{grid-template-columns:1fr}.platform-panel-heading{align-items:flex-start}.platform-text-link{max-width:90px;text-align:right}.platform-rate-row{display:grid;grid-template-columns:1fr auto}.platform-rate-track{grid-column:1 / -1;grid-row:2}}@media (prefers-reduced-motion: reduce){.platform-live-status>span,.platform-client-row,.platform-skeleton:after{animation:none}.platform-rate-track>span,.platform-client-action,.platform-retry-button{transition:none}}.dashboard-view-shell{display:grid;gap:22px}.dashboard-view-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-height:42px}.dashboard-view-copy{display:grid;gap:2px;text-align:right}.dashboard-view-copy span{color:var(--color-text-secondary);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-view-copy strong{max-width:240px;overflow:hidden;color:var(--color-text-primary);font-size:.78rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.dashboard-view-toggle{display:grid;grid-template-columns:repeat(2,minmax(88px,1fr));gap:3px;padding:4px;border:1px solid #d7e4d3;border-radius:13px;background:#edf4e9}.dashboard-view-toggle button{min-height:34px;padding:7px 14px;border:0;border-radius:9px;color:#61766d;background:transparent;font:inherit;font-size:.76rem;font-weight:800;cursor:pointer;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s cubic-bezier(.16,1,.3,1)}.dashboard-view-toggle button:hover:not(:disabled):not(.is-active){color:#285943;background:#ffffff94}.dashboard-view-toggle button.is-active{color:#174d38;background:#fff;box-shadow:0 5px 14px -10px #1443319e}.dashboard-view-toggle button:active:not(:disabled){transform:translateY(1px)}.dashboard-view-toggle button:focus-visible{outline:2px solid #477b63;outline-offset:2px}@media (max-width: 560px){.dashboard-view-toolbar{align-items:stretch;flex-direction:column}.dashboard-view-copy{text-align:left}.dashboard-view-copy strong{max-width:100%}.dashboard-view-toggle{width:100%}}@media (prefers-reduced-motion: reduce){.dashboard-view-toggle button{transition:none}}.class-list-stack{display:grid;gap:18px}.class-list-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.class-list-intro,.class-form-note{margin:0;color:var(--color-text-secondary);font-size:.9rem;line-height:1.55}.class-list-intro{max-width:720px}.class-list-new,.class-list-schedule,.class-list-edit,.class-list-pagination button{border:0;font-family:inherit;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.class-list-new{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px 16px;border-radius:14px;background:var(--color-accent-lime);color:var(--color-accent-lime-text);font-size:.85rem;font-weight:700}.class-list-new:hover{background:var(--color-accent-lime-hover);transform:translateY(-1px)}.class-list-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:16px;background:var(--color-card-bg)}.class-list-table{width:100%;table-layout:fixed;border-collapse:collapse;color:var(--color-text-primary);font-size:.86rem}.class-list-table th{padding:13px 10px;border-bottom:1px solid var(--color-border);background:#f7f8f2;color:var(--color-text-secondary);font-size:.75rem;font-weight:600;text-align:left;white-space:normal}.class-list-table td{overflow:hidden;padding:15px 10px;border-bottom:1px solid var(--color-border);font-weight:500;vertical-align:middle;white-space:nowrap;text-overflow:ellipsis}.class-list-table th:nth-child(1){width:16%}.class-list-table th:nth-child(2){width:13%}.class-list-table th:nth-child(3){width:13%}.class-list-table th:nth-child(4),.class-list-table th:nth-child(5),.class-list-table th:nth-child(6),.class-list-table th:nth-child(7){width:8%}.class-list-table th:nth-child(8){width:17%}.class-list-table th:nth-child(9){width:9%}.class-list-table tbody tr:last-child td{border-bottom:0}.class-list-row{cursor:pointer}.class-list-row:hover{background:#f4faefa6}.class-list-row:focus-visible{position:relative;z-index:1;outline:2px solid var(--color-dark-green);outline-offset:-2px}.class-list-table td:nth-child(8),.class-list-table td:nth-child(9){overflow:visible}.class-list-name{font-weight:700!important}.class-list-category{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf3e2;color:var(--color-dark-green);font-size:.76rem;font-weight:700}.class-list-availability,.class-list-actions{display:flex;align-items:center}.class-list-availability{gap:9px}.class-list-switch{position:relative;width:44px;height:24px;flex:0 0 auto;padding:0;border:0;border-radius:999px;background:#cdd8d0;cursor:pointer;transition:background-color var(--transition-fast)}.class-list-switch span{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #113f2a38;transition:transform var(--transition-fast)}.class-list-switch[data-checked=true]{background:var(--color-accent-lime)}.class-list-switch[data-checked=true] span{transform:translate(20px)}.class-list-switch:disabled{cursor:wait;opacity:.65}.class-list-actions{justify-content:flex-end;gap:8px}.class-list-actions-heading{text-align:right!important}.class-list-schedule{padding:8px 6px;background:transparent;color:var(--color-dark-green);font-size:.78rem;font-weight:700}.class-list-schedule:hover:not(:disabled){color:var(--color-sidebar-active);text-decoration:underline;text-underline-offset:3px}.class-list-schedule:disabled{cursor:not-allowed;opacity:.4}.class-list-edit{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:10px;background:var(--color-card-bg);color:var(--color-dark-green)}.class-list-edit:hover{background:var(--color-input-bg)}.class-list-empty,.class-list-error{padding:54px 20px;border:1px dashed var(--color-border);border-radius:16px;text-align:center;color:var(--color-text-secondary)}.class-list-error{color:var(--color-negative)}.class-list-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--color-text-secondary);font-size:.82rem}.class-list-pagination>div{display:flex;gap:8px}.class-list-pagination button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-card-bg);color:var(--color-dark-green)}.class-list-pagination button:disabled{cursor:not-allowed;opacity:.4}.class-form-readonly{min-height:50px;display:flex;align-items:center;padding:14px 16px;border:1.5px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffff8c;color:var(--color-text-secondary);font-size:.95rem}.class-edit-availability{display:flex;align-items:center;gap:10px;color:var(--color-dark-green);font-size:.9rem;font-weight:700;cursor:pointer}.class-edit-availability input{width:18px;height:18px;accent-color:var(--color-dark-green)}.class-schedule-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px;border:1px solid var(--color-border);border-radius:16px;background:#ffffff8f}.class-schedule-summary div{display:grid;gap:4px;min-width:0}.class-schedule-summary span{color:var(--color-text-secondary);font-size:.72rem}.class-schedule-summary strong{overflow:hidden;color:var(--color-dark-green);font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.class-schedule-weekdays{display:flex;flex-wrap:wrap;gap:6px}@media (max-width: 760px){.class-list-toolbar{align-items:stretch;flex-direction:column;gap:14px}.class-list-new{width:100%}.class-list-table-wrap{overflow:visible;border:0;background:transparent}.class-list-table{min-width:0}.class-list-table thead{display:none}.class-list-table,.class-list-table tbody,.class-list-table tr,.class-list-table td{display:block;width:100%}.class-list-table tbody{display:grid;gap:12px}.class-list-table tr{padding:14px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-card-bg)}.class-list-table td{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px;padding:8px 0;border-bottom:1px solid var(--color-border);white-space:normal;text-align:right}.class-list-table td:before{content:attr(data-label);color:var(--color-text-secondary);font-size:.72rem;font-weight:700;letter-spacing:.02em;text-align:left;text-transform:uppercase}.class-list-table td:last-child{border-bottom:0}.class-list-actions{flex:1}.class-list-schedule{flex:1;justify-content:center}.class-schedule-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 440px){.class-list-pagination{align-items:flex-start;flex-direction:column}.class-schedule-summary{grid-template-columns:1fr}}.class-detail-page{display:grid;gap:20px}.class-detail-header,.class-detail-heading,.class-detail-title-row,.class-detail-panel-header,.class-detail-metric,.class-detail-fact,.class-detail-session{display:flex;align-items:center}.class-detail-header{justify-content:space-between;gap:18px;flex-wrap:wrap}.class-detail-heading{align-items:flex-start;gap:14px;min-width:0}.class-detail-title-row{gap:10px;flex-wrap:wrap}.class-detail-title-row h1{margin:0;color:var(--color-dark-green);font-size:clamp(1.6rem,3vw,2rem);line-height:1.15}.class-detail-heading p{margin:5px 0 0;color:var(--color-text-secondary)}.class-detail-status,.class-detail-session-count{border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:700}.class-detail-status.is-active{color:#0b7a4b;background:#ecfdf5}.class-detail-status.is-inactive{color:#b91c1c;background:#fef2f2}.class-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.class-detail-metric,.class-detail-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-card-bg);box-shadow:var(--shadow-sm)}.class-detail-metric{gap:12px;padding:16px}.class-detail-metric-icon,.class-detail-fact-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--color-dark-green);background:var(--color-input-bg)}.class-detail-metric-icon{width:38px;height:38px;border-radius:11px}.class-detail-metric div,.class-detail-fact div,.class-detail-session-date,.class-detail-session-occupancy{display:grid;gap:3px;min-width:0}.class-detail-metric span:not(.class-detail-metric-icon),.class-detail-fact span,.class-detail-session span,.class-detail-audit{color:var(--color-text-secondary);font-size:.78rem}.class-detail-metric strong{color:var(--color-text-primary);font-size:.98rem}.class-detail-content-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:20px;align-items:start}.class-detail-panel{padding:20px}.class-detail-panel-header{justify-content:space-between;gap:12px;margin-bottom:18px}.class-detail-eyebrow{margin:0 0 4px;color:var(--color-text-secondary);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.class-detail-panel h2{margin:0;color:var(--color-dark-green);font-size:1.05rem}.class-detail-session-count{min-width:28px;text-align:center;color:var(--color-accent-lime-text);background:var(--color-accent-lime)}.class-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--color-border);border-left:1px solid var(--color-border)}.class-detail-fact{gap:10px;padding:14px;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.class-detail-fact-icon{width:32px;height:32px;border-radius:9px}.class-detail-fact strong{overflow:hidden;color:var(--color-text-primary);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.class-detail-audit{display:flex;gap:14px;margin-top:14px;flex-wrap:wrap}.class-detail-session-list,.class-detail-session-loading{display:grid}.class-detail-session{gap:14px;min-height:66px;padding:11px 4px;border-top:1px solid var(--color-border);color:inherit;text-decoration:none;transition:background-color var(--transition-fast),transform var(--transition-fast)}.class-detail-session:hover{background:var(--color-input-bg);transform:translate(2px)}.class-detail-session:active{transform:translate(2px) scale(.99)}.class-detail-session:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--color-dark-green);outline-offset:2px}.class-detail-session-date{flex:1 1 auto}.class-detail-session-date strong,.class-detail-session-occupancy strong{color:var(--color-text-primary);font-size:.86rem}.class-detail-session-occupancy{flex:0 0 auto;text-align:right}.class-detail-session-chevron{flex:0 0 auto;color:var(--color-text-secondary);transition:transform var(--transition-fast)}.class-detail-session:hover .class-detail-session-chevron{transform:translate(2px)}.class-detail-empty,.class-detail-inline-error,.class-detail-error{border-radius:var(--radius-md);padding:24px}.class-detail-empty{display:grid;justify-items:center;gap:6px;color:var(--color-text-secondary);text-align:center;background:var(--color-input-bg)}.class-detail-empty strong{color:var(--color-text-primary)}.class-detail-empty span{font-size:.82rem}.class-detail-inline-error,.class-detail-error{border:1px solid #fee2e2;color:#b91c1c;background:#fef2f2}.class-detail-skeleton{overflow:hidden;position:relative;background:var(--color-input-bg)}.class-detail-skeleton:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);content:"";transform:translate(-100%);animation:class-detail-shimmer 1.4s infinite}.class-detail-skeleton-title{width:min(360px,70%);height:42px;border-radius:var(--radius-sm)}.class-detail-skeleton-card{height:72px;border-radius:var(--radius-md)}.class-detail-skeleton-panel{height:280px;border-radius:var(--radius-md)}.class-detail-skeleton-session{height:66px;border-top:1px solid var(--color-border)}@keyframes class-detail-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion: reduce){.class-detail-skeleton:after{animation:none}.class-detail-session,.class-detail-session-chevron{transition:none}}@media (max-width: 900px){.class-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.class-detail-content-grid{grid-template-columns:1fr}}@media (max-width: 560px){.class-detail-header{align-items:stretch}.class-detail-header>a{justify-content:center}.class-detail-metrics,.class-detail-facts{grid-template-columns:1fr}.class-detail-session{align-items:flex-start;flex-wrap:wrap}.class-detail-session-occupancy{margin-left:0;text-align:left}.class-detail-session-chevron{margin-left:auto}}.bookings-page{display:grid;gap:22px;min-width:0}.bookings-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}.bookings-header h1{margin:0;color:var(--color-dark-green);font-size:2rem;font-weight:800;letter-spacing:-.03em}.bookings-header p{margin:5px 0 0;color:var(--color-text-secondary);font-size:.95rem}.bookings-header-actions,.booking-modal-actions{display:flex;align-items:center;gap:10px}.booking-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;border:1px solid transparent;border-radius:14px;font-family:inherit;font-size:.86rem;font-weight:700;cursor:pointer;transition:transform var(--transition-fast),background-color var(--transition-fast),opacity var(--transition-fast)}.booking-btn:hover:not(:disabled){transform:translateY(-1px)}.booking-btn:disabled{cursor:not-allowed;opacity:.5}.booking-btn.primary{background:var(--color-accent-lime);color:var(--color-accent-lime-text)}.booking-btn.primary:hover:not(:disabled){background:var(--color-accent-lime-hover)}.booking-btn.secondary{border-color:var(--color-border);background:var(--color-card-bg);color:var(--color-dark-green)}.bookings-filters{display:grid;gap:12px;padding:16px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-card-bg);box-shadow:var(--shadow-sm)}.bookings-search,.booking-session-search{display:flex;align-items:center;gap:9px;min-width:0;border:1px solid var(--color-border);border-radius:13px;background:var(--color-input-bg);color:var(--color-text-secondary)}.bookings-search{min-height:43px;padding:0 13px}.bookings-search input,.booking-session-search input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--color-text-primary);font:inherit}.bookings-filter-row{display:grid;grid-template-columns:repeat(6,minmax(132px,1fr)) auto;align-items:center;gap:9px}.bookings-result-count{justify-self:end;color:var(--color-text-secondary);font-size:.78rem;white-space:nowrap}.bookings-custom-range{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.bookings-custom-range label{display:flex;align-items:center;gap:7px;color:var(--color-text-secondary);font-size:.78rem;font-weight:700}.bookings-custom-range input{padding:8px 10px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-input-bg);color:var(--color-text-primary);font:inherit}.bookings-table-shell{width:100%;overflow-x:auto;border:1px solid var(--color-border);border-radius:18px;background:var(--color-card-bg);box-shadow:var(--shadow-sm)}.bookings-table{width:100%;min-width:1040px;border-collapse:collapse;color:var(--color-text-primary);font-size:.84rem}.bookings-table th{padding:15px 16px;border-bottom:1px solid var(--color-border);background:#f7f8f2;color:var(--color-text-secondary);font-size:.76rem;font-weight:600;text-align:left;white-space:nowrap}.bookings-table td{padding:16px;border-bottom:1px solid var(--color-border);vertical-align:middle}.bookings-table tbody tr:last-child td{border-bottom:0}.bookings-table tbody tr{transition:background-color var(--transition-fast)}.bookings-table tbody tr:hover{background:#f4faefa8}.bookings-table td:nth-child(1),.bookings-table td:nth-child(2){min-width:160px}.bookings-table td small{display:block;margin-top:4px;color:var(--color-text-secondary);font-size:.74rem}.booking-member-link{padding:0;border:0;background:transparent;color:var(--color-dark-green);font:inherit;font-weight:700;cursor:pointer}.booking-member-link:hover{text-decoration:underline;text-underline-offset:3px}.booking-chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap}.status-confirmed{background:#edf5fb;color:#39708d}.status-attended{background:#eaf4e8;color:#3b754f}.status-cancelled,.status-no-show{background:#fff0ef;color:#b94742}.source-member,.source-walk-in,.source-trial{background:#f2f8d7;color:#42652e}.source-trial{background:#f4effd;color:#6d4ba0}.payment-untracked{background:#f1f2ef;color:#717a72}.payment-status-paid{background-color:#eaf4e8;color:#3b754f}.payment-status-pending{background-color:#fff0ef;color:#b94742}.payment-status-membership,.payment-status-paid{background-color:#e2f2e5;color:#2b6138}.payment-status-free{background-color:#f1f2ef;color:#717a72}.booking-attend{display:inline-flex;align-items:center;gap:7px;padding:7px 8px;border:0;background:transparent;color:var(--color-dark-green);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.booking-attend:hover:not(:disabled){color:#2e754c;text-decoration:underline;text-underline-offset:3px}.booking-attend:disabled{cursor:wait;opacity:.5}.bookings-state{padding:52px 20px;color:var(--color-text-secondary);text-align:center}.bookings-state.error{border:1px solid #f1c6c3;border-radius:16px;background:#fff5f4;color:var(--color-negative)}.booking-create-stack{display:grid;gap:18px}.booking-create-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:13px;background:#eef2e8}.booking-create-tabs button{min-height:38px;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:var(--color-text-secondary);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.booking-create-tabs button.active{background:var(--color-card-bg);color:var(--color-dark-green);box-shadow:0 1px 3px #113f2a14}.booking-create-grid{display:grid;grid-template-columns:minmax(230px,.9fr) minmax(320px,1.3fr);gap:18px;min-height:410px}.booking-create-details{display:grid;align-content:start;gap:15px}.booking-field{display:grid;gap:7px;color:var(--color-dark-green);font-size:.8rem;font-weight:700}.booking-field>input{min-height:43px;padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;outline:none;background:var(--color-card-bg);color:var(--color-text-primary);font:inherit}.booking-field>input:focus,.booking-session-search:focus-within{border-color:var(--color-dark-green);box-shadow:0 0 0 3px #113f2a14}.booking-schema-note{padding:11px 12px;border:1px solid #d9ddd4;border-radius:12px;background:#f1f2ef;color:#6c746c;font-size:.74rem;line-height:1.45}.booking-session-picker{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:10px;min-height:0}.booking-session-label{color:var(--color-dark-green);font-size:.8rem;font-weight:700}.booking-session-search{min-height:41px;padding:0 11px;background:var(--color-card-bg)}.booking-session-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.booking-session-list{display:grid;align-content:start;gap:8px;max-height:320px;overflow-y:auto;padding:9px;border:1px solid var(--color-border);border-radius:14px;background:#ffffff73}.booking-session-card{display:grid;gap:7px;width:100%;padding:12px;border:1px solid var(--color-border);border-radius:13px;background:var(--color-card-bg);color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer}.booking-session-card:hover,.booking-session-card.selected{border-color:#adc987;background:#f7fce9}.booking-session-card.selected{box-shadow:0 0 0 2px #b5dd5b47}.booking-session-card-top,.booking-session-card-top>span,.booking-session-meta,.booking-session-meta>span{display:flex;align-items:center}.booking-session-card-top{justify-content:space-between;gap:10px}.booking-session-card-top>span{gap:7px;min-width:0}.booking-session-card-top small{padding:3px 6px;border-radius:999px;background:#f2f8d7;color:#4a6d32;font-size:.66rem}.booking-session-meta{gap:11px;color:var(--color-text-secondary);font-size:.7rem;flex-wrap:wrap}.booking-session-meta>span{gap:4px}.booking-session-state{padding:38px 12px;color:var(--color-text-secondary);font-size:.78rem;text-align:center}.booking-form-error{padding:10px 12px;border-radius:11px;background:#fff0ef;color:var(--color-negative);font-size:.8rem}.booking-modal-actions{justify-content:flex-end}@media (max-width: 1120px){.bookings-filter-row{grid-template-columns:repeat(3,minmax(150px,1fr))}.bookings-result-count{grid-column:1 / -1}}@media (max-width: 760px){.bookings-page{gap:16px}.bookings-header{display:grid;grid-template-columns:minmax(0,1fr)}.bookings-header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-btn{width:100%}.bookings-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.bookings-result-count{grid-column:1 / -1}.booking-create-grid{grid-template-columns:1fr;min-height:0}.booking-session-list{max-height:310px}}@media (max-width: 480px){.bookings-header h1{font-size:1.7rem}.bookings-header-actions,.bookings-filter-row,.booking-session-filters{grid-template-columns:1fr}.booking-create-tabs button{padding-inline:6px;font-size:.74rem}.booking-modal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}.reports-page{--reports-purple: #9333ea;width:100%;max-width:calc(100vw - 340px);min-width:0;padding-bottom:36px;color:var(--color-text-primary)}.reports-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.reports-page-kicker{display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;color:#507062;font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.reports-page-header h1{margin:0 0 3px;color:var(--color-dark-green);font-size:1.55rem;font-weight:750;letter-spacing:-.045em;line-height:1.12}.dashboard-layout.collapsed .reports-page{max-width:calc(100vw - 152px)}.reports-page-header p{margin:0;color:var(--color-text-secondary);font-size:.94rem;font-weight:450}.reports-filter-card{display:flex;flex-wrap:wrap;align-items:center;gap:9px;min-height:58px;padding:10px 12px;margin-bottom:18px;background:#ffffffe0;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 2px 8px #113f2a05}.reports-filter-label{display:inline-flex;align-items:center;gap:6px;padding:0 2px;color:var(--color-text-secondary);font-size:.78rem;font-weight:600;white-space:nowrap}.reports-preset-group,.reports-granularity{display:inline-flex;align-items:center;padding:3px;background:#f2f5ef;border:1px solid #e9eee7;border-radius:999px}.reports-preset-group button,.reports-granularity button{min-height:28px;padding:0 13px;color:#53675d;background:transparent;border:0;border-radius:999px;font:inherit;font-size:.74rem;font-weight:550;cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.reports-preset-group button:hover,.reports-granularity button:hover{color:var(--color-dark-green)}.reports-preset-group button.active,.reports-granularity button.active{color:var(--color-dark-green);background:#fff;box-shadow:0 1px 4px #113f2a1a}.reports-filter-card .dd-trigger[data-variant=filter]{min-width:154px;min-height:36px;padding:8px 12px;color:var(--color-text-primary);background:#f7f8f4;border-color:#e4e9e1;border-radius:999px;font-size:.75rem;font-weight:550}.reports-custom-range{display:flex;align-items:center;gap:8px;margin-left:auto}.reports-custom-range label{display:flex;align-items:center;gap:6px;color:var(--color-text-secondary);font-size:.68rem;font-weight:700;text-transform:uppercase}.reports-custom-range input{min-height:36px;padding:7px 10px;color:var(--color-text-primary);background:#f7f8f4;border:1px solid #e4e9e1;border-radius:999px;outline:none}.reports-custom-range input:focus-visible,.reports-preset-group button:focus-visible,.reports-granularity button:focus-visible,.reports-tabs button:focus-visible,.reports-export-button:focus-visible,.reports-icon-button:focus-visible{outline:3px solid rgba(213,242,130,.62);outline-offset:2px}.reports-tabs-scroll{width:100%;overflow-x:auto;scrollbar-width:none}.reports-tabs-scroll::-webkit-scrollbar{display:none}.reports-tabs{display:flex;align-items:stretch;width:max-content;min-width:100%;border-bottom:1px solid #dbe5dd}.reports-tabs button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:50px;padding:0 17px;color:#4e6458;background:transparent;border:0;font:inherit;font-size:.82rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.reports-tabs button:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--color-accent-lime);content:"";opacity:0;transform:scaleX(.45);transition:opacity var(--transition-normal),transform var(--transition-normal)}.reports-tabs button:hover{color:var(--color-dark-green);background:#ffffff6b}.reports-tabs button:disabled{color:#849389;cursor:not-allowed;opacity:.5}.reports-tabs button:disabled:hover{color:#849389;background:transparent}.reports-tabs button.active{color:var(--color-dark-green);font-weight:650}.reports-tabs button.active:after{opacity:1;transform:scaleX(1)}.reports-toolbar{display:flex;align-items:center;justify-content:space-between;min-height:66px;gap:16px}.reports-toolbar-context,.reports-toolbar-actions{display:flex;align-items:center;gap:8px}.reports-toolbar-context{min-width:0}.reports-source-note{display:inline-flex;align-items:center;gap:7px;color:#715381;font-size:.7rem;font-weight:600;line-height:1.35}.reports-source-note i{width:7px;height:7px;flex:0 0 7px;background:var(--reports-purple);border-radius:50%;box-shadow:0 0 0 3px #9333ea17}.reports-export-button,.reports-icon-button,.report-state-card button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:0 14px;color:var(--color-dark-green);background:#ffffffd1;border:1px solid var(--color-border);border-radius:999px;font:inherit;font-size:.73rem;font-weight:650;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.reports-icon-button{width:36px;padding:0}.reports-export-button:hover:not(:disabled),.reports-icon-button:hover:not(:disabled),.report-state-card button:hover{background:#fff;border-color:#c6d6ca;transform:translateY(-1px)}.reports-export-button:disabled{cursor:not-allowed;opacity:.45}.reports-icon-spin{animation:reports-spin 1s linear infinite}@keyframes reports-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reports-last-updated{font-size:.72rem;font-weight:550;color:var(--color-text-secondary, #64748b);white-space:nowrap}.reports-pending-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#fef3c7;color:#b45309;font-size:.7rem;font-weight:650;white-space:nowrap}.reports-pending-badge i{width:6px;height:6px;flex:0 0 6px;background:#b45309;border-radius:50%}.reports-icon-button--pending{border-color:#f6d38a;background:#fffaf0}.reports-panel,.report-panel-stack{width:100%;min-width:0}.report-panel-stack{display:flex;flex-direction:column;gap:20px}.reports-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.reports-kpi-grid.dense{grid-template-columns:repeat(4,minmax(0,1fr))}.reports-kpi-grid .kpi-card{min-height:136px;padding:22px 24px;border-color:#e0e8e1;border-radius:18px;box-shadow:0 2px 8px #113f2a06}.reports-kpi-grid .kpi-card:hover{box-shadow:0 8px 18px #113f2a0d}.reports-kpi-grid .kpi-card-title{color:#52665b;font-size:.81rem;font-weight:520}.reports-kpi-grid .kpi-icon-wrapper{width:34px;height:34px;background:#f0f4ed;border-radius:10px}.reports-kpi-grid .kpi-card-value{font-size:clamp(1.55rem,2.2vw,1.9rem);letter-spacing:-.045em;overflow-wrap:anywhere}.reports-kpi-grid .kpi-card.static-variant{background:linear-gradient(135deg,rgba(147,51,234,.035),transparent 58%),#fff;border-color:color-mix(in srgb,var(--reports-purple) 20%,#e0e8e1)}.report-grid{display:grid;gap:20px}.report-grid-even{grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid-wide{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr)}.report-card{min-width:0;overflow:hidden;background:var(--color-card-bg);border:1px solid #dce6de;border-radius:18px;box-shadow:0 2px 8px #113f2a06}.report-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 0}.report-card-header h3{margin:0;color:var(--color-dark-green);font-size:.94rem;font-weight:680;letter-spacing:-.025em}.report-card-eyebrow{display:block;margin-bottom:3px;color:var(--color-text-secondary);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.report-card-body{min-width:0;padding:20px 22px 22px}.report-table-card .report-card-body{padding:14px 0 0}.report-table-card .report-card-body>div{border:0!important;border-top:1px solid var(--color-border)!important;border-radius:0!important;box-shadow:none!important}.report-table-card table th{padding:12px 18px!important;color:#718077!important;background:#fafbf8;font-size:.67rem!important;font-weight:700!important}.report-table-card table td{padding:14px 18px!important;color:#243a2e!important;font-size:.78rem}.report-table-card table tbody tr:last-child{border-bottom:0!important}.report-table-primary{display:flex;flex-direction:column;gap:3px;min-width:120px}.report-table-primary strong{color:var(--color-dark-green);font-size:.8rem}.report-table-primary span{color:var(--color-text-secondary);font-size:.69rem}.report-score,.report-risk,.report-status{display:inline-flex;align-items:center;width:max-content;padding:4px 8px;color:#11643f;background:#eaf8ef;border-radius:999px;font-size:.69rem;font-weight:700;white-space:nowrap}.report-score.low,.report-risk.at_risk,.report-status.pending{color:#a34c20;background:#fff2e8}.report-risk.medium_risk{color:#776217;background:#fbf6d9}.report-status.active,.report-status.paid{color:#11643f;background:#eaf8ef}.report-status.completed{color:#51635a;background:#eef2ee}.report-bar-chart{position:relative;display:flex;align-items:stretch;gap:12px;min-height:246px;padding:28px 6px 30px;border-bottom:1px solid #edf1ec}.report-bar-column{display:grid;grid-template-rows:18px 1fr 28px;flex:1;min-width:28px;gap:6px;text-align:center}.report-bar-value{color:#60736a;font-size:.63rem;font-weight:650;white-space:nowrap}.report-bar-track{display:flex;align-items:flex-end;justify-content:center;gap:3px;min-height:150px;padding:0 4px;background-image:linear-gradient(to top,transparent calc(25% - 1px),#edf1ec 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),#edf1ec 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),#edf1ec 75%,transparent calc(75% + 1px))}.report-bar{width:min(18px,42%);min-height:3px;border-radius:6px 6px 2px 2px;transition:height .35s ease}.report-bar-label{overflow:hidden;color:#6b7d73;font-size:.64rem;line-height:1.15;text-overflow:ellipsis}.report-chart-legend{position:absolute;right:4px;bottom:-26px;display:flex;align-items:center;gap:12px;color:var(--color-text-secondary);font-size:.66rem}.report-chart-legend span{display:inline-flex;align-items:center;gap:5px}.report-chart-legend i{width:8px;height:8px;border-radius:2px}.report-line-chart{min-height:240px}.report-revenue-trend-chart{height:260px;min-height:260px;width:100%}.report-line-chart svg{display:block;width:100%;min-height:205px;overflow:visible}.report-chart-gridline{stroke:#e9eeea;stroke-width:1;stroke-dasharray:4 5}.report-chart-axis{display:grid;gap:4px;margin:-5px 23px 0;color:#697a70;font-size:.65rem;text-align:center}.report-chart-axis span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-progress-list{display:flex;flex-direction:column;gap:17px;min-height:210px}.report-progress-row{display:grid;gap:7px}.report-progress-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:#3d5548;font-size:.78rem}.report-progress-copy strong{color:var(--color-dark-green);font-size:.75rem}.report-progress-track{height:7px;overflow:hidden;background:#edf2ed;border-radius:999px}.report-progress-track span{display:block;height:100%;border-radius:inherit;transition:width .35s ease}.report-progress-row small{margin-top:-3px;color:#7a8a81;font-size:.64rem}.report-donut-wrap{display:grid;grid-template-columns:minmax(138px,.75fr) minmax(145px,1fr);align-items:center;gap:24px;min-height:230px}.report-donut{display:grid;place-items:center;width:min(180px,100%);aspect-ratio:1;margin:auto;border-radius:50%}.report-donut>div{display:flex;align-items:center;justify-content:center;flex-direction:column;width:65%;aspect-ratio:1;color:var(--color-dark-green);background:#fff;border-radius:50%;box-shadow:0 0 0 1px #113f2a08}.report-donut strong{font-size:1.35rem;letter-spacing:-.04em}.report-donut span{color:var(--color-text-secondary);font-size:.62rem}.report-donut-legend{display:flex;flex-direction:column;gap:13px}.report-donut-legend>div{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#4d6156;font-size:.72rem}.report-donut-legend span{display:inline-flex;align-items:center;gap:7px}.report-donut-legend i{width:9px;height:9px;border-radius:3px}.report-donut-legend strong{color:var(--color-dark-green)}.report-static-chart .report-bar-value,.report-static-chart .report-progress-row small{color:#7d608a}.report-heatmap-scroll{width:100%;overflow-x:auto}.report-heatmap{display:grid;align-items:center;gap:6px;min-width:620px}.report-heatmap>strong{overflow:hidden;color:#6f8077;font-size:.63rem;font-weight:650;text-align:center;text-overflow:ellipsis;white-space:nowrap}.report-heatmap>span:not(:first-child){display:grid;place-items:center;min-height:38px;color:#fff;border-radius:8px;font-size:.65rem;font-weight:700}.report-state-card,.report-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:300px;padding:30px;color:var(--color-text-secondary);text-align:center;background:#ffffffd1;border:1px solid var(--color-border);border-radius:18px}.report-state-card strong,.report-empty strong{color:var(--color-dark-green);font-size:.95rem}.report-state-card span,.report-empty span{max-width:420px;font-size:.76rem;line-height:1.5}.report-state-card button{margin-top:6px}.report-empty.compact{min-height:210px;padding:20px;background:transparent;border:0}.report-skeleton{display:flex;flex-direction:column;gap:20px}.report-skeleton-grid,.report-skeleton-panels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.report-skeleton-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.report-skeleton span{display:block;min-height:136px;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.72) 45%,transparent 70%),#e8eee8;background-size:220% 100%;border-radius:18px;animation:reports-shimmer 1.2s ease-in-out infinite}.report-skeleton-panels span{min-height:330px}@keyframes reports-shimmer{to{background-position-x:-220%}}@media (max-width: 1260px){.reports-custom-range{width:100%;margin-left:0}.reports-kpi-grid,.reports-kpi-grid.dense{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1000px){.report-grid-wide,.report-grid-even,.report-skeleton-panels{grid-template-columns:1fr}}@media (max-width: 900px){.reports-page,.dashboard-layout.collapsed .reports-page{max-width:calc(100vw - 120px)}}@media (max-width: 720px){.reports-page,.dashboard-layout.collapsed .reports-page{max-width:calc(100vw - 120px)}.reports-page-header{margin-bottom:18px}.reports-filter-card{align-items:stretch;padding:12px}.reports-filter-label,.reports-preset-group{width:100%}.reports-preset-group button{flex:1;padding:0 8px}.reports-filter-card .dd-trigger[data-variant=filter]{width:100%}.reports-custom-range{align-items:stretch;flex-direction:column}.reports-custom-range label,.reports-custom-range input{width:100%}.reports-toolbar{align-items:flex-start;flex-direction:column;padding:12px 0 16px}.reports-toolbar-context,.reports-toolbar-actions{width:100%}.reports-toolbar-actions{justify-content:flex-end}.reports-source-note{max-width:280px}.reports-kpi-grid,.reports-kpi-grid.dense,.report-skeleton-grid{grid-template-columns:1fr}.reports-kpi-grid .kpi-card{min-height:126px}.report-card-header{padding:18px 18px 0}.report-card-body{padding:18px}.report-bar-chart{gap:5px}.report-bar-value{visibility:hidden}.report-donut-wrap{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.report-bar,.report-progress-track span,.reports-tabs button:after,.report-skeleton span{animation:none;transition:none}}.payments-container{padding:0;width:100%;box-sizing:border-box}.payments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.payments-title{font-size:1.875rem;font-weight:700;color:#111827;margin-bottom:.25rem;font-family:Outfit,sans-serif}.payments-subtitle{font-size:.875rem;color:#6b7280}.filter-dropdown-container{position:relative}.filter-dropdown-btn{display:flex;align-items:center;gap:.5rem;background-color:#fff;border:1px solid #e5e7eb;padding:.625rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.filter-dropdown-btn:hover{background-color:#f9fafb;border-color:#d1d5db}.filter-dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:10;width:200px;padding:.25rem}.filter-dropdown-item{display:block;width:100%;text-align:left;padding:.625rem .75rem;font-size:.875rem;color:#374151;background:none;border:none;border-radius:.375rem;cursor:pointer;transition:background-color .15s ease}.filter-dropdown-item:hover{background-color:#f3f4f6}.filter-dropdown-item.active{background-color:#e6f4ea;color:#0b7a4b;font-weight:500}.payments-table-wrapper{background-color:#fff;border-radius:.75rem;border:1px solid #e5e7eb;overflow-x:auto;max-width:100%;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #0000000f}.payments-table{width:100%;border-collapse:collapse;text-align:left}.payments-table th{background-color:#f9fafb;padding:1rem 1.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:#4b5563;letter-spacing:.05em;border-bottom:1px solid #e5e7eb}.payments-table td{padding:1rem 1.5rem;font-size:.875rem;color:#374151;border-bottom:1px solid #e5e7eb;vertical-align:middle}.payments-table tr:last-child td{border-bottom:none}.member-cell{display:flex;align-items:center;gap:.75rem}.member-avatar{width:2.25rem;height:2.25rem;border-radius:50%;background-color:#e6f4ea;color:#0b7a4b;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.member-name{font-weight:500;color:#111827}.member-email{font-size:.75rem;color:#6b7280}.class-name{font-weight:500;color:#1f2937}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.plan-badge{background-color:#ecfdf5;color:#065f46}.walkin-badge{background-color:#fffbeb;color:#92400e}.source-badge{background-color:#f3f4f6;color:#374151}.status-badge{font-weight:600}.status-paid{background-color:#ecfdf5;color:#047857}.status-pending{background-color:#fff5f5;color:#c53030}.status-pending.clickable{cursor:pointer;transition:all .15s ease;border:1px dashed #feb2b2}.status-pending.clickable:hover{background-color:#ffe4e4;color:#9b2c2c;transform:translateY(-1px);box-shadow:0 2px 4px #c530300d}.method-label{font-weight:500;color:#4b5563}.amount-col,.amount-cell{text-align:right;font-weight:600;color:#111827}.action-col,.action-cell{text-align:right}.collect-btn{background-color:#0b7a4b;color:#fff;border:none;padding:.375rem .875rem;border-radius:.375rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:background-color .15s ease}.collect-btn:hover{background-color:#09633c}.payments-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#6b7280;gap:1rem}.payments-spinner{animation:spin 1s linear infinite;color:#0b7a4b}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.payments-empty{text-align:center;padding:4rem 2rem;color:#6b7280}.payments-empty svg{margin:0 auto 1rem;color:#d1d5db}.payments-empty h3{font-size:1.125rem;font-weight:600;color:#374151;margin-bottom:.5rem}.payments-empty p{font-size:.875rem;max-width:400px;margin:0 auto}.payments-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background-color:#fff}.pagination-btn{background:none;border:1px solid #e5e7eb;border-radius:.375rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;color:#374151;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background-color:#f9fafb}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.875rem;color:#4b5563}.collect-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#11182759;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50}.collect-modal{background-color:#fff;border-radius:1.25rem;width:100%;max-width:500px;box-shadow:0 25px 50px -12px #00000014;overflow:hidden;border:1px solid rgba(229,231,235,.5);font-family:var(--font-main),"Outfit",sans-serif}.collect-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 1.75rem 1rem}.collect-modal-header h2{font-size:1.35rem;font-weight:700;color:#1c2b21;margin:0 0 .25rem}.collect-modal-subtitle{font-size:.85rem;color:#6b7280;margin:0;line-height:1.4}.close-modal-btn{background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;transition:color .15s ease;margin-top:-2px}.close-modal-btn:hover{color:#4b5563}.collect-modal-form{padding:0 1.75rem 1.75rem}.collect-summary-box{background-color:#f7f8f6;border:1px solid #e2e4df;border-radius:.875rem;padding:1.125rem 1.25rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.collect-summary-left{display:flex;align-items:center;gap:.75rem}.collect-checked-circle{width:1.5rem;height:1.5rem;border-radius:50%;background-color:#d9f99d;color:#3f6212;display:flex;align-items:center;justify-content:center}.collect-checkmark{font-size:.875rem;font-weight:800}.collect-summary-text{font-size:.925rem;font-weight:600;color:#1c2b21}.collect-summary-right{font-size:1.1rem;font-weight:700;color:#1c2b21}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.875rem;font-weight:600;color:#1c2b21;margin-bottom:.5rem}.collect-select-wrapper{position:relative;width:100%}.collect-select{width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-color:#f7f8f6;border:2px solid var(--color-accent-lime);border-radius:.75rem;padding:.75rem 1rem;font-size:.9rem;font-weight:500;color:#1c2b21;outline:none;cursor:pointer;transition:border-color .15s ease}.collect-select-chevron{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#1c2b21;pointer-events:none}.collect-total-box{background-color:#f7f8f6;border-radius:.75rem;padding:.875rem 1.25rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.collect-total-label{font-size:.875rem;color:#4b5563;font-weight:500}.collect-total-amount{font-size:1.1rem;font-weight:700;color:#1c2b21}.collect-optional-section{margin-bottom:1.5rem;border-top:1px solid #f3f4f6;padding-top:1rem}.collect-optional-toggle{background:none;border:none;font-size:.825rem;font-weight:600;color:#0b7a4b;cursor:pointer;padding:0;display:flex;align-items:center;transition:color .15s ease}.collect-optional-toggle:hover{color:#09633c;text-decoration:underline}.collect-modal .form-input{width:100%;padding:.75rem 1rem;border:1px solid #dcded9;border-radius:.75rem;font-size:.9rem;color:#1c2b21;outline:none;background-color:#f7f8f6;transition:border-color .15s ease}.collect-modal .form-input:focus{border-color:#0b7a4b}.collect-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.75rem}.btn-cancel{background:none;border:1px solid #dcded9;padding:.625rem 1.5rem;border-radius:9999px;font-size:.875rem;font-weight:600;color:#1c2b21;cursor:pointer;transition:all .15s ease}.btn-cancel:hover{background-color:#f4f5f2}.btn-confirm{background-color:var(--color-accent-lime);color:var(--color-accent-lime-text);border:none;padding:.625rem 1.5rem;border-radius:9999px;font-size:.875rem;font-weight:700;cursor:pointer;transition:opacity .15s ease;box-shadow:0 4px 12px #c5f05133}.btn-confirm:hover:not(:disabled){opacity:.9}.btn-confirm:disabled{opacity:.6;cursor:not-allowed}
