:root{--timer-bg-base: #141418;--timer-bg-card: #1E1E24;--timer-bg-elevated: #26262E;--timer-bg-hover: #2E2E38;--timer-text-primary: #F0F0F4;--timer-text-secondary: #A0A0AC;--timer-text-muted: #6A6A78;--timer-power: #E8734A;--timer-speed: #4A90D9;--timer-dynamic: #9B6DD9;--timer-success: #10B981;--timer-overtime: #EF4444;--timer-paused: #FF6B35;--timer-border-subtle: rgba(255, 255, 255, .08);--timer-border-medium: rgba(255, 255, 255, .12);--timer-highlight-inner: rgba(255, 255, 255, .04)}.timer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:var(--timer-bg-base);transform:translateY(100%);transition:transform .4s cubic-bezier(.32,.72,0,1)}.timer-overlay--visible{transform:translateY(0)}.timer-container{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:100%;padding:24px;padding-top:calc(80px + env(safe-area-inset-top,0px));padding-bottom:max(24px,env(safe-area-inset-bottom));max-width:500px;margin:0 auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.timer-header{position:absolute;top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:space-between;padding:16px 20px;padding-top:max(16px,env(safe-area-inset-top))}.timer-header__left{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.timer-header__right{display:flex;align-items:center;gap:8px}.timer-header__badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);letter-spacing:2px;border-radius:6px}.timer-header__btn{padding:8px 16px;font-size:13px;font-weight:600;background:var(--timer-bg-card);border:1px solid var(--timer-border-medium);border-radius:8px;color:var(--timer-text-primary);cursor:pointer;transition:all .2s ease;box-shadow:inset 0 1px 0 var(--timer-highlight-inner)}.timer-header__btn:hover{background:var(--timer-bg-elevated)}.timer-header__btn--finish{background:#10b9811f;border:1px solid rgba(16,185,129,.25);color:var(--timer-success)}.timer-header__btn--finish:hover{background:#10b98133}.timer-display{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:16px 24px;background:transparent;border:none;cursor:pointer;min-width:200px;min-height:100px}.timer-display__time{font-size:72px;font-weight:600;font-family:var(--font-mono);line-height:1;letter-spacing:-2px;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.timer-display__context{font-size:14px;font-weight:400;font-family:var(--font-body);color:var(--timer-text-muted)}.timer-display__paused{color:var(--timer-paused);font-weight:600;letter-spacing:1px;font-family:var(--font-display)}.timer-display__overtime{color:var(--timer-overtime);font-weight:500;font-family:var(--font-body)}.timer-progress{width:100%;padding:0 24px}.timer-progress__track{width:100%;height:4px;border-radius:2px;background:var(--timer-bg-elevated);overflow:hidden}.timer-progress__fill{height:100%;border-radius:2px;transition:width .5s ease}.timer-rounds{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px}.timer-rounds__btn{width:48px;height:48px;border-radius:50%;background:var(--timer-bg-card);border:1px solid var(--timer-border-subtle);color:var(--timer-text-secondary);font-size:24px;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;box-shadow:inset 0 1px 0 var(--timer-highlight-inner)}.timer-rounds__btn:hover{background:var(--timer-bg-elevated)}.timer-rounds__btn:active{transform:scale(.95)}.timer-rounds__value{font-size:48px;font-weight:600;font-family:var(--font-mono);min-width:80px;text-align:center}.timer-movement{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;max-width:320px;padding:12px 8px}.timer-movement__arrow{width:36px;height:48px;background:transparent;border:none;color:var(--timer-text-muted);font-size:28px;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s ease}.timer-movement__arrow:hover{color:var(--timer-text-secondary)}.timer-movement__content{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.timer-movement__name{font-size:20px;font-weight:600;font-family:var(--font-display);color:var(--timer-text-primary);line-height:1.2}.timer-movement__reps{display:flex;align-items:baseline;gap:6px}.timer-movement__reps-value{font-size:32px;font-weight:600;font-family:var(--font-mono)}.timer-movement__reps-label{font-size:12px;font-weight:500;font-family:var(--font-body);color:var(--timer-text-muted);text-transform:uppercase;letter-spacing:.5px}.timer-section-dots{display:flex;gap:12px;margin-bottom:16px}.timer-section-dot{border-radius:50%;transition:all .3s ease}.timer-section-dot--current{width:12px;height:12px}.timer-section-dot--inactive{width:8px;height:8px;background:var(--timer-border-medium)}.timer-drawer-trigger{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:var(--timer-bg-card);border:1px solid var(--timer-border-subtle);border-radius:12px;color:var(--timer-text-secondary);font-size:14px;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:all .2s ease;box-shadow:inset 0 1px 0 var(--timer-highlight-inner)}.timer-drawer-trigger:hover{background:var(--timer-bg-elevated);color:var(--timer-text-primary)}.timer-drawer-trigger__icon{font-size:12px;transition:transform .3s ease}.timer-drawer-trigger--open .timer-drawer-trigger__icon{transform:rotate(180deg)}@keyframes timer-shimmer{0%{transform:translate(-100%)}to{transform:translate(200%)}}@keyframes timer-progress-pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes timer-round-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes timer-drawer-backdrop{0%{opacity:0}to{opacity:1}}@keyframes timer-drawer-slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}
