@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700;800&family=Barlow:wght@300;400;500;600;700&display=swap";:root{--bg-base:#0a0d14;--bg-surface:#12151f;--bg-card:#1a1e2e;--bg-hover:#242940;--bg-glass:#1a1e2eb3;--accent:#f97316;--accent-dim:#c2410c;--accent-glow:#f9731626;--accent-bright:#fb923c;--accent-intense:#ea580c;--lime:#84cc16;--lime-glow:#84cc1626;--cyan:#22d3ee;--cyan-glow:#22d3ee1f;--danger:#ef4444;--danger-glow:#ef44441f;--warning:#f59e0b;--warning-glow:#f59e0b1f;--blue:#3b82f6;--success:#22c55e;--success-glow:#22c55e1f;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--border:#ffffff0f;--border-hover:#ffffff1f;--radius:14px;--radius-sm:8px;--radius-lg:20px;--shadow:0 8px 32px #00000080;--shadow-lg:0 16px 48px #0009;--transition:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--font:"Barlow", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Barlow Condensed", -apple-system, BlinkMacSystemFont, sans-serif}.progress-gradient{--stop-1:var(--accent);--stop-2:var(--lime)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:15px}body{font-family:var(--font);background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}#root{min-height:100vh}.layout{grid-template:"header header"64px"sidebar main"1fr/280px 1fr;min-height:100vh;display:grid}header{background:var(--bg-surface);border-bottom:1px solid var(--border);z-index:100;-webkit-backdrop-filter:blur(16px);grid-area:header;align-items:center;gap:14px;padding:0 28px;display:flex;position:sticky;top:0}header .logo{background:linear-gradient(135deg, var(--accent), var(--lime));-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;font-size:1.4rem;font-weight:800}header .logo-icon{font-size:1.6rem}header .subtitle{color:var(--text-muted);margin-left:auto;font-size:.78rem;font-weight:500}.lang-selector-wrapper{position:relative}.lang-selector{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);transition:all var(--transition);align-items:center;gap:6px;padding:6px 10px;display:flex}.lang-selector:hover{border-color:var(--accent-dim);background:var(--bg-hover)}.lang-selector:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.lang-icon{color:var(--accent);align-items:center;display:flex}.lang-select{color:var(--text-primary);font-size:.85rem;font-weight:600;font-family:var(--font);cursor:pointer;appearance:none;background:0 0;border:none;outline:none;padding:0 4px 0 0}.lang-select option{background:var(--bg-surface);color:var(--text-primary);padding:8px}.lang-chevron{color:var(--text-muted);pointer-events:none;align-items:center;display:flex}.model-status-inline{color:var(--text-muted);align-items:center;gap:8px;margin-left:16px;font-size:.75rem;display:flex}.model-status-inline .status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.model-status-inline .status-dot.loading{background:var(--warning);animation:1.5s infinite pulse}.model-status-inline .status-dot.ready{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.model-status-inline .status-dot.error{background:var(--danger)}.model-status-inline .status-dot.idle{background:var(--text-muted)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}aside{background:var(--bg-surface);border-right:1px solid var(--border);flex-direction:column;grid-area:sidebar;gap:6px;padding:24px 16px;display:flex;overflow-y:auto}.sidebar-label{letter-spacing:.14em;color:var(--text-muted);text-transform:uppercase;margin-top:4px;margin-bottom:6px;padding:0 10px;font-size:.65rem;font-weight:700}.plan-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition), color var(--transition);color:var(--text-secondary);border:1px solid #0000;align-items:center;gap:10px;padding:10px 12px;font-size:.88rem;text-decoration:none;display:flex}.plan-item:hover{background:var(--bg-hover);color:var(--text-primary)}.plan-item.active{background:var(--accent-glow);color:var(--accent);border-color:#f9731626;font-weight:600}.plan-item .plan-icon{opacity:.65;font-size:1rem}.plan-item .plan-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.btn-new-plan{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--accent), var(--accent-intense));color:#fff;cursor:pointer;transition:opacity var(--transition), transform var(--transition), box-shadow var(--transition);border:none;justify-content:center;align-items:center;gap:8px;margin-top:auto;padding:12px;font-size:.88rem;font-weight:700;display:flex}.btn-new-plan:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 20px #f9731666}main{flex-direction:column;grid-area:main;gap:24px;padding:32px 44px;display:flex;overflow-y:auto}.empty-state{color:var(--text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:80px 0;display:flex}.empty-state .empty-icon{opacity:.3;font-size:4rem}.empty-state h2{color:var(--text-secondary);font-size:1.2rem;font-weight:600}.empty-state p{font-size:.875rem}.plan-editor{flex-direction:column;gap:22px;display:flex}.plan-header{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.plan-title-input{border:none;border-bottom:2px solid var(--border);color:var(--text-primary);transition:border-color var(--transition);letter-spacing:-.01em;background:0 0;outline:none;flex:1;min-width:200px;padding:8px 4px;font-size:1.5rem;font-weight:700}.plan-title-input:focus{border-bottom-color:var(--accent)}.plan-title-input::placeholder{color:var(--text-muted);font-weight:400}.btn-group{gap:8px;margin-left:auto;display:flex}.exercises-container{flex-direction:column;gap:12px;display:flex}.section-header{justify-content:space-between;align-items:center;display:flex}.section-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;font-weight:700}.exercise-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);grid-template-columns:1fr auto;gap:14px;padding:18px 20px;animation:.25s slideIn;display:grid}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.exercise-card:hover{border-color:#f9731640;transform:translateY(-1px);box-shadow:0 4px 24px #f973161a}.exercise-card.dragging{opacity:.5;border-color:var(--accent)}.exercise-fields{grid-template-columns:2fr 1fr 1fr 1fr 1.5fr;align-items:end;gap:12px;display:grid}.field-group{flex-direction:column;gap:5px;display:flex}.field-group label{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:600}.field-group input{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.88rem;font-family:var(--font);transition:border-color var(--transition), box-shadow var(--transition);outline:none;width:100%;padding:9px 11px}.field-group input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #39d98a14}.exercise-actions{align-items:start;gap:8px;padding-top:24px;display:flex}.tempo-inputs{align-items:center;gap:4px;display:flex}.tempo-inputs input{text-align:center;width:48px;padding:9px 4px}.tempo-sep{color:var(--text-muted);font-size:.9rem;font-weight:300}.action-panels{flex-direction:column;gap:16px;display:flex}.audio-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:20px;padding:22px 26px;display:flex;position:relative;overflow:hidden}.audio-panel:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-dim), transparent);height:1px;position:absolute;top:0;left:0;right:0}.audio-panel .audio-info{flex:1}.audio-panel .audio-info h3{font-size:.95rem;font-weight:600}.audio-panel .audio-info p{color:var(--text-muted);margin-top:3px;font-size:.8rem}.report-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:20px;padding:22px 26px;display:flex}.report-panel .audio-info{flex:1}.report-panel .audio-info h3{font-size:.95rem;font-weight:600}.report-panel .audio-info p{color:var(--text-muted);margin-top:3px;font-size:.8rem}.workout-runner{background:linear-gradient(180deg, var(--bg-card), var(--bg-surface));border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;align-items:center;gap:28px;padding:36px 40px;display:flex;position:relative;overflow:hidden}.workout-runner:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);border-radius:2px;height:2px;position:absolute;top:-1px;left:20%;right:20%}.workout-phase-label{text-align:center;background:linear-gradient(135deg, var(--text-primary), var(--accent-bright));-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;justify-content:center;align-items:center;min-height:2.4em;font-size:1.6rem;font-weight:700;display:flex}.workout-progress{width:100%;max-width:500px}.workout-progress-bar{background:var(--bg-hover);border-radius:3px;width:100%;height:6px;overflow:hidden}.workout-progress-fill{background:linear-gradient(90deg, var(--accent), var(--lime));border-radius:3px;height:100%;transition:width .3s}.workout-progress-text{text-align:center;color:var(--text-muted);margin-top:8px;font-size:.75rem}.workout-controls{gap:12px;display:flex}.workout-controls .btn{border-radius:var(--radius);padding:12px 28px;font-size:.95rem}.btn{border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;font-family:var(--font);cursor:pointer;transition:all var(--transition);white-space:nowrap;border:none;align-items:center;gap:7px;padding:9px 18px;display:inline-flex;position:relative}.btn:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-intense));color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 4px 20px #f9731659}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--border-hover);background:var(--bg-hover)}.btn-danger{color:var(--danger);background:0 0;border:1px solid #0000;padding:7px 10px}.btn-danger:hover{background:var(--danger-glow)}.btn-ghost{color:var(--text-muted);border:1px solid var(--border);background:0 0}.btn-ghost:hover{color:var(--text-primary);border-color:var(--border-hover)}.btn-add{color:var(--accent);border:1px dashed var(--accent-dim);background:#39d98a0f;justify-content:center;width:100%;padding:12px}.btn-add:hover{background:#39d98a1f}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-warning{background:var(--warning-glow);color:var(--warning);border:1px solid #ffb34733}.badge{border-radius:100px;align-items:center;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-success{color:var(--accent);background:#39d98a1f}.spinner{border:2.5px solid #0000;border-top-color:currentColor;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:none}.loading .spinner{display:inline-block}.loading .btn-icon{display:none}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#000000a6;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:90%;max-width:660px;max-height:85vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.35s cubic-bezier(.16,1,.3,1) modalSlide;display:flex}@keyframes modalSlide{0%{opacity:0;transform:translateY(30px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.modal-header h2{font-size:1.15rem;font-weight:700}.btn-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition);background:0 0;border:none;padding:4px 8px;font-size:1.2rem}.btn-close:hover{color:var(--text-primary);background:var(--bg-hover)}.modal-body{flex:1;padding:24px 28px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;padding:18px 28px;display:flex}.report-ex-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;padding:18px}.report-ex-header{color:var(--accent);margin-bottom:12px;font-size:.92rem;font-weight:600}.report-score-options{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.score-opt{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;min-width:130px;color:var(--text-muted);cursor:pointer;transition:all var(--transition);flex:1;padding:9px;font-size:.78rem}.score-opt:hover{border-color:var(--border-hover);color:var(--text-primary)}.score-opt.selected{background:var(--accent-glow);border-color:var(--accent);color:var(--accent);font-weight:600}.score-opt input[type=radio]{display:none}.report-notes{margin-top:20px}textarea{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-family:var(--font);resize:vertical;transition:border-color var(--transition), box-shadow var(--transition);outline:none;margin-top:6px;padding:12px 14px;font-size:.88rem}textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #39d98a14}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:28px;right:28px}.toast{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;gap:10px;max-width:360px;padding:12px 18px;font-size:.85rem;animation:.3s cubic-bezier(.16,1,.3,1) toastSlide;display:flex}.toast.success{border-left:3px solid var(--accent)}.toast.error{border-left:3px solid var(--danger)}@keyframes toastSlide{0%{opacity:0;transform:translate(20px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}.how-to-main{max-width:780px}.how-to-main h1{background:linear-gradient(135deg, var(--accent), var(--lime));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:1.8rem;font-weight:800}.how-to-main .page-desc{color:var(--text-muted);margin-bottom:40px;font-size:.88rem}.how-to-main .intro-banner{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;margin-bottom:24px;padding:16px 20px;font-size:.9rem;line-height:1.7}.how-to-main .intro-banner p{margin:0 0 6px}.how-to-main .intro-banner p:last-child{margin-top:4px;margin-bottom:0}.param-section{margin-bottom:36px}.param-header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.param-icon{background:var(--accent-glow);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:1.5rem;display:flex}.param-title{color:var(--text-primary);font-size:1.05rem;font-weight:700}.param-tag{color:var(--accent);border:1px solid var(--accent-dim);letter-spacing:.04em;background:#39d98a14;border-radius:100px;padding:2px 10px;font-size:.68rem;font-weight:700}.param-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);padding:22px 26px;font-size:.88rem;line-height:1.8}.param-card p{margin-bottom:10px}.param-card p:last-child{margin-bottom:0}.param-card strong{color:var(--accent)}.param-card .example-row{background:var(--bg-surface);border-radius:var(--radius-sm);align-items:baseline;gap:10px;margin-top:12px;padding:10px 14px;font-size:.82rem;display:flex}.example-row .ex-label{color:var(--text-muted);text-transform:uppercase;min-width:48px;font-size:.72rem;font-weight:600}.example-row .ex-val{color:var(--text-primary);font-weight:700}.tempo-timeline{align-items:stretch;gap:4px;margin-top:16px;display:flex}.tempo-phase{border-radius:var(--radius-sm);text-align:center;flex:1;padding:12px 8px;font-size:.78rem;font-weight:600}.phase-concentric{color:var(--accent);background:#f973161f}.phase-isometric{background:var(--warning-glow);color:var(--warning)}.phase-eccentric{color:var(--blue);background:#5bb5ff1f}.tempo-phase .phase-secs{margin-bottom:4px;font-size:1.1rem}.tempo-phase .phase-name{opacity:.85}.divider{border:none;border-top:1px solid var(--border);margin:36px 0}.back-link{color:var(--text-muted);transition:color var(--transition);align-items:center;gap:6px;margin-bottom:28px;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent)}.model-status-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:16px;padding:20px 24px;display:flex}.model-status-card .status-icon{font-size:1.4rem}.model-status-card .status-info{flex:1}.model-status-card .status-info h4{margin-bottom:4px;font-size:.9rem;font-weight:600}.model-status-card .status-info p{color:var(--text-muted);font-size:.78rem}.model-progress-bar{background:var(--bg-hover);border-radius:2px;width:100%;height:4px;margin-top:8px;overflow:hidden}.model-progress-fill{background:linear-gradient(90deg, var(--accent), var(--cyan));border-radius:2px;height:100%;transition:width .3s}.progress-dashboard{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:28px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);flex-direction:column;gap:8px;padding:20px;display:flex;position:relative;overflow:hidden}.stat-card:hover{border-color:var(--accent-dim);transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.stat-card:before{content:"";background:linear-gradient(90deg, var(--accent), var(--lime));height:3px;position:absolute;top:0;left:0;right:0}.stat-card.accent-orange:before{background:linear-gradient(90deg, var(--accent), var(--accent-bright))}.stat-card.accent-cyan:before{background:linear-gradient(90deg, var(--cyan), #06b6d4)}.stat-card.accent-lime:before{background:linear-gradient(90deg, var(--lime), #a3e635)}.stat-card.accent-warning:before{background:linear-gradient(90deg, var(--warning), #fbbf24)}.stat-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:4px;font-size:1.3rem;display:flex}.stat-card.accent-orange .stat-icon{background:var(--accent-glow)}.stat-card.accent-cyan .stat-icon{background:var(--cyan-glow)}.stat-card.accent-lime .stat-icon{background:var(--lime-glow)}.stat-card.accent-warning .stat-icon{background:var(--warning-glow)}.stat-value{font-family:var(--font-display);letter-spacing:-.02em;font-size:2.2rem;font-weight:800;line-height:1}.stat-card.accent-orange .stat-value{color:var(--accent)}.stat-card.accent-cyan .stat-value{color:var(--cyan)}.stat-card.accent-lime .stat-value{color:var(--lime)}.stat-card.accent-warning .stat-value{color:var(--warning)}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;font-weight:600}.stat-change{align-items:center;gap:4px;font-size:.75rem;font-weight:600;display:flex}.stat-change.up{color:var(--success)}.stat-change.down{color:var(--danger)}.workout-preview-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:28px;display:grid}.workout-preview-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);padding:0;position:relative;overflow:hidden}.workout-preview-card:hover{border-color:var(--accent-dim);transform:translateY(-4px);box-shadow:0 12px 32px #0006}.workout-preview-card.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow), 0 12px 32px #f9731626}.workout-preview-header{background:linear-gradient(135deg, var(--bg-hover), var(--bg-card));border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.workout-preview-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.01em;font-size:1.1rem;font-weight:700}.workout-preview-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:100px;align-items:center;gap:6px;padding:4px 10px;font-size:.72rem;font-weight:700;display:flex}.workout-preview-badge.intensity-high{background:var(--accent-glow);color:var(--accent);border:1px solid var(--accent-dim)}.workout-preview-badge.intensity-medium{background:var(--warning-glow);color:var(--warning);border:1px solid #f59e0b4d}.workout-preview-badge.intensity-low{background:var(--cyan-glow);color:var(--cyan);border:1px solid #22d3ee4d}.workout-preview-body{padding:16px 20px}.workout-preview-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;display:grid}.preview-stat{text-align:center;background:var(--bg-surface);border-radius:var(--radius-sm);padding:8px 4px}.preview-stat-value{font-family:var(--font-display);color:var(--text-primary);font-size:1.3rem;font-weight:700}.preview-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.65rem;font-weight:600}.workout-preview-exercises{flex-wrap:wrap;gap:6px;display:flex}.exercise-tag{background:var(--bg-surface);border:1px solid var(--border);color:var(--text-secondary);transition:all var(--transition);border-radius:100px;padding:4px 10px;font-size:.72rem;font-weight:500}.exercise-tag:hover{background:var(--accent-glow);border-color:var(--accent-dim);color:var(--accent)}.workout-preview-footer{background:var(--bg-surface);border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.workout-preview-date{color:var(--text-muted);font-size:.75rem}.workout-preview-progress{align-items:center;gap:8px;display:flex}.progress-mini-bar{background:var(--bg-hover);border-radius:2px;width:60px;height:4px;overflow:hidden}.progress-mini-fill{background:linear-gradient(90deg, var(--accent), var(--lime));border-radius:2px;height:100%;transition:width .3s}.progress-mini-text{color:var(--accent);font-size:.72rem;font-weight:700}.circular-progress{width:80px;height:80px;position:relative}.circular-progress svg{transform:rotate(-90deg)}.circular-progress-bg{fill:none;stroke:var(--bg-hover);stroke-width:6px}.circular-progress-fill{fill:none;stroke:url(#progressGradient);stroke-width:6px;stroke-linecap:round;transition:stroke-dashoffset .5s}.circular-progress-text{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.circular-progress-value{font-family:var(--font-display);color:var(--text-primary);font-size:1.4rem;font-weight:800;line-height:1}.circular-progress-label{color:var(--text-muted);text-transform:uppercase;font-size:.6rem;font-weight:600}.streak-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;margin-bottom:20px;padding:14px 18px;display:flex}.streak-flames{gap:4px;display:flex}.streak-flame{transition:transform var(--transition);font-size:1.4rem}.streak-flame.active{animation:1s ease-in-out infinite flamePulse}.streak-flame.inactive{opacity:.3;filter:grayscale()}@keyframes flamePulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.streak-info{flex:1}.streak-title{font-family:var(--font-display);color:var(--text-primary);font-size:1.1rem;font-weight:700}.streak-subtitle{color:var(--text-muted);font-size:.78rem}.btn-fire{background:linear-gradient(135deg, var(--accent), var(--accent-intense));color:#fff;text-shadow:0 1px 2px #0003}.btn-fire:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 24px #f9731666}.btn-lime{background:linear-gradient(135deg, var(--lime), #65a30d);color:#052e16}.btn-lime:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 24px #84cc164d}.motivational-banner{background:linear-gradient(135deg, var(--bg-card), var(--bg-surface));border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:24px;padding:24px 28px;position:relative;overflow:hidden}.motivational-banner:before{content:"";background:linear-gradient(90deg, var(--accent), var(--lime), var(--cyan));height:3px;position:absolute;top:0;left:0;right:0}.motivational-banner:after{content:"";background:radial-gradient(circle, var(--accent-glow) 0%, transparent 70%);pointer-events:none;width:300px;height:300px;position:absolute;top:-50%;right:-10%}.banner-content{z-index:1;position:relative}.banner-tag{background:var(--accent-glow);border:1px solid var(--accent-dim);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;border-radius:100px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.banner-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.02em;margin-bottom:8px;font-size:1.6rem;font-weight:800;line-height:1.2}.banner-title .highlight{background:linear-gradient(135deg, var(--accent), var(--lime));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.banner-subtitle{color:var(--text-muted);font-size:.9rem}@media (width<=900px){.layout{grid-template-columns:1fr;grid-template-areas:"header""main"}aside{display:none}.exercise-fields{grid-template-columns:1fr 1fr}main{padding:24px 20px}.workout-preview-grid{grid-template-columns:1fr}.progress-dashboard{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){main{padding:18px 14px}.exercise-fields{grid-template-columns:1fr}.workout-runner{padding:28px 20px}.workout-phase-label{font-size:1.2rem}.workout-preview-grid,.progress-dashboard{grid-template-columns:1fr}.motivational-banner{padding:18px 20px}.banner-title{font-size:1.3rem}}.pwa-toast{z-index:9999;border-radius:8px;align-items:center;gap:12px;padding:12px 20px;font-size:14px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.pwa-toast--ready{color:#fff;background:#22c55e}.pwa-toast--update{color:#fff;background:#f97316}.pwa-toast--update button{color:#f97316;cursor:pointer;background:#fff;border:none;border-radius:6px;padding:6px 14px;font-weight:600}
