/* ═══ REST TIMER ═══ */
.rest-timer{background:rgba(74,222,128,.07);border:1px solid rgba(74,222,128,.2);border-radius:13px;padding:12px;margin-bottom:11px;display:flex;align-items:center;gap:11px}
.rt-count{font-size:1.9rem;font-weight:900;color:var(--accent2);width:46px;text-align:center}
.rt-right{flex:1}
.rt-lbl{font-size:.72rem;color:var(--muted);margin-bottom:5px}
.rt-bar-w{background:rgba(255,255,255,.07);border-radius:4px;height:5px;overflow:hidden}
.rt-bar-f{height:100%;background:var(--accent2);border-radius:4px;transition:width 1s linear}
.rt-skip{background:rgba(255,255,255,.07);border:none;color:var(--muted);border-radius:7px;padding:4px 9px;font-size:.68rem;cursor:pointer;margin-top:5px}

/* ═══ EXERCISES ═══ */
.add-ex-btn{width:100%;padding:12px;background:rgba(124,111,255,.09);border:1px dashed rgba(124,111,255,.38);border-radius:13px;color:var(--accent);font-weight:700;font-size:.84rem;cursor:pointer;transition:all .2s;margin-bottom:11px}
.add-ex-btn:active{background:rgba(124,111,255,.2)}
.ur-ex-btn:active{background:rgba(74,222,128,.18)!important}
.ex-empty{text-align:center;color:var(--muted);padding:1.8rem;font-size:.82rem}
.ex-card{background:var(--card);border:1px solid var(--border);border-radius:13px;padding:11px;display:flex;align-items:center;gap:10px;margin-bottom:7px;animation:pgFade .3s ease both}
.ex-emoji{font-size:1.5rem;width:38px;text-align:center;flex-shrink:0}
.ex-body{flex:1;min-width:0}
.ex-name{font-size:.84rem;font-weight:700;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ex-tags{display:flex;flex-wrap:wrap;gap:4px}
.ex-tag{font-size:.62rem;padding:2px 6px;border-radius:5px;background:rgba(255,255,255,.07);color:var(--muted);font-weight:600}
.ex-tag.sets{background:rgba(124,111,255,.14);color:#a99fff}
.ex-tag.reps{background:rgba(74,222,128,.11);color:#4ade80}
.ex-tag.time{background:rgba(251,191,36,.11);color:#fbbf24}
.ex-del{background:rgba(255,107,107,.11);border:none;color:#ff8a8a;border-radius:7px;padding:6px 8px;cursor:pointer;font-size:.85rem;flex-shrink:0}
.ws-box{background:rgba(124,111,255,.07);border:1px solid rgba(124,111,255,.18);border-radius:13px;padding:11px;margin-bottom:11px;display:flex;justify-content:space-around}
.ws-item{text-align:center}
.ws-val{font-size:1.05rem;font-weight:700;color:var(--accent)}
.ws-lbl{font-size:.6rem;color:var(--muted)}

/* ═══ MODAL ═══ */
.modal-ov{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:500;display:flex;align-items:flex-end;justify-content:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.modal-box{background:var(--card);border-radius:22px 22px 0 0;padding:18px;width:100%;max-width:480px;max-height:88vh;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:slideUp .26s cubic-bezier(.4,0,.2,1);will-change:transform}
@keyframes slideUp{from{transform:translate3d(0,100%,0)}to{transform:translate3d(0,0,0)}}
.modal-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.modal-title{font-size:1rem;font-weight:800}
.modal-close{background:rgba(255,255,255,.08);border:none;color:var(--text);width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:.95rem;display:flex;align-items:center;justify-content:center}
.mlbl{font-size:.72rem;color:var(--muted);font-weight:600;margin-bottom:4px;margin-top:11px;display:block}
.minput{width:100%;background:var(--input-bg);border:1px solid var(--border);border-radius:10px;padding:10px 13px;color:var(--text);font-size:.84rem;outline:none;transition:border .2s;-webkit-appearance:none}
.minput:focus{border-color:var(--accent)}
.preset-grid{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:4px}
.pchip{background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:7px;padding:5px 9px;font-size:.68rem;cursor:pointer;color:var(--text);transition:all .2s}
.pchip:active{background:rgba(124,111,255,.2);border-color:var(--accent)}
.tchips{display:flex;gap:5px;flex-wrap:wrap;margin-top:4px}
.tchip{background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:7px;padding:5px 10px;font-size:.68rem;cursor:pointer;color:var(--text);transition:all .2s}
.tchip.active{background:rgba(124,111,255,.22);border-color:var(--accent);color:var(--accent)}
.modal-submit{width:100%;padding:12px;background:linear-gradient(135deg,var(--accent),var(--accent2));border:none;border-radius:11px;color:#fff;font-weight:700;font-size:.92rem;cursor:pointer;margin-top:14px}

/* ═══ LEADERBOARD ═══ */
.lb-filters{display:flex;gap:5px;margin-bottom:13px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}
.fchip{background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:9px;padding:5px 11px;font-size:.68rem;cursor:pointer;color:var(--muted);white-space:nowrap;font-weight:600;transition:all .2s}
.fchip.active{background:rgba(124,111,255,.18);border-color:var(--accent);color:var(--accent)}
.lb-podium{display:flex;align-items:flex-end;justify-content:center;gap:8px;margin-bottom:18px;padding:0 2px}
.pod-item{display:flex;flex-direction:column;align-items:center;gap:5px;flex:1}
.pod-item.p1{order:2}
.pod-item.p2{order:1}
.pod-item.p3{order:3}
.pod-crown{font-size:1rem;line-height:1}
.pod-av{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.84rem;font-weight:800;position:relative;border:2px solid transparent}
.pod-item.p1 .pod-av{width:60px;height:60px;font-size:.96rem}
.pod-name{font-size:.62rem;font-weight:700;text-align:center;line-height:1.3;word-break:break-word}
.pod-pts{font-size:.76rem;font-weight:800;color:var(--accent)}
.pod-block{border-radius:7px 7px 0 0;width:100%;margin-top:3px}
.pod-item.p1 .pod-block{background:linear-gradient(180deg,rgba(251,191,36,.28),rgba(251,191,36,.07));height:46px}
.pod-item.p2 .pod-block{background:linear-gradient(180deg,rgba(192,192,192,.18),rgba(192,192,192,.04));height:32px}
.pod-item.p3 .pod-block{background:linear-gradient(180deg,rgba(205,127,50,.18),rgba(205,127,50,.04));height:22px}
.lb-row{display:flex;align-items:center;gap:9px;padding:9px 10px;background:var(--card);border:1px solid var(--border);border-radius:13px;margin-bottom:7px;animation:pgFade .3s ease both}
.lb-row.is-me{border-color:rgba(124,111,255,.38);background:rgba(124,111,255,.06)}
.lb-rank{width:22px;text-align:center;font-size:.74rem;font-weight:700;color:var(--muted)}
.lb-av{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:800;flex-shrink:0;position:relative}
.lb-info{flex:1;min-width:0}
.lb-name{font-size:.78rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lb-name.me{color:var(--accent)}
.lb-sub{font-size:.62rem;color:var(--muted);margin-top:1px}
.lb-right{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex-shrink:0}
.lb-pts{font-size:.84rem;font-weight:800;color:var(--accent)}
.lb-bar-w{width:55px;height:4px;background:rgba(255,255,255,.07);border-radius:4px;overflow:hidden}
.lb-bar-f{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:4px;transition:width .5s ease}
.lb-streak-badge{display:inline-flex;align-items:center;gap:2px;background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.3);border-radius:20px;padding:2px 7px;font-size:.6rem;font-weight:800;color:#fbbf24;white-space:nowrap}
.lb-streak-badge.hot{background:rgba(255,107,0,.18);border-color:rgba(255,140,0,.45);color:#ffaa00;animation:streakBounce 1.8s ease-in-out infinite}

