*{box-sizing:border-box}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:1rem;background-color:var(--background);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.login-content{width:100%;max-width:28rem;background:var(--white);padding:2.5rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);text-align:center;position:relative;overflow:hidden}.login-content:before{content:"";position:absolute;top:0;left:0;right:0;height:.375rem;background:linear-gradient(90deg,var(--primary),var(--secondary))}.login-header{margin-bottom:2rem}.login-container h1{color:var(--text);margin-bottom:.5rem;font-size:1.75rem;font-weight:700;line-height:1.25}.login-form{margin-top:1.5rem}.form-footer{display:flex;justify-content:flex-end;margin-bottom:1.5rem}.forgot-password{color:var(--text-light);font-size:.875rem;text-decoration:none;transition:var(--transition)}.forgot-password:hover{color:var(--primary);text-decoration:underline}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (max-width: 640px){.login-content{padding:2rem 1.5rem;border-radius:var(--radius-lg)}.login-container h1{font-size:1.5rem}}:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #a5b4fc;--secondary: #10b981;--text: #1f2937;--text-light: #6b7280;--background: #f9fafb;--white: #ffffff;--error: #ef4444;--success: #10b981;--border: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition: all .3s cubic-bezier(.4, 0, .2, 1);--radius-sm: .375rem;--radius: .5rem;--radius-lg: .75rem;--radius-xl: 1rem}.register-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:1rem;background-color:var(--background);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.register-content{width:100%;max-width:28rem;background:var(--white);padding:2.5rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);text-align:center;position:relative;overflow:hidden}.register-content:before{content:"";position:absolute;top:0;left:0;right:0;height:.375rem;background:linear-gradient(90deg,var(--primary),var(--secondary))}.register-header{margin-bottom:2rem}.register-container h1{color:var(--text);margin-bottom:.5rem;font-size:1.75rem;font-weight:700;line-height:1.25}.brand{color:var(--primary);font-weight:800}.subtitle{color:var(--text-light);margin-bottom:0;font-size:1rem;line-height:1.5}form{margin-top:1.5rem}.form-group{margin-bottom:1.5rem;width:100%;text-align:left}.form-group label{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500;font-size:.875rem}.input-wrapper{position:relative}.input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-light);font-size:1rem}input{width:100%;padding:.875rem 1rem .875rem 2.5rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem;transition:var(--transition);background-color:var(--white);color:var(--text)}input::placeholder{color:var(--text-light);opacity:.6}input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f133}.password-hint{color:var(--text-light);font-size:.75rem;margin-top:.25rem;text-align:left}.btn{padding:1rem;width:100%;font-size:1rem;font-weight:600;border-radius:var(--radius);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:.75rem;border:none}.btn-primary{background-color:var(--primary);color:var(--white);box-shadow:var(--shadow)}.btn-primary:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-md)}.btn-primary:disabled{background-color:var(--primary-light);cursor:not-allowed;box-shadow:none}.btn-google{background:var(--white);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.btn-google:hover{background:#f8fafc;box-shadow:var(--shadow)}.google-icon{color:#4285f4;font-size:1.1rem}.divider{display:flex;align-items:center;margin:1.75rem 0;color:var(--text-light);font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid var(--border)}.divider span{padding:0 1rem}.error-message{color:var(--error);font-size:.875rem;margin:-.75rem 0 1rem;text-align:center;width:100%;padding:.75rem;background-color:#ef44440d;border-radius:var(--radius-sm);border-left:3px solid var(--error)}.auth-links{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1.5rem;font-size:.95rem;color:var(--text-light)}.link{color:var(--primary);text-decoration:none;font-weight:600;transition:var(--transition)}.link:hover{color:var(--primary-dark);text-decoration:underline}[aria-busy=true]{position:relative;pointer-events:none}[aria-busy=true]:after{content:"";display:inline-block;width:1.25rem;height:1.25rem;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:var(--white);animation:spin 1s ease-in-out infinite;margin-left:.5rem}.btn-google[aria-busy=true]:after{border-top-color:var(--primary)}@media (max-width: 640px){.register-content{padding:2rem 1.5rem;border-radius:var(--radius-lg)}.register-container h1{font-size:1.5rem}}@media (max-width: 400px){.auth-links{flex-direction:column;gap:.25rem}}.react-calendar-heatmap text{font-size:10px;fill:#aaa}.react-calendar-heatmap .react-calendar-heatmap-small-text{font-size:5px}.react-calendar-heatmap rect:hover{stroke:#555;stroke-width:1px}.react-calendar-heatmap .color-empty{fill:#eee}.react-calendar-heatmap .color-filled{fill:#8cc665}.react-calendar-heatmap .color-github-0{fill:#eee}.react-calendar-heatmap .color-github-1{fill:#d6e685}.react-calendar-heatmap .color-github-2{fill:#8cc665}.react-calendar-heatmap .color-github-3{fill:#44a340}.react-calendar-heatmap .color-github-4{fill:#1e6823}.react-calendar-heatmap .color-gitlab-0{fill:#ededed}.react-calendar-heatmap .color-gitlab-1{fill:#acd5f2}.react-calendar-heatmap .color-gitlab-2{fill:#7fa8d1}.react-calendar-heatmap .color-gitlab-3{fill:#49729b}.react-calendar-heatmap .color-gitlab-4{fill:#254e77}.heatmap-wrapper{width:100%;padding:2rem 1rem;display:flex;justify-content:center;align-items:center;animation:fadeInUp .4s ease-in-out;overflow-x:auto}.react-calendar-heatmap{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:1200px}.react-calendar-heatmap .react-calendar-heatmap-week{display:flex;gap:4px;justify-content:center}.react-calendar-heatmap .react-calendar-heatmap-day{width:20px;height:20px;rx:2px;ry:2px;transition:all .25s ease-in-out;shape-rendering:geometricPrecision;cursor:pointer}.color-empty{fill:var(--color-empty, #ebedf0)}.color-scale-1{fill:var(--color-1, #9be9a8)}.color-scale-2{fill:var(--color-2, #40c463)}.color-scale-3{fill:var(--color-3, #30a14e)}.color-scale-4,.color-scale-5,.color-scale-6{fill:var(--color-4, #216e39)}.react-calendar-heatmap .react-calendar-heatmap-day:hover{transform:scale(1.1);stroke:#444;stroke-width:1px;z-index:2}.react-calendar-heatmap text{font-size:12px;fill:var(--text-secondary, #6a737d)}.heatmap-wrapper.light{--color-empty: #ebedf0;--color-1: #9be9a8;--color-2: #40c463;--color-3: #30a14e;--color-4: #216e39;--text-secondary: #4a5568}.heatmap-wrapper.dark{--color-empty: #2d333b;--color-1: #58a6ff;--color-2: #1f6feb;--color-3: #1158c7;--color-4: #0d419d;--text-secondary: #c9d1d9}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.react-calendar-heatmap .react-calendar-heatmap-day{width:16px;height:16px}}@media (max-width: 600px){.react-calendar-heatmap{max-width:100%}.react-calendar-heatmap .react-calendar-heatmap-day{width:12px;height:12px}.react-calendar-heatmap text{font-size:10px}}.countdown-container{display:flex;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:28rem;margin:0 auto;padding:2rem;background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:var(--transition)}.countdown-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary),var(--primary-light));transform:scaleX(0);transform-origin:left;transition:transform .5s ease}.timer-active:before{animation:progressBar 1s forwards}.timer-paused:before{background:var(--text-light);animation:pulseBar 2s infinite}.timer-reset:before{animation:resetBar .5s forwards}@keyframes progressBar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pulseBar{0%,to{opacity:.8}50%{opacity:.4}}@keyframes resetBar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.preset-selector{display:flex;gap:.75rem;width:100%;flex-wrap:wrap;justify-content:center}.preset-button{padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;border-radius:2rem;border:2px solid var(--primary);background-color:transparent;color:var(--primary);cursor:pointer;transition:var(--transition);flex:1 0 auto;max-width:7rem;text-align:center}.preset-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #4361ee33}.preset-button.active{background-color:var(--primary);color:#fff;border-color:var(--primary)}.timer-text{font-size:3.5rem;font-weight:700;color:var(--text);font-family:Roboto Mono,monospace;margin:0}.button-container{display:flex;gap:1rem;width:100%;justify-content:center;margin-top:.5rem}.control-button{padding:.875rem 1.75rem;font-size:1rem;font-weight:600;border-radius:2rem;border:none;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:.5rem;min-width:7rem}.control-button:active{transform:scale(.98)}.control-button:first-child{background-color:var(--primary);color:#fff;box-shadow:var(--shadow-md)}.control-button:first-child:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 16px #4361ee66}.control-button.secondary{background-color:#fff;color:var(--text);border:2px solid var(--text-light)}.control-button.secondary:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-2px)}.heatmap-toggle{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:var(--bg);border:none;border-radius:2rem;font-size:.9375rem;font-weight:500;color:var(--text);cursor:pointer;transition:var(--transition);margin-top:.5rem}.heatmap-toggle:hover{background-color:#e9ecef;color:var(--primary)}.heatmap-icon{font-size:1.1rem}.toggle-icon{font-size:1.2rem;transition:transform .2s ease}.heatmap-toggle[aria-expanded=true] .toggle-icon{transform:rotate(180deg)}.heatmap-container{width:100%;margin-top:1rem;animation:fadeIn .3s ease-out}.heatmap-loading,.heatmap-empty{text-align:center;padding:1.5rem;color:var(--text-light);font-size:.9375rem;border-radius:var(--border-radius);background-color:var(--bg)}.heatmap-empty{line-height:1.6}@media (max-width: 640px){.countdown-container{padding:1.5rem;border-radius:0;box-shadow:none}.timer-text{font-size:3rem}.preset-button{padding:.625rem 1rem;font-size:.8125rem;max-width:5.5rem}.control-button{padding:.75rem 1.25rem;min-width:auto;flex:1;font-size:.9375rem}.heatmap-toggle{padding:.625rem 1.25rem;font-size:.875rem}}.Toastify__toast{font-family:-apple-system,BlinkMacSystemFont,sans-serif;border-radius:var(--border-radius)!important;padding:.75rem 1.25rem!important;min-height:auto!important}.Toastify__toast--success{background-color:var(--success)!important;color:#fff!important;font-weight:500!important}.Toastify__toast-body{margin:0!important;padding:0!important}:root{--primary: #4361ee;--primary-light: #e0e7ff;--text: #2b2c34;--text-light: #6c6f85;--background: #ffffff;--border-radius: 12px;--transition: all .3s cubic-bezier(.25, .8, .25, 1);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--header-height: 72px}.app-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background-color:var(--background);box-shadow:var(--shadow-sm);display:flex;justify-content:center;align-items:center;padding:0 24px;z-index:1000;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(0,0,0,.05)}.header-content{width:100%;max-width:1200px;display:flex;justify-content:space-between;align-items:center}.header-nav{display:flex;gap:8px;align-items:center}.nav-btn{position:relative;padding:12px 20px;border-radius:var(--border-radius);display:flex;align-items:center;gap:12px;background:none;border:none;cursor:pointer;transition:var(--transition);font-size:15px;color:var(--text-light);font-weight:500;text-decoration:none;overflow:hidden}.nav-btn:before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary);transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.nav-btn:hover:before{transform:scaleX(1);transform-origin:left}.nav-btn.active{color:var(--primary);font-weight:600}.nav-btn.active:before{transform:scaleX(1)}.nav-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px}.logout-btn{width:44px;height:44px;border-radius:50%;display:flex;justify-content:center;align-items:center;background:none;border:none;cursor:pointer;transition:var(--transition);color:var(--text-light);position:relative}.logout-btn:hover{background-color:#fee2e2;color:#dc2626;transform:translateY(-2px)}.logout-btn .icon{width:20px;height:20px}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:-40px;left:50%;transform:translate(-50%) scale(.9);background-color:var(--text);color:#fff;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;opacity:0;visibility:hidden;transition:var(--transition);white-space:nowrap;pointer-events:none;z-index:100;box-shadow:var(--shadow-sm)}[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) scale(1);bottom:-36px}@media (max-width: 768px){.app-header{padding:0 16px;height:64px}.nav-btn{padding:12px;border-radius:50%}.nav-label{display:none}.nav-btn:before{bottom:8px;left:8px;width:calc(100% - 16px)}}@media (max-width: 480px){.app-header{padding:0 12px}.header-nav{gap:4px}.nav-btn{padding:10px}.logout-btn{width:40px;height:40px}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.app-header{animation:slideDown .4s ease-out forwards}.nav-btn:after{content:"";position:absolute;top:50%;left:50%;width:5px;height:5px;background:#4361ee4d;opacity:0;border-radius:100%;transform:scale(1) translate(-50%);transform-origin:50% 50%}.nav-btn:focus:not(:active):after{animation:ripple .6s ease-out}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(20);opacity:0}}.home-page{display:flex;flex-direction:column;min-height:100vh;padding:1rem;background-color:#f8f9fa;position:relative}.home-header{display:flex;flex-direction:column;align-items:center;width:100%;max-width:800px;margin:0 auto 1rem;padding:.5rem}.welcome-message{color:#004777;font-size:1.5rem;margin:1rem 0;text-align:center;font-weight:700;width:100%}.logout-icon{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#666;font-size:1.4rem;cursor:pointer;padding:.5rem;transition:color .15s ease;display:flex;justify-content:end}.logout-icon:hover{color:#ff4d4d}.timer-main{flex-grow:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:1rem}.timer-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px}@media (min-width: 480px){.home-page{padding:1.5rem}.welcome-message{font-size:1.7rem}.logout-icon{font-size:1.6rem}}@media (min-width: 768px){.home-header{margin-bottom:2rem;padding:1rem}.welcome-message{font-size:1.8rem}}.task-card{--card-padding: .75rem;--card-spacing: .5rem;--border-radius: 6px;background-color:#fff;border-radius:var(--border-radius);box-shadow:0 1px 3px #0000000d;transition:transform .2s cubic-bezier(.18,.89,.32,1.28),box-shadow .2s ease-out,opacity .15s ease;border:1px solid #e5e7eb;padding:var(--card-padding);margin-bottom:var(--card-spacing);cursor:grab;position:relative;touch-action:none;overflow:hidden}.task-card-content{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:flex-start;width:100%}.task-card-main{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding-right:.5rem}.task-card-title{font-size:.9375rem;font-weight:500;color:#111827;margin:0;line-height:1.35;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.01em}.task-card-description{font-size:.8125rem;color:#4b5563;line-height:1.4;margin:0;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding-left:.15rem}.task-card:not(.dragging):hover{box-shadow:0 4px 12px -2px #00000014;border-color:#d1d5db;transform:translateY(-2px) scale(1.005)}.task-card:not(.dragging):active{transform:translateY(0) scale(.995);transition:transform .1s ease}.drag-handle{background:none;border:none;color:#9ca3af;padding:.25rem;cursor:grab;width:100%;display:flex;justify-content:center;transition:transform .2s ease,color .2s ease}.drag-handle:hover{color:#6b7280;transform:scale(1.1)}.drag-handle:active{cursor:grabbing;transform:scale(.95)}.task-card.dragging{opacity:.92;box-shadow:0 8px 24px -4px #0000001f;z-index:10;cursor:grabbing;transform:rotate(1.5deg) scale(1.02);transition:transform .2s cubic-bezier(.18,.89,.32,1.15),box-shadow .2s ease}.task-card-actions{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:15%;min-width:40px;padding-left:.5rem;border-left:1px solid #e5e7eb}.task-action-btn{background:none;border:none;color:#9ca3af;padding:.25rem;width:100%;display:flex;justify-content:center;border-radius:4px;transition:all .2s cubic-bezier(.34,1.56,.64,1);cursor:pointer}.task-action-btn:hover{background-color:#f3f4f6;transform:scale(1.1)}.task-action-btn.edit:hover{color:#3b82f6;transform:translateY(-1px) scale(1.1)}.task-action-btn.delete:hover{color:#ef4444;transform:translateY(-1px) scale(1.1)}@media (max-width: 768px){.task-card{--card-padding: .625rem;--card-spacing: .375rem}.task-card-content{gap:.5rem}.task-card-title{font-size:.875rem;-webkit-line-clamp:1}.task-card-description{font-size:.75rem;-webkit-line-clamp:1;padding-left:0}.task-card-actions{width:12%;gap:.4rem}.drag-handle{padding:.3rem}}@keyframes cardEnter{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.task-card{animation:cardEnter .3s cubic-bezier(.22,1,.36,1) forwards}@keyframes subtlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.01)}}.task-card:focus-within{animation:subtlePulse 1.5s ease-in-out infinite;box-shadow:0 0 0 2px #bfdbfe}:root{--primary: #6d28d9;--primary-hover: #5b21b6;--danger: #dc2626;--danger-hover: #b91c1c;--border: #e5e7eb;--border-hover: #d1d5db;--text: #111827;--text-light: #6b7280;--bg-hover: #f9fafb;--focus-ring: 0 0 0 3px rgba(109, 40, 217, .2);--transition: all .3s cubic-bezier(.4, 0, .2, 1);--glass-effect: rgba(255, 255, 255, .85)}.task-form{background:var(--glass-effect);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;box-shadow:0 8px 32px #0000001a;padding:2rem;width:100%;max-width:480px;margin:0 auto;border:1px solid rgba(255,255,255,.3);animation:formEnter .5s var(--transition) forwards;transform-origin:top center;will-change:transform,opacity;position:relative;overflow:hidden}.task-form:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(109,40,217,.1) 0%,transparent 70%);z-index:-1;animation:rotate 15s linear infinite}@keyframes formEnter{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.75rem;position:relative}.form-header h2{font-size:1.5rem;font-weight:700;color:var(--text);margin:0;background:linear-gradient(90deg,var(--primary),#9333ea);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.5px}.close-button{background:#ffffffb3;border:none;width:2.5rem;height:2.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-light);cursor:pointer;transition:var(--transition);box-shadow:0 2px 8px #0000000d}.close-button:hover{background:#fff;color:var(--text);transform:rotate(90deg) scale(1.1)}.form-group{margin-bottom:1.5rem;position:relative}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--text);margin-bottom:.5rem;padding-left:.5rem}.form-control{width:100%;padding:.875rem 1rem;border:1px solid var(--border);border-radius:10px;font-size:.9375rem;transition:var(--transition);background:#ffffffb3;color:var(--text);box-shadow:0 1px 2px #0000000d}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring);background:#fff;transform:translateY(-1px)}textarea.form-control{min-height:120px;resize:vertical;line-height:1.6}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem;padding-right:2.5rem}.form-actions{display:flex;justify-content:flex-end;margin-top:2.5rem;position:relative}.button-group{display:flex;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #0000001a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;font-weight:600;font-size:.9375rem;cursor:pointer;transition:var(--transition);border:none;position:relative;z-index:1}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px)}.btn-danger{background:#fff;color:var(--danger);border-left:1px solid var(--border)}.btn-danger:hover{background:#fff5f5;color:var(--danger-hover)}.btn:active{transform:translateY(0) scale(.98)}.is-loading:after{content:"";display:inline-block;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-left:.5rem}.form-group:focus-within label{transform:translateY(-5px);color:var(--primary)}@media (max-width: 480px){.task-form{padding:1.75rem 1.25rem;border-radius:0;border:none;height:auto;min-height:65vh}.button-group{flex-direction:column;width:100%;border-radius:10px}.btn{width:100%;padding:1rem}.btn-danger{border-left:none;border-top:1px solid var(--border)}}.form-control:hover{border-color:var(--border-hover);transform:translateY(-1px)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.is-invalid{animation:pulse .3s ease,shake .4s ease;border-color:var(--danger)!important}:root{--primary: #4f46e5;--primary-light: #6366f1;--secondary: #f59e0b;--success: #10b981;--danger: #ef4444;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--radius-sm: .25rem;--radius: .375rem;--radius-md: .5rem;--radius-lg: .75rem}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;color:var(--gray-800);background-color:#f8fafc}button{cursor:pointer;font-family:inherit}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:1rem}.spin{animation:spin 1s linear infinite;font-size:2rem;color:var(--primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.task-board-container{max-width:1440px;margin:0 auto;padding:1.5rem;min-height:100vh}.task-board-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;margin-top:2rem}.task-board-header h1{font-size:1.75rem;font-weight:700;color:var(--gray-800)}.add-task-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-weight:500;transition:all .2s ease;box-shadow:var(--shadow-sm)}.add-task-button:hover{background-color:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow)}.add-task-button:active{transform:translateY(0)}.form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0006;display:flex;align-items:flex-start;justify-content:center;z-index:100;padding:1rem;overflow-y:auto}.form-container{background-color:#fff;border-radius:.75rem;width:100%;max-width:400px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:fadeInUp .25s ease-out;margin:2rem 0;flex-shrink:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.task-form{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.form-group{margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--gray-200)}@media (max-width: 640px){.form-overlay{padding:.5rem;align-items:flex-start}.form-container{margin:1rem 0;border-radius:.5rem}.task-form{padding:1.25rem}.form-actions{flex-direction:column;gap:.5rem}}.button-pair{display:flex;gap:.75rem;width:100%}.button-pair .btn{flex:1;min-width:0}.form-header h2,.form-group label{margin-top:0;margin-bottom:.5rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.625rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51a}.form-group textarea{min-height:6rem;resize:vertical}.form-actions{display:flex;justify-content:flex-start;margin-top:1.5rem}.submit-button{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-weight:500;transition:all .2s ease}.submit-button:hover{background-color:var(--primary-light)}.columns-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.task-column{background-color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1rem;transition:all .2s ease;border:1px solid transparent}.task-column.dragging{box-shadow:var(--shadow-lg)}.column-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:1rem;cursor:grab;-webkit-user-select:none;user-select:none}.column-header:active{cursor:grabbing}.column-title-container{display:flex;align-items:center;gap:.75rem}.status-indicator{width:.75rem;height:.75rem;border-radius:50%}.column-title{font-size:1rem;font-weight:600;color:var(--gray-800);margin:0}.task-count{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;background-color:var(--gray-100);color:var(--gray-600);border-radius:50%;font-size:.75rem;font-weight:600}.task-list{display:flex;flex-direction:column;gap:.75rem;min-height:2rem}.empty-state{padding:1.5rem 1rem;text-align:center;color:var(--gray-500);border:1px dashed var(--gray-300);border-radius:var(--radius-sm);font-size:.875rem;transition:all .2s ease}.task-card{background-color:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);transition:all .2s ease;border:1px solid var(--gray-200)}.task-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.task-card.dragging{opacity:.8;box-shadow:var(--shadow-lg)}.task-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.task-card-header h3{font-size:.9375rem;font-weight:500;color:var(--gray-800);margin:0;word-break:break-word}.drag-handle{background:none;border:none;color:var(--gray-400);padding:.25rem;cursor:grab}.drag-handle:active{cursor:grabbing}.task-description{font-size:.8125rem;color:var(--gray-600);margin-bottom:.75rem;word-break:break-word}.task-actions{display:flex;gap:.5rem}.task-actions button{background:none;border:none;color:var(--gray-500);padding:.25rem;font-size:.875rem;transition:color .2s ease}.task-actions button:hover{color:var(--gray-700)}.task-actions button:first-child:hover{color:var(--primary)}.task-actions button:last-child:hover{color:var(--danger)}@media (max-width: 768px){.task-board-header{flex-direction:column;align-items:flex-start;gap:1rem}.columns-container{grid-template-columns:1fr}}@media (max-width: 480px){.task-board-container{padding:1rem}.task-board-header h1{font-size:1.5rem}}@media (min-width: 1024px){.task-board-container{width:90%;max-width:none;padding:2rem 0;margin:0 auto}.columns-container{grid-template-columns:repeat(3,1fr);gap:2rem}.task-column{min-height:70vh;padding:1.5rem}.form-overlay{align-items:flex-start;padding-top:5%}}@media (min-width: 1440px){.task-board-header{margin-bottom:3rem}.task-card{padding:1.25rem}.task-card-header h3{font-size:1rem}.task-description{font-size:.875rem}}@media (min-width: 1920px){.task-board-container{width:85%;max-width:1920px}.columns-container{gap:3rem}.task-column{min-height:75vh}}@media (min-width: 1024px){.form-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.form-container{margin-top:5vh}}:root{--header-height: 60px;--content-padding: 1rem;--primary-color: #4a6fa5;--primary-hover: #3a5a8f;--transition-speed: .2s}.task-board-page{display:flex;flex-direction:column;min-height:100vh;width:100vw;margin:0;padding:0}.task-board-page>header{width:100%;position:sticky;top:0;z-index:100;height:var(--header-height)}.board-main{flex:1;width:100%;padding:var(--content-padding);overflow-y:auto;box-sizing:border-box}.nav-buttons{display:flex;gap:.75rem;padding:0 var(--content-padding)}.nav-button{padding:.5rem 1rem;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;transition:background-color var(--transition-speed) ease,transform .1s ease}.nav-button:hover{background:var(--primary-hover);transform:translateY(-1px)}.nav-button:active{transform:translateY(0)}.task-board-container{width:100%;padding:0;margin:0}@media (max-width: 768px){:root{--content-padding: .75rem;--header-height: 56px}.nav-button{padding:.4rem .8rem}}@media (max-width: 480px){:root{--content-padding: .5rem}.nav-buttons{gap:.5rem}}.board-main::-webkit-scrollbar{width:6px}.board-main::-webkit-scrollbar-track{background:#f1f1f1}.board-main::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.info-banner{background-color:#e7f3fe;border-left:4px solid #2196f3;color:#0b5394;padding:10px 16px;display:flex;justify-content:space-between;align-items:center;font-size:14px}.dismiss-btn{background:none;border:none;font-size:18px;cursor:pointer;color:#0b5394}:root{--primary: #8b5cf6;--primary-hover: #7c3aed;--primary-light: #c4b5fd;--success: #10b981;--success-light: #a7f3d0;--danger: #ef4444;--danger-light: #fecaca;--text: #1e293b;--text-light: #64748b;--bg: #f8fafc;--card-bg: rgba(255, 255, 255, .95);--border: rgba(0, 0, 0, .08);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--transition: all .3s cubic-bezier(.4, 0, .2, 1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}.streaks-container{width:100%;min-height:100vh;background:var(--bg);position:relative;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;display:flex;flex-direction:column;padding-bottom:2rem}.streaks-container:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(139,92,246,.1) 0%,transparent 60%);animation:rotate 20s linear infinite;z-index:-1}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.streaks-container h1{font-size:2.5rem;font-weight:800;margin:6rem 0 .5rem;color:var(--text);text-align:center;background:linear-gradient(90deg,var(--primary),#7c3aed);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.05em;animation:fadeInUp .6s ease-out}.streaks-container .subtitle{font-size:1.1rem;color:var(--text-light);text-align:center;margin-bottom:2rem;font-weight:400;animation:fadeInUp .6s ease-out .1s both}.add-streak{display:flex;gap:.75rem;margin:0 auto 2rem;width:90%;max-width:600px;padding:1rem;background:var(--card-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border);animation:fadeInUp .6s ease-out .2s both}.add-streak input{flex:1;padding:.875rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;transition:var(--transition);background:#ffffffb3;outline:none}.add-streak input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #8b5cf633;background:#fff}.add-streak button{padding:0 1.5rem;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 6px #8b5cf626}.add-streak button:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 8px 15px #8b5cf640}.streaks-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;width:90%;max-width:1200px;margin:0 auto;padding:0 .5rem 3rem 0;animation:fadeIn .6s ease-out .3s both;max-height:calc(100vh - 320px);overflow-y:auto;scroll-behavior:smooth;overscroll-behavior:contain}.streaks-list::-webkit-scrollbar{width:8px}.streaks-list::-webkit-scrollbar-track{background:#00000008;border-radius:10px}.streaks-list::-webkit-scrollbar-thumb{background:#8b5cf666;border-radius:10px;transition:var(--transition)}.streaks-list::-webkit-scrollbar-thumb:hover{background:#8b5cf699}.streak-item{background:var(--card-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1.5rem;transition:var(--transition);border:1px solid var(--border);position:relative;overflow:hidden;min-height:180px;display:flex;flex-direction:column}.streak-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--primary)}.streak-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.streak-info h3{font-size:1.25rem;margin:0 0 1rem;font-weight:700;color:var(--text)}.streak-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem}.streak-stats span{font-size:.875rem;color:var(--text-light);display:flex;align-items:center;position:relative;padding-left:1.25rem}.streak-stats span:before{content:"";position:absolute;left:0;width:8px;height:8px;border-radius:50%;background:currentColor}.streak-actions{display:flex;gap:.75rem;margin-top:auto}.complete-btn{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:none;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden}.complete-btn.completed{background-color:var(--success);color:#fff;border-color:var(--success)}.complete-btn:not(.completed):hover{border-color:var(--primary);color:var(--primary)}.delete-btn{padding:0 1.25rem;background:#fff;color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center}.delete-btn:hover{background:var(--danger);color:#fff;transform:translateY(-2px);box-shadow:0 4px 6px #ef444426}.edit-btn{padding:0 1.25rem;background:#fff;color:var(--primary);border:1px solid var(--primary-light);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center}.edit-btn:hover{background:var(--primary-hover);color:#fff;transform:translateY(-2px);box-shadow:0 4px 6px #ef444426}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.complete-btn.completed{animation:pulse .5s ease}.empty-state{text-align:center;padding:3rem;grid-column:1 / -1;color:var(--text-light);background:var(--card-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-md);border:1px dashed var(--border);animation:fadeIn .6s ease-out;margin-bottom:2rem}.error-message-strPage{background:#ef44441a;color:var(--danger);padding:1rem;border-radius:var(--radius-sm);margin:0 auto 2rem;width:90%;max-width:600px;display:flex;justify-content:space-between;align-items:center;border-left:4px solid var(--danger);animation:fadeInUp .4s ease-out}.loading{text-align:center;padding:3rem;font-size:1.2rem;color:var(--text-light);animation:fadeIn .6s ease-out}@media (max-width: 768px){.streaks-container h1{font-size:1.8rem;margin-top:4.5rem;margin-bottom:.25rem}.streaks-container .subtitle{font-size:1rem;margin-bottom:1.5rem}.streaks-list{grid-template-columns:1fr;width:95%;max-height:calc(100vh - 240px);gap:1rem;padding-bottom:2rem}.streak-item{padding:1rem;min-height:160px;border-radius:var(--radius-sm)}.streak-info h3{font-size:1.1rem;margin-bottom:.75rem}.streak-stats{gap:1rem;margin-bottom:1rem}.streak-stats span{font-size:.8rem;padding-left:1rem}.streak-stats span:before{width:6px;height:6px}.streak-actions{gap:.5rem}.complete-btn{width:36px;height:36px;font-size:.9rem}.delete-btn{padding:0 1rem;font-size:.8rem}.add-streak{flex-direction:column;margin-bottom:1.5rem;margin-top:4rem;padding:.75rem}.add-streak input,.add-streak button{padding:.75rem;font-size:.95rem}}@media (max-width: 480px){.streaks-container h1{font-size:1.6rem;margin-top:5rem}.streak-item{min-height:140px;padding:.75rem}.streaks-list{max-height:calc(100vh - 220px)}@media (max-height: 700px){.streak-item{min-height:120px}.streak-info h3{font-size:1rem}.streak-stats span{font-size:.75rem}.streaks-list{gap:.75rem}}}.edit-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;text-align:center}.modal-content h3{margin-bottom:1rem}.modal-content input{margin-bottom:1rem;padding:.5rem;border:1px solid #ccc;border-radius:4px}.modal-content button{margin:0 .5rem;padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer}.modal-content button:first-child{background:#4caf50;color:#fff}.modal-content button:last-child{background:#f44336;color:#fff}.info-banner{background-color:#e7f3fe;border-left:4px solid #2196f3;color:#0b5394;padding:10px 16px;display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-top:4rem;margin-bottom:1rem;animation:fadeInUp .4s ease-out}.info-content{display:flex;align-items:center;gap:8px}.info-icon{font-size:18px;color:#2196f3}.inline-icon{vertical-align:middle;font-size:14px}.dismiss-btn{background:none;border:none;font-size:18px;cursor:pointer;color:#0b5394;transition:color .2s ease}.dismiss-btn:hover{color:#f44336}.add-workout-log-page{--primary-color: #6c5ce7;--secondary-color: #00cec9;--accent-color: #fd79a8;--dark-color: #2d3436;--light-color: #f5f6fa;--success-color: #00b894;--danger-color: #d63031;--shadow: 0 4px 20px rgba(0, 0, 0, .1);--transition: all .3s cubic-bezier(.25, .8, .25, 1);max-width:1200px;margin:0 auto;padding:2rem;color:var(--dark-color);background-color:var(--light-color);min-height:100vh;position:relative;overflow-y:auto}.add-workout-log-page:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#6c5ce71a,#00cec91a);z-index:-1;animation:gradientShift 15s ease infinite;background-size:200% 200%}.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.header-section h1{font-size:2.5rem;color:var(--primary-color);margin-top:3rem}.back-button{padding:.7rem 1.5rem;background-color:var(--secondary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:.5rem}.workout-log-container{background:#fff;border-radius:16px;padding:2.5rem;box-shadow:var(--shadow);animation:fadeIn .6s ease-out;max-height:100%;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.workout-log-form{display:flex;flex-direction:column;gap:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group select,.form-group input[type=number],.form-group input[type=text]{padding:.9rem 1.2rem;border:2px solid #dfe6e9;border-radius:10px;font-size:1rem;transition:var(--transition);width:100%}.form-group select:focus,.form-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #6c5ce733;outline:none}.sets-container{display:flex;flex-direction:column;gap:1.5rem}.sets-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.sets-header h3{margin:0;font-size:1.5rem;color:var(--primary-color)}.add-set-button{padding:.7rem 1.5rem;background-color:var(--secondary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.add-set-button:hover{background-color:#00a8a3;transform:translateY(-2px);box-shadow:0 4px 10px #00cec94d}.set-item{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background-color:#f8f9fa;border-radius:12px;transition:var(--transition);position:relative}.set-item:hover{background-color:#f1f3f5;transform:translate(5px)}.set-number{font-weight:700;color:var(--primary-color);min-width:70px;font-size:1.1rem}.set-fields{display:flex;flex-wrap:wrap;gap:1.5rem;flex:1}.checkbox-group{display:flex;align-items:center;gap:.5rem}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-group input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border:2px solid #dfe6e9;border-radius:5px;cursor:pointer;position:relative;transition:var(--transition)}.checkbox-group input[type=checkbox]:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.checkbox-group input[type=checkbox]:checked:after{content:"✓";position:absolute;color:#fff;font-size:.9rem;top:50%;left:50%;transform:translate(-50%,-50%)}.remove-set-button{position:absolute;top:-10px;right:-10px;width:30px;height:30px;border-radius:50%;background-color:var(--danger-color);color:#fff;border:none;font-size:1.2rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;padding:0}.remove-set-button:hover{transform:scale(1.1);background-color:#c0392b}.submit-button{padding:1rem 2rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:var(--transition);margin-top:1rem;align-self:flex-end}.submit-button:hover{background-color:#5649c0;transform:translateY(-2px);box-shadow:0 4px 15px #6c5ce74d}.floating-dumbbell{position:fixed;opacity:.05;z-index:-1;animation:float 15s ease-in-out infinite}.floating-dumbbell:nth-child(1){top:10%;left:5%;font-size:10rem;animation-delay:0s}.floating-dumbbell:nth-child(2){top:60%;right:5%;font-size:8rem;animation-delay:2s;animation-duration:12s}.floating-dumbbell:nth-child(3){bottom:20%;left:20%;font-size:6rem;animation-delay:4s;animation-duration:18s}@media (max-width: 768px){.add-workout-log-page{padding:1rem}.workout-log-container{padding:1.5rem}.header-section,.set-item{flex-direction:column;align-items:flex-start;gap:1rem}.set-fields{width:100%;flex-direction:column;gap:1rem}.submit-button{width:100%}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#5649c0}.set-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;flex:1}@media (max-width: 768px){.set-fields{grid-template-columns:1fr}}.add-workout-page{--primary-color: #6c5ce7;--secondary-color: #00cec9;--accent-color: #fd79a8;--dark-color: #2d3436;--light-color: #f5f6fa;--success-color: #00b894;--shadow: 0 4px 20px rgba(0, 0, 0, .1);--transition: all .3s cubic-bezier(.25, .8, .25, 1);max-width:1200px;margin:0 auto;padding:2rem;color:var(--dark-color);background-color:var(--light-color);min-height:100vh;position:relative;overflow-x:hidden}.add-workout-page:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#6c5ce71a,#00cec91a);z-index:-1;animation:gradientShift 15s ease infinite;background-size:200% 200%}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.add-workout-page h1{font-size:2.5rem;color:var(--primary-color);margin-bottom:2rem;margin-top:3rem;text-align:center;position:relative;animation:fadeInDown .8s ease-out}.add-workout-page h1:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:100px;height:4px;background:var(--accent-color);border-radius:2px;animation:expandLine 1s ease-out .3s forwards;opacity:0}@keyframes expandLine{0%{width:0;opacity:0}to{width:100px;opacity:1}}.back-button{padding:.7rem 1.5rem;background-color:var(--secondary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:.5rem;margin-bottom:2rem}.back-button:hover{background-color:#00a8a3;transform:translateY(-2px);box-shadow:0 4px 10px #00cec94d}form{max-width:600px;margin:0 auto;background:#fff;border-radius:16px;padding:2.5rem;box-shadow:var(--shadow);animation:fadeInUp .6s ease-out;transition:var(--transition)}form:hover{box-shadow:0 8px 30px #00000026;transform:translateY(-2px)}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.form-group label{font-weight:600;font-size:1.1rem;color:var(--dark-color)}.form-group input{padding:.9rem 1.2rem;border:2px solid #dfe6e9;border-radius:10px;font-size:1rem;transition:var(--transition)}.form-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #6c5ce733;outline:none}button[type=submit]{padding:1rem 2rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:var(--transition);width:100%;margin-top:1rem}button[type=submit]:hover{background-color:#5649c0;transform:translateY(-2px);box-shadow:0 4px 15px #6c5ce74d}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.floating-dumbbell{position:fixed;opacity:.05;z-index:-1;animation:float 15s ease-in-out infinite;font-size:8rem}.floating-dumbbell:nth-child(1){top:10%;left:5%;animation-delay:0s}.floating-dumbbell:nth-child(2){top:60%;right:5%;animation-delay:2s;animation-duration:12s}.floating-dumbbell:nth-child(3){bottom:20%;left:20%;animation-delay:4s;animation-duration:18s}@keyframes float{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}to{transform:translateY(0) rotate(0)}}.success-message{position:fixed;top:20px;left:50%;transform:translate(-50%);background-color:var(--success-color);color:#fff;padding:1rem 2rem;border-radius:8px;box-shadow:var(--shadow);z-index:1000;animation:slideIn .5s ease-out,fadeOut .5s ease-out 2.5s forwards}@keyframes slideIn{0%{top:-100px;opacity:0}to{top:20px;opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@media (max-width: 768px){.add-workout-page{padding:1rem}.add-workout-page h1{font-size:2rem}form{padding:1.5rem}.form-group input{padding:.8rem}button[type=submit]{padding:.9rem}.floating-dumbbell{font-size:6rem}}@media (max-width: 480px){.add-workout-page h1{font-size:1.8rem}form{padding:1.2rem}.form-group label{font-size:1rem}.floating-dumbbell{font-size:5rem;opacity:.03}}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}:root{--primary: #4361ee;--primary-dark: #3a56d4;--primary-light: #4895ef;--secondary: #3f37c9;--accent: #f72585;--success: #4cc9f0;--text: #2b2d42;--text-light: #8d99ae;--bg: #f8f9fa;--card-bg: #ffffff;--border-radius: 16px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .15);--transition: all .25s cubic-bezier(.4, 0, .2, 1)}.gym-log-list-page{min-height:100vh;background-color:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;display:flex;flex-direction:column}.content-container{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:2rem 1.5rem}.gym-log-list-page h1{font-size:2rem;font-weight:700;margin-bottom:1.5rem;color:var(--text);text-align:center}.gym-log-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap}.action-button{padding:.875rem 1.75rem;font-size:1rem;font-weight:600;border-radius:2rem;border:none;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.action-button:not(.primary){background-color:#fff;color:var(--text);border:2px solid var(--text-light)}.action-button:not(.primary):hover{border-color:var(--primary);color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.action-button.primary{background-color:var(--primary);color:#fff;box-shadow:var(--shadow-md)}.action-button.primary:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 16px #4361ee66}.calendar-container{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);padding:2rem;margin:0 auto;max-width:800px}.workout-calendar{width:100%;border:none;background:transparent}.react-calendar__navigation{display:flex;margin-bottom:1.5rem;align-items:center}.react-calendar__navigation button{background:none;border:none;font-weight:600;font-size:1rem;min-width:44px;padding:.5rem;cursor:pointer;color:var(--text);transition:var(--transition);border-radius:8px}.react-calendar__navigation button:hover{background-color:#4361ee1a;color:var(--primary)}.react-calendar__navigation__label{flex-grow:1;text-align:center;pointer-events:none;font-size:1.1rem;font-weight:600}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font-size:.75rem;color:var(--text-light);margin-bottom:1rem;font-weight:600}.react-calendar__month-view__days__day{color:var(--text)}.react-calendar__tile{max-width:100%;padding:1rem .5rem;background:none;border:none;position:relative;cursor:pointer;border-radius:50%;aspect-ratio:1/1;transition:var(--transition);font-weight:500}.react-calendar__tile:enabled:hover{background:#4361ee1a}.react-calendar__tile--now{background:#4361ee33;font-weight:600}.react-calendar__tile--active{background:var(--primary);color:#fff;font-weight:600}.react-calendar__tile--active:enabled:hover{background:var(--primary-dark)}.workout-indicator{position:absolute;bottom:6px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center}.workout-dot{width:6px;height:6px;border-radius:50%;background-color:var(--primary)}.has-workout .workout-dot{background-color:var(--primary)}.react-calendar__tile--active .workout-dot{background-color:#fff}.workout-count-badge{font-size:.6rem;margin-left:2px;color:var(--primary);font-weight:700}.react-calendar__tile--active .workout-count-badge{color:#fff}.date-actions-panel{margin-top:2rem;padding:1.5rem;background:var(--bg);border-radius:var(--border-radius);text-align:center;animation:fadeIn .3s ease-out}.view-workouts-panel,.add-workout-panel{display:flex;flex-direction:column;align-items:center;gap:1rem}.view-workouts-panel p,.add-workout-panel p{font-size:1.1rem;color:var(--text);margin-bottom:.5rem}.empty-state{text-align:center;margin-top:2rem;padding:2rem;background:var(--bg);border-radius:var(--border-radius);border:1px dashed var(--text-light);animation:fadeIn .5s ease-out}.empty-state p{margin-bottom:1.5rem;color:var(--text-light);font-size:1.1rem}.loading-spinner,.error-message{text-align:center;padding:3rem;font-size:1.1rem;animation:fadeIn .3s ease-out}.loading-spinner{display:inline-flex;align-items:center;gap:.75rem}.error-message{color:var(--accent)}@media (max-width: 768px){.content-container{padding:1.5rem 1rem}.calendar-container{padding:1.5rem}.react-calendar__tile{padding:.75rem .25rem}.gym-log-actions{flex-direction:column;align-items:center}.action-button{width:100%;max-width:300px;justify-content:center}.date-actions-panel{padding:1.25rem}}@media (max-width: 480px){.react-calendar__tile{padding:.5rem .1rem;font-size:.9rem}.react-calendar__navigation button{min-width:36px;padding:.25rem}.gym-log-list-page h1{font-size:1.75rem}}.workout-log-details-page{--primary-color: #4361ee;--secondary-color: #3f37c9;--accent-color: #4cc9f0;--light-color: #f8f9fa;--dark-color: #212529;--success-color: #4caf50;--warning-color: #ff9800;--danger-color: #f44336;--border-radius: 12px;--box-shadow: 0 4px 20px rgba(0, 0, 0, .08);--transition: all .3s cubic-bezier(.25, .8, .25, 1);min-height:100vh;background-color:#f5f7fa;color:var(--dark-color);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.content-container{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.header-section{display:flex;align-items:center;margin-bottom:2rem;position:relative;margin-top:3rem}.header-section h1{flex:1;text-align:center;font-size:1.8rem;font-weight:600;color:var(--primary-color);margin:0;text-shadow:0 2px 4px rgba(0,0,0,.05)}.back-button{background:var(--light-color);color:var(--primary-color);border:none;border-radius:var(--border-radius);padding:.6rem 1.2rem;font-size:1rem;font-weight:500;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:.5rem;box-shadow:var(--box-shadow)}.back-button:hover{background:var(--primary-color);color:#fff;transform:translate(-4px)}.workout-details-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:1.5rem}.empty-state{grid-column:1 / -1;text-align:center;padding:3rem;background:#fff;border-radius:var(--border-radius);box-shadow:var(--box-shadow);animation:bounceIn .6s}@keyframes bounceIn{0%{transform:scale(.9);opacity:0}50%{transform:scale(1.03)}to{transform:scale(1);opacity:1}}.empty-state p{font-size:1.2rem;color:#666;margin-bottom:1.5rem}.empty-state .primary{background:var(--primary-color);color:#fff;border:none;padding:.8rem 1.8rem;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:0 4px 15px #4361ee4d}.empty-state .primary:hover{background:var(--secondary-color);transform:translateY(-2px);box-shadow:0 6px 20px #4361ee66}.workout-log-card{background:#fff;border-radius:var(--border-radius);box-shadow:var(--box-shadow);overflow:hidden;transition:var(--transition);animation:slideUp .5s ease-out;will-change:transform}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.workout-log-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000001f}.workout-header{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:1.2rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.workout-header h2{margin:0;font-size:1.3rem;font-weight:600}.workout-time{background:#fff3;padding:.3rem .8rem;border-radius:50px;font-size:.85rem;font-weight:500}.workout-body{padding:1.5rem}.sets-container h3{margin-top:0;margin-bottom:1rem;color:var(--primary-color);font-size:1.1rem;display:flex;align-items:center}.sets-container h3:after{content:"";flex:1;height:1px;background:#eee;margin-left:1rem}.sets-container ul{list-style:none;padding:0;margin:0}.set-item{padding:1rem 0;border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;transition:var(--transition)}.set-item:hover{background:#4cc9f00d}.set-number{background:var(--light-color);color:var(--primary-color);padding:.3rem .8rem;border-radius:50px;font-weight:600;font-size:.85rem;min-width:70px;text-align:center}.set-details{flex:1;display:flex;gap:1rem;font-weight:500}.set-details span{display:flex;align-items:center}.set-details span:before{content:"•";margin-right:.5rem;color:var(--accent-color)}.set-notes{display:flex;gap:.5rem;margin-left:auto}.failure,.support{font-size:.75rem;padding:.25rem .6rem;border-radius:50px;font-weight:600}.failure{background:#f443361a;color:var(--danger-color)}.support{background:#ff98001a;color:var(--warning-color)}.workout-notes{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #eee}.workout-notes h3{margin-top:0;color:var(--primary-color);font-size:1.1rem}.workout-notes p{background:#4cc9f00d;padding:1rem;border-radius:8px;margin-bottom:0;line-height:1.7}.loading-spinner,.error-message{text-align:center;padding:3rem;background:#fff;border-radius:var(--border-radius);box-shadow:var(--box-shadow);margin:2rem auto;max-width:600px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.loading-spinner:after{content:"";width:40px;height:40px;border:4px solid rgba(67,97,238,.2);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{color:var(--danger-color);font-weight:500;font-size:1.1rem}@media (max-width: 768px){.content-container{padding:1.5rem 1rem}.header-section{flex-direction:column;gap:1rem;margin-bottom:1.5rem}.header-section h1{font-size:1.5rem}.workout-details-container{grid-template-columns:1fr}.back-button{align-self:flex-start}}@media (max-width: 480px){.set-item{flex-direction:column;align-items:flex-start;gap:.8rem}.set-details{width:100%;justify-content:space-between}.set-notes{margin-left:0;width:100%;justify-content:flex-end}}.workout-log-details-page{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.content-container{flex:1;overflow-y:auto;padding-bottom:2rem}.workout-details-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:1.5rem;min-height:0}.workout-log-card{height:100%;display:flex;flex-direction:column}.workout-body{flex:1;overflow-y:auto;max-height:400px;padding-right:.5rem}.workout-body::-webkit-scrollbar{width:6px}.workout-body::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.workout-body::-webkit-scrollbar-thumb{background:#4361ee4d;border-radius:3px}.workout-body::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}@font-face{font-family:Nunito;src:url(/assets/Nunito-Regular-BzIFT1ox.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Nunito;src:url(/assets/Nunito-SemiBold-BDYPXFJ_.ttf) format("truetype");font-weight:600;font-style:normal}@font-face{font-family:Nunito;src:url(/assets/Nunito-Bold-CZ01jYvx.ttf) format("truetype");font-weight:700;font-style:normal}*{margin:0;padding:0;box-sizing:border-box}body,html{font-family:Nunito,sans-serif;margin:0;padding:0;overflow-x:hidden;overflow-y:hidden;width:100%;height:100%;line-height:1.5}#root{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}h1,h2,h3{font-family:Nunito,sans-serif;font-weight:700;font-size:2rem;margin-bottom:1rem}p{font-family:Nunito,sans-serif;font-weight:400;font-size:1rem;color:#555;margin-bottom:1rem}.button{font-family:Nunito,sans-serif;font-weight:600;font-size:1rem}
