*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--primary-blue: #3b82f6;--primary-blue-hover: #2563eb;--primary-blue-dark: #1d4ed8;--blue-50: #eff6ff;--blue-200: #bfdbfe;--blue-700: #1d4ed8;--blue-800: #1e40af;--orange-700: #c2410c;--red-500: #ef4444;--red-600: #dc2626;--gray-200: #e5e7eb;--gray-500: #6b7280;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--white: #ffffff;--shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--border-radius: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--border-radius-2xl: 1.5rem}[data-theme=dark]{--bg-primary: var(--gray-900);--bg-secondary: var(--gray-800);--text-primary: var(--white);--text-secondary: var(--gray-200);--bg-card: var(--gray-800);--bg-input: var(--gray-700);--border-color: var(--gray-600)}[data-theme=light]{--bg-primary: linear-gradient( to bottom right, var(--blue-50), var(--blue-200) );--bg-secondary: var(--white);--text-primary: var(--gray-900);--text-secondary: var(--gray-700);--bg-card: var(--white);--bg-input: var(--white);--border-color: var(--gray-300)}.app-container{min-height:100vh;padding:2rem 1rem;background:var(--bg-primary);color:var(--text-primary);transition:all .3s ease}.app-container.light-mode{background:linear-gradient(to bottom right,var(--blue-50),var(--blue-200));color:var(--gray-900)}.app-container.dark-mode{background:var(--gray-900);color:var(--white)}.main-wrapper{width:100%;max-width:48rem;margin:0 auto;background:var(--white);padding:1.5rem;border-radius:var(--border-radius-2xl);box-shadow:var(--shadow-xl)}.main-wrapper.dark-mode{background:var(--gray-800)}.content-space{display:flex;flex-direction:column;gap:1.5rem}.header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.app-title{font-size:1.875rem;font-weight:700;text-align:center;color:var(--orange-700);flex:1;margin:0}.theme-toggle{background:var(--gray-200);color:var(--gray-800);padding:.25rem .75rem;border:none;border-radius:var(--border-radius);box-shadow:var(--shadow);cursor:pointer;font-size:.875rem;transition:all .2s ease;white-space:nowrap}.theme-toggle.dark-mode{background:var(--gray-700);color:var(--gray-200)}.theme-toggle:hover{opacity:.8;transform:translateY(-1px)}.workout-form,.form-row{display:flex;flex-direction:column;gap:1rem}@media (min-width: 768px){.form-row{flex-direction:row}}.form-input{border:1px solid var(--primary-blue);padding:.75rem;border-radius:var(--border-radius-lg);width:100%;font-size:1rem;outline:none;transition:all .2s ease;background:var(--bg-input);color:var(--text-primary)}.form-input:focus{outline:2px solid var(--primary-blue);outline-offset:2px;border-color:var(--primary-blue)}.form-input::placeholder{color:var(--gray-500)}.form-input.dark-mode{background:var(--gray-700);border-color:var(--gray-600);color:var(--white)}.form-input.dark-mode::placeholder{color:var(--gray-400)}.btn{padding:.75rem 1.25rem;border:none;border-radius:var(--border-radius-lg);cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;outline:none}.btn:focus{outline:2px solid var(--primary-blue);outline-offset:2px}.btn-primary{background:var(--primary-blue);color:var(--white)}.btn-primary:hover{background:var(--primary-blue-hover);transform:translateY(-1px)}.btn-danger{background:var(--red-500);color:var(--white);font-size:.875rem}.btn-danger:hover{background:var(--red-600);transform:translateY(-1px)}.btn-text{background:none;border:none;color:var(--red-500);cursor:pointer;text-decoration:none;font-size:.875rem;padding:.25rem .5rem;border-radius:var(--border-radius);transition:all .2s ease}.btn-text:hover{text-decoration:underline;background:#ef44441a}.card{background:var(--blue-50);padding:1rem;border-radius:var(--border-radius-xl);box-shadow:var(--shadow)}.card.dark-mode{background:var(--gray-700)}.card-title{font-weight:600;font-size:1.25rem;color:var(--blue-700);margin-bottom:.75rem}.card-title.dark-mode{color:var(--blue-400)}.workout-list{display:flex;flex-direction:column;gap:.5rem}.empty-state{color:var(--gray-500);font-style:italic;text-align:center;padding:2rem 1rem}.workout-item{display:flex;justify-content:space-between;align-items:center;border:1px solid #bfdbfe;background:var(--white);padding:.75rem;border-radius:var(--border-radius-lg);transition:all .2s ease;gap:1rem}.workout-item:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.workout-item.dark-mode{background:var(--gray-600);border-color:var(--gray-500)}.workout-info{color:var(--blue-800);font-weight:500;flex:1}.workout-info.dark-mode{color:var(--blue-300)}.reset-container{text-align:right}@media (max-width: 640px){.app-container{padding:1rem .5rem}.main-wrapper{padding:1rem;border-radius:var(--border-radius-xl)}.app-title{font-size:1.5rem}.header{flex-direction:column;text-align:center}.form-row{flex-direction:column}.workout-item{flex-direction:column;align-items:flex-start;gap:.5rem}.workout-item .btn-text{align-self:flex-end}}@media (max-width: 480px){.app-title{font-size:1.25rem;line-height:1.3}.card{padding:.75rem}.workout-item{padding:.5rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chart-container{position:relative;height:300px;width:100%}@media (max-width: 640px){.chart-container{height:250px}}.loading{text-align:center;padding:2rem;color:var(--gray-500)}.error{text-align:center;padding:2rem;color:var(--red-500);background:#ef44441a;border-radius:var(--border-radius)}.fade-in{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}*:focus{outline:2px solid var(--primary-blue);outline-offset:2px}@media (prefers-contrast: high){.btn{border:2px solid currentColor}.form-input,.workout-item{border-width:2px}}
