@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";.season-welcome{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);box-sizing:border-box;margin:auto;padding:28px;overflow:auto;border:1px solid var(--border, #ddd);border-radius:8px;background:var(--bg-card, #fff);color:var(--text, #222);font:inherit;line-height:1.6}.season-welcome::backdrop{background:#0000007a}.season-welcome h2{font-size:26px;line-height:1.2;margin:12px 0;letter-spacing:0}.season-welcome p{margin:12px 0}.season-welcome .season-welcome-label{color:var(--primary, #c8102e);font-size:14px;font-weight:600}.season-welcome blockquote{margin:24px 0;padding-left:16px;border-left:3px solid var(--primary, #c8102e);font-weight:600}.season-welcome .btn-primary{width:100%;white-space:normal;min-height:48px;margin-top:12px}.history-header{flex-wrap:wrap;gap:12px}.season-picker{max-width:100%;flex-wrap:wrap;gap:8px}.cal-day.outside-season{opacity:.35;pointer-events:none}.coach-group-camps{margin:20px 0}.coach-group-camps[hidden]{display:none}.coach-group-camps h2{margin-bottom:12px}.coach-group-camps h3{font-size:16px;line-height:1.4}.coach-group-camps p{margin:8px 0;line-height:1.5}.camp-group-label{font-size:12px;color:var(--text-secondary)}.camp-country-flag{width:25px;height:14px;object-fit:contain;vertical-align:middle;flex-shrink:0}:root{--primary: #C8102E;--primary-light: #E63946;--primary-dark: #A00D24;--primary-glow: rgba(200,16,46,.12);--accent: #1D1D1F;--accent-light: #424245;--accent-glow: rgba(29,29,31,.08);--danger: #FF3B30;--danger-dark: #D62C23;--success: #34C759;--warning: #FF9500;--blue: #007AFF;--bg-body: #FFFFFF;--bg-card: #FFFFFF;--bg-card-hover: #FAFAFA;--bg-input: #FFFFFF;--bg-elevated: #F0F0F5;--border: rgba(0,0,0,.1);--border-light: rgba(0,0,0,.16);--text: #1D1D1F;--text-secondary: #5A5A60;--text-tertiary: #6B6B70;--text-muted: #6B6B70;--text-dim: #8E8E93;--radius-sm: 12px;--radius: 16px;--radius-lg: 24px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.08);--shadow: 0 4px 24px rgba(0,0,0,.08), 0 2px 6px rgba(0,0,0,.06);--shadow-glow: 0 4px 20px var(--primary-glow);--transition-fast: .18s cubic-bezier(.25,.1,.25,1);--transition: .25s cubic-bezier(.25,.1,.25,1)}[data-theme=dark]{--primary: #FF3B57;--primary-light: #FF5C73;--primary-dark: #C8102E;--primary-glow: rgba(255,59,87,.2);--accent: #F5F5F7;--accent-light: #C7C7CC;--accent-glow: rgba(245,245,247,.06);--danger: #FF453A;--danger-dark: #FF6961;--success: #30D158;--warning: #FFA31A;--blue: #0A84FF;--bg-body: #0B0B0D;--bg-card: #17171A;--bg-card-hover: #1F1F23;--bg-input: #1A1A1D;--bg-elevated: #232327;--border: rgba(255,255,255,.1);--border-light: rgba(255,255,255,.18);--text: #F5F5F7;--text-secondary: #D1D1D6;--text-tertiary: #ABABB0;--text-muted: #ABABB0;--text-dim: #ABABB0;--shadow-sm: 0 1px 3px rgba(0,0,0,.5), 0 1px 2px rgba(0,0,0,.4);--shadow: 0 4px 24px rgba(0,0,0,.55), 0 2px 6px rgba(0,0,0,.4);--shadow-glow: 0 4px 22px rgba(255,59,87,.3);color-scheme:dark}[data-theme=dark] body{background:var(--bg-body);color:var(--text)}[data-theme=dark] .splash-screen{background:#0b0b0d}[data-theme=dark] .splash-lane-lines{background:repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0,rgba(255,255,255,.08) 20px,transparent 20px,transparent 30px)}[data-theme=dark] .splash-data-item{background:#ff3b571f;border-color:#ff3b573d;color:var(--primary-light)}[data-theme=dark] .filter-select:hover{background-color:var(--bg-card-hover)}[data-theme=dark] .filter-select:focus{background-color:var(--bg-card)}[data-theme=dark] .toast{box-shadow:0 4px 24px #0009}[data-theme=dark] .toast--error{background:#3a1418}[data-theme=dark] .save-success-overlay{background:#0000008c}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{color-scheme:dark}.theme-switcher{display:inline-flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;padding:4px;gap:2px;width:100%;max-width:340px}.theme-switcher button{flex:1;border:0;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;padding:9px 12px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .18s ease,color .18s ease,transform .12s ease;letter-spacing:-.01em}.theme-switcher button:hover{color:var(--text)}.theme-switcher button.active{background:var(--bg-card);color:var(--text);box-shadow:0 1px 3px #0000001a}[data-theme=dark] .theme-switcher button.active{background:var(--bg-card-hover);box-shadow:0 1px 3px #00000080}.theme-switcher button svg{width:14px;height:14px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;background:var(--bg-body);color:var(--text);min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;letter-spacing:-.01em;overflow-x:hidden}.splash-screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#fff;z-index:10000;padding:20px;overflow:hidden}.splash-screen.fade-out{animation:splashFadeOut .5s ease forwards;pointer-events:none}@keyframes splashFadeOut{to{opacity:0;pointer-events:none}}.splash-content{text-align:center;width:100%;max-width:400px}.splash-phase{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px}.splash-track{position:relative;width:100%;height:100px;margin-bottom:20px;overflow:hidden}.splash-lane-lines{position:absolute;bottom:18px;left:0;right:0;height:2px;background:repeating-linear-gradient(90deg,rgba(0,0,0,.06) 0,rgba(0,0,0,.06) 20px,transparent 20px,transparent 30px)}.splash-runner{position:absolute;bottom:20px;left:-80px;color:var(--primary);animation:runAcross 1.6s ease-in-out forwards;filter:drop-shadow(0 2px 8px var(--primary-glow))}@keyframes runAcross{0%{left:-80px;transform:translateY(0)}25%{transform:translateY(-8px)}50%{left:50%;transform:translate(-50%) translateY(0)}75%{transform:translateY(-5px)}to{left:calc(100% + 80px);transform:translateY(0)}}.splash-data-overlay{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:24px;min-height:36px}.splash-data-item{opacity:0;transform:translateY(10px);animation:dataPopIn .4s ease forwards;animation-delay:var(--delay);padding:6px 14px;border-radius:20px;background:#c8102e0f;border:1px solid rgba(200,16,46,.12);font-size:13px;font-weight:600;color:var(--primary)}@keyframes dataPopIn{to{opacity:1;transform:translateY(0)}}.splash-logo-reveal{opacity:0;transform:scale(.8);animation:logoReveal .6s ease forwards;animation-delay:1.6s}@keyframes logoReveal{to{opacity:1;transform:scale(1)}}.splash-logo-mark{width:96px;height:96px;background:#fff;border:1px solid var(--border);border-radius:24px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:var(--shadow)}.splash-logo-mark.small{width:72px;height:72px;border-radius:20px;margin-bottom:20px}.splash-title{font-size:36px;font-weight:800;color:var(--accent);letter-spacing:-.03em}.splash-welcome{font-size:18px;font-weight:500;color:var(--text);line-height:1.6;margin-bottom:6px;opacity:0;animation:fadeSlideUp .6s ease .15s forwards}.splash-welcome strong{color:var(--primary);font-weight:700}.splash-welcome-sub{font-size:15px;color:var(--primary);font-weight:600;opacity:0;animation:fadeSlideUp .5s ease .4s forwards}.splash-dots{display:flex;gap:6px;justify-content:center;margin-top:24px}.splash-dots span{width:8px;height:8px;border-radius:50%;background:var(--primary);opacity:.2;animation:dotPulse 1.2s ease infinite}.splash-dots span:nth-child(2){animation-delay:.2s}.splash-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%{opacity:.2;transform:scale(1)}40%{opacity:1;transform:scale(1.3)}}.login-screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:#fff;z-index:9999;padding:40px 20px;overflow-y:auto;-webkit-overflow-scrolling:touch}.login-screen.fade-in{animation:loginFadeIn .5s ease forwards}@keyframes loginFadeIn{0%{opacity:0}to{opacity:1}}.login-card{background:#fff;border:none;border-radius:var(--radius-lg);padding:44px 36px 36px;max-width:380px;width:100%;text-align:center;box-shadow:0 8px 60px #00000014,0 1px 4px #0000000a}.login-logo{width:88px;height:88px;background:var(--bg-body);border:none;border-radius:22px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:20px;box-shadow:var(--shadow-sm)}.login-card h1{font-size:32px;font-weight:800;color:var(--accent);margin-bottom:6px;letter-spacing:-.03em}.login-tagline{font-size:13px;color:var(--text-secondary);margin-bottom:4px;font-style:italic;font-weight:500;line-height:1.5}.login-sub{font-size:12px;color:var(--text-tertiary);margin-bottom:16px}.login-forgot-pw{text-align:center;margin-top:12px;font-size:12px}.login-forgot-pw a{color:var(--text-tertiary);text-decoration:none}.login-forgot-pw a:hover{color:var(--primary);text-decoration:underline}.lang-selector{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.lang-btn{background:var(--bg-body);border:1.5px solid var(--border);border-radius:20px;padding:6px 16px;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.lang-btn.active{border-color:var(--primary);color:var(--primary);background:#c8102e0a}.lang-selector-pro{position:relative;display:flex;justify-content:center;margin-bottom:20px}.lang-dropdown-btn{display:inline-flex;align-items:center;gap:8px;background:var(--bg-card, #fff);border:1.5px solid var(--border);border-radius:12px;padding:8px 14px 8px 12px;font-size:13.5px;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .18s ease;min-width:148px;box-shadow:0 1px 2px #0000000a}.lang-dropdown-btn:hover{border-color:var(--primary);box-shadow:0 2px 8px #0000000f}.lang-dropdown-btn:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #c8102e2e}.lang-current-flag{font-size:18px;line-height:1}.lang-current-label{flex:1;text-align:left}.lang-chevron{color:var(--text-tertiary);transition:transform .2s ease;flex-shrink:0}.lang-selector-pro.open .lang-chevron{transform:rotate(180deg);color:var(--primary)}.lang-dropdown-menu{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);list-style:none;margin:0;padding:6px;background:var(--bg-card, #fff);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #00000024,0 4px 8px #0000000f;min-width:180px;z-index:1200;animation:langMenuIn .16s ease-out}@keyframes langMenuIn{0%{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%)}}.lang-option{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;font-size:14px;font-weight:500;color:var(--text-primary);cursor:pointer;transition:background .12s ease}.lang-option:hover,.lang-option:focus-visible{background:#c8102e0f;outline:none}.lang-option.selected{background:#c8102e1a;color:var(--primary);font-weight:600}.lang-option .lang-flag{font-size:18px;line-height:1}.lang-option .lang-name{flex:1}.login-card .form-group{text-align:left;margin-bottom:16px}.login-card .btn-primary{margin-top:4px}.app-version{margin-top:16px;font-size:11px;color:var(--text-tertiary);font-weight:500;letter-spacing:.3px}.login-pw-hint{display:flex;align-items:flex-start;gap:8px;background:var(--bg-body);border:1px solid var(--border);padding:10px 14px;margin-bottom:12px;border-radius:12px;font-size:12.5px;color:var(--text-secondary);line-height:1.45}.login-pw-hint .hint-icon{font-size:16px;flex-shrink:0;margin-top:1px}.login-pw-hint .hint-text{flex:1}.stay-row{display:flex;align-items:center;justify-content:space-between;margin:10px 0 16px}.stay-label{font-size:13px;color:var(--text-secondary);font-weight:500}.stay-switch{display:flex;background:var(--bg-body);border:1px solid var(--border);border-radius:10px;overflow:hidden}.stay-opt{padding:6px 16px;font-size:13px;font-weight:600;cursor:pointer;user-select:none;transition:all .2s;color:var(--text-secondary)}.stay-opt.active{background:var(--primary);color:#fff}.app-version-footer{display:flex;justify-content:center;align-items:center;gap:16px;padding:16px 0 24px;font-size:11px;color:var(--text-tertiary);font-weight:500;letter-spacing:.3px}.faq-link{cursor:pointer;color:var(--text-tertiary);font-size:11px;font-weight:500;letter-spacing:.3px;transition:color .2s}.faq-link:hover{color:var(--primary)}.faq-overlay{display:none;position:fixed;inset:0;background:#00000040;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:2000;justify-content:center;align-items:center;padding:20px}.faq-overlay.show{display:flex}.faq-panel{background:#fff;border:none;border-radius:20px;max-width:520px;width:100%;max-height:80vh;overflow-y:auto;padding:28px 24px;box-shadow:0 20px 60px #0000001f}.faq-panel h2{margin:0 0 20px;font-size:18px;color:var(--text);font-weight:700}.faq-item{border-bottom:1px solid var(--border)}.faq-item:last-child{border-bottom:none}.faq-question{display:flex;justify-content:space-between;align-items:center;padding:14px 0;cursor:pointer;font-size:14px;font-weight:600;color:var(--text);transition:color .2s}.faq-question:hover{color:var(--primary)}.faq-question .faq-arrow{font-size:12px;color:var(--text-tertiary);transition:transform .25s}.faq-item.open .faq-arrow{transform:rotate(180deg)}.faq-answer{display:none;padding:0 0 14px;font-size:13px;color:var(--text-secondary);line-height:1.55}.faq-item.open .faq-answer{display:block}.faq-close{display:block;margin:20px auto 0;background:none;border:1px solid var(--border);color:var(--text-secondary);padding:8px 28px;border-radius:12px;cursor:pointer;font-size:13px;transition:all .2s}.faq-close:hover{border-color:var(--primary);color:var(--primary)}.saved-users{margin-top:20px}.saved-users-title{font-size:10px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.user-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;margin:4px;border:1.5px solid var(--border);border-radius:20px;background:#fff;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.user-chip:hover{border-color:var(--primary);color:var(--primary);background:#c8102e05}.user-chip-icon{width:22px;height:22px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff}.app-container{max-width:600px;margin:0 auto;padding:0 16px 100px}.app-header{padding:16px 0 4px;display:flex;align-items:center;justify-content:space-between;gap:8px}.app-header .greeting-wave{display:inline-block;animation:wave 1.8s ease-in-out .5s 1;transform-origin:70% 70%}@keyframes wave{0%,to{transform:rotate(0)}15%{transform:rotate(14deg)}30%{transform:rotate(-8deg)}45%{transform:rotate(14deg)}60%{transform:rotate(-4deg)}75%{transform:rotate(10deg)}}.logo-row{display:flex;align-items:center;gap:12px;min-width:0;flex:1;overflow:hidden}.logo-icon{width:40px;height:40px;background:#fff;border:none;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-sm)}.app-header h1{font-size:20px;font-weight:800;letter-spacing:-.03em;color:var(--accent);white-space:nowrap}.app-header .subtitle{font-size:12px;color:var(--primary);font-weight:600;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-logout{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;box-shadow:var(--shadow-sm)}.btn-logout:hover{color:var(--danger);background:#ff3b300f}#btn-logout{color:var(--danger)}@media (max-width:400px){.btn-logout{width:32px;height:32px}.btn-logout svg{width:15px;height:15px}.logo-row{gap:8px}.logo-icon{width:34px;height:34px}.logo-icon svg{width:24px;height:24px}.app-header h1{font-size:17px}}.tab-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:0;padding:6px 16px calc(14px + env(safe-area-inset-bottom,0px));position:fixed;bottom:0;left:0;right:0;z-index:900;background:#fff;border-top:1px solid rgba(0,0,0,.06);box-shadow:0 -2px 12px #0000000a}.tab-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 0;border:none;border-radius:0;background:transparent;color:var(--text);font-family:inherit;font-size:11px;font-weight:600;cursor:pointer;transition:color .2s ease,transform .15s ease;position:relative;box-shadow:none;-webkit-tap-highlight-color:transparent;min-height:52px;width:100%;touch-action:manipulation;user-select:none;-webkit-user-select:none}.tab-btn,.tab-btn *{cursor:pointer}.tab-btn{position:relative}.tab-btn:hover{color:var(--text)}.tab-btn:active{transform:scale(.92)}.tab-btn.active{color:var(--primary);font-weight:700}.tab-btn.active:after{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:24px;height:3px;border-radius:0 0 3px 3px;background:var(--primary)}.tab-btn.active:before{display:none}.tab-icon{width:auto;height:auto;border-radius:14px;padding:5px 16px;background:transparent;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .25s ease}.tab-icon .tab-svg{width:24px;height:24px}.tab-icon--training,.tab-icon--analytics,.tab-icon--diary,.tab-icon--calendar,.tab-icon--community,.tab-icon--coach-overview,.tab-icon--coach-plan,.tab-icon--coach-diary{color:var(--text)}.tab-btn.active .tab-icon{background:#c8102e1a}.tab-btn.active .tab-icon,.tab-btn.active .tab-icon[class*=tab-icon--]{color:var(--primary)}.tab-btn.active .tab-icon .tab-svg{transform:scale(1.08);transition:transform .2s ease}.tab-badge{display:none;position:absolute;top:4px;right:8px;width:9px;height:9px;border-radius:50%;background:#ff3b30;box-shadow:0 0 0 2px var(--bg);pointer-events:none}.tab-badge.visible{display:block}.tab-svg{width:18px;height:18px;flex-shrink:0}.tab-content{display:none}.tab-content.active{display:block;margin-top:12px}.card-subtitle{font-size:12px;font-weight:500;color:var(--text-tertiary);margin-top:2px;letter-spacing:.01em}.custom-select-wrap{position:relative}.custom-select-wrap>select{display:none}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 12px;background:var(--bg-input);border:1.5px solid rgba(0,0,0,.1);border-radius:10px;font-family:inherit;font-size:13px;font-weight:500;color:var(--text);cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;box-shadow:0 1px 2px #0000000a}.custom-select-trigger:hover{border-color:var(--text-tertiary);background:#fafafa}.custom-select-trigger.open{border-color:var(--text-tertiary);box-shadow:0 0 0 3px #0000000d;border-radius:10px 10px 0 0}.custom-select-trigger.placeholder{color:var(--text-tertiary)}.custom-select-arrow{width:16px;height:16px;flex-shrink:0;color:var(--text-tertiary);transition:transform .25s ease}.custom-select-trigger.open .custom-select-arrow{transform:rotate(180deg)}.custom-select-dropdown{position:fixed;background:#fff;border:1.5px solid var(--border);border-radius:0 0 10px 10px;box-shadow:0 6px 24px #0000001f;z-index:9999;max-height:40vh;overflow-y:auto;display:none;-webkit-overflow-scrolling:touch}.custom-select-dropdown.show{display:block}.custom-select-option{padding:8px 12px;font-size:13px;font-weight:400;color:var(--text);cursor:pointer;transition:background .15s ease;border-bottom:1px solid rgba(0,0,0,.03);line-height:1.3}.custom-select-option:last-child{border-bottom:none}.custom-select-option:hover{background:#00000009}.custom-select-option:active{background:#0000000f}.custom-select-option.selected{background:#0000000a;color:var(--text);font-weight:600}.history-header .custom-select-wrap{width:auto;min-width:140px}.history-header .custom-select-trigger{padding:6px 10px;font-size:12px;font-weight:600;border-radius:8px}.history-header .custom-select-trigger.open{border-radius:8px 8px 0 0}.history-header .custom-select-dropdown{border-radius:0 0 8px 8px}.history-header .custom-select-option{font-size:12px;padding:6px 10px}.custom-date-wrap{position:relative}.custom-date-wrap>input[type=date]{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.custom-date-trigger{display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;background:var(--bg-input);border:1.5px solid rgba(0,0,0,.1);border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:var(--text);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent;box-shadow:0 1px 2px #0000000a}.custom-date-trigger:hover{border-color:var(--primary);background:#fafafa}.custom-date-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.custom-date-trigger.placeholder .cdt-text{color:var(--text-tertiary)}.cdt-icon{width:18px;height:18px;color:var(--text-tertiary);flex-shrink:0}.cdt-text{flex:1}.date-picker-overlay{position:fixed;inset:0;z-index:2000;background:#0006;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.date-picker-overlay.show{opacity:1;visibility:visible}.date-picker-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;width:min(340px,92vw);padding:0;transform:translateY(20px) scale(.96);transition:transform .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.date-picker-overlay.show .date-picker-modal{transform:translateY(0) scale(1)}.dp-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 12px}.dp-month-label{font-size:16px;font-weight:700;color:var(--text);user-select:none}.dp-nav{display:flex;gap:4px}.dp-nav-btn{width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.dp-nav-btn:hover{background:#0000000f}.dp-nav-btn:active{background:#0000001a}.dp-nav-btn svg{width:20px;height:20px}.dp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:0 16px;gap:0}.dp-weekday{text-align:center;font-size:11px;font-weight:600;color:var(--text-tertiary);padding:8px 0;text-transform:uppercase;letter-spacing:.5px}.dp-days{display:grid;grid-template-columns:repeat(7,1fr);padding:4px 16px 16px;gap:2px}.dp-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--text);border-radius:50%;cursor:pointer;transition:all .15s ease;border:none;background:transparent;font-family:Inter,sans-serif;-webkit-tap-highlight-color:transparent}.dp-day:hover{background:#0000000f}.dp-day:active{transform:scale(.92);background:var(--primary);color:#fff}.dp-day.other-month{color:var(--text-tertiary);opacity:.4}.dp-day.today{color:var(--primary);font-weight:700}.dp-day.selected{background:var(--primary);color:#fff;font-weight:700;box-shadow:0 2px 8px #c8102e4d}.dp-day.selected:hover{background:var(--primary);color:#fff}.dp-day.selected:active{background:var(--primary-dark);color:#fff}.dp-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 16px;border-top:1px solid rgba(0,0,0,.06)}.dp-today-btn{font-size:13px;font-weight:600;color:var(--primary);background:none;border:none;cursor:pointer;padding:6px 12px;border-radius:8px;transition:background .15s}.dp-today-btn:hover{background:#c8102e0f}.dp-confirm-btn{font-size:13px;font-weight:600;color:#fff;background:var(--primary);border:none;cursor:pointer;padding:8px 20px;border-radius:10px;transition:background .15s,transform .1s}.dp-confirm-btn:hover{background:var(--primary-hover)}.dp-confirm-btn:active{transform:scale(.96)}.custom-time-wrap{position:relative}.custom-time-wrap>input[type=time]{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.custom-time-trigger{display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;background:var(--bg-input);border:1.5px solid rgba(0,0,0,.1);border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:var(--text);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent;box-shadow:0 1px 2px #0000000a}.custom-time-trigger:hover{border-color:var(--primary);background:#fafafa}.custom-time-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.custom-time-trigger.placeholder .ctt-text{color:var(--text-tertiary)}.ctt-icon{width:18px;height:18px;color:var(--text-tertiary);flex-shrink:0}.ctt-text{flex:1}.time-picker-overlay{position:fixed;inset:0;z-index:2000;background:#0006;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.time-picker-overlay.show{opacity:1;visibility:visible}.time-picker-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;width:min(300px,80vw);padding:0;transform:translateY(20px) scale(.96);transition:transform .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.time-picker-overlay.show .time-picker-modal{transform:translateY(0) scale(1)}.tp-header{padding:20px 20px 8px;text-align:center}.tp-title{font-size:16px;font-weight:700;color:var(--text)}.tp-columns{display:flex;align-items:center;justify-content:center;padding:12px 20px 20px;gap:0}.tp-col{width:80px;height:200px;overflow-y:auto;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;position:relative}.tp-col::-webkit-scrollbar{display:none}.tp-col{scrollbar-width:none}.tp-spacer{height:80px}.tp-cell{height:40px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:500;color:var(--text-tertiary);scroll-snap-align:center;transition:all .15s ease;cursor:pointer;user-select:none;font-family:Inter,sans-serif;font-variant-numeric:tabular-nums}.tp-cell.active{color:var(--text);font-weight:700;font-size:24px}.tp-separator{font-size:28px;font-weight:700;color:var(--text);padding:0 4px;align-self:center;margin-top:-4px}.tp-highlight{position:absolute;left:4px;right:4px;top:50%;transform:translateY(-50%);height:40px;background:#c8102e0f;border-radius:10px;pointer-events:none}.tp-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 16px;border-top:1px solid rgba(0,0,0,.06)}.tp-now-btn{font-size:13px;font-weight:600;color:var(--primary);background:none;border:none;cursor:pointer;padding:6px 12px;border-radius:8px;transition:background .15s}.tp-now-btn:hover{background:#c8102e0f}.tp-confirm-btn{font-size:13px;font-weight:600;color:#fff;background:var(--primary);border:none;cursor:pointer;padding:8px 20px;border-radius:10px;transition:background .15s,transform .1s}.tp-confirm-btn:hover{background:var(--primary-hover)}.tp-confirm-btn:active{transform:scale(.96)}.card{background:var(--bg-card);border:1px solid rgba(15,17,22,.12);border-radius:18px;padding:22px;margin-bottom:12px;transition:box-shadow .3s ease,border-color .3s ease,transform .3s ease;box-shadow:0 1px 2px #0f11160a,0 4px 14px #0f11160d}.card:hover{box-shadow:0 6px 22px #0f11161a;border-color:#0f11162e}.glass-card{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 2px 8px #0000000a,0 8px 32px #0000000d;border:1px solid rgba(255,255,255,.6)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.card-header h2{font-size:17px;font-weight:800;letter-spacing:-.03em;color:var(--text)}.card h2{font-size:17px;font-weight:800;margin-bottom:14px;letter-spacing:-.03em}.card h3{font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.card-badge{font-size:9px;font-weight:800;letter-spacing:1.2px;padding:4px 10px;border-radius:8px;background:#c8102e14;color:var(--primary);text-transform:uppercase;margin-top:2px}.form-row{display:flex;gap:10px}.form-row .form-group{flex:1}.form-group{margin-bottom:14px}.form-group label,#times-container>label{display:block;font-size:11px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px}.label-hint{font-weight:500;text-transform:none;letter-spacing:0;opacity:.7}input,select,textarea{width:100%;padding:11px 14px;border:1.5px solid rgba(0,0,0,.1);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text);font-family:Inter,sans-serif;font-size:14px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background .2s;-webkit-appearance:none;appearance:none;box-shadow:0 1px 2px #0000000a}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);background:#fff}input::placeholder,textarea::placeholder{color:var(--text-tertiary);opacity:.6}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 7px;background-color:var(--bg-input);padding:12px 40px 12px 14px;cursor:pointer;font-weight:500;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color .2s}select:hover{border-color:var(--primary);background-color:#fafafa}select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);background-color:#fff}select option{padding:10px 14px;font-size:14px;background:#fff;color:var(--text)}textarea{resize:vertical;min-height:48px}.times-list,.distance-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.time-entry{display:flex;align-items:center;gap:8px}.sprint-distance-group{margin-bottom:14px}.sprint-distance-group>label{font-weight:600;font-size:13px}.tempo-ind-block{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;margin-bottom:10px;background:var(--bg-input)}.tempo-ind-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tempo-ind-block-label{font-weight:600;font-size:13px;color:var(--text)}.btn-remove-block{background:none;border:none;color:var(--danger);font-size:18px;cursor:pointer;padding:2px 6px;line-height:1}.btn-remove-block:hover{opacity:.7}.type-badge.tempo-ind{background:#34c7591a;color:#34c759}.type-badge.critical-zone{background:#ff6b001a;color:#ff6b00}.shoe-toggle{display:flex;gap:6px}.shoe-btn{flex:1;padding:8px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-align:center}.shoe-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.shoe-btn:hover:not(.active){border-color:var(--accent);color:var(--accent)}.wind-btn{padding:6px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.wind-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.wind-btn:hover:not(.active){border-color:var(--accent);color:var(--accent)}.meta-wind{margin-left:8px}.analytics-shoe-toggle{display:flex;gap:0;margin-top:6px;margin-bottom:2px;background:var(--bg-input);border-radius:var(--radius-sm);border:1px solid var(--border);overflow:hidden}.analytics-shoe-btn{flex:1;padding:7px 10px;border:none;border-right:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-align:center;white-space:nowrap}.analytics-shoe-btn:last-child{border-right:none}.analytics-shoe-btn.active{background:var(--accent);color:#fff}.analytics-shoe-btn:hover:not(.active){background:var(--bg-card);color:var(--accent)}.analytics-mode-toggle{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:14px;padding:8px 0}.analytics-mode-label{font-size:13px;font-weight:600;color:var(--text-muted);transition:color .2s;cursor:default;user-select:none}.analytics-mode-label.active{color:var(--text);font-weight:700}.analytics-mode-switch{position:relative;display:inline-block;width:48px;height:26px}.analytics-mode-switch input{opacity:0;width:0;height:0}.analytics-mode-slider{position:absolute;inset:0;background:var(--bg-input);border:1.5px solid var(--border);border-radius:13px;cursor:pointer;transition:all .25s ease}.analytics-mode-slider:before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:var(--primary);transition:all .25s ease;box-shadow:0 1px 3px #00000026}.analytics-mode-switch input:checked+.analytics-mode-slider{border-color:#e040fb}.analytics-mode-switch input:checked+.analytics-mode-slider:before{left:calc(100% - 22px);background:#e040fb}.time-index{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-input);color:var(--text-tertiary);font-size:11px;font-weight:700;flex-shrink:0;border:1px solid var(--border)}.time-entry .time-input,.time-entry .distance-input{flex:1}.btn-remove-time{width:36px;height:36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.btn-remove-time:hover:not(:disabled){background:#ff3b300f;color:var(--danger);border-color:#ff3b3033}.btn-remove-time:disabled{opacity:.15;cursor:not-allowed}#starts-container{margin-bottom:14px}.starts-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.starts-header label{margin-bottom:0;font-weight:600;font-size:13px}.optional-pill{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:#8e8e9324;color:var(--text-tertiary);border:1px solid var(--border)}.starts-hint{margin:0 0 10px;font-size:12px;color:var(--text-tertiary);line-height:1.4}.starts-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.starts-col-headers{display:grid;grid-template-columns:26px 1fr 1fr 36px;gap:8px;align-items:center;margin-bottom:4px;padding:0 2px}.starts-col-label{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--text-tertiary);text-transform:uppercase;text-align:left;padding-left:2px}.starts-col-spacer,.starts-col-spacer-btn{display:block}.start-pair-entry{display:grid;grid-template-columns:26px 1fr 1fr 36px;gap:8px;align-items:center}.start-input-wrap{position:relative;display:flex;align-items:center;width:100%}.start-input-wrap input{width:100%;padding-right:26px}.start-input-suffix{position:absolute;right:10px;font-size:12px;font-weight:600;color:var(--text-tertiary);pointer-events:none}.btn-remove-start{width:36px;height:36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.btn-remove-start:hover:not(:disabled){background:#ff3b300f;color:var(--danger);border-color:#ff3b3033}.btn-remove-start:disabled{opacity:.15;cursor:not-allowed}.btn-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:13px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-family:Inter,sans-serif;font-size:15px;font-weight:700;cursor:pointer;transition:all var(--transition);margin-top:6px;letter-spacing:-.01em}.btn-primary:hover{box-shadow:0 4px 20px #1d1d1f2e;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);opacity:.9}.btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1.5px dashed var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--primary);font-family:Inter,sans-serif;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);margin-bottom:14px}.btn-ghost:hover{border-color:var(--primary);background:#c8102e08}.toggle-row{display:flex;gap:6px}.toggle-btn{flex:1;padding:9px 14px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-family:Inter,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.toggle-btn.active{border-color:var(--primary);background:#c8102e0d;color:var(--primary)}.toggle-btn:hover:not(.active){border-color:var(--border-light);background:#00000003}.btn-danger{padding:10px 22px;border:none;border-radius:var(--radius-sm);background:var(--danger);color:#fff;font-family:Inter,sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.btn-danger:hover{background:var(--danger-dark)}.filter-select{width:auto;padding:8px 36px 8px 12px;font-size:12px;font-weight:600;border-radius:10px;border:1.5px solid rgba(0,0,0,.1);background-color:var(--bg-card);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color .2s}.filter-select:hover{border-color:var(--primary);background-color:#fafafa}.filter-select:focus{background-color:#fff;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.history-header h2{margin-bottom:0}.training-list{display:flex;flex-direction:column;gap:8px}.empty-state{text-align:center;padding:40px 20px;display:flex;flex-direction:column;align-items:center;gap:10px}.empty-state svg{color:var(--text-tertiary);opacity:.4}.empty-state .empty-title{color:var(--text);font-size:15px;font-weight:600;margin:6px 0 0;letter-spacing:-.01em}.empty-state .empty-sub{color:var(--text-tertiary);font-size:13px;line-height:1.5;max-width:320px;margin:0}.empty-state p{color:var(--text-tertiary);font-size:13px;margin:0}.empty-state .empty-cta{margin-top:8px;display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:999px;background:var(--primary);color:#fff;font-size:13px;font-weight:600;border:0;cursor:pointer;box-shadow:0 4px 14px var(--primary-glow);transition:transform .15s ease,box-shadow .2s ease}.empty-state .empty-cta:hover{transform:translateY(-1px);box-shadow:0 6px 20px #c8102e38}.empty-state .empty-cta:active{transform:translateY(0)}.skeleton{position:relative;overflow:hidden;background:var(--bg-input, #F0F0F5);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);animation:skeletonShimmer 1.4s ease-in-out infinite;transform:translate(-100%)}.skeleton-line{height:12px;border-radius:6px;margin:8px 0}.skeleton-line.lg{height:16px}.skeleton-line.sm{height:10px}.skeleton-line.w-30{width:30%}.skeleton-line.w-50{width:50%}.skeleton-line.w-70{width:70%}.skeleton-line.w-90{width:90%}.skeleton-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow-sm);margin-bottom:8px}.skeleton-block{width:100%;height:120px;border-radius:var(--radius)}.loading-hint{text-align:center;color:var(--text-tertiary);font-size:13px;padding:18px 0}@keyframes skeletonShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion: reduce){.skeleton:after{animation:none}}.training-entry{background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--entry-accent, var(--border));border-radius:var(--radius);padding:14px 16px 14px 14px;transition:all var(--transition-fast);overflow:hidden;box-shadow:var(--shadow-sm)}.training-entry:hover{box-shadow:var(--shadow);border-color:var(--border-light);border-left-color:var(--entry-accent, var(--border-light))}.training-entry[data-type="Sprint (50m)"],.training-entry[data-type="Sprint (20m/30m/50m/80m)"]{--entry-accent:#C8102E}.training-entry[data-type="Tempolauf (120m)"]{--entry-accent:#007AFF}.training-entry[data-type="Tempolauf (150m)"]{--entry-accent:#FBBF24}.training-entry[data-type="Tempolauf (Individuell)"],.training-entry[data-type^="Tempolauf (Ind:"]{--entry-accent:#2DD4BF}.training-entry[data-type="80m L\c3\a4ufe"],.training-entry[data-type="80m L\e4ufe"]{--entry-accent:#818CF8}.training-entry[data-type=Kraft]{--entry-accent:#AF52DE}.training-entry[data-type="Joggen (5km)"],.training-entry[data-type=Joggen]{--entry-accent:#34C759}.training-entry[data-type=Pausetag]{--entry-accent:#FF9500}.training-entry[data-type=Regeneration]{--entry-accent:#06B6D4}.training-entry[data-type=Technik]{--entry-accent:#5856D6}.training-entry[data-type=Sprung]{--entry-accent:#4CAF50}.training-entry[data-type=Sprint]{--entry-accent:#C8102E}.training-entry[data-type=Tempolauf]{--entry-accent:#007AFF}.training-entry[data-type=Starts]{--entry-accent:#EF4444}.entry-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.entry-meta{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.entry-date{font-size:14px;font-weight:600;white-space:nowrap}.entry-time-label{font-size:11px;color:var(--text-tertiary);font-weight:500}.entry-badges{display:flex;gap:4px 5px;align-items:center;flex-wrap:wrap;justify-content:flex-end}@media (max-width:420px){.entry-header{flex-direction:column;gap:6px}.entry-badges{justify-content:flex-start}}.type-badge{padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.3px;white-space:nowrap}.type-badge.sprint{background:#c8102e14;color:var(--primary)}.type-badge.tempo120{background:#007aff14;color:var(--blue)}.type-badge.tempo150{background:#ff950014;color:var(--warning)}.type-badge.kraft{background:#af52de14;color:#af52de}.type-badge.joggen{background:#34c75914;color:#34c759}.type-badge.pausetag{background:#ff950014;color:#ff9500}.type-badge.regen{background:#06b6d414;color:#06b6d4}.type-badge.technik{background:#ff950014;color:#ff9500}.type-badge.sprung{background:#4caf5014;color:#4caf50}.type-badge.sonstiges,.type-badge.custom-type{background:#8e8e9314;color:#8e8e93}.joggen-inputs{display:flex;gap:8px;align-items:center}.joggen-inputs input{width:70px}.joggen-inputs span{color:var(--text-muted);font-size:.85rem}.joggen-chip{background:#34c75914!important;color:#34c759!important}.intensity-badge{padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:#007aff0f;color:var(--blue)}.sprint-cat-badge{background:#c8102e0f;color:var(--primary)}.technik-cat-badge{background:#ff95000f;color:#ff9500}.entry-badges-wrap{position:relative}.entry-badges-collapsed .entry-badges{max-height:48px;overflow:hidden}.entry-badges-collapsed .entry-badges-fade{display:block;position:absolute;bottom:0;left:0;right:0;height:22px;background:linear-gradient(transparent,var(--bg-card));pointer-events:none}.entry-badges-fade{display:none}.btn-entry-toggle{display:block;width:100%;text-align:center;font-size:11px;font-weight:600;color:var(--text-tertiary);cursor:pointer;padding:4px 0 0;border:none;background:none;letter-spacing:.3px;font-family:Inter,sans-serif}.btn-entry-toggle:hover{color:var(--primary)}.custom-cat-badge{background:#8e8e930f;color:#8e8e93}.shoe-badge{background:#0000000a}.entry-times{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}.entry-times+.entry-times{margin-top:4px}.entry-times strong{font-size:11px;font-weight:700;letter-spacing:.4px;color:var(--text-secondary);margin-right:2px;display:inline-flex;align-items:center;gap:4px}.time-chip{background:var(--bg-input);border:1px solid var(--border);padding:4px 10px;border-radius:8px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.3px}.entry-count{margin-top:10px;font-size:13px;font-weight:600;color:var(--text-secondary)}.entry-notes{margin-top:8px;font-size:12px;color:var(--text-tertiary);font-style:italic;padding-left:2px}.entry-meta-line{margin-top:6px;font-size:11px;color:var(--text-tertiary);display:flex;gap:10px;align-items:center}.meta-weather,.meta-location{display:inline-flex;align-items:center;gap:2px}.entry-footer{display:flex;justify-content:flex-end;margin-top:10px}.btn-icon{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.btn-icon:hover{color:var(--danger);border-color:#ff3b3033;background:#ff3b300a}.plan-week-nav .btn-icon:hover{color:var(--primary);border-color:#c8102e33;background:#c8102e0a}.kraft-exercises{display:flex;flex-direction:column;gap:8px;margin:8px 0 16px}.sprung-exercises{display:flex;flex-direction:column;gap:12px;margin:8px 0 16px}#sprung-builtin-exercises,#sprung-saved-custom-exercises{display:flex;flex-direction:column;gap:12px}#sonstiges-builtin-exercises,.at-sonstiges-exercises{display:flex;flex-direction:column;gap:12px;margin:8px 0 4px}#kraft-saved-custom-exercises{display:flex;flex-direction:column;gap:8px}.kraft-exercise{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;transition:all var(--transition-fast)}.kraft-exercise:has(input:checked){border-color:#c8102e40;background:#c8102e05}.kraft-check{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--text);cursor:pointer}.kraft-check input[type=checkbox]{width:20px;height:20px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.kraft-details{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.kraft-inputs{display:flex;gap:12px}.kraft-field{flex:1}.kraft-field label{display:block;font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.kraft-field input{width:100%;padding:8px 10px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:Inter,sans-serif}.kraft-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #c8102e14}.kraft-mode-toggle{display:flex;gap:6px;margin-bottom:10px}.kraft-mode-toggle .toggle-btn{flex:1;font-size:12px;padding:6px 0}.pyramid-set{display:flex;align-items:center;gap:8px;margin-bottom:8px}.pyramid-set-label{font-size:11px;font-weight:700;color:var(--text-tertiary);min-width:42px;flex-shrink:0}.pyramid-set .kraft-inputs{flex:1}.btn-ghost-sm{font-size:12px;padding:6px 12px}.kraft-custom-row{display:flex;align-items:center;gap:8px;margin-top:8px}.kraft-custom-row input.kraft-custom-name{flex:2;padding:8px 10px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:Inter,sans-serif}.kraft-custom-row input.kraft-custom-name:focus,.kraft-custom-row input.kraft-custom-kg:focus,.kraft-custom-row input.kraft-custom-reps:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #c8102e14}.kraft-custom-row input.kraft-custom-kg,.kraft-custom-row input.kraft-custom-reps{flex:1;padding:8px 10px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:Inter,sans-serif}.kraft-custom-row .kraft-custom-remove{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:18px;padding:4px 6px;line-height:1;border-radius:var(--radius-sm);transition:color var(--transition-fast)}.kraft-custom-row .kraft-custom-remove:hover{color:var(--danger)}.entry-kraft{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.kraft-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:10px;font-size:12px;font-weight:600;background:var(--bg-input);color:var(--text);border:1px solid var(--border)}.kraft-chip .kraft-chip-detail{font-weight:400;color:var(--text-secondary);font-size:11px}.season-picker{display:flex;align-items:center;gap:6px}.season-picker-label{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.season-select{appearance:none;-webkit-appearance:none;background:var(--bg-input) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236E6E73'/%3E%3C/svg%3E") no-repeat right 8px center;border:1px solid var(--border);border-radius:8px;padding:4px 22px 4px 8px;font-size:12px;font-weight:600;color:var(--text);cursor:pointer;outline:none;min-width:0;width:auto;transition:border-color var(--transition)}.season-select:focus{border-color:var(--primary)}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 10px 12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px;transition:all var(--transition);box-shadow:var(--shadow-sm);position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent}.stat-card:hover{box-shadow:var(--shadow);border-color:var(--border-light);transform:translateY(-1px)}.stat-card:active{transform:translateY(0)}.stat-card:after{content:"";position:absolute;top:6px;right:6px;width:14px;height:14px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A1A1A6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='12' y1='16' x2='12' y2='12'/><line x1='12' y1='8' x2='12.01' y2='8'/></svg>");background-size:contain;background-repeat:no-repeat;opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.stat-card:hover:after{opacity:.55}.stat-icon{font-size:18px;margin-bottom:3px;opacity:.85}.stat-label{font-size:9px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;line-height:1.3}.stat-value{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2;letter-spacing:-.025em;color:var(--text)}.accent-purple .stat-value,.accent-teal .stat-value,.accent-gold .stat-value,.accent-blue .stat-value,.accent-green .stat-value,.accent-red .stat-value,.accent-orange .stat-value{color:var(--text)}.stats-row>.stat-card:first-child .stat-value{color:var(--primary);font-size:24px;font-weight:800}.stat-card--key .stat-value{color:var(--primary);font-size:24px;font-weight:800}.form-hint{font-size:12px;color:var(--text-tertiary);margin:6px 2px 0;line-height:1.45;font-weight:500}.info-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:8px;background:none;border:none;cursor:pointer;color:var(--text-tertiary);vertical-align:middle;transition:color var(--transition-fast);-webkit-tap-highlight-color:transparent}.info-btn:hover,.info-btn:focus{color:var(--primary);outline:none}.info-btn svg{width:16px;height:16px}.info-modal{max-width:380px;padding:24px 22px 22px;text-align:left;position:relative;background:var(--bg-card);color:var(--text)}.info-modal-close{position:absolute;top:12px;right:12px;width:30px;height:30px;background:none;border:none;cursor:pointer;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;border-radius:8px;transition:all var(--transition-fast)}.info-modal-close:hover{background:var(--bg-input);color:var(--text)}.info-modal-icon{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#c8102e14;color:var(--primary);margin-bottom:12px}.info-modal-icon svg{width:22px;height:22px}.info-modal h3{font-size:17px;font-weight:700;margin:0 0 10px;letter-spacing:-.02em;color:var(--text)}.info-modal-body{font-size:13.5px;line-height:1.55;color:var(--text-secondary)}.info-modal-body p{margin:0 0 10px;color:var(--text-secondary);font-size:13.5px}.info-modal-body p:last-child{margin-bottom:0}.info-modal-body strong{color:var(--text);font-weight:600}.info-modal-body .info-formula{display:block;margin-top:10px;padding:10px 12px;background:var(--bg-input);border-radius:8px;font-family:SF Mono,Menlo,monospace;font-size:12px;color:var(--text);border:1px solid var(--border)}.chart-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}.chart-tag{font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:3px 10px;border-radius:8px;background:#c8102e0f;color:var(--primary);border:1px solid rgba(200,16,46,.1)}.chart-container{position:relative;width:100%;height:240px}.chart-tall{height:300px}.pb-table{width:100%;border-collapse:collapse;font-size:13px}.pb-table th{text-align:left;font-size:10px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;padding:8px 10px;border-bottom:1px solid var(--border)}.pb-table td{padding:10px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.pb-table tr:last-child td{border-bottom:none}.pb-rank{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:800;font-size:11px}.pb-rank.gold{background:#ff95001a;color:#ff9500}.pb-rank.silver{background:#8e8e931a;color:#8e8e93}.pb-rank.bronze{background:#dd99331a;color:#d93}.pb-rank.normal{background:var(--bg-input);color:var(--text-tertiary)}.pb-time{font-weight:700;font-size:15px}.empty-chart-msg{text-align:center;color:var(--text-tertiary);padding:40px 0;font-size:13px}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%) translateY(60px);background:var(--accent);color:#fff;padding:11px 22px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;opacity:0;transition:all .25s;z-index:1000;box-shadow:0 4px 20px #1d1d1f40;pointer-events:none;max-width:calc(100vw - 32px);text-align:center;line-height:1.4;display:inline-flex;align-items:center;gap:8px}.toast.show{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}.toast--success{background:#1d1d1f}.toast--success:before{content:"";width:14px;height:14px;flex-shrink:0;border-radius:50%;background:var(--success);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");background-size:10px;background-repeat:no-repeat;background-position:center}.toast--error{background:#3a1418;color:#fff;border:1px solid rgba(200,16,46,.55);box-shadow:0 4px 22px #c8102e4d}.toast--error:before{content:"!";width:16px;height:16px;flex-shrink:0;border-radius:50%;background:var(--primary);color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;line-height:1}.toast--info{background:#1d1d1f}.save-success-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:9999;pointer-events:none;background:#fff6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:successFadeIn .3s ease forwards}.save-success-overlay.fade-out{animation:successFadeOut .3s ease forwards}.save-success-circle{width:80px;height:80px;border-radius:50%;background:var(--success);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px #34c75959;animation:successPop .4s cubic-bezier(.175,.885,.32,1.275) forwards}.save-success-circle svg{width:40px;height:40px;stroke:#fff;stroke-width:3;fill:none}.save-success-circle svg path{stroke-dasharray:48;stroke-dashoffset:48;animation:checkDraw .4s ease .2s forwards}@keyframes successFadeIn{0%{opacity:0}to{opacity:1}}@keyframes successFadeOut{0%{opacity:1}to{opacity:0}}@keyframes successPop{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}@keyframes checkDraw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion: reduce){.save-success-overlay,.save-success-circle,.save-success-circle svg path{animation:none!important}}.comment-notif-overlay{position:fixed;inset:0;background:#00000040;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:none;align-items:center;justify-content:center;z-index:1100;padding:20px}.comment-notif-overlay.show{display:flex}.comment-notif{background:#fff;border:none;border-radius:var(--radius-lg);padding:28px 24px 22px;max-width:340px;width:100%;text-align:center;box-shadow:0 20px 60px #0000001f}.comment-notif-icon{font-size:32px;margin-bottom:10px}.comment-notif-title{font-size:16px;font-weight:700;color:var(--text);margin-bottom:8px}.comment-notif-body{font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:18px}.comment-notif-author{font-weight:700;color:var(--primary)}.comment-notif-btn{padding:10px 28px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-family:Inter,sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.comment-notif-btn:hover{background:var(--accent-light)}.modal-overlay{position:fixed;inset:0;background:#00000040;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:none;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-overlay.show{display:flex}.modal{background:#fff;border:none;border-radius:var(--radius-lg);padding:28px 24px 24px;max-width:360px;width:100%;text-align:center;box-shadow:0 20px 60px #0000001f}.modal-icon-wrap{margin-bottom:14px}.modal h3{font-size:18px;font-weight:700;margin-bottom:6px}.modal p{font-size:13px;color:var(--text-secondary);margin-bottom:22px}.modal-actions{display:flex;gap:10px;justify-content:center}.modal-actions .btn-ghost{margin-bottom:0;border-style:solid}.recap-modal{border-radius:20px;overflow:hidden;box-shadow:0 25px 80px #0000002e,0 0 0 1px #0000000a;animation:recap-enter .5s cubic-bezier(.16,1,.3,1)}@keyframes recap-enter{0%{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.recap-header{background:linear-gradient(135deg,#007aff,#5856d6);padding:28px 24px 22px;color:#fff;text-align:center}.recap-logo{font-size:22px;font-weight:800;letter-spacing:-.3px;margin-bottom:4px}.recap-subtitle{font-size:12px;font-weight:500;opacity:.8}.recap-body{padding:22px 24px 24px}.recap-greeting{font-size:19px;font-weight:700;margin:0 0 8px;background:linear-gradient(135deg,#007aff,#5856d6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.recap-message{font-size:13.5px;color:var(--text-secondary);line-height:1.55;margin-bottom:16px}.recap-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.recap-stat-item{background:var(--bg-body);border-radius:12px;padding:12px 14px;text-align:center}.recap-stat-val{font-size:20px;font-weight:800;letter-spacing:-.5px;margin-bottom:2px}.recap-stat-val--blue{color:#007aff}.recap-stat-val--purple{color:#5856d6}.recap-stat-val--orange{color:#ff9500}.recap-stat-val--green{color:#34c759}.recap-stat-val--green.is-time{font-size:16px}.recap-stat-val--green.is-toptype{font-size:14px}.health-protected-title{margin:0}.health-protected-msg{font-size:13px;color:var(--text-secondary);margin:6px 0 0}.sprung-anlauf-row{border:1px solid var(--border);border-radius:8px;padding:8px;margin-bottom:8px;background:var(--bg-card);position:relative}.sa-row{display:flex;gap:8px;align-items:center}.sa-row--top{margin-bottom:6px}.sa-row--bottom{padding-left:28px}.sa-row .time-index{font-weight:600;min-width:20px}.sa-field{flex:1}.sa-field-label{font-size:.75rem;color:var(--text-dim);display:block;margin-bottom:2px}.sa-input{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:6px;font-size:.9rem;background:var(--bg);color:var(--text)}.sa-row .btn-remove-time{align-self:flex-end;margin-bottom:4px}.at-sonstiges-custom-input{flex:1;padding:6px 8px;border:1px solid var(--border);border-radius:6px;font-size:.85rem;background:var(--bg-card);color:var(--text)}.kraft-custom-remove{margin-left:auto;background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:16px}.text-static-bold{margin:0;font-weight:600}.text-error-block{padding:16px;color:#e53935}.text-muted-hint{font-size:12px;color:var(--text-muted);margin-top:4px}.text-tiny-hint{font-size:11px;color:var(--text-muted)}.notes-cell{font-size:12px;color:#8e8e93;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-more-hint{text-align:center;padding:8px;color:var(--text-tertiary);font-size:12px}.empty-hint-inline{margin:0;font-size:13px;color:var(--text-secondary)}.empty-hint-center{text-align:center;color:var(--text-secondary);font-size:13px}.empty-hint-list{color:var(--text-tertiary);font-size:13px;text-align:center;padding:8px 0}.empty-hint-list--sm{padding:4px 0}.empty-state-inline{font-size:12px;color:var(--text-secondary)}.text-status-ok{color:#34c759}.text-status-err{color:#ff3b30}.race-pred-tile--accent{background:linear-gradient(135deg,#007aff14,#007aff05);border-color:#007aff33}.race-pred-tile-time--blue{color:#007aff}.race-pred-tile-time-unit{font-size:11px;font-weight:500}.cal-day-entry--pause{border-left-color:#ff9500}.cal-day-entry--suppl{border-left-color:#af52de}.cal-day-entry--camp{border-left-color:#007aff}.cal-day-entry--regen{border-left-color:#5856d6}.cal-day-section-spaced{margin-top:8px}.wk-disc-empty{padding:12px;font-size:12px;color:var(--text-muted);text-align:center}.ct-item--compact{padding:6px 8px}.ct-item-name--sm{font-size:12px}.ct-item-subs--inline{margin-left:6px}.ct-item-times--inline{margin-left:4px}.mt-2{margin-top:2px}.mt-4{margin-top:4px}.mt-6{margin-top:6px}.mt-8{margin-top:8px}.mt-10{margin-top:10px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mb-12{margin-bottom:12px}.ml-4{margin-left:4px}.label-hint--note{margin-top:6px}.migrate-status-line{margin-top:10px;font-size:12px;color:var(--text-muted);min-height:16px}.btn-coach-pw-reset{color:var(--primary);font-size:13px}.recap-stat-lbl{font-size:11px;color:var(--text-muted);font-weight:500}.recap-motto{font-size:13px;color:var(--text-muted);font-style:italic;text-align:center;margin-bottom:18px;line-height:1.4;padding:10px 16px;background:var(--bg-body);border-radius:10px}.recap-close-btn{width:100%;padding:12px;font-size:15px;font-weight:600;border-radius:12px}.edit-modal-content{max-width:480px;text-align:left;padding:24px 22px 20px;max-height:85vh;overflow-y:auto}.edit-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.edit-modal-header h3{font-size:18px;font-weight:700;margin:0}.edit-modal-content .form-group{margin-bottom:12px}.edit-modal-content .form-row{display:flex;gap:10px}.edit-modal-content .form-row .form-group{flex:1}.edit-modal-content label{display:block;font-size:12px;font-weight:600;color:var(--text);margin-bottom:4px}.edit-modal-content input,.edit-modal-content select,.edit-modal-content textarea{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;background:var(--bg-input);color:var(--text)}.edit-modal-content textarea{resize:vertical;min-height:44px}.edit-modal-content .times-list{margin-bottom:6px}.edit-modal-content .btn-ghost{font-size:13px;padding:4px 10px}.edit-ti-block{background:var(--bg-input);border-radius:var(--radius-sm);padding:10px;margin-bottom:10px}.edit-kraft-summary .kraft-chip{display:inline-block;margin:2px}.btn-edit{background:none;border:none;cursor:pointer;padding:4px;opacity:.5;transition:opacity .15s}.btn-edit:hover{opacity:1}.modal-feedback{max-width:400px;text-align:left;padding:24px 22px 20px;max-height:90vh;overflow-y:auto}.feedback-header{text-align:center;margin-bottom:14px}.feedback-icon{font-size:32px;display:block;margin-bottom:6px}.feedback-header h3{font-size:18px;font-weight:700;margin-bottom:4px}.feedback-intro{font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:0}.feedback-stars-section{display:flex;flex-direction:column;gap:8px}.feedback-aspect{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:var(--bg-input);border-radius:var(--radius-sm)}.feedback-aspect-label{font-size:13px;font-weight:600;color:var(--text)}.feedback-stars{display:flex;gap:2px}.fb-star{font-size:22px;color:var(--border);cursor:pointer;transition:color .15s,transform .15s;user-select:none}.fb-star:hover{transform:scale(1.2)}.fb-star.active{color:#fbbf24}#feedback-submit:disabled{opacity:.45;cursor:not-allowed}#feedback-text{resize:vertical;min-height:50px}.feedback-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:16px}.fb-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 12px;text-align:center}.fb-summary-card .fb-sum-val{font-size:22px;font-weight:800;color:var(--primary)}.fb-summary-card .fb-sum-label{font-size:11px;color:var(--text-secondary);margin-top:2px}.fb-entry{padding:14px 16px;border-bottom:1px solid var(--border)}.fb-entry:last-child{border-bottom:none}.fb-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.fb-entry-name{font-weight:700;font-size:14px}.fb-entry-date{font-size:11px;color:var(--text-tertiary)}.fb-entry-stars{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.fb-entry-aspect{font-size:12px;color:var(--text-secondary)}.fb-entry-aspect .fb-aspect-stars{color:#fbbf24;letter-spacing:1px}.fb-entry-text{font-size:13px;color:var(--text);background:var(--bg-input);border-radius:var(--radius-sm);padding:8px 10px;margin-top:6px;line-height:1.5;font-style:italic}.privacy-icon{font-size:36px;margin-bottom:10px}.privacy-intro{text-align:left;font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:12px}.privacy-toggle{display:flex;align-items:center;justify-content:space-between;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text);transition:background .15s}.privacy-toggle:hover{background:var(--bg-elevated)}.privacy-chevron{transition:transform .2s;flex-shrink:0}.privacy-toggle.open .privacy-chevron{transform:rotate(180deg)}.privacy-text{max-height:260px;overflow-y:auto;text-align:left;font-size:11.5px;line-height:1.6;color:var(--text-secondary);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-top:8px}.privacy-text h4{font-size:12.5px;font-weight:700;color:var(--text);margin:10px 0 4px}.privacy-text h4:first-child{margin-top:0}.privacy-text ul{margin:4px 0 8px 16px;padding:0}.privacy-text li{margin-bottom:3px}#privacy-accept:disabled{opacity:.45;cursor:not-allowed}#privacy-accept:not(:disabled){animation:fadeSlideUp .2s ease}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000014;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#00000026}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.training-entry.new{animation:fadeSlideUp .25s ease}@media (max-width:420px){.app-container{padding:0 12px 110px}.hero-header{margin-left:-12px;margin-right:-12px}.card{padding:16px}.stats-row{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:17px}.login-card{padding:32px 20px 24px}}.coach-ranking-section{margin-bottom:4px}.coach-ranking-section h3{font-size:13px;font-weight:700;color:var(--text-secondary);margin-bottom:8px}.coach-ranking-list{display:flex;flex-direction:column;gap:6px}.coach-rank-row{display:flex;align-items:center;gap:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;transition:all var(--transition-fast);cursor:pointer}.coach-rank-row:hover{border-color:var(--border-light);background:var(--bg-elevated)}.coach-rank-name{flex:1;font-size:14px;font-weight:600;color:var(--text)}.coach-rank-value{font-size:16px;font-weight:800;color:var(--primary);font-variant-numeric:tabular-nums}.coach-athlete-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.coach-athlete-modal-header h3{font-size:18px;font-weight:700;margin:0}.coach-athlete-analytics-link{display:inline-block;margin-left:10px;padding:4px 10px;font-size:12px;font-weight:600;background:var(--accent, #6366f1);color:#fff;border:none;border-radius:999px;cursor:pointer;transition:opacity .15s,transform .1s}.coach-athlete-analytics-link:hover{opacity:.88;transform:translateY(-1px)}.coach-athlete-analytics-link:active{transform:translateY(0)}.coach-athlete-entry{transition:background .15s,border-color .15s}.coach-athlete-entry:hover{border-color:var(--accent, #6366f1)}.coach-athlete-entry.expanded{background:#6366f10f;border-color:var(--accent, #6366f1)}.coach-athlete-entry.expanded .coach-athlete-entry-detail .time-chip{font-size:12px;padding:2px 8px}.coach-athlete-modal-body{max-height:60vh;overflow-y:auto}.coach-athlete-entry{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:8px}.coach-athlete-entry-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.coach-athlete-entry-date{font-size:12px;color:var(--text-secondary);white-space:nowrap}.coach-athlete-entry-detail{font-size:12px;color:var(--text-secondary);margin-top:2px}.coach-athlete-entry-detail .time-chip{display:inline-block;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-size:11px;margin:1px 2px}.coach-athlete-entry-notes{font-size:11px;color:var(--text-tertiary);margin-top:4px;font-style:italic}.coach-athlete-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.coach-athlete-summary-chip{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 10px;font-size:12px;color:var(--text-secondary)}.coach-athlete-summary-chip strong{color:var(--text)}.coach-filter-chip{cursor:pointer;font-family:inherit;transition:all .15s ease}.coach-filter-chip:hover{border-color:var(--accent);color:var(--text)}.coach-filter-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.coach-filter-chip.active strong{color:#fff}.coach-athlete-entry-hint{margin-top:8px;font-size:11px;color:var(--text-tertiary);font-style:italic;opacity:.75;text-align:right}.btn-add-wk{width:100%;margin-bottom:14px;gap:6px;justify-content:center}.countdown-card .card-header h2{font-size:15px}.wk-countdown{text-align:center;padding:12px 0 4px}.countdown-name{font-size:16px;font-weight:700;color:var(--text);margin-bottom:4px}.countdown-days{font-size:28px;font-weight:900;color:var(--primary);margin-bottom:4px}.countdown-date{font-size:12px;color:var(--text-muted);margin-bottom:8px}.countdown-discs{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}.countdown-none{color:var(--text-tertiary);font-size:13px}.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:0 4px}.cal-nav-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-input);border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast)}.cal-nav-btn:hover{background:var(--bg-elevated);color:var(--text)}.cal-nav-label{font-size:16px;font-weight:700;color:var(--text)}.cal-grid{overflow:hidden;position:relative;touch-action:pan-y}.cal-month{background:var(--bg-card);border-radius:var(--radius);padding:4px 0;transition:opacity .2s ease,transform .2s ease}.cal-month.cal-slide-left{animation:calSlideLeft .25s ease forwards}.cal-month.cal-slide-right{animation:calSlideRight .25s ease forwards}@keyframes calSlideLeft{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes calSlideRight{0%{transform:translate(-40px);opacity:0}to{transform:translate(0);opacity:1}}.cal-month-label{font-size:13px;font-weight:700;color:var(--text-secondary);margin-bottom:8px;text-align:center}.cal-days-header{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:10px;color:var(--text-tertiary);margin-bottom:4px;font-weight:600}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-day{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;font-size:11px;font-weight:500;color:var(--text-muted);border-radius:8px;position:relative;cursor:default;transition:background var(--transition-fast)}.cal-day.empty{visibility:hidden}.cal-day.trained{background:#34c75914;color:#34c759;font-weight:700}.cal-day.pausetag{background:#ff95001a;color:#ff9500;font-weight:700}.cal-day.wk{background:#e040fb1a;color:#e040fb;font-weight:800;box-shadow:inset 0 0 0 1.5px #e040fb}.cal-day.trained.wk{background:linear-gradient(135deg,#34c75914,#e040fb1a)}.cal-day.today{box-shadow:inset 0 0 0 2px var(--primary);color:var(--primary);font-weight:800}.cal-day.today.wk{box-shadow:inset 0 0 0 2px #e040fb,0 0 8px #e040fb26}.cal-legend{display:flex;gap:16px;justify-content:center;margin:12px 0 16px;flex-wrap:wrap}.cal-legend-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted)}.cal-dot{width:10px;height:10px;border-radius:3px;display:inline-block}.cal-dot-training{background:#34c75959}.cal-dot-pause{background:#ff950059}.cal-dot-wk{background:#e040fb59}.cal-dot-camp{background:#007aff59}.cal-dot-regen{background:#5856d659}.cal-dot-today{border:2px solid var(--primary)}.cal-day.camp{background:#007aff1a;color:#007aff}.cal-day.camp.trained{background:linear-gradient(135deg,#34c75914,#007aff1a);color:#34c759}.cal-day.camp.wk{background:linear-gradient(135deg,#e040fb1a,#007aff1a)}.cal-day.regen{background:#5856d614;color:#5856d6}.cal-day.clickable{cursor:pointer}.cal-day.clickable:hover{background:var(--bg-elevated)}.cal-day-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-day-modal-header h3{font-size:17px;font-weight:700;margin:0}.cal-day-modal-body{display:flex;flex-direction:column;gap:12px}.cal-day-section-title{font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.cal-day-entry{background:var(--bg-input);border-radius:var(--radius-sm);padding:10px 12px;border-left:3px solid #34C759}.cal-day-entry.wk-result-entry{border-left-color:#e040fb}.cal-day-entry-type{font-size:13px;font-weight:700;color:var(--text)}.cal-day-entry-detail{font-size:12px;color:var(--text-secondary);margin-top:2px}.cal-day-empty{font-size:13px;color:var(--text-muted);text-align:center;padding:16px}.wk-entry-results{margin-top:8px;display:flex;flex-direction:column;gap:4px}.wk-result-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#e040fb0f;border:1px solid rgba(224,64,251,.12);border-radius:var(--radius-sm);font-size:12px}.wk-result-disc{font-weight:700;color:var(--text)}.wk-result-perf{font-weight:700;color:#e040fb;margin-left:auto}.wk-result-wind{font-size:11px;color:var(--text-muted)}.wk-result-place{font-size:11px;font-weight:600;color:var(--primary)}.wk-entry-actions{display:flex;gap:6px;margin-top:8px}.btn-add-result{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--primary);background:#c8102e0f;border:1px solid rgba(200,16,46,.12);border-radius:var(--radius-sm);padding:5px 10px;cursor:pointer;transition:all var(--transition-fast)}.btn-add-result:hover{background:#c8102e1f}.btn-del-result{font-size:10px;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:2px 4px;opacity:.6;transition:opacity .15s}.btn-del-result:hover{opacity:1;color:var(--primary)}.wk-disc-dropdown{display:none;position:absolute;top:100%;left:0;right:0;z-index:50;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto;box-shadow:var(--shadow-sm)}.wk-disc-dropdown.open{display:block}.wk-disc-dropdown-cat{font-size:10px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;padding:8px 12px 2px}.wk-disc-dropdown-item{padding:8px 12px;font-size:13px;color:var(--text);cursor:pointer;transition:background .1s}.wk-disc-dropdown-item:hover{background:var(--bg-input)}.wk-disc-dropdown-item.selected{background:#c8102e0f;color:var(--primary);font-weight:600}.wk-list{display:flex;flex-direction:column;gap:8px}.wk-entry{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;transition:all var(--transition-fast)}.wk-entry:hover{border-color:var(--border-light)}.wk-entry.wk-past{opacity:.5}.wk-entry-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.wk-entry-name{font-size:14px;font-weight:700;color:var(--text)}.wk-entry-date{font-size:12px;color:var(--text-muted);margin-top:2px}.wk-entry-discs{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.wk-disc-tag{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;background:#e040fb14;color:#e040fb}.camp-list{display:flex;flex-direction:column;gap:8px}.camp-entry{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;transition:all var(--transition-fast);border-left:3px solid #007AFF}.camp-entry:hover{border-color:var(--border-light)}.camp-entry.camp-past{opacity:.5}.camp-entry-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.camp-entry-location{font-size:14px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:6px}.camp-entry-flag{font-size:18px;line-height:1}.camp-entry-dates{font-size:12px;color:var(--text-muted);margin-top:2px}.camp-entry-duration{display:inline-block;font-size:10px;font-weight:700;color:#007aff;background:#007aff14;padding:2px 8px;border-radius:10px;margin-left:6px}.camp-entry-notes{font-size:12px;color:var(--text-secondary);margin-top:6px;font-style:italic}.modal-wk{max-width:400px;max-height:85vh;overflow-y:auto}.wk-disciplines{display:flex;flex-wrap:wrap;gap:8px}.wk-disc-check{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:6px 10px;cursor:pointer;transition:all var(--transition-fast)}.wk-disc-check:has(input:checked){background:#e040fb0f;border-color:#e040fb;color:#e040fb}.wk-disc-check input{display:none}.wk-disc-selected{display:flex;flex-wrap:wrap;gap:6px;min-height:32px;padding:6px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;margin-bottom:8px}.wk-disc-selected:empty:before{content:"Noch keine Disziplin gew\e4hlt";color:var(--text-secondary);font-size:12px;padding:4px;font-style:italic}.wk-disc-chip{display:inline-flex;align-items:center;gap:4px;background:#e040fb1a;color:#e040fb;border:1px solid #E040FB;border-radius:14px;padding:3px 8px 3px 10px;font-size:12px;font-weight:600}.wk-disc-chip button{background:none;border:none;color:#e040fb;cursor:pointer;font-size:14px;line-height:1;padding:0 2px;opacity:.7}.wk-disc-chip button:hover{opacity:1}.wk-disc-search-wrap{position:relative}.wk-disc-search-wrap input{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);color:var(--text);font-size:13px;box-sizing:border-box}.wk-disc-results{display:flex;flex-wrap:wrap;gap:6px;max-height:180px;overflow-y:auto;margin-top:8px;padding:4px 2px}.wk-disc-results:empty{display:none}.wk-disc-results .wk-disc-cat{width:100%;font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:6px;padding:0 2px}.wk-disc-results .wk-disc-cat:first-child{margin-top:0}.wk-disc-opt{font-size:12px;padding:5px 10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);border-radius:14px;cursor:pointer;transition:all var(--transition-fast)}.wk-disc-opt:hover{background:#e040fb0f;border-color:#e040fb;color:#e040fb}.wk-disc-opt[disabled]{opacity:.4;cursor:not-allowed}.wk-disc-custom-row{display:flex;gap:6px;margin-top:10px}.wk-disc-custom-row input{flex:1;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);color:var(--text);font-size:13px;box-sizing:border-box}.wk-disc-custom-row button{white-space:nowrap;padding:8px 12px;font-size:12px}.wk-edit-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;opacity:.7;transition:opacity var(--transition-fast)}.wk-edit-btn:hover{opacity:1;color:#e040fb}.wk-pb-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px}.wk-pb-card h3{font-size:15px;font-weight:700;margin:0 0 12px;color:var(--text)}.wk-pb-disc-group{margin-bottom:14px}.wk-pb-disc-group:last-child{margin-bottom:0}.wk-pb-disc-label{font-size:12px;font-weight:700;color:#e040fb;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.wk-pb-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-input);border-radius:var(--radius-sm);margin-bottom:4px;font-size:12px}.wk-pb-row:last-child{margin-bottom:0}.wk-pb-perf{font-weight:700;color:#e040fb;min-width:60px}.wk-pb-wind{font-size:11px;color:var(--text-muted)}.wk-pb-meta{margin-left:auto;font-size:11px;color:var(--text-secondary);text-align:right}.wk-pb-place{font-size:10px;font-weight:600;color:var(--primary);background:#c8102e0f;padding:2px 6px;border-radius:4px;margin-left:6px}.wk-pb-empty{font-size:13px;color:var(--text-muted);text-align:center;padding:16px}.wk-timeline{display:flex;flex-direction:column;gap:8px}.wk-timeline-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);border-left:3px solid #E040FB}.wk-timeline-date{font-size:11px;font-weight:700;color:var(--text-secondary);min-width:70px}.wk-timeline-name{font-size:13px;font-weight:700;color:var(--text)}.wk-timeline-discs{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px}.wk-timeline-disc{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;background:#e040fb14;color:#e040fb}.wk-timeline-results{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.wk-timeline-result{font-size:11px;color:var(--text-secondary)}.wk-timeline-result b{color:#e040fb}.wk-no-data{font-size:13px;color:var(--text-muted);text-align:center;padding:20px}.suppl-card{margin-bottom:14px}.suppl-header{cursor:pointer;display:flex;align-items:center;justify-content:space-between;user-select:none}.suppl-header h2{margin:0}.suppl-toggle-icon{font-size:12px;opacity:.5;transition:transform .2s}.suppl-toggle-icon.open{transform:rotate(180deg)}.suppl-body{padding:0 2px}.suppl-manage-title,.suppl-intake-title,.suppl-log-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:14px 0 8px}.suppl-today-list{display:flex;flex-direction:column;gap:6px}.suppl-my-list{display:flex;flex-direction:column;gap:4px}.suppl-my-item{display:flex;align-items:center;gap:8px;font-size:13px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.suppl-my-item .suppl-my-name{flex:1;font-weight:500}.suppl-my-item .suppl-my-dose{color:var(--text-secondary);font-size:12px}.suppl-my-item .suppl-my-del{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px 4px;font-size:14px;opacity:.5;transition:opacity .15s}.suppl-my-item .suppl-my-del:hover{opacity:1;color:#e53935}.suppl-add-btn{width:100%;margin-top:6px;font-size:13px}.suppl-intake-item{display:flex;align-items:center;gap:10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;cursor:pointer;transition:border-color var(--transition-fast)}.suppl-intake-item:hover{border-color:var(--accent)}.suppl-intake-name{font-weight:600;font-size:14px;flex:1}.suppl-intake-dose{font-size:12px;color:var(--text-secondary)}.suppl-intake-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.suppl-log-list{display:flex;flex-direction:column;margin-bottom:10px}.suppl-log-meta{font-size:11px;color:var(--text-muted);text-align:right;margin-bottom:6px;font-variant-numeric:tabular-nums}.suppl-log-scroll{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto;padding:4px 4px 6px 0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input)}.suppl-log-scroll::-webkit-scrollbar{width:6px}.suppl-log-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.suppl-log-date{position:sticky;top:0;z-index:1;background:var(--bg-input);font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);padding:6px 10px 4px}.suppl-log-entry{display:flex;align-items:center;gap:10px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:8px 10px;margin:0 6px}.suppl-log-entry .suppl-log-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.suppl-log-entry .suppl-log-name{font-weight:600;font-size:13px;line-height:1.2;color:var(--text-primary)}.suppl-log-entry .suppl-log-name .suppl-log-dose{font-weight:500;color:var(--text-secondary);font-size:12px;margin-left:4px}.suppl-log-entry .suppl-log-detail{font-size:11px;color:var(--text-muted);line-height:1.2}.suppl-log-entry .suppl-log-del{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;width:26px;height:26px;border-radius:6px;opacity:.55;transition:all .15s;flex-shrink:0}.suppl-log-entry .suppl-log-del:hover{opacity:1;color:#e53935;background:#e5393514}#btn-add-injury{width:100%;margin-bottom:14px}.injury-entry{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:10px;transition:border-color var(--transition-fast)}.injury-entry:hover{border-color:var(--border-light)}.injury-entry-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.injury-entry-info{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.injury-bodypart{font-size:14px;font-weight:700;color:var(--text)}.injury-side-tag{font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;background:#c8102e0f;color:var(--primary)}.injury-pain-badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px}.injury-date{font-size:12px;color:var(--text-muted);margin-bottom:6px}.injury-notes{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.injury-pain-bar{width:100%;height:4px;background:#0000000a;border-radius:4px;overflow:hidden}.injury-pain-fill{height:100%;border-radius:4px;transition:width .3s}.injury-del-btn{color:var(--text-muted);background:none;border:none;padding:4px;cursor:pointer;opacity:.5;transition:opacity var(--transition-fast)}.injury-del-btn:hover{opacity:1;color:#ff3b30}#injury-stats-card{margin-top:14px}.injury-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.injury-stat{text-align:center}.injury-stat-val{display:block;font-size:20px;font-weight:800;color:var(--text)}.injury-stat-label{font-size:11px;color:var(--text-muted)}.injury-freq-bars{display:flex;flex-direction:column;gap:6px}.injury-freq-row{display:flex;align-items:center;gap:8px}.injury-freq-label{font-size:12px;color:var(--text-secondary);width:100px;flex-shrink:0;text-align:right}.injury-freq-bar-bg{flex:1;height:6px;background:#0000000a;border-radius:4px;overflow:hidden}.injury-freq-bar-fill{height:100%;border-radius:4px;background:var(--primary);transition:width .3s}.injury-freq-count{font-size:12px;font-weight:700;color:var(--text-muted);width:24px}#injury-modal .pain-slider-wrap{display:flex;align-items:center;gap:12px;margin-bottom:4px}#injury-modal input[type=range]{flex:1;accent-color:var(--primary)}#injury-modal .pain-val{font-size:18px;font-weight:800;color:var(--primary);min-width:30px;text-align:center}#plan-card{margin-bottom:14px;transition:box-shadow .3s ease,border-color .3s ease}#plan-card.plan-highlight{animation:planPulse 2s ease}@keyframes planPulse{0%{box-shadow:0 0 #c8102e66}30%{box-shadow:0 0 0 8px #c8102e26}60%{box-shadow:0 0 0 4px #c8102e14}to{box-shadow:0 0 #c8102e00}}.plan-week-label{font-size:13px;font-weight:700;color:var(--text-muted);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.plan-grid{display:flex;flex-direction:column;gap:5px}.plan-grid-day{display:flex;align-items:baseline;gap:10px;padding:8px 12px;border-radius:8px;background:#c8102e05}.plan-grid-day-label{font-size:12px;font-weight:800;color:var(--primary);min-width:62px;display:inline-block;font-variant-numeric:tabular-nums}.plan-grid-day-val{font-size:13px;color:var(--text)}.plan-grid-day-detail{font-size:12px;color:var(--text-muted);font-style:italic;display:block;margin-top:2px;padding-left:62px}.plan-coach-notes{font-size:12px;color:var(--text-muted);font-style:italic;margin-top:10px;padding-top:8px;border-top:1px solid var(--border)}.coach-plan-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.plan-week-range{display:block;font-size:12px;color:var(--primary);font-weight:600;margin-top:4px}.plan-day-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label   mic" "select  select" "input   input" "detail  detail" "timer   timer";gap:8px;padding:12px;margin-bottom:10px;background:var(--card, var(--bg-card, #fff));border:1px solid var(--border);border-radius:12px;align-items:center}.plan-day-label{grid-area:label;font-size:14px;font-weight:700;color:var(--text);text-align:left;font-variant-numeric:tabular-nums;width:auto}.plan-day-select{grid-area:select;width:100%;padding:9px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:14px}.plan-day-input{grid-area:input;width:100%;padding:9px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:13px}.plan-day-input.hidden{display:none}.plan-day-input::placeholder{color:var(--text-muted);opacity:.5}.plan-day-detail{grid-area:detail;width:100%;margin-left:0;padding:8px 12px;border-radius:8px;border:1px dashed var(--border);background:var(--bg-input);color:var(--text-muted);font-size:12px;font-style:italic}.plan-day-detail::placeholder{color:var(--text-muted);opacity:.5}.plan-day-detail:focus{color:var(--text);font-style:normal;border-style:solid}.plan-day-mic{grid-area:mic;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--bg-input);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;justify-self:end}.plan-day-mic:hover{border-color:var(--primary);color:var(--primary)}.plan-day-mic.recording{background:#ff3b30;border-color:#ff3b30;color:#fff;animation:voicePulse 1s ease infinite}.plan-day-mic.has-voice{background:#34c7591a;border-color:#34c759;color:#34c759}@keyframes voicePulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.plan-day-rec-timer{grid-area:timer;font-size:11px;font-weight:600;color:var(--text-muted);white-space:nowrap}.plan-day-rec-timer.rec-active{color:#ff3b30}.plan-day-rec-timer:empty{display:none}@media (min-width: 640px){.plan-day-row{grid-template-columns:80px minmax(120px,160px) 1fr auto;grid-template-areas:"label  select  input  mic" "timer  detail  detail detail";align-items:center;padding:10px 12px}.plan-day-detail{font-size:12px;padding:6px 10px}}.coach-tab-nav{grid-template-columns:repeat(5,1fr)}.coach-tab-content{display:none}.coach-tab-content.active{display:block;margin-top:12px}.coach-ranking-switcher{display:flex;gap:0;border-radius:8px;overflow:hidden;border:1px solid var(--border);margin-bottom:10px}.coach-ranking-switcher button{flex:1;padding:7px 0;border:none;background:var(--bg-input);color:var(--text-secondary);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.coach-ranking-switcher button.active{background:var(--primary);color:#fff}.plan-current-info{margin-bottom:12px}.plan-info-badge{display:inline-block;font-size:12px;font-weight:600;padding:5px 12px;border-radius:8px;background:#ff950014;color:#ff9500}.plan-exclude-wrap{margin-bottom:12px}.plan-exclude-label{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;display:block}.plan-exclude-list{display:flex;flex-wrap:wrap;gap:6px}.plan-exclude-chip{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);cursor:pointer;font-size:12px;font-weight:600;color:var(--text);transition:all .15s ease;user-select:none;-webkit-tap-highlight-color:transparent}.plan-exclude-chip input[type=checkbox]{display:none}.plan-exclude-chip.checked{background:#34c75914;border-color:#34c7594d;color:#34c759}.plan-exclude-chip .chip-check{width:14px;height:14px;border-radius:4px;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.plan-exclude-chip.checked .chip-check{background:#34c759;border-color:#34c759}.plan-exclude-chip.checked .chip-check:after{content:"\2713";color:#fff;font-size:10px;font-weight:700}.day-voice-icon{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;width:22px;height:22px;border-radius:50%;background:#34c7591a;color:#34c759;flex-shrink:0;transition:all .15s ease;vertical-align:middle;margin-left:4px}.day-voice-icon:hover{background:#34c75933}.day-voice-icon.playing{background:#34c759;color:#fff}.sent-plan-entry{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;margin-bottom:10px;background:var(--bg-card);transition:all var(--transition-fast)}.sent-plan-entry:last-child{margin-bottom:0}.sent-plan-entry:hover{border-color:var(--border-light)}.sent-plan-expired{opacity:.5}.sent-plan-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.sent-plan-week{font-size:13px;font-weight:700;color:var(--text)}.sent-plan-tag{font-size:10px;font-weight:700;padding:2px 8px;border-radius:6px;margin-left:6px;text-transform:uppercase;letter-spacing:.3px}.sent-plan-tag.active{background:#34c75914;color:#34c759}.sent-plan-tag.expired{background:#00000008;color:var(--text-muted)}.sent-plan-actions{display:flex;gap:4px}.sent-plan-edit:hover{color:var(--primary)!important;border-color:#c8102e33!important;background:#c8102e08!important}.sent-plan-days{display:flex;flex-direction:column;gap:3px;margin-bottom:6px}.sent-plan-day{display:flex;align-items:baseline;gap:8px;font-size:12px}.sent-plan-day-label{font-weight:800;color:var(--primary);min-width:62px;display:inline-block;font-variant-numeric:tabular-nums}.sent-plan-notes{font-size:11px;color:var(--text-muted);font-style:italic;padding-top:6px;border-top:1px solid var(--border);margin-top:4px}.sent-plan-user{font-size:12px;font-weight:700;color:var(--primary)}.btn-small{font-size:11px;padding:5px 12px;border-radius:8px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--bg-input);color:var(--text);transition:all var(--transition-fast)}.btn-small:hover{border-color:#c8102e33;background:#c8102e08;color:var(--primary)}.btn-small.btn-danger{border-color:#ff3b3026;color:#ff3b30}.btn-small.btn-danger:hover{border-color:#ff3b304d;background:#ff3b300a;color:#ff3b30}.plan-week-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;padding:6px 0}.plan-week-indicator{font-size:13px;font-weight:700;color:var(--text);text-align:center}.custom-types-list{margin-bottom:16px;max-height:240px;overflow-y:auto}.ct-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:6px}.ct-item-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.ct-item-color{width:14px;height:14px;border-radius:50%;flex-shrink:0}.ct-item-emoji{font-size:16px;flex-shrink:0}.ct-item-name{font-size:13px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-item-subs{font-size:10px;font-weight:600;padding:2px 6px;border-radius:5px;background:#c8102e0f;color:var(--primary);white-space:nowrap}.ct-item-times{font-size:12px;flex-shrink:0}.ct-item-actions{display:flex;gap:4px;flex-shrink:0}.custom-type-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.custom-type-form h4{font-size:14px;font-weight:700;color:var(--text);margin-bottom:10px}.ct-color-row{display:flex;gap:8px;flex-wrap:wrap}.ct-color-opt{width:28px;height:28px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all var(--transition-fast)}.ct-color-opt:hover{transform:scale(1.15)}.ct-color-opt.selected{border-color:var(--accent);box-shadow:0 0 8px #0000001a;transform:scale(1.15)}.ct-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}.notebook-card{overflow:hidden}.notebook-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none}.notebook-header h2{margin:0;font-size:16px}.notebook-chevron{transition:transform .2s;color:var(--text-muted)}.notebook-card.open .notebook-chevron{transform:rotate(180deg)}.notebook-privacy{display:flex;align-items:flex-start;gap:6px;font-size:11px;color:var(--text-muted);margin-top:8px;padding:6px 8px;background:#c8102e08;border-radius:var(--radius-sm);line-height:1.4}.notebook-privacy svg{flex-shrink:0;margin-top:1px;color:var(--primary)}.notebook-body{display:flex;flex-direction:column;gap:14px;margin-top:14px}.notebook-section{display:flex;flex-direction:column;gap:6px}.notebook-label{font-size:12px;font-weight:600;color:var(--text-secondary)}.notebook-mood{display:flex;gap:6px}.mood-btn{width:40px;height:40px;border-radius:50%;border:2px solid var(--border);background:var(--bg-input);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.mood-btn:hover{border-color:var(--primary);transform:scale(1.1)}.mood-btn.active{border-color:var(--primary);background:#c8102e0d;transform:scale(1.1)}.notebook-textarea{width:100%;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:13px;font-family:inherit;resize:vertical;transition:border-color var(--transition-fast)}.notebook-textarea:focus{border-color:var(--primary);outline:none}.notebook-date-input{padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:13px;font-family:inherit;width:100%}.notebook-date-input:focus{border-color:var(--primary);outline:none}.notebook-history{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.notebook-entry{padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border)}.notebook-entry-header{display:flex;align-items:center;justify-content:space-between}.notebook-entry-right{display:flex;align-items:center;gap:6px}.notebook-entry-chevron{color:var(--text-muted);transition:transform .2s}.notebook-entry.open .notebook-entry-chevron{transform:rotate(180deg)}.notebook-entry-date{font-size:12px;font-weight:600;color:var(--text-secondary)}.notebook-entry-mood{font-size:16px}.notebook-entry-content{padding-top:8px}.notebook-entry-goals{font-size:12px;color:var(--text-secondary);line-height:1.4;margin-bottom:6px}.notebook-entry-text{font-size:12px;color:var(--text-muted);line-height:1.4;white-space:pre-wrap;margin-bottom:8px}.notebook-entry-delete{display:inline-flex;align-items:center;gap:4px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:#ff3b30;font-size:11px;padding:3px 8px;cursor:pointer;transition:all var(--transition-fast)}.notebook-entry-delete:hover{background:#ff3b300a;border-color:#ff3b30}.settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.settings-header h3{margin:0;font-size:18px;font-weight:700;letter-spacing:-.02em}.settings-close{background:none;border:none;color:var(--text-muted);width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;border-radius:8px;transition:all var(--transition-fast)}.settings-close:hover{background:var(--bg-input);color:var(--text)}.settings-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 18px;padding:5px;background:var(--bg-input);border-radius:var(--radius-sm)}.settings-tab{flex:1 1 calc(33.333% - 4px);min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 10px;border:none;background:none;color:var(--text-muted);font-size:12.5px;font-weight:600;font-family:inherit;border-radius:8px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;letter-spacing:-.005em}.settings-tab svg{width:14px;height:14px;flex-shrink:0;opacity:.7}.settings-tab.active{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow-sm)}.settings-tab.active svg{opacity:1;color:var(--primary)}.settings-tab:hover:not(.active){color:var(--text-secondary)}.settings-tab-label{display:inline;overflow:hidden;text-overflow:ellipsis}[data-theme=dark] .settings-tab.active{background:var(--bg-card-hover)}@media (max-width:420px){.settings-tab{flex:1 1 calc(50% - 4px);font-size:12px}}.settings-tab-content{display:none}.settings-tab-content.active{display:block}.notif-status{padding:4px 0}.notif-status-text{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.notif-status-icon{font-size:18px}.notif-active-badge{background:#43a04714;color:#43a047;padding:8px 12px;border-radius:var(--radius-sm);font-weight:600;font-size:12px;text-align:center;margin-bottom:14px}.notif-option{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border)}.notif-option:last-of-type{border-bottom:none}.notif-option-label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;flex:1}.notif-option-label input[type=checkbox]{display:none}.notif-toggle{position:relative;width:44px;height:26px;flex-shrink:0;background:#e0e0e0;border-radius:13px;cursor:pointer;transition:background .25s ease}.notif-toggle:after{content:"";position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .25s ease}.notif-toggle.active{background:#34c759}.notif-toggle.active:after{transform:translate(18px)}.notif-settings .btn-ghost{margin-top:14px;font-size:13px}.notif-sub-option{padding-left:28px;border-bottom:none!important;padding-top:4px}.notif-time-input{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 10px;font-size:13px;font-family:inherit;color:var(--text);text-align:center;width:100px}.backup-list{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto}.backup-item{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px}.backup-info{display:flex;flex-direction:column;gap:2px}.backup-date{font-size:12px;font-weight:600;color:var(--text)}.backup-count{font-size:11px;color:var(--text-muted)}.backup-actions{display:flex;gap:4px}.backup-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 6px;cursor:pointer;font-size:13px;transition:all var(--transition-fast)}.backup-btn:hover{background:var(--bg-card);border-color:var(--primary)}.settings-hint{font-size:12px;color:var(--text-muted);margin-bottom:12px}.additional-type-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;margin-bottom:8px}.additional-type-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.additional-type-label{font-size:12px;font-weight:700;color:var(--primary)}.btn-remove-additional{background:none;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;padding:2px 6px;border-radius:6px;line-height:1}.btn-remove-additional:hover{background:#ff3b300f;color:var(--danger)}.formkurve-card{cursor:pointer;transition:transform .15s,box-shadow .15s;margin-bottom:16px;padding:18px 18px 10px}.formkurve-card:active{transform:scale(.98)}.formkurve-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.formkurve-info h3{font-size:16px;font-weight:700;margin:0}.formkurve-subtitle{font-size:11px;color:var(--text-muted)}.formkurve-indicator{display:flex;align-items:center;gap:8px}.formkurve-emoji{font-size:28px;line-height:1}.formkurve-score{font-size:26px;font-weight:800;font-family:Inter,sans-serif}.formkurve-score.score-up{color:#34c759}.formkurve-score.score-flat{color:#ff9500}.formkurve-score.score-down{color:#ff3b30}.formkurve-chart-wrap{height:100px;position:relative}.formkurve-hint{text-align:center;font-size:11px;color:var(--text-muted);margin-top:6px;padding-bottom:4px}.formkurve-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.formkurve-modal-header h3{margin:0;font-size:17px;font-weight:700}.formkurve-detail-score{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;background:var(--bg-input);border-radius:var(--radius-sm)}.formkurve-detail-score .formkurve-emoji{font-size:24px}#fk-detail-label{font-size:14px;font-weight:600}.fk-type-section{margin-bottom:18px}.fk-type-section h4{font-size:14px;font-weight:700;margin:0 0 8px;display:flex;align-items:center;gap:6px}.fk-type-chart{height:140px;position:relative}.fk-no-data{font-size:12px;color:var(--text-muted);text-align:center;padding:20px 0}.fk-explainer{margin-bottom:14px}.fk-explain-details{background:var(--bg-input);border:1px solid var(--border);border-radius:12px;padding:0;overflow:hidden}.fk-explain-details>summary{cursor:pointer;user-select:none;list-style:none;padding:10px 14px;font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.fk-explain-details>summary::-webkit-details-marker{display:none}.fk-explain-details>summary:before{content:"\24d8";font-size:14px;color:var(--primary);flex-shrink:0}.fk-explain-details>summary:after{content:"\203a";margin-left:auto;font-size:18px;line-height:1;color:var(--text-muted);transition:transform .2s}.fk-explain-details[open]>summary:after{transform:rotate(90deg)}.fk-explain-body{padding:0 14px 12px;font-size:12.5px;line-height:1.5;color:var(--text-secondary);border-top:1px solid var(--border)}.fk-explain-body p{margin:8px 0}.fk-explain-body ul{margin:6px 0 8px;padding-left:20px}.fk-explain-body li{margin:2px 0}.fk-explain-body b{color:var(--text-primary);font-weight:600}.custom-loc-item{display:flex;align-items:center;gap:8px;background:var(--bg-input);border:1px solid var(--border);border-radius:10px;padding:8px 10px}.custom-loc-item-name{flex:1;font-size:13px;font-weight:500;color:var(--text-primary)}.custom-loc-item-del{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:none;border:none;color:var(--text-secondary);cursor:pointer;opacity:.65;transition:all .15s;flex-shrink:0}.custom-loc-item-del:hover{opacity:1;color:#e53935;background:#e5393514}.chat-popup{position:fixed;bottom:80px;right:16px;width:340px;max-height:500px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 20px 60px #00000026;z-index:950;display:flex;flex-direction:column;animation:chatSlideUp .25s ease}@keyframes chatSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-input);border-bottom:1px solid var(--border)}.chat-title{font-size:14px;font-weight:700}.chat-close{background:none;border:none;color:var(--text-secondary);font-size:22px;cursor:pointer;line-height:1;padding:0 4px}.chat-close:hover{color:var(--text)}.chat-messages{flex:1;overflow-y:auto;padding:14px 14px 8px;display:flex;flex-direction:column;gap:10px;min-height:180px;max-height:320px}.chat-msg{padding:10px 14px;border-radius:14px;font-size:13px;line-height:1.5;max-width:88%;word-wrap:break-word}.chat-msg.user{background:var(--accent);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.chat-msg.bot{background:var(--bg-input);color:var(--text);align-self:flex-start;border-bottom-left-radius:4px;border:1px solid var(--border)}.chat-msg.bot .chat-stat{color:var(--primary);font-weight:700}.chat-suggestions-inline{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chat-suggestion{background:#fff;border:1px solid var(--border);border-radius:20px;padding:5px 12px;font-size:11px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.chat-suggestion:hover{background:var(--bg-input);color:var(--text);border-color:var(--primary)}.chat-input-row{display:flex;gap:8px;padding:10px 14px 14px;border-top:1px solid var(--border)}.chat-input-row input{flex:1;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;color:var(--text);font-size:13px;font-family:inherit;outline:none;transition:border-color var(--transition-fast)}.chat-input-row input:focus{border-color:var(--primary)}.chat-send{background:var(--accent);border:none;color:#fff;width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast)}.chat-send:hover{background:var(--accent-light)}.coach-weekly-modal{max-width:440px;width:100%;text-align:left;padding:28px 24px 22px;max-height:85vh;overflow-y:auto}.cws-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.cws-header h3{font-size:20px;font-weight:800;color:var(--text);margin:0}.cws-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:18px;font-weight:500}.cws-body{display:flex;flex-direction:column;gap:14px}.cws-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.cws-section-title{font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.cws-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:0}.cws-stat{text-align:center;background:var(--bg-input);border-radius:var(--radius-sm);padding:10px 6px}.cws-stat-val{font-size:22px;font-weight:800;color:var(--primary);display:block}.cws-stat-label{font-size:10px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.cws-rank-list{display:flex;flex-direction:column;gap:6px}.cws-rank-row{display:flex;align-items:center;gap:10px;padding:6px 10px;background:var(--bg-input);border-radius:var(--radius-sm)}.cws-rank-pos{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;flex-shrink:0}.cws-rank-pos.gold{background:linear-gradient(135deg,gold,orange)}.cws-rank-pos.silver{background:linear-gradient(135deg,silver,#a0a0a0)}.cws-rank-pos.bronze{background:linear-gradient(135deg,#cd7f32,sienna)}.cws-rank-pos.normal{background:var(--text-tertiary)}.cws-rank-name{font-size:14px;font-weight:600;color:var(--text);flex:1}.cws-rank-value{font-size:14px;font-weight:700;color:var(--primary)}.cws-injury-list{display:flex;flex-direction:column;gap:6px}.cws-injury-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#c8102e0f;border:1px solid rgba(200,16,46,.12);border-radius:var(--radius-sm)}.cws-injury-icon{font-size:18px;flex-shrink:0}.cws-injury-info{flex:1}.cws-injury-name{font-size:13px;font-weight:700;color:var(--text)}.cws-injury-detail{font-size:11px;color:var(--text-secondary)}.cws-no-injury{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#22d3c50f;border:1px solid rgba(34,211,197,.12);border-radius:var(--radius-sm);font-size:13px;color:var(--text-secondary)}.cws-type-list{display:flex;flex-wrap:wrap;gap:6px}.cws-type-tag{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;background:var(--bg-input);border-radius:16px;font-size:12px;font-weight:600;color:var(--text)}.cws-type-count{color:var(--primary);font-weight:800}.cws-actions{margin-top:18px;display:flex;justify-content:center}.cws-actions .btn-primary{gap:6px;display:inline-flex;align-items:center}@media (max-width:400px){.chat-popup{right:10px;left:10px;width:auto;bottom:80px;max-height:70vh}}.community-info-box{display:flex;align-items:center;gap:10px;padding:14px 16px;margin-bottom:12px;background:linear-gradient(135deg,#2196f31f,#2196f30f);border:1px solid rgba(33,150,243,.25);border-radius:var(--radius-sm);font-size:13px;color:var(--text);font-weight:500;line-height:1.45}.community-info-icon{font-size:22px;flex-shrink:0}.community-games-cta{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;margin-bottom:12px;background:linear-gradient(135deg,#c8102e14,#c8102e08);border:1px solid rgba(200,16,46,.18);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;text-align:left;color:var(--text)}.community-games-cta:hover{background:linear-gradient(135deg,#c8102e24,#c8102e0f);border-color:#c8102e59;transform:translateY(-1px);box-shadow:0 4px 12px #c8102e1a}.community-games-cta:active{transform:translateY(0)}.community-games-cta-icon{font-size:28px;flex-shrink:0}.community-games-cta-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.community-games-cta-text strong{font-size:15px;font-weight:700}.community-games-cta-text small{font-size:12px;color:var(--text-secondary);font-weight:500}.community-games-cta-arrow{font-size:22px;font-weight:700;color:var(--primary);flex-shrink:0;opacity:.7;transition:opacity .2s}.community-games-cta:hover .community-games-cta-arrow{opacity:1}.community-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;margin-bottom:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:var(--text);cursor:pointer;transition:all .15s ease}.community-back-btn:hover{border-color:var(--primary);color:var(--primary);background:#c8102e08}.community-list{display:flex;flex-direction:column;gap:8px}.community-athletes-scroll{display:flex;flex-direction:column;gap:6px;max-height:348px;overflow-y:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.community-athletes-scroll::-webkit-scrollbar{width:4px}.community-athletes-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.community-loading{grid-column:1 / -1;text-align:center;color:var(--text-tertiary);padding:24px 0;font-size:13px}.community-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all var(--transition-fast)}.community-card:hover{border-color:var(--primary);background:#c8102e05}.community-card.is-me{border-color:#c8102e33}.community-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;text-transform:uppercase;flex-shrink:0}.community-name{font-size:13px;font-weight:600;color:var(--text);flex:1}.community-week-header{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:2px 4px 6px}.community-week-badge{font-size:13px;font-weight:700;min-width:22px;text-align:center;padding:2px 8px;border-radius:10px;background:#c8102e0f;color:var(--primary);white-space:nowrap}.community-games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:16px}.community-game-tile{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:18px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all var(--transition-fast);text-align:center}.community-game-tile.active:hover{border-color:var(--primary);background:#c8102e0a;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.community-game-tile.active,.community-game-tile.selected{border-color:#c8102e33}.community-game-tile.selected{background:#c8102e0f}.community-game-tile.locked{opacity:.5;cursor:default}.community-game-icon{font-size:28px}.community-game-name{font-size:12px;font-weight:700;color:var(--text)}#community-game-container{margin-top:12px;overflow:hidden}.profile-modal-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.profile-avatar-lg{width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;text-transform:uppercase;flex-shrink:0}.profile-header-info{flex:1}.profile-header-info h3{margin:0;font-size:16px;text-transform:capitalize}.profile-week-stat{font-size:12px;color:var(--primary);font-weight:500}.profile-section{margin-bottom:14px}.profile-label{display:block;font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.profile-bio-text{font-size:13px;color:var(--text-secondary);line-height:1.5;min-height:20px}.profile-bio-text:empty:before{content:attr(data-empty);color:var(--text-tertiary);font-style:italic}.profile-bio-input{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;color:var(--text);font-size:13px;font-family:inherit;outline:none;resize:none;transition:border-color var(--transition-fast)}.profile-bio-input:focus{border-color:var(--primary)}#rt-game-area{padding:0;overflow:hidden}.rt-mode-bar{display:flex;border-bottom:2px solid var(--border)}.rt-mode-btn{flex:1;padding:12px;border:none;background:var(--bg-card);color:var(--text-secondary);font-size:15px;font-weight:700;cursor:pointer;transition:all .2s;text-align:center}.rt-mode-btn.active{color:var(--accent,#e53935);background:var(--bg-secondary);box-shadow:inset 0 -3px 0 var(--accent,#e53935)}.rt-lobby{padding:16px}.rt-lobby-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rt-lobby-title{font-size:18px;font-weight:800;color:var(--text)}.rt-lobby-code{font-family:monospace;font-size:20px;font-weight:900;letter-spacing:3px;color:var(--accent,#e53935);background:var(--bg-tertiary);padding:4px 12px;border-radius:var(--radius-sm)}.rt-lobby-players{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;min-height:40px}.rt-lobby-player{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.rt-lobby-player .lane-num{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff}.rt-lobby-player .name{font-weight:600;color:var(--text);flex:1}.rt-lobby-player .status{font-size:12px;color:var(--text-tertiary)}.rt-lobby-player.ready .status{color:#43a047}.rt-lobby-player.dq .status{color:#e53935}.rt-open-lobbies{margin-bottom:12px}.rt-open-lobby-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-tertiary);border-radius:var(--radius-sm);margin-bottom:6px}.rt-open-lobby-info{display:flex;flex-direction:column;gap:2px}.rt-open-lobby-host{font-weight:700;font-size:14px;color:var(--text)}.rt-open-lobby-count{font-size:12px;color:var(--text-secondary)}.rt-open-lobby-join{padding:6px 16px;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,#43a047,#2e7d32);color:#fff;font-weight:700;font-size:13px;cursor:pointer;transition:transform .1s}.rt-open-lobby-join:active{transform:scale(.95)}.rt-lobby-actions{display:flex;gap:8px;margin-bottom:8px}.rt-lobby-actions .rt-start-btn{border-radius:var(--radius-sm);font-size:14px;padding:10px}#rt-mp-start-btn{border-radius:var(--radius-sm);margin-bottom:4px}#rt-leave-btn{border-radius:var(--radius-sm);font-size:13px;padding:8px}.rt-scene{position:relative;width:100%;min-height:380px;background:#c0392b;overflow:hidden;cursor:pointer;user-select:none}.rt-lanes{position:relative;width:100%}.rt-lane{position:relative;height:64px;border-bottom:2px solid rgba(255,255,255,.25);display:flex;align-items:center;background:linear-gradient(180deg,rgba(180,50,30,.2) 0%,transparent 50%,rgba(0,0,0,.1) 100%)}.rt-lane:nth-child(odd){background:linear-gradient(180deg,rgba(200,60,40,.15) 0%,transparent 50%,rgba(0,0,0,.08) 100%)}.rt-lane:first-child{border-top:2px solid rgba(255,255,255,.25)}.rt-lane:only-child{height:120px}.rt-lane-num{position:absolute;left:6px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:#fff9;background:#00000040;z-index:2}.rt-lanes:before{content:"";position:absolute;top:0;bottom:0;left:70px;width:3px;background:#ffffffb3;z-index:3}.rt-lane:before{content:"";position:absolute;left:66px;top:0;bottom:0;width:8px;border-right:3px solid rgba(255,255,255,.35)}.rt-lane-sprinter{position:absolute;left:36px;top:50%;transform:translateY(-50%);z-index:2;transition:left .12s ease-out}.rt-lane-sprinter svg{display:block}.rt-lane-sprinter.go{animation:rtSprintTopDown .7s ease-in forwards}@keyframes rtSprintTopDown{0%{left:36px}to{left:calc(100% + 60px)}}.rt-lane-sprinter.false-start{animation:rtFalseStartTopDown .4s ease-out}@keyframes rtFalseStartTopDown{0%{left:36px}30%{left:52px}60%{left:32px}to{left:36px}}.rt-lane-sprinter.dq{opacity:.35}.rt-lane-name{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:10px;font-weight:700;color:#ffffffb3;text-shadow:0 1px 3px rgba(0,0,0,.5);z-index:2;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rt-lane-time{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:15px;font-weight:900;color:#fff;text-shadow:0 0 12px rgba(0,0,0,.6);z-index:4;display:none}.rt-lights{position:absolute;top:8px;left:50%;transform:translate(-50%);display:flex;gap:10px;background:#000000a6;padding:8px 14px;border-radius:24px;z-index:10}.rt-light{width:22px;height:22px;border-radius:50%;background:#333;border:2px solid #555;transition:background .15s,box-shadow .15s}.rt-light.red{background:#e53935;box-shadow:0 0 14px #e53935}.rt-light.yellow{background:#fdd835;box-shadow:0 0 14px #fdd835}.rt-light.green{background:#43a047;box-shadow:0 0 14px #43a047}.rt-phase-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:8;pointer-events:none}.rt-phase-text{font-size:22px;font-weight:800;color:#fff;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.7);letter-spacing:1px;opacity:0;transition:opacity .2s;max-width:90vw;text-align:center;word-break:break-word;line-height:1.2}.rt-phase-text.visible{opacity:1}.rt-phase-text.flash{animation:rtFlash .5s ease-out}@keyframes rtFlash{0%{transform:scale(1.8);opacity:1}to{transform:scale(1);opacity:1}}.rt-result{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:9;text-align:center;background:#0009;padding:12px 24px;border-radius:12px}.rt-result-time{font-size:56px;font-weight:900;color:#fff;text-shadow:0 0 24px rgba(229,57,53,.8);display:block;line-height:1}.rt-result-label{font-size:16px;color:#ffffffb3;font-weight:600}.rt-result.excellent .rt-result-time{color:#43a047;text-shadow:0 0 24px rgba(67,160,71,.8)}.rt-result.good .rt-result-time{color:#fdd835;text-shadow:0 0 24px rgba(253,216,53,.8)}.rt-result.slow .rt-result-time{color:#e53935}.rt-start-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border:none;background:linear-gradient(135deg,var(--accent,#e53935),#b71c1c);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;text-transform:uppercase;letter-spacing:1px}.rt-start-btn:active{transform:scale(.97)}.rt-start-btn:disabled{opacity:.5;cursor:not-allowed}.rt-retry-btn{background:linear-gradient(135deg,#555,#333)}.rt-create-btn{background:linear-gradient(135deg,#1565c0,#0d47a1)}.rt-attempts{display:flex;justify-content:center;gap:8px;padding:10px 16px;background:var(--bg-card)}.rt-attempt-dot{width:14px;height:14px;border-radius:50%;background:var(--bg-tertiary);border:2px solid var(--border);transition:background .3s,border-color .3s,transform .3s}.rt-attempt-dot.done{background:#43a047;border-color:#43a047;transform:scale(1.15)}.rt-attempt-dot.fail{background:#e53935;border-color:#e53935;transform:scale(1.15)}.rt-attempt-dot.current{border-color:var(--accent,#e53935);transform:scale(1.25);box-shadow:0 0 8px var(--accent,#e53935)}.rt-dq-banner{padding:14px;text-align:center;font-size:16px;font-weight:800;background:linear-gradient(135deg,#b71c1c,#880e0e);color:#fff;letter-spacing:1px;text-transform:uppercase}.rt-summary{padding:20px 16px;text-align:center;background:var(--bg-card)}.rt-summary-title{font-size:20px;font-weight:800;margin-bottom:12px;color:var(--text)}.rt-summary-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:16px}.rt-summary-stat{background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:10px 6px}.rt-summary-stat .val{display:block;font-size:22px;font-weight:800;color:var(--accent,#e53935)}.rt-summary-stat .lbl{font-size:11px;color:var(--text-secondary);text-transform:uppercase}.rt-summary .rt-start-btn{margin-top:8px;border-radius:var(--radius-sm)}.rt-scene.rt-tappable{cursor:pointer}.rt-scene.rt-tappable:after{content:"TAP!";position:absolute;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:900;color:#ffffff1f;pointer-events:none}.btn-bio-save{margin-top:6px;padding:6px 18px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-family:Inter,sans-serif;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-bio-save:hover{background:var(--accent-light)}.profile-comments-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.profile-comment-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px}.profile-comment-header{display:flex;justify-content:space-between;align-items:center}.btn-delete-comment{background:none;border:none;color:var(--text-tertiary);font-size:16px;cursor:pointer;padding:0 2px;line-height:1;transition:color var(--transition-fast)}.btn-delete-comment:hover{color:var(--danger)}.profile-comment-author{font-size:11px;font-weight:600;color:var(--primary);text-transform:capitalize}.profile-comment-date{font-size:10px;color:var(--text-tertiary);margin-left:6px}.profile-comment-text{font-size:12px;color:var(--text-secondary);line-height:1.4;margin-top:2px}.profile-no-comments{font-size:12px;color:var(--text-tertiary);font-style:italic;padding:8px 0}.profile-comment-form{display:flex;gap:6px}.profile-comment-form input{flex:1;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 10px;color:var(--text);font-size:12px;font-family:inherit;outline:none;transition:border-color var(--transition-fast)}.profile-comment-form input:focus{border-color:var(--primary)}.profile-comment-form input::placeholder{color:var(--text-tertiary)}.avatar-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.avatar-modal-header h3{margin:0;font-size:16px;font-weight:700}.avatar-preview{width:64px;height:64px;border-radius:50%;margin:0 auto 14px;background:var(--bg-input);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:36px;line-height:1;transition:all .2s ease;overflow:hidden}.avatar-preview.has-avatar{border-color:var(--primary)}.avatar-preview:empty:before{content:"?";font-size:24px;font-weight:700;color:var(--text-muted)}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-builder-row{margin-bottom:10px;text-align:left}.avatar-builder-label{font-size:10px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.avatar-builder-colors{display:flex;gap:6px;flex-wrap:wrap}.avatar-color-btn{width:30px;height:30px;border-radius:50%;border:2.5px solid transparent;cursor:pointer;transition:all .15s;outline:none}.avatar-color-btn:hover{transform:scale(1.12)}.avatar-color-btn.selected{border-color:var(--primary);box-shadow:0 0 0 2px #c8102e40}.avatar-builder-options{display:flex;gap:4px;flex-wrap:wrap}.avatar-opt-btn{padding:5px 10px;border-radius:12px;border:1.5px solid var(--border);background:var(--bg-input);color:var(--text);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit;outline:none}.avatar-opt-btn:hover{border-color:var(--primary)}.avatar-opt-btn.selected{border-color:var(--primary);background:#c8102e0f;color:var(--primary);font-weight:600}.community-avatar.has-icon{background:var(--bg-input);font-size:20px;line-height:1;overflow:hidden}.community-avatar.has-icon img{width:100%;height:100%;object-fit:cover}.profile-avatar-lg.has-icon{background:var(--bg-input);font-size:28px;line-height:1;overflow:hidden}.profile-avatar-lg.has-icon img{width:100%;height:100%;object-fit:cover}.btn-community-avatar{width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;overflow:hidden;border-radius:50%}.btn-community-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.community-my-profile{background:var(--bg-card);border:1px solid rgba(200,16,46,.25);border-radius:var(--radius-sm);padding:10px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all var(--transition-fast);margin-bottom:10px}.community-my-profile:hover{border-color:var(--primary);background:#c8102e08}.community-my-profile .community-avatar{width:36px;height:36px}.community-my-info{flex:1;display:flex;flex-direction:column;gap:1px}.community-my-info .community-name{font-size:13px;font-weight:700}.community-edit-label{font-size:10px;color:var(--primary);font-weight:600;letter-spacing:.3px}.community-my-edit{color:var(--text-tertiary);display:flex;align-items:center}.avatar-bio-section{text-align:left;margin-bottom:10px}.avatar-bio-label{display:block;font-size:10px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.avatar-bio-textarea{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;color:var(--text);font-size:13px;font-family:inherit;outline:none;resize:none;transition:border-color var(--transition-fast)}.avatar-bio-textarea:focus{border-color:var(--primary)}.avatar-bio-textarea::placeholder{color:var(--text-tertiary)}.avatar-scroll-area{max-height:320px;overflow-y:auto;padding-right:4px}.rt-leaderboard{margin-top:20px;padding:16px;background:var(--bg-card);border-top:1px solid var(--border)}.rt-lb-title{font-size:18px;font-weight:800;text-align:center;margin-bottom:12px;color:var(--text)}.rt-lb-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:14px}.rt-lb-tab{padding:6px 18px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.rt-lb-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.rt-lb-body{min-height:40px}.rt-lb-loading,.rt-lb-empty{text-align:center;color:var(--text-tertiary);font-size:13px;padding:12px 0}.rt-lb-row{display:flex;align-items:center;padding:8px 10px;gap:10px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.rt-lb-row:nth-child(odd){background:var(--bg-tertiary)}.rt-lb-row.is-me{background:rgba(var(--primary-rgb, 66,165,245),.12)}.rt-lb-rank{width:28px;text-align:center;font-weight:800;font-size:15px;flex-shrink:0}.rt-lb-rank.gold{color:gold}.rt-lb-rank.silver{color:silver}.rt-lb-rank.bronze{color:#cd7f32}.rt-lb-name{flex:1;font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rt-lb-time{font-size:15px;font-weight:800;color:var(--accent,#e53935);flex-shrink:0}.sprint-game{overflow:hidden}.sprint-track{position:relative;padding:24px 16px 8px;background:linear-gradient(135deg,#c0392b,#a93226);min-height:140px}.sprint-runner{position:absolute;top:12px;left:0;font-size:28px;transition:left .08s linear;z-index:2}.sprint-distance-markers{display:flex;justify-content:space-between;padding-top:40px;font-size:10px;font-weight:700;color:#fff9}.sprint-progress-bar{height:8px;background:#0000004d;border-radius:4px;margin-top:8px;overflow:hidden}.sprint-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#fdd835,#43a047);border-radius:4px;transition:width .08s linear}.sprint-info{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-card)}.sprint-timer{font-size:28px;font-weight:900;color:var(--accent,#e53935);font-variant-numeric:tabular-nums}.sprint-taps{font-size:14px;font-weight:600;color:var(--text-secondary)}.sprint-tap-zone{min-height:160px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}.sprint-tap-zone.sprint-countdown .sprint-tap-text{font-size:64px;font-weight:900;color:var(--accent,#e53935);animation:sprintPulse .8s ease-in-out infinite}.sprint-tap-zone.sprint-active{background:linear-gradient(135deg,#c0392b,#e53935)}.sprint-tap-zone.sprint-active .sprint-tap-text{font-size:28px;font-weight:900;color:#fff;letter-spacing:2px;text-transform:uppercase;animation:sprintPulse .3s ease-in-out infinite}.sprint-tap-text{font-size:16px;font-weight:600;color:var(--text-secondary)}@keyframes sprintPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.sprint-result{padding:20px 16px;text-align:center;background:var(--bg-card)}.sprint-result-title{font-size:24px;font-weight:800;margin-bottom:8px;color:var(--text)}.sprint-result-time{font-size:48px;font-weight:900;color:var(--accent,#e53935);line-height:1}.sprint-result-detail{font-size:13px;color:var(--text-secondary);margin:8px 0 16px}.wj-game{overflow:hidden}.wj-instructions{padding:12px 16px;background:var(--bg-card);border-bottom:1px solid var(--border)}.wj-instructions-title{font-size:15px;font-weight:800;color:var(--text);margin-bottom:6px}.wj-instructions-steps{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary);line-height:1.5}.wj-viewport{position:relative;width:100%;height:220px;overflow:hidden;border-bottom:1px solid var(--border);cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}.wj-scene-v2{display:flex;height:100%;align-items:stretch}.wj-athlete-static{width:50px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:38px;background:#c0392b;z-index:5;border-right:2px solid rgba(255,255,255,.15)}.wj-track{position:relative;flex:1;min-width:0;overflow:hidden}.wj-track-surface{position:absolute;inset:0;background:linear-gradient(180deg,#c0392b,#a93226)}.wj-footprints{position:absolute;top:0;bottom:0;left:0;width:100%;z-index:5;pointer-events:none}.wj-runner-marker{position:absolute;top:50%;left:5%;transform:translate(-50%,-50%);font-size:30px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5));transition:left .06s linear;z-index:6}.wj-trail-dot{position:absolute;top:50%;width:8px;height:8px;border-radius:50%;background:#ffffff59;transform:translate(-50%,-50%);animation:wjDotAppear .2s ease-out forwards}@keyframes wjDotAppear{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.wj-board-v2{position:absolute;top:0;bottom:0;right:28%;width:70px;display:flex;flex-direction:row;z-index:4}.wj-board-white-v2{width:50px;height:100%;background:linear-gradient(180deg,#f5f5f5,#e0e0e0);border-left:2px solid #bbb;border-right:1px solid #ddd}.wj-board-black-v2{width:20px;height:100%;background:linear-gradient(180deg,#333,#1a1a1a);border-right:2px solid #555}.wj-board-indicator{position:absolute;top:4px;right:28%;width:70px;display:flex;z-index:10;pointer-events:none}.wj-bi-white{width:50px;text-align:center;font-size:7px;font-weight:900;color:#0000004d;letter-spacing:.5px}.wj-bi-black{width:20px;text-align:center;font-size:6px;font-weight:900;color:#ffffff80;letter-spacing:.5px}.wj-pit-v2{position:absolute;top:0;bottom:0;right:0;width:28%;background:#8b4513;overflow:hidden}.wj-pit-sand-v2{position:absolute;inset:10px 10px 10px 4px;background:linear-gradient(180deg,#f5e6c8,#e0c990);border:2px solid rgba(139,90,43,.3);border-radius:3px}.wj-pit-label-v2{position:absolute;bottom:2px;left:50%;transform:translate(-50%);font-size:7px;font-weight:800;color:#8b5a2b66;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;z-index:2}.wj-landing-mark{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:18px;z-index:8}.wj-distance-label{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background:#000000bf;padding:6px 16px;border-radius:10px;z-index:20}.wj-distance-label span{font-size:24px;font-weight:900;color:#fff}.wj-foul-banner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#e53935eb;color:#fff;padding:10px 24px;border-radius:10px;font-size:18px;font-weight:900;letter-spacing:2px;z-index:25;text-align:center;animation:wjFoulPulse .4s ease-in-out 2}@keyframes wjFoulPulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.08)}}.wj-info{display:flex;justify-content:space-between;padding:10px 16px;background:var(--bg-card);border-top:1px solid var(--border)}.wj-attempt-label,.wj-best-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.wj-best-label{color:var(--accent,#e53935)}.wj-tap-hint{padding:14px;text-align:center;font-size:18px;font-weight:800;color:#fff;background:linear-gradient(135deg,#43a047,#2e7d32);animation:sprintPulse .5s ease-in-out infinite;letter-spacing:1px;cursor:pointer}.wj-result{padding:20px 16px;text-align:center;background:var(--bg-card)}.wj-result-title{font-size:20px;font-weight:800;margin-bottom:4px;color:var(--text)}.wj-result-saved{font-size:12px;color:#43a047;font-weight:600;margin-bottom:12px}.wj-result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;margin-bottom:16px}.wj-doping-tracker{margin:10px 0 6px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border)}.wj-doping-label{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.wj-doping-bar-track{height:8px;border-radius:4px;background:var(--bg-input);overflow:hidden}.wj-doping-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#e53935,#ff6f00);transition:width .5s ease}.wj-doping-bar-fill.full{background:linear-gradient(90deg,#43a047,#66bb6a);animation:dopingGlow 1s ease infinite alternate}@keyframes dopingGlow{0%{box-shadow:0 0 4px #43a047}to{box-shadow:0 0 12px #43a047}}.wj-doping-btn{display:block;width:100%;margin:6px 0;padding:12px 16px;border:2px dashed #e53935;border-radius:var(--radius-sm);background:#e5393514;color:#e53935;font-size:15px;font-weight:700;cursor:pointer;transition:all .3s ease;text-align:center;animation:dopingReady 1.2s ease infinite}@keyframes dopingReady{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.wj-doping-btn:hover{background:#e5393538}.wj-doping-btn.active{background:#43a047;color:#fff;border-color:#43a047;border-style:solid;animation:none}.doping-overlay{position:relative;width:100%;height:180px;margin:8px 0;background:radial-gradient(ellipse at center,#0a0a0a,#000);border-radius:var(--radius-sm);overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid rgba(229,57,53,.3)}.doping-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(229,57,53,.15) 100%);pointer-events:none}.doping-arm{font-size:56px;position:absolute;left:28%;top:50%;transform:translate(-50%,-50%);opacity:0;transition:all .4s ease}.doping-arm.visible{opacity:1}.doping-arm.pulse{animation:dopingArmPulse .4s ease;filter:drop-shadow(0 0 20px #43a047)}.doping-syringe{font-size:40px;position:absolute;right:5%;top:50%;transform:translateY(-50%) rotate(-15deg);opacity:0;transition:all .8s cubic-bezier(.22,.61,.36,1)}.doping-syringe.approach{right:36%;opacity:1;filter:drop-shadow(0 0 8px rgba(229,57,53,.6))}.doping-syringe.inject{right:32%;opacity:1;transform:translateY(-50%) rotate(-5deg) scale(.9);filter:drop-shadow(0 0 12px #e53935)}.doping-flash{position:absolute;inset:0;background:#ffffffe6;opacity:0;pointer-events:none}.doping-flash.active{animation:dopingFlashBang .3s ease-out forwards}.doping-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.doping-particle{position:absolute;width:4px;height:4px;border-radius:50%;background:#43a047;opacity:0}.doping-particle.active{animation:dopingParticleFly .8s ease-out forwards}.doping-stats{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:16px;opacity:0;transform:translateY(10px);transition:all .4s ease}.doping-stats.visible{opacity:1;transform:translateY(0)}.doping-stat{font-size:11px;font-weight:700;color:#ffffffb3;text-transform:uppercase;letter-spacing:1px}.doping-stat span{color:#43a047;font-weight:800;margin-left:4px}.doping-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.3);font-size:18px;font-weight:900;color:#43a047;text-shadow:0 0 20px rgba(67,160,71,.6),0 0 40px rgba(67,160,71,.3);opacity:0;white-space:nowrap;letter-spacing:2px;transition:all .5s cubic-bezier(.22,.61,.36,1);z-index:10}.doping-text.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}@keyframes dopingArmPulse{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.3)}to{transform:translate(-50%,-50%) scale(1.15)}}@keyframes dopingFlashBang{0%{opacity:.9}to{opacity:0}}@keyframes dopingParticleFly{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(0)}}@keyframes dopingShake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.wj-power-bar{position:absolute;bottom:8px;left:10%;width:80%;z-index:30;text-align:center}.wj-power-track{position:relative;height:18px;border-radius:9px;background:linear-gradient(90deg,#e53935,#fb8c00 25%,#43a047 45% 55%,#fb8c00 75%,#e53935);border:2px solid rgba(255,255,255,.3);overflow:visible}.wj-power-cursor{position:absolute;top:-3px;width:5px;height:24px;background:#fff;border-radius:2px;left:0%;box-shadow:0 0 8px #ffffffe6}.wj-power-label{font-size:11px;font-weight:800;color:#fff;margin-top:4px;text-shadow:0 1px 3px rgba(0,0,0,.6)}.hj-game{overflow:hidden}.hj-instructions{padding:12px 16px;background:var(--bg-card);border-bottom:1px solid var(--border)}.hj-instructions-title{font-size:15px;font-weight:800;color:var(--text);margin-bottom:6px}.hj-instructions-steps{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary);line-height:1.5}.hj-viewport{position:relative;width:100%;height:240px;overflow:hidden;background:linear-gradient(180deg,#87ceeb,#b0d8f0 60%,#8b7355 60%,#6b5b45);border-bottom:1px solid var(--border);cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}.hj-scene{position:relative;width:100%;height:100%}.hj-ground{position:absolute;bottom:0;left:0;right:0;height:40%;background:linear-gradient(180deg,#8b7355,#6b5b45)}.hj-mat{position:absolute;bottom:12px;right:15%;width:25%;height:35px;background:linear-gradient(180deg,#1565c0,#0d47a1);border-radius:4px;border:2px solid rgba(255,255,255,.15);z-index:2}.hj-uprights{position:absolute;bottom:12px;z-index:3}.hj-upright-left{position:absolute;bottom:0;left:0;width:6px;background:linear-gradient(180deg,#ddd,#999);border-radius:2px 2px 0 0}.hj-upright-right{position:absolute;bottom:0;right:0;width:6px;background:linear-gradient(180deg,#ddd,#999);border-radius:2px 2px 0 0}.hj-bar{position:absolute;left:6px;right:6px;height:4px;background:linear-gradient(180deg,#ff6f00,#e65100);border-radius:2px;box-shadow:0 2px 4px #0000004d}.hj-athlete{position:absolute;bottom:12px;left:5%;font-size:36px;z-index:4;transition:none}.hj-height-display{position:absolute;top:8px;right:12px;font-size:28px;font-weight:900;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.5);z-index:10}.hj-power-bar{position:absolute;bottom:8px;left:10%;width:80%;z-index:30;text-align:center}.hj-power-track{position:relative;height:18px;border-radius:9px;border:2px solid rgba(255,255,255,.3);overflow:visible}.hj-power-cursor{position:absolute;top:-3px;width:5px;height:24px;background:#fff;border-radius:2px;left:0%;box-shadow:0 0 8px #ffffffe6}.hj-power-label{font-size:11px;font-weight:800;color:#fff;margin-top:4px;text-shadow:0 1px 3px rgba(0,0,0,.6)}.hj-result-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#43a047eb;color:#fff;padding:10px 24px;border-radius:10px;font-size:18px;font-weight:900;letter-spacing:2px;z-index:25;text-align:center;animation:wjFoulPulse .4s ease-in-out 2}.hj-fail-overlay{background:#e53935eb}.hj-info{display:flex;justify-content:space-between;padding:10px 16px;background:var(--bg-card);border-top:1px solid var(--border)}.hj-height-label,.hj-attempt-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.hj-height-label{color:var(--accent,#e53935)}.hj-result{padding:20px 16px;text-align:center;background:var(--bg-card)}.hj-result-title{font-size:20px;font-weight:800;margin-bottom:4px;color:var(--text)}.hj-result-saved{font-size:12px;color:#43a047;font-weight:600;margin-bottom:12px}.hj-result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;margin-bottom:16px}.sw-game{overflow:hidden}.sw-instructions{padding:12px 16px;background:var(--bg-card);border-bottom:1px solid var(--border)}.sw-instructions-title{font-size:15px;font-weight:800;color:var(--text);margin-bottom:6px}.sw-instructions-steps{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary)}.sw-viewport{position:relative;width:100%;height:240px;overflow:hidden;border-bottom:1px solid var(--border);cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}.sw-scene{position:relative;width:100%;height:100%;background:linear-gradient(180deg,#87ceeb,#b0d8f0 40%,#4a7c3a 40%,#3d6b30)}.sw-track-bg{position:absolute;bottom:0;left:0;width:40%;height:60%;background:linear-gradient(90deg,#c0392b,#a93226);border-top:3px solid #fff}.sw-throw-line{position:absolute;bottom:0;left:40%;width:4px;height:60%;background:#fff;z-index:5}.sw-thrower{position:absolute;bottom:32%;left:5%;font-size:36px;transition:left .08s linear;z-index:10}.sw-spear-flying{position:absolute;font-size:28px;z-index:8;transition:none}.sw-landing-zone{position:absolute;top:0;right:0;width:58%;height:100%}.sw-distance-markers{position:absolute;bottom:2px;left:0;right:0;height:16px}.sw-distance-markers span{position:absolute;font-size:9px;font-weight:700;color:#ffffffb3;transform:translate(-50%)}.sw-landing-mark{position:absolute;top:30%;font-size:20px;z-index:6}.sw-angle-bar{position:absolute;bottom:50px;left:10%;width:80%;z-index:30;text-align:center}.sw-angle-track{position:relative;height:18px;border-radius:9px;background:linear-gradient(90deg,#e53935,#fb8c00 20%,#43a047 42%,#66bb6a,#43a047 58%,#fb8c00 80%,#e53935);overflow:hidden}.sw-angle-optimal{position:absolute;left:45%;width:10%;height:100%;border-left:2px dashed rgba(255,255,255,.5);border-right:2px dashed rgba(255,255,255,.5);pointer-events:none}.sw-angle-cursor{position:absolute;top:-2px;width:6px;height:22px;background:#fff;border-radius:3px;box-shadow:0 0 6px #0006;transition:none}.sw-angle-label{font-size:11px;font-weight:700;color:#fff;margin-top:4px;text-shadow:0 1px 3px rgba(0,0,0,.5)}.sw-power-bar{position:absolute;bottom:8px;left:10%;width:80%;z-index:30;text-align:center}.sw-power-track{position:relative;height:18px;border-radius:9px;background:linear-gradient(90deg,#e53935,#fb8c00 25%,#43a047 45% 55%,#fb8c00 75%,#e53935);overflow:hidden}.sw-power-cursor{position:absolute;top:-2px;width:6px;height:22px;background:#fff;border-radius:3px;box-shadow:0 0 6px #0006;transition:none}.sw-power-label{font-size:11px;font-weight:700;color:#fff;margin-top:4px;text-shadow:0 1px 3px rgba(0,0,0,.5)}.sw-distance-label{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background:#000000bf;padding:6px 16px;border-radius:10px;z-index:20}.sw-distance-label span{font-size:24px;font-weight:900;color:#fff}.sw-foul-banner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#e53935f2;color:#fff;font-size:20px;font-weight:800;padding:12px 28px;border-radius:12px;z-index:40;animation:hjBannerIn .3s ease}.sw-info{display:flex;justify-content:space-between;padding:8px 16px;font-size:13px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border)}.sw-tap-hint{position:fixed;bottom:60px;left:50%;transform:translate(-50%);background:#000000d9;color:#fff;padding:10px 24px;border-radius:20px;font-size:15px;font-weight:700;z-index:100;animation:rtPulse 1s ease infinite;pointer-events:none}.sw-action-btn{padding:16px;text-align:center;font-size:18px;font-weight:800;color:#fff;background:linear-gradient(135deg,#43a047,#2e7d32);animation:sprintPulse .5s ease-in-out infinite;letter-spacing:1px;cursor:pointer;border:none;border-radius:0;-webkit-tap-highlight-color:transparent;user-select:none}.sw-result{padding:20px 16px;text-align:center}.sw-result-title{font-size:20px;font-weight:800;margin-bottom:4px;color:var(--text)}.sw-result-saved{font-size:12px;color:#43a047;font-weight:600;margin-bottom:12px}.sw-result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;margin-bottom:16px}.sw-doping-tracker{margin:10px 16px 6px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border)}.sw-doping-label{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.sw-doping-bar-track{height:8px;border-radius:4px;background:var(--bg-input);overflow:hidden}.sw-doping-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#e53935,#ff6f00);transition:width .5s ease}.sw-doping-bar-fill.full{background:linear-gradient(90deg,#43a047,#66bb6a);animation:dopingGlow 1s ease infinite alternate}.rt-lb-record-info{padding:8px 12px;margin-top:8px;text-align:center;font-size:11px;font-weight:600;color:var(--accent,#e53935);background:var(--bg-input);border-radius:var(--radius-sm);border:1px dashed var(--border)}.hl-game{overflow:hidden}.hl-instructions{padding:12px 16px;background:var(--bg-card);border-bottom:1px solid var(--border)}.hl-instructions-title{font-size:15px;font-weight:800;color:var(--text);margin-bottom:6px}.hl-instructions-steps{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary);line-height:1.5}.hl-viewport{position:relative;width:100%;height:280px;overflow:hidden;border-bottom:1px solid var(--border);cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}.hl-sky{position:absolute;top:0;left:0;right:0;height:35%;background:linear-gradient(180deg,#1a237e,#3949ab 40%,#5c6bc0,#7986cb);z-index:0}.hl-cloud{position:absolute;background:#ffffff26;border-radius:50%;height:16px;width:50px}.hl-cloud:after{content:"";position:absolute;background:inherit;border-radius:inherit;height:12px;width:35px;top:-6px;left:10px}.hl-cloud-1{top:10%;left:15%;animation:hlCloudDrift 25s linear infinite}.hl-cloud-2{top:18%;left:55%;width:40px;animation:hlCloudDrift 30s linear infinite reverse}.hl-cloud-3{top:6%;left:75%;width:60px;animation:hlCloudDrift 20s linear infinite}@keyframes hlCloudDrift{0%{transform:translate(0)}to{transform:translate(-80px)}}.hl-crowd{position:absolute;top:25%;left:0;right:0;height:15%;background:repeating-linear-gradient(90deg,#e91e6366 0px 8px,#2196f366 8px 16px,#ffc10766 16px 24px,#4caf5066 24px 32px);z-index:1;border-top:2px solid rgba(255,255,255,.1);border-bottom:2px solid rgba(255,255,255,.15)}.hl-track{position:absolute;inset:40% 0 0;background:linear-gradient(180deg,#c62828,#b71c1c,#8e0000);z-index:2}.hl-lane-lines{position:absolute;inset:0;z-index:1}.hl-lane-line{position:absolute;left:0;right:0;height:3px;background:#ffffff40}.hl-lane-top{top:15%}.hl-lane-bot{bottom:15%}.hl-runner{position:absolute;left:8%;top:50%;transform:translateY(-50%);font-size:42px;z-index:10;transition:none;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.4))}.hl-runner.hl-jumping{animation:hlJumpAnim .45s ease-out}@keyframes hlJumpAnim{0%{transform:translateY(-50%)}30%{transform:translateY(-155%)}55%{transform:translateY(-145%)}to{transform:translateY(-50%)}}.hl-runner.hl-stumble{animation:hlStumbleAnim .5s ease-out}@keyframes hlStumbleAnim{0%{transform:translateY(-50%) rotate(0)}30%{transform:translateY(-80%) rotate(-15deg)}60%{transform:translateY(-40%) rotate(10deg)}to{transform:translateY(-50%) rotate(0)}}.hl-runner.hl-crash-anim{animation:hlCrashAnim .6s ease-out forwards}@keyframes hlCrashAnim{0%{transform:translateY(-50%) rotate(0)}30%{transform:translateY(-30%) rotate(-25deg)}60%{transform:translateY(-20%) rotate(15deg) scale(.9)}to{transform:translateY(-30%) rotate(-5deg) scale(.95)}}.hl-hurdle{position:absolute;top:38%;width:6px;height:28%;z-index:5;transition:none}.hl-hurdle-post-l,.hl-hurdle-post-r{position:absolute;bottom:0;width:2px;height:100%;background:linear-gradient(180deg,#fff,#ccc);border-radius:1px}.hl-hurdle-post-l{left:0}.hl-hurdle-post-r{right:0}.hl-hurdle-bar-top{position:absolute;top:0;left:-2px;right:-2px;height:4px;background:linear-gradient(180deg,#e53935,#fff);border-radius:2px;box-shadow:0 1px 3px #0000004d}.hl-hurdle.hl-hurdle-cleared .hl-hurdle-bar-top{background:linear-gradient(180deg,#43a047,#a5d6a7)}.hl-hurdle.hl-hurdle-hit{animation:hlHurdleKnock .4s ease-out forwards}@keyframes hlHurdleKnock{0%{transform:rotate(0)}to{transform:rotate(35deg) translateY(10px);opacity:.5}}.hl-jump-marker{position:absolute;top:62%;width:40px;height:6px;background:linear-gradient(90deg,transparent,rgba(67,160,71,.6),rgba(67,160,71,.8),rgba(67,160,71,.6),transparent);border-radius:3px;z-index:4;box-shadow:0 0 8px #43a0474d}.hl-jump-marker:before{content:"\25b2";position:absolute;top:-14px;left:50%;transform:translate(-50%);font-size:10px;color:#43a047b3}.hl-finish{position:absolute;top:10%;width:6px;bottom:10%;background:repeating-linear-gradient(180deg,#000 0px 5px,#fff 5px 10px);z-index:4;border-radius:2px;display:none}.hl-hud{position:absolute;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;z-index:20;pointer-events:none}.hl-hud-item{display:flex;flex-direction:column;align-items:center;background:#0000008c;backdrop-filter:blur(4px);padding:4px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.hl-hud-val{font-size:18px;font-weight:900;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 1px 3px rgba(0,0,0,.5)}.hl-hud-lbl{font-size:9px;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px}#hl-penalty{color:#ff9800}.hl-timing-hint{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:25;background:#43a047e6;color:#fff;font-weight:800;font-size:14px;padding:6px 18px;border-radius:20px;animation:hlHintPulse .4s ease-in-out infinite alternate;box-shadow:0 2px 12px #43a04780}@keyframes hlHintPulse{0%{transform:translate(-50%) scale(1)}to{transform:translate(-50%) scale(1.08)}}.hl-result{padding:20px 16px;text-align:center;background:var(--bg-card)}.hl-result-title{font-size:20px;font-weight:800;margin-bottom:4px;color:var(--text)}.hl-result-saved{font-size:12px;color:#43a047;font-weight:600;margin-bottom:12px}.hl-result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;margin-bottom:16px}.hl-action-btn{padding:16px;text-align:center;font-size:20px;font-weight:800;color:#fff;background:linear-gradient(135deg,#43a047,#2e7d32);animation:sprintPulse .5s ease-in-out infinite;letter-spacing:1px;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}.hl-action-btn.hl-action-wait{background:linear-gradient(135deg,#616161,#424242);animation:none;opacity:.7}.hl-action-btn.hl-action-react{background:linear-gradient(135deg,#ff9800,#e65100);animation:hlReactPulse .3s ease-in-out infinite alternate;opacity:1}@keyframes hlReactPulse{0%{transform:scale(1)}to{transform:scale(1.03)}}.hl-false-start-banner{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#e53935e6;color:#fff;font-size:22px;font-weight:900;text-align:center}.hl-false-start-banner .hl-fs-sub{font-size:14px;font-weight:600;margin-top:6px;opacity:.85}.hl-confetti-container{position:absolute;inset:0;z-index:50;pointer-events:none;overflow:hidden}.hl-confetti-piece{position:absolute;top:-10px;border-radius:2px;animation:hlConfettiFall 2s ease-in forwards}@keyframes hlConfettiFall{0%{transform:translateY(0) translate(0) rotate(0);opacity:1}to{transform:translateY(320px) translate(var(--hlcx)) rotate(var(--hlcr));opacity:0}}.hl-doping-tracker{padding:8px 16px;background:var(--bg-card);border-top:1px solid var(--border)}#community-game-container,#sprint-game-container,#wj-game-container,#hj-game-container,#sw-game-container,#hl-game-container{position:relative}.game-fs-btn{position:absolute;top:10px;right:10px;z-index:60;width:36px;height:36px;border-radius:50%;background:#000000b3;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;line-height:1;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:background .2s,transform .15s;-webkit-tap-highlight-color:transparent}.game-fs-btn:active{transform:scale(.9)}.game-fs-btn svg{width:18px;height:18px;stroke-width:2.5}.game-fs-close{display:none;position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);right:10px;z-index:10000;width:40px;height:40px;border-radius:50%;background:#000000bf;border:none;color:#fff;font-size:24px;font-weight:700;line-height:1;cursor:pointer;align-items:center;justify-content:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);-webkit-tap-highlight-color:transparent}.game-fullscreen{position:fixed!important;z-index:9999!important;inset:0 auto 0 50%!important;transform:translate(-50%)!important;width:100%!important;max-width:600px!important;display:flex!important;flex-direction:column!important;background:var(--bg-body, #F5F5F7)!important;height:100dvh!important;overflow-y:auto!important;padding:0}.game-fullscreen .game-fs-btn{display:none}.game-fullscreen .game-fs-close{display:flex}.game-fullscreen>.sprint-game,.game-fullscreen>.wj-game,.game-fullscreen>.hj-game,.game-fullscreen>.sw-game,.game-fullscreen>.hl-game,.game-fullscreen>#rt-game-community{flex:1;display:flex;flex-direction:column;overflow-y:auto}.game-fullscreen .wj-viewport,.game-fullscreen .hj-viewport,.game-fullscreen .sw-viewport{height:calc(100dvh - 200px)!important;flex-shrink:0}.game-fullscreen .hl-viewport{height:calc(100dvh - 180px)!important;flex-shrink:0}.game-fullscreen .sprint-track{min-height:calc(100dvh - 320px)!important}.game-fullscreen .rt-scene{min-height:calc(100dvh - 160px)!important}.game-fullscreen .sprint-runner{font-size:52px!important;top:16px!important}.game-fullscreen .wj-athlete-static{font-size:60px!important;width:75px!important}.game-fullscreen .wj-runner-marker{font-size:48px!important}.game-fullscreen .hj-athlete{font-size:60px!important}.game-fullscreen .hj-height-display{font-size:40px!important}.game-fullscreen .sw-thrower{font-size:60px!important}.game-fullscreen .sw-spear-flying{font-size:44px!important}.game-fullscreen .hl-runner{font-size:66px!important}.game-fullscreen .sprint-progress-bar{height:12px!important}.game-fullscreen .sprint-distance-markers{font-size:14px!important;padding-top:60px!important}.game-fullscreen .hj-upright-left,.game-fullscreen .hj-upright-right{width:8px!important}.game-fullscreen .hj-bar{height:6px!important}.game-fullscreen .hj-mat{height:50px!important}.game-fullscreen .hl-hurdle{width:8px!important}.game-fullscreen .hl-hurdle-bar-top{height:6px!important}.game-fullscreen .hl-finish{width:8px!important}.game-fullscreen .hl-lane-line{height:4px!important}.game-fullscreen .hl-cloud{height:24px!important;width:70px!important}.game-fullscreen .hl-hud-val{font-size:22px!important}.game-fullscreen .sw-throw-line{width:6px!important}.game-fullscreen .wj-board-v2{width:90px!important}.game-fullscreen .wj-board-white-v2{width:66px!important}.game-fullscreen .wj-board-black-v2{width:24px!important}.game-fullscreen .wj-landing-mark{font-size:26px!important}.game-fullscreen .wj-power-track,.game-fullscreen .hj-power-track,.game-fullscreen .sw-power-track,.game-fullscreen .sw-angle-track{height:24px!important}.game-fullscreen .wj-power-cursor,.game-fullscreen .hj-power-cursor,.game-fullscreen .sw-power-cursor,.game-fullscreen .sw-angle-cursor{height:32px!important}.game-fullscreen .sprint-tap-zone{min-height:200px!important}.game-fullscreen .sprint-tap-text{font-size:22px!important}.game-fullscreen .sprint-timer{font-size:36px!important}.game-fullscreen .rt-start-btn,.game-fullscreen .wj-start-btn,.game-fullscreen .wj-action-btn,.game-fullscreen .hj-action-btn,.game-fullscreen .sw-action-btn,.game-fullscreen .hl-action-btn{font-size:18px!important;padding:18px 32px!important}.game-fullscreen .rt-light{width:30px!important;height:30px!important}.game-fullscreen .rt-phase-text{font-size:28px!important}.game-fullscreen .rt-result-time{font-size:72px!important}.game-fullscreen .rt-lane{min-height:70px!important}.game-fullscreen .rt-lane-sprinter svg{height:50px!important;width:60px!important}.game-fullscreen .rt-lane-name{font-size:14px!important}.game-fullscreen .rt-lane-time{font-size:16px!important}.game-fullscreen .community-leaderboard{display:none!important}.aie-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 2px}.aie-topbar-title{font-size:15px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.aie-topbar-back{width:32px;height:32px;border:none;border-radius:50%;background:var(--bg-elevated);color:var(--text-secondary);font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent}.aie-topbar-back:active{transform:scale(.9)}.aie-toggle-compact{padding:10px 14px!important}.aie-toggle-btn{display:flex;align-items:center;gap:12px;width:100%;padding:4px 0;border:none;background:transparent;cursor:pointer;text-align:left;color:var(--text);-webkit-tap-highlight-color:transparent}.aie-toggle-icon{font-size:24px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--primary)}.aie-toggle-icon svg{width:24px;height:24px}.aie-toggle-text{display:flex;flex-direction:column;gap:1px;flex:1}.aie-toggle-text strong{font-size:14px;font-weight:800;letter-spacing:-.02em}.aie-toggle-text small{font-size:11px;color:var(--text-secondary)}.aie-toggle-arrow{font-size:18px;color:var(--text-tertiary);font-weight:700}.aie-back-btn{display:block;width:100%;padding:14px;margin-top:8px;border:none;border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;text-align:center;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.aie-back-btn:active{transform:scale(.98)}.aie-card{margin-bottom:12px}.aie-subtitle{font-size:12px;color:var(--text-secondary);margin-bottom:14px}.aie-empty-text{font-size:13px;color:var(--text-tertiary);text-align:center;padding:20px 16px;line-height:1.6}.aie-sliders{display:flex;flex-direction:column;gap:14px}.aie-slider-row{display:grid;grid-template-columns:120px 1fr 28px;align-items:center;gap:10px}.aie-slider-row label{font-size:13px;font-weight:600;color:var(--text)}.aie-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--bg-elevated);outline:none}.aie-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--primary);cursor:pointer;box-shadow:0 1px 4px #00000026}.aie-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--primary);border:none;cursor:pointer;box-shadow:0 1px 4px #00000026}.aie-range-val{font-size:14px;font-weight:700;color:var(--primary);text-align:center;min-width:20px}.aie-save-btn{display:block;width:100%;margin-top:16px;padding:14px;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:15px;font-weight:700;cursor:pointer;box-shadow:var(--shadow-glow);transition:all var(--transition-fast)}.aie-save-btn:active{transform:scale(.97);opacity:.9}.aie-score-display{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.aie-score-ring{position:relative;width:110px;height:110px}.aie-score-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.aie-ring-bg{fill:none;stroke:var(--bg-elevated);stroke-width:8}.aie-ring-fg{fill:none;stroke:var(--primary);stroke-width:8;stroke-linecap:round;stroke-dasharray:326.73;stroke-dashoffset:326.73;transition:stroke-dashoffset .8s ease,stroke .4s ease}.aie-score-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:900;color:var(--text);letter-spacing:-.03em}.aie-score-label{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.aie-load-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.aie-load-stat{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:14px;text-align:center}.aie-load-stat .aie-stat-val{font-size:24px;font-weight:900;color:var(--text);display:block}.aie-load-stat .aie-stat-label{font-size:11px;color:var(--text-secondary);margin-top:2px;display:block}.aie-trend-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:700}.aie-trend-up{background:#ff95001f;color:#e68a00}.aie-trend-stable{background:#34c7591f;color:#28a745}.aie-trend-down{background:#007aff1f;color:#007aff}.aie-insights-list{display:flex;flex-direction:column;gap:10px}.aie-insight-item{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-sm);background:var(--bg-elevated);font-size:13px;line-height:1.5;color:var(--text)}.aie-insight-icon{font-size:18px;flex-shrink:0;margin-top:1px}.aie-insight-text{flex:1}.aie-recap-text{font-size:14px;line-height:1.7;color:var(--text);padding:4px 0}.aie-progress-feed{display:flex;flex-direction:column;gap:10px}.aie-progress-card{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:var(--radius-sm);background:var(--bg-elevated)}.aie-progress-icon{font-size:22px;flex-shrink:0}.aie-progress-body{flex:1}.aie-progress-title{font-size:13px;font-weight:700;color:var(--text)}.aie-progress-desc{font-size:12px;color:var(--text-secondary);margin-top:2px}@media (max-width:374px){.form-row{gap:6px}.custom-date-trigger,.custom-time-trigger{padding:9px 10px;gap:6px;font-size:11px}.cdt-icon,.ctt-icon{width:16px;height:16px}.kraft-chip{font-size:11px;padding:3px 8px}.kraft-chip .kraft-chip-detail{font-size:10px}}.race-pred-card{padding:18px;margin-bottom:16px;background:linear-gradient(135deg,#c8102e0a,#007aff0a);border:1px solid rgba(200,16,46,.12)}.race-pred-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.race-pred-info h3{margin:0 0 2px;font-size:16px;font-weight:700;color:var(--text)}.race-pred-subtitle{font-size:12px;color:var(--text-secondary)}.race-pred-conf{display:flex;flex-direction:column;align-items:flex-end;padding:8px 12px;border-radius:10px;background:#c8102e14}.race-pred-conf-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.race-pred-conf-val{font-size:16px;font-weight:700;color:var(--text);margin-top:2px}.race-pred-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.race-pred-tile{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:12px 10px;text-align:center;box-shadow:0 1px 2px #00000008}.race-pred-tile-dist{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.race-pred-tile-time{font-size:22px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.race-pred-tile-meta{font-size:10px;color:var(--text-muted);margin-top:3px}.race-pred-tile.race-pred-measured{background:linear-gradient(135deg,#34d39914,#34d39905);border-color:#34d39933}.race-pred-tile.race-pred-measured .race-pred-tile-time{color:#0a8c5e}.race-pred-tile-time--range{font-size:17px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;display:flex;align-items:baseline;justify-content:center;gap:2px;flex-wrap:wrap}.race-pred-range-sep{font-size:14px;color:var(--text-muted);margin:0 2px;font-weight:500}.race-pred-tile-range{font-size:10px;color:var(--text-muted);margin-top:2px;font-variant-numeric:tabular-nums}.race-pred-tile-best{font-size:12px;font-weight:700;color:#0a8c5e;margin-top:4px;font-variant-numeric:tabular-nums}.race-pred-tile-best-n{font-size:10px;font-weight:500;color:var(--text-muted)}.race-pred-empty{grid-column:1/-1;text-align:center;padding:18px 8px;color:var(--text-secondary);font-size:13px}.race-pred-chart-wrap{margin-top:14px;height:200px;position:relative}.race-pred-foot{margin-top:10px;padding-top:10px;border-top:1px solid rgba(0,0,0,.05)}.race-pred-hint{font-size:11px;color:var(--text-muted)}.race-factors-grid{display:flex;flex-direction:column;gap:8px;margin-top:10px}.race-factor-row{display:grid;grid-template-columns:1fr 80px 24px;align-items:center;gap:10px;padding:10px 12px;background:#00000005;border-radius:10px}.race-factor-label{font-size:13px;font-weight:600;color:var(--text)}.race-factor-input{width:100%;padding:6px 8px;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:14px;font-weight:600;text-align:center;background:#fff;color:var(--text);font-variant-numeric:tabular-nums}.race-factor-input:disabled{background:#0000000a;color:var(--text-secondary)}.race-factor-suffix{font-size:12px;color:var(--text-secondary);text-align:left}.race-factors-status{margin-top:10px;font-size:12px;color:var(--text-secondary);min-height:16px}.race-factors-status.success{color:#0a8c5e}.race-factors-status.error{color:#c8102e}.pb-celebrate-modal{max-width:380px;text-align:center;padding:24px 20px 18px;position:relative;overflow:hidden}.pb-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}.pb-confetti span{position:absolute;top:-20px;width:8px;height:14px;opacity:.95;animation:pb-confetti-fall linear forwards}@keyframes pb-confetti-fall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(560px) rotate(720deg);opacity:0}}.pb-close{position:absolute;top:10px;right:10px;z-index:3;width:30px;height:30px;border-radius:15px;background:#0000000d;color:var(--text-secondary);border:none;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.pb-close:hover{background:#0000001a}.pb-celebrate-header{position:relative;z-index:2}.pb-celebrate-emoji{font-size:54px;line-height:1;animation:pb-emoji-pop .6s cubic-bezier(.34,1.56,.64,1) both}@keyframes pb-emoji-pop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.pb-celebrate-title{margin:6px 0 4px;font-size:20px;font-weight:700;background:linear-gradient(90deg,#c8102e,#fb923c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.pb-celebrate-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:4px}.pb-celebrate-actions{display:flex;gap:8px;margin-top:8px;position:relative;z-index:2}.pb-celebrate-actions button{flex:1}.pb-celebrate-foot{margin-top:10px;position:relative;z-index:2}.pb-skip-btn{background:transparent;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;padding:6px 12px}.pb-skip-btn:hover{color:var(--text-secondary)}.aie-risk-summary{padding:12px 14px;border-radius:12px;margin-bottom:14px}.aie-risk-ok{background:linear-gradient(135deg,#34c7591a,#34c7590a);border:1px solid rgba(52,199,89,.25)}.aie-risk-med{background:linear-gradient(135deg,#ff95001a,#ff95000a);border:1px solid rgba(255,149,0,.3)}.aie-risk-high{background:linear-gradient(135deg,#ff3b301f,#ff3b300d);border:1px solid rgba(255,59,48,.35)}.aie-risk-meter{height:8px;background:#0000000f;border-radius:4px;overflow:hidden;margin-bottom:8px}.aie-risk-bar{height:100%;border-radius:4px;transition:width .5s ease;background:linear-gradient(90deg,#34c759,#ff9500,#ff3b30)}.aie-risk-head{display:flex;justify-content:space-between;align-items:center}.aie-risk-level{font-size:18px;font-weight:700;color:var(--text-primary)}.aie-risk-score{font-size:14px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.aie-risk-factors{display:flex;flex-direction:column;gap:8px}.aie-risk-factor{display:flex;gap:10px;padding:10px 12px;border-radius:10px;background:#00000006;border-left:3px solid #C7C7CC}.aie-risk-factor.aie-risk-ok{border-left-color:#34c759}.aie-risk-factor.aie-risk-med{border-left-color:#ff9500;background:#ff95000d}.aie-risk-factor.aie-risk-high{border-left-color:#ff3b30;background:#ff3b300d}.aie-risk-icon{font-size:20px;line-height:1.2;flex-shrink:0}.aie-risk-body{flex:1;min-width:0}.aie-risk-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:2px}.aie-risk-label{font-size:13px;font-weight:600;color:var(--text-primary)}.aie-risk-val{font-size:12px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.aie-risk-desc{font-size:12px;color:var(--text-secondary);line-height:1.35}.aie-risk-recs{margin-top:14px;padding:12px;background:#007aff0f;border-radius:10px;border-left:3px solid #007AFF}.aie-risk-recs-title{font-size:13px;font-weight:600;margin-bottom:6px;color:var(--text-primary)}.aie-risk-recs ul{margin:0;padding-left:18px}.aie-risk-recs li{font-size:12.5px;line-height:1.4;color:var(--text-secondary);margin-bottom:3px}.aie-timeline-toggle{display:flex;gap:4px}.aie-tl-btn{background:#0000000d;border:none;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:600;color:var(--text-secondary);cursor:pointer}.aie-tl-btn.active{background:#007aff;color:#fff}.aie-timeline-chart-wrap{position:relative;height:240px;margin-bottom:10px}.aie-timeline-legend{display:flex;flex-wrap:wrap;gap:14px;padding:6px 0 12px;border-bottom:1px solid rgba(0,0,0,.05);margin-bottom:10px}.aie-tl-leg-group{display:flex;flex-wrap:wrap;gap:10px}.aie-tl-leg-item{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary)}.aie-tl-leg-dot{width:10px;height:10px;border-radius:3px;display:inline-block}.aie-tl-leg-line{width:18px;height:3px;border-radius:2px;display:inline-block}.aie-tl-leg-line-dash{background-image:linear-gradient(90deg,currentColor 50%,transparent 50%);background-size:6px 100%}.aie-timeline-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto}.aie-tl-day{padding:10px 12px;background:#00000006;border-radius:10px}.aie-tl-day-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.aie-tl-day-date{font-size:13px;font-weight:600;color:var(--text-primary)}.aie-tl-day-score{font-size:11px;color:var(--text-secondary);background:#007aff1a;padding:2px 8px;border-radius:10px}.aie-tl-day-entries{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.aie-tl-entry{display:flex;gap:6px;align-items:center;font-size:12px;flex-wrap:wrap}.aie-tl-entry-tag{font-size:10px;font-weight:700;color:#fff;padding:2px 7px;border-radius:6px}.aie-tl-entry-type{color:var(--text-primary);flex:1;min-width:0}.aie-tl-entry-meta{font-size:11px;color:var(--text-secondary);background:#0000000a;padding:1px 6px;border-radius:5px}.aie-tl-day-read{display:flex;flex-wrap:wrap;gap:10px;padding-top:6px;border-top:1px solid rgba(0,0,0,.05);font-size:11.5px;color:var(--text-secondary)}.tcm-breakdown{display:flex;flex-direction:column;gap:6px;padding:12px;background:#00000006;border-radius:10px;margin-bottom:14px}.tcm-bd-row{display:flex;align-items:center;gap:10px;font-size:13px}.tcm-bd-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.tcm-bd-label{flex:1;color:var(--text-primary)}.tcm-bd-count{color:var(--text-secondary);font-size:12px;font-variant-numeric:tabular-nums}.tcm-entries-title{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;padding:0 4px}.tcm-entries{display:flex;flex-direction:column;gap:8px}.tcm-entry{display:flex;gap:10px;padding:10px 12px;background:#00000006;border-radius:10px}.tcm-entry-tag{font-size:10px;font-weight:700;color:#fff;padding:3px 8px;border-radius:6px;height:fit-content;white-space:nowrap;flex-shrink:0}.tcm-entry-body{flex:1;min-width:0}.tcm-entry-date{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:3px}.tcm-entry-meta{font-size:12px;color:var(--text-secondary);line-height:1.4;word-break:break-word}.tcm-more{text-align:center;font-size:11px;color:var(--text-muted);padding:6px}.coach-group-info{display:flex;flex-direction:column;gap:8px}.coach-group-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:6px 0;border-bottom:1px solid var(--border)}.coach-group-row:last-of-type{border-bottom:none}.coach-group-label{color:var(--text-secondary);font-weight:500}.coach-group-val{color:var(--text-primary);font-weight:600}.coach-group-invite{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.coach-group-code-row{display:flex;align-items:center;gap:8px;margin-top:6px}.coach-group-code-row code{flex:1;font-family:SF Mono,Menlo,monospace;font-size:16px;font-weight:700;letter-spacing:1px;padding:8px 12px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;color:var(--primary);text-align:center}.btn-icon{padding:8px!important;min-width:36px}.coach-group-empty{padding:4px 0}.login-divider{display:flex;align-items:center;gap:10px;margin:16px 0 12px;color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:1px}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.btn-coach-register{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:11px;border:1.5px dashed var(--border);border-radius:10px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.btn-coach-register:hover{border-color:var(--primary);color:var(--primary);background:var(--bg-elevated)}.modal-coach-register{max-width:420px;width:calc(100% - 32px);padding:24px;max-height:90vh;overflow-y:auto}.modal-coach-register .modal-header{margin-bottom:18px}.modal-coach-register .form-group{margin-bottom:14px}.modal-coach-register .form-hint{font-size:11px;color:var(--text-muted);margin:4px 0 0}.modal-coach-register input[type=text],.modal-coach-register input[type=password]{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);color:var(--text-primary)}.modal-coach-register input:focus{outline:none;border-color:var(--primary)}.modal-coach-register .btn-primary{width:100%;margin-top:4px}.modal-coach-register .checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.login-code-row{position:relative;display:flex;align-items:center}.login-code-row #login-code{flex:1;padding-right:38px}.login-code-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;width:28px;height:28px;border-radius:50%;color:#888;font-size:20px;line-height:1;display:none;align-items:center;justify-content:center;transition:background .15s,color .15s}.login-code-clear:hover{background:#0000000f;color:var(--primary)}.login-code-row:has(#login-code:not(:placeholder-shown)) .login-code-clear{display:flex}.login-coach-cta{text-align:center;margin:22px auto 0;max-width:360px;font-size:13px;color:var(--text-secondary);line-height:1.55;padding:0 16px}.login-coach-cta a{color:var(--primary);font-weight:600;text-decoration:none;margin-left:4px;white-space:nowrap;transition:color .15s}.login-coach-cta a:hover{color:var(--primary-dark);text-decoration:underline}.invite-overlay{position:fixed;inset:0;z-index:10000;background:#0b0b0d8c;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);display:flex;align-items:center;justify-content:center;padding:20px;animation:inviteOverlayFade .25s ease}@keyframes inviteOverlayFade{0%{opacity:0}to{opacity:1}}.invite-card{background:#fff;border-radius:var(--radius-lg, 22px);padding:36px 28px 24px;max-width:420px;width:100%;text-align:center;box-shadow:0 24px 80px #00000040,0 4px 16px #00000014;animation:inviteCardPop .32s cubic-bezier(.34,1.56,.64,1)}@keyframes inviteCardPop{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.invite-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--primary, #C8102E),var(--primary-light, #E63946));color:#fff;display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 8px 24px #c8102e47}.invite-card h2{font-size:22px;font-weight:800;color:var(--text, #1D1D1F);margin:0 0 8px;letter-spacing:-.02em}.invite-sub{font-size:14px;color:var(--text-secondary, #6E6E73);line-height:1.5;margin:0 0 20px;padding:0 4px}.invite-sub b{color:var(--text, #1D1D1F);font-weight:700}#invite-code-input{width:100%;box-sizing:border-box;padding:16px 18px;font-size:22px;font-weight:700;text-align:center;letter-spacing:.18em;text-transform:uppercase;font-family:SF Mono,Roboto Mono,Menlo,Consolas,monospace;background:var(--bg-body, #F5F5F7);border:2px solid transparent;border-radius:14px;color:var(--text, #1D1D1F);outline:none;transition:all .15s}#invite-code-input:focus{border-color:var(--primary, #C8102E);background:#fff;box-shadow:0 0 0 4px #c8102e1a}#invite-code-input::placeholder{color:#c7c7cc;letter-spacing:.08em;font-weight:500}.invite-error{margin:10px 0 0;padding:10px 14px;background:#ff3b301a;border-radius:10px;color:#ff3b30;font-size:13px;font-weight:600;text-align:left}.invite-card .btn-primary{width:100%;margin-top:16px;padding:14px;font-size:15px}.invite-skip{display:block;margin:14px auto 0;background:none;border:none;color:var(--text-secondary, #6E6E73);font-size:13px;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .15s;font-family:inherit}.invite-skip:hover{color:var(--text, #1D1D1F);background:var(--bg-body, #F5F5F7)}.invite-hint{margin:12px 0 0;font-size:11px;color:var(--text-muted, #8E8E93);line-height:1.4}.invite-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;margin-right:6px;vertical-align:-2px;animation:inviteSpin .7s linear infinite}@keyframes inviteSpin{to{transform:rotate(360deg)}}@media (max-width: 480px){.invite-card{padding:28px 20px 20px;border-radius:18px}.invite-card h2{font-size:20px}#invite-code-input{font-size:20px;padding:14px 16px}}.cg-section{padding:16px 0;border-top:1px solid var(--border, #E5E5EA)}.cg-section:first-child{border-top:none;padding-top:4px}.cg-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--text-secondary, #6E6E73);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}.cg-counter{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--bg-body, #F5F5F7);border-radius:10px;font-size:11px;font-weight:700;color:var(--text, #1D1D1F);letter-spacing:0}.cg-hint{margin:8px 0 0;font-size:11px;color:var(--text-muted, #8E8E93);line-height:1.4}.cg-name-row{display:flex;align-items:center;gap:8px}.cg-name-input{flex:1;padding:10px 14px;font-size:18px;font-weight:700;color:var(--text, #1D1D1F);background:var(--bg-body, #F5F5F7);border:2px solid transparent;border-radius:10px;outline:none;transition:all .15s}.cg-name-input:focus{border-color:var(--primary, #C8102E);background:#fff}.cg-save-btn{flex-shrink:0;width:36px;height:36px;background:var(--primary, #C8102E)!important;color:#fff!important;border-radius:10px!important}.cg-save-btn:hover:not(:disabled){transform:scale(1.05)}.cg-save-btn:disabled{opacity:.35;cursor:not-allowed;background:var(--text-muted, #8E8E93)!important}.cg-meta-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.cg-pill{display:inline-flex;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;border-radius:999px;letter-spacing:.04em}.cg-pill.plan-beta{background:#ff95001f;color:#ff9500}.cg-pill.plan-pro{background:linear-gradient(135deg,#c8102e,#e63946);color:#fff}.cg-pill.cg-pill-muted{background:var(--bg-body, #F5F5F7);color:var(--text-secondary, #6E6E73)}.cg-color-row{display:flex;align-items:center;gap:10px}#cg-color-input{width:44px;height:44px;padding:0;border:2px solid var(--border, #E5E5EA);border-radius:12px;background:transparent;cursor:pointer;flex-shrink:0}#cg-color-input::-webkit-color-swatch{border:none;border-radius:8px}#cg-color-input::-moz-color-swatch{border:none;border-radius:8px}.cg-color-hex{flex:1;padding:12px 14px;font-family:SF Mono,Roboto Mono,Menlo,Consolas,monospace;font-size:14px;font-weight:700;background:var(--bg-body, #F5F5F7);border-radius:10px;color:var(--text, #1D1D1F);letter-spacing:.05em}.cg-athletes{display:flex;flex-direction:column;gap:6px}.cg-athlete-row{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-body, #F5F5F7);border-radius:12px;transition:background .15s}.cg-athlete-row:hover{background:var(--bg-elevated, #EEEEF1)}.cg-athlete-avatar{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;text-transform:uppercase}.cg-athlete-name{flex:1;font-size:14px;font-weight:600;color:var(--text, #1D1D1F)}.cg-kick-btn{flex-shrink:0;width:28px;height:28px;background:transparent;border:none;color:var(--text-muted, #8E8E93);border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.cg-kick-btn:hover{background:#ff3b301f;color:#ff3b30}.cg-kick-btn:disabled{opacity:.4;cursor:not-allowed}.cg-empty{margin:0;padding:14px;text-align:center;font-size:13px;color:var(--text-muted, #8E8E93);background:var(--bg-body, #F5F5F7);border-radius:12px;border:1.5px dashed var(--border, #E5E5EA)}.cg-tag-list{display:flex;flex-wrap:wrap;gap:6px;min-height:8px;margin-bottom:8px}.cg-tag{display:inline-flex;align-items:center;gap:4px;padding:5px 6px 5px 12px;background:var(--bg-body, #F5F5F7);border-radius:999px;font-size:12px;font-weight:600;color:var(--text, #1D1D1F)}.cg-tag-remove{width:18px;height:18px;border:none;background:transparent;color:var(--text-muted, #8E8E93);border-radius:50%;cursor:pointer;font-size:16px;line-height:1;padding:0;transition:all .15s}.cg-tag-remove:hover{background:#ff3b301f;color:#ff3b30}.cg-add-row{display:flex;gap:6px}.cg-add-row input{flex:1;padding:9px 12px;font-size:13px;background:var(--bg-body, #F5F5F7);border:2px solid transparent;border-radius:10px;color:var(--text, #1D1D1F);outline:none;transition:all .15s}.cg-add-row input:focus{border-color:var(--primary, #C8102E);background:#fff}.cg-add-row .btn-ghost.btn-icon{width:36px;height:36px;background:var(--primary, #C8102E)!important;color:#fff!important;border-radius:10px!important}.login-code-group input#login-code{text-transform:uppercase;letter-spacing:.18em;font-family:SF Mono,Roboto Mono,Menlo,Consolas,monospace;font-weight:700;text-align:center}.login-code-group input#login-code::placeholder{letter-spacing:normal;text-transform:none;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,sans-serif;font-weight:500;font-size:14px;color:#c7c7cc}.login-code-status{margin:6px 2px 0;font-size:12px;font-weight:600;min-height:16px;text-align:center;transition:color .15s}.login-code-status--ok{color:#34c759}.login-code-status--error{color:#ff3b30}.login-code-status--muted{color:var(--text-muted, #8E8E93);font-weight:500}.cgt-section{padding-top:22px}.cgt-actions{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 18px}.cgt-action-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;font-size:13.5px;font-weight:600;border-radius:12px;line-height:1}.cgt-action-btn svg{width:14px;height:14px;flex-shrink:0}.cgt-empty{margin:0;padding:28px 20px;text-align:center;font-size:13.5px;color:var(--text-secondary, #6E6E73);background:linear-gradient(180deg,#00000004,#0000000a);border:1.5px dashed var(--border, #E5E5EA);border-radius:14px}.cgt-list{display:flex;flex-direction:column;gap:12px}.cgt-cat{background:var(--bg-card, #FFFFFF);border-radius:14px;overflow:hidden;border:1px solid var(--border, #E5E5EA);box-shadow:0 1px 3px #00000008}.cgt-cat-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-body, #F5F5F7);font-size:11px;font-weight:700;color:var(--text-secondary, #6E6E73);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border, #E5E5EA)}.cgt-cat-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--bg-card, #FFFFFF);border:1px solid var(--border, #E5E5EA);border-radius:10px;font-size:10.5px;color:var(--text, #1D1D1F)}.cgt-cat-items{display:flex;flex-direction:column}.cgt-item{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-card, #FFFFFF);border-bottom:1px solid var(--border, #E5E5EA);transition:background .15s}.cgt-item:last-child{border-bottom:none}.cgt-item:hover{background:#00000005}.cgt-item-main{flex:1;min-width:0}.cgt-item-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14.5px;font-weight:600;color:var(--text, #1D1D1F);margin-bottom:6px;line-height:1.2}.cgt-emoji{font-size:17px;line-height:1}.cgt-parent{margin-left:4px;padding:2px 8px;font-size:10.5px;font-weight:600;color:var(--text-secondary, #6E6E73);background:var(--bg-body, #F5F5F7);border-radius:6px}.cgt-item-fields{display:flex;flex-wrap:wrap;gap:5px}.cgt-field-pill{display:inline-flex;align-items:center;padding:3px 9px;background:#007aff1a;color:#007aff;border-radius:999px;font-size:11px;font-weight:600;line-height:1.4}.cgt-empty-fields{font-size:11.5px;color:var(--text-muted, #8E8E93);font-style:italic}.cgt-item-actions{display:flex;gap:4px;flex-shrink:0}.cgt-icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:9px;color:var(--text-secondary, #6E6E73);cursor:pointer;transition:all .15s;padding:0}.cgt-icon-btn:hover{background:var(--bg-body, #F5F5F7);color:var(--text, #1D1D1F);border-color:var(--border, #E5E5EA)}.cgt-icon-btn.cgt-delete:hover{background:#ff3b301a;color:#ff3b30;border-color:#ff3b3033}.cgt-modal-overlay{position:fixed;inset:0;background:#0f0f148c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100000;padding:20px;animation:cgtFadeIn .18s ease-out}@keyframes cgtFadeIn{0%{opacity:0}to{opacity:1}}.cgt-modal{background:var(--bg-card, #FFFFFF);border-radius:20px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 30px 80px #00000059;animation:cgtScaleIn .2s cubic-bezier(.16,1,.3,1);overflow:hidden}@keyframes cgtScaleIn{0%{transform:translateY(12px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.cgt-modal-lg{max-width:760px}.cgt-modal-md{max-width:540px}.cgt-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 16px;border-bottom:1px solid var(--border, #E5E5EA)}.cgt-modal-header h3{margin:0 0 4px;font-size:18px;font-weight:700;color:var(--text, #1D1D1F);letter-spacing:-.01em}.cgt-modal-sub{margin:0;font-size:12.5px;color:var(--text-secondary, #6E6E73);line-height:1.5}.cgt-modal-close{width:34px;height:34px;background:var(--bg-body, #F5F5F7);border:none;border-radius:10px;color:var(--text-secondary, #6E6E73);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.cgt-modal-close:hover{background:var(--border, #E5E5EA);color:var(--text, #1D1D1F)}.cgt-modal-body{padding:18px 24px;overflow-y:auto;flex:1}.cgt-modal-hint{margin:0 0 16px;font-size:12.5px;color:var(--text-secondary, #6E6E73);line-height:1.5}.cgt-modal-footer{display:flex;gap:10px;align-items:center;padding:14px 24px 20px;border-top:1px solid var(--border, #E5E5EA);justify-content:flex-end;background:var(--bg-card, #FFFFFF)}.cgt-modal-footer .btn-ghost.cgt-danger{color:#ff3b30;margin-right:auto}.cgt-cat-counter{margin-right:auto;font-size:12.5px;font-weight:600;color:var(--text-secondary, #6E6E73)}.cgt-modal-footer .btn-primary,.cgt-modal-footer .btn-ghost{padding:10px 18px;font-size:13.5px;font-weight:600;border-radius:11px}.cgt-modal-footer .btn-primary:disabled{opacity:.4;cursor:not-allowed}.cgt-mc-cat{margin-bottom:22px}.cgt-mc-cat:last-child{margin-bottom:0}.cgt-mc-cat-title{margin:0 0 10px;font-size:11px;font-weight:700;color:var(--text-secondary, #6E6E73);text-transform:uppercase;letter-spacing:.08em}.cgt-mc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.cgt-mc-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:14px;background:var(--bg-card, #FFFFFF);border:1.5px solid var(--border, #E5E5EA);border-radius:14px;cursor:pointer;transition:all .18s;user-select:none}.cgt-mc-card:hover:not(.is-existing){border-color:#c8102e59;box-shadow:0 4px 14px #c8102e14;transform:translateY(-1px)}.cgt-mc-card.is-selected{border-color:var(--primary, #C8102E);background:linear-gradient(180deg,#c8102e0a,#c8102e05);box-shadow:0 4px 16px #c8102e1f}.cgt-mc-card.is-existing{opacity:.55;cursor:default;background:var(--bg-body, #F5F5F7)}.cgt-mc-head{display:flex;align-items:center;gap:10px}.cgt-mc-avatar{width:36px;height:36px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-body, #F5F5F7);border-radius:10px;font-size:15px;font-weight:700;color:var(--text, #1D1D1F)}.cgt-mc-avatar[data-cat=Sprint]{background:#ff3b301f;color:#ff3b30}.cgt-mc-avatar[data-cat=Lauf]{background:#ff95001f;color:#ff9500}.cgt-mc-avatar[data-cat=H\c3\bcrden]{background:#af52de1f;color:#af52de}.cgt-mc-avatar[data-cat=Sprung]{background:#5ac8fa26;color:#0a84bf}.cgt-mc-avatar[data-cat=Wurf]{background:#34c75921;color:#248a3d}.cgt-mc-avatar[data-cat=Mehrkampf]{background:#c8102e1a;color:#c8102e}.cgt-mc-avatar[data-cat=Kraft]{background:#1d1d1f14;color:#1d1d1f}.cgt-mc-avatar[data-cat=Technik]{background:#5856d61f;color:#5856d6}.cgt-mc-avatar[data-cat=Athletik]{background:#007aff1f;color:#007aff}.cgt-mc-avatar[data-cat=Regeneration]{background:#a2845e21;color:#8b6f4e}.cgt-mc-avatar[data-cat=Koordination]{background:#30d15821;color:#248a3d}.cgt-mc-avatar[data-cat=Stabilit\c3\a4t]{background:#64d2ff26;color:#0a84bf}.cgt-mc-title{flex:1;min-width:0}.cgt-mc-card-name{font-size:14px;font-weight:600;color:var(--text, #1D1D1F);line-height:1.2;margin-bottom:2px}.cgt-mc-card-cat{font-size:10.5px;font-weight:600;color:var(--text-muted, #8E8E93);text-transform:uppercase;letter-spacing:.05em}.cgt-mc-mark{width:22px;height:22px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-body, #F5F5F7);border:1.5px solid var(--border, #E5E5EA);border-radius:50%;color:transparent;transition:all .15s}.cgt-mc-card.is-selected .cgt-mc-mark{background:var(--primary, #C8102E);border-color:var(--primary, #C8102E);color:#fff}.cgt-mc-card.is-existing .cgt-mc-mark{background:#34c759;border-color:#34c759;color:#fff}.cgt-mc-existing-row{margin-top:2px;padding:6px 10px;background:#34c7591a;color:#248a3d;border-radius:8px;font-size:11.5px;font-weight:600;text-align:center}.cgt-mc-chips{display:flex;flex-wrap:wrap;gap:4px;border-top:1px dashed var(--border, #E5E5EA);padding-top:10px}.cgt-mc-chip{padding:5px 10px;background:var(--bg-body, #F5F5F7);color:var(--text-secondary, #6E6E73);border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:600;cursor:pointer;transition:all .13s;line-height:1.2;-webkit-appearance:none;appearance:none;font-family:inherit}.cgt-mc-chip:hover:not(:disabled){background:#007aff14;color:#007aff}.cgt-mc-chip.is-active{background:#007aff1f;color:#007aff;border-color:#007aff40}.cgt-mc-chip:disabled{opacity:.5;cursor:not-allowed}.cgt-form-group{margin-bottom:16px}.cgt-form-row{display:flex;gap:12px}.cgt-form-row .cgt-flex2{flex:2}.cgt-form-row .cgt-flex1{flex:1}.cgt-form-label{display:block;font-size:11.5px;font-weight:700;color:var(--text-secondary, #6E6E73);text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.cgt-modal .cgt-form-group input[type=text],.cgt-modal .cgt-form-group select{width:100%;padding:11px 13px;background:var(--bg-body, #F5F5F7);border:1.5px solid transparent;border-radius:11px;font-size:14px;color:var(--text, #1D1D1F);outline:none;box-shadow:none;-webkit-appearance:none;appearance:none;font-family:Inter,sans-serif;transition:all .15s}.cgt-modal .cgt-form-group input:focus,.cgt-modal .cgt-form-group select:focus{border-color:var(--primary, #C8102E);background:var(--bg-card, #FFFFFF);box-shadow:0 0 0 3px #c8102e1f}.cgt-modal .cgt-form-group input[readonly]{opacity:.65;cursor:not-allowed}.cgt-req{color:#ff3b30}.cgt-opt{font-size:11px;color:var(--text-muted, #8E8E93);font-weight:500;text-transform:none;letter-spacing:0}.cgt-hint-sm{margin:-2px 0 8px;font-size:11.5px;color:var(--text-muted, #8E8E93);line-height:1.45}.cgt-fields-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:7px;margin-top:4px}.cgt-field-row{position:relative;display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--bg-body, #F5F5F7);border:1.5px solid transparent;border-radius:10px;font-size:13px;font-weight:500;color:var(--text-secondary, #6E6E73);cursor:pointer;transition:all .13s;user-select:none}.cgt-field-row:hover{background:#007aff0d;color:var(--text, #1D1D1F)}.cgt-field-row:has(input:checked){background:#007aff1a;border-color:#007aff4d;color:#007aff;font-weight:600}.cgt-modal input[type=checkbox],.cgt-mc-card input[type=checkbox]{width:16px!important;height:16px!important;min-width:16px;padding:0!important;margin:0;border:1.5px solid var(--border, #E5E5EA);border-radius:4px;background:var(--bg-card, #FFFFFF)!important;box-shadow:none!important;accent-color:var(--primary, #C8102E);-webkit-appearance:auto;appearance:auto;cursor:pointer;flex-shrink:0}@media (max-width: 600px){.cgt-modal{max-height:96vh;border-radius:18px 18px 0 0;align-self:flex-end}.cgt-modal-overlay{align-items:flex-end;padding:0}.cgt-mc-grid{grid-template-columns:1fr}.cgt-form-row{flex-direction:column;gap:0}.cgt-modal-header{padding:18px 18px 12px}.cgt-modal-body{padding:16px 18px}.cgt-modal-footer{padding:12px 18px 16px}}.coach-analytics-toolbar{display:flex;flex-direction:column;gap:12px}.coach-analytics-picker{display:flex;flex-wrap:wrap;gap:8px}.analytics-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-color, #E5E5EA);background:var(--surface-color, #fff);border-radius:999px;font-size:13px;font-weight:500;color:var(--text-primary, #1d1d1f);cursor:pointer;transition:all .15s}.analytics-chip:hover{border-color:#c8102e}.analytics-chip .chip-dot{width:8px;height:8px;border-radius:50%;background:var(--border-color, #E5E5EA);transition:background .15s}.analytics-chip.active{background:#c8102e;color:#fff;border-color:#c8102e}.analytics-chip.active .chip-dot{background:#fff}.coach-analytics-actions{display:flex;gap:8px;flex-wrap:wrap}.coach-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-top:8px}.coach-stat-box{background:var(--bg-secondary, #F5F5F7);border-radius:12px;padding:14px 12px;text-align:center}.coach-stat-box .stat-value{font-size:22px;font-weight:700;color:var(--text-primary, #1d1d1f);font-variant-numeric:tabular-nums}.coach-stat-box .stat-label{font-size:11px;color:var(--text-secondary, #6E6E73);margin-top:2px;text-transform:uppercase;letter-spacing:.4px}.analytics-compare-table{width:100%;border-collapse:collapse;font-size:13px}.analytics-compare-table th,.analytics-compare-table td{padding:8px 10px;border-bottom:1px solid var(--border-color, #E5E5EA)}.analytics-compare-table th{font-weight:600;color:var(--text-secondary, #6E6E73);font-size:11px;text-transform:uppercase;letter-spacing:.4px}.analytics-compare-table .dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:middle}.coach-an-sprint-tabs{display:flex;gap:6px;margin:8px 0 12px;flex-wrap:wrap}.coach-an-sprint-tab{padding:5px 12px;border:1px solid var(--border-color, #E5E5EA);background:var(--surface-color, #fff);border-radius:999px;font-size:12px;font-weight:600;color:var(--text-secondary, #6E6E73);cursor:pointer;transition:all .15s;font-variant-numeric:tabular-nums}.coach-an-sprint-tab:hover{border-color:#c8102e;color:var(--text-primary, #1d1d1f)}.coach-an-sprint-tab.active{background:#c8102e;color:#fff;border-color:#c8102e}#coach-an-tempo-card .coach-an-sprint-tab.active{background:#3b82f6;border-color:#3b82f6}#coach-an-tempo-card .coach-an-sprint-tab:hover{border-color:#3b82f6}.coach-an-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-color, #E5E5EA);font-size:12px;color:var(--text-secondary, #6E6E73);font-variant-numeric:tabular-nums}.coach-an-meta strong{color:var(--text-primary, #1d1d1f);font-weight:700;margin-right:4px}.hero-header{background:linear-gradient(160deg,#0f1116,#1d1d1f,#2a1218);color:#fff;padding:max(env(safe-area-inset-top,0px),14px) 18px 18px;width:100vw;position:relative;left:50%;transform:translate(-50%);margin:0 0 14px;overflow:hidden;border-radius:0;z-index:1}.hero-header>*{max-width:600px;margin-left:auto;margin-right:auto}.hero-header:not(.compact){border-radius:0;margin-bottom:14px}.hero-header:not(.compact):after{display:none}.hero-header.compact{padding:max(env(safe-area-inset-top,0px),10px) 18px 10px;border-radius:0;margin-bottom:14px}.hero-header.compact:before{display:none}.hero-header:before{content:"";position:absolute;right:-40px;top:-40px;width:200px;height:200px;background:radial-gradient(circle,rgba(200,16,46,.3) 0%,transparent 65%);pointer-events:none}[data-theme=dark] .hero-header{background:linear-gradient(160deg,#1a1a1e,#232328,#2e1a20);box-shadow:0 8px 24px #00000073}[data-theme=dark] .hero-header:before{background:radial-gradient(circle,rgba(255,59,87,.22) 0%,transparent 65%)}[data-theme=dark] .hero-header:not(.compact):after{background:var(--bg-body)}[data-theme=dark] .settings-sheet{background:var(--bg-body);color:var(--text)}[data-theme=dark] .settings-sheet-head{background:linear-gradient(160deg,#1a1a1e,#232328)}[data-theme=dark] .settings-sheet-list{background:var(--bg-card);border-color:var(--border)}[data-theme=dark] .settings-sheet-row-item{color:var(--text);border-bottom-color:var(--border)}[data-theme=dark] .settings-sheet-row-item:hover{background:var(--bg-card-hover)}[data-theme=dark] .ssri-label{color:var(--text)}[data-theme=dark] .ssri-sub,[data-theme=dark] .ssri-right,[data-theme=dark] .ssri-chev{color:var(--text-secondary)}[data-theme=dark] .settings-sheet-section{color:var(--text-tertiary)}[data-theme=dark] .ss-subview{background:var(--bg-body);color:var(--text)}[data-theme=dark] .ss-subview-head{background:var(--bg-body);border-bottom:1px solid var(--border)}[data-theme=dark] .ss-subview-title{color:var(--text)}[data-theme=dark] .ss-field input,[data-theme=dark] .ss-field select,[data-theme=dark] .ss-field textarea{background:var(--bg-input);color:var(--text);border-color:var(--border)}[data-theme=dark] .ss-field-label{color:var(--text-secondary)}[data-theme=dark] .ss-field-hint{color:var(--text-tertiary)}[data-theme=dark] .ss-info-box{background:var(--bg-elevated);color:var(--text);border-color:var(--border)}[data-theme=dark] .ss-group-card{background:var(--bg-elevated)}[data-theme=dark] .ss-radio{background:var(--bg-card);border-color:var(--border);color:var(--text)}[data-theme=dark] .hsp-card{background:var(--bg-card);color:var(--text)}[data-theme=dark] .hsp-row-label{color:var(--text)}[data-theme=dark] .hsp-row-sub{color:var(--text-secondary)}[data-theme=dark] .hsp-row{border-color:var(--border)}[data-theme=dark] .settings-sheet-logout{background:var(--bg-card);color:var(--danger);border-color:var(--border)}[data-theme=dark] .settings-sheet-danger{background:#ff453a14;border-color:#ff453a40}[data-theme=dark] .ssd-link{color:var(--danger)}[data-theme=dark] .tab-nav{background:var(--bg-card);border-top:1px solid var(--border);box-shadow:0 -2px 12px #0006}[data-theme=dark] .tab-btn{color:var(--text-secondary)}[data-theme=dark] .tab-btn.active{color:var(--text)}[data-theme=dark] .tab-btn.active .tab-icon{background:#ff3b5724}[data-theme=dark] .tab-icon--training{color:var(--primary)}[data-theme=dark] .tab-icon--analytics{color:#4da3ff}[data-theme=dark] .tab-icon--diary{color:#4cdb7c}[data-theme=dark] .tab-icon--calendar{color:#ffb145}[data-theme=dark] .tab-icon--community{color:#c77bec}[data-theme=dark] .tab-icon--coach-overview{color:#4da3ff}[data-theme=dark] .tab-icon--coach-plan{color:#ffb145}[data-theme=dark] .tab-icon--coach-diary{color:#ff6961}[data-theme=dark] .glass-card{background:var(--bg-card);border:1px solid var(--border);box-shadow:0 2px 10px #00000059,0 8px 28px #0000004d;backdrop-filter:none;-webkit-backdrop-filter:none}[data-theme=dark] .glass-card .card-header h2,[data-theme=dark] .glass-card h2,[data-theme=dark] .glass-card h3{color:var(--text)}[data-theme=dark] .glass-card .card-subtitle,[data-theme=dark] .glass-card .aie-subtitle,[data-theme=dark] .card-subtitle{color:var(--text-secondary)}[data-theme=dark] .aie-empty-text{color:var(--text-tertiary)}[data-theme=dark] .aie-subtitle{color:var(--text-secondary)}[data-theme=dark] .aie-slider-row label{color:var(--text)}[data-theme=dark] .aie-range{background:var(--bg-elevated)}[data-theme=dark] .race-pred-empty,[data-theme=dark] .race-pred-hint,[data-theme=dark] .race-pred-subtitle{color:var(--text-secondary)}[data-theme=dark] .notebook-card,[data-theme=dark] .suppl-card,[data-theme=dark] .injury-list,[data-theme=dark] .injury-stats-card{background:var(--bg-card);border-color:var(--border)}[data-theme=dark] .empty-state{color:var(--text-tertiary)}[data-theme=dark] .empty-state svg{opacity:.35}[data-theme=dark] .filter-select{background:var(--bg-elevated);color:var(--text);border-color:var(--border)}[data-theme=dark] .filter-select option{background:var(--bg-card);color:var(--text)}.hero-stats-wrap{position:relative;z-index:1;margin-top:4px}.hero-meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px;position:relative;z-index:1}.hero-stats-edit{background:#ffffff0d;color:#ffffff8c;border:1px solid rgba(255,255,255,.1);width:28px;height:22px;border-radius:999px;font-size:13px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0;letter-spacing:1px}.hero-stats-edit:hover{background:#ffffff1f;color:#fff}.hero-stats-foot{display:flex;justify-content:flex-end;margin-top:6px;margin-bottom:8px}.hero-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.hero-brand{display:flex;align-items:center;gap:8px;min-width:0}.hero-wordmark{font-size:14px;font-weight:800;letter-spacing:-.3px;color:#fff}.hero-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.hero-icon-btn{width:32px;height:32px;border-radius:10px;background:#ffffff0f;color:#fff;border:1px solid rgba(255,255,255,.1);cursor:pointer;display:grid;place-items:center;transition:background .15s}.hero-icon-btn:hover{background:#ffffff1f}.hero-avatar{width:38px;height:38px;border-radius:999px;background:linear-gradient(135deg,#ff3b57,#c8102e);color:#fff;font-weight:700;font-size:13px;border:2px solid rgba(255,255,255,.15);box-shadow:0 4px 14px #ff3b5759;cursor:pointer;position:relative;display:grid;place-items:center}.hero-avatar-gear{position:absolute;right:-3px;bottom:-3px;width:16px;height:16px;border-radius:999px;background:#1d1d1f;color:#fff;border:2px solid #1D1D1F;display:grid;place-items:center;box-shadow:0 2px 6px #0006}.hero-greeting-block{position:relative;z-index:1;margin-top:8px;margin-bottom:18px}.hero-pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;background:#ff3b572e;color:#ff8295;padding:6px 12px;border-radius:999px;margin:0;border:1px solid rgba(255,59,87,.18)}.hero-greeting{font-size:22px;letter-spacing:-.5px;font-weight:800;margin:0 0 4px;line-height:1.15;color:#fff;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hero-wave{display:inline-block;animation:hero-wave 2.6s ease-in-out infinite;transform-origin:70% 70%}@keyframes hero-wave{0%,60%,to{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}}.hero-sub{font-size:13px;color:#ffffffb3;font-weight:500;line-height:1.45;margin:0}.hero-sub strong{color:#fff;font-weight:700}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.hero-stat{position:relative;background:linear-gradient(180deg,#ffffff13,#ffffff09);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:13px 9px 10px;backdrop-filter:blur(12px);box-shadow:0 1px 2px #00000040,inset 0 1px #ffffff0f;display:grid;grid-template-rows:26px 26px 13px;align-items:center;row-gap:5px;min-height:92px;overflow:hidden}.hero-stat .v{font-size:26px;font-weight:800;letter-spacing:-.8px;line-height:1;color:#fff;font-variant-numeric:tabular-nums;align-self:center;white-space:nowrap}.hero-stat .v small{font-size:12px;color:#fff9;font-weight:700;margin-left:2px;letter-spacing:0}.hero-stat .l{font-size:9.5px;font-weight:700;letter-spacing:.5px;color:#ffffffb3;text-transform:uppercase;line-height:1.15;align-self:start;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hero-stat .d{font-size:10px;font-weight:700;line-height:1;color:#ffffff8c;align-self:end;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-stat .d.up{color:#46e07a}.hero-stat .d.down{color:#ff6961}.hero-stat .d.neutral{color:#ffffff73}.hero-stat.hero-stat-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.22);cursor:pointer}.hero-stat.hero-stat-add:hover{background:#ffffff17}.hero-stat-add-plus{font-size:24px;font-weight:300;line-height:1;color:#ffffffb3}.hero-stat.hero-stat-add .l{align-self:center;text-align:center}.hero-header.compact .hero-meta,.hero-header.compact .hero-greeting-block,.hero-header.compact .hero-stats-wrap{display:none}.settings-sheet{position:fixed;inset:0;background:var(--bg-body, #F2F2F7);color:var(--text, #1D1D1F);z-index:1000;transform:translate(100%);transition:transform .28s cubic-bezier(.32,.72,.16,1);display:flex;flex-direction:column}.settings-sheet.open{transform:translate(0)}.settings-sheet[hidden]{display:none}.settings-sheet-head{background:linear-gradient(180deg,#0f1116,#1d1d1f);color:#fff;padding:max(env(safe-area-inset-top),22px) 22px 26px;position:relative;flex-shrink:0}.settings-sheet-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.settings-sheet-close{background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.18);width:36px;height:36px;border-radius:12px;display:grid;place-items:center;cursor:pointer;font-size:16px}.settings-sheet-title{font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;opacity:.7}.settings-sheet-profile{display:flex;gap:14px;align-items:center}.settings-sheet-avatar{width:56px;height:56px;border-radius:999px;background:linear-gradient(135deg,#ff3b57,#c8102e);color:#fff;display:grid;place-items:center;font-weight:700;font-size:18px;border:2px solid rgba(255,255,255,.18)}.settings-sheet-name{font-size:18px;font-weight:800;letter-spacing:-.3px;color:#fff}.settings-sheet-group{font-size:12px;color:#ffffffa6;margin-top:2px}.settings-sheet-body{flex:1;overflow-y:auto;padding:16px 16px max(env(safe-area-inset-bottom),24px)}.settings-sheet-section{font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--text-secondary, #6E6E73);text-transform:uppercase;margin:18px 6px 8px}.settings-sheet-section:first-child{margin-top:4px}.settings-sheet-list{background:var(--bg-card, #fff);border:1px solid var(--border, #E5E5EA);border-radius:14px;overflow:hidden}.settings-sheet-row-item{display:flex;align-items:center;gap:12px;padding:13px 14px;width:100%;background:transparent;border:0;border-bottom:1px solid var(--border, #E5E5EA);cursor:pointer;transition:background .15s;font-family:inherit;text-align:left;color:inherit}.settings-sheet-row-item:last-child{border-bottom:none}.settings-sheet-row-item:hover{background:var(--bg-card-hover, #F5F5F7)}.ssri-icon{width:28px;height:28px;border-radius:8px;background:#c8102e1a;color:#c8102e;display:grid;place-items:center;flex-shrink:0}.ssri-icon.ssri-blue{background:#007aff1a;color:#007aff}.ssri-icon.ssri-red{background:#c8102e1a;color:#c8102e}[data-theme=dark] .ssri-icon.ssri-red{background:#ff3b5724;color:#ff3b57}.ssri-icon.ssri-green{background:#34c7591a;color:#34c759}.ssri-icon.ssri-purple{background:#6366f11a;color:#6366f1}.ssri-icon.ssri-orange{background:#ff95001a;color:#ff9500}.ssri-icon.ssri-grey{background:#8e8e931a;color:var(--text-secondary, #6E6E73)}.ssri-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:left}.ssri-label{font-size:14px;font-weight:600}.ssri-sub{font-size:11.5px;color:var(--text-secondary, #6E6E73)}.ssri-chev{color:var(--text-tertiary, #C7C7CC);font-size:18px}.ssri-right{font-size:12px;color:var(--text-secondary, #6E6E73);font-weight:500}.settings-sheet-logout{width:100%;background:var(--bg-card, #fff);color:#ff3b30;border:1px solid var(--border, #E5E5EA);padding:14px;border-radius:14px;font-size:14px;font-weight:700;cursor:pointer;margin-top:18px;display:flex;align-items:center;justify-content:center;gap:8px}.settings-sheet-logout:hover{background:#ff3b300f}.settings-sheet-danger{background:#ff3b300a;border:1px solid rgba(255,59,48,.18);border-radius:14px;padding:14px;margin-top:14px}.ssd-title{font-size:11px;font-weight:700;letter-spacing:.5px;color:#ff3b30;text-transform:uppercase;margin-bottom:4px}.ssd-sub{font-size:11px;color:var(--text-secondary, #6E6E73);margin-bottom:6px}.hero-stat{cursor:pointer;text-align:left;font-family:inherit;color:inherit;transition:transform .12s ease,background .15s ease;-webkit-tap-highlight-color:transparent}.hero-stat:hover{background:#ffffff1a}.hero-stat:active{transform:scale(.97)}.hero-stat:focus-visible{outline:2px solid #FF8295;outline-offset:2px}.stat-detail-overlay{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(4px);z-index:1100;display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .2s ease}.stat-detail-overlay.open{opacity:1;pointer-events:auto}.stat-detail-card{background:var(--bg-card, #FFFFFF);color:var(--text, #1D1D1F);border-radius:22px;width:100%;max-width:440px;padding:22px 22px 18px;box-shadow:0 24px 64px #00000059;transform:translateY(20px) scale(.97);transition:transform .25s cubic-bezier(.32,.72,.16,1);border:1px solid var(--border, rgba(0,0,0,.1))}.stat-detail-overlay.open .stat-detail-card{transform:translateY(0) scale(1)}.stat-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.stat-detail-head h3{margin:0;font-size:18px;font-weight:800;letter-spacing:-.4px;color:var(--text, #1D1D1F)}.stat-detail-head p{margin:4px 0 0;font-size:12px;color:var(--text-secondary, #6E6E73)}.stat-detail-close{width:30px;height:30px;border-radius:999px;background:var(--bg-elevated, #F0F0F5);border:none;color:var(--text-secondary, #6E6E73);font-size:14px;cursor:pointer;display:grid;place-items:center;flex-shrink:0}.stat-detail-close:hover{background:var(--bg-card-hover, #E5E5EA);color:var(--text)}.stat-detail-current{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.stat-detail-current #sdt-current-v{font-size:32px;font-weight:800;letter-spacing:-.8px;color:var(--text, #1D1D1F);font-variant-numeric:tabular-nums}.stat-detail-current #sdt-current-v small{font-size:14px;color:var(--text-secondary, #6E6E73);font-weight:700;margin-left:2px}.stat-detail-current #sdt-current-l{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--text-secondary, #6E6E73)}.stat-detail-chart{width:100%;height:180px;margin:8px 0 14px;display:block}.stat-detail-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:12px;border-top:1px solid var(--border, rgba(0,0,0,.1))}.stat-detail-stats>div{display:flex;flex-direction:column;align-items:center;gap:2px}.stat-detail-stats span{font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--text-tertiary, #AEAEB2)}.stat-detail-stats strong{font-size:14px;font-weight:800;color:var(--text, #1D1D1F);font-variant-numeric:tabular-nums}.sdt-empty{grid-column:1 / -1;text-align:center;font-size:13px;color:var(--text-secondary, #6E6E73);padding:8px}.loading-hint{position:fixed;bottom:90px;left:50%;transform:translate(-50%) translateY(20px);background:linear-gradient(135deg,#1d1d1f,#2a1218);color:#fff;padding:12px 20px 12px 16px;border-radius:999px;font-size:14px;font-weight:600;box-shadow:0 12px 32px #00000059;z-index:1200;display:flex;align-items:center;gap:10px;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .3s cubic-bezier(.32,.72,.16,1);max-width:calc(100vw - 32px)}.loading-hint.show{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.loading-hint .lh-spinner{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.15);border-top-color:#ff3b57;border-radius:50%;animation:lh-spin .8s linear infinite;flex-shrink:0}@keyframes lh-spin{to{transform:rotate(360deg)}}.loading-hint .lh-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=dark] .filter-select,[data-theme=dark] select,[data-theme=dark] input[type=text],[data-theme=dark] input[type=email],[data-theme=dark] input[type=password],[data-theme=dark] input[type=number],[data-theme=dark] input[type=date],[data-theme=dark] input[type=time],[data-theme=dark] input[type=search],[data-theme=dark] textarea{background:var(--bg-input)!important;color:var(--text)!important;border-color:var(--border)!important}[data-theme=dark] select option{background:var(--bg-card);color:var(--text)}[data-theme=dark] .modal-content,[data-theme=dark] .modal,[data-theme=dark] .info-modal-content,[data-theme=dark] .faq-panel,[data-theme=dark] .insight-modal-content,[data-theme=dark] .booster-modal-content,[data-theme=dark] .pb-share-modal,[data-theme=dark] .race-pred-card,[data-theme=dark] .quick-action-sheet,[data-theme=dark] .qa-sheet-content{background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important}[data-theme=dark] .stat-detail-card{background:var(--bg-card);color:var(--text)}[data-theme=dark] .stat-detail-close{background:var(--bg-elevated);color:var(--text-secondary)}[data-theme=dark] .stat-detail-close:hover{background:var(--bg-card-hover);color:var(--text)}[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-outline,[data-theme=dark] .toggle-btn:not(.active),[data-theme=dark] .filter-pill:not(.active),[data-theme=dark] .chip:not(.active),[data-theme=dark] .analytics-chip:not(.active){background:var(--bg-card)!important;color:var(--text)!important;border-color:var(--border)!important}[data-theme=dark] .ss-field input,[data-theme=dark] .ss-field select,[data-theme=dark] .ss-field textarea,[data-theme=dark] .cg-name-input,[data-theme=dark] .cg-add-row input{background:var(--bg-input)!important;color:var(--text)!important;border-color:var(--border)!important}[data-theme=dark] .ss-radio{background:var(--bg-card);color:var(--text);border-color:var(--border)}[data-theme=dark] .ss-radio.active{background:#ff3b571a;border-color:var(--primary)}[data-theme=dark] .ss-link-row,[data-theme=dark] .ss-about-card{background:var(--bg-card);color:var(--text);border-color:var(--border)}[data-theme=dark] .ss-group-card{background:linear-gradient(135deg,#ff3b5714,#c8102e0a);border-color:var(--border)}[data-theme=dark] .ss-group-name{color:var(--text)}[data-theme=dark] .ss-info-box p{color:var(--text-secondary)}[data-theme=dark] .ss-btn-ghost{background:var(--bg-card);color:var(--text);border-color:var(--border)}[data-theme=dark] .ss-status.success{background:#30d1581f;color:#30d158}[data-theme=dark] .ss-status.error{background:#ff453a1f;color:#ff453a}[data-theme=dark] .ss-status.info{background:#0a84ff1f;color:#0a84ff}.glass-card{border:1px solid var(--border);box-shadow:0 1px 3px #0000000f,0 8px 28px #0000000f}[data-theme=dark] .glass-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.14);box-shadow:0 1px 3px #00000073,0 8px 28px #0006}[data-theme=dark] .card{background:var(--bg-card);border-color:#ffffff1f}[data-theme=dark] .btn-primary,[data-theme=dark] .btn-add-wk,[data-theme=dark] .ss-btn-primary,[data-theme=dark] button.btn-save,[data-theme=dark] .save-btn,[data-theme=dark] .submit-btn,[data-theme=dark] button[type=submit]:not(.btn-secondary):not(.btn-ghost):not(.btn-outline){background:var(--primary)!important;color:#fff!important;border-color:transparent!important}[data-theme=dark] .btn-primary:hover,[data-theme=dark] .btn-add-wk:hover,[data-theme=dark] .ss-btn-primary:hover{background:var(--primary-light)!important;box-shadow:0 4px 22px #ff3b574d}select,.filter-select{color:var(--text)}[data-theme=dark] select,[data-theme=dark] .filter-select,[data-theme=dark] .form-input,[data-theme=dark] .form-control,[data-theme=dark] .form-group select,[data-theme=dark] .form-group input,[data-theme=dark] .form-group textarea,[data-theme=dark] .training-form select,[data-theme=dark] .training-form input,[data-theme=dark] .training-form textarea,[data-theme=dark] .pyramid-row select,[data-theme=dark] .pyramid-row input,[data-theme=dark] .modal select,[data-theme=dark] .modal input,[data-theme=dark] .modal textarea,[data-theme=dark] [class*=dropdown]:not(.dropdown-menu){background-color:var(--bg-input)!important;color:var(--text)!important;border:1px solid var(--border)!important}[data-theme=dark] select option,[data-theme=dark] optgroup{background-color:#1a1a1d!important;color:var(--text)!important}[data-theme=dark] select:focus,[data-theme=dark] input:focus,[data-theme=dark] textarea:focus{border-color:var(--primary)!important;outline:none;box-shadow:0 0 0 3px #ff3b5726}[data-theme=dark] .dropdown-menu,[data-theme=dark] .select-dropdown,[data-theme=dark] .autocomplete-list{background:var(--bg-card)!important;color:var(--text)!important;border:1px solid var(--border)!important;box-shadow:0 8px 32px #00000080}[data-theme=dark] .dropdown-item:hover,[data-theme=dark] .select-dropdown li:hover{background:var(--bg-card-hover)!important}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.7}.ssd-link{display:block;padding:8px 0;background:transparent;border:none;cursor:pointer;font-size:13px;font-weight:600;color:#ff3b30;font-family:inherit;text-align:left}.settings-sheet-version{margin-top:16px;text-align:center;font-size:11px;color:var(--text-tertiary, #C7C7CC)}.ss-subview-stack{position:absolute;inset:0;pointer-events:none;overflow:hidden}.ss-subview{position:absolute;inset:0;background:var(--bg-body, #FFFFFF);transform:translate(100%);transition:transform .3s cubic-bezier(.32,.72,.16,1);pointer-events:auto;overflow-y:auto;padding-top:calc(env(safe-area-inset-top,0px) + 56px);z-index:1}.ss-subview.open{transform:translate(0)}.ss-subview[hidden]{display:none}.ss-subview-head{position:absolute;top:0;left:0;right:0;height:calc(env(safe-area-inset-top,0px) + 56px);padding-top:env(safe-area-inset-top,0px);display:flex;align-items:center;gap:12px;padding-left:12px;padding-right:12px;background:var(--bg-body, #FFFFFF);border-bottom:1px solid var(--border, #E5E5EA);z-index:10;transform:translate(100%);transition:transform .3s cubic-bezier(.32,.72,.16,1);pointer-events:auto}.ss-subview-stack.has-open .ss-subview-head{transform:translate(0)}.ss-subview-back{width:36px;height:36px;border-radius:10px;background:transparent;border:0;color:var(--text, #1D1D1F);cursor:pointer;display:grid;place-items:center}.ss-subview-back:hover{background:var(--bg-elevated, #F0F0F5)}.ss-subview-title{flex:1;font-size:16px;font-weight:700;color:var(--text, #1D1D1F);letter-spacing:-.2px}.ss-subview-spacer{width:36px}.ss-subview-body{padding:22px 22px 60px;display:flex;flex-direction:column;gap:16px;max-width:560px;margin:0 auto}.ss-subview-body>*{animation:ssFadeIn .35s ease both}@keyframes ssFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.ss-field{display:flex;flex-direction:column;gap:6px}.ss-field-label{font-size:13px;font-weight:600;color:var(--text, #1D1D1F)}.ss-field input,.ss-field select,.ss-field textarea{width:100%;padding:12px 14px;background:var(--bg-input, #FFFFFF);border:1.5px solid var(--border, #E5E5EA);border-radius:12px;font-size:15px;font-family:inherit;color:var(--text, #1D1D1F);transition:border-color .15s,box-shadow .15s}.ss-field input:focus,.ss-field select:focus,.ss-field textarea:focus{outline:none;border-color:#c8102e;box-shadow:0 0 0 3px #c8102e1f}.ss-field-hint{font-size:11.5px;color:var(--text-secondary, #6E6E73)}.ss-section-info{font-size:13px;color:var(--text-secondary, #6E6E73);margin:0;line-height:1.5}.ss-section-info strong{color:var(--text, #1D1D1F);font-weight:700}.ss-section-info.ss-muted{font-size:12px;color:var(--text-tertiary, #AEAEB2)}.ss-status{font-size:13px;min-height:18px;margin:0;font-weight:600}.ss-status.success{color:#34c759}.ss-status.error{color:#ff3b30}.ss-status.info{color:var(--text-secondary, #6E6E73)}.ss-btn{padding:13px 20px;border-radius:12px;font-size:14px;font-weight:700;font-family:inherit;border:0;cursor:pointer;transition:all .15s}.ss-btn:disabled{opacity:.5;cursor:not-allowed}.ss-btn-primary{background:#c8102e;color:#fff;box-shadow:0 4px 14px #c8102e47}.ss-btn-primary:hover:not(:disabled){background:#b00c28;box-shadow:0 6px 20px #c8102e5c}.ss-btn-ghost{background:var(--bg-elevated, #F0F0F5);color:var(--text, #1D1D1F);border:1px solid var(--border, #E5E5EA)}.ss-btn-ghost:hover:not(:disabled){background:var(--bg-card-hover, #FAFAFA)}.ss-radio-list{display:flex;flex-direction:column;gap:8px}.ss-radio{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-card, #FFFFFF);border:1.5px solid var(--border, #E5E5EA);border-radius:12px;cursor:pointer;font-family:inherit;color:var(--text, #1D1D1F);transition:all .15s}.ss-radio:hover{border-color:var(--border-light, #D1D5DB)}.ss-radio.active{border-color:#c8102e;background:#c8102e0a}.ss-radio-label{font-size:14px;font-weight:600}.ss-radio-check{width:22px;height:22px;border-radius:999px;border:2px solid var(--border-light, #D1D5DB);flex-shrink:0;display:grid;place-items:center;transition:all .15s}.ss-radio.active .ss-radio-check{background:#c8102e;border-color:#c8102e;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");background-size:12px;background-repeat:no-repeat;background-position:center}.ss-group-card{display:flex;flex-direction:column;gap:4px;padding:22px 20px;background:linear-gradient(135deg,#c8102e0d,#ff3b5705);border:1px solid var(--border, #E5E5EA);border-radius:16px;text-align:center}.ss-group-label{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text-secondary, #6E6E73)}.ss-group-name{font-size:22px;font-weight:800;letter-spacing:-.4px;color:var(--text, #1D1D1F);margin-top:6px}.ss-group-coach{font-size:13px;color:var(--text-secondary, #6E6E73);margin-top:2px}.ss-group-coach:empty{display:none}.ss-info-box{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:#007aff0f;border:1px solid rgba(0,122,255,.18);border-radius:12px;color:var(--text, #1D1D1F)}.ss-info-box svg{color:#007aff;flex-shrink:0;margin-top:2px}.ss-info-box p{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary, #3A3A3C)}[data-theme=dark] .ss-info-box{background:#0a84ff1a;border-color:#0a84ff40}.ss-about-card{text-align:center;padding:24px 18px;background:var(--bg-card, #FFFFFF);border:1px solid var(--border, #E5E5EA);border-radius:16px}.ss-about-logo{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,#ff3b57,#c8102e);color:#fff;font-weight:800;font-size:30px;display:grid;place-items:center;margin:0 auto 12px;box-shadow:0 8px 22px #c8102e52}.ss-about-name{font-size:18px;font-weight:800;letter-spacing:-.3px;color:var(--text, #1D1D1F)}.ss-about-version{font-size:12px;color:var(--text-secondary, #6E6E73);margin-top:4px;font-variant-numeric:tabular-nums}.ss-link-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-card, #FFFFFF);border:1px solid var(--border, #E5E5EA);border-radius:12px;cursor:pointer;font-family:inherit;color:var(--text, #1D1D1F);font-size:14px;font-weight:600}.ss-link-row:hover{background:var(--bg-card-hover, #FAFAFA)}.ss-subview-body .settings-tab-content{display:block!important;padding:0}.ss-subview-body .settings-tab-content[id]{animation:none}#custom-types-modal{display:none!important}.hero-stats-picker{position:fixed;inset:0;background:#00000073;z-index:1100;opacity:0;pointer-events:none;transition:opacity .2s;display:flex;align-items:flex-end}.hero-stats-picker[hidden]{display:none}.hero-stats-picker.open{opacity:1;pointer-events:auto}.hsp-card{width:100%;background:var(--bg-card, #fff);color:var(--text, #1D1D1F);border-radius:18px 18px 0 0;padding:12px 16px max(env(safe-area-inset-bottom),22px);transform:translateY(100%);transition:transform .25s cubic-bezier(.32,.72,.16,1);max-height:80%;overflow-y:auto}.hero-stats-picker.open .hsp-card{transform:translateY(0)}.hsp-grabber{width:38px;height:4px;background:#d1d5db;border-radius:2px;margin:6px auto 12px}.hsp-title{text-align:center;font-size:16px;font-weight:700;letter-spacing:-.2px;padding:4px 0 6px;margin:0}.hsp-sub{font-size:12.5px;color:var(--text-secondary, #6E6E73);font-weight:500;text-align:center;margin:0 0 10px;line-height:1.4}.hsp-counter{text-align:center;font-size:11px;color:var(--text-secondary, #6E6E73);font-weight:600;margin:0 0 6px}.hsp-counter strong{color:var(--text, #1D1D1F)}.hsp-settings-note{text-align:center;font-size:11.5px;line-height:1.4;color:var(--text-secondary, #6E6E73);background:var(--bg-elev, rgba(0,0,0,.03));border-radius:10px;padding:8px 12px;margin:10px 0 0}.hsp-settings-note strong{color:var(--text, #1D1D1F)}.hsp-list{display:flex;flex-direction:column}.hsp-row{display:flex;align-items:center;gap:10px;padding:10px 4px;width:100%;background:transparent;border-top:1px solid var(--border, #E5E5EA);color:inherit}.hsp-row:first-of-type{border-top:0}.hsp-row-toggle{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:4px 0;background:transparent;border:0;cursor:pointer;color:inherit;font-family:inherit;text-align:left}.hsp-row-icon{width:32px;height:32px;border-radius:9px;background:#c8102e1a;flex-shrink:0;position:relative;display:grid;place-items:center}.hsp-pos{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--text, #1D1D1F)}.hsp-row-icon.ic-red{background:#c8102e1a}.hsp-row-icon.ic-blue{background:#007aff1a}.hsp-row-icon.ic-green{background:#34c7591a}.hsp-row-icon.ic-purple{background:#6366f11a}.hsp-row-icon.ic-orange{background:#ff95001a}.hsp-row-icon.ic-grey{background:#8e8e931a}.hsp-row-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.hsp-row-label{font-size:14px;font-weight:600}.hsp-row-sub{font-size:11.5px;color:var(--text-secondary, #6E6E73)}.hsp-check{width:22px;height:22px;border-radius:6px;border:1.5px solid var(--border-light, #D1D5DB);background:var(--bg-card, #fff);flex-shrink:0;display:grid;place-items:center}.hsp-row.selected .hsp-check{background:#c8102e;border-color:#c8102e;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");background-size:13px;background-repeat:no-repeat;background-position:center}.hsp-reorder{display:inline-flex;flex-direction:column;gap:2px;flex-shrink:0;margin-left:4px}.hsp-arr{width:26px;height:18px;border-radius:6px;background:var(--bg-elevated, #F0F0F5);color:var(--text, #1D1D1F);border:1px solid var(--border, #E5E5EA);font-size:9px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}.hsp-arr:hover:not(:disabled){background:#c8102e;color:#fff;border-color:#c8102e}.hsp-arr:disabled{opacity:.3;cursor:not-allowed}.hsp-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.hsp-cancel,.hsp-save{padding:12px;border-radius:12px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;border:0}.hsp-cancel{background:var(--bg-elevated, #F5F5F7);color:var(--text, #1D1D1F);border:1px solid var(--border, #E5E5EA)}.hsp-save{background:#c8102e;color:#fff;box-shadow:0 4px 14px #c8102e47}.login-register-cta{text-align:center;margin:18px auto 6px;max-width:360px;font-size:14px;color:var(--text-secondary);line-height:1.55;padding:0 16px}.login-register-cta a{color:var(--primary);font-weight:700;text-decoration:none;margin-left:4px;transition:color .15s}.login-register-cta a:hover{color:var(--primary-dark);text-decoration:underline}.register-athlete-content{max-width:460px}.reg-ath-intro{text-align:center;color:var(--text-secondary);font-size:14px;margin:4px 0 22px;line-height:1.5}.reg-choice-cards{display:flex;flex-direction:column;gap:12px;margin-bottom:8px}.reg-choice-card{background:#fff;border:1.5px solid var(--border, #e5e5ea);border-radius:14px;padding:18px;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s;font-family:inherit;width:100%}.reg-choice-card:hover{border-color:var(--primary);box-shadow:0 4px 14px #c8102e1a}.reg-choice-card:active{transform:scale(.985)}.reg-choice-title{font-size:16px;font-weight:700;color:var(--text-primary, #111);margin-bottom:6px;letter-spacing:-.2px}.reg-choice-sub{font-size:13px;color:var(--text-secondary);line-height:1.5}.reg-ath-back{background:none;border:none;color:var(--primary);font-weight:600;font-size:14px;padding:0;cursor:pointer;margin-bottom:4px;font-family:inherit}.reg-ath-back:hover{text-decoration:underline}.reg-ath-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--text-secondary);line-height:1.5;margin:6px 0 16px;cursor:pointer}.reg-ath-consent input[type=checkbox]{margin-top:2px;flex-shrink:0;width:18px;height:18px;accent-color:var(--primary)}.reg-ath-consent a{color:var(--primary);text-decoration:underline}.reg-ath-error{background:#fee;color:#c8102e;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600;margin:0 0 14px}@media (prefers-color-scheme: dark){.reg-choice-card{background:#1c1c1e;border-color:#38383a}.reg-ath-error{background:#3a1419;color:#ff7a8a}}.reg-ath-overlay{padding:16px;z-index:10001}.reg-ath-card{background:#fff;border-radius:18px;box-shadow:0 25px 70px #0000002e,0 0 0 1px #0000000a;width:100%;max-width:460px;max-height:92vh;overflow-y:auto;display:flex;flex-direction:column;animation:regAthEnter .25s cubic-bezier(.16,1,.3,1)}@keyframes regAthEnter{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.reg-ath-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 14px;border-bottom:1px solid #f0f0f2}.reg-ath-head h2{margin:0;font-size:20px;font-weight:800;letter-spacing:-.3px;color:#111}.reg-ath-close-btn{background:none;border:none;font-size:28px;line-height:1;color:#888;cursor:pointer;padding:0 4px;border-radius:8px;transition:background .15s,color .15s}.reg-ath-close-btn:hover{background:#f4f4f6;color:#c8102e}.reg-ath-body{padding:22px 24px 26px}@media (prefers-color-scheme: dark){.reg-ath-card{background:#1c1c1e;box-shadow:0 25px 70px #0000008c,0 0 0 1px #ffffff0f}.reg-ath-head{border-bottom-color:#2c2c2e}.reg-ath-head h2{color:#fff}.reg-ath-close-btn{color:#aaa}.reg-ath-close-btn:hover{background:#2c2c2e}}.pw-input-wrap{position:relative;display:block}.pw-input-wrap input{width:100%;padding-right:44px}.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;padding:6px;cursor:pointer;color:#888;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.pw-toggle:hover{background:#0000000d;color:var(--primary, #C8102E)}.pw-toggle:focus{outline:none;background:#c8102e14;color:var(--primary, #C8102E)}.login-inline-error{margin:8px 2px 0;padding:8px 10px;background:#fef2f2;color:#c8102e;border-radius:8px;font-size:13px;font-weight:600;text-align:center;line-height:1.4}@media (prefers-color-scheme: dark){.pw-toggle{color:#aaa}.pw-toggle:hover{background:#ffffff0f}.login-inline-error{background:#3a1419;color:#ff7a8a}}.link-as-btn{background:none;border:none;padding:0;margin:0 0 0 4px;color:var(--primary, #C8102E);font-weight:700;font-family:inherit;font-size:inherit;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent}.link-as-btn:hover{color:var(--primary-dark, #8B0A1F);text-decoration:underline}.link-as-btn:focus{outline:2px solid rgba(200,16,46,.35);outline-offset:2px;border-radius:4px}.cta-pulse{animation:ctaPulse 1.2s ease-in-out 2}@keyframes ctaPulse{0%,to{transform:scale(1)}25%{transform:scale(1.04);background:#c8102e0f;border-radius:8px;padding:4px 8px}50%{transform:scale(1)}75%{transform:scale(1.04);background:#c8102e0f;border-radius:8px;padding:4px 8px}}.reg-ath-consent-row{display:flex;align-items:flex-start;gap:10px;margin:6px 0 16px}.reg-ath-consent-cb{position:absolute!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;margin:0!important}.reg-ath-consent-label{font-size:13px;color:var(--text-secondary, #555);line-height:1.5;cursor:pointer;user-select:none;position:relative;padding-left:32px;flex:1;display:block;min-height:22px}.reg-ath-consent-label:before{content:"";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:6px;border:2px solid #c0c4cc;background:#fff;box-sizing:border-box;transition:all .15s ease}.reg-ath-consent-label:after{content:"";position:absolute;left:7px;top:3px;width:8px;height:13px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg) scale(0);transition:transform .15s cubic-bezier(.16,1,.3,1)}.reg-ath-consent-cb:checked+.reg-ath-consent-label:before{background:#16a34a;border-color:#16a34a}.reg-ath-consent-cb:checked+.reg-ath-consent-label:after{transform:rotate(45deg) scale(1)}.reg-ath-consent-cb:focus-visible+.reg-ath-consent-label:before{box-shadow:0 0 0 3px #16a34a40}.reg-ath-consent-label a{color:var(--primary, #C8102E);text-decoration:underline;font-weight:600}.sprung-load-modal-content{max-width:480px}.sprung-load-list{display:flex;flex-direction:column;gap:8px;max-height:50vh;overflow-y:auto;margin:0 0 12px;padding-right:4px}.sprung-load-item{text-align:left;background:var(--bg-card, #f7f7f9);border:1px solid var(--border, #e5e5ea);border-radius:10px;padding:10px 12px;cursor:pointer;color:inherit;transition:border-color .15s,background .15s}.sprung-load-item:hover{border-color:var(--primary, #C8102E);background:var(--bg, #fff)}.sprung-load-head{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;margin-bottom:6px}.sprung-load-time{color:var(--text-secondary, #6e6e73);font-weight:500}.sprung-load-chips{display:flex;flex-wrap:wrap;gap:4px}.sprung-load-chip{display:inline-block;background:#c8102e1a;color:var(--primary, #C8102E);border-radius:6px;padding:2px 8px;font-size:11.5px;font-weight:600}.sprung-load-notes{margin-top:6px;font-size:12px;color:var(--text-secondary, #6e6e73);font-style:italic}[data-theme=dark] .login-screen{background:var(--bg-body)}[data-theme=dark] .login-card{background:var(--bg-card);box-shadow:0 8px 60px #00000073,0 1px 4px #00000040;border:1px solid var(--border)}[data-theme=dark] .login-logo{background:var(--bg-body);border:1px solid var(--border)}[data-theme=dark] .login-card h1{color:#ff3b57}[data-theme=dark] .lang-btn{background:var(--bg-body);color:var(--text-secondary)}[data-theme=dark] .lang-btn.active{background:#ff3b571a;color:#ff3b57;border-color:#ff3b57}[data-theme=dark] .user-chip{background:var(--bg-card);color:var(--text-secondary)}[data-theme=dark] .user-chip:hover{background:#ff3b570f;color:#ff3b57}[data-theme=dark] .login-pw-hint{background:var(--bg-card);border-color:var(--border);color:var(--text-secondary)}[data-theme=dark] .stay-switch{background:var(--bg-card);border-color:var(--border)}[data-theme=dark] .stay-opt.active{background:var(--primary)}[data-theme=dark] .faq-overlay{background:#0000008c}[data-theme=dark] .faq-panel{background:var(--bg-card);border:1px solid var(--border);box-shadow:0 20px 60px #0000008c}[data-theme=dark] .faq-panel h2,[data-theme=dark] .faq-question{color:var(--text)}[data-theme=dark] .faq-answer{color:var(--text-secondary)}[data-theme=dark] .faq-close{background:var(--bg-body);border-color:var(--border);color:var(--text-secondary)}.hero-top-fixed{position:fixed;top:0;left:0;right:0;z-index:1000;background:#0f1116;padding:max(env(safe-area-inset-top,0px),8px) 18px 8px}.hero-top-fixed>.hero-top{max-width:600px;margin:0 auto}[data-theme=dark] .hero-top-fixed{background:#15151a}body.has-fixed-topbar{padding-top:calc(max(env(safe-area-inset-top,0px),8px) + 46px)}body.has-fixed-topbar .hero-header{padding-top:6px}body.has-fixed-topbar .hero-header:before{display:none!important}body.has-fixed-topbar .hero-header{background:#0f1116!important;box-shadow:none!important;margin-top:0!important}body.has-fixed-topbar[data-theme=dark] .hero-header{background:#15151a!important}body.has-fixed-topbar .hero-header.compact,body.settings-sheet-open .hero-top-fixed{display:none!important}body.settings-sheet-open.has-fixed-topbar{padding-top:0!important}.hero-stat .v{font-family:ui-rounded,SF Pro Rounded,Hiragino Maru Gothic ProN,Quicksand,system-ui,-apple-system,sans-serif;font-feature-settings:"tnum" 1}:root:not([data-theme=dark]) .hero-header{background:#fff!important;color:#1d1d1f}:root:not([data-theme=dark]) .hero-header:before{display:none!important}:root:not([data-theme=dark]) .hero-top-fixed{background:#fff;box-shadow:0 1px #0000000f}:root:not([data-theme=dark]) body.has-fixed-topbar .hero-header{background:#fff!important}:root:not([data-theme=dark]) .hero-wordmark{color:#1d1d1f}:root:not([data-theme=dark]) .hero-icon-btn{background:#f5f5f7;color:#1d1d1f;border-color:#00000014}:root:not([data-theme=dark]) .hero-icon-btn:hover{background:#ebebf0}:root:not([data-theme=dark]) .hero-icon-btn svg{stroke:#1d1d1f}:root:not([data-theme=dark]) .hero-avatar{border-color:#0000000f;box-shadow:0 4px 14px #ff3b5740}:root:not([data-theme=dark]) .hero-avatar-gear{background:#fff;color:#6e6e73;border-color:#fff}:root:not([data-theme=dark]) .hero-pill{background:#c8102e14;color:#c8102e;border-color:#c8102e24}:root:not([data-theme=dark]) .hero-greeting{color:#1d1d1f}:root:not([data-theme=dark]) .hero-sub{color:#6e6e73}:root:not([data-theme=dark]) .hero-sub strong{color:#1d1d1f}:root:not([data-theme=dark]) .hero-stat{background:#fafafa;border-color:#00000014;backdrop-filter:none}:root:not([data-theme=dark]) .hero-stat .v{color:#1d1d1f}:root:not([data-theme=dark]) .hero-stat .v small{color:#8e8e93}:root:not([data-theme=dark]) .hero-stat .l{color:#8e8e93}:root:not([data-theme=dark]) .hero-stat .d.neutral{color:#8e8e93}:root:not([data-theme=dark]) .hero-stats-edit{background:#f5f5f7;color:#6e6e73;border-color:#00000014}:root:not([data-theme=dark]) .hero-stats-edit:hover{background:#ebebf0;color:#1d1d1f}:root:not([data-theme=dark]) .settings-sheet-head{background:#fff;color:#1d1d1f;padding:max(env(safe-area-inset-top),12px) 18px 14px;border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 1px #00000005}:root:not([data-theme=dark]) .settings-sheet-row{margin-bottom:12px}:root:not([data-theme=dark]) .settings-sheet-title{color:#1d1d1f;opacity:1}:root:not([data-theme=dark]) .settings-sheet-close{background:#f5f5f7;color:#1d1d1f;border-color:#00000014;width:32px;height:32px;border-radius:10px;font-size:14px}:root:not([data-theme=dark]) .settings-sheet-close:hover{background:#ebebf0}:root:not([data-theme=dark]) .settings-sheet-avatar{width:44px;height:44px;font-size:15px;border-color:#0000000f;box-shadow:0 2px 8px #ff3b5733}:root:not([data-theme=dark]) .settings-sheet-name{color:#1d1d1f;font-size:16px}:root:not([data-theme=dark]) .settings-sheet-group{color:#6e6e73}#training-form .training-step{display:none}#training-form.ts-step-1 .training-step[data-step="1"],#training-form.ts-step-2 .training-step[data-step="2"]{display:block}.ts-step-bar{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0 0 14px}.ts-step-dot{width:22px;height:22px;border-radius:999px;background:var(--bg-input);color:var(--text-muted);display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0}.ts-step-dot.active{background:var(--primary);color:#fff}.ts-step-divider{flex:1;height:2px;background:var(--bg-input);border-radius:1px}.ts-step-divider.done{background:#c8102e4d}.ts-step-label{white-space:nowrap}.ts-step-actions{display:flex;gap:8px;margin-top:6px}.ts-back-btn{flex:0 0 auto;padding:11px 16px;border-radius:12px;background:var(--bg-input);color:var(--text);border:1.5px solid var(--border);cursor:pointer;font-size:14px;font-weight:700;letter-spacing:-.1px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.ts-back-btn:hover{border-color:var(--primary);color:var(--primary)}.ts-next-btn{flex:1;padding:12px 16px;border:none;border-radius:12px;background:var(--primary);color:#fff;font-size:15px;font-weight:700;letter-spacing:-.2px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 6px 20px #c8102e40}.ts-next-btn:disabled{opacity:.5;box-shadow:none;cursor:not-allowed}.ts-tile-host .custom-select-trigger{display:none!important}.ts-tile-host>select{display:none!important}.ts-type-tiles{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto;padding:4px;margin:-4px;scrollbar-width:thin}.ts-type-tiles::-webkit-scrollbar{width:4px}.ts-type-tiles::-webkit-scrollbar-thumb{background:#c7c7cc;border-radius:2px}:root[data-theme=dark] .ts-type-tiles::-webkit-scrollbar-thumb{background:#48484a}.ts-tile{background:var(--bg-card);border:1.5px solid var(--border);border-radius:10px;padding:11px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left;width:100%;transition:all .12s;color:var(--text);font-family:inherit}.ts-tile:hover{border-color:#c8102e66}.ts-tile.active{border-color:var(--primary);background:#c8102e0a;box-shadow:0 0 0 3px #c8102e1a}:root[data-theme=dark] .ts-tile.active{background:#ff3b5714;box-shadow:0 0 0 3px #ff3b571f;border-color:#ff3b57}.ts-tile-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;background:var(--tile-bg, rgba(0,0,0,.05));color:var(--tile-fg, var(--text))}.ts-tile-icon svg{display:block}.ts-tile-name{font-size:13.5px;font-weight:700;letter-spacing:-.1px;line-height:1.2}.ts-tile[data-type="Sprint (50m)"] .ts-tile-icon,.ts-tile[data-type="Sprint (20m/30m/50m/80m)"] .ts-tile-icon{--tile-bg: rgba(200,16,46,.1);--tile-fg: #C8102E}.ts-tile[data-type="80m L\ef\bf\bdufe"] .ts-tile-icon{--tile-bg: rgba(129,140,248,.16);--tile-fg: #5B5FCF}.ts-tile[data-type="Tempolauf (120m)"] .ts-tile-icon{--tile-bg: rgba(0,122,255,.1);--tile-fg: #007AFF}.ts-tile[data-type="Tempolauf (150m)"] .ts-tile-icon{--tile-bg: rgba(251,191,36,.16);--tile-fg: #B07A00}.ts-tile[data-type="Tempolauf (Individuell)"] .ts-tile-icon{--tile-bg: rgba(45,212,191,.16);--tile-fg: #0F9D8F}.ts-tile[data-type=Kraft] .ts-tile-icon{--tile-bg: rgba(175,82,222,.12);--tile-fg: #AF52DE}.ts-tile[data-type=Technik] .ts-tile-icon{--tile-bg: rgba(251,146,60,.16);--tile-fg: #D9743A}.ts-tile[data-type=Sprung] .ts-tile-icon{--tile-bg: rgba(90,200,250,.16);--tile-fg: #0A84B8}.ts-tile[data-type="Joggen (5km)"] .ts-tile-icon{--tile-bg: rgba(52,199,89,.12);--tile-fg: #2A9C4A}.ts-tile[data-type=Regeneration] .ts-tile-icon{--tile-bg: rgba(6,182,212,.14);--tile-fg: #0891B2}.ts-tile[data-type=Pausetag] .ts-tile-icon{--tile-bg: rgba(255,149,0,.14);--tile-fg: #C97400}.ts-int-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.ts-int-tile{padding:10px 6px;border:1.5px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text-secondary);font-size:13px;font-weight:700;cursor:pointer;text-align:center;transition:all .15s;font-family:inherit}.ts-int-tile:hover:not(.active){border-color:var(--primary);color:var(--primary)}.ts-int-tile.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 12px #c8102e40}.ts-info-btn{width:18px;height:18px;border-radius:999px;background:var(--bg-input);color:var(--text-muted);border:1px solid var(--border);cursor:pointer;display:inline-grid;place-items:center;font-size:11px;font-weight:800;line-height:1;font-style:italic;font-family:Georgia,Times New Roman,serif;margin-left:6px;vertical-align:middle;transition:all .12s;padding:0}.ts-info-btn:hover{background:#c8102e1a;color:var(--primary);border-color:var(--primary)}.ts-info-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:9999;opacity:0;pointer-events:none;transition:opacity .2s}.ts-info-overlay.open{opacity:1;pointer-events:auto}.ts-info-sheet{width:100%;max-width:520px;background:var(--bg-card);border-radius:18px 18px 0 0;padding:18px 18px max(env(safe-area-inset-bottom),24px);box-shadow:0 -10px 40px #0000002e;transform:translateY(100%);transition:transform .25s ease;color:var(--text)}.ts-info-overlay.open .ts-info-sheet{transform:translateY(0)}.ts-info-handle{width:36px;height:4px;border-radius:999px;background:#d1d1d6;margin:0 auto 14px}.ts-info-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.ts-info-title{font-size:16px;font-weight:700;letter-spacing:-.3px}.ts-info-close{width:28px;height:28px;border-radius:8px;border:none;background:var(--bg-input);color:var(--text-secondary);cursor:pointer;font-size:18px;line-height:1}.ts-info-list{display:flex;flex-direction:column;gap:10px}.ts-info-row{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:10px;background:var(--bg-input)}.ts-info-tag{flex-shrink:0;min-width:64px;padding:6px 8px;border-radius:8px;background:var(--primary);color:#fff;font-size:11px;font-weight:800;letter-spacing:.4px;text-align:center}.ts-info-tag.muted{background:#8e8e93}.ts-info-desc{font-size:12.5px;line-height:1.45;color:var(--text)}.ts-info-desc b{font-weight:700}.ts-cta-card{background:linear-gradient(135deg,var(--bg-card) 0%,rgba(200,16,46,.04) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:22px 22px 20px;margin-bottom:14px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px}.ts-cta-head{display:flex;align-items:center;gap:12px}.ts-cta-icon{width:38px;height:38px;border-radius:12px;background:#c8102e1a;color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ts-cta-title{font-size:17px;font-weight:700;color:var(--text);margin:0;letter-spacing:-.01em}.ts-cta-sub{font-size:13px;color:var(--text-tertiary);line-height:1.5;margin:0}.ts-cta-btn{margin-top:4px;width:100%;padding:13px 18px;border:none;border-radius:14px;background:var(--primary);color:#fff;font-size:15px;font-weight:600;letter-spacing:-.01em;cursor:pointer;box-shadow:0 6px 18px var(--primary-glow);display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .12s ease,box-shadow .2s ease}.ts-cta-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px #c8102e4d}.ts-cta-btn:active{transform:translateY(0)}.ts-form-hidden{display:none!important}body.ts-overlay-open{overflow:hidden}.glass-card.ts-fullscreen{position:fixed;inset:0;z-index:9100;margin:0;max-width:none;width:100vw;height:100dvh;height:100vh;border:0;border-radius:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:calc(env(safe-area-inset-top,0px) + 64px) 18px calc(env(safe-area-inset-bottom,0px) + 96px);background:var(--bg-body);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;animation:tsOverlayIn .25s cubic-bezier(.2,.8,.2,1)}@keyframes tsOverlayIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ts-overlay-header{position:fixed;top:0;left:0;right:0;z-index:9200;height:calc(env(safe-area-inset-top,0px) + 56px);padding-top:env(safe-area-inset-top,0px);background:var(--bg-body);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid var(--border);display:none;align-items:center;justify-content:space-between;padding-left:16px;padding-right:8px}body.ts-overlay-open .ts-overlay-header{display:flex}.ts-overlay-title{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}.ts-overlay-close{width:38px;height:38px;border-radius:10px;border:none;background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease}.ts-overlay-close:hover{background:#0000000f}[data-theme=dark] .ts-overlay-close:hover{background:#ffffff14}.glass-card.ts-fullscreen>.card-header{display:none}.glass-card.ts-fullscreen .ts-type-tiles{max-height:none;overflow-y:visible}.glass-card.ts-fullscreen .ts-bottom-bar{position:fixed;left:0;right:0;bottom:0;z-index:9150;background:var(--bg-body);border-top:1px solid var(--border);box-shadow:0 -6px 18px #00000014;padding:12px 16px calc(env(safe-area-inset-bottom,0px) + 12px);display:flex;align-items:center;justify-content:center;gap:8px;margin:0}.ts-bottom-bar .ts-step-actions{margin:0;padding:0;width:100%;max-width:520px;display:flex}.ts-bottom-bar .ts-step-actions .ts-next-btn{flex:1}.ts-bottom-bar>button[type=submit]{margin:0;width:100%;max-width:520px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.glass-card.ts-fullscreen .ts-bottom-bar>.ts-step-actions,.glass-card.ts-fullscreen .ts-bottom-bar>button[type=submit]{display:none}#training-form.ts-step-1 .ts-bottom-bar>.ts-step-actions{display:flex}#training-form.ts-step-2 .ts-bottom-bar>button[type=submit]{display:inline-flex}[data-theme=dark] .glass-card.ts-fullscreen .ts-bottom-bar{box-shadow:0 -6px 22px #0000008c}.glass-card.ts-fullscreen{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 120px)!important}body.ts-overlay-open .modal-overlay{z-index:9300!important}body.ts-overlay-open .modal-overlay.show{display:flex!important}.ts-range-bar{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px;padding-bottom:4px}.ts-range-chip{padding:7px 14px;border-radius:999px;border:1.2px solid var(--border);background:var(--bg-card);color:var(--text-tertiary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.ts-range-chip:hover{border-color:var(--primary);color:var(--text)}.ts-range-chip.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 3px 10px var(--primary-glow)}.ts-range-empty{text-align:center;padding:28px 18px;color:var(--text-tertiary);font-size:13px}.history-header{flex-wrap:wrap}.training-list .training-entry{border-radius:16px;padding:14px 16px;border-left-width:4px;transition:transform .15s ease,box-shadow .2s ease,border-color .15s ease}.training-list .training-entry:hover{transform:translateY(-1px)}.training-list .entry-date{font-size:14.5px;font-weight:700;letter-spacing:-.01em}.training-list .entry-time-label{font-size:11px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.training-list .type-badge{font-size:11px;font-weight:700;letter-spacing:.02em;padding:4px 11px;border-radius:999px}.training-list .time-chip{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.training-list .entry-footer{margin-top:10px;padding-top:8px;border-top:1px solid var(--border);opacity:.85}.ts-overview-sub{margin:4px 0 14px;font-size:13px;color:var(--text-tertiary);line-height:1.5;max-width:560px}.ts-native-hidden{display:none!important}.ts-filter-bar{display:flex;flex-direction:column;gap:8px;margin:10px 0 6px}.ts-chip-group{display:flex;flex-wrap:nowrap;gap:7px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}.ts-chip-group::-webkit-scrollbar{display:none}.ts-chip-group--range{opacity:.95}.ts-filter-chip{flex-shrink:0;white-space:nowrap;font-family:inherit;font-size:13px;font-weight:600;padding:6px 13px;border-radius:999px;background:#fff;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;-webkit-tap-highlight-color:transparent;line-height:1.2}.ts-filter-chip:hover{border-color:var(--text-tertiary)}.ts-filter-chip.active{background:#c8102e14;color:var(--primary);border-color:#c8102e73}.ts-filter-chip--range{font-size:12.5px;padding:5px 12px}[data-theme=dark] .ts-filter-chip{background:var(--bg-card);color:var(--text-secondary);border-color:var(--border)}[data-theme=dark] .ts-filter-chip.active{background:#c8102e2e;color:#ff6b81;border-color:#c8102e8c}.ts-filter-bar+.ts-overview-sub{margin:2px 0 12px}.ts-overview-controls{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.ts-overview-controls-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);margin:0}.ts-overview-controls .ts-range-bar{margin:0;padding:0;overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.ts-overview-controls .ts-range-bar::-webkit-scrollbar{display:none}.ts-overview-controls .ts-range-bar{scrollbar-width:none}.ts-overview-controls .ts-range-chip{white-space:nowrap;flex-shrink:0}body.ts-overlay-open .date-picker-overlay,body.ts-overlay-open .time-picker-overlay{z-index:9300!important}body.ts-overlay-open .custom-select-dropdown{z-index:9400!important}.ts-cta-card{margin-bottom:32px}.ts-overview-controls{flex-direction:row;align-items:center;flex-wrap:wrap;gap:10px}.ts-overview-controls .ts-overview-controls-label{flex-shrink:0}.ts-overview-controls .ts-range-select,.ts-overview-controls .custom-select-wrap{flex:1;min-width:200px;max-width:320px}.ts-overview-controls .ts-range-bar{display:none}body.ts-detail-open{overflow:hidden}.ts-detail-overlay{position:fixed;inset:0;z-index:9500;background:#00000073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;align-items:flex-end;justify-content:center;opacity:0;transition:opacity .25s ease}.ts-detail-overlay.open{display:flex;opacity:1}.ts-detail-sheet{width:100%;max-width:560px;max-height:92vh;background:var(--bg-body);border-radius:24px 24px 0 0;padding:8px 18px calc(env(safe-area-inset-bottom,0px) + 22px);overflow-y:auto;-webkit-overflow-scrolling:touch;transform:translateY(20px);transition:transform .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 -10px 40px #0003}.ts-detail-overlay.open .ts-detail-sheet{transform:translateY(0)}.ts-detail-handle{width:38px;height:4px;border-radius:2px;background:var(--border-light);margin:6px auto 14px}.ts-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.ts-detail-titles{flex:1;min-width:0}.ts-detail-title{font-size:18px;font-weight:700;color:var(--text);letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-detail-sub{font-size:13px;color:var(--text-tertiary);margin-top:2px}.ts-detail-close{width:36px;height:36px;border:none;background:var(--bg-elevated);border-radius:50%;color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s ease}.ts-detail-close:hover{background:#0000001a}.ts-detail-list{margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--border)}.ts-detail-row{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--border);align-items:start}.ts-detail-row dt{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.4px;margin:0}.ts-detail-row dd{font-size:14px;color:var(--text);margin:0;line-height:1.5;word-wrap:break-word;font-variant-numeric:tabular-nums}.ts-detail-empty{padding:24px 0;color:var(--text-tertiary);text-align:center;font-size:13px}.ts-detail-summary-box{margin-top:18px;padding:14px 16px;background:var(--bg-elevated);border-radius:14px;border:1px solid var(--border)}.ts-detail-summary-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);margin-bottom:8px}.ts-detail-summary-title svg{color:var(--primary)}.ts-detail-insight{font-size:13.5px;color:var(--text);line-height:1.55;margin:6px 0}.ts-detail-insight b{font-weight:700}@media (max-width: 480px){.ts-detail-row{grid-template-columns:110px 1fr;gap:10px}.ts-detail-row dt{font-size:11px}}.training-list .training-entry{cursor:pointer}.training-list .training-entry:active{transform:scale(.997)}.save-success-overlay{flex-direction:column;gap:14px}.save-success-text{font-size:16px;font-weight:600;color:var(--text);text-align:center;max-width:320px;background:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;padding:8px 16px;animation:successPop .4s cubic-bezier(.175,.885,.32,1.275) .1s backwards}[data-theme=dark] .save-success-text{background:#1c1c1ed9;color:#fff}.save-success--pause .save-success-circle{background:#34c759;box-shadow:0 8px 32px #34c75973}.save-success--regen .save-success-circle{background:#007aff;box-shadow:0 8px 32px #007aff73}body.ts-overlay-open,body.ts-detail-open{position:fixed;width:100%;overflow:hidden}.glass-card.ts-fullscreen{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.glass-card.ts-fullscreen .training-step{overscroll-behavior:contain}.modal-overlay.show~.date-picker-overlay,.modal-overlay.show~.time-picker-overlay{z-index:9300!important}.ts-validation-hint{display:none;margin:12px 0 0;padding:14px 16px;background:#fff4e5;border:1px solid #FFD8A8;border-radius:14px;color:#7a4400;align-items:flex-start;gap:12px;box-shadow:0 4px 14px #ff950026;animation:tsHintIn .25s cubic-bezier(.2,.8,.2,1)}.ts-validation-hint.show{display:flex}.ts-vh-icon{color:#ff9500;flex-shrink:0;margin-top:1px}.ts-vh-content{flex:1;min-width:0}.ts-vh-title{font-weight:700;font-size:14px;margin-bottom:2px}.ts-vh-msg{font-size:13.5px;line-height:1.45}[data-theme=dark] .ts-validation-hint{background:#ff950024;border-color:#ff950059;color:#ffd7a6}@keyframes tsHintIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ts-field-pulse{animation:tsFieldPulse .55s ease-in-out 0s 3;border-radius:12px}@keyframes tsFieldPulse{0%{box-shadow:0 0 #ff95008c}50%{box-shadow:0 0 0 8px #ff950000}to{box-shadow:0 0 #ff950000}}@media (prefers-reduced-motion: reduce){.ts-validation-hint,.ts-field-pulse{animation:none}}.ts-validation-hint{position:fixed!important;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 78px);z-index:9250;max-width:560px;margin:0 auto!important}body.ts-overlay-open .ts-validation-hint{z-index:9350}@media (min-width: 600px){.ts-validation-hint{left:50%;right:auto;transform:translate(-50%);width:calc(100% - 32px);max-width:560px}}.coach-kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 14px}@media (min-width: 720px){.coach-kpi-grid{grid-template-columns:repeat(3,1fr)}}.coach-kpi-card{background:var(--card, #fff);border:1px solid var(--border, rgba(0,0,0,.06));border-radius:16px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:4px;box-shadow:0 2px 10px #1414280a;position:relative;overflow:hidden;min-height:96px}.coach-kpi-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--kpi-accent, #C8102E),transparent);opacity:.9}.coach-kpi-card.accent-purple{--kpi-accent: #8E44AD}.coach-kpi-card.accent-green{--kpi-accent: #16A34A}.coach-kpi-card.accent-blue{--kpi-accent: #2563EB}.coach-kpi-card.accent-teal{--kpi-accent: #0EA5A4}.coach-kpi-card.accent-gold{--kpi-accent: #D97706}.coach-kpi-card.accent-red{--kpi-accent: #DC2626}.coach-kpi-icon{font-size:18px;line-height:1}.coach-kpi-value{font-size:22px;font-weight:700;color:var(--text, #111);letter-spacing:-.01em;line-height:1.15;word-break:break-word}.coach-kpi-label{font-size:12px;color:var(--text-secondary, #6b7280);font-weight:500}[data-theme=dark] .coach-kpi-card{background:#ffffff0a;border-color:#ffffff14}[data-theme=dark] .coach-kpi-value{color:#f7f7fb}[data-theme=dark] .coach-kpi-label{color:#aab}.coach-kpi-tile{appearance:none;-webkit-appearance:none;background:var(--card, #fff);border:1px solid var(--border, rgba(0,0,0,.06));border-radius:18px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:4px;box-shadow:0 4px 14px #1414280f;position:relative;overflow:hidden;min-height:118px;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.coach-kpi-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--kpi-accent, #C8102E) 0%,transparent 60%);opacity:.08;pointer-events:none}.coach-kpi-tile:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--kpi-accent, #C8102E),color-mix(in oklab,var(--kpi-accent, #C8102E) 40%,transparent))}.coach-kpi-tile:hover{transform:translateY(-2px);box-shadow:0 8px 22px #1414281a;border-color:var(--kpi-accent, #C8102E)}.coach-kpi-tile:active{transform:translateY(0)}.coach-kpi-tile.kpi-purple{--kpi-accent: #8E44AD}.coach-kpi-tile.kpi-green{--kpi-accent: #16A34A}.coach-kpi-tile.kpi-gold{--kpi-accent: #D97706}.coach-kpi-tile.kpi-red{--kpi-accent: #DC2626}.coach-kpi-tile-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.coach-kpi-tile-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:color-mix(in oklab,var(--kpi-accent, #C8102E) 15%,transparent);font-size:18px;line-height:1}.coach-kpi-tile-arrow{color:var(--kpi-accent, #C8102E);font-size:22px;line-height:1;font-weight:700;opacity:.55;transition:transform .12s ease,opacity .12s ease}.coach-kpi-tile:hover .coach-kpi-tile-arrow{transform:translate(3px);opacity:1}.coach-kpi-tile-value{font-size:26px;font-weight:800;color:var(--text, #111);letter-spacing:-.02em;line-height:1.1;word-break:break-word}.coach-kpi-tile-value-sub{font-size:14px;font-weight:600;color:var(--text-secondary, #6b7280);letter-spacing:0}.coach-kpi-tile-top-name{font-size:16px;font-weight:700;color:var(--text, #111)}.coach-kpi-tile-label{font-size:12px;color:var(--text-secondary, #6b7280);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.coach-kpi-tile-sub{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-top:2px}[data-theme=dark] .coach-kpi-tile{background:#ffffff0a;border-color:#ffffff14}[data-theme=dark] .coach-kpi-tile-value,[data-theme=dark] .coach-kpi-tile-top-name{color:#f7f7fb}[data-theme=dark] .coach-kpi-tile-label{color:#aab}.kpi-detail-hint{font-size:12px;color:var(--text-secondary, #6b7280);margin-bottom:8px;font-weight:500}.kpi-detail-row{appearance:none;-webkit-appearance:none;width:100%;display:flex;align-items:center;gap:10px;background:var(--bg-card, #fff);border:1px solid var(--border, rgba(0,0,0,.06));border-radius:10px;padding:10px 12px;margin-bottom:6px;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color .12s,transform .1s}.kpi-detail-row:hover{border-color:var(--accent, #6366f1)}.kpi-detail-row:active{transform:scale(.99)}.kpi-detail-name{font-weight:600;flex:1}.kpi-detail-extra{font-size:11px}.kpi-detail-arrow{color:var(--text-tertiary);font-size:18px;font-weight:700}.kpi-status{display:inline-block;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:600}.kpi-status-active{background:#16a34a1f;color:#16a34a}.kpi-status-inactive{background:#dc26261f;color:#dc2626}.kpi-status-idle{background:#d977061f;color:#d97706}.kpi-status-gold{background:#d977062e;color:#b45309}.entry-detail-head{background:var(--bg-card, #fafafa);border:1px solid var(--border, rgba(0,0,0,.06));border-radius:10px;padding:10px 12px;margin-bottom:14px}.entry-detail-row{display:flex;justify-content:space-between;gap:10px;padding:4px 0;font-size:13px}.entry-detail-row+.entry-detail-row{border-top:1px dashed var(--border)}.entry-detail-label{color:var(--text-secondary);font-weight:500}.entry-detail-value{color:var(--text, #111);font-weight:600;text-align:right}.entry-detail-section{margin-bottom:14px}.entry-detail-section h4{font-size:13px;font-weight:700;margin:0 0 8px;color:var(--text, #111);text-transform:uppercase;letter-spacing:.03em}.entry-distance-row{background:var(--bg-card, #fafafa);border:1px solid var(--border, rgba(0,0,0,.06));border-radius:8px;padding:8px 10px;margin-bottom:6px}.entry-distance-head{font-size:13px;margin-bottom:4px}.entry-distance-times{display:flex;flex-wrap:wrap;gap:4px}.entry-distance-times .time-chip{display:inline-block;background:#fff;border:1px solid var(--border, rgba(0,0,0,.08));border-radius:6px;padding:3px 8px;font-size:12px;font-weight:500}[data-theme=dark] .entry-distance-times .time-chip{background:#ffffff0d}.entry-detail-notes{font-size:13px;color:var(--text-secondary);background:#6366f10f;border-left:3px solid var(--accent, #6366f1);padding:8px 10px;border-radius:0 8px 8px 0;white-space:pre-wrap}.entry-detail-meta{font-size:13px;color:var(--text-secondary);display:flex;gap:12px;flex-wrap:wrap}.entry-detail-pain{background:#dc26260d;border:1px solid rgba(220,38,38,.18);border-radius:10px;padding:10px 12px}.entry-pain-row{padding:4px 0;font-size:13px}.entry-pain-row+.entry-pain-row{border-top:1px dashed rgba(220,38,38,.18);margin-top:4px}.entry-pain-head{font-weight:600;margin-bottom:2px}.entry-detail-loading{text-align:center;color:var(--text-secondary);padding:20px;font-size:13px}#coach-hero .hero-greeting{font-size:22px}#coach-hero .hero-sub{font-size:13px}#coach-hero .hero-greeting-block{margin-bottom:6px}#coach-hero{padding-bottom:4px}#coach-hero{padding-top:calc(env(safe-area-inset-top,0px) + 64px)}body.has-fixed-topbar #coach-hero{padding-top:12px}.coach-an-explorer-sel{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border, rgba(0,0,0,.08));background:var(--card, #fff);color:var(--text, #111);font-size:14px;font-weight:500}.cae-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.cae-stat{display:flex;flex-direction:column;align-items:center;padding:12px 8px;background:#c8102e0f;border-radius:12px}.cae-stat-val{font-size:16px;font-weight:700;color:var(--text, #111)}.cae-stat-lbl{font-size:11px;color:var(--text-secondary, #6b7280);margin-top:2px}.cae-section{margin-top:12px}.cae-section-label{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.cae-chips{display:flex;flex-wrap:wrap;gap:6px}.cae-chip{background:var(--card, #fff);border:1px solid var(--border, rgba(0,0,0,.08));border-radius:999px;padding:6px 12px;font-size:12px;color:var(--text, #111)}[data-theme=dark] .cae-chip{background:#ffffff0a;border-color:#ffffff14}[data-theme=dark] .cae-stat{background:#ffffff0a}[data-theme=dark] .cae-stat-val{color:#f7f7fb}#garmin-analytics-section{display:flex;flex-direction:column;gap:0}.garmin-upload-area{display:flex;flex-direction:column;align-items:center;padding:28px 16px 20px;border:2px dashed var(--border, rgba(0,0,0,.12));border-radius:12px;margin:0 0 4px;transition:border-color .2s,background .2s;cursor:pointer}.garmin-upload-area.garmin-drag-over{border-color:var(--primary, #6366f1);background:#6366f10f}[data-theme=dark] .garmin-upload-area{border-color:#ffffff1f}[data-theme=dark] .garmin-upload-area.garmin-drag-over{background:#6366f11a}.garmin-upload-icon{font-size:36px;margin-bottom:8px}.garmin-upload-hint{font-size:15px;font-weight:600;color:var(--text, #111);margin:0 0 4px}.garmin-upload-sub{font-size:12px;color:var(--text-secondary, #6b7280);text-align:center;margin:0 0 14px;max-width:340px}.garmin-upload-btn{cursor:pointer;font-size:14px;padding:9px 22px}.garmin-file-info{padding:10px 4px 0;font-size:13px}.garmin-file-badge{display:inline-block;background:#10b9811f;color:#059669;border-radius:8px;padding:6px 12px;font-weight:600;font-size:13px}[data-theme=dark] .garmin-file-badge{background:#10b9812e;color:#34d399}.garmin-chart-hint{font-size:11px;color:var(--text-secondary, #6b7280);padding:0 16px 8px;font-style:italic}.garmin-pie-wrap{max-width:280px;margin:0 auto}@media (min-width: 640px){#garmin-charts-container{display:grid;grid-template-columns:1fr 1fr;gap:0}#garmin-charts-container .card:last-child:nth-child(odd){grid-column:span 2}}@media (max-width: 639px){.garmin-pie-wrap{max-width:220px}}#distance-blocks-container{margin-top:8px}.distance-block{background:var(--bg-card, #fff);border:1px solid var(--border, rgba(0,0,0,.08));border-radius:12px;padding:10px 12px;margin-bottom:10px}.distance-block-header{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px}.block-drag-handle{cursor:grab;background:transparent;border:none;font-size:1.2rem;line-height:1;color:var(--text-secondary, #888);padding:4px 6px;border-radius:6px;user-select:none;touch-action:none}.block-drag-handle:hover{background:#0000000d;color:var(--text-primary, #222)}.block-drag-handle:active{cursor:grabbing}.block-number{font-size:.82rem;font-weight:600;color:var(--text-secondary, #666);background:#0000000a;padding:3px 8px;border-radius:999px}.distance-block.dragging,.tempo-ind-block.dragging{opacity:.5;border:2px dashed var(--primary, #007AFF)}.intensity-info-btn{background:transparent;border:none;cursor:pointer;font-size:.95rem;color:var(--primary, #007AFF);padding:0 4px;margin-left:4px}.intensity-info-btn:hover{color:var(--primary-dark, #0051D5)}.distance-block-pill{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,var(--primary, #007AFF),var(--primary-dark, #0051D5));color:#fff;border:none;border-radius:999px;padding:6px 14px;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;box-shadow:0 2px 6px #007aff40}.distance-block-pill:hover{transform:translateY(-1px);box-shadow:0 4px 10px #007aff59}.distance-block-pill:active{transform:translateY(0)}.distance-block-num{font-size:1.05rem;font-weight:700}.distance-block-unit{opacity:.85;font-weight:500}.distance-block .btn-remove-block{background:transparent;border:1px solid var(--border, rgba(0,0,0,.12));color:var(--text-secondary, #6E6E73);width:28px;height:28px;border-radius:50%;font-size:1.1rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.distance-block .btn-remove-block:hover{background:var(--danger, #FF3B30);color:#fff;border-color:var(--danger, #FF3B30)}.distance-block-times{margin-bottom:6px}.distance-wheel-modal-content{max-width:320px;padding:18px 14px 14px;text-align:center}.distance-wheel-modal-content h3{margin:0 0 14px;font-size:1.05rem}.distance-wheel{position:relative;height:240px;overflow-y:scroll;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-top:1px solid var(--border, rgba(0,0,0,.06));border-bottom:1px solid var(--border, rgba(0,0,0,.06));background:linear-gradient(to bottom,rgba(0,0,0,.03),transparent 25%,transparent 75%,rgba(0,0,0,.03));mask-image:linear-gradient(to bottom,transparent 0%,#000 25%,#000 75%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 25%,#000 75%,transparent 100%)}.distance-wheel::-webkit-scrollbar{display:none}.distance-wheel-spacer{height:48px;scroll-snap-align:none}.distance-wheel-item{height:48px;line-height:48px;text-align:center;font-size:1.05rem;font-weight:500;color:var(--text-secondary, #6E6E73);scroll-snap-align:center;scroll-snap-stop:always;cursor:pointer;transition:transform .18s ease,color .18s ease,font-size .18s ease}.distance-wheel-item.active{color:var(--primary, #007AFF);font-size:1.4rem;font-weight:700;transform:scale(1.05)}.distance-wheel-overlay-mask{position:absolute;left:14px;right:14px;top:50%;height:48px;transform:translateY(-50%);pointer-events:none;border-top:1px solid rgba(0,122,255,.25);border-bottom:1px solid rgba(0,122,255,.25)}.distance-wheel-modal-content .modal-actions{display:flex;gap:8px;margin-top:14px}.distance-wheel-modal-content .modal-actions button{flex:1}.distance-wheel{overflow-x:hidden;touch-action:pan-y;overscroll-behavior:contain}.distance-wheel-item{height:56px;line-height:56px;font-size:1.4rem;font-weight:500;color:#b0b0b5}.distance-wheel-item.active{color:#1a1a1f;font-weight:700;font-size:1.4rem;transform:none}.distance-wheel-spacer{height:56px}.distance-wheel-overlay-mask{height:56px;border-top:2px solid rgba(0,0,0,.85);border-bottom:2px solid rgba(0,0,0,.85)}.distance-wheel-modal-content .modal-actions{display:flex;gap:10px;margin-top:18px}.distance-wheel-modal-content .modal-actions button{flex:1;display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:12px 16px;font-weight:600;min-height:44px;line-height:1.2}.resistance-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;user-select:none;font-weight:500;padding:6px 0}.resistance-toggle .resistance-checkbox{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.resistance-checkbox-visual{width:24px;height:24px;border-radius:6px;border:2px solid #C8C8CD;background:#fff;display:inline-flex;align-items:center;justify-content:center;transition:background .18s ease,border-color .18s ease,transform .12s ease;flex-shrink:0}.resistance-checkbox-visual svg{opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .18s cubic-bezier(.34,1.56,.64,1)}.resistance-checkbox:checked+.resistance-checkbox-visual svg{opacity:1;transform:scale(1)}.resistance-checkbox:focus-visible+.resistance-checkbox-visual{box-shadow:0 0 0 3px #34c75940}.resistance-toggle:hover .resistance-checkbox-visual{border-color:#34c759}.resistance-text{font-size:.95rem;color:var(--text-primary, #1A1A1F)}#resistance-weight-wrap input,#edit-resistance-weight-wrap input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--border, rgba(0,0,0,.12));border-radius:10px;font-size:1rem;background:var(--bg-card, #fff)}.resistance-badge{background:#34c75924!important;color:#1b7a3a!important;font-weight:600!important}.distance-wheel-frame{position:relative;margin:0 -2px}.distance-wheel-frame:before,.distance-wheel-frame:after{content:"";position:absolute;left:0;right:0;height:2px;background:#000000d9;pointer-events:none;z-index:2}.distance-wheel-frame:before{top:calc(50% - 28px)}.distance-wheel-frame:after{top:calc(50% + 26px)}.distance-wheel-overlay-mask{display:none!important}.distance-wheel{border-top:none;border-bottom:none;background:#fff;will-change:scroll-position;transform:translateZ(0)}.distance-wheel-item{height:56px;line-height:56px;font-size:1.35rem;font-weight:500;color:#b8b8bd;transition:color .18s ease,font-weight .18s ease}.distance-wheel-item.active{color:#1a1a1f;font-weight:700;font-size:1.35rem;transform:none}.distance-wheel-modal-content{padding:22px 22px 18px}.distance-wheel-modal-content h3{margin:0 0 12px;font-size:1.05rem;text-align:center}.resistance-row{display:flex;align-items:center;gap:8px}.resistance-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none;font-weight:500;padding:4px 0;flex:1;min-width:0}.resistance-checkbox-visual{width:18px;height:18px;border-radius:5px;border:1.5px solid #C8C8CD}.resistance-checkbox:checked+.resistance-checkbox-visual{background:#34c759;border-color:#34c759}.resistance-text{font-size:.85rem;color:var(--text-primary, #1A1A1F);line-height:1.3}.resistance-help-btn{width:22px;height:22px;min-width:22px;border-radius:50%;border:1.5px solid #C8C8CD;background:#fff;color:#6e6e73;font-size:.78rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;transition:background .15s ease,color .15s ease,border-color .15s ease;flex-shrink:0}.resistance-help-btn:hover{background:var(--primary, #007AFF);color:#fff;border-color:var(--primary, #007AFF)}.resistance-help-btn:focus-visible{outline:2px solid var(--primary, #007AFF);outline-offset:2px}.ts-tile[data-type=Sprint] .ts-tile-icon{--tile-bg: rgba(200,16,46,.1);--tile-fg: #C8102E}.ts-tile[data-type=Tempolauf] .ts-tile-icon{--tile-bg: rgba(0,122,255,.1);--tile-fg: #007AFF}.ts-tile[data-type="80m L\e4ufe"] .ts-tile-icon{--tile-bg: rgba(129,140,248,.16);--tile-fg: #5B5FCF}.ts-tile[data-type=Sprint]:hover{border-color:#c8102e66}.ts-tile[data-type=Tempolauf]:hover{border-color:#007aff66}.ts-tile[data-type="80m L\e4ufe"]:hover{border-color:#818cf88c}#analytics-resistance-group,#analytics-intensity-group,#analytics-sprint-cat-group{margin-top:18px!important}.distance-block-count{margin-top:8px;padding:8px 10px;background:#8e8e930f;border-radius:10px}.distance-block-count .label-hint{font-size:.78rem;color:var(--text-secondary, #6E6E73);margin-bottom:4px}.distance-block-count-input{width:100%;padding:8px 10px;border:1.5px solid var(--border, #E5E5EA);border-radius:8px;font-size:.95rem;background:var(--bg-elevated, #fff);color:var(--text-primary, #1A1A1F);box-sizing:border-box}.distance-block-count-input:focus{outline:none;border-color:var(--primary, #007AFF)}.tour-overlay{position:fixed;inset:0;z-index:99999;pointer-events:auto}.tour-overlay:before{content:"";position:absolute;inset:0;background:#080c168c;z-index:1;animation:tour-fade-in .22s ease;pointer-events:inherit}.tour-overlay--passthrough{pointer-events:none}.tour-overlay--passthrough .tour-tooltip{pointer-events:auto}.tour-spotlight{position:absolute;border-radius:14px;box-shadow:0 0 0 9999px #080c169e,0 0 0 3px #c8102ef2,0 8px 28px #c8102e73;background:transparent;z-index:2;pointer-events:none;transition:top .22s ease,left .22s ease,width .22s ease,height .22s ease;animation:tour-spot-pulse 1.6s ease-in-out infinite}@keyframes tour-spot-pulse{0%,to{box-shadow:0 0 0 9999px #080c169e,0 0 0 3px #c8102ef2,0 8px 28px #c8102e73}50%{box-shadow:0 0 0 9999px #080c169e,0 0 0 6px #c8102e8c,0 12px 36px #c8102e8c}}.tour-spotlight--interactive{cursor:pointer;pointer-events:none}.tour-tooltip{position:absolute;z-index:3;width:min(420px,calc(100vw - 24px));background:#fff;color:#1a1d2b;border-radius:18px;padding:18px 18px 14px;box-shadow:0 18px 48px #00000059,0 2px 8px #0000002e;animation:tour-pop-in .26s cubic-bezier(.2,.9,.3,1.2);font-family:inherit}.tour-tooltip--centered{top:50%!important;left:50%!important;transform:translate(-50%,-50%)}.tour-tooltip__progress{font-size:11px;font-weight:700;letter-spacing:.04em;color:#c8102e;text-transform:uppercase;margin-bottom:8px}.tour-tooltip__title{margin:0 0 8px;font-size:18px;font-weight:700;color:#1a1d2b;line-height:1.25}.tour-tooltip__body{margin:0 0 16px;font-size:14px;line-height:1.5;color:#4a5066}.tour-tooltip__actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.tour-tooltip__nav{display:flex;gap:8px}.tour-btn{border:none;border-radius:10px;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:transform .1s ease,opacity .15s ease,background .15s ease}.tour-btn:active{transform:scale(.96)}.tour-btn--primary{background:#c8102e;color:#fff;box-shadow:0 4px 12px #c8102e52}.tour-btn--primary:hover{background:#a80d27}.tour-btn--primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.tour-btn--ghost{background:transparent;color:#6b7280}.tour-btn--ghost:hover{background:#f3f4f6;color:#1a1d2b}@keyframes tour-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tour-pop-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.tour-tooltip--centered{animation:tour-pop-in-center .26s cubic-bezier(.2,.9,.3,1.2)}@keyframes tour-pop-in-center{0%{opacity:0;transform:translate(-50%,-46%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tour-tooltip__hint{display:flex;align-items:center;gap:6px;margin:-4px 0 12px;padding:8px 10px;background:#c8102e14;border-left:3px solid #C8102E;border-radius:6px;font-size:12px;font-weight:600;color:#c8102e}.tour-tooltip__hint:before{content:"\2192";font-size:14px}@media (prefers-color-scheme: dark){.tour-tooltip{background:#1f2330;color:#f3f4f6}.tour-tooltip__title{color:#f9fafb}.tour-tooltip__body{color:#c8cbd6}.tour-btn--ghost{color:#9ca3af}.tour-btn--ghost:hover{background:#2b303f;color:#f9fafb}.tour-tooltip__hint{background:#c8102e2e;color:#ff6b80}}.body-analysis-entry{position:relative;background:linear-gradient(135deg,#c8102e0a,#c8102e00);border:1px solid rgba(200,16,46,.14)}.body-analysis-entry .card-header h2{display:flex;align-items:center;gap:10px}.body-analysis-desc{font-size:13px;line-height:1.55;color:var(--text-secondary, #6E6E73);margin:6px 0 14px}.body-analysis-open-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--accent-color, #C8102E);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;box-shadow:0 4px 14px #c8102e38}.body-analysis-open-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #c8102e52}.body-analysis-open-btn .arrow{font-size:18px;transition:transform .15s ease}.body-analysis-open-btn:hover .arrow{transform:translate(3px)}.body-analysis-entry--outside{margin-top:16px}#anatomy-section{display:flex;flex-direction:column;min-height:70vh;gap:10px}.anatomy-topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:14px}.anatomy-topbar-title{display:flex;flex-direction:column;gap:2px}.anatomy-eyebrow{font-family:JetBrains Mono,monospace,ui-monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-color, #C8102E)}.anatomy-topbar-title strong{font-size:16px;font-weight:700;color:var(--text-primary, #15151a)}.anatomy-topbar-back{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-color, #e5e7eb);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary, #15151a);transition:all .15s}.anatomy-topbar-back:hover{border-color:var(--accent-color, #C8102E);color:var(--accent-color, #C8102E)}.anatomy-mode-bar{display:flex;gap:6px;flex-wrap:wrap;padding:6px;background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:999px;align-self:center}.anatomy-mode-btn,.anatomy-rotate-btn{font-family:JetBrains Mono,monospace,ui-monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:8px 14px;border-radius:999px;border:none;background:transparent;color:var(--text-secondary, #6E6E73);cursor:pointer;transition:all .15s}.anatomy-mode-btn:hover,.anatomy-rotate-btn:hover{color:var(--text-primary, #15151a)}.anatomy-mode-btn.active{background:var(--text-primary, #15151a);color:#fff}.anatomy-rotate-btn[data-rot=on]{background:var(--accent-color, #C8102E);color:#fff}.anatomy-stage-wrap{display:grid;grid-template-columns:1fr 360px;gap:12px;min-height:540px}@media (max-width: 860px){.anatomy-stage-wrap{grid-template-columns:1fr}}.anatomy-canvas-host{position:relative;background:radial-gradient(ellipse at 50% 60%,#fafafa,#f0f0f1 70%,#e8e8ea);border:1px solid var(--border-color, #e5e7eb);border-radius:14px;min-height:540px;overflow:hidden;touch-action:none}[data-theme=dark] .anatomy-canvas-host{background:radial-gradient(ellipse at 50% 60%,#1d2030,#14161f 70%,#0d0e15)}.anatomy-side-panel{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:14px;padding:18px;overflow-y:auto;min-height:540px;max-height:720px}.anatomy-empty p{font-size:13px;line-height:1.6;color:var(--text-secondary, #6E6E73);margin:0 0 16px}.anatomy-legend{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.anatomy-legend li{display:flex;align-items:center;gap:10px;font-family:JetBrains Mono,monospace,ui-monospace;font-size:11px;letter-spacing:.04em;color:var(--text-secondary, #6E6E73)}.anatomy-legend .dot{width:14px;height:14px;border-radius:50%;box-shadow:0 0 0 3px #d8202e1a}.anatomy-detail-eyebrow{font-family:JetBrains Mono,monospace,ui-monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-color, #C8102E)}.anatomy-detail-title{font-size:24px;font-weight:800;line-height:1.1;margin:4px 0;color:var(--text-primary, #15151a)}.anatomy-detail-latin{font-style:italic;color:var(--text-secondary, #6E6E73);font-size:12px;margin-bottom:14px}.anatomy-detail-section{margin-top:18px}.anatomy-detail-section h3{font-family:JetBrains Mono,monospace,ui-monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-secondary, #6E6E73);margin:0 0 8px}.anatomy-detail-section p{font-size:13px;line-height:1.55;color:var(--text-primary, #15151a);margin:0}.anatomy-chips{display:flex;flex-wrap:wrap;gap:6px}.anatomy-chip{display:inline-flex;align-items:center;padding:5px 10px;border:1px solid var(--text-primary, #15151a);border-radius:999px;font-family:JetBrains Mono,monospace,ui-monospace;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.anatomy-chip.primary{background:var(--accent-color, #C8102E);color:#fff;border-color:var(--accent-color, #C8102E)}.anatomy-exercises{display:flex;flex-direction:column;gap:8px}.anatomy-exercise{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 12px;background:#00000006;border:1px solid var(--border-color, #e5e7eb);border-radius:10px}.anatomy-exercise .name{font-weight:700;font-size:13px}.anatomy-exercise .meta{font-size:11px;color:var(--text-secondary, #6E6E73);margin-top:2px}.anatomy-exercise .dose{font-family:JetBrains Mono,monospace,ui-monospace;font-size:10px;background:#fff;border:1px solid var(--border-color, #e5e7eb);padding:5px 8px;border-radius:6px;white-space:nowrap}.anatomy-trainstatus{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.anatomy-trainstatus .ts{background:#00000006;border:1px solid var(--border-color, #e5e7eb);border-radius:10px;padding:10px}.anatomy-trainstatus .ts .lbl{font-family:JetBrains Mono,monospace,ui-monospace;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary, #6E6E73)}.anatomy-trainstatus .ts .val{font-size:22px;font-weight:800;line-height:1;margin-top:6px;color:var(--text-primary, #15151a)}.anatomy-trainstatus .ts .val.hot{color:var(--accent-color, #C8102E)}.anatomy-bottom-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:10px}.anatomy-bottom-stats .as-stat{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:14px}.anatomy-bottom-stats .as-stat .lbl{font-family:JetBrains Mono,monospace,ui-monospace;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-secondary, #6E6E73)}.anatomy-bottom-stats .as-stat .val{font-size:26px;font-weight:800;line-height:1;margin-top:8px;color:var(--text-primary, #15151a)}[data-theme=dark] .anatomy-side-panel,[data-theme=dark] .anatomy-topbar,[data-theme=dark] .anatomy-mode-bar,[data-theme=dark] .anatomy-bottom-stats .as-stat{background:#1f2330;border-color:#2b303f}[data-theme=dark] .anatomy-detail-title,[data-theme=dark] .anatomy-detail-section p,[data-theme=dark] .anatomy-trainstatus .ts .val,[data-theme=dark] .anatomy-bottom-stats .as-stat .val{color:#f3f4f6}[data-theme=dark] .anatomy-exercise,[data-theme=dark] .anatomy-trainstatus .ts{background:#ffffff08;border-color:#2b303f}[data-theme=dark] .anatomy-exercise .dose{background:#15151a;border-color:#2b303f;color:#f3f4f6}.analytics-hero-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.analytics-hero-card{margin:0!important}@media (max-width: 760px){.analytics-hero-row{grid-template-columns:1fr;gap:12px}}@media (max-width: 640px){.anatomy-topbar{padding:10px 12px}.anatomy-topbar-title strong{font-size:14px}.anatomy-mode-bar{gap:4px;padding:4px;flex-wrap:wrap}.anatomy-mode-btn,.anatomy-rotate-btn{padding:6px 10px;font-size:11px}.anatomy-canvas-host{min-height:56vh;max-height:64vh}.anatomy-side-panel{min-height:auto;max-height:none;padding:14px}.anatomy-stage-wrap{gap:10px}.anatomy-bottom-stats{grid-template-columns:1fr 1fr;gap:8px}.body-analysis-entry{padding:14px}.body-analysis-open-btn{padding:12px 14px;font-size:13px}.body-analysis-desc{font-size:13px;line-height:1.4}}@media (max-width: 380px){.anatomy-canvas-host{min-height:48vh}.anatomy-bottom-stats{grid-template-columns:1fr}}html,body{overflow-x:hidden}.login-trust-badge{margin:8px 0 0;text-align:center;font-size:11.5px;color:#64748b;letter-spacing:.02em}.login-code-toggle-row{margin:12px 0 0;text-align:center;font-size:12.5px}.login-code-toggle-row a{color:#1d4ed8;text-decoration:none;border-bottom:1px dashed rgba(29,78,216,.45)}.login-code-toggle-row a:hover{border-bottom-style:solid}.stay-row-checkbox{display:flex;align-items:center;gap:10px;margin:8px 0 14px;cursor:pointer;user-select:none;font-size:14px;color:var(--text)}.stay-row-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#c8102e;cursor:pointer;margin:0}.stay-row-checkbox .stay-label{font-weight:500}.aie-anchor-hint{display:inline-block;margin-left:6px;font-size:11px;font-weight:400;color:#94a3b8;letter-spacing:.01em}.aie-empty-cta{display:inline-block;margin-top:6px;font-size:13px;font-weight:600;color:#1d4ed8}.login-forgot-pw{margin:6px 0 0;text-align:center;font-size:13px}.coach-note-editor{background:var(--bg-elevated, rgba(0,122,255,.04));border:1px solid var(--border, rgba(0,122,255,.18));border-radius:14px;padding:16px;margin:14px 0}.coach-note-editor h4{margin:0 0 10px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--text)}.coach-note-status{font-size:11px;font-weight:600;padding:2px 9px;border-radius:10px;background:#7f7f7f2e;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.coach-note-status.shared{background:#34c75938;color:#1b8a3a}.coach-note-text{width:100%;box-sizing:border-box;min-height:80px;resize:vertical;padding:11px 13px;border:1px solid var(--border);border-radius:10px;font:inherit;font-size:14px;line-height:1.5;background:var(--bg-input, #fff);color:var(--text)}.coach-note-text:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:transparent}.coach-note-share-toggle{display:flex;align-items:flex-start;gap:12px;width:100%;margin:12px 0 4px;padding:12px 14px;background:var(--bg-card, #fff);color:var(--text);border:1.5px solid var(--border);border-radius:12px;cursor:pointer;text-align:left;font:inherit;transition:all .18s ease}.coach-note-share-toggle:hover{border-color:var(--success, #34C759);background:#34c7590a}.coach-note-share-toggle.is-on{border-color:var(--success, #34C759);background:#34c7591a}.coach-note-share-toggle:disabled{opacity:.55;cursor:not-allowed}.coach-note-share-check{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:transparent;border:2px solid var(--border);display:inline-flex;align-items:center;justify-content:center;color:transparent;transition:all .2s ease}.coach-note-share-toggle.is-on .coach-note-share-check{background:#34c759;border-color:#34c759;color:#fff;box-shadow:0 2px 8px #34c75966}.coach-note-share-texts{display:flex;flex-direction:column;gap:2px}.coach-note-share-title{font-size:14px;font-weight:600;color:var(--text)}.coach-note-share-toggle.is-on .coach-note-share-title{color:#1b8a3a}.coach-note-share-hint{font-size:12px;color:var(--text-secondary);line-height:1.4}.coach-note-actions{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.coach-note-actions .btn-primary{width:auto;padding:9px 20px;font-size:13.5px;margin-top:0}.coach-note-actions .btn-ghost{margin:0;padding:8px 14px;font-size:13px;background:transparent;border:1.5px solid var(--border);border-radius:10px;color:var(--danger, #e53935)}.coach-note-actions .btn-ghost:hover{background:#e5393514;border-color:var(--danger, #e53935)}.coach-note-feedback{font-size:12.5px;color:var(--text-secondary);font-weight:500}[data-theme=dark] .coach-note-editor{background:#ffffff08;border-color:#ffffff1f}[data-theme=dark] .coach-note-status{background:#ffffff14;color:var(--text-secondary)}[data-theme=dark] .coach-note-status.shared{background:#30d15833;color:#6fe49a}[data-theme=dark] .coach-note-text{background:var(--bg-input);color:var(--text);border-color:var(--border-light)}[data-theme=dark] .coach-note-share-toggle{background:var(--bg-card);color:var(--text);border-color:var(--border-light)}[data-theme=dark] .coach-note-share-toggle:hover{background:#30d1581a}[data-theme=dark] .coach-note-share-toggle.is-on{background:#30d15829;border-color:#30d158}[data-theme=dark] .coach-note-share-toggle.is-on .coach-note-share-title{color:#6fe49a}.ts-detail-coach-note{margin:12px 16px 4px;padding:14px 16px;background:linear-gradient(135deg,#ff3b3014,#ff95000f);border-left:4px solid #FF3B30;border-radius:10px}.ts-detail-coach-note-head{font-size:12.5px;font-weight:700;color:#c0392b;letter-spacing:.2px;margin-bottom:6px;text-transform:uppercase}.ts-detail-coach-note-body{font-size:14.5px;line-height:1.5;color:var(--text);white-space:pre-wrap;word-break:break-word}[data-theme=dark] .ts-detail-coach-note{background:linear-gradient(135deg,#ff453a2e,#ff9f0a1a);border-left-color:#ff6961}[data-theme=dark] .ts-detail-coach-note-head{color:#ff8a80}.coach-note-dot{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:11px;background:#ff3b30;color:#fff;border-radius:50%;line-height:1;margin-left:6px;box-shadow:0 1px 2px #ff3b3059;flex-shrink:0}.coach-note-dot.shared{background:#34c759;box-shadow:0 1px 2px #34c75959}#training-list .coach-note-dot{vertical-align:middle}[data-theme=dark] .toggle-btn{color:var(--text-secondary);border-color:var(--border-light)}[data-theme=dark] .toggle-btn:hover:not(.active){background:#ffffff0a;border-color:var(--border-light);color:var(--text)}[data-theme=dark] .toggle-btn.active{background:#ff3b572e;border-color:var(--primary);color:var(--primary-light)}[data-theme=dark] .btn-ghost{border-color:var(--border-light);color:var(--primary-light)}[data-theme=dark] .btn-ghost:hover{border-color:var(--primary);background:#ff3b571a;color:#fff}[data-theme=dark] .btn-ghost-sm{border-color:var(--border-light)}[data-theme=dark] .btn-secondary{background:var(--bg-elevated)!important;color:var(--text)!important;border:1.5px solid var(--border-light)!important}[data-theme=dark] .btn-secondary:hover{background:var(--bg-card-hover)!important;border-color:var(--primary)!important}[data-theme=dark] .btn-icon,[data-theme=dark] .modal-close,[data-theme=dark] .close-btn{color:var(--text)!important;background:#ffffff0f!important}[data-theme=dark] .btn-icon:hover,[data-theme=dark] .modal-close:hover,[data-theme=dark] .close-btn:hover{background:#ffffff1f!important}[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator,[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.85)}[data-theme=dark] .time-chip,[data-theme=dark] .kraft-chip,[data-theme=dark] .meta-chip{background:#ffffff0f;color:var(--text);border-color:#ffffff1a}[data-theme=dark] button:disabled,[data-theme=dark] .btn-primary:disabled,[data-theme=dark] .btn-ghost:disabled{opacity:.45;cursor:not-allowed}.lauf-order-badge{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:3px 9px;margin-right:6px;background:var(--primary);color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em;border-radius:999px;text-align:center}.lauf-pause-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#ff9f0a1f;color:#c77700;font-size:12px;font-weight:600;border-radius:8px;border:1px dashed rgba(255,159,10,.45)}.lauf-pause-row{margin-top:6px;padding-top:6px;border-top:1px dashed var(--border-light)}.lauf-row{position:relative}.time-chip-empty{background:#9696961a!important;color:var(--text-secondary)!important;font-style:italic;border:1px dashed var(--border-light)!important}.skip-time-row,.tempo-ind-skip-row,.edit-ti-skip-row,.distance-block-skip-row,.edit-db-skip-row{display:flex!important;align-items:center;gap:12px;padding:10px 14px;margin:12px 0 8px;background:#00000008;border-radius:10px;border:1.5px solid rgba(0,0,0,.1);cursor:pointer;user-select:none;font-size:13px;color:var(--text);transition:background .2s,border-color .2s,box-shadow .2s}.skip-time-row:hover,.tempo-ind-skip-row:hover,.edit-ti-skip-row:hover,.distance-block-skip-row:hover,.edit-db-skip-row:hover{background:#0000000f;border-color:#0000002e}.skip-time-row:has(input:checked),.tempo-ind-skip-row:has(input:checked),.edit-ti-skip-row:has(input:checked),.distance-block-skip-row:has(input:checked),.edit-db-skip-row:has(input:checked){background:#c8102e14;border-color:var(--primary);box-shadow:0 2px 10px #c8102e26}.skip-time-row:has(input:checked) strong,.tempo-ind-skip-row:has(input:checked) strong,.edit-ti-skip-row:has(input:checked) strong,.distance-block-skip-row:has(input:checked) strong,.edit-db-skip-row:has(input:checked) strong{color:var(--primary)}.skip-time-row input[type=checkbox],.tempo-ind-skip-row input[type=checkbox],.edit-ti-skip-row input[type=checkbox],.distance-block-skip-row input[type=checkbox],.edit-db-skip-row input[type=checkbox]{appearance:none;-webkit-appearance:none;width:42px!important;height:24px!important;background:#0003;border-radius:12px;position:relative;cursor:pointer;transition:background .2s;flex-shrink:0;margin:0;border:none;outline:none;accent-color:var(--primary)}.skip-time-row input[type=checkbox]:before,.tempo-ind-skip-row input[type=checkbox]:before,.edit-ti-skip-row input[type=checkbox]:before,.distance-block-skip-row input[type=checkbox]:before,.edit-db-skip-row input[type=checkbox]:before{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s,background .2s;box-shadow:0 1px 3px #00000040}.skip-time-row input[type=checkbox]:checked,.tempo-ind-skip-row input[type=checkbox]:checked,.edit-ti-skip-row input[type=checkbox]:checked,.distance-block-skip-row input[type=checkbox]:checked,.edit-db-skip-row input[type=checkbox]:checked{background:var(--primary)}.skip-time-row input[type=checkbox]:checked:before,.tempo-ind-skip-row input[type=checkbox]:checked:before,.edit-ti-skip-row input[type=checkbox]:checked:before,.distance-block-skip-row input[type=checkbox]:checked:before,.edit-db-skip-row input[type=checkbox]:checked:before{transform:translate(18px)}.skip-time-row strong{font-weight:600}.skip-time-hint{margin:-4px 2px 8px;font-size:11.5px;color:var(--text-secondary);font-style:italic;line-height:1.4;padding:0 2px}.skip-time-hint strong{font-style:normal;font-weight:600;color:var(--text)}[data-theme=dark] .lauf-pause-badge{background:#ff9f0a2e;color:#ffb454;border-color:#ff9f0a66}[data-theme=dark] .time-chip-empty{background:#ffffff0a!important;color:#ffffff8c!important;border-color:#ffffff1f!important}[data-theme=dark] .skip-time-row,[data-theme=dark] .tempo-ind-skip-row,[data-theme=dark] .edit-ti-skip-row,[data-theme=dark] .distance-block-skip-row,[data-theme=dark] .edit-db-skip-row{background:#ffffff0a;border-color:#ffffff1a;color:var(--text)}[data-theme=dark] .skip-time-row:hover,[data-theme=dark] .tempo-ind-skip-row:hover,[data-theme=dark] .edit-ti-skip-row:hover,[data-theme=dark] .distance-block-skip-row:hover,[data-theme=dark] .edit-db-skip-row:hover{background:#ffffff14;border-color:#ffffff2e}[data-theme=dark] .skip-time-row:has(input:checked),[data-theme=dark] .tempo-ind-skip-row:has(input:checked),[data-theme=dark] .edit-ti-skip-row:has(input:checked),[data-theme=dark] .distance-block-skip-row:has(input:checked),[data-theme=dark] .edit-db-skip-row:has(input:checked){background:#ff3b571f;border-color:var(--primary);box-shadow:0 2px 12px #ff3b5733}[data-theme=dark] .skip-time-row input[type=checkbox],[data-theme=dark] .tempo-ind-skip-row input[type=checkbox],[data-theme=dark] .edit-ti-skip-row input[type=checkbox],[data-theme=dark] .distance-block-skip-row input[type=checkbox],[data-theme=dark] .edit-db-skip-row input[type=checkbox]{background:#ffffff2e}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}.coach-tab-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.ts-step-bar{min-height:48px;margin-bottom:20px;text-transform:none;letter-spacing:0}.ts-step-item{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text-muted)}.ts-step-copy{display:flex;flex-direction:column;min-width:0;line-height:1.15}.ts-step-copy strong{font-size:12px;color:var(--text-secondary)}.ts-step-copy small{margin-top:3px;font-size:10.5px;font-weight:500;color:var(--text-muted)}.ts-step-item.active .ts-step-copy strong{color:var(--primary)}.ts-step-dot.done{background:color-mix(in srgb,var(--primary) 16%,var(--bg-input));color:var(--primary)}.ts-step-dot.done:before{content:"\2713"}.ts-step-dot.done{font-size:0}.ts-step-dot.done:before{font-size:12px}.ux-invalid{border-color:var(--danger)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 18%,transparent)!important}.ux-field-error{margin:7px 2px 0;color:var(--danger);font-size:12px;font-weight:600;line-height:1.35}.ts-cta-card.has-draft{border-color:color-mix(in srgb,var(--primary) 34%,var(--border))}.ts-cta-card.has-draft .ts-cta-icon{background:color-mix(in srgb,var(--primary) 14%,var(--bg-card))}.ts-draft-note{display:inline-flex;align-items:center;gap:6px;width:fit-content;color:var(--primary);font-size:12px;font-weight:700}.ts-draft-note:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}@media (max-width: 420px){.coach-tab-nav{padding-left:4px;padding-right:4px}.coach-tab-nav .tab-btn{min-width:0;font-size:9.5px}.coach-tab-nav .tab-icon{transform:scale(.92)}.ts-step-copy small{display:none}.ts-step-divider{min-width:18px}}@media (pointer: coarse){button,input[type=button],input[type=submit],select{min-height:44px}.ts-info-btn{min-width:44px;min-height:44px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
