@font-face{font-family:Aeonik;src:url(/fonts/Aeonik-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/Aeonik-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/Aeonik-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Nord;src:url(/fonts/Nord-Book.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Nord;src:url(/fonts/NORD-Medium.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Nord;src:url(/fonts/NORD-Black.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}:root,[data-theme=dark]{--bg-primary: #000000;--bg-secondary: #0D0D0D;--bg-card: #1C1C1C;--bg-card-hover: #2E2E2E;--bg-card-muted: #161616;--bg-glass: #1C1C1C;--bg-glass-card: #1C1C1C;--bg-input: #1C1C1C;--bg-input-focus: #242424;--bg-modal-overlay: rgba(0, 0, 0, .85);--bg-dropdown: #242424;--bg-tooltip: #242424;--color-bone: #DCD9CF;--color-bone-muted: rgba(220, 217, 207, .7);--color-logo: #DCD9CF;--color-crimson: #6A7FCF;--color-crimson-hover: #8094E0;--color-crimson-subtle: rgba(106, 127, 207, .16);--color-crimson-glow: rgba(106, 127, 207, .25);--color-accent: #6A7FCF;--color-accent-hover: #8094E0;--color-accent-subtle: rgba(106, 127, 207, .16);--color-accent-glow: rgba(106, 127, 207, .25);--color-periwinkle: #6A7FCF;--color-dark: #000000;--color-muted: #958E83;--accent-green: #4EBA85;--accent-green-subtle: rgba(78, 186, 133, .12);--accent-green-glow: rgba(78, 186, 133, .22);--accent-amber: #958E83;--accent-amber-subtle: rgba(149, 142, 131, .14);--accent-amber-glow: rgba(149, 142, 131, .22);--accent-red: #E05252;--accent-red-subtle: rgba(224, 82, 82, .14);--accent-cyan: #6A7FCF;--accent-cyan-subtle: rgba(106, 127, 207, .14);--accent-indigo: #6A7FCF;--accent-indigo-subtle: rgba(106, 127, 207, .14);--accent-lime: #4EBA85;--accent-lime-subtle: rgba(78, 186, 133, .12);--text-primary: #DCD9CF;--text-secondary: rgba(220, 217, 207, .7);--text-muted: #958E83;--text-inverse: #000000;--border-color: #424242;--border-subtle: #2E2E2E;--border-input: #424242;--border-input-focus: #6A7FCF;--border-hover: #5A5A5A;--border-specular: none;--shadow-subtle: 0 2px 4px rgba(0, 0, 0, .5);--shadow-card: 0 8px 18px -2px rgba(0, 0, 0, .5);--shadow-card-hover: 0 10px 24px -4px rgba(0, 0, 0, .65), 0 0 16px -2px rgba(106, 127, 207, .18);--shadow-levitate: 0 14px 32px -4px rgba(0, 0, 0, .75);--shadow-modal: 0 24px 48px -8px rgba(0, 0, 0, .85);--shadow-glow: 0 0 24px -2px rgba(106, 127, 207, .25);--table-header-bg: #1C1C1C;--table-header-box-bg: #1C1C1C;--table-row-hover: #242424;--table-border: #2E2E2E;--btn-sig-bg: #DCD9CF;--btn-sig-color: #000000;--btn-sig-hover: #ECE9DF;--btn-sec-bg: #1C1C1C;--btn-sec-color: #DCD9CF;--btn-sec-border: #424242;--btn-sec-hover: #2E2E2E;--scrollbar-thumb: #424242;--scrollbar-track: #000000;--font-brand: "Nord", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Aeonik", -apple-system, BlinkMacSystemFont, "Inter", sans-serif;--font-mono: "Nord", "JetBrains Mono", ui-monospace, monospace}[data-theme=light]{--bg-primary: #EAE8E1;--bg-secondary: #DCD9CF;--bg-card: #FFFFFF;--bg-card-hover: #F6F5F2;--bg-card-muted: #E2DFD6;--bg-glass: #FFFFFF;--bg-glass-card: #FFFFFF;--bg-input: #FFFFFF;--bg-input-focus: #FFFFFF;--bg-modal-overlay: rgba(0, 0, 0, .55);--bg-dropdown: #FFFFFF;--bg-tooltip: #1C1C1C;--color-bone: #1C1C1C;--color-bone-muted: rgba(28, 28, 28, .7);--color-logo: #1C1C1C;--color-crimson: #6A7FCF;--color-crimson-hover: #556ABF;--color-crimson-subtle: rgba(106, 127, 207, .12);--color-crimson-glow: rgba(106, 127, 207, .2);--color-accent: #6A7FCF;--color-accent-hover: #556ABF;--color-accent-subtle: rgba(106, 127, 207, .12);--color-accent-glow: rgba(106, 127, 207, .2);--color-periwinkle: #958E83;--color-dark: #1C1C1C;--color-muted: #958E83;--accent-green: #4EBA85;--accent-green-subtle: rgba(78, 186, 133, .1);--accent-green-glow: rgba(78, 186, 133, .18);--accent-amber: #958E83;--accent-amber-subtle: rgba(149, 142, 131, .1);--accent-amber-glow: rgba(149, 142, 131, .18);--accent-red: #E05252;--accent-red-subtle: rgba(224, 82, 82, .1);--accent-cyan: #6A7FCF;--accent-cyan-subtle: rgba(106, 127, 207, .1);--accent-indigo: #6A7FCF;--accent-indigo-subtle: rgba(106, 127, 207, .1);--accent-lime: #4EBA85;--accent-lime-subtle: rgba(78, 186, 133, .1);--text-primary: #1C1C1C;--text-secondary: #5A5A5A;--text-muted: #958E83;--text-inverse: #FFFFFF;--border-color: #D0CCC2;--border-subtle: #E2DFD6;--border-input: #D0CCC2;--border-input-focus: #6A7FCF;--border-hover: #B0ABA0;--border-specular: none;--shadow-subtle: 0 1px 3px rgba(0, 0, 0, .06);--shadow-card: 0 4px 12px rgba(0, 0, 0, .05);--shadow-card-hover: 0 8px 20px rgba(0, 0, 0, .08);--shadow-levitate: 0 14px 28px rgba(0, 0, 0, .1);--shadow-modal: 0 20px 40px rgba(0, 0, 0, .14);--shadow-glow: 0 0 20px rgba(106, 127, 207, .15);--table-header-bg: #EAE8E1;--table-header-box-bg: #FFFFFF;--table-row-hover: #F6F5F2;--table-border: #E2DFD6;--btn-sig-bg: #1C1C1C;--btn-sig-color: #DCD9CF;--btn-sig-hover: #000000;--btn-sec-bg: #FFFFFF;--btn-sec-color: #1C1C1C;--btn-sec-border: #D0CCC2;--btn-sec-hover: #F6F5F2;--scrollbar-thumb: #D0CCC2;--scrollbar-track: transparent}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth;color-scheme:dark light}body{margin:0;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);font-feature-settings:"cv02","cv03","cv04","cv11";line-height:1.5;transition:background-color .3s cubic-bezier(.16,1,.3,1),color .3s cubic-bezier(.16,1,.3,1);overflow-x:hidden;min-height:100dvh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:9999px;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:var(--color-crimson)}.font-mono,.metric-value,.tabular-nums,.stat-value,.day-number{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@keyframes spatialDropIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalSpringIn{0%{opacity:0;transform:translateY(20px) scale(.94) translateZ(0)}60%{opacity:1;transform:translateY(-2px) scale(1.01) translateZ(10px)}to{opacity:1;transform:translateY(0) scale(1) translateZ(0)}}@keyframes toastLevitate{0%{opacity:0;transform:translateY(24px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.dashboard-layout{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100dvh;max-width:100vw;background:var(--bg-primary);position:relative}.sidebar{background:var(--bg-glass);border-right:1px solid var(--border-color);padding:1.5rem 1rem;display:flex;flex-direction:column;justify-content:space-between;position:sticky;top:0;height:100dvh;overflow-y:auto;transition:all .3s cubic-bezier(.16,1,.3,1);z-index:30;-webkit-user-select:none;user-select:none}.sidebar-brand-header{padding:.5rem .75rem 1.25rem;border-bottom:1px solid var(--border-subtle);margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.4rem}.sidebar-brand-link{cursor:pointer;display:inline-flex;align-items:center;transition:transform .2s cubic-bezier(.16,1,.3,1),opacity .2s ease}.sidebar-brand-link:hover{transform:translateY(-1px);opacity:.95}.sidebar-brand-sub{font-family:var(--font-brand);font-size:.68rem;font-weight:700;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase}.sidebar-nav-container{flex:1;display:flex;flex-direction:column;gap:1.4rem}.nav-section{display:flex;flex-direction:column;gap:.3rem}.nav-section-title{font-family:var(--font-brand);font-size:.64rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:0 .75rem;margin-bottom:.25rem;font-weight:700}.nav-items-list{display:flex;flex-direction:column;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;border-radius:10px;color:var(--text-secondary);background:transparent;border:1px solid transparent;font-size:.85rem;font-weight:500;transition:all .22s cubic-bezier(.16,1,.3,1);cursor:pointer;width:100%;text-align:left;position:relative;text-decoration:none;box-sizing:border-box}.nav-item-icon{flex-shrink:0;color:var(--text-muted);transition:all .2s ease}.nav-item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.nav-item:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-color);transform:translate(3px)}.nav-item:hover .nav-item-icon{color:var(--color-crimson);transform:scale(1.1)}.nav-item.active{background:var(--color-crimson-subtle);border-color:#6a7fcf59;color:var(--color-crimson);font-weight:600;box-shadow:inset 0 1px #6a7fcf40,0 4px 12px -2px var(--color-crimson-subtle)}.nav-item.active .nav-item-icon{color:var(--color-crimson)}.nav-item-indicator{width:6px;height:6px;border-radius:50%;background:var(--color-crimson);box-shadow:0 0 10px var(--color-crimson);flex-shrink:0}.sidebar-footer{margin-top:auto;padding-top:1.25rem;border-top:1px solid var(--border-subtle)}.sidebar-user-card{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:12px;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-card);transition:all .25s cubic-bezier(.16,1,.3,1)}.sidebar-user-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.sidebar-user-avatar{width:32px;height:32px;border-radius:8px;background:var(--color-crimson-subtle);color:var(--color-crimson);border:1px solid rgba(106,127,207,.35);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;font-family:var(--font-brand);flex-shrink:0;box-shadow:0 0 12px var(--color-crimson-subtle)}.sidebar-user-info{display:flex;flex-direction:column;min-width:0;flex:1}.sidebar-user-name{font-size:.82rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.sidebar-user-role{font-size:.68rem;font-weight:500;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header{height:68px;background:var(--bg-glass);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:flex-end;padding:0 2.25rem;position:sticky;top:0;z-index:25;transition:all .3s ease;box-shadow:var(--shadow-subtle)}.theme-toggle-btn{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);width:38px;height:38px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .22s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-card)}.theme-toggle-btn:hover{background:var(--bg-card-hover);border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.theme-toggle-btn:active{transform:scale(.92)}.main-content{padding:2.25rem;min-width:0;width:100%;box-sizing:border-box;animation:spatialDropIn .35s cubic-bezier(.16,1,.3,1)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.35rem;margin-bottom:2.25rem}.metric-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:1.45rem 1.65rem;box-shadow:var(--shadow-card);transition:all .28s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;animation:spatialDropIn .4s cubic-bezier(.16,1,.3,1) backwards}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(106,127,207,.3),transparent);opacity:.7}.metric-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-levitate);transform:translateY(-4px) translateZ(8px)}.metric-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.metric-title{color:var(--text-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-brand)}.metric-icon-box{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-subtle);transition:all .2s ease}.metric-card:hover .metric-icon-box{color:var(--color-crimson);border-color:#6a7fcf66;box-shadow:0 0 14px var(--color-crimson-subtle)}.metric-value{font-family:var(--font-mono);font-size:2.35rem;font-weight:800;line-height:1.05;letter-spacing:-.04em;color:var(--text-primary)}.metric-subtitle{font-size:.8rem;color:var(--text-secondary);margin-top:.45rem;display:flex;align-items:center;gap:.45rem}.main-content-floor{padding:1rem 1.5rem!important;height:calc(100dvh - 68px)!important;max-height:calc(100dvh - 68px)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important}.coach-floor-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:.85rem;margin-bottom:0;box-sizing:border-box}.station-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;height:100%;min-height:0;display:flex;flex-direction:column;box-shadow:var(--shadow-card);transition:all .25s cubic-bezier(.16,1,.3,1);overflow:hidden;padding:.65rem .95rem;box-sizing:border-box}.station-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover)}.station-card.vacant{border-style:dashed}.station-exercises-scroll{flex:1;min-height:0;overflow-y:auto;padding-right:.35rem;display:flex;flex-direction:column;gap:.4rem}@media (max-width: 1024px){.main-content-floor{height:auto!important;max-height:none!important;overflow:auto!important}.coach-floor-grid{grid-template-columns:1fr;grid-template-rows:auto}.station-card{min-height:380px}}input[type=text],input[type=password],input[type=email],input[type=tel],input[type=number],input[type=search],input[type=date],input[type=time],select,textarea{background-color:var(--bg-input)!important;color:var(--text-primary)!important;border:1px solid var(--border-input)!important;border-radius:10px;font-family:inherit;font-size:.88rem;padding:.65rem .95rem;outline:none;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-subtle)}input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=number]:focus,input[type=search]:focus,input[type=date]:focus,input[type=time]:focus,select:focus,textarea:focus{border-color:var(--color-crimson)!important;box-shadow:0 0 0 3px var(--color-crimson-subtle),var(--shadow-card)!important;background-color:var(--bg-input-focus)!important;transform:translateY(-1px)}input::placeholder,textarea::placeholder{color:var(--text-muted)!important}button{cursor:pointer;font-family:var(--font-brand);white-space:nowrap!important;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:all .22s cubic-bezier(.16,1,.3,1)}button:active{transform:scale(.97)!important}.btn-signature{background:var(--btn-sig-bg)!important;color:var(--btn-sig-color)!important;border:1px solid transparent!important;padding:.65rem 1.35rem;min-height:42px;border-radius:11px;font-weight:600!important;font-size:.86rem;letter-spacing:-.01em;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--shadow-card)}.btn-signature:hover{background:var(--btn-sig-hover)!important;transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.btn-crimson{background:var(--color-crimson)!important;color:#fff!important;border:1px solid var(--color-crimson)!important;padding:.65rem 1.35rem;min-height:42px;border-radius:11px;font-weight:600!important;font-size:.86rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 16px var(--color-crimson-subtle),inset 0 1px #fff3}.btn-crimson:hover{background:var(--color-crimson-hover)!important;border-color:var(--color-crimson-hover)!important;transform:translateY(-2px);box-shadow:0 8px 24px var(--color-crimson-glow)}.btn-secondary{background:var(--btn-sec-bg)!important;color:var(--btn-sec-color)!important;border:1px solid var(--btn-sec-border)!important;padding:.65rem 1.35rem;min-height:42px;border-radius:11px;font-weight:500;font-size:.86rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--shadow-subtle)}.btn-secondary:hover{background:var(--btn-sec-hover)!important;border-color:var(--border-hover)!important;transform:translateY(-2px);box-shadow:var(--shadow-card)}.btn-action-cyan{background:var(--color-crimson-subtle)!important;color:var(--color-crimson)!important;border:1px solid rgba(106,127,207,.35)!important;padding:.55rem 1.15rem;min-height:38px;border-radius:10px;font-weight:600;font-size:.85rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.btn-action-cyan:hover{background:#6a7fcf38!important;border-color:var(--color-crimson)!important;transform:translateY(-2px);box-shadow:0 4px 14px var(--color-crimson-subtle)}.btn-action-amber{background:var(--bg-card-hover)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;padding:.55rem 1.15rem;min-height:38px;border-radius:10px;font-weight:600;font-size:.85rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.btn-action-amber:hover{background:var(--bg-card)!important;border-color:var(--border-hover)!important;transform:translateY(-2px);box-shadow:var(--shadow-card)}.badge{display:inline-flex;align-items:center;gap:.45rem;padding:.3rem .75rem;border-radius:8px;font-size:.73rem;font-weight:600;letter-spacing:.02em;font-family:var(--font-brand);background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.badge-dot{width:6px;height:6px;border-radius:50%}.badge-present{background:#6a7fcf24;color:var(--color-accent);border:1px solid rgba(106,127,207,.35)}.badge-present .badge-dot{background:var(--color-accent)}.badge-completed{background:#dcd9cf1f;color:var(--text-primary);border:1px solid rgba(220,217,207,.3)}.badge-completed .badge-dot{background:var(--text-primary)}.badge-scheduled{background:#958e8324;color:var(--color-muted);border:1px solid rgba(149,142,131,.3)}.badge-scheduled .badge-dot{background:var(--color-muted)}.badge-missed{background:#42424240;color:var(--text-secondary);border:1px solid var(--border-color)}.badge-missed .badge-dot{background:var(--accent-red)}.badge-pending,.badge-not_checked_in{background:#958e831f;color:var(--text-secondary);border:1px solid var(--border-color)}.badge-pending .badge-dot,.badge-not_checked_in .badge-dot{background:var(--accent-amber)}.table-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:2rem;box-shadow:var(--shadow-card);transition:all .25s ease}.table-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover)}.table-header{padding:1.35rem 2rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;background:var(--table-header-box-bg);flex-wrap:wrap;gap:1rem}.custom-table{width:100%;border-collapse:collapse;text-align:left}.custom-table th{padding:1rem 2rem;background:var(--table-header-bg);color:var(--text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;font-family:var(--font-brand);border-bottom:1px solid var(--table-border)}.custom-table td{padding:1.15rem 2rem;border-top:1px solid var(--table-border);font-size:.88rem;color:var(--text-primary);transition:background .18s ease}.custom-table tbody tr{transition:all .2s ease}.custom-table tbody tr:hover td{background:var(--table-row-hover)}.filter-tabs-group{display:inline-flex;align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:4px;gap:4px;box-shadow:var(--shadow-subtle)}.filter-tab-btn{padding:.45rem .95rem;border-radius:9px;font-size:.78rem;font-weight:600;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.filter-tab-btn:hover{color:var(--text-primary)}.filter-tab-btn.active{background:var(--bg-card);color:var(--color-crimson);box-shadow:var(--shadow-card);border:1px solid rgba(106,127,207,.25)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;background:var(--bg-modal-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;box-sizing:border-box;overflow-y:auto;animation:spatialDropIn .25s cubic-bezier(.16,1,.3,1)}.modal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-modal);max-height:calc(100dvh - 2.5rem);max-width:calc(100vw - 2rem);width:100%;box-sizing:border-box;overflow-y:auto;color:var(--text-primary);position:relative;animation:modalSpringIn .35s cubic-bezier(.16,1,.3,1)}.modal-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(106,127,207,.35),transparent)}.calendar-week-header{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.45rem;padding-bottom:.4rem;border-bottom:1px solid var(--border-color);width:100%;font-family:var(--font-brand)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;width:100%}.calendar-day-cell{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;min-height:0;height:100%;padding:.3rem .38rem;display:flex;flex-direction:column;min-width:0;overflow:hidden;box-shadow:var(--shadow-card);transition:border-color .15s ease,background .15s ease}.calendar-day-cell:hover{border-color:var(--border-hover);background:#ffffff06}.calendar-day-cell.disabled{background:transparent;border-color:transparent;opacity:.25}.day-number{font-size:.74rem;font-weight:700;color:var(--text-secondary);margin-bottom:.15rem;line-height:1}.calendar-page-layout{display:grid;grid-template-columns:minmax(0,2.35fr) minmax(290px,335px);gap:1rem;width:100%;min-width:0;align-items:stretch}@media (max-width: 1150px){.calendar-page-layout{grid-template-columns:1fr}}.client-calendar-page{width:100%;min-width:0;margin-top:-.85rem}.calendar-box-card,.workout-inspector-panel{height:calc(100vh - 138px);min-height:520px;max-height:850px;display:flex;flex-direction:column;box-sizing:border-box;border-radius:16px;overflow:hidden}.calendar-box-card .responsive-calendar-scroll{flex:1;display:flex;flex-direction:column;width:100%;overflow-x:hidden;min-height:0}.calendar-box-card .responsive-calendar-inner{flex:1;display:flex;flex-direction:column;width:100%;min-width:0;min-height:0}.calendar-box-card .calendar-grid{flex:1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:1fr;gap:.35rem;width:100%;min-height:0}.responsive-table-container{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.responsive-calendar-scroll{width:100%;max-width:100%;overflow-x:hidden}.responsive-calendar-inner{width:100%;min-width:0}.workout-inspector-panel{position:sticky;top:80px}.workout-inspector-scrollable{flex:1;overflow-y:auto;padding-right:4px;min-height:0}.workout-inspector-scrollable::-webkit-scrollbar{width:4px}.workout-inspector-scrollable::-webkit-scrollbar-track{background:#ffffff08;border-radius:4px}.workout-inspector-scrollable::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:4px}.workout-inspector-scrollable::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.toast-container{position:fixed;bottom:2.25rem;right:2.25rem;z-index:1000;display:flex;flex-direction:column;gap:.65rem}.toast-pill{background:var(--bg-tooltip);color:var(--text-primary);border:1px solid var(--border-hover);padding:.85rem 1.45rem;border-radius:14px;font-size:.88rem;font-weight:500;box-shadow:var(--shadow-modal);display:flex;align-items:center;gap:.75rem;animation:toastLevitate .3s cubic-bezier(.16,1,.3,1)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width: 1200px){.dashboard-layout{grid-template-columns:240px minmax(0,1fr)}.main-content{padding:1.75rem}.header{padding:0 1.75rem}}@media (max-width: 900px){.calendar-page-layout{grid-template-columns:1fr}.workout-inspector-panel{position:static;max-height:none}}@media (max-width: 900px){.dashboard-layout{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:85vw;height:100dvh;z-index:1000;transform:translate(-100%);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:none;background:var(--bg-card);border-right:1px solid var(--border-color)}.sidebar.mobile-open{transform:translate(0);box-shadow:0 0 50px #000000b3}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;animation:spatialDropIn .2s cubic-bezier(.16,1,.3,1)}.main-content{padding:1.25rem}.header{padding:0 1.25rem;height:64px;justify-content:space-between!important}}.mobile-nav-toggle{display:none}@media (max-width: 900px){.mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:11px;color:var(--text-primary);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-card)}.mobile-nav-toggle:hover{border-color:var(--border-hover);color:var(--color-crimson)}}@media (max-width: 600px){.main-content{padding:.85rem}.metrics-grid{grid-template-columns:1fr}.table-card{margin-top:1.25rem!important;border-radius:12px!important}.table-header{padding:.85rem 1rem!important}.custom-table th,.custom-table td{padding:.75rem .85rem!important}.header-sync-text,.header-user-text,.header-signout-text{display:none!important}.modal-card{padding:1.5rem 1.15rem!important;border-radius:16px!important}.form-grid-2col{grid-template-columns:1fr!important}.filter-tabs-group{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}input[type=text],input[type=password],input[type=email],input[type=tel],input[type=number],input[type=search],input[type=date],input[type=time],select,textarea{font-size:16px!important}}
