:root{--bg:#04121f;--ink:#eaf5ff;--navy:#031828;--muted:#8daabd;--line:#1c3a50;--teal:#008dff;--mint:#52d6ff}body{background:radial-gradient(ellipse at 10% 0,#0a2c43,transparent 60%),#04121f;color:var(--ink);font-family:Tahoma,Arial,sans-serif}.sidebar{width:220px;background:linear-gradient(180deg,#072337,#03131f);border-left:1px solid #17354a}.logo{font-size:19px}.sidebar .mark{color:#40caff;background:#0b2d43}.sidefoot{color:#7195ac}main{margin-right:220px;padding:28px 36px;max-width:1700px}nav{margin-top:28px;gap:5px}nav button{color:#91afc3;padding:13px;border:1px solid transparent}nav button.active{background:linear-gradient(100deg,#008cff25,#008cff08);border-color:#148ee870;color:#58cfff;box-shadow:inset -3px 0 #009cff}header{gap:16px}.coaches{display:flex;gap:22px;flex-wrap:wrap}.coaches div{display:grid;gap:5px}.coaches small{font-size:9px;color:#42c8fa;letter-spacing:2px}.coaches b{font-size:10px;letter-spacing:.8px;color:#c9e4f4}h1{font-size:27px}#syncStatus{font-size:11px;margin:-10px 0 20px;color:#51d0b1}#syncStatus.sync-error{color:#ff9f98;line-height:1.8;background:#481e26;padding:12px;border-radius:8px}.btn{background:linear-gradient(110deg,#009dff,#0874ea);box-shadow:0 5px 20px #007aff20;transition:transform .15s,filter .15s}.btn:hover{filter:brightness(1.14);transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.secondary{background:#0a283d;border-color:#234960;color:#dceefa;box-shadow:none}.textbtn{border:0;background:none;color:#45caff;padding:8px 0;font-size:12px;display:block;cursor:pointer}.hero.flagship{min-height:335px;padding:35px 40px;border:1px solid #235576;background:linear-gradient(110deg,#061928,#0c3a57);box-shadow:0 20px 60px #0003}.flagship .hero-copy{width:55%}.flagship h2{font-size:43px;line-height:1.5;max-width:none;letter-spacing:-1px}.flagship h2 em{color:#49cafa;font-style:normal}.flagship p{font-size:14px;color:#9fc4d9}.flagship .hero-visual{width:43%;background:linear-gradient(0deg,#041b2ef0,#03223a20),linear-gradient(145deg,#063956,#00172d);opacity:.9;border-radius:16px;position:absolute;left:0;top:0;bottom:0;overflow:hidden;mask-image:linear-gradient(to right,#000 60%,transparent)}.hero-watermark{position:absolute;bottom:60px;left:35px;font-size:12px;letter-spacing:7px;text-shadow:0 3px 20px #000}.hero-watermark strong{font-size:44px;letter-spacing:3px}.flagship .hero-caption{left:25px;bottom:18px;font-size:10px}.hero-caption small{font-size:8px}.flagship:after{display:none}.badge{color:#8cdaff;font-size:10px;letter-spacing:2px}.panel,.card,.stat{background:linear-gradient(135deg,#0b263a,#071e30);border:1px solid #19394f;box-shadow:0 5px 18px #0001;border-radius:16px}.stat{position:relative;overflow:hidden}.stat:before{content:'';position:absolute;top:0;right:0;width:60px;height:2px;background:#13b7ff}.stat strong{color:#fff;font-size:30px}.feature-card{background:linear-gradient(150deg,#0b2c45,#061b2d)}.feature-card h2{margin-top:14px}.feature-card img{width:100%;max-height:170px;object-fit:cover;border-radius:10px}.tag,.chip{background:#123b56;border-color:#23516a;color:#6fd4ff}.listrow{border-bottom-color:#1b374a}.avatar{background:linear-gradient(140deg,#0865a0,#07334e);color:#67d5ff;border:1px solid #2082b9;object-fit:cover;width:46px;height:46px;border-radius:50%}.player-card .avatar{width:66px;height:66px}.player-card h3{font-size:19px;margin:19px 0 8px}.metrics{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.metrics>div{background:#051b2d;border:1px solid #1a3b50;padding:14px 10px;text-align:center;flex:1;min-width:75px;border-radius:9px}.metrics strong{display:block;font-size:22px;color:#f0faff;margin-bottom:7px}.metrics small{font-size:10px;display:block}.status{font-size:10px;border-radius:20px;padding:8px 10px;display:inline-block}.status.good{color:#54e7be;background:#093d37}.status.mid{color:#ffd88c;background:#403921}.status.low{color:#ffa7ad;background:#442734}.status.none{color:#9eb5c6;background:#173044}input,select,textarea{background:#061c2e;color:#e7f5ff;border:1px solid #2a4b62;color-scheme:dark}input:focus,select:focus,textarea:focus{outline:2px solid #009dff}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-top:24px}.calendar-grid>small{text-align:center;padding-bottom:10px;font-size:11px}.day{border:1px solid #176595;background:#0b3d5d;border-radius:10px;min-height:68px;color:#9edcff;display:grid;place-content:center;gap:4px}.day small{font-size:9px;color:inherit}.day.disabled{background:#15232f;border-color:#2a3742;color:#6b7d89}.day.selected{outline:2px solid #26bdff;outline-offset:2px}.day b{font-size:19px}.chart{display:block;width:100%;height:auto;max-height:310px}.report-head{border-bottom:1px solid #25475e;margin-bottom:22px}.report-head h2{margin-top:15px}.report-series{break-inside:avoid;border-bottom:1px solid #244053;padding:15px 0}.report-note{border-right:3px solid #219ddb;padding:12px;background:#0b2b42;margin-bottom:10px}.report-signatures{display:flex;justify-content:space-between;margin-top:35px;font-size:11px;line-height:2;color:#98b9cd}.notice{background:#123047;border-color:#2495c9;color:#b2d3e6}.library-banner{background:linear-gradient(110deg,#083a5d,#061d30);border-color:#20567a}.exercise-card{overflow:hidden}.exercise-card img{background:#041b2a}.exercise-dose{background:#0a3048}.source-note a{color:#65ceff}dialog{color:#e9f6ff;background:#092438;border:1px solid #31516a;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}.close{background:#163d57;color:#e6f6ff}.exercise{background:#0e3349}.toast{background:#0d4668;border:1px solid #249dda}.player-mode .image-edit-button,.player-mode .library-banner button,.player-mode .exercise-detail-image+.toolbar{display:none}.upload-preview{max-height:300px;object-fit:contain}a.btn{text-decoration:none}.time{color:#7cd7ff}.empty{line-height:2}.toolbar label{margin:0}.quick-actions{display:flex;gap:10px;flex-wrap:wrap}@media(min-width:1500px){main{padding:35px 60px}.flagship h2{font-size:50px}}@media(max-width:1000px){main{margin-right:185px;padding:24px}.sidebar{width:185px;padding:25px 14px}.coaches{gap:10px}.hero.flagship{padding:26px}.flagship h2{font-size:34px}.flagship .hero-copy{width:64%}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){main{margin:0;padding:22px 15px 110px}.sidebar{width:100%;height:auto;padding:0 0 env(safe-area-inset-bottom);border:0;border-top:1px solid #244156}.sidebar nav{margin:0;display:flex;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.sidebar nav button{min-width:63px;padding:10px 5px;font-size:9px;border-radius:0}.sidebar nav button.active{box-shadow:inset 0 2px #009cff}.coaches{gap:8px;flex-direction:column}.coaches small{font-size:7px;letter-spacing:1px}.coaches b{font-size:8px}h1{font-size:23px}header{align-items:center}.hero.flagship{min-height:340px;padding:24px 20px}.flagship .hero-copy{width:100%}.flagship h2{font-size:35px;max-width:90%}.flagship .hero-visual{width:70%;opacity:.3}.hero-watermark,.hero-caption{display:none}.flagship .hero-copy{z-index:2}.flagship p{font-size:12px}.flagship .btn{font-size:12px;padding:12px}.stats{gap:10px}.stat{padding:16px}.stat strong{font-size:25px}.calendar-grid{gap:5px}.calendar-grid>small{font-size:9px}.day{min-height:52px;border-radius:7px}.day b{font-size:15px}.day small{font-size:8px}.panel{padding:18px}.toolbar>*{max-width:100%}.status{max-width:130px;text-align:center;line-height:1.5}.metrics strong{font-size:20px}.report-signatures{font-size:9px}.report-head h2{line-height:1.8}.chart{min-height:150px}.listrow{gap:8px}.listrow .grow{min-width:0}.listrow b{overflow-wrap:anywhere}}
@media print{body{background:white!important;color:#111!important}.sidebar,header,#syncStatus,.no-print,dialog,.toast{display:none!important}main{margin:0;padding:0;max-width:none}#report{background:white!important;border:0;box-shadow:none;padding:0}.panel,.metrics>div,.report-note{background:white!important;color:#111!important;border-color:#bbb!important}.metrics strong,.muted,small,.eyebrow,.report-signatures{color:#333!important}.chart text{fill:#333}.report-head h2{font-size:22px}.metrics{gap:5px}.metrics>div{min-width:65px;padding:8px}.report-series{page-break-inside:avoid}.report-note{page-break-inside:avoid}button{display:none!important}@page{size:A4;margin:15mm}}
.auth-card{max-width:620px;margin:38px auto}.auth-card h2{margin-top:10px}.auth-card form{display:grid;gap:3px}.auth-card form .btn{width:100%;margin-top:8px}.auth-card .notice{border-radius:8px}.auth-card .textbtn{margin-top:16px;display:inline-block}
.textbtn.danger{color:#ff9ca5}
