:root{--ac80-color-primary: #16151a;--ac80-color-primary-hover: #232227;--ac80-color-primary-contrast: #ffffff;--ac80-color-accent: #682a82;--ac80-color-accent-hover: #58246e;--ac80-color-accent-contrast: #ffffff;--ac80-color-client: #682a82;--ac80-color-coach: #5b21b6;--ac80-color-admin: #1f1f23;--ac80-color-bg: #f6f5f8;--ac80-color-surface: #ffffff;--ac80-color-border: #e4e2e8;--ac80-color-text: #17161b;--ac80-color-text-muted: #6b6874;--ac80-color-text-inverse: #ffffff;--ac80-color-success: #1f8a4c;--ac80-color-success-bg: #e5f5ec;--ac80-color-warning: #b3760f;--ac80-color-warning-bg: #fbf0dc;--ac80-color-danger: #c53030;--ac80-color-danger-bg: #fbe7e7;--ac80-color-info: #6d4aae;--ac80-color-info-bg: #efe9fb;--ac80-color-neutral: #6b6874;--ac80-color-neutral-bg: #eeecf1;--ac80-font-body: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--ac80-font-heading: var(--ac80-font-body);--ac80-font-size-xs: .75rem;--ac80-font-size-sm: .875rem;--ac80-font-size-base: 1rem;--ac80-font-size-lg: 1.125rem;--ac80-font-size-xl: 1.375rem;--ac80-font-size-2xl: 1.75rem;--ac80-font-size-3xl: 2.25rem;--ac80-font-weight-regular: 400;--ac80-font-weight-medium: 600;--ac80-font-weight-bold: 700;--ac80-font-weight-black: 800;--ac80-line-height-tight: 1.2;--ac80-line-height-base: 1.5;--ac80-letter-spacing-heading: .02em;--ac80-space-1: .25rem;--ac80-space-2: .5rem;--ac80-space-3: .75rem;--ac80-space-4: 1rem;--ac80-space-5: 1.5rem;--ac80-space-6: 2rem;--ac80-space-7: 3rem;--ac80-radius-sm: 4px;--ac80-radius-md: 8px;--ac80-radius-lg: 12px;--ac80-radius-pill: 999px;--ac80-shadow-sm: 0 1px 2px rgba(16, 24, 32, .08);--ac80-shadow-md: 0 4px 12px rgba(16, 24, 32, .1);--ac80-transition-fast: .15s ease;--ac80-transition-base: .2s ease;--ac80-header-height: 60px;--ac80-sidebar-width: 240px;--ac80-z-header: 100;--ac80-z-sidebar: 90;--ac80-z-overlay: 200;--ac80-z-consent: 300}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--ac80-color-bg);color:var(--ac80-color-text);font-family:var(--ac80-font-body);font-size:var(--ac80-font-size-base);line-height:var(--ac80-line-height-base)}h1,h2,h3,h4,h5,h6{font-family:var(--ac80-font-heading);font-weight:var(--ac80-font-weight-black);line-height:var(--ac80-line-height-tight);letter-spacing:var(--ac80-letter-spacing-heading);margin:0 0 var(--ac80-space-3)}p{margin:0 0 var(--ac80-space-3)}a{color:var(--ac80-color-primary)}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--ac80-color-accent);outline-offset:2px}.ac80-container{max-width:1120px;margin-inline:auto;padding-inline:var(--ac80-space-4)}.ac80-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ac80-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ac80-space-2);border:1px solid transparent;border-radius:var(--ac80-radius-md);padding:var(--ac80-space-2) var(--ac80-space-4);font-family:var(--ac80-font-body);font-size:var(--ac80-font-size-sm);font-weight:var(--ac80-font-weight-medium);line-height:1;cursor:pointer;text-decoration:none;transition:background-color var(--ac80-transition-fast),border-color var(--ac80-transition-fast),color var(--ac80-transition-fast)}.ac80-btn:disabled{cursor:not-allowed;opacity:.6}.ac80-btn--sm{padding:var(--ac80-space-1) var(--ac80-space-3);font-size:var(--ac80-font-size-xs)}.ac80-btn--primary{background:var(--ac80-color-primary);color:var(--ac80-color-primary-contrast)}.ac80-btn--primary:hover:not(:disabled){background:var(--ac80-color-primary-hover)}.ac80-btn--accent{background:var(--ac80-color-accent);color:var(--ac80-color-accent-contrast)}.ac80-btn--accent:hover:not(:disabled){background:var(--ac80-color-accent-hover)}.ac80-btn--secondary{background:var(--ac80-color-surface);border-color:var(--ac80-color-border);color:var(--ac80-color-text)}.ac80-btn--secondary:hover:not(:disabled){border-color:var(--ac80-color-primary);color:var(--ac80-color-primary)}.ac80-btn--danger{background:var(--ac80-color-danger);color:var(--ac80-color-text-inverse)}.ac80-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--ac80-color-danger) 85%,black)}.ac80-btn--ghost{background:transparent;color:var(--ac80-color-text)}.ac80-btn--ghost:hover:not(:disabled){background:var(--ac80-color-neutral-bg)}.ac80-section-header{margin-bottom:var(--ac80-space-5);padding:var(--ac80-space-1) 0 var(--ac80-space-1) var(--ac80-space-3);border-left:4px solid var(--ac80-color-border)}.ac80-section-header h1{margin:0;font-size:var(--ac80-font-size-2xl)}.ac80-section-header p{margin:var(--ac80-space-1) 0 0;color:var(--ac80-color-text-muted);font-size:var(--ac80-font-size-sm)}.ac80-section-header--client{border-left-color:var(--ac80-color-client)}.ac80-section-header--coach{border-left-color:var(--ac80-color-coach)}.ac80-section-header--admin{border-left-color:var(--ac80-color-admin)}.ac80-page-title{margin:0 0 var(--ac80-space-4);font-size:var(--ac80-font-size-xl)}.ac80-card{background:var(--ac80-color-surface);border:1px solid var(--ac80-color-border);border-radius:var(--ac80-radius-lg);box-shadow:var(--ac80-shadow-sm);padding:var(--ac80-space-5)}.ac80-card--client{border-left:4px solid var(--ac80-color-client)}.ac80-card--coach{border-left:4px solid var(--ac80-color-coach)}.ac80-card--admin{border-left:4px solid var(--ac80-color-admin)}.ac80-badge{display:inline-flex;align-items:center;gap:var(--ac80-space-1);border-radius:var(--ac80-radius-pill);padding:var(--ac80-space-1) var(--ac80-space-3);font-size:var(--ac80-font-size-xs);font-weight:var(--ac80-font-weight-medium);line-height:1.4;white-space:nowrap}.ac80-badge--success{background:var(--ac80-color-success-bg);color:var(--ac80-color-success)}.ac80-badge--warning{background:var(--ac80-color-warning-bg);color:var(--ac80-color-warning)}.ac80-badge--danger{background:var(--ac80-color-danger-bg);color:var(--ac80-color-danger)}.ac80-badge--info{background:var(--ac80-color-info-bg);color:var(--ac80-color-info)}.ac80-badge--neutral{background:var(--ac80-color-neutral-bg);color:var(--ac80-color-neutral)}.ac80-table{width:100%;border-collapse:collapse}.ac80-table th,.ac80-table td{text-align:left;padding:var(--ac80-space-3);border-bottom:1px solid var(--ac80-color-border);font-size:var(--ac80-font-size-sm);vertical-align:top}.ac80-table th{color:var(--ac80-color-text-muted);font-weight:var(--ac80-font-weight-medium);font-size:var(--ac80-font-size-xs);text-transform:uppercase;letter-spacing:var(--ac80-letter-spacing-heading)}.ac80-table tbody tr:hover{background:var(--ac80-color-bg)}.ac80-table-scroll{overflow-x:auto}.ac80-filters-panel{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--ac80-space-4);margin-bottom:var(--ac80-space-5);padding:var(--ac80-space-4);background:var(--ac80-color-surface);border:1px solid var(--ac80-color-border);border-radius:var(--ac80-radius-md)}.ac80-state{padding:var(--ac80-space-5);border-radius:var(--ac80-radius-md);color:var(--ac80-color-text-muted);background:var(--ac80-color-neutral-bg);font-size:var(--ac80-font-size-sm)}.ac80-state--error{color:var(--ac80-color-danger);background:var(--ac80-color-danger-bg)}.ac80-state--success{color:var(--ac80-color-success);background:var(--ac80-color-success-bg)}.ac80-state--warning{color:var(--ac80-color-warning);background:var(--ac80-color-warning-bg)}.ac80-subsection-title{font-size:var(--ac80-font-size-lg);font-weight:var(--ac80-font-weight-medium);margin:var(--ac80-space-6) 0 var(--ac80-space-3);color:var(--ac80-color-text-muted)}.ac80-table--muted{opacity:.7}.ac80-form{display:flex;flex-direction:column;gap:var(--ac80-space-4);max-width:640px}.ac80-form-row{display:flex;gap:var(--ac80-space-4);flex-wrap:wrap}.ac80-form-row>.ac80-form-field{flex:1;min-width:160px}@media(max-width:767px){.ac80-form-row{flex-direction:column}}.ac80-form-field{display:flex;flex-direction:column;gap:var(--ac80-space-1)}.ac80-form-field label{font-size:var(--ac80-font-size-sm);font-weight:var(--ac80-font-weight-medium);color:var(--ac80-color-text)}.ac80-form-field input,.ac80-form-field select,.ac80-form-field textarea{padding:var(--ac80-space-2) var(--ac80-space-3);border:1px solid var(--ac80-color-border);border-radius:var(--ac80-radius-sm);font-size:var(--ac80-font-size-base);font-family:var(--ac80-font-body);color:var(--ac80-color-text);background:var(--ac80-color-surface)}.ac80-form-field input:focus,.ac80-form-field select:focus,.ac80-form-field textarea:focus{outline:none;border-color:var(--ac80-color-accent)}.ac80-form-field input:disabled,.ac80-form-field select:disabled,.ac80-form-field textarea:disabled{background:var(--ac80-color-bg);color:var(--ac80-color-text-muted);cursor:not-allowed}.ac80-form-field-error{margin:0;color:var(--ac80-color-danger);font-size:var(--ac80-font-size-xs)}.ac80-form-section{display:flex;flex-direction:column;gap:var(--ac80-space-4);padding-top:var(--ac80-space-4);border-top:1px solid var(--ac80-color-border)}.ac80-form-section:first-child{padding-top:0;border-top:none}.ac80-form-section-title{margin:0;font-size:var(--ac80-font-size-xs);font-weight:var(--ac80-font-weight-bold);text-transform:uppercase;letter-spacing:var(--ac80-letter-spacing-heading);color:var(--ac80-color-text-muted)}.ac80-checkbox-section{display:flex;flex-direction:column;gap:var(--ac80-space-3);margin:0;padding:var(--ac80-space-4);border:1px solid var(--ac80-color-border);border-radius:var(--ac80-radius-md)}.ac80-checkbox-section legend{padding:0 var(--ac80-space-2);font-size:var(--ac80-font-size-sm);font-weight:var(--ac80-font-weight-medium);color:var(--ac80-color-text)}.ac80-checkbox-toggle{display:flex;align-items:center;gap:var(--ac80-space-2);font-size:var(--ac80-font-size-sm);font-weight:var(--ac80-font-weight-medium);color:var(--ac80-color-text)}.ac80-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--ac80-space-2) var(--ac80-space-4);margin-top:var(--ac80-space-1)}.ac80-checkbox-grid label{display:flex;align-items:center;gap:var(--ac80-space-2);font-size:var(--ac80-font-size-sm);font-weight:var(--ac80-font-weight-regular);color:var(--ac80-color-text)}.ac80-cell-primary{font-weight:var(--ac80-font-weight-medium);color:var(--ac80-color-text)}.ac80-cell-secondary{font-size:var(--ac80-font-size-xs);color:var(--ac80-color-text-muted)}.ac80-cell-amount{font-variant-numeric:tabular-nums;font-weight:var(--ac80-font-weight-medium);text-align:right;white-space:nowrap}
