:root{color:#24282e;font-synthesis:none;--red:#e5443b;--red-hover:#ce3931;--ink:#17191d;--muted:#78808d;--border:#e7e9ee;--green:#24825e;--radius:14px;background:#f5f6f8;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:100%}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #e5443b66}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1px;margin-bottom:8px;font-size:1.875rem;font-weight:750;line-height:1.2}h2{letter-spacing:-.4px;margin-bottom:7px;font-size:1.25rem;font-weight:700}h3{letter-spacing:-.3px;font-size:1.1875rem}p{line-height:1.6}a{color:inherit;text-decoration:none}small{font-size:.875rem}label{flex-direction:column;gap:7px;margin:16px 0;font-size:.9375rem;font-weight:650;display:flex}input,select,textarea{color:#24282e;outline-offset:2px;background:#fff;border:1px solid #dfe3e9;border-radius:8px;min-width:0;max-width:100%;padding:11px 12px;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:#b1b8c3}input[type=checkbox]{accent-color:var(--red);flex-shrink:0;width:16px;height:16px;margin:0}input[type=date]{min-height:39px}label small{color:var(--muted);font-weight:400;line-height:1.5}textarea{resize:vertical;line-height:1.6}fieldset{border:1px solid var(--border);border-radius:9px;margin:20px 0;padding:14px}legend{padding:0 6px;font-size:.9375rem;font-weight:650}.muted{color:var(--muted);font-size:.9375rem}.eyebrow{letter-spacing:1.5px;color:var(--muted);margin-bottom:10px;font-size:.8125rem;font-weight:750}.row-inline{align-items:center;gap:10px;display:flex}.row-inline h2{margin:0}.button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:41px;padding:10px 16px;font-size:.9375rem;font-weight:650;transition:background .15s;display:inline-flex}.button.primary{background:var(--red);color:#fff;box-shadow:0 2px 3px #d13c2b11}.button.primary:hover:not(:disabled){background:var(--red-hover)}.button.secondary{background:#fff;border-color:#dfe3e9}.button.secondary:hover:not(:disabled){background:#f6f7f9}.button.small{min-height:34px;padding:7px 11px;font-size:.875rem}.icon-button{min-width:34px;min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;padding:7px;display:inline-flex}.icon-button:hover{color:var(--ink);background:#9aa4b512}.text-button{background:0 0;border:0;align-items:center;gap:6px;padding:7px 0;font-size:.9375rem;font-weight:600;display:inline-flex}.text-button:hover{color:var(--red)}.badge{color:#737d8e;white-space:nowrap;background:#eff1f5;border-radius:5px;align-items:center;padding:5px 8px;font-size:.8125rem;font-weight:650;line-height:1.3;display:inline-flex}.badge.green{color:#27835f;background:#eaf6ef}.badge.amber{color:#ac7827;background:#fff4df}.badge.violet{color:#7961b5;background:#f0edfb}.badge.blue{color:#5079b4;background:#eaf1fb}.badge.dark{color:#fff;background:#24282e}.card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;margin-bottom:24px;padding:24px;box-shadow:0 2px 3px #25334b02}.card-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.card-heading .eyebrow{margin-bottom:5px}.card-heading h2{margin:0}.card-heading p{margin:6px 0 0}.notice{color:#947334;background:#fff9ee;border:1px solid #f0e0bc;border-radius:8px;margin:12px 0;padding:13px 16px;font-size:.9375rem;line-height:1.6}.notice.error{color:#ba4238;background:#fff2f1;border-color:#f2c7c2}.loading{color:var(--muted);justify-content:center;align-items:center;gap:10px;padding:45px;font-size:1rem;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;padding:38px 20px}.empty-symbol{color:#acb5c3;margin:6px 0 15px;font-size:1.875rem}.empty h3{margin-bottom:9px;font-size:1.125rem}.empty p{color:var(--muted);max-width:440px;margin:0 auto 16px;font-size:.9375rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-layout{min-height:100vh;display:flex}.sidebar{color:#979da8;z-index:40;background:#17191d;flex-direction:column;width:246px;padding:29px 18px 0;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-brand{color:#fff;letter-spacing:.5px;align-items:center;gap:11px;margin-bottom:49px;padding:0 9px;font-size:.9375rem;font-weight:800;display:flex}.sidebar-brand img{object-fit:contain;width:42px;height:50px}.sidebar-brand small{letter-spacing:2.8px;color:#858b97;margin-top:5px;font-size:.8125rem;font-weight:550;display:block}.sidebar-eyebrow{letter-spacing:1.8px;color:#666d7a;margin-bottom:14px;padding:0 14px;font-size:.8125rem;font-weight:650}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav button{color:#a0a5b0;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:13px;padding:13px 15px;font-size:.9375rem;font-weight:550;display:flex}.sidebar nav button:hover{color:#fff;background:#ffffff08}.sidebar nav button.active{color:#fff;background:#e5443b;box-shadow:0 4px 13px #0002}.sidebar-user{border-top:1px solid #ffffff0c;align-items:center;gap:10px;margin-top:auto;padding:19px 0 20px;display:flex}.user-initial{color:#d1d4dc;background:#ffffff0b;border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:.9375rem;font-weight:700;display:grid}.sidebar-user>div{flex:1;min-width:0}.sidebar-user strong{color:#d4d7de;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;display:block;overflow:hidden}.sidebar-user small{color:#717989;margin-top:4px;font-size:.8125rem;display:block}.sidebar-user .icon-button{color:#9299a5}.workspace{flex-direction:column;flex:1;min-width:0;margin-left:246px;display:flex}.topbar{border-bottom:1px solid var(--border);color:#9098a4;background:#fff;justify-content:space-between;align-items:center;height:66px;padding:0 36px;font-size:.875rem;display:flex}.topbar strong{color:#646e7b;font-weight:550}.topbar-divider{color:#c8ced6;margin:0 12px}.connection{letter-spacing:.2px;align-items:center;gap:7px;font-size:.8125rem;display:flex}.connection i{background:#42a881;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #42a88110}.connection.offline i{background:var(--red)}.main-content{flex:1;width:100%;max-width:1500px;margin:0 auto;padding:35px 36px 25px}.page-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:31px;display:flex}.page-title p{color:var(--muted);margin-bottom:0;font-size:.9375rem}.page-title .eyebrow{margin-bottom:9px}.page-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.app-footer{color:#9da5b0;letter-spacing:.2px;border-top:1px solid var(--border);justify-content:space-between;gap:15px;padding:18px 36px;font-size:.8125rem;display:flex}.mobile-menu,.mobile-backdrop{display:none}.class-tabs{border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:25px;padding-bottom:0;display:flex;overflow:auto}.class-tabs>button{white-space:nowrap;color:#808998;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:9px;padding:14px 17px;font-size:.9375rem;font-weight:600;display:flex}.class-tabs>button span{text-align:center;color:#7a8493;background:#e8ebf0;border-radius:4px;min-width:20px;padding:2px 5px;font-size:.8125rem}.class-tabs>button.active{border-color:var(--red);color:var(--red)}.class-tabs>button.active span{color:var(--red);background:#fdeae8}.view-toggle{flex-shrink:0;align-items:center;gap:3px;margin-left:auto;display:flex}.view-toggle button{color:#9ca5b1;background:0 0;border:0;border-radius:5px;padding:7px;display:flex}.view-toggle button.active{color:#4a5565;background:#fff;box-shadow:0 1px 3px #29374b10}.class-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.class-heading h2{font-size:1.3125rem}.class-heading p{margin:5px 0 0;font-size:.875rem}.day-picker{align-items:center;gap:5px;display:flex}.day-picker label{margin:0}.day-picker input{background:0 0;max-width:150px;min-height:34px;padding:8px 9px;font-size:.875rem}.day-picker .text-button{color:var(--muted);padding:7px 6px;font-size:.8125rem}.day-picker .icon-button{min-width:29px;min-height:31px;padding:4px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px;display:grid}.stat-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;min-width:0;padding:22px 23px}.stat-card>span{color:#7b8593;margin-bottom:15px;font-size:.8125rem;font-weight:600;display:block}.stat-card strong{letter-spacing:-1.3px;font-size:1.9375rem;font-weight:700;line-height:1.1;display:block}.stat-card strong small{letter-spacing:0;color:#a1a8b3;font-size:1rem;font-weight:450}.stat-card p{color:#959da9;margin:12px 0 0;font-size:.8125rem;line-height:1.6}.stat-card.accent{background:#fff7f5;border-color:#f3e4df}.stat-card.accent strong{color:#d1463a}.filter-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding:17px 21px;display:flex}.range-picker{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.segmented{background:#f2f4f7;border-radius:7px;align-items:center;gap:3px;padding:3px;display:flex}.segmented button{color:#838c9b;white-space:nowrap;background:0 0;border:0;border-radius:5px;padding:8px 11px;font-size:.8125rem;font-weight:600}.segmented button.active{color:#303a4a;background:#fff;box-shadow:0 1px 4px #25334b12}.range-dates{color:#afb7c2;align-items:center;gap:8px;font-size:.875rem;display:flex}.range-dates label{color:#919aa7;flex-direction:row;align-items:center;gap:7px;margin:0;font-size:.8125rem}.range-dates input{border-color:#e9ecf0;max-width:137px;min-height:32px;padding:6px 8px;font-size:.8125rem}.checkbox-label{cursor:pointer;flex-direction:row;align-items:center;gap:9px;font-size:.9375rem;font-weight:500;line-height:1.5;display:flex}.checkbox-label span{display:block}.checkbox-label small{max-width:350px;display:block}.checkbox-label.include-personal{margin:0;font-size:.8125rem}.checkbox-label.include-personal input{width:13px;height:13px}.table-card{padding:22px 0 0;overflow:hidden}.table-card>.card-heading{margin:0;padding:0 22px 14px}.table-actions{align-items:center;gap:11px;display:flex}.search-field{border:1px solid var(--border);color:#9ba5b3;border-radius:7px;flex-direction:row;align-items:center;gap:8px;margin:0;padding:0 10px;display:flex}.search-field input{background:0 0;border:0;max-width:135px;padding:9px 0;font-size:.8125rem}.search-field input:focus{outline:0}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%;font-size:.9375rem}th{color:#9099a7;border-top:1px solid var(--border);border-bottom:1px solid var(--border);letter-spacing:.2px;background:#fafbfd;padding:13px 18px;font-size:.8125rem;font-weight:500}td{vertical-align:middle;border-bottom:1px solid #eef0f4;padding:17px 18px;font-size:.875rem}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfcfe}td small.warning-text{color:#b5893e;margin-top:4px;font-size:.8125rem;display:block}.athlete-link{text-align:left;color:#354052;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.athlete-link strong{font-size:.875rem;font-weight:600;display:block}.athlete-link small{color:#a1a9b4;margin-top:5px;font-size:.8125rem;display:block}.avatar{color:#727e91;background:#edf0f5;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8125rem;font-weight:600;display:inline-flex}.avatar.large{border-radius:12px;width:47px;height:47px;font-size:1.0625rem}.score-pill{color:#9ca6b3;background:#f2f4f7;border-radius:6px;justify-content:center;align-items:center;gap:3px;min-width:43px;padding:6px 11px;font-weight:650;display:inline-flex}.score-pill.good{color:#2e855d;background:#eaf6ee}.score-pill.low{color:#bd7454;background:#fdf0e6}.score-pill small{opacity:.7;font-size:.8125rem;font-weight:450}.class-board{align-items:flex-start;gap:18px;padding-bottom:20px;display:flex;overflow:auto}.board-column{background:#edf0f5;border:1px dashed #d6dce5;border-radius:12px;flex:1;min-width:250px;max-width:360px;min-height:240px;padding:16px}.board-column header{justify-content:space-between;gap:10px;margin-bottom:18px;display:flex}.board-column h2{margin:0;font-size:1rem}.board-athlete{border:1px solid var(--border);cursor:grab;background:#fff;border-radius:9px;align-items:center;gap:9px;margin-bottom:8px;padding:12px;display:flex}.name-button{text-align:left;background:0 0;border:0;padding:0;font-size:.875rem}.board-column>p{text-align:center;margin-top:30px;font-size:.875rem}.section-toolbar{justify-content:space-between;align-items:center;gap:15px;margin:25px 0 20px;display:flex}.section-toolbar h2{text-transform:none;margin:0;font-size:1.3125rem}.section-toolbar .muted{margin-top:5px;display:block}.count{color:#a0a9b6;margin-left:6px;font-size:.875rem}.today-layout{grid-template-columns:minmax(0,1fr) 260px;gap:22px;display:grid}.wellness-card{margin:0}.section-icon{color:#bf9953;background:#faf1db;border-radius:11px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.wellness-card .card-heading>div{flex:1}.wellness-card>.muted{margin:22px 0 18px}.score-scale{grid-template-columns:repeat(var(--scores),minmax(0,1fr));gap:7px;display:grid}.score-scale:has(button:nth-child(6)){grid-template-columns:repeat(6,minmax(0,1fr))}.score{background:#f7f8fa;border:1px solid #e5e8ed;border-radius:9px;min-width:0;min-height:47px;font-size:1.0625rem;font-weight:700;transition:background .15s,color .15s}.score:hover:not(:disabled){border-color:var(--red);color:var(--red)}.score.selected{background:var(--red);color:#fff;border-color:var(--red);box-shadow:0 3px 7px #e5443b20}.score.selected:hover:not(:disabled){color:#fff}.scale-labels{color:#9aa2af;justify-content:space-between;margin:8px 1px 18px;font-size:.8125rem;display:flex}.score-footer{justify-content:space-between;align-items:center;gap:9px;display:flex}.score-footer .text-button{font-size:.8125rem}.save-status{color:#a6aebb;align-items:center;gap:5px;font-size:.8125rem;display:flex}.save-status.saved{color:var(--green)}.clear-score{margin-left:14px;font-size:.8125rem;font-weight:450}.duration-input{border-top:1px solid var(--border);grid-template-columns:1fr 80px;align-items:center;padding-top:15px;font-size:.8125rem;display:grid}.duration-input input{padding:7px 9px;font-size:.875rem}.duration-input small{grid-column:1/-1;font-size:.8125rem}.note-input{font-size:.8125rem}.note-input textarea{font-size:.9375rem}.day-summary{color:#fff;border-radius:var(--radius);background:#21242b;flex-direction:column;justify-content:center;padding:26px;display:flex}.day-summary .eyebrow{color:#999fab;font-size:.8125rem}.day-summary>strong{letter-spacing:-2px;margin:9px 0 1px;font-size:2.9375rem;font-weight:600}.day-summary>strong span{letter-spacing:-.7px;color:#727a89;font-size:1.375rem;font-weight:400}.day-summary>p{color:#a8aeba;margin-bottom:26px;font-size:.875rem}.day-summary-line{color:#a4acb9;align-items:center;gap:10px;margin-top:13px;font-size:.8125rem;display:flex}.day-summary-line svg{color:#e07168}.training-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:22px;display:grid}.training-card{min-width:0;margin:0}.training-card-top{justify-content:space-between;align-items:center;gap:14px;margin-bottom:19px;display:flex}.duration{align-items:center;gap:5px;font-size:.8125rem;display:flex}.training-card h3{margin:0 0 9px}.training-description{color:#9098a4;white-space:pre-wrap;margin-bottom:23px;font-size:.875rem}.field-hint{color:#8a94a3;font-size:.875rem;line-height:1.7}.inactive-card{opacity:.7}.profile-intro{align-items:center;gap:14px;margin:-4px 0 26px;display:flex}.profile-intro strong{margin-bottom:4px;font-size:.9375rem;display:block}.profile-intro .muted{font-size:.8125rem}.profile-intro>.badge{margin-left:8px}.back-link{color:#9199a5;margin:-13px 0 15px;font-size:.8125rem}.load-strip{border:1px solid var(--border);border-radius:var(--radius);background:#fff;align-items:center;gap:24px;margin:0 0 24px;padding:24px;display:flex}.load-strip>div{border-right:1px solid var(--border);min-width:100px;padding-right:25px}.load-strip>div>span{color:#9099a6;margin-bottom:9px;font-size:.8125rem;display:block}.load-strip strong{letter-spacing:-.6px;font-size:1.5rem;font-weight:650}.load-strip strong small{color:#a5adba;letter-spacing:0;font-size:.8125rem;font-weight:450}.load-strip p{color:#858e9e;align-items:flex-start;gap:10px;margin:0;font-size:.8125rem;line-height:1.7;display:flex}.load-strip p svg{color:#b2b9c5;flex-shrink:0}.load-strip p small{color:#adb4bf;margin-top:5px;font-size:.8125rem;display:block}.chart-controls{flex-wrap:wrap;gap:8px;display:flex}.chart-controls select{padding:8px 10px;font-size:.8125rem}.chart-container{width:100%;height:285px;margin:15px 0 5px}.chart-card>.field-hint{margin:15px 0 0;font-size:.8125rem}.history-wellness{background:#f8f9fb;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:17px;font-size:.9375rem;display:flex}.history-wellness p{white-space:pre-wrap;color:#798393;flex-basis:100%;margin:0;font-size:.875rem}.history-training{border-bottom:1px solid var(--border);justify-content:space-between;gap:15px;padding:22px 0;display:flex}.history-training:last-child{border:0;padding-bottom:0}.history-training strong{font-size:.9375rem}.history-training p{color:#8993a1;white-space:pre-wrap;margin:9px 0;font-size:.875rem}.history-values{color:#8b95a4;flex-wrap:wrap;gap:18px;margin-top:13px;font-size:.8125rem;display:flex}.history-values span{align-items:center;gap:6px;display:flex}.history-values b{color:#5a6677}.history-training blockquote{color:#788495;white-space:pre-wrap;border-left:2px solid #e4e7ed;margin:15px 0 0;padding:4px 13px;font-size:.875rem}.history-training>.text-button{white-space:nowrap;align-self:flex-start;font-size:.8125rem}.week-list{border:1px solid var(--border);border-radius:var(--radius);background:#fff;overflow:hidden}.week-day{border-bottom:1px solid var(--border);grid-template-columns:85px 1fr;min-height:94px;display:grid}.week-day:last-child{border:0}.week-day>header{border-right:1px solid var(--border);background:#fcfcfd;flex-direction:column;align-items:center;gap:4px;padding:21px 10px;display:flex}.week-day>header>span{text-transform:uppercase;color:#a2a9b5;font-size:.8125rem}.week-day>header strong{letter-spacing:-1px;font-size:1.4375rem}.week-day>header small{color:var(--red);font-size:.8125rem}.week-day.is-today>header{background:#fff5f2}.week-day>div{padding:16px 21px}.no-training{color:#b6bec9;margin:17px 0;font-size:.8125rem}.plan-training{border-bottom:1px solid var(--border);margin-bottom:10px;padding:5px 0 14px}.plan-training:last-child{border:0;margin:0;padding-bottom:4px}.plan-training-title{justify-content:space-between;align-items:center;gap:15px;display:flex}.plan-training h3{margin:0;font-size:1rem}.plan-training>p{color:#8e97a5;white-space:pre-wrap;margin:7px 0;font-size:.8125rem}.plan-training-meta{color:#9da5b2;flex-wrap:wrap;gap:18px;margin:11px 0;font-size:.8125rem;display:flex}.plan-training-meta span{align-items:center;gap:5px;display:flex}.participant-names{flex-wrap:wrap;gap:6px;display:flex}.participant-names span{color:#929baa;background:#f4f6f9;border-radius:4px;padding:4px 7px;font-size:.8125rem}.plan-training.cancelled{opacity:.55}.password-page{max-width:650px}.password-page .card{padding:28px}.boot{min-height:100vh;color:var(--red);flex-direction:column;justify-content:center;align-items:center;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0d14265c;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:17px;outline:0;width:100%;max-width:550px;max-height:90vh;padding:24px;overflow:auto;box-shadow:0 25px 100px #0003}.modal>header{justify-content:space-between;align-items:center;gap:15px;margin-bottom:10px;display:flex}.modal>header h2{letter-spacing:-.5px;margin:0;font-size:1.25rem}.modal>p{color:#818b9c;font-size:.9375rem}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-actions{justify-content:flex-end;gap:9px;margin-top:24px;display:flex}.modal form>label:first-child{margin-top:22px}.participant-options{max-height:230px;overflow:auto}.selection-actions{gap:13px;display:flex}.selection-actions button{font-size:.8125rem}.participant-options .checkbox-label{margin:10px 0;padding:5px 0}.participant-options small{font-size:.8125rem}.credentials{background:#f7f8fa;border-radius:10px;grid-template-columns:100px 1fr;gap:14px;margin-top:20px;padding:20px;font-size:.9375rem;line-height:1.6;display:grid}.credentials dt{color:#929ba8}.credentials dd{word-break:break-all;margin:0;font-weight:600}.password-value{-webkit-user-select:all;user-select:all;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.0625rem}.credential-icon{color:var(--red);padding:16px 0 8px}.toast{color:#fff;z-index:200;background:#213d32;border-radius:10px;align-items:center;gap:10px;max-width:min(490px,100vw - 30px);padding:15px 17px;font-size:.9375rem;line-height:1.5;display:flex;position:fixed;bottom:25px;right:26px;box-shadow:0 10px 45px #17253326}.toast.error{background:#9e3c36}.toast>svg{flex-shrink:0}.toast .icon-button{color:inherit;min-width:25px;min-height:25px;padding:4px}.toast span{flex:1}.login-screen{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.login-story{color:#fff;background:#191b20;flex-direction:column;min-height:100vh;padding:45px 55px;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";width:550px;height:550px;box-shadow:0 0 0 80px #ffffff015,0 0 0 160px #ffffff008;pointer-events:none;border:1px solid #ffffff04;border-radius:50%;position:absolute;bottom:-300px;right:-290px}.login-brand{align-items:center;gap:13px;display:flex}.login-brand img{object-fit:contain;width:55px;height:65px}.login-brand strong{letter-spacing:1px;font-size:1.0625rem;font-weight:800;display:block}.login-brand span{color:#858c99;letter-spacing:3.8px;margin-top:6px;font-size:.8125rem;display:block}.login-story-text{margin:auto 0;padding:100px 0}.login-story-text .eyebrow{color:#dc6963;letter-spacing:2px;margin-bottom:25px;font-size:.8125rem}.login-story-text h1{letter-spacing:-2.6px;margin:0 0 26px;font-size:clamp(2.1875rem,4vw,3.875rem);font-weight:600;line-height:1.12}.login-story-text>p{color:#9198a6;font-size:1rem;line-height:1.9}.login-line{color:#aeb3bf;align-items:center;gap:12px;margin-top:39px;font-size:.8125rem;display:flex}.login-line svg{color:var(--red)}.line-dot{background:#5c6372;border-radius:50%;width:3px;height:3px;margin:0 3px}.login-story-footer{letter-spacing:1.5px;color:#606878;justify-content:space-between;gap:15px;font-size:.8125rem;display:flex}.login-panel{background:#fafbfc;justify-content:center;align-items:center;padding:70px 40px;display:flex;position:relative}.login-form{width:100%;max-width:340px}.login-symbol{color:#737f91;background:#fff;border:1px solid #e4e7ed;border-radius:13px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:32px;display:flex}.login-form>.eyebrow{letter-spacing:1.9px;margin-bottom:12px;font-size:.8125rem}.login-form>h2{letter-spacing:-1px;margin-bottom:11px;font-size:1.875rem}.login-form>p{color:#9aa2ae;margin-bottom:29px;font-size:.875rem;line-height:1.8}.login-form input{background:#fff;min-height:44px;padding:12px 14px;font-size:.9375rem}.login-form label{color:#596475;margin:18px 0;font-size:.875rem}.login-submit{justify-content:space-between;width:100%;min-height:45px;margin-top:8px;padding:13px 16px;font-size:.875rem}.login-help{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:30px;padding-top:22px;font-size:.8125rem;display:flex}.login-help strong{color:#7a8595;font-weight:600}.login-help span{color:#a0a9b5;line-height:1.8}.login-bottom{color:#a8b0bc;font-size:.8125rem;position:absolute;bottom:27px}@media (min-width:1700px){.main-content{padding-top:45px}.sidebar{width:265px;padding-left:24px;padding-right:24px}.workspace{margin-left:265px}}@media (max-width:1200px){.sidebar{width:222px;padding-left:14px;padding-right:14px}.workspace{margin-left:222px}.main-content{padding:29px 25px}.topbar{padding:0 25px}.sidebar-brand{gap:9px;padding:0 7px;font-size:.8125rem}.sidebar-brand img{width:35px}.stat-card{padding:20px 17px}.filter-card{gap:16px}.load-strip{gap:18px}.load-strip>div{min-width:85px;padding-right:17px}.load-strip p{max-width:240px}.today-layout{grid-template-columns:minmax(0,1fr) 220px}.range-picker{gap:12px}.table-actions{flex-wrap:wrap;justify-content:flex-end}.login-story{padding:38px 40px}.card-heading.chart-heading{flex-wrap:wrap}}@media (max-width:950px){.sidebar{width:246px;transition:transform .2s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.workspace{margin-left:0}.mobile-menu{display:flex}.mobile-backdrop{z-index:35;background:#0c142366;border:0;display:block;position:fixed;inset:0}.topbar{padding:0 22px}.main-content{padding:28px 24px}.login-story{padding:32px}.login-story-text h1{font-size:2.5rem}.login-brand strong{font-size:.9375rem}.login-story-text p{font-size:.875rem}}@media (max-width:680px){h1{font-size:1.625rem}.main-content{padding:24px 16px}.page-title{flex-direction:column;align-items:flex-start;gap:17px;margin-bottom:23px}.page-actions{justify-content:flex-start;gap:8px}.page-title p{font-size:.875rem}.topbar{height:58px;padding:0 14px;font-size:.8125rem}.topbar-divider{margin:0 6px}.connection{font-size:.8125rem}.app-footer{padding:17px 16px;font-size:.8125rem}.stat-grid,.stat-grid.three{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.stat-grid.three .stat-card:last-child{grid-column:1/-1}.stat-card{padding:17px}.stat-card>span{margin-bottom:12px;font-size:.8125rem}.stat-card strong{font-size:1.625rem}.stat-card strong small{font-size:.875rem}.stat-card p{margin-top:9px;font-size:.8125rem}.card{margin-bottom:18px;padding:20px}.class-tabs{margin-bottom:20px}.class-tabs>button{gap:6px;padding:12px 10px;font-size:.875rem}.class-heading{flex-direction:column;align-items:flex-start;gap:16px}.class-heading>.day-picker{align-self:flex-end}.filter-card{padding:15px}.range-picker{gap:13px}.range-dates input{width:117px;font-size:.8125rem}.range-dates{gap:7px}.range-dates label{gap:5px}.segmented button{padding:8px 10px}.table-card{padding:18px 0 0}.table-card>.card-heading{flex-direction:column;align-items:flex-start;gap:14px;padding:0 17px 17px}.table-card h2{font-size:1.125rem}.table-card .muted{font-size:.8125rem}.table-actions{justify-content:space-between;width:100%}.search-field{flex:1;max-width:240px}.search-field input{width:100%;max-width:100%;font-size:.875rem}.table-card td{padding:15px}.table-card th{padding:12px 15px}.today-layout{grid-template-columns:1fr}.day-summary{display:none}.wellness-card .card-heading{gap:10px}.wellness-card .card-heading h2{font-size:1.125rem}.wellness-card .eyebrow{font-size:.8125rem}.wellness-card .badge{padding:5px 6px;font-size:.8125rem}.section-toolbar{flex-wrap:wrap;gap:13px;margin-top:20px}.section-toolbar h2{font-size:1.1875rem}.section-toolbar>.day-picker{margin-left:auto}.section-icon{width:35px;height:38px}.training-grid{gap:17px}.training-card{margin:0}.score{min-height:44px;font-size:1.0625rem}.score-scale{gap:6px}.scale-labels,.score-footer .text-button{font-size:.8125rem}.load-strip{flex-wrap:wrap;gap:14px;padding:18px}.load-strip>div{flex:1;min-width:0;padding-right:12px}.load-strip>div:nth-child(3){border-right:0}.load-strip strong{font-size:1.375rem}.load-strip strong small,.load-strip>div>span{font-size:.8125rem}.load-strip p{border-top:1px solid var(--border);width:100%;max-width:100%;padding-top:15px}.profile-intro{flex-wrap:wrap;gap:10px}.profile-intro .badge{margin-left:0}.profile-intro strong{font-size:.875rem}.chart-container{height:240px}.chart-controls{gap:5px}.chart-controls select{max-width:180px;font-size:.8125rem}.card-heading{flex-wrap:wrap;gap:14px}.history-training{flex-direction:column;gap:8px}.history-training .row-inline{flex-wrap:wrap;gap:6px}.history-training>.text-button{align-self:flex-end}.history-values{gap:12px}.week-day{grid-template-columns:57px 1fr}.week-day>header{padding:19px 4px}.week-day>header strong{font-size:1.3125rem}.week-day>div{padding:14px}.plan-training-title{align-items:flex-start;gap:8px}.plan-training-meta{gap:10px;font-size:.8125rem}.plan-training h3{font-size:.9375rem}.participant-names span{font-size:.8125rem}.modal-backdrop{padding:12px}.modal{border-radius:12px;max-height:94vh;padding:21px}.modal>header h2{font-size:1.25rem}.form-grid{gap:12px}.form-actions .button{font-size:.875rem}.credentials{grid-template-columns:75px 1fr;padding:15px;font-size:.875rem}.password-value{font-size:1rem}.toast{padding:13px 14px;font-size:.875rem;bottom:15px;right:15px}.login-screen{grid-template-columns:1fr}.login-story{min-height:unset;padding:25px 26px 27px}.login-brand img{width:37px;height:45px}.login-brand strong{font-size:.8125rem}.login-brand span{letter-spacing:2.7px;font-size:.8125rem}.login-story-text{padding:35px 0 0}.login-story-text .eyebrow{margin-bottom:15px;font-size:.8125rem}.login-story-text h1{letter-spacing:-1.5px;margin-bottom:15px;font-size:2.25rem}.login-story-text>p{margin-bottom:0;font-size:.8125rem}.login-line,.login-story-footer{display:none}.login-panel{padding:35px 26px 65px}.login-symbol{display:none}.login-form{max-width:400px}.login-form h2{font-size:1.625rem}.login-form>.eyebrow{margin-bottom:10px}.login-form>p{margin-bottom:22px}.login-help{margin-top:22px}.login-bottom{font-size:.8125rem;bottom:22px}}body{line-height:1.5}.sidebar{overflow-y:auto}.sidebar-user{flex-shrink:0}.topbar{flex-wrap:wrap;gap:12px;height:auto;min-height:66px;padding-top:15px;padding-bottom:15px}.connection{flex-shrink:0}.row-inline{min-width:0}.range-dates{flex-wrap:wrap}.range-dates input{width:10rem;max-width:100%}.range-dates label{min-width:0}.segmented{flex-wrap:wrap}.checkbox-label.include-personal{line-height:1.6}.day-picker{flex-wrap:wrap}.day-picker input{max-width:11rem}.score-footer,.save-status,.training-card-top,.load-strip{flex-wrap:wrap}.chart-controls select{max-width:100%}.chart-container,.chart-container .recharts-default-tooltip{font-size:.875rem}.modal{max-width:640px}.modal fieldset{min-width:0}.selection-actions{flex-wrap:wrap}.participant-picker>.field-hint{margin:9px 0 16px}.participant-classes{flex-direction:column;gap:10px;max-height:26rem;display:flex;overflow:auto}.participant-class{border:1px solid var(--border);border-radius:9px;flex-shrink:0;overflow:hidden}.participant-class-header{background:#f7f8fa;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.participant-class-header .checkbox-label{flex:1;min-width:0;margin:0;font-weight:650}.participant-class-header .checkbox-label span{overflow-wrap:anywhere}.participant-class-header small{margin-top:2px;font-size:.8125rem;font-weight:400}.participant-class-header .icon-button{flex-shrink:0;min-width:40px;min-height:40px}.participant-class-header [aria-expanded=true] svg{transform:rotate(180deg)}.participant-class-members{border-top:1px solid var(--border);max-height:18rem;padding:4px 12px 8px;overflow:auto}.participant-class-members .checkbox-label{overflow-wrap:anywhere;margin:4px 0;padding:8px 0}.participant-class-members .checkbox-label span{min-width:0}.participant-picker input[type=checkbox]{width:18px;height:18px}@media (max-width:680px){.topbar{min-height:58px}.range-dates input{width:9.5rem}.modal{padding:20px}.participant-class-header{padding:10px}}@media (max-width:540px){.modal .form-grid{grid-template-columns:1fr;gap:0}.form-actions{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.avatar-image{object-fit:cover;background:#fff;flex-shrink:0}.avatar-image[src="/logo.png"]{object-fit:contain}.profile-intro{flex-wrap:wrap;gap:24px}.profile-intro>div{flex-direction:column;gap:5px;display:flex}.photo-upload{max-width:240px}.weight-form{flex-wrap:wrap;align-items:end;gap:16px;margin:20px 0;display:flex}.weight-form label{flex:1;min-width:160px;margin:0}.csv-drop{border:2px dashed #d5d8df;border-radius:12px;margin:20px 0;padding:24px;display:block}.csv-format{overflow-wrap:anywhere;background:#f5f6f8;padding:12px;display:block}.import-preview{max-height:340px;overflow:auto}.audit-entry{border-bottom:1px solid #eee;padding:12px 0}.audit-entry summary{cursor:pointer}.card+.card{margin-top:20px}.participant-names .avatar{width:26px;height:26px}.profile-photo-editor{align-items:center;gap:18px;margin:12px 0 24px;display:flex}.profile-photo-editor label{flex:1;min-width:0}.profile-photo-editor input{max-width:100%}@media (max-width:480px){.profile-photo-editor{flex-direction:column;align-items:flex-start}}.chart-container{overflow:hidden}
