:root{--color-primary: #2461a6;--color-primary-hover: #084c7a;--color-primary-soft: #eef4fc;--color-active: #61c76b;--color-active-hover: #2ed03c;--color-attention: #fcec3f;--color-attention-hover: #ffd200;--color-danger: #ef7777;--color-danger-hover: #da3e3e;--color-ghost: #e3e3e3;--color-ghost-hover: #bbbbbb;--color-bg: #f6f8fa;--color-card: #ffffff;--color-card-alt: #e1e4ec;--color-text: #1f2937;--color-text-muted: #6b7280;--color-btn-text: white;--color-border: #e5e7eb;--radius: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 4px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.12);--tap-size: 44px}.dark-theme{--color-primary: #204d9a;--color-primary-hover: #021e65;--color-primary-soft: #233162;--color-active: #3cb769;--color-active-hover: #03bd48;--color-attention: #facc15;--color-attention-hover: #eab308;--color-danger: #f87171;--color-danger-hover: #dc2626;--color-ghost: #66707e;--color-ghost-hover: #535d75;--color-bg: #13141a;--color-card: #28384f;--color-card-alt: #213142;--color-text: #f9fafb;--color-text-muted: #9ca3af;--color-btn-text: white;--color-border: #374151;--shadow-sm: 0 1px 4px rgba(79, 77, 77, .54);--shadow-md: 0 4px 12px rgba(131, 131, 131, .36)}*{box-sizing:border-box}html,body,#root{margin:0;background-color:var(--color-bg);color:var(--color-text)}html,body{min-height:100%}body{overscroll-behavior-y:none}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text)}input,select{border:1px solid var(--color-border);border-radius:var(--radius);padding:8px 10px;min-height:var(--tap-size);font-size:16px;color:var(--color-text);background-color:var(--color-bg)}a{color:var(--color-primary);text-decoration:none}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:8px 14px;border-radius:var(--radius);font-size:14px;opacity:.95;z-index:1000}#root{height:100%}.btn{min-height:var(--tap-size);padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--radius);font-weight:600;font-size:16px;border:none;cursor:pointer;transition:.15s;color:var(--color-btn-text)}.btn-primary{background:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-active{background:var(--color-active)}.btn-active:hover{background:var(--color-active-hover)}.btn-danger{background:var(--color-danger)}.btn-danger:hover{background:var(--color-danger-hover)}.btn-ghost{background:var(--color-ghost);color:var(--color-text)}.btn-ghost:hover{background:var(--color-ghost-hover);color:var(--color-text)}.btn-attention{background:var(--color-attention);color:#000}.btn-attention:hover{background:var(--color-attention-hover);color:#000}.btn:disabled{opacity:.4;cursor:not-allowed}.floating-rest-timer{position:fixed;z-index:9999;width:100px;height:100px;border-radius:50%;background:var(--color-bg);box-shadow:0 8px 24px #00000040;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;touch-action:none;cursor:pointer;transition:transform .2s,opacity .3s}.floating-rest-timer svg{width:100px;height:100px}.floating-rest-timer circle{fill:none}.floating-rest-timer .progress{stroke:var(--color-primary);stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .3s linear}.floating-rest-timer .timer-text{font-size:24px;font-weight:800;fill:var(--color-text)}.floating-rest-timer.blinking{animation:pulse 1s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}to{transform:scale(1);opacity:1}}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%) scale(.8);background:linear-gradient(135deg,var(--color-primary-hover),var(--color-primary));color:#fff;font-size:20px;font-weight:700;padding:16px 32px;border-radius:16px;box-shadow:0 12px 32px #00000059;z-index:10000;pointer-events:none;opacity:0;animation:popIn .5s forwards,popOut .5s forwards 2.5s}@keyframes popIn{0%{transform:translate(-50%) scale(.8);opacity:0}60%{transform:translate(-50%) scale(1.1);opacity:1}to{transform:translate(-50%) scale(1);opacity:1}}@keyframes popOut{0%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(.8)}}.app{min-height:100vh;display:flex;justify-content:center}body{background-color:var(--color-bg);color:var(--color-text)}.container{width:100%;max-width:420px;padding:16px}.workout-item{cursor:pointer;border-radius:var(--radius-lg);transition:.15s;position:relative;box-shadow:var(--shadow-sm);background:var(--color-card);border:1px solid var(--color-border)}.workout-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--color-primary-soft)}.delete-btn{position:absolute;bottom:8px;right:8px;border-radius:50%;width:34px;height:34px;cursor:pointer}.workout-actions{position:absolute;bottom:8px;right:8px;display:flex;gap:8px}.error-block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;margin:32px 0;text-align:center;padding:24px;border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm)}.error-message{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:18px;font-weight:500;color:var(--color-text-muted)}.page{max-width:720px;margin:0 auto;padding:16px}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;justify-content:space-between;align-items:center}.row-actions{display:flex;gap:8px}.card{border:1px solid var(--color-border);background:var(--color-card);border-radius:var(--radius-lg);padding:14px 16px;box-shadow:var(--shadow-sm);cursor:pointer}.card:hover{box-shadow:var(--shadow-md)}.exercise-card-edit{width:100%;padding:12px;touch-action:auto}.drag-handle{cursor:grab;touch-action:none;padding:6px 8px;margin-bottom:6px;display:inline-block;-webkit-user-select:none;user-select:none;background:var(--color-bg);border-radius:4px;font-size:18px}.drag-handle:active{cursor:grabbing}.exercise-card-edit-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.minus{margin-left:auto;background:none;border:none;cursor:pointer;font-size:18px}.selector{display:flex;gap:8px;align-items:center}.selector>*{min-width:0}.selector select{appearance:none;-webkit-appearance:none;height:var(--tap-size);flex:1 1 0;width:0;overflow:hidden;text-overflow:ellipsis}.selector button{flex:0 0 auto;min-height:var(--tap-size);white-space:nowrap}@media(max-width:480px){.exercise-card-edit{padding:10px}.selector{flex-direction:column}.selector select,.selector button{width:100%}.set-row input{width:48px;font-size:13px}}.measurements-page{padding:10px 16px;font-family:Inter,sans-serif;font-size:14px}.table-wrapper{overflow-x:auto;max-height:70vh}.measurements-table{width:100%;border-collapse:separate;border-spacing:0;min-width:900px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);background:var(--color-card)}.measurements-table th,.measurements-table td{padding:12px 8px;text-align:center;vertical-align:middle}.measurements-table thead th{background-color:var(--color-card-alt)}.measurements-table tbody tr:nth-child(2n){background-color:var(--color-card)}.measurements-table thead th{background:var(--color-card-alt);position:sticky;top:0;font-weight:600;z-index:1}.measurements-table tbody tr:nth-child(2n){background:var(--color-card-alt)}.measurements-table tbody tr:hover{background:var(--color-primary-soft)}.measurements-table td input{width:100%;box-sizing:border-box;padding:6px;text-align:center;border:1px solid #d1d5db;border-radius:4px;font-size:14px}.weight{font-weight:700}.cards-wrapper{display:flex;flex-direction:column;gap:16px;padding:16px 0}.measurement-card{background:var(--color-card);border-radius:var(--radius-lg);padding:16px;margin-top:12px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform .1s}.measurement-card:active{transform:scale(.99)}.measurement-card:first-child{margin-top:0}.card-header{display:flex;justify-content:space-between;font-weight:600;margin-bottom:12px}.card-body.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.card-row{display:flex;justify-content:space-between;padding:4px 0}.card-form{background:var(--color-card);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-md);border:1px solid var(--color-border);display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}@media(max-width:768px){.card-form{grid-template-columns:1fr}}.card-form-field{display:flex;flex-direction:column;gap:2px}.card-form-field input{width:100%;box-sizing:border-box;padding:4px;font-size:13px;border:1px solid #d1d5db;border-radius:var(--radius);text-align:center}.card-form-buttons{grid-column:span 2;display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.card-form-buttons button{min-width:100px;padding:6px 12px;font-size:13px}@media(max-width:768px){.card-form-buttons{grid-column:span 1;justify-content:flex-start}.card-form-buttons button{flex:1}}.desktop-only{display:none}.mobile-only{display:block}@media(min-width:769px){.desktop-only{display:block}.mobile-only{display:none}}.exercise-card-view{background:var(--color-card);border-radius:20px;padding:8px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;border:1px solid var(--color-border)}.exercise-card-view-header{position:relative;display:flex;flex-direction:column;padding-top:8px}.exercise-card-view-title{font-size:20px;font-weight:700;padding:0 40px 20px 0;word-break:break-word}.controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.controls button{height:42px;border-radius:12px;border:none;font-weight:600}.controls .finish{background:#ff4d4f;color:#fff}.rest-timer{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px}.exercise-card-view-link{padding:16px 0;display:inline-block;margin-top:8px;color:#4da6ff;text-decoration:none;font-size:14px}.exercise-card-view-link:active{opacity:.6}.editable-wrapper{display:inline-flex;align-items:center;gap:4px;min-width:60px}.edit-input{width:auto;min-width:50px;padding:4px 6px;border-radius:6px;border:1px solid #ccc;text-align:center;font-size:14px}.input-suffix{white-space:nowrap;font-size:14px}.completed-row{display:grid;grid-template-columns:max-content;gap:4px;align-items:center;min-width:50px}.value-text{font-weight:600;text-align:center}.done-highlight{color:#4caf50}.sets{display:flex;flex-direction:column}.set-row{grid-template-columns:30px 1fr 1fr 40px 40px;align-items:center;padding:8px 0;border-radius:12px;background:var(--color-card)}.set-row{display:flex;align-items:center;gap:8px}.set-row input{width:100%;height:34px;border-radius:8px;border:1px solid #ddd;text-align:center;font-size:14px}.set-row.done{opacity:.55;text-decoration:line-through}.set-index{font-weight:600;opacity:.6;min-width:24px;text-align:center}.set-actions{display:flex;gap:4px;margin-left:auto}.rest-timer{position:sticky;bottom:0;margin-top:20px;padding:14px 16px calc(14px + env(safe-area-inset-bottom));background:var(--color-card);border-top:1px solid rgba(255,255,255,.06);transition:all .3s ease;z-index:5}.timer-inner{display:flex;justify-content:space-between;align-items:center;max-width:600px;margin:0 auto;gap:12px}.circle{position:relative;width:70px;height:70px}.circle svg{transform:rotate(-90deg)}.circle circle{fill:none;stroke-linecap:round}.circle .bg{stroke:#94909040}.circle .progress{stroke:var(--color-primary);transition:stroke-dashoffset .4s linear}.circle .time{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.actions{display:flex;gap:8px}
