:root{--bg-primary:#050a12;--bg-panel:#0b1220;--bg-panel-hover:#111a2e;--accent:#22d3ee;--accent-dim:#22d3ee26;--accent-glow:#22d3ee66;--text-primary:#f5f8fc;--text-secondary:#9fb0c7;--border:#1a2540;--success:#34d399;--warning:#fbbf24;--danger:#f87171;--radius:12px;--radius-sm:8px;--panel-gradient:linear-gradient(145deg, #0d1627 0%, #0b1220 100%);--panel-border:#ffffff0d;--panel-shadow:0 6px 20px #00000047;--font-display:"Unbounded", sans-serif;--font-body:"Manrope", sans-serif;--font-mono:"JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);font-variant-numeric:tabular-nums;background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh}html,body,#root{box-sizing:border-box;width:100%;max-width:100vw;min-height:100vh;margin:0;padding:0;overflow-x:clip}*{-webkit-tap-highlight-color:transparent}a,button{outline:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body,#root{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));max-width:100%;overflow-x:clip}button{cursor:pointer;border:none;font-family:inherit}input{border:none;outline:none;font-family:inherit}a{color:var(--accent);text-decoration:none}h1{font-family:var(--font-display);letter-spacing:-.02em;word-break:break-word;font-size:20px}h2,h3,h4{font-family:var(--font-body);letter-spacing:.5px;text-transform:uppercase;word-break:break-word;font-size:16px;font-weight:800}h4{font-size:15px}.xp-bar-header,.level-number,.streak-value,.streak-hero-number,.streak-day,.weekly-count,.quest-reward,.workout-xp-badge,.achievement-xp,.total-value,.detail-amount,.profile-stat-value,.profile-exercise-value,.set-details,input[type=number]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.finish-btn{font-family:var(--font-body);letter-spacing:.4px}.confirm-overlay{z-index:400;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b8;place-items:center;padding:20px;animation:.2s both confirmFadeIn;display:grid;position:fixed;inset:0}.confirm-box{background:#0d1626;border:1px solid #9fb0c72e;border-radius:14px;width:min(100%,400px);padding:26px 24px 22px;animation:.25s cubic-bezier(.22,1,.36,1) both confirmPop;box-shadow:0 24px 60px #0000008c}.confirm-icon{color:#f87171;background:#f8717124;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:14px;display:grid}.confirm-title{color:#f3f6fa;margin-bottom:10px;font-size:16px;font-weight:800}.confirm-message{font-size:14px;font-family:var(--font-body);color:#9fb0c7f2;margin-bottom:22px;line-height:1.55}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.confirm-btn{font-size:14px;font-weight:700;font-family:var(--font-body);cursor:pointer;border-radius:10px;padding:11px 18px;transition:box-shadow .2s,background .2s,border-color .2s,opacity .2s}.confirm-btn:disabled{opacity:.6;cursor:not-allowed}.confirm-btn.cancel{color:#f3f6fad9;background:0 0;border:1px solid #9fb0c74d}.confirm-btn.cancel:not(:disabled):hover{border-color:#9fb0c799}.confirm-btn.primary{color:#050a12;background:#22d3ee;border:none}.confirm-btn.primary:not(:disabled):hover{box-shadow:0 0 22px #22d3ee59}.confirm-btn.danger{color:#fff;background:#ef4444;border:none}.confirm-btn.danger:not(:disabled):hover{box-shadow:0 0 22px #ef444466}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes confirmPop{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:400px;padding:40px}.auth-logo{text-align:center;margin-bottom:32px}.auth-logo h1{letter-spacing:-.02em;background:linear-gradient(135deg, var(--text-primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-top:12px;font-size:24px;font-weight:800}.auth-logo p{color:var(--text-secondary);margin-top:8px;font-size:14px}.auth-tabs{background:var(--bg-primary);border-radius:var(--radius-sm);gap:8px;margin-bottom:28px;padding:4px;display:flex}.auth-tab{color:var(--text-secondary);background:0 0;border-radius:6px;flex:1;padding:10px;font-size:14px;font-weight:600;transition:all .2s}.auth-tab.active{background:var(--accent-dim);color:var(--accent)}.auth-form{flex-direction:column;gap:16px;display:flex}.input-group{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-secondary);pointer-events:none;position:absolute;left:14px}.input-group input{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);padding:14px 14px 14px 44px;font-size:15px;transition:border-color .2s}.input-group input::placeholder{color:var(--text-secondary)}.input-group input:focus{border-color:var(--accent)}.auth-error{color:var(--danger);text-align:center;background:#f871711a;border-radius:6px;padding:10px;font-size:13px}.auth-submit{background:var(--accent);color:var(--bg-primary);border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:14px;font-size:15px;font-weight:700;transition:all .2s;display:flex}.auth-submit:hover:not(:disabled){box-shadow:0 0 20px var(--accent-glow);background:#06b6d4}.auth-submit:disabled{opacity:.7;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-forgot{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;margin:14px auto 0;padding:0;font-size:12px;transition:color .2s;display:block}.auth-forgot:hover{color:var(--accent)}@media (width<=480px){.auth-card{padding:28px 20px}.auth-logo h1{font-size:24px}}.app-header{z-index:100;width:100%;padding:calc(16px + env(safe-area-inset-top,0px)) 24px 16px;-webkit-backdrop-filter:blur(16px)saturate(180%);background:#050a12bf;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.app-header{background:var(--bg-panel)}}.header-brand{-webkit-tap-highlight-color:transparent;width:fit-content;font:inherit;font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--text-primary);cursor:pointer;background:0 0;border:none;outline:none;flex:none;justify-content:flex-start;align-items:center;margin-right:auto;padding:0;font-size:18px;font-weight:800;line-height:1;transition:color .15s;display:inline-flex}.header-brand:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.header-brand-text{white-space:nowrap}.logo-irl{color:#f5f8fc}.logo-leveling{color:#22d3ee;text-shadow:0 0 12px #22d3ee80}.header-brand:hover{color:var(--accent)}.header-menu{position:relative}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-menu-btn{width:40px;height:40px;color:var(--accent);border:1px solid var(--accent);background:#22d3ee14;border-radius:10px;place-items:center;transition:background .2s,box-shadow .2s,transform .2s;display:grid;box-shadow:0 0 12px #22d3ee26}.header-menu-btn:hover{background:#22d3ee29;box-shadow:0 0 18px #22d3ee59}.header-menu-btn-open{background:#22d3ee2e;box-shadow:0 0 20px #22d3ee66}.header-tg-link{width:40px;height:40px;color:var(--accent);border:1px solid var(--accent);background:#22d3ee14;border-radius:10px;place-items:center;transition:background .2s,box-shadow .2s;display:grid;box-shadow:0 0 12px #22d3ee26}.header-tg-link:hover{background:#22d3ee29;box-shadow:0 0 18px #22d3ee59}.header-dropdown{z-index:50;background:#0b1220;border:1px solid #22d3ee73;border-radius:12px;min-width:200px;padding:6px;animation:.15s dropdown-in;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 32px #0000008c,0 0 20px #22d3ee1f}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.header-dropdown-item{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:flex}.header-dropdown-item:hover{color:var(--accent);background:#22d3ee1f}.header-dropdown-item svg{color:var(--text-secondary)}.header-dropdown-item:hover svg{color:var(--accent)}.header-dropdown-divider{background:var(--border);height:1px;margin:6px 4px}.header-dropdown-item-danger{color:var(--danger,#f87171)}.header-dropdown-item-danger:hover{color:var(--danger,#f87171);background:#f871711f}.header-dropdown-item-danger svg{color:var(--danger,#f87171)}@media (width<=600px){.app-header{padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px}.header-brand{font-size:16px}}@media (width<=480px){.header-brand{letter-spacing:.5px;font-size:15px}}.dashboard{box-sizing:border-box;width:100%;max-width:100%;min-height:100vh;margin-bottom:calc(-32px - 2 * env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.dashboard-content{box-sizing:border-box;flex-direction:column;flex:1;gap:20px;width:100%;max-width:600px;margin:0 auto;padding:16px 16px 0;display:flex}.error-state{text-align:center;color:var(--danger);padding:40px 20px;font-size:16px}.retry-btn{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);align-self:center;padding:12px 24px;font-size:14px;font-weight:600}.level-card{border:1px solid var(--panel-border);border-radius:var(--radius);cursor:pointer;background:radial-gradient(ellipse 80% 60% at 50% 0%, #22d3ee17, transparent 70%), linear-gradient(#22d3ee09 1px, transparent 1px), linear-gradient(90deg, #22d3ee09 1px, transparent 1px), var(--panel-gradient);box-shadow:var(--panel-shadow);background-size:auto,32px 32px,32px 32px,auto;padding:24px;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative;overflow:hidden}.corner{border-color:var(--accent);opacity:.75;pointer-events:none;border-style:solid;width:22px;height:22px;position:absolute}.corner-tl{border-top-left-radius:var(--radius);border-width:2px 0 0 2px;top:-1px;left:-1px}.corner-tr{border-top-right-radius:var(--radius);border-width:2px 2px 0 0;top:-1px;right:-1px}.corner-bl{border-bottom-left-radius:var(--radius);border-width:0 0 2px 2px;bottom:-1px;left:-1px}.corner-br{border-bottom-right-radius:var(--radius);border-width:0 2px 2px 0;bottom:-1px;right:-1px}.card-chevron{color:#9fb0c7;pointer-events:none;transition:color .2s,transform .2s;position:absolute;top:14px;right:14px}.level-card:hover{border-color:#22d3ee66;transform:translateY(-2px);box-shadow:0 6px 24px #00000059,0 0 24px #22d3ee1f}.level-card:hover .corner{opacity:1;filter:drop-shadow(0 0 4px #22d3ee99)}.level-card:hover .profile-avatar{box-shadow:0 0 22px #22d3ee73}.level-card-footer{border-top:1px solid var(--border);color:#9fb0c7;justify-content:flex-end;align-items:center;gap:4px;margin-top:16px;padding-top:12px;font-size:13px;transition:color .2s;display:flex}.level-card-footer svg{transition:transform .2s}.level-card:hover .level-card-footer{color:var(--accent)}.level-card:hover .level-card-footer svg{transform:translate(3px)}.clickable-card:hover{border-color:#22d3ee66}.level-card:hover .card-chevron,.clickable-card:hover .card-chevron{color:var(--accent);transform:translate(4px)}.clickable-card{cursor:pointer;transition:border-color .2s,box-shadow .2s;position:relative}.clickable-card:hover{box-shadow:0 0 18px #22d3ee1a}.level-card-top{align-items:center;gap:20px;margin-bottom:22px;display:flex}.profile-avatar{background:var(--bg-primary);border:2px solid var(--accent);width:80px;height:80px;color:var(--accent);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;transition:opacity .2s,box-shadow .2s;display:grid;position:relative;box-shadow:0 0 16px #22d3ee40}.profile-avatar:hover{box-shadow:0 0 22px #22d3ee66}.profile-avatar .profile-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.level-badge{z-index:2;border:2px solid var(--accent);background:#050a12;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;bottom:-12px;right:-12px;box-shadow:0 0 10px #22d3ee4d}.level-number{color:var(--accent);font-size:14px;font-weight:800;line-height:1}.level-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:7px;font-weight:700}.rank-section{border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:8px;min-width:0;margin-left:auto;padding:6px 8px;transition:transform .2s,opacity .2s;display:flex}.rank-section:hover{opacity:.9;transform:translateY(-1px)}.rank-pill{cursor:pointer;border:1px solid #22d3ee33;border-radius:999px;align-items:center;gap:8px;padding:4px 12px;transition:border-color .2s,background .2s;display:inline-flex}.rank-section:hover .rank-pill{background:#22d3ee0d;border-color:#22d3ee99}.rank-chevron{color:#9fb0c7;pointer-events:none;transition:color .2s,transform .2s}.rank-section:hover .rank-chevron{color:var(--accent);transform:translate(2px)}.user-name{font-family:var(--font-display);color:#fff;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:20px;font-weight:700;line-height:1.2;overflow:hidden}.rank-letter-badge{width:36px;height:41px;font-family:var(--font-display);color:var(--accent);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);background:#22d3ee1f;flex-shrink:0;place-items:center;font-size:17px;font-weight:800;display:grid}.rank-name{color:var(--accent);font-size:16px;font-weight:700;line-height:1.1}.xp-bar-container{flex-direction:column;display:flex}.xp-bar-header{font-family:var(--font-mono);color:var(--warning);justify-content:space-between;margin-bottom:8px;font-size:14px;display:flex}.xp-bar{background:var(--bg-primary);border:1px solid #fbbf2440;border-radius:6px;height:10px;overflow:hidden}.xp-bar-fill{background:linear-gradient(90deg,#fbbf24,#f59e0b);border-radius:6px;height:100%;transition:width .5s;box-shadow:0 0 14px #fbbf248c}.streak-widget{background:linear-gradient(135deg, #f973161f, transparent 70%), var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);align-items:center;gap:14px;padding:18px 22px;display:flex;position:relative}.streak-widget:hover{box-shadow:var(--panel-shadow), 0 0 18px #f973162e;border-color:#f973168c}.streak-icon{background:#f9731629;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.streak-widget.streak--cold{background:linear-gradient(135deg, #22d3ee1a, transparent 70%), var(--panel-gradient)}.streak-widget.streak--cold:hover{box-shadow:var(--panel-shadow), 0 0 18px #22d3ee29;border-color:#22d3ee80}.streak-widget.streak--cold .streak-icon{background:#22d3ee24}.streak-widget.streak--cold .streak-flame{filter:none}.streak-widget.streak--cold .streak-empty{color:var(--accent)}.streak-widget.streak--hot .streak-label{color:var(--text-primary)}.streak-text{flex-wrap:wrap;flex:1;align-items:baseline;gap:6px;min-width:0;display:flex}.streak-value{color:var(--warning);font-size:24px;font-weight:800;line-height:1.1}.streak-label{color:#9fb0c7;font-size:15px;font-weight:600}.streak-empty{color:var(--text-secondary);font-size:14px;font-weight:600}.quest-card{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);padding:24px;transition:border-color .3s,box-shadow .3s}.quest-card.quest-urgent{border-color:#ef444466;box-shadow:0 0 15px #ef44441a}.quest-card.quest-done{border-color:#34d39966}.quest-header,.weekly-header{align-items:center;gap:10px;margin-bottom:20px;display:flex}.quest-header h2,.weekly-header h2{font-size:16px;font-weight:800}.quest-body{justify-content:space-between;align-items:center;display:flex}.quest-info{flex-direction:column;gap:6px;display:flex}.quest-title{color:var(--text-primary);font-size:16px;font-weight:600}.quest-reward{color:var(--warning);font-size:14px;font-weight:700}.quest-desc{color:var(--text-secondary);font-size:13px}.quest-program{color:#ffffff73;font-size:11px}.quest-completed,.quest-pending{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.quest-completed{color:var(--success)}.quest-pending{color:var(--text-secondary)}.quest-loading{justify-content:center;padding:20px;display:flex}.program-card{position:relative}.program-card-top{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:16px;display:flex}.program-card-top .quest-header{min-width:0;margin-bottom:0}.program-card-top .quest-header h2{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.program-roadmap-btn{border:1px solid var(--border,#ffffff1a);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:#ffffff0a;border-radius:10px;flex:0 0 34px;justify-content:center;align-items:center;transition:color .2s,border-color .2s,background .2s;display:flex}.program-roadmap-btn:hover{color:var(--accent);background:#22d3ee14;border-color:#22d3ee80}.program-body{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.program-step-count{letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary);font-size:11px;font-weight:700}.program-quest-btn{background:linear-gradient(135deg, var(--accent), #06b6d4);color:var(--bg-primary);font-family:var(--font-body);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;border:none;border-radius:10px;margin-top:4px;padding:10px 18px;font-size:13px;font-weight:800;transition:box-shadow .2s,transform .2s;box-shadow:0 3px 14px #22d3ee40}.program-quest-btn:hover{transform:translateY(-1px);box-shadow:0 5px 20px #22d3ee66}.program-quest-btn:disabled{opacity:.6;cursor:default}.program-under{flex-direction:column;align-items:center;gap:6px;margin-top:-8px;display:flex}.program-leave-link{color:#fff6;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:12px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;transition:color .2s}.program-leave-link:hover:not(:disabled){color:var(--danger,#f87171)}.program-leave-link:disabled{opacity:.5;cursor:default}.program-error{color:var(--danger,#f87171);text-align:center;font-size:12px}.choose-program-btn{border-radius:var(--radius);width:100%;color:var(--accent);font-family:var(--font-body);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;background:#22d3ee0f;border:1px dashed #22d3ee80;padding:14px;font-size:14px;font-weight:700;transition:background .2s,border-color .2s}.choose-program-btn:hover{border-color:var(--accent);background:#22d3ee1f}.weekly-progress{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);padding:24px;transition:border-color .3s,box-shadow .3s}.weekly-progress.goal-danger{border-color:#ef444466;box-shadow:0 0 15px #ef44441a}.weekly-progress.goal-done{border-color:#34d39966}.weekly-body{flex-direction:column;gap:12px;display:flex}.weekly-count{color:var(--text-primary);font-size:28px;font-weight:800}.weekly-bar{background:var(--bg-primary);border-radius:5px;height:10px;overflow:hidden}.weekly-bar-fill{background:linear-gradient(90deg, var(--success), #10b981);border-radius:5px;height:100%;transition:width .5s}.start-workout-btn{background:linear-gradient(135deg, var(--accent), #06b6d4);width:100%;color:var(--bg-primary);font-family:var(--font-body);border-radius:var(--radius);text-align:center;text-transform:uppercase;letter-spacing:.4px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:16px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 20px #22d3ee33,inset 0 1px #ffffff59}.start-workout-btn-icon,.start-workout-btn svg{flex:0 0 20px;width:20px;height:20px}.start-workout-btn-label{text-align:center;min-width:0}.start-workout-btn:hover{transform:translateY(-2px);box-shadow:0 6px 28px #22d3ee66,inset 0 1px #ffffff73}.start-workout-btn.is-done{background:linear-gradient(135deg, var(--success), #10b981)}.start-workout-btn.is-done:hover{box-shadow:0 0 30px #34d39966}.start-workout-btn.is-secondary{color:var(--text-primary);border:1px solid var(--border,#ffffff1f);box-shadow:none;background:#ffffff08}.start-workout-btn.is-secondary:hover{color:var(--accent);background:#22d3ee0f;border-color:#22d3ee80;transform:translateY(-2px);box-shadow:0 4px 16px #22d3ee1f}.start-workout-block{background:#050a12e0;border:1px solid #ffffff12;border-radius:16px;flex-direction:column;gap:6px;width:100%;max-width:600px;margin-top:auto;margin-left:auto;margin-right:auto;padding:10px 10px 16px;display:flex}.start-workout-hint{color:var(--success);text-align:center;background:#34d39914;border-radius:8px;margin:0;padding:6px 10px;font-size:13px;font-weight:600;line-height:1.35}.community-link{color:#9fb0c7;justify-content:center;align-items:center;gap:6px;margin-top:12px;margin-bottom:4px;padding:4px 0;text-decoration:none;transition:color .2s;display:flex}.community-link svg{color:#9fb0c7;flex-shrink:0;transition:color .2s}.community-link-text{flex-direction:column;gap:1px;line-height:1.15;display:flex}.community-link-title{font-family:var(--font-body);letter-spacing:.8px;text-transform:uppercase;font-size:11px;font-weight:700}.community-link-subtitle{font-family:var(--font-body);color:#9fb0c7;opacity:.7;font-size:10px}.community-link:hover svg{color:var(--accent)}.dashboard-refreshing{pointer-events:none;background:linear-gradient(90deg, transparent, var(--accent), transparent);z-index:100;background-size:200% 100%;height:3px;animation:1s linear infinite refresh-slide;position:fixed;top:0;left:0;right:0}@keyframes refresh-slide{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050a12c7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-box{background:var(--bg-panel);border-radius:var(--radius);border:1px solid #9fb0c72e;width:min(100%,420px);padding:24px;box-shadow:0 24px 60px #00000080}.modal-box h3{color:var(--text-primary);margin-bottom:12px;font-size:16px;font-weight:800}.modal-box p{color:var(--text-secondary);margin-bottom:22px;font-size:14px;line-height:1.55}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.modal-cancel,.modal-confirm{cursor:pointer;border-radius:10px;padding:11px 18px;font-size:14px;font-weight:700;transition:background .2s,box-shadow .2s}.modal-cancel{background:var(--bg-panel-hover);color:var(--text-secondary)}.modal-cancel:hover{background:var(--border);color:var(--text-primary)}.modal-confirm{background:var(--accent);color:var(--bg-primary)}.modal-confirm:hover{box-shadow:0 0 22px var(--accent-glow)}@media (width<=400px){.modal-actions{flex-direction:column-reverse}.modal-cancel,.modal-confirm{width:100%}}.loading-screen{justify-content:center;align-items:center;min-height:100vh;display:flex}.loading-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@media (width<=600px){.dashboard-content{gap:10px;padding:12px 12px 0}.level-card{padding:14px 16px}.level-card-top{gap:12px;margin-bottom:14px}.profile-avatar{width:56px;height:56px}.profile-avatar svg{width:24px;height:24px}.level-badge{width:32px;height:32px;bottom:-10px;right:-10px}.level-number{font-size:12px}.user-name{letter-spacing:0;font-size:16px}.rank-name{font-size:14px}.rank-letter-badge{width:30px;height:34px;font-size:15px}.xp-bar-header{margin-bottom:6px;font-size:13px}.level-card-footer{margin-top:10px;padding-top:8px;font-size:12px}.streak-widget{gap:10px;padding:12px 14px}.streak-icon{width:36px;height:36px}.streak-flame{width:22px;height:22px}.streak-value{font-size:20px}.streak-label{font-size:14px}.quest-card,.weekly-progress{padding:14px 16px}.quest-header,.weekly-header{gap:8px;margin-bottom:12px}.quest-header h2,.weekly-header h2{font-size:16px}.quest-title{font-size:15px}.quest-info{gap:4px}.weekly-count{font-size:24px}.weekly-body{gap:8px}.start-workout-btn{letter-spacing:.4px;gap:10px;padding:14px 12px;font-size:16px}.start-workout-block{gap:6px;padding:8px 8px 14px}.start-workout-hint{font-size:12px;line-height:1.3}.program-card-top{margin-bottom:12px}.program-body{gap:6px}.program-quest-btn{width:100%;padding:12px}.program-under{margin-top:-4px}.choose-program-btn{padding:12px;font-size:13px}}.rest-card{border-color:#34d39959;box-shadow:0 0 18px #34d39914}.rest-card .program-card-top .quest-header{flex:auto;align-items:flex-start}.rest-card .program-card-top .quest-header h2{text-overflow:clip;white-space:normal;overflow-wrap:break-word;font-size:18px;line-height:1.2;overflow:visible}.rest-day-message{color:var(--text-primary);margin:0 0 14px;font-size:14px;line-height:1.45}.rest-day-intro{font-family:var(--font-body);color:#9fb0c7;margin:0 0 16px;font-size:14px;line-height:1.5}.rest-timer-block{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:6px;margin-bottom:16px;padding:16px;display:flex}.rest-timer-label{letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary);font-size:11px;font-weight:700}.rest-timer{font-family:var(--font-mono);letter-spacing:1px;color:var(--accent);font-variant-numeric:tabular-nums;font-size:32px;font-weight:700;line-height:1.1}.rest-timer-hint{color:#fff6;font-size:11px}.rest-tip{border-top:1px solid var(--border);align-items:flex-start;gap:10px;padding:12px 0;display:flex}.rest-activity-heading{border-top:1px solid var(--border);font-family:var(--font-body);letter-spacing:1px;text-transform:uppercase;color:#22d3ee;margin:0;padding:12px 0 0;font-size:12px;font-weight:700}.rest-activity-heading+.rest-tip{border-top:none;padding-top:2px}.rest-tip-text{flex-direction:column;gap:4px;min-width:0;display:flex}.rest-tip-label{letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary);font-size:10px;font-weight:800}.rest-tip p{color:var(--text-primary);margin:0;font-size:14px;line-height:1.45}.recovery-activity-link{color:inherit;align-items:center;gap:6px;text-decoration:none;transition:color .15s;display:inline-flex}.recovery-activity-link:hover{color:#22d3ee}.recovery-activity-link svg{opacity:.85;flex:none}.recovery-activity-link:hover svg{opacity:1}.rest-error{text-align:center;color:var(--danger,#f87171);border-radius:var(--radius-sm);background:#f871711a;border:1px solid #f8717159;margin-top:12px;padding:10px 12px;font-size:12px}.rest-actions{flex-direction:column;gap:10px;margin-top:16px;display:flex}.rest-done-btn{background:var(--accent);color:#050a12;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:800;transition:box-shadow .2s,transform .2s,background .2s;display:flex}.rest-done-btn:hover:not(:disabled){box-shadow:0 5px 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}.rest-done-btn:disabled{opacity:.55;cursor:default}.rest-done-btn.is-done{color:var(--success);background:#34d39929;border-color:#34d399bf}.rest-done-btn.is-done:disabled{opacity:1;cursor:default}.rest-skip-link{color:#ffffff73;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;justify-content:center;align-self:center;align-items:center;gap:6px;padding:4px 8px;font-size:12px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;transition:color .2s;display:inline-flex}.rest-skip-link:hover:not(:disabled){color:var(--accent)}.rest-skip-link:disabled{opacity:.5;cursor:default}.rest-step-hint{text-align:center;font-family:var(--font-body);color:#9fb0c7;opacity:.9;margin-top:10px;font-size:13px;line-height:1.4}@media (width<=480px){.rest-timer{font-size:28px}}.tutorial-link{color:#22d3ee;opacity:.8;vertical-align:middle;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-left:5px;transition:opacity .2s,transform .2s;display:inline-flex}.tutorial-link:hover{opacity:1;transform:translateY(-1px)scale(1.08)}.tutorial-link:focus-visible{outline-offset:2px;opacity:1;outline:2px solid #22d3ee}.set-name-badges .tutorial-link{margin-left:0}.workout-page{box-sizing:border-box;width:100%;max-width:100%;min-height:100vh;padding-bottom:40px}.workout-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);justify-content:center;align-items:center;transition:background .2s;display:flex}.workout-header h1{font-size:20px;font-weight:700}.workout-content{box-sizing:border-box;flex-direction:column;gap:20px;width:100%;max-width:600px;margin:0 auto;padding:16px;display:flex}.add-exercise-card,.sets-list-card,.type-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.type-card{flex-direction:column;gap:12px;padding:18px 24px;display:flex}.type-card-label{color:var(--text-secondary);font-size:13px;font-weight:500}.type-tabs{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.type-tab{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:110px;color:var(--text-secondary);text-align:center;cursor:pointer;flex-direction:column;justify-content:flex-start;align-items:center;gap:6px;padding:16px 6px 12px;transition:all .2s;display:flex}.type-tab:hover{color:var(--text-primary);border-color:var(--accent)}.type-tab.active{border-color:var(--accent);color:var(--accent);background:linear-gradient(#22d3ee40,#22d3ee0d);box-shadow:0 0 14px #22d3ee2e}.type-tab-icon{color:var(--accent);opacity:.9}.type-tab-label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13px;font-weight:700;overflow:hidden}.type-tab-hint{color:var(--text-secondary);letter-spacing:0;text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:10px;font-weight:500;line-height:1.2;overflow:hidden}.type-tab.active .type-tab-hint{color:var(--accent);opacity:.75}.add-exercise-card h2,.sets-list-card h2{margin-bottom:20px;font-size:16px;font-weight:800}.exercise-form{flex-direction:column;gap:16px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row--3{grid-template-columns:repeat(3,1fr)}@media (width<=480px){.form-row--3{grid-template-columns:1fr 1fr}}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text-secondary);font-size:13px;font-weight:500}.form-group input{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .2s}.form-group input:focus{border-color:var(--accent)}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.add-btn{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:8px;padding:12px;font-size:15px;font-weight:600;transition:all .2s;display:flex}.add-btn:hover{background:var(--accent);color:var(--bg-primary)}.empty-message{color:var(--text-secondary);text-align:center;padding:20px;font-size:14px}.sets-list{flex-direction:column;gap:8px;list-style:none;display:flex}.set-item{background:var(--bg-primary);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.set-info{flex-direction:column;gap:4px;display:flex}.set-name{color:var(--text-primary);font-weight:600}.set-details{color:var(--text-secondary);font-size:13px}.remove-btn{width:36px;height:36px;color:var(--text-secondary);background:0 0;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex}.remove-btn:hover{color:var(--danger);background:#f871711a}.workout-error{color:var(--danger);text-align:center;border-radius:var(--radius-sm);background:#f871711a;padding:12px;font-size:14px}.finish-btn{background:linear-gradient(135deg, var(--accent), #06b6d4);width:100%;color:var(--bg-primary);border-radius:var(--radius);text-transform:uppercase;letter-spacing:0;justify-content:center;align-items:center;gap:10px;padding:18px;font-size:16px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 4px 20px #22d3ee33,inset 0 1px #ffffff59}.finish-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 28px #22d3ee66,inset 0 1px #ffffff73}.finish-btn:disabled{opacity:.7;cursor:not-allowed}@media (width<=480px){.workout-header h1{font-size:17px}}@media (width<=600px){.workout-content{gap:14px;padding:12px}.add-exercise-card,.sets-list-card{padding:16px 14px}.type-card{padding:14px}.type-tabs{grid-template-columns:repeat(2,1fr);gap:6px}.type-tab{gap:4px;min-height:92px;padding:12px 6px 8px}.type-tab-label{font-size:13px}.type-tab-hint{font-size:10px}.finish-btn{padding:14px;font-size:15px}}.search-section{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;padding:16px 20px;display:flex}.search-icon{color:var(--text-secondary);flex:0 0 18px}.search-input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:17px;font-weight:600}.search-input::placeholder{color:var(--text-secondary)}.exercises-section{margin-top:12px}.section-title{color:var(--text-secondary);margin:0 0 10px;font-size:15px;font-weight:800}.exercise-list{scroll-snap-type:x proximity;flex-wrap:nowrap;gap:12px;margin:0;padding:0 40px 8px 0;list-style:none;display:flex;overflow-x:auto}.exercise-list::-webkit-scrollbar{display:none}.exercise-btn{scroll-snap-align:start;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:140px;max-width:160px;color:var(--text-primary);cursor:pointer;text-align:center;flex-direction:column;flex:none;align-items:center;gap:6px;padding:14px 10px;font-size:13px;font-weight:600;transition:all .2s;display:flex;overflow:hidden}.exercise-btn:hover{border-color:var(--accent);background:#22d3ee0d}.exercise-btn.active{border-color:var(--accent);background:#22d3ee26;box-shadow:0 0 14px #22d3ee26}.exercise-name{white-space:nowrap;text-overflow:ellipsis;text-align:center;width:100%;min-width:0;font-size:12px;line-height:1.2;display:block;overflow:hidden}.exercise-name-first{font-size:15px;font-weight:800;display:inline}.exercise-name-rest{opacity:.9;font-size:12px;font-weight:600;display:inline}.exercise-hint{min-width:0;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.selected-exercise-head{align-items:flex-start;gap:10px;margin-bottom:16px;display:flex}.selected-exercise-title{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.selected-exercise-head h2{margin:0;font-size:18px;font-weight:800}.input-type-hint{color:var(--text-secondary);text-align:right;flex-shrink:0;margin-left:auto;padding-top:2px;font-size:12px}@media (width<=600px){.exercise-btn{padding:12px 8px;font-size:13px}}.exercise-badge{letter-spacing:.6px;color:var(--accent);background:#22d3ee14;border:1px solid #22d3ee73;border-radius:999px;margin-top:2px;padding:2px 7px;font-size:8px;font-weight:800;line-height:1.2}.exercise-empty{flex-direction:column;align-items:center;gap:4px;padding:8px 0 4px;display:flex}.exercise-empty .empty-message{padding:12px 20px}.create-exercise-btn{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;max-width:100%;padding:12px 18px;font-size:14px;font-weight:700;transition:all .2s;display:inline-flex}.create-exercise-btn:not(:disabled):hover{background:var(--accent);color:var(--bg-primary)}.create-exercise-btn:disabled{opacity:.5;cursor:not-allowed}.custom-modal-overlay{z-index:400;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b8;place-items:center;padding:20px;animation:.2s both customFadeIn;display:grid;position:fixed;inset:0}.custom-modal{background:#0d1626;border:1px solid #9fb0c72e;border-radius:14px;width:min(100%,440px);max-height:calc(100vh - 40px);padding:26px 24px 22px;animation:.25s cubic-bezier(.22,1,.36,1) both customPop;overflow-y:auto;box-shadow:0 24px 60px #0000008c}.custom-modal-title{color:var(--text-primary);margin-bottom:18px;font-size:17px;font-weight:800}.custom-field{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.custom-field>span{color:var(--text-secondary);font-size:13px;font-weight:600}.custom-field>input{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .2s}.custom-field>input:focus{border-color:var(--accent);outline:none}.custom-type-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.custom-type-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;flex-direction:column;align-items:center;gap:7px;padding:14px 6px;font-size:12px;font-weight:700;transition:all .2s;display:flex}.custom-type-card:hover{color:var(--text-primary);border-color:var(--accent)}.custom-type-card.active{border-color:var(--accent);color:var(--accent);background:linear-gradient(#22d3ee40,#22d3ee0d);box-shadow:0 0 14px #22d3ee2e}.custom-check{color:var(--text-primary);cursor:pointer;align-items:center;gap:10px;margin-bottom:16px;font-size:14px;display:flex}.custom-check input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.custom-modal-error{color:var(--danger);border-radius:var(--radius-sm);background:#f871711a;margin-bottom:14px;padding:10px 12px;font-size:13px}.custom-modal-actions{justify-content:flex-end;gap:10px;display:flex}.custom-btn{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;min-width:104px;padding:11px 18px;font-size:14px;font-weight:700;transition:all .2s;display:inline-flex}.custom-btn:disabled{opacity:.6;cursor:not-allowed}.custom-btn.secondary{color:var(--text-primary);border:1px solid var(--border);background:0 0}.custom-btn.secondary:not(:disabled):hover{border-color:var(--text-secondary)}.custom-btn.primary{background:var(--accent);color:var(--bg-primary);border:none}.custom-btn.primary:not(:disabled):hover{box-shadow:0 0 22px #22d3ee59}@keyframes customFadeIn{0%{opacity:0}to{opacity:1}}@keyframes customPop{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=480px){.custom-modal{padding:20px 16px 18px}.custom-type-card{padding:12px 4px;font-size:11px}}.set-name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.set-name-badges{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.picked-badge{letter-spacing:.6px;text-transform:uppercase;white-space:nowrap;color:var(--accent);background:#22d3ee14;border:1px solid #22d3ee73;border-radius:999px;padding:2px 7px;font-size:8px;font-weight:800;line-height:1.2}.selected-exercise-head .picked-badge{flex-shrink:0;transform:translateY(-1px)}.summary-overlay{z-index:300;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;background:#000000e6;place-items:center;padding:24px;transition:opacity .35s;display:grid;position:fixed;inset:0}.summary-overlay.show{opacity:1}.summary-box{text-align:center;flex-direction:column;align-items:center;gap:22px;width:min(100%,440px);transition:transform .4s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(14px)scale(.97)}.summary-overlay.show .summary-box{transform:translateY(0)scale(1)}.summary-badge{letter-spacing:.16em;color:var(--accent);background:var(--accent-dim);border:1px solid #22d3ee66;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.summary-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary,#f3f6fa);text-transform:uppercase;font-size:clamp(26px,7vw,38px);font-weight:800;line-height:1.1}.step-done{background:linear-gradient(135deg,#34d39924,#0000);border:1px solid #34d39973;border-radius:14px;flex-direction:column;align-items:center;gap:8px;width:100%;padding:16px 26px;animation:1.8s ease-in-out infinite stepDonePulse;display:flex;box-shadow:0 0 30px #34d39924}.step-done-icon{width:44px;height:44px;color:var(--success);background:#34d39929;border-radius:50%;place-items:center;display:grid}.step-done-text{font-family:var(--font-body);letter-spacing:.5px;text-transform:uppercase;color:var(--success);font-size:15px;font-weight:800}.step-done-text--final{color:var(--accent)}.step-done-sub{font-family:var(--font-body);color:var(--text-secondary,#93a4b5);font-size:13px;font-weight:600}@keyframes stepDonePulse{0%,to{box-shadow:0 0 30px #34d3991a}50%{box-shadow:0 0 42px #34d3993d}}.levelup{background:linear-gradient(135deg,#fbbf2424,#0000);border:1px solid #fbbf2466;border-radius:14px;flex-direction:column;align-items:center;gap:10px;width:100%;padding:20px 26px;display:flex;box-shadow:0 0 30px #fbbf241f}.levelup-crown{width:60px;height:60px;color:var(--warning);background:#fbbf2429;border-radius:50%;place-items:center;animation:1.6s ease-in-out infinite crownPulse;display:grid}.levelup-text{font-family:var(--font-body);letter-spacing:.5px;text-transform:uppercase;color:#fbbf24;font-size:15px;font-weight:800}.levelup-nums{align-items:center;gap:14px;display:flex}.levelup-old,.levelup-new{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:42px;font-weight:800;line-height:1}.levelup-old{color:#f3f6fa73}.levelup-arrow{color:#fbbf24;place-items:center;display:grid}.levelup-new{color:#fbbf24;text-shadow:0 0 24px #fbbf248c}.total-block{flex-direction:column;gap:4px;display:flex}.total-label{letter-spacing:.14em;text-transform:uppercase;color:#9fb0c7e6;font-size:13px;font-weight:600}.total-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--warning);text-shadow:0 0 28px #fbbf2459;font-size:clamp(40px,11vw,56px);font-weight:800;line-height:1}.total-value.zero{color:#9fb0c7bf;text-shadow:none;font-size:clamp(30px,8vw,40px)}.detail-list{flex-direction:column;gap:10px;width:100%;padding:4px 0;list-style:none;display:flex}.detail-row{font-size:14px;font-family:var(--font-body);color:#9fb0c7f2;justify-content:space-between;align-items:center;gap:16px;display:flex}.detail-row .detail-name{text-align:left}.detail-row .detail-amount{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--warning);white-space:nowrap;font-weight:700}.detail-row.achievement .detail-amount{color:var(--warning)}.no-xp-note{font-size:14px;font-family:var(--font-body);color:#9fb0c7f2;max-width:320px;line-height:1.55}.summary-actions{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;margin-top:6px;display:flex}.summary-btn{cursor:pointer;border-radius:12px;flex:160px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:14px;font-weight:700;transition:box-shadow .2s,background .2s;display:inline-flex}.summary-btn.primary{background:var(--accent);color:#050a12}.summary-btn.primary:hover{box-shadow:0 0 24px var(--accent-glow)}.summary-btn.secondary{color:#f3f6fae6;background:0 0;border:1px solid #9fb0c74d}.summary-btn.secondary:hover{border-color:#9fb0c799}@keyframes levelZoomIn{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes crownPulse{0%,to{box-shadow:0 0 #fbbf2459}50%{box-shadow:0 0 0 14px #fbbf2400}}.card-page{box-sizing:border-box;width:100%;max-width:100%;min-height:100vh;padding-bottom:max(100px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;display:flex;overflow-x:clip}.card-header{border-bottom:1px solid var(--border);z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0b1220eb;align-items:center;gap:14px;width:100%;padding:14px 24px;display:flex;position:sticky;top:0}.back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);flex:0 0 40px;justify-content:center;align-items:center;transition:background .2s;display:inline-flex}.back-btn:hover{background:var(--border)}.card-header h1{min-width:0;font-size:clamp(17px,2vw,20px);font-weight:700}.card-content{box-sizing:border-box;flex-direction:column;align-items:center;gap:18px;width:100%;min-width:0;max-width:760px;margin:0 auto;padding:16px;display:flex}.template-tabs{background:var(--bg-panel);border:1px solid #9fb0c71f;border-radius:12px;gap:4px;width:min(100%,440px);min-width:0;padding:4px;display:flex}.template-tab{min-width:0;color:var(--text-secondary);background:0 0;border-radius:8px;flex:1 1 0;justify-content:center;align-items:center;gap:8px;padding:11px 10px;font-size:13px;font-weight:600;line-height:1.3;transition:color .2s,background .2s;display:flex}.template-tab svg{flex:none}.template-tab:hover{color:var(--text-primary)}.template-tab.active{background:linear-gradient(180deg, var(--accent), #0e7490);color:#050a12}.canvas-wrapper{isolation:isolate;aspect-ratio:9/16;touch-action:pan-y;background:#0b1220;border:0;border-radius:4px;width:min(100%,360px);min-width:0;max-width:100%;height:auto;position:relative;overflow:hidden;box-shadow:0 18px 50px #00000047}.canvas-wrapper.transparent-bg{background-color:#111827;background-image:linear-gradient(45deg,#1d293b 25%,#0000 25%),linear-gradient(-45deg,#1d293b 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#1d293b 75%),linear-gradient(-45deg,#0000 75%,#1d293b 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px}.card-canvas{aspect-ratio:9/16;object-fit:contain;width:100%;max-width:360px;height:auto;display:block}.card-canvas.is-croppable{cursor:grab}.card-canvas.is-croppable:active{cursor:grabbing}.canvas-empty-state{text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050a12db;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex;position:absolute;inset:0}.canvas-empty-state strong{font-size:18px}.canvas-empty-state span{max-width:260px;color:var(--text-secondary);font-size:13px;line-height:1.5}.canvas-empty-state button{color:#050a12;background:var(--accent);border-radius:8px;margin-top:4px;padding:10px 14px;font-weight:700}.canvas-loading{color:#fff;background:#050a12b8;place-items:center;font-size:14px;font-weight:600;display:grid;position:absolute;inset:0}.hud-hint{flex-direction:column;align-items:center;gap:8px;width:min(100%,400px);display:flex}.hud-hint p{color:var(--text-secondary);text-align:center;font-size:12px;line-height:1.4}.hud-reset-btn{color:var(--text-secondary);background:var(--bg-panel);border:1px solid #9fb0c72e;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:600;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.hud-reset-btn:hover:not(:disabled){color:var(--text-primary);border-color:#22d3ee66}.hud-reset-btn:disabled{opacity:.55;cursor:not-allowed}.crop-controls{background:var(--bg-panel);border:1px solid #9fb0c71f;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:10px 12px;width:min(100%,360px);padding:14px 16px;display:grid}.crop-controls label{color:var(--text-primary);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.crop-controls input[type=range]{width:100%;min-width:0;accent-color:var(--accent);grid-column:1}.zoom-value{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px}.reset-crop-btn{color:var(--text-secondary);background:var(--bg-panel-hover);white-space:nowrap;border-radius:8px;grid-area:2/2;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12px;display:inline-flex}.crop-controls p{color:var(--text-secondary);grid-column:1/-1;font-size:12px;line-height:1.4}.card-error{width:min(100%,440px);color:var(--danger);text-align:center;border-radius:var(--radius-sm);background:#f871711a;padding:12px 16px;font-size:14px;line-height:1.45}.card-controls{flex-wrap:wrap;gap:10px;width:min(100%,440px);min-width:0;display:flex}.upload-btn,.download-btn,.share-btn{cursor:pointer;text-align:center;border-radius:10px;flex:1 1 0;justify-content:center;align-items:center;gap:8px;min-width:0;padding:13px 12px;font-size:13px;font-weight:700;line-height:1.3;transition:background .2s,opacity .2s;display:flex}.upload-btn svg,.download-btn svg,.share-btn svg{flex:none}.upload-btn{background:var(--accent-dim);color:var(--accent)}.upload-btn:hover,.download-btn{background:var(--accent);color:var(--bg-primary)}.download-btn:hover:not(:disabled){background:#06b6d4}.share-btn{color:var(--text-primary);background:0 0;border:1px solid #9fb0c747}.share-btn:hover:not(:disabled){background:#9fb0c71f}.download-btn:disabled,.share-btn:disabled,.upload-btn.is-disabled{opacity:.55;cursor:not-allowed}.upload-hint{max-width:100%;color:var(--text-secondary);text-align:center;font-size:12px;line-height:1.5}.card-footer-nav{flex-direction:column;align-items:center;gap:12px;width:min(100%,440px);display:flex}.home-btn{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;background:var(--accent);width:auto;max-width:600px;color:var(--bg-primary);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:15px 12px;font-size:15px;font-weight:800;transition:background .2s,box-shadow .2s,transform .2s;display:flex;position:fixed}.home-btn:hover{box-shadow:0 0 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}.history-fix-hint{color:var(--text-secondary);text-align:center;margin:0;font-size:12px;line-height:1.5}.history-fix-link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.history-fix-link:hover{color:#06b6d4}.privacy-toggle{background:var(--bg-panel);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #9fb0c72e;border-radius:10px;align-items:center;gap:10px;width:fit-content;margin-top:4px;padding:10px 14px;transition:border-color .2s,background .2s;display:inline-flex}.privacy-toggle:hover{border-color:#22d3ee66}.privacy-toggle.is-on{border-color:var(--accent);background:var(--accent-dim)}.privacy-toggle input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.privacy-switch{background:#ffffff29;border-radius:11px;flex:none;width:40px;height:22px;transition:background .2s;position:relative}.privacy-toggle.is-on .privacy-switch{background:var(--accent)}.privacy-knob{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px}.privacy-toggle.is-on .privacy-knob{transform:translate(18px)}.privacy-label{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.3}.privacy-toggle input:focus-visible+.privacy-switch{outline:2px solid var(--accent);outline-offset:2px}@media (width<=500px){.card-header{gap:10px;padding:10px 14px}.card-content{gap:14px;padding:14px 12px 20px}.template-tabs{width:100%}.template-tab{gap:6px;padding:10px 6px;font-size:11px}.template-tab svg{width:16px;height:16px}.canvas-wrapper{border-radius:3px;width:min(100%,360px);max-width:100%;height:auto}.crop-controls{width:min(100%,360px)}.card-controls{gap:8px;width:min(100%,360px)}.upload-btn{flex:100%}.download-btn,.share-btn{flex:calc(50% - 4px)}.upload-btn,.download-btn,.share-btn{gap:6px;padding:12px 8px;font-size:12px}.upload-btn svg,.download-btn svg,.share-btn svg{width:17px;height:17px}}@media (width<=350px){.card-content{padding-inline:8px}.template-tab{flex-direction:column;gap:4px;font-size:10px}.card-controls{flex-direction:column}.upload-btn,.download-btn,.share-btn{flex:auto;width:100%;min-height:44px;font-size:13px}}@media (height<=700px) and (width>=501px){.card-content{gap:12px;padding-block:12px}.canvas-wrapper{width:min(100%,300px)}.card-canvas{max-width:300px}}@media (prefers-reduced-motion:reduce){.back-btn,.template-tab,.upload-btn,.download-btn,.share-btn{transition:none}}.history-page{box-sizing:border-box;width:100%;max-width:100%;min-height:100vh;padding-bottom:96px}.history-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.history-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.history-header h1{font-size:18px;font-weight:700}.history-content{box-sizing:border-box;width:100%;max-width:600px;margin:0 auto;padding:16px}.history-loading{justify-content:center;padding:60px 0;display:flex}.history-error{text-align:center;color:var(--danger,#ef4444);padding:40px 20px}.history-empty{color:var(--text-secondary);text-align:center;flex-direction:column;align-items:center;gap:16px;padding:60px 20px;display:flex}.history-empty p{font-size:16px}.start-first-btn{background:var(--accent);color:var(--bg-primary);border-radius:var(--radius-sm);padding:12px 24px;font-size:15px;font-weight:700}.workout-list{flex-direction:column;gap:12px;list-style:none;display:flex}.workout-item{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);cursor:pointer;padding:18px 20px;transition:border-color .2s,box-shadow .2s}.workout-item:hover{border-color:#22d3ee73;box-shadow:0 0 16px #22d3ee14}.workout-item-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.workout-date{color:var(--text-primary);font-size:14px;font-weight:600}.workout-date-group{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:inline-flex}.workout-program-badge{letter-spacing:.5px;text-transform:uppercase;color:var(--accent);white-space:nowrap;cursor:default;background:#22d3ee1a;border:1px solid #22d3ee80;border-radius:999px;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.workout-program-badge svg{color:inherit;flex:0 0 12px}.workout-xp-badge{font-family:var(--font-mono);color:var(--warning);white-space:nowrap;background:#fbbf241f;border-radius:999px;align-items:center;padding:3px 9px;font-size:14px;font-weight:700;display:inline-flex}.workout-item-actions{align-items:center;gap:12px;display:flex}.history-home-btn{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;width:auto;max-width:600px;font-size:14px;font-weight:700;font-family:var(--font-body);color:#050a12;background:var(--accent);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:12px 20px;transition:box-shadow .2s,transform .2s;display:inline-flex;position:fixed}.history-home-btn:hover{box-shadow:0 0 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}.workout-delete-btn{width:32px;height:32px;color:var(--text-secondary);background:0 0;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.workout-delete-btn:hover:not(:disabled){color:var(--danger);background:#f871711a}.workout-delete-btn:disabled{opacity:.55;cursor:not-allowed}.history-notice{text-align:center;width:100%;color:var(--success);border-radius:var(--radius-sm);background:#34d3991f;border:1px solid #34d3994d;margin-bottom:8px;padding:12px 16px;font-size:14px;font-weight:600}.workout-sets{flex-direction:column;gap:6px;list-style:none;display:flex}.workout-set-line{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.workout-set-line svg{color:var(--accent);flex-shrink:0}.set-reps{color:var(--text-primary);margin-left:auto;font-weight:600}.workout-no-sets{color:var(--text-secondary);font-size:13px;font-style:italic}@media (width<=600px){.history-header{padding:12px 16px}}.section-title{color:var(--text-primary);align-items:center;gap:8px;margin:0 0 12px;font-size:16px;font-weight:800;display:flex}.section-title svg{color:var(--accent)}.workouts-title{margin-top:24px}.achievements-list{flex-direction:column;gap:8px;list-style:none;display:flex}.achievement-item{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);align-items:center;gap:14px;padding:14px 16px;display:flex}.achievement-item.locked{opacity:.55}.achievement-icon{background:var(--bg-primary);border-radius:var(--radius-sm);width:38px;height:38px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.achievement-item.locked .achievement-icon{color:var(--text-secondary)}.achievement-info{flex-direction:column;gap:2px;min-width:0;display:flex}.achievement-title{color:var(--text-primary);font-size:14px;font-weight:700}.achievement-desc{color:var(--text-secondary);font-size:12px}.achievement-xp{color:var(--warning);white-space:nowrap;margin-left:auto;font-size:13px;font-weight:700}@media (width<=600px){.history-content{padding:12px}.workout-item{padding:14px 16px}.achievement-item{gap:10px;padding:12px 14px}.section-title{margin-bottom:10px}.workouts-title{margin-top:16px}}.programs-page{box-sizing:border-box;background:var(--bg-primary);width:100%;max-width:100%;min-height:100vh;padding-bottom:96px}.programs-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px;display:flex;position:sticky;top:0}.programs-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s;display:flex}.programs-header .back-btn:hover{background:var(--border)}.programs-header h1{letter-spacing:-.02em;font-size:20px;font-weight:700}.programs-content{box-sizing:border-box;flex-direction:column;gap:20px;width:100%;max-width:720px;margin:0 auto;padding:16px;display:flex}.programs-loading{justify-content:center;padding:60px 0;display:flex}.programs-loading .spinner{animation:1s linear infinite programs-spin}@keyframes programs-spin{to{transform:rotate(360deg)}}.programs-error{color:#f87171;border-radius:var(--radius);background:#f871711a;border:1px solid #f8717166;padding:12px 14px;font-size:13px}.programs-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=700px){.programs-grid{grid-template-columns:repeat(2,1fr)}}.program-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;flex-direction:column;gap:10px;padding:18px;transition:border-color .2s,box-shadow .2s;display:flex}.program-card:hover,.program-card:focus-visible{border-color:var(--accent)}.program-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.program-card--active{border-color:var(--accent);box-shadow:0 0 16px #22d3ee26}.program-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.program-card-icon{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.program-card-tags{align-items:center;gap:6px;display:flex}.program-difficulty{text-transform:uppercase;letter-spacing:.5px;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.difficulty--beginner{color:var(--accent);background:#22d3ee1f}.difficulty--medium{color:var(--warning);background:#fbbf241f}.difficulty--hard,.difficulty--advanced{color:#f87171;background:#f871711f}.program-badge-active{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);border:1px solid var(--accent);background:#22d3ee26;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800}.program-card-title{color:var(--text-primary)}.program-card-desc{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.45}.program-card-meta{color:var(--text-secondary);opacity:.85;font-size:11px;font-weight:600}.program-current-step{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:4px;padding:12px;display:flex}.program-current-label{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);font-size:10px;font-weight:800}.program-current-title{color:var(--text-primary);font-size:14px;font-weight:700}.program-current-params{font-family:var(--font-mono);color:var(--text-secondary);font-size:12px}.program-card-actions{margin-top:auto;padding-top:4px}.program-card-btn{width:100%;font-family:var(--font-body);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:700;transition:background .2s,box-shadow .2s,transform .2s,opacity .2s;display:inline-flex}.program-card-btn:disabled{opacity:.6;cursor:default}.program-card-btn--start{background:var(--accent);color:#050a12;border:none}.program-card-btn--start:hover:not(:disabled){box-shadow:0 0 18px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}.program-card-btn--continue{color:var(--accent);border:1px solid var(--accent);background:0 0}.program-card-btn--continue:hover{background:#22d3ee1a}.program-chevron{transition:transform .2s}.program-chevron--up{transform:rotate(180deg)}.programs-home-btn{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;width:auto;max-width:600px;font-size:14px;font-weight:700;font-family:var(--font-body);color:#050a12;background:var(--accent);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:14px 20px;transition:box-shadow .2s,transform .2s;display:inline-flex;position:fixed}.programs-home-btn:hover{box-shadow:0 0 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}@media (width<=600px){.programs-content{padding:12px}.programs-header{padding:14px 12px}.program-card{padding:16px 14px}}.programs-section{flex-direction:column;gap:12px;display:flex}.programs-section-title{letter-spacing:.8px;color:var(--accent);align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.programs-section-count{font-family:var(--font-mono);letter-spacing:0;color:var(--text-secondary);background:var(--bg-panel);border:1px solid var(--border);border-radius:999px;align-items:center;padding:1px 8px;font-size:11px;display:inline-flex}.show-all-btn{width:100%;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.5px;color:var(--accent);cursor:pointer;background:0 0;border:1px solid #22d3ee73;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:700;transition:background .2s,border-color .2s;display:inline-flex}.show-all-btn:hover{border-color:var(--accent);background:#22d3ee14}.program-card-side{flex-shrink:0;align-items:center;gap:8px;display:flex}.favorite-btn{border:1px solid var(--border);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:#ffffff0a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:color .2s,background .2s,border-color .2s;display:flex}.favorite-btn:hover:not(:disabled){color:var(--warning);background:#fbbf2414;border-color:#fbbf2480}.favorite-btn.is-active{color:var(--warning);background:#fbbf241f;border-color:#fbbf248c}.favorite-btn:disabled{opacity:.6;cursor:default}@media (width<=380px){.program-card-tags{flex-wrap:wrap;justify-content:flex-end}}.program-detail-page{box-sizing:border-box;background:var(--bg-primary);width:100%;max-width:100%;min-height:100vh;padding-bottom:40px}.program-detail-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px;display:flex;position:sticky;top:0}.program-detail-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s;display:flex}.program-detail-header .back-btn:hover{background:var(--border)}.program-detail-header h1{letter-spacing:-.02em;font-size:20px;font-weight:700}.program-detail-content{box-sizing:border-box;flex-direction:column;gap:20px;width:100%;max-width:640px;margin:0 auto;padding:16px;display:flex}.program-hero{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:10px;padding:18px;display:flex}.program-hero-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.program-hero-title{color:var(--text-primary)}.program-hero-desc{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.45}.program-hero-meta{color:var(--text-secondary);opacity:.85;font-size:11px;font-weight:600}.program-badge-done{text-transform:uppercase;letter-spacing:.5px;color:var(--success);border:1px solid var(--success);background:#34d39924;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800}.program-roadmap{flex-direction:column;display:flex}.roadmap-step{grid-template-columns:40px 1fr;gap:12px;display:grid}.roadmap-rail{flex-direction:column;align-items:center;display:flex}.roadmap-node{width:40px;height:40px;font-family:var(--font-body);box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.roadmap-line{background:var(--border);flex:1;width:2px;min-height:18px}.roadmap-step--future .roadmap-node{background:var(--bg-panel);border:1px solid var(--border);color:var(--text-secondary)}.roadmap-step--future .roadmap-card{opacity:.75}.roadmap-step--done .roadmap-node{border:1px solid var(--success);color:var(--success);background:#34d39929}.roadmap-step--done .roadmap-line{background:var(--success)}.roadmap-step--current .roadmap-node{border:2px solid var(--accent);color:var(--accent);box-shadow:0 0 12px var(--accent-glow);background:#22d3ee29}.roadmap-step--current .roadmap-line{background:var(--border)}.roadmap-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-sizing:border-box;flex-direction:column;gap:6px;margin-bottom:14px;padding:14px;display:flex}.roadmap-step--current .roadmap-card{border-color:var(--accent);box-shadow:0 0 16px #22d3ee26}.roadmap-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.roadmap-card-title{color:var(--text-primary);font-size:14px;font-weight:800}.roadmap-badge-current{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);border:1px solid var(--accent);background:#22d3ee26;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800}.roadmap-card-desc{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.45}.roadmap-card-params{font-family:var(--font-mono);color:var(--accent);font-size:12px;font-weight:600}.roadmap-step--future .roadmap-card-params{color:var(--text-secondary)}.roadmap-exercises{flex-direction:column;gap:3px;margin:2px 0 0;padding:0;list-style:none;display:flex}.roadmap-exercise{color:var(--text-secondary);padding-left:12px;font-size:12.5px;line-height:1.35;position:relative}.roadmap-exercise:before{content:"·";color:var(--accent);position:absolute;left:2px}.roadmap-step--future .roadmap-exercise:before{color:var(--text-secondary)}.program-detail-actions{flex-direction:column;gap:10px;display:flex}.program-cooldown-badge{border:1px solid var(--border);width:100%;color:var(--text-secondary);opacity:.7;cursor:default;box-sizing:border-box;background:#0b1220;border-radius:10px;align-items:center;gap:10px;padding:14px 16px;display:flex}.program-cooldown-badge svg{color:var(--text-secondary);flex-shrink:0}.program-cooldown-label{font-family:var(--font-body);flex:1;font-size:13px;font-weight:600;line-height:1.4}.program-cooldown-timer{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.5px;color:var(--text-primary);flex-shrink:0;font-size:15px}@media (width<=480px){.program-cooldown-badge{flex-wrap:wrap}.program-cooldown-timer{text-align:right;width:100%;font-size:14px}}.program-action-btn{width:100%;font-family:var(--font-body);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:14px;font-weight:700;transition:background .2s,box-shadow .2s,transform .2s,opacity .2s;display:inline-flex}.program-action-btn:disabled{opacity:.6;cursor:default}.program-action-btn--primary{background:var(--accent);color:#050a12;border:none}.program-action-btn--primary:hover:not(:disabled){box-shadow:0 0 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}.program-action-btn--ghost{color:var(--text-secondary);border:1px solid var(--border);background:0 0}.program-action-btn--ghost:hover{color:var(--text-primary);border-color:var(--text-secondary)}@media (width<=600px){.program-detail-content{padding:12px}.program-detail-header{padding:14px 12px}.roadmap-card{padding:12px}}.ranks-page{background:#050a12;min-height:100vh;padding-bottom:96px}.ranks-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.ranks-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.ranks-header h1{letter-spacing:-.02em;font-size:20px;font-weight:700}.ranks-content{max-width:600px;margin:0 auto;padding:24px 16px 40px}.ranks-loading{justify-content:center;padding:60px 0;display:flex}.ranks-error{border-radius:var(--radius-sm);color:var(--danger,#f87171);background:#f871711a;border:1px solid #f8717159;padding:16px;font-size:14px}.ranks-subtitle{color:var(--text-secondary);margin:0 0 20px;font-size:14px;line-height:1.5}.ranks-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.rank-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:stretch;padding:18px 20px;transition:opacity .2s,border-color .2s,box-shadow .2s;display:flex}.rank-card-head{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.rank-card.locked{opacity:.6}.rank-card.locked .rank-card-req,.rank-card.locked .rank-card-workouts{color:#94a3b8}.rank-card.current{background:linear-gradient(145deg,#22d3ee26 0%,#0b1220 100%);border:1px solid #22d3ee80;padding:20px 22px;box-shadow:0 0 25px #22d3ee26}.rank-hex{width:56px;height:56px;font-size:26px;font-weight:800;font-family:var(--font-display);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);flex-shrink:0;place-items:center;display:grid}.rank-card.current .rank-hex{text-shadow:0 0 14px}.rank-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.rank-card-name{font-size:20px;font-weight:700;line-height:1.15}.rank-card-req{color:var(--text-secondary);font-size:13px}.rank-card-workouts{font-family:var(--font-body);color:var(--text-secondary);font-size:12px;line-height:1.3}.rank-progress{width:100%;margin-top:20px}.rank-progress-xp{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-primary);font-variant-numeric:tabular-nums;justify-content:space-between;margin-bottom:8px;font-size:13px;font-weight:700;display:flex}.rank-progress-bar{background:var(--bg-primary);border-radius:999px;width:100%;height:8px;overflow:hidden}.rank-progress-fill{background:linear-gradient(90deg,#22d3ee,#67e8f9);border-radius:999px;height:100%;transition:width .5s;box-shadow:0 0 14px #22d3eeb3}.rank-progress-label,.rank-progress-max{width:100%;font-family:var(--font-body);text-align:left;color:#f5f8fc;margin-top:12px;font-size:13px;line-height:1.4;display:block}.rank-current-badge{letter-spacing:.1em;text-transform:uppercase;color:#04121a;background:var(--accent);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 9px;font-size:10px;font-weight:800;line-height:1;box-shadow:0 0 12px #22d3ee59}.ranks-home-btn{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;width:auto;max-width:600px;font-size:14px;font-weight:700;font-family:var(--font-body);color:#050a12;background:var(--accent);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:12px 20px;transition:box-shadow .2s,transform .2s;display:inline-flex;position:fixed}.ranks-home-btn:hover{box-shadow:0 0 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}.ranks-loading .spinner{animation:1s linear infinite ranks-spin}@keyframes ranks-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=480px){.rank-card{padding:14px}.rank-card.current{padding:16px 14px}.rank-hex{width:46px;height:52px;font-size:22px}.rank-card-name{font-size:17px}.rank-current-badge{padding:4px 7px;font-size:9px}}@media (width<=600px){.ranks-header{padding:12px 16px}.ranks-content{padding:14px 12px 32px}}.lb-page{background:var(--bg-primary);min-height:100vh;padding-bottom:150px}.lb-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.lb-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.lb-header h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:24px;font-weight:700}.lb-content{max-width:600px;margin:0 auto;padding:20px 16px 40px}.lb-loading{justify-content:center;padding:60px 0;display:flex}.lb-loading .spinner{animation:1s linear infinite lb-spin}@keyframes lb-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lb-error{border-radius:var(--radius-sm);color:var(--danger,#f87171);background:#f871711a;border:1px solid #f8717159;padding:16px;font-size:14px}.lb-subtitle{color:var(--text-secondary);margin:0 0 14px;font-size:14px;line-height:1.5}.lb-summary{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:16px;padding:10px 14px;display:flex}.lb-summary-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:inline-flex}.lb-summary-item b{font-family:var(--font-mono);color:var(--accent);font-variant-numeric:tabular-nums;font-size:13px}.lb-empty{text-align:center;color:var(--text-secondary);background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:24px 16px;font-size:14px}.lb-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lb-row{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;padding:10px 14px;transition:border-color .2s,box-shadow .2s;display:flex}.lb-pos{width:26px;font-family:var(--font-mono);color:var(--text-secondary);font-variant-numeric:tabular-nums;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.lb-row .lb-pos svg{color:var(--podium-color);filter:drop-shadow(0 0 6px var(--podium-glow))}.lb-place-1,.lb-place-2,.lb-place-3{border-color:color-mix(in srgb, var(--podium-color) 55%, transparent);box-shadow:0 0 16px var(--podium-glow);background:linear-gradient(145deg, color-mix(in srgb, var(--podium-color) 9%, #0b1220) 0%, #0b1220 100%)}.lb-place-1{padding:12px 14px}.lb-avatar{background:var(--bg-primary);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.lb-avatar-img{object-fit:cover;width:100%;height:100%}.lb-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.lb-name-line{align-items:center;gap:8px;min-width:0;display:flex}.lb-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.lb-you-badge{letter-spacing:.1em;text-transform:uppercase;color:#04121a;background:var(--accent);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:800;line-height:1;box-shadow:0 0 12px #22d3ee59}.lb-meta{align-items:center;gap:8px;display:flex}.lb-lvl{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.lb-rank{font-family:var(--font-mono);text-shadow:0 0 10px;font-size:12px;font-weight:800}.lb-stats{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.lb-xp{font-family:var(--font-mono);color:var(--warning);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.lb-streak{font-family:var(--font-mono);color:#fb923c;font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:12px;font-weight:700;display:inline-flex}.lb-sticky{left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:55;border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050a12eb;border:1px solid #22d3ee59;max-width:600px;margin:0 auto;padding:6px;position:fixed;box-shadow:0 8px 24px #00000080}.lb-row-me{background:linear-gradient(145deg,#22d3ee1f 0%,#0b1220 100%);border-color:#22d3ee8c;box-shadow:0 0 18px #22d3ee2e}.lb-sticky .lb-row-me{background:var(--bg-panel);box-shadow:none;border-color:#0000}.lb-home-btn{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;max-width:600px;font-size:14px;font-weight:700;font-family:var(--font-body);color:#050a12;background:var(--accent);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:12px 20px;transition:box-shadow .2s,transform .2s;display:inline-flex;position:fixed}.lb-home-btn:hover{box-shadow:0 0 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}@media (width<=600px){.lb-header{padding:12px 16px}.lb-content{padding:14px 12px 32px}}@media (width<=480px){.lb-row{gap:10px;padding:9px 10px}.lb-name{font-size:14px}.lb-xp{font-size:13px}}.reports-page{box-sizing:border-box;background:var(--bg-primary);width:100%;max-width:100%;min-height:100vh;padding-bottom:32px}.reports-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.reports-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.reports-header-text{flex-direction:column;gap:3px;min-width:0;display:flex}.reports-header h1{letter-spacing:-.02em;font-size:24px;font-weight:700;line-height:1.1}.reports-period{color:var(--accent);font-size:13px;font-weight:600}.reports-content{box-sizing:border-box;flex-direction:column;gap:20px;width:100%;max-width:600px;margin:0 auto;padding:16px;display:flex}.reports-loading{justify-content:center;padding:60px 0;display:flex}.reports-loading .spinner{animation:1s linear infinite reports-spin}@keyframes reports-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reports-error{text-align:center;color:var(--danger,#ef4444);padding:40px 20px}.report-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.report-stat{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);flex-direction:column;gap:8px;padding:16px;display:flex}.report-stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:12px;font-weight:700}.report-stat-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;font-size:clamp(30px,9vw,38px);font-weight:800;line-height:1;display:inline-flex}.report-stat-value i,.discipline-cell-value i{color:var(--text-secondary);font-size:14px;font-style:normal;font-weight:700}.report-stat-value.is-cyan{color:var(--accent)}.report-stat-value.is-gold{color:var(--warning)}.report-stat-value.is-violet{color:#a78bfa}.report-section h2{margin-bottom:12px}.report-empty{color:var(--text-secondary);background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);padding:18px 16px;font-size:14px}.top-exercises{flex-direction:column;gap:12px;display:flex}.top-exercise{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);padding:14px 16px}.top-exercise-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.top-exercise-name{overflow-wrap:anywhere;min-width:0;font-size:15px;font-weight:700}.top-exercise-rank{font-family:var(--font-mono);color:var(--accent);flex-shrink:0;font-size:12px;font-weight:700}.top-exercise-bar{background:#ffffff0f;border-radius:999px;height:8px;overflow:hidden}.top-exercise-fill{background:linear-gradient(90deg, #06b6d4, var(--accent));height:100%;box-shadow:0 0 10px var(--accent-glow);border-radius:999px;transition:width .4s}.discipline-card{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);flex-direction:column;gap:14px;padding:16px;display:flex}.discipline-streak{align-items:center;gap:12px;display:flex}.discipline-flame{background:#f9731624;border:1px solid #f9731659;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.discipline-streak-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#f97316;font-size:20px;font-weight:800}.discipline-rank{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.discipline-cell{border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:#ffffff08;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.discipline-cell-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:11px;font-weight:700}.discipline-cell-value{font-family:var(--font-mono);align-items:baseline;gap:8px;font-size:26px;font-weight:800;line-height:1;display:inline-flex}.discipline-cell-value.is-cyan{color:var(--accent)}.discipline-cell-value.is-gold{color:var(--warning)}.share-cta{width:100%;font-family:var(--font-body);letter-spacing:.5px;text-transform:uppercase;color:#050a12;background:var(--accent);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:18px 20px;font-size:16px;font-weight:800;transition:background .2s,box-shadow .2s,transform .2s;display:inline-flex}.share-cta:hover{box-shadow:0 0 24px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}.reports-home-btn{width:100%;font-family:var(--font-body);color:var(--text-primary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:14px;font-weight:700;transition:background .2s,border-color .2s;display:inline-flex}.reports-home-btn:hover{background:var(--bg-panel-hover);border-color:var(--accent)}.share-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#03060cdb;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.share-box{box-sizing:border-box;background:var(--bg-panel);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:14px;width:100%;max-width:420px;max-height:calc(100vh - 32px);padding:16px;display:flex;box-shadow:0 20px 60px #0009}.share-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.share-head h3{font-size:15px}.share-close{background:var(--bg-primary);width:32px;height:32px;color:var(--text-primary);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.share-canvas-wrap{justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.share-canvas{border:1px solid var(--panel-border);border-radius:10px;width:auto;max-width:100%;height:auto;max-height:56vh;display:block}.share-loading{color:var(--accent);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.share-loading .spinner{animation:1s linear infinite reports-spin}.share-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.share-btn{font-family:var(--font-body);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:13px 12px;font-size:13px;font-weight:700;transition:background .2s,border-color .2s;display:inline-flex}.share-btn:hover:not(:disabled){background:var(--bg-panel-hover);border-color:var(--accent)}.share-btn.primary{color:#050a12;background:var(--accent);border-color:var(--accent)}.share-btn.primary:hover:not(:disabled){background:#06b6d4}.share-btn:disabled{opacity:.55;cursor:default}.share-error{color:var(--danger,#f87171);font-size:13px}@media (width<=600px){.reports-header{padding:12px 16px}.reports-header h1{font-size:20px}.reports-content{gap:16px;padding:12px}.report-stat{padding:14px}}@media (width<=380px){.report-stat-value{font-size:26px}.share-actions{grid-template-columns:1fr}}.streak-page{box-sizing:border-box;background:#050a12;width:100%;max-width:100%;min-height:100vh;padding-bottom:96px}.streak-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px;display:flex;position:sticky;top:0}.streak-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.streak-header h1{letter-spacing:-.02em;font-size:20px;font-weight:700}.streak-content{box-sizing:border-box;flex-direction:column;gap:20px;width:100%;max-width:600px;margin:0 auto;padding:16px;display:flex}.streak-loading{justify-content:center;padding:60px 0;display:flex}.streak-loading .spinner{animation:1s linear infinite streak-spin}@keyframes streak-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.streak-error{text-align:center;color:var(--danger,#ef4444);padding:40px 16px}.streak-hero{background:linear-gradient(135deg, #f9731629, transparent 70%), var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);align-items:center;gap:18px;padding:24px;display:flex}.streak-hero-icon{background:#f9731629;border-radius:50%;flex-shrink:0;place-items:center;width:76px;height:76px;display:grid}.streak-flame{filter:drop-shadow(0 0 8px #f97316cc)}.streak-hero-text{flex-direction:column;min-width:0;display:flex}.streak-hero-number{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--warning);text-shadow:0 0 24px #fbbf2459;font-size:clamp(40px,12vw,56px);font-weight:800;line-height:1}.streak-hero-label{letter-spacing:.08em;color:#9fb0c7;margin-top:6px;font-size:15px;font-weight:700}.streak-calendar-card{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);padding:20px 16px}.streak-calendar-title{text-transform:capitalize;margin-bottom:14px;font-size:16px;font-weight:700}.streak-weekdays,.streak-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.streak-weekdays{margin-bottom:8px}.streak-weekday{text-align:center;color:var(--text-secondary);font-size:12px;font-weight:600}.streak-day{aspect-ratio:1;border-radius:10px;justify-content:center;align-items:center;min-height:36px;font-size:13px;font-weight:600;display:flex}.day-training{color:#050a12;background:linear-gradient(135deg,#f97316,#ef4444);box-shadow:0 0 10px #f9731673}.day-recovery{color:#a78bfa;background:#a78bfa24;border:1px solid #a78bfa73;box-shadow:0 0 10px #a78bfa33}.day-missed{color:#9fb0c78c;background:#ffffff0a;border:1px solid #ffffff0f}.day-future{color:#9fb0c7b3;background:0 0;border:1px solid #22d3ee59}.streak-day.is-today{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 12px #22d3ee4d}.day-empty{background:0 0}.streak-legend{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.streak-legend-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:inline-flex}.streak-legend-dot{border-radius:4px;flex-shrink:0;width:12px;height:12px}.day-training-legend{background:linear-gradient(135deg,#f97316,#ef4444)}.day-recovery-legend{background:#a78bfa33;border:1px solid #a78bfa}.day-missed-legend{background:#ffffff0f;border:1px solid #ffffff1a}.day-future-legend{background:0 0;border:1px solid #22d3ee73}.streak-home-btn{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;width:auto;max-width:600px;font-size:14px;font-weight:700;font-family:var(--font-body);color:#050a12;background:var(--accent);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:14px 20px;transition:box-shadow .2s,transform .2s;display:inline-flex;position:fixed}.streak-home-btn:hover{box-shadow:0 0 20px var(--accent-glow);background:#06b6d4;transform:translateY(-1px)}@media (width<=400px){.streak-weekdays,.streak-grid{gap:5px}.streak-day{min-height:32px;font-size:12px}}@media (width<=600px){.streak-content{gap:14px;padding:12px}.streak-header{padding:12px}.streak-hero{gap:14px;padding:16px}.streak-hero-icon{width:60px;height:60px}.streak-hero-number{font-size:clamp(34px,10vw,48px)}.streak-calendar-card{padding:16px 12px}.streak-legend{gap:8px}}.crop-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#02060cd1;place-items:center;padding:20px;animation:.15s crop-fade;display:grid;position:fixed;inset:0}@keyframes crop-fade{0%{opacity:0}to{opacity:1}}.crop-panel{background:#0b1220;border:1px solid #22d3ee73;border-radius:16px;width:100%;max-width:360px;padding:24px;animation:.18s crop-pop;box-shadow:0 20px 60px #0009,0 0 30px #22d3ee1f}@keyframes crop-pop{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:none}}.crop-title{font-family:var(--font-body);letter-spacing:.5px;text-transform:uppercase;color:var(--text-primary);text-align:center;font-size:16px;font-weight:800}.crop-hint{color:var(--text-secondary);text-align:center;margin:6px 0 18px;font-size:13px}.crop-frame{background:var(--bg-primary);border:2px solid var(--accent);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 24px #22d3ee40}.crop-frame:active{cursor:grabbing}.crop-image{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute}.crop-circle-hint{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #22d3ee80,inset 0 0 24px #00000073}.crop-zoom{color:var(--text-secondary);align-items:center;gap:12px;margin-top:20px;font-size:13px;display:flex}.crop-zoom input[type=range]{accent-color:var(--accent);cursor:pointer;flex:1}.crop-actions{gap:10px;margin-top:20px;display:flex}.crop-btn{cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:700;transition:opacity .2s,background .2s;display:inline-flex}.crop-btn:disabled{opacity:.6;cursor:wait}.crop-btn-secondary{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border)}.crop-btn-secondary:hover:not(:disabled){color:var(--text-primary)}.crop-btn-primary{background:var(--accent-dim);color:var(--accent);border:1px solid #22d3ee80;box-shadow:0 0 14px #22d3ee33}.crop-btn-primary:hover:not(:disabled){background:#22d3ee40}.profile-page{box-sizing:border-box;width:100%;max-width:100%;min-height:100vh;padding-bottom:96px}.profile-header{background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.profile-header .back-btn{background:var(--bg-primary);width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.profile-header h1{font-size:20px;font-weight:700}.profile-content{box-sizing:border-box;width:100%;max-width:600px;margin:0 auto;padding:16px}.profile-loading{justify-content:center;padding:60px 0;display:flex}.spinner{animation:1s linear infinite spin}.profile-error{text-align:center;color:var(--danger);padding:40px 20px;font-size:16px}.profile-notice{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);text-align:center;margin-bottom:16px;padding:12px 16px;font-size:14px}.profile-card{border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);background:radial-gradient(ellipse 80% 60% at 50% 0%, #22d3ee1a, transparent 70%), linear-gradient(#22d3ee09 1px, transparent 1px), linear-gradient(90deg, #22d3ee09 1px, transparent 1px), var(--panel-gradient);background-size:auto,32px 32px,32px 32px,auto;flex-direction:column;align-items:center;gap:12px;padding:32px 24px;display:flex;position:relative}.profile-avatar-lg{background:var(--bg-primary);border:2px solid var(--accent);width:96px;height:96px;color:var(--accent);cursor:pointer;border-radius:50%;place-items:center;margin-bottom:4px;transition:opacity .2s,box-shadow .2s;display:grid;position:relative;overflow:visible;box-shadow:0 0 22px #22d3ee4d}.profile-avatar-lg:hover{opacity:.85;box-shadow:0 0 28px #22d3ee73}.profile-avatar-lg:disabled{cursor:wait;opacity:.8}.profile-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.profile-avatar-overlay{color:var(--accent);background:#050a12a6;border-radius:50%;place-items:center;display:grid;position:absolute;inset:0}.profile-avatar-edit{z-index:3;background:var(--accent);color:#fff;pointer-events:none;border:3px solid #050a12;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:-2px;right:-2px;box-shadow:0 0 10px #22d3ee73}.profile-file-input{display:none}.profile-level-badge{z-index:2;border:2px solid var(--accent);background:#050a12;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;bottom:-8px;right:-8px;box-shadow:0 0 10px #22d3ee4d}.profile-level-number{color:var(--accent);font-size:14px;font-weight:800;line-height:1}.profile-level-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:7px;font-weight:700}.profile-name{font-family:var(--font-body);letter-spacing:0;text-transform:none;color:var(--text-primary);font-size:18px;font-weight:800}.profile-name-row{align-items:center;gap:8px;display:flex}.profile-name-edit{width:30px;height:30px;color:var(--accent);cursor:pointer;background:#22d3ee1a;border-radius:50%;place-items:center;transition:background .2s,box-shadow .2s,transform .2s;display:grid}.profile-name-edit:hover{background:#22d3ee33;transform:translateY(-1px);box-shadow:0 0 12px #22d3ee59}.profile-name-form{flex-direction:column;align-items:center;gap:10px;width:100%;max-width:340px;display:flex}.profile-name-input{background:var(--bg-primary);width:100%;color:var(--text-primary);text-align:center;border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;padding:12px 14px;font-size:16px;font-weight:600;transition:border-color .2s,box-shadow .2s}.profile-name-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #22d3ee26}.profile-name-actions{gap:8px;display:flex}.profile-name-btn{cursor:pointer;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:opacity .2s,background .2s}.profile-name-btn:disabled{opacity:.5;cursor:default}.profile-name-btn:not(.profile-name-btn-primary){background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border)}.profile-name-btn-primary{background:var(--accent-dim);color:var(--accent);border:1px solid #22d3ee80;align-items:center;gap:6px;display:inline-flex}.profile-name-btn-primary:hover:not(:disabled){background:#22d3ee40}.profile-rank{align-items:center;gap:12px;display:flex}.profile-rank-letter{width:44px;height:50px;color:var(--accent);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);background:#22d3ee1f;place-items:center;font-size:22px;font-weight:800;display:grid}.profile-rank-name{color:var(--text-primary);font-size:24px;font-weight:800}.profile-ranks-link{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;margin-top:8px;padding:10px 18px;font-size:13px;font-weight:600;transition:background .2s,opacity .2s;display:inline-flex}.profile-ranks-link:hover{opacity:.8}.profile-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-top:20px;display:grid}.profile-stat{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;display:flex}.profile-stat-value{color:var(--accent);font-size:20px;font-weight:800}.profile-stat-tz{word-break:break-word;font-size:13px}.profile-stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.profile-stat-exercise{gap:6px}.profile-exercise-title{color:var(--text-primary);font-size:15px;font-weight:700}.profile-stat-exercise .profile-stat-value{font-size:28px}.profile-stat-metric{flex-direction:column;align-items:center;gap:2px;display:flex}.profile-stat-metric--sub{border-top:1px solid var(--border);width:100%;margin-top:6px;padding-top:6px}.profile-stat-value--unit{font-size:22px}.profile-stat-value--sm{font-size:18px}.exercise-weight{color:var(--warning);font-weight:700}@media (width<=600px){.profile-tabs{gap:4px}.profile-tab{padding:10px 4px}}.profile-meta{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:8px;width:100%;max-width:340px;margin-top:8px;padding:14px 16px;display:flex}.profile-meta-row{justify-content:space-between;gap:12px;font-size:14px;display:flex}.profile-meta-label{color:var(--text-secondary)}.profile-meta-value{color:var(--text-primary);text-align:right;word-break:break-word;font-weight:600}.profile-tabs{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius-sm);gap:8px;margin:20px 0 16px;padding:4px;display:flex}.profile-tab{font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:10px 8px;font-size:14px;font-weight:600;transition:background .2s,color .2s}.profile-tab:hover{color:var(--text-primary)}.profile-tab-active{color:var(--accent);background:linear-gradient(#22d3ee38,#22d3ee0d)}.profile-stats-loading{color:var(--accent);justify-content:center;padding:40px 0;display:flex}.profile-exercises{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);margin-top:20px;padding:18px}.profile-exercises h3{color:var(--text-primary);margin-bottom:14px;font-size:16px;font-weight:800}.profile-exercise{margin-bottom:14px}.profile-exercise:last-child{margin-bottom:0}.profile-exercise-row{justify-content:space-between;gap:12px;margin-bottom:6px;font-size:14px;display:flex}.profile-exercise-name{color:var(--text-primary);font-weight:600}.profile-exercise-value{color:var(--text-secondary);white-space:normal;text-align:right}.profile-exercise-volume{color:var(--text-secondary);margin-top:-2px;margin-bottom:6px;font-size:12px}.profile-exercise-bar{background:var(--bg-primary);border-radius:4px;height:8px;overflow:hidden}.profile-exercise-fill{background:linear-gradient(90deg, var(--accent), #06b6d4);height:100%;box-shadow:0 0 10px var(--accent-glow);border-radius:4px;transition:width .4s}.profile-home-btn{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;background:var(--accent-dim);width:auto;max-width:600px;color:var(--accent);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;margin:0 auto;padding:14px;font-size:15px;font-weight:700;transition:opacity .2s;display:flex;position:fixed}.profile-home-btn:hover{opacity:.8}@media (width<=600px){.profile-content{padding:12px}.profile-card{padding:22px 16px}.profile-stats{gap:8px;margin-top:14px}.profile-stat{padding:12px 8px}.profile-tabs{margin:14px 0 12px}.profile-exercises{margin-top:14px;padding:14px}.profile-meta{margin-top:6px;padding:12px 14px}}.profile-my-exercises{background:var(--panel-gradient);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);margin-top:20px;padding:18px}.profile-my-exercises h3{color:var(--text-primary);margin-bottom:14px;font-size:16px;font-weight:800}.profile-my-exercises-empty{color:var(--text-secondary);font-size:13px;line-height:1.5}.my-exercises-list{flex-direction:column;gap:8px;list-style:none;display:flex}.my-exercise-item{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.my-exercise-info{flex-direction:column;gap:3px;min-width:0;display:flex}.my-exercise-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.my-exercise-type{color:var(--text-secondary);font-size:12px}.my-exercise-delete{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex:0 0 36px;justify-content:center;align-items:center;transition:all .2s;display:flex}.my-exercise-delete:hover{color:var(--danger);background:#f871711a}@media (width<=600px){.profile-my-exercises{margin-top:14px;padding:14px}}.custom-select-field{flex-direction:column;gap:8px;width:100%;display:flex}.custom-select-field label{color:var(--text-secondary);font-size:13px;font-weight:500}.custom-select{position:relative}.custom-select-trigger{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:#0b1220;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .2s;display:flex}.custom-select-trigger:hover,.custom-select-trigger:focus,.custom-select-trigger.open{border-color:#22d3ee;outline:none}.custom-select-trigger .chevron{color:var(--text-secondary);flex-shrink:0;transition:transform .2s,color .2s}.custom-select-trigger.open .chevron{color:#22d3ee;transform:rotate(180deg)}.custom-select-menu{border-radius:var(--radius-sm);z-index:100;scrollbar-width:thin;scrollbar-color:#22d3ee4d transparent;background:#0b1220;border:1px solid #22d3ee;max-height:260px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #0000008c}.custom-select-menu::-webkit-scrollbar{width:6px}.custom-select-menu::-webkit-scrollbar-track{background:0 0}.custom-select-menu::-webkit-scrollbar-thumb{background-color:#22d3ee4d;border-radius:10px}.custom-select-option{color:var(--text-primary);cursor:pointer;border-radius:6px;padding:11px 12px;font-size:15px;transition:background .15s,color .15s}.custom-select-option:hover{background:#22d3ee1f}.custom-select-option.selected{background:var(--accent-dim);color:#22d3ee;font-weight:600}.sound-toggle{top:calc(16px + env(safe-area-inset-top,0px));right:calc(16px + env(safe-area-inset-right,0px));z-index:100;width:40px;height:40px;color:var(--accent);-webkit-tap-highlight-color:transparent;background:#0b1220;border:1px solid #22d3ee73;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:border-color .2s,background .2s,color .2s,transform .15s;display:inline-flex;position:fixed;box-shadow:0 6px 18px #00000059}.sound-toggle:hover{border-color:var(--accent);background:#111a2e}.sound-toggle:active{transform:scale(.94)}.sound-toggle.is-muted{color:#9fb0c7cc;border-color:#9fb0c759}.sound-toggle.is-muted:hover{border-color:#9fb0c799}@media (width<=480px){.sound-toggle{top:calc(12px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px))}}.onboarding-screen{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.onboarding-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:1s linear infinite ob-spin}@keyframes ob-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.onboarding-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:20px;width:100%;max-width:460px;padding:32px 28px;display:flex}.onboarding-progress{justify-content:center;gap:8px;display:flex}.progress-dot{background:var(--border);border-radius:50%;width:8px;height:8px;transition:all .3s}.progress-dot.active{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.progress-dot.current{transform:scale(1.5)}.ob-hint{color:var(--text-secondary);text-align:center;margin:0;font-size:14px;line-height:1.55}.ob-panel{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);gap:14px;padding:16px;display:flex}.ob-panel-icon{background:var(--accent-dim);width:44px;height:44px;color:var(--accent);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.ob-panel-body{flex-direction:column;gap:8px;min-width:0;display:flex}.ob-panel-title{color:var(--text-primary);font-size:15px;font-weight:700}.ob-panel-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.ob-pwa-steps{color:var(--text-secondary);background:#040a1099;border:1px solid #22d3ee59;border-radius:8px;flex-direction:column;gap:6px;margin:0;padding:10px 12px 10px 32px;font-size:12px;line-height:1.45;display:flex}.ob-pwa-steps li::marker{color:var(--accent);font-weight:600}.ob-pwa-ios-note{color:#f87171;background:#f8717114;border-left:2px solid #f8717199;border-radius:0 6px 6px 0;margin:0;padding:8px 10px;font-size:11px;line-height:1.45}.ob-panel-btn{color:var(--bg-primary);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-self:flex-start;align-items:center;gap:8px;padding:9px 16px;font-size:13px;font-weight:700;transition:all .2s;display:inline-flex}.ob-panel-btn:hover{box-shadow:0 0 14px var(--accent-glow)}.ob-panel-btn.done{background:var(--accent-dim);color:var(--accent)}.ob-options{flex-direction:column;gap:10px;display:flex}.ob-option{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:left;cursor:pointer;align-items:center;gap:14px;width:100%;padding:14px 16px;transition:all .2s;display:flex}.ob-option:hover{border-color:var(--accent)}.ob-option.selected{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 12px var(--accent-glow)}.ob-option-icon{background:var(--accent-dim);width:40px;height:40px;color:var(--accent);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.ob-option.selected .ob-option-icon{background:var(--accent);color:var(--bg-primary)}.ob-option-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ob-option-name{color:var(--text-primary);font-size:15px;font-weight:700}.ob-option-desc{color:var(--text-secondary);font-size:12.5px;line-height:1.45}.ob-check{border:1.5px solid var(--border);color:#0000;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.ob-option.selected .ob-check{background:var(--accent);border-color:var(--accent);color:var(--bg-primary)}.ob-numbers{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.ob-number{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;align-items:center;gap:4px;padding:16px 8px;transition:all .2s;display:flex}.ob-number:hover{border-color:var(--accent)}.ob-number.selected{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 12px var(--accent-glow)}.ob-number-value{color:var(--accent);font-size:26px;font-weight:800}.ob-number-label{color:var(--text-secondary);font-size:12px}.ob-done-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#020617d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ob-done{background:var(--bg-panel);border:1px solid var(--accent);border-radius:var(--radius);width:100%;max-width:420px;box-shadow:0 0 32px var(--accent-glow);text-align:center;flex-direction:column;align-items:center;gap:14px;padding:36px 28px;display:flex}.ob-done-icon{background:var(--accent-dim);width:72px;height:72px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.ob-done h2{letter-spacing:0;margin:0;font-size:16px;font-weight:800}.ob-done p{color:var(--text-secondary);margin:0;font-size:15px}.ob-done .onboarding-next{margin-top:8px;margin-left:0}.onboarding-icon{background:var(--accent-dim);width:64px;height:64px;color:var(--accent);border-radius:50%;justify-content:center;align-self:center;align-items:center;display:flex}.system-awakening{flex-direction:column;align-items:center;gap:20px;display:flex}.system-avatar{border:2px solid var(--accent);width:200px;height:200px;box-shadow:0 0 24px var(--accent-glow), 0 0 60px #22d3ee26;background:var(--accent-dim);border-radius:50%;flex:none;align-self:center;overflow:hidden}.system-avatar img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.system-greeting{width:100%;font-family:var(--font-mono);letter-spacing:.2px;color:#c7d2e0;text-align:left;background:#22d3ee0a;border:1px solid #22d3ee40;border-radius:8px;margin:0;padding:14px 16px;font-size:14px;line-height:1.65;animation:2.6s steps(117,end) both system-type;position:relative;overflow:hidden}.system-greeting:after{content:"";background:var(--accent);vertical-align:text-bottom;width:8px;height:1em;margin-left:4px;animation:1s step-end infinite system-blink;display:inline-block}@keyframes system-type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes system-blink{0%,to{opacity:1}50%{opacity:0}}.onboarding-card h1{letter-spacing:-.02em;text-align:center;margin:0;font-size:20px;font-weight:700}.onboarding-input{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);outline:none;padding:14px 16px;font-size:16px;transition:border-color .2s}.onboarding-input:focus{border-color:var(--accent)}.goal-options{flex-direction:column;gap:10px;display:flex}.goal-option{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);text-align:left;align-items:center;gap:14px;padding:14px 18px;transition:all .2s;display:flex}.goal-option:hover{border-color:var(--accent)}.goal-option.selected{border-color:var(--accent);background:var(--accent-dim)}.goal-number{color:var(--accent);min-width:32px;font-size:24px;font-weight:800}.goal-label{font-size:15px}.onboarding-error{text-align:center;color:var(--danger,#ef4444);font-size:14px}.onboarding-actions{justify-content:space-between;gap:12px;margin-top:4px;display:flex}.onboarding-back,.onboarding-next{border-radius:var(--radius-sm);align-items:center;gap:8px;padding:12px 22px;font-size:15px;font-weight:700;transition:all .2s;display:flex}.onboarding-back{background:var(--bg-primary);color:var(--text-secondary)}.onboarding-back:hover{color:var(--text-primary)}.onboarding-next{background:var(--accent);color:var(--bg-primary);margin-left:auto}.onboarding-next:hover:not(:disabled){box-shadow:0 0 16px var(--accent-glow)}.onboarding-next:disabled{opacity:.7}.onboarding-spin{animation:1s linear infinite ob-spin}@media (width<=480px){.onboarding-card{padding:24px 18px}.onboarding-card h1{font-size:19px}.system-avatar{width:160px;height:160px}.system-greeting{padding:12px 14px;font-size:13px}.onboarding-actions{flex-direction:row}.onboarding-next,.onboarding-back{padding:12px 16px;font-size:14px}}
