:root{--bg-primary:#0b0d11;--bg-secondary:#12151c;--bg-elevated:#161a22;--bg-input:#171b24;--bg-card:#161a22b8;--border-color:#ffffff12;--border-strong:#ffffff21;--hairline:#ffffff0d;--color-primary:#10b981;--color-primary-bright:#34d399;--color-primary-rgb:16, 185, 129;--color-secondary:#38bdf8;--color-secondary-rgb:56, 189, 248;--color-accent:#fbbf24;--color-danger:#fb7185;--color-danger-rgb:251, 113, 133;--color-warning:#f59e0b;--text-main:#f3f6fb;--text-muted:#8b94a7;--text-dim:#5d6577;--text-dark:#06120d;--font-heading:"Bricolage Grotesque", "Segoe UI", sans-serif;--font-body:"Manrope", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -12px #000000b3;--shadow-lg:0 24px 60px -24px #000000d9;--shadow-neon:0 0 0 1px rgba(var(--color-primary-rgb), .25), 0 12px 40px -12px rgba(var(--color-primary-rgb), .35);--shadow-neon-danger:0 0 0 1px rgba(var(--color-danger-rgb), .3), 0 12px 40px -12px rgba(var(--color-danger-rgb), .4);--radius-sm:9px;--radius-md:14px;--radius-lg:22px;--radius-round:9999px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.32s cubic-bezier(.22, 1, .36, 1);--grad-brand:linear-gradient(135deg, var(--color-primary-bright), var(--color-secondary));--grad-surface:linear-gradient(180deg, #ffffff0b, #ffffff03)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background-color:var(--bg-primary);color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100vh;font-size:16px;line-height:1.55;overflow-x:hidden}body:before{content:"";z-index:-2;background:radial-gradient(60% 50% at 15% -5%, rgba(var(--color-secondary-rgb), .16), transparent 60%), radial-gradient(55% 45% at 100% 0%, rgba(var(--color-primary-rgb), .14), transparent 55%), radial-gradient(80% 60% at 50% 110%, rgba(var(--color-primary-rgb), .08), transparent 60%);pointer-events:none;position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:48px 48px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(70% 55% at 50% 30%,#000 0%,#0000 85%);mask-image:radial-gradient(70% 55% at 50% 30%,#000 0%,#0000 85%)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:700;line-height:1.15}::selection{background:rgba(var(--color-primary-rgb), .28);color:#fff}.glass{background:var(--bg-card);background-image:var(--grad-surface);-webkit-backdrop-filter:blur(16px)saturate(140%);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md), inset 0 1px 0 #ffffff0d;position:relative}.glass:before{content:"";border-radius:inherit;opacity:.7;pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff38,#0000);height:1px;position:absolute;inset:0 0 auto}.glass-interactive{transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal)}.glass-interactive:hover{border-color:rgba(var(--color-primary-rgb), .35);box-shadow:var(--shadow-lg), var(--shadow-neon);transform:translateY(-3px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(14px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.fade-in,.fade-in>*{animation:.55s cubic-bezier(.22,1,.36,1) both fadeIn}.fade-in>:first-child{animation-delay:40ms}.fade-in>:nth-child(2){animation-delay:.1s}.fade-in>:nth-child(3){animation-delay:.16s}.fade-in>:nth-child(4){animation-delay:.22s}.fade-in>:nth-child(5){animation-delay:.28s}.fade-in>:nth-child(6){animation-delay:.34s}.fade-in>:nth-child(7){animation-delay:.4s}.fade-in>:nth-child(8){animation-delay:.46s}@keyframes pulse-neon{0%,to{box-shadow:var(--shadow-lg), 0 0 0 1px rgba(var(--color-primary-rgb), .25), 0 0 22px -6px rgba(var(--color-primary-rgb), .35)}50%{box-shadow:var(--shadow-lg), 0 0 0 1px rgba(var(--color-primary-rgb), .55), 0 0 34px -4px rgba(var(--color-primary-rgb), .6)}}.pulse-neon{animation:2.4s ease-in-out infinite pulse-neon}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-round);background:#ffffff1a padding-box padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:rgba(var(--color-primary-rgb), .55);background-clip:padding-box}.btn{font-family:var(--font-heading);letter-spacing:-.01em;border-radius:var(--radius-md);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-normal), background var(--transition-fast), border-color var(--transition-fast);-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:.94rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--color-primary-bright);outline-offset:2px}.btn-primary:after{content:"";background:linear-gradient(120deg,#0000 30%,#ffffff59 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-120%)}.btn-primary:hover:after{transform:translate(120%)}.btn-primary{background:var(--grad-brand);color:var(--text-dark);box-shadow:0 10px 30px -10px rgba(var(--color-primary-rgb), .55), inset 0 1px 0 #fff6}.btn-primary:hover:not(:disabled){box-shadow:0 16px 40px -10px rgba(var(--color-primary-rgb), .7), inset 0 1px 0 #ffffff80;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{color:var(--text-main);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0a}.btn-secondary:hover:not(:disabled){border-color:var(--border-strong);background:#ffffff14;transform:translateY(-1px)}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-danger{background:rgba(var(--color-danger-rgb), .12);color:var(--color-danger);border:1px solid rgba(var(--color-danger-rgb), .28)}.btn-danger:hover:not(:disabled){background:rgba(var(--color-danger-rgb), .9);color:#fff;box-shadow:var(--shadow-neon-danger);border-color:#0000;transform:translateY(-1px)}.btn-circle{border-radius:var(--radius-round);flex-shrink:0;width:42px;height:42px;padding:0}.input-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.input-group label{font-family:var(--font-heading);color:var(--text-muted);text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;font-weight:600}.form-input{background-color:var(--bg-input);border:1px solid var(--border-color);color:var(--text-main);border-radius:var(--radius-md);font-family:var(--font-body);width:100%;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);padding:.85rem 1rem;font-size:.95rem;font-weight:500}.form-input::placeholder{color:var(--text-dim)}.form-input:hover{border-color:var(--border-strong)}.form-input:focus{border-color:var(--color-primary);background-color:var(--bg-elevated);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb), .14);outline:none}.form-input[type=number]{-moz-appearance:textfield;font-variant-numeric:tabular-nums}.form-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}select.form-input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:2.5rem}.pill-selector{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:#00000047;grid-template-columns:repeat(3,1fr);gap:.3rem;padding:.3rem;display:grid}.pill-option{text-align:center;font-family:var(--font-heading);border-radius:calc(var(--radius-md) - 5px);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);color:var(--text-muted);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;padding:.6rem .5rem;font-size:.82rem;font-weight:700}.pill-option:hover{color:var(--text-main);background:#ffffff0a}.pill-option.active{color:var(--text-dark);background:var(--grad-brand);box-shadow:0 6px 18px -6px rgba(var(--color-primary-rgb), .6), inset 0 1px 0 #ffffff59}.container{max-width:520px;margin:0 auto;padding:1.75rem 1.1rem 6rem}.app-header{justify-content:space-between;align-items:center;margin-bottom:1.75rem;padding:.25rem 0;display:flex}.logo{font-family:var(--font-heading);letter-spacing:-.03em;transition:transform var(--transition-fast);align-items:center;gap:.55rem;font-size:1.7rem;font-weight:800;display:inline-flex}.logo:hover{transform:translateY(-1px)}.logo span:first-child{filter:drop-shadow(0 0 10px rgba(var(--color-primary-rgb), .5));-webkit-text-fill-color:initial;font-size:1.5rem}.logo{background:linear-gradient(120deg, #fff 20%, var(--color-primary-bright) 70%, var(--color-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.badge-pill{font-family:var(--font-heading);border-radius:var(--radius-round);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;align-items:center;padding:.28rem .7rem;font-size:.68rem;font-weight:700;display:inline-flex}.badge-split{background-color:rgba(var(--color-secondary-rgb), .14);color:var(--color-secondary);border:1px solid rgba(var(--color-secondary-rgb), .3)}.badge-goal{color:var(--color-accent);background-color:#f59e0b24;border:1px solid #f59e0b4d}.badge-streak{background:rgba(var(--color-primary-rgb), .12);color:var(--color-primary-bright);border:1px solid rgba(var(--color-primary-rgb), .28);border-radius:var(--radius-round);font-family:var(--font-heading);box-shadow:inset 0 0 0 1px rgba(var(--color-primary-rgb), .08), 0 0 20px -8px rgba(var(--color-primary-rgb), .5);align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.78rem;font-weight:700;display:flex}.badge-streak strong{font-variant-numeric:tabular-nums}.badge-difficulty--beginner{background-color:rgba(var(--color-primary-rgb), .14);color:var(--color-primary-bright);border:1px solid rgba(var(--color-primary-rgb), .3)}.badge-difficulty--intermediate{color:var(--color-accent);background-color:#f59e0b24;border:1px solid #f59e0b4d}.badge-difficulty--advanced{background-color:rgba(var(--color-danger-rgb), .14);color:var(--color-danger);border:1px solid rgba(var(--color-danger-rgb), .3)}.loading-container{flex-direction:column;gap:1.5rem;display:flex}.workout-stats-bar{border-radius:var(--radius-lg);margin-bottom:1.5rem;padding:1.15rem 1.25rem;overflow:hidden}.workout-stats-bar:after{content:"";background:var(--grad-brand);width:3px;box-shadow:0 0 18px rgba(var(--color-primary-rgb), .7);position:absolute;top:0;bottom:0;left:0}.workout-stats-bar__top{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.85rem;display:flex}.workout-stats-bar__progress-label{font-family:var(--font-mono);color:var(--color-primary-bright);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8rem;font-weight:700}.workout-progress-track{border-radius:var(--radius-round);background:#0006;height:8px;overflow:hidden;box-shadow:inset 0 1px 2px #00000080}.workout-progress-fill{border-radius:var(--radius-round);background:var(--grad-brand);height:100%;box-shadow:0 0 14px rgba(var(--color-primary-rgb), .6);transition:width .5s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden}.workout-progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff73,#0000);animation:2s ease-in-out infinite progress-sheen;position:absolute;inset:0}@keyframes progress-sheen{0%{transform:translate(-100%)}60%,to{transform:translate(120%)}}.warmup-section{border-radius:var(--radius-lg);margin-bottom:1.5rem;padding:1.35rem}.warmup-section:after{content:"";background:var(--color-secondary);width:3px;box-shadow:0 0 16px rgba(var(--color-secondary-rgb), .6);position:absolute;top:0;bottom:0;left:0}.cooldown-section{border-radius:var(--radius-lg);margin-bottom:2rem;padding:1.35rem}.cooldown-section:after{content:"";background:var(--color-primary);width:3px;box-shadow:0 0 16px rgba(var(--color-primary-rgb), .6);position:absolute;top:0;bottom:0;left:0}.warmup-section__title,.cooldown-section__title{font-size:1rem;font-family:var(--font-heading);letter-spacing:-.01em;align-items:center;gap:.55rem;margin-bottom:.75rem;font-weight:700;display:flex}.warmup-section__title{color:var(--color-secondary)}.cooldown-section__title{color:var(--color-primary-bright)}.phase-list{padding-left:0;list-style:none}.phase-list__item{color:var(--text-main);align-items:flex-start;gap:.6rem;margin:.5rem 0;font-size:.86rem;line-height:1.5;display:flex}.phase-list__bullet{font-size:1.1rem;line-height:1.3}.phase-list__bullet--primary{color:var(--color-primary-bright)}.phase-list__bullet--secondary{color:var(--color-secondary)}.exercises-heading{font-size:1.3rem;font-family:var(--font-heading);color:var(--text-main);letter-spacing:-.02em;margin-bottom:1.15rem;font-weight:800}.workout-actions{grid-template-columns:1fr 1.4fr;gap:.9rem;margin-bottom:2rem;display:grid}.workout-actions .btn{padding-block:.9rem}.summary-card{border-radius:var(--radius-lg);text-align:center;border:1px solid rgba(var(--color-primary-rgb), .35);box-shadow:var(--shadow-lg), 0 0 60px -20px rgba(var(--color-primary-rgb), .5);padding:2.25rem 1.75rem}.summary-trophy{filter:drop-shadow(0 8px 20px #f59e0b73);margin-bottom:.5rem;font-size:3.25rem;animation:3s ease-in-out infinite trophy-float}@keyframes trophy-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-8px)rotate(2deg)}}.summary-title{font-family:var(--font-heading);color:var(--text-main);letter-spacing:-.02em;margin-bottom:.5rem;font-size:1.7rem;font-weight:800}.summary-subtitle{color:var(--text-muted);margin-bottom:1.5rem;max-width:34ch;margin-inline:auto;font-size:.92rem}.summary-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1.5rem 0;display:grid}.summary-stat{border-radius:var(--radius-md);padding:1rem .5rem}.summary-stat__label{font-family:var(--font-heading);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.4rem;font-size:.65rem;font-weight:600}.summary-stat__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.summary-stat__value--primary{color:var(--color-primary-bright)}.summary-stat__value--secondary{color:var(--color-secondary)}.summary-stat__value--accent{color:var(--color-accent)}.summary-streak-box{background:rgba(var(--color-primary-rgb), .06);border:1px solid rgba(var(--color-primary-rgb), .18);border-radius:var(--radius-md);margin-bottom:2rem;padding:1.15rem}.summary-streak-count{font-family:var(--font-heading);color:var(--color-primary-bright);justify-content:center;align-items:center;gap:.5rem;font-size:1.15rem;font-weight:800;display:flex}.summary-streak-hint{color:var(--text-muted);margin-top:.4rem;font-size:.78rem}.exercise-card__header{border-bottom:1px solid var(--hairline);cursor:pointer;transition:background var(--transition-fast);background:#ffffff04;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1.25rem 1.35rem;display:flex}.exercise-card__header:hover{background:#ffffff09}.exercise-card__info{flex:1;min-width:0;padding-right:.25rem}.exercise-card__badges{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.5rem;display:flex}.exercise-card__name{color:var(--text-main);font-size:1.15rem;font-family:var(--font-heading);letter-spacing:-.02em;font-weight:700;line-height:1.25}.exercise-card__actions{align-items:center;gap:.5rem;display:flex}.exercise-card__body{padding:1.35rem;animation:.4s both fadeIn}.exercise-card__description{color:var(--text-muted);margin-bottom:1.35rem;font-size:.87rem;line-height:1.55}.set-table-header{font-family:var(--font-heading);color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--hairline);grid-template-columns:34px 1fr 72px 62px 58px 40px;gap:8px;margin-bottom:.4rem;padding-bottom:.6rem;font-size:.64rem;font-weight:600;display:grid}.set-row{border-bottom:1px solid var(--hairline);border-radius:var(--radius-sm);grid-template-columns:34px 1fr 72px 62px 58px 40px;align-items:center;gap:8px;padding:.55rem 0;transition:opacity .25s,background .25s;display:grid}.set-row--completed{opacity:.55}.set-row--completed:hover{opacity:.8}.set-row__index{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:700}.set-row__index--completed{color:var(--color-primary-bright)}.set-row__index--pending{color:var(--text-main)}.set-row__target{font-family:var(--font-mono);color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.set-input,.set-select{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-main);font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:center;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);padding:.42rem .25rem;font-size:.82rem}.set-input{-moz-appearance:textfield}.set-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.set-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.set-select{appearance:none;cursor:pointer;padding-inline:.15rem}.set-input::placeholder{color:var(--text-dim)}.set-input:hover,.set-select:hover{border-color:var(--border-strong)}.set-input:focus,.set-select:focus{border-color:var(--color-primary);background:var(--bg-elevated);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .16);outline:none}.set-input:disabled,.set-select:disabled{opacity:.45;cursor:not-allowed}.set-complete-btn{cursor:pointer;width:30px;height:30px;transition:transform var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast), color var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:inline-flex}.set-complete-btn:hover{transform:scale(1.1)}.set-complete-btn:active{transform:scale(.94)}.set-complete-btn--done{background:var(--grad-brand);color:var(--text-dark);box-shadow:0 4px 14px -4px rgba(var(--color-primary-rgb), .7);border:none;animation:.28s cubic-bezier(.34,1.56,.64,1) pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.set-complete-btn--pending{border:1.5px solid var(--border-strong);color:#0000;background:0 0}.set-complete-btn--pending:hover{border-color:var(--color-primary);color:rgba(var(--color-primary-rgb), .6);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb), .1)}.timer-container{background:rgba(var(--color-danger-rgb), .08);border:1px solid rgba(var(--color-danger-rgb), .2);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin:1rem 0;padding:.75rem 1rem;display:flex}.video-wrapper{border-radius:var(--radius-md);border:1px solid var(--border-color);height:0;margin-top:1rem;padding-bottom:56.25%;position:relative;overflow:hidden}.video-wrapper iframe{width:100%;height:100%;position:absolute;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:2000;background:#04060aa8;justify-content:center;align-items:center;padding:1rem;animation:.2s both overlay-in;display:flex;position:fixed;inset:0}.modal-card{border-radius:var(--radius-lg);width:100%;max-width:380px;padding:1.75rem;animation:.3s cubic-bezier(.22,1,.36,1) both modal-in}.modal-message{color:var(--text-main);margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.modal-actions{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%) 0 0/200% 100%;animation:1.6s infinite shimmer}.skeleton-line{height:14px;margin-bottom:.5rem}.skeleton-line--short{width:40%}.skeleton-line--medium{width:65%}.skeleton-line--full{width:100%}.skeleton-row{grid-template-columns:34px 1fr 72px 62px 58px 40px;gap:8px;margin-bottom:.5rem;display:grid}.skeleton-cell{height:32px}@media (width<=400px){.container{padding-inline:.85rem}.exercise-card__name{font-size:1.05rem}.set-table-header,.set-row,.skeleton-row{grid-template-columns:28px 1fr 60px 52px 50px 34px;gap:5px}.summary-stat__value{font-size:1.1rem}}.history-entry-btn{width:100%;margin-top:1rem;padding:.85rem}.history-back-btn{margin-bottom:1rem;padding:.5rem 1rem}.history-stats-bar{border-radius:var(--radius-lg);text-align:center;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;padding:1rem;display:grid}.history-stat__value{font-family:var(--font-heading);font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:700}.history-stat__value--primary{color:var(--color-primary-bright)}.history-stat__value--secondary{color:var(--color-secondary)}.history-stat__label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim,#ffffff8c);margin-top:.15rem;font-size:.7rem}.history-section{border-radius:var(--radius-lg);margin-bottom:1rem;padding:1.25rem}.history-section__title{font-family:var(--font-heading);align-items:center;gap:.5rem;margin-bottom:.85rem;font-size:1.05rem;display:flex}.history-entry{border-bottom:1px solid #ffffff12;padding:.75rem 0}.history-entry:last-child{border-bottom:none;padding-bottom:0}.history-entry__top{justify-content:space-between;align-items:baseline;margin-bottom:.4rem;display:flex}.history-entry__date{text-transform:capitalize;font-size:.85rem;font-weight:600}.history-entry__volume{font-family:var(--font-heading);color:var(--color-secondary);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:700}.history-entry__badges{flex-wrap:wrap;gap:.35rem;display:flex}.history-entry__muscle{color:var(--text-dim,#ffffffa6);background-color:#ffffff0f;border:1px solid #ffffff1f}.progress-chart{margin-top:1rem}.progress-chart__svg{width:100%;height:auto;display:block}.progress-chart__axis-label{fill:#ffffff73;font-size:8.5px;font-family:var(--font-body,inherit)}.progress-chart__footer{justify-content:space-between;align-items:center;margin-top:.5rem;font-size:.82rem;display:flex}.progress-chart__current strong{color:var(--color-secondary);font-variant-numeric:tabular-nums}.progress-chart__hint{color:var(--text-dim,#ffffff80);font-size:.72rem}.progress-chart__delta--up{background-color:rgba(var(--color-primary-rgb), .14);color:var(--color-primary-bright);border:1px solid rgba(var(--color-primary-rgb), .3)}.progress-chart__delta--down{background-color:rgba(var(--color-danger-rgb), .12);color:var(--color-danger);border:1px solid rgba(var(--color-danger-rgb), .28)}.progress-chart__delta--flat{color:var(--text-dim,#fff9);background-color:#ffffff0f;border:1px solid #ffffff1f}.header-badges{align-items:center;gap:.5rem;display:flex}.badge-level{color:var(--color-accent);border-radius:var(--radius-round);font-family:var(--font-heading);white-space:nowrap;background:#f59e0b1f;border:1px solid #f59e0b4d;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.78rem;font-weight:700;display:flex}.badge-level strong{font-variant-numeric:tabular-nums}.achievements-count{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.75rem}.level-card{border-radius:var(--radius-md,12px);background:#f59e0b0f;border:1px solid #f59e0b2e;align-items:center;gap:1rem;margin-bottom:1.1rem;padding:.85rem;display:flex}.level-card__badge{font-family:var(--font-heading);color:var(--color-accent);white-space:nowrap;font-size:1.15rem;font-weight:800}.level-card__info{flex:1;min-width:0}.level-card__top{justify-content:space-between;align-items:baseline;margin-bottom:.35rem;display:flex}.level-card__title{font-family:var(--font-heading);font-size:.95rem;font-weight:700}.level-card__xp{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:.75rem}.level-card__next{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-top:.35rem;font-size:.68rem}.medal-group{margin-bottom:1rem}.medal-group:last-child{margin-bottom:0}.medal-group__title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin-bottom:.5rem;font-size:.72rem}.medal-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.5rem;display:grid}.medal{text-align:center;border-radius:var(--radius-md,12px);opacity:.45;background:#ffffff08;border:1px solid #ffffff14;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem .35rem;display:flex}.medal--earned{opacity:1;background:rgba(var(--color-primary-rgb), .08);border-color:rgba(var(--color-primary-rgb), .3);box-shadow:0 0 16px -8px rgba(var(--color-primary-rgb), .5)}.medal__emoji{font-size:1.35rem;line-height:1}.medal__title{font-size:.62rem;font-weight:700;line-height:1.15}.medal__desc{color:var(--text-dim);font-size:.55rem;line-height:1.2}.mastered-list{flex-wrap:wrap;gap:.4rem;display:flex}.mastered-chip{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary-bright);border:1px solid rgba(var(--color-primary-rgb), .28);text-transform:none;letter-spacing:0}.auth-panel{border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;padding:.85rem 1rem;font-size:.82rem;display:flex}.auth-panel--form{display:block}.auth-panel__status strong{color:var(--color-primary-bright)}.auth-panel__toggle-btn{width:100%;margin-top:1rem;padding:.85rem;font-size:.85rem}.auth-panel__header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.auth-panel__title{font-family:var(--font-heading);font-size:.95rem;font-weight:700}.auth-panel__small-btn{white-space:nowrap;padding:.35rem .75rem;font-size:.75rem}.auth-panel--form .form-input{margin-bottom:.6rem}.auth-panel__error{color:var(--color-danger);margin-bottom:.6rem;font-size:.78rem}.auth-panel__actions{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.auth-panel__actions .btn{padding:.7rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
