.login{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-weight:700;cursor:pointer;transition:.2s}.login:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.home{text-align:center;margin-top:2rem;color:var(--text)}.home-title{font-size:2.2rem;font-weight:700;margin-bottom:.5rem}.home-subtitle{color:var(--subtext);font-size:1.05rem;margin-bottom:2.5rem;max-width:600px;margin-left:auto;margin-right:auto}.home-links{display:grid;grid-template-columns:1fr;gap:1rem;max-width:700px;margin:0 auto;text-align:left}@media (min-width: 640px){.home-links{grid-template-columns:repeat(3,1fr)}}.home-link{display:flex;flex-direction:column;padding:1.25rem 1rem;background:var(--card);border:1px solid rgba(255,255,255,.05);text-decoration:none;color:var(--text);transition:background .2s ease,transform .15s ease}.home-link:hover{background:var(--muted);transform:translateY(-2px)}.home-link-title{font-size:1.2rem;font-weight:600;margin-bottom:.25rem;display:block}.home-link-text{font-size:.9rem;color:var(--subtext)}.home-auth{margin:3rem auto;max-width:500px}.home-auth-content{background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:0;padding:2rem;text-align:center}.home-auth-content h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text)}.home-auth-content p{color:var(--subtext);margin-bottom:1.5rem}.home-features{margin-top:3rem;max-width:1000px;margin-left:auto;margin-right:auto}.home-features h2{font-size:1.8rem;margin-bottom:2rem;color:var(--text)}.home-features-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;text-align:left}@media (min-width: 640px){.home-features-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 968px){.home-features-grid{grid-template-columns:repeat(3,1fr)}}.home-feature{background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:0;padding:1.5rem;transition:transform .15s ease,background .2s ease}.home-feature:hover{background:var(--muted);transform:translateY(-2px)}.home-feature h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--text)}.home-feature p{font-size:.9rem;color:var(--subtext);line-height:1.4}.add-session-form{display:flex;flex-direction:column;gap:1rem;padding:1.25rem 1rem;background:var(--bg-panel);color:var(--text-light);width:100%;margin:0}.add-session-form .form-title{font-size:1.25rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;color:var(--text-light);border-bottom:2px solid var(--text-light);padding-bottom:.25rem}.add-session-form .form-group{display:flex;flex-direction:column;gap:.35rem;width:100%}.add-session-form label{font-size:.85rem;font-weight:600;color:var(--text-muted)}.add-session-form input,.add-session-form textarea{background:#1c1c1c;color:#f9f9f9;border:1px solid #333;padding:.65rem .75rem;font-size:.95rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.add-session-form input:focus,.add-session-form textarea:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #3b82f64d}.add-session-form textarea{resize:vertical;min-height:70px}.add-session-form .error-text{color:var(--accent-red);font-size:.85rem;font-weight:500}.add-session-form .submit-btn{background:transparent;padding:.65rem 1.25rem;border:1px solid var(--text-light);font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s ease,transform .1s ease}.add-session-form .submit-btn:hover:not(:disabled){background:var(--bg-hover);transform:translateY(-1px)}.add-session-form .submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (min-width: 640px){.add-session-form{padding:1.5rem 1.25rem;gap:1.25rem}.add-session-form .form-title{font-size:1.35rem}.add-session-form input,.add-session-form textarea{font-size:1rem}}.sessions-container{display:flex;flex-direction:column;gap:1.5rem;background:var(--muted);color:var(--text);min-height:100vh}.no-sessions{color:var(--subtext);font-size:.95rem;text-align:center;margin-top:1rem}.session-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.session-item{background:var(--card);padding:1rem;transition:background .2s ease}.session-row{display:flex;flex-direction:column;gap:.5rem}@media (min-width: 640px){.session-row{flex-direction:row;justify-content:space-between;align-items:center}}.session-title{font-weight:600;font-size:1rem;margin-bottom:.25rem}.session-notes{font-size:.9rem;color:var(--subtext)}.session-actions,.edit-actions{display:flex;gap:.5rem;flex-wrap:wrap}.form-group{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.form-group label{font-size:.85rem;font-weight:500;color:var(--text)}.form-group input,.form-group textarea{padding:.5rem;border:1px solid rgba(255,255,255,.05);font-size:.9rem;background:var(--muted);color:var(--text)}textarea{resize:vertical;min-height:60px}.btn.view{background:transparent;border:1px solid var(--text);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.btn.view:hover{background:var(--muted)}.btn.edit{background:transparent;border:1px solid var(--text);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.btn.edit:hover{background:var(--muted)}.btn.delete{background:transparent;border:1px solid var(--text);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.btn.delete:hover{background:var(--muted)}.btn.save{background:transparent;border:1px solid var(--text)}.btn.save:hover{background:var(--muted)}.btn.cancel{background:#6b7280;color:#fff}.btn.cancel:hover{background:#4b5563}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-top:4px solid var(--accent);animation:spin 1s linear infinite;margin-bottom:1rem}.exercise-list{display:flex;flex-direction:column;gap:1rem}.exercise{background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);border-radius:0;padding:12px;margin-bottom:12px;border:1px solid rgba(255,255,255,.05)}.exercise-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;flex-wrap:wrap;gap:6px}.exercise-title-section{display:flex;align-items:center;gap:8px}.collapse-btn{background:transparent;border:none;color:var(--subtext);font-size:14px;cursor:pointer;padding:4px;border-radius:0;transition:color .2s ease;display:flex;align-items:center;justify-content:center;width:20px;height:20px}.collapse-btn:hover{color:var(--text)}.exercise h3{font-size:16px;margin:0}.meta{font-size:13px;color:var(--subtext);margin-bottom:6px}.exercise-actions{display:flex;gap:6px}.edit-btn{background:var(--accent);border:none;color:#fff;padding:8px 12px;border-radius:0;font-size:14px;cursor:pointer;transition:.2s}.edit-btn:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2))}.delete-btn{background:red;border:none;color:#fff;padding:8px 12px;border-radius:0;font-size:14px;cursor:pointer;transition:.2s}.delete-btn:hover{background:#ff4500}button.small{padding:6px 10px;font-size:13px}.sets{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px}.sets th,.sets td{padding:6px 8px;text-align:left;border-bottom:1px dashed rgba(255,255,255,.05)}.sets th:last-child{text-align:right}.sets th{color:var(--subtext);text-transform:uppercase;font-size:12px;letter-spacing:.05em}.notes-container{position:relative}.notes-text{color:var(--subtext);font-style:italic;cursor:pointer;display:block;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notes-dropdown{position:absolute;top:100%;left:0;z-index:1000;background:var(--card);border:1px solid rgba(255,255,255,.1);border-radius:0;box-shadow:0 4px 12px #0000004d;padding:12px;min-width:200px;max-width:300px;margin-top:4px}.notes-close{position:absolute;top:4px;right:4px;background:transparent;border:none;color:var(--subtext);font-size:16px;cursor:pointer;padding:2px 6px;border-radius:0;transition:background .2s}.notes-close:hover{background:#ffffff1a;color:var(--text)}.notes-content{color:var(--text);font-style:italic;line-height:1.4;word-wrap:break-word;white-space:pre-wrap}@media (max-width: 720px){.notes-text{max-width:80px}.notes-dropdown{min-width:150px;max-width:200px}}.sets tbody tr{background:linear-gradient(90deg,#ff2d0012,#ff660008);border-radius:0}.edit-set-form-inline{display:flex;gap:6px;align-items:center}.sets td:last-child{display:flex;gap:6px;justify-content:flex-end}@media (min-width: 721px){.sets td:last-child{display:flex!important;gap:6px!important;justify-content:flex-end!important}}.set-edit-input{background:var(--muted);border:1px solid rgba(255,255,255,.05);color:var(--text);padding:4px 6px;font-size:12px;border-radius:0;width:80px;font-family:var(--mono);font-weight:700;box-sizing:border-box}.set-edit-input.weight{color:var(--accent)}.set-edit-input.reps{color:var(--accent-2)}.duration{font-weight:700;color:var(--accent-2)}.duration-edit-inputs{display:flex;gap:4px;align-items:center}.set-edit-input.small{width:50px;font-size:11px;padding:3px 4px;box-sizing:border-box}.no-exercises{font-style:italic;color:var(--subtext)}@media (max-width: 720px){.sets{font-size:14px;border-collapse:separate;border-spacing:0}.sets thead{display:none}.sets tbody tr{display:flex;flex-direction:column;gap:6px;padding:8px;margin-bottom:8px;background:linear-gradient(90deg,#ff2d0012,#ff660008);border-radius:0;border:1px solid rgba(255,255,255,.05)}.sets td{display:flex;justify-content:space-between;align-items:center;padding:0;border-bottom:none;width:100%}.sets td:first-child:before{content:"Set";font-weight:700;color:var(--subtext);margin-right:12px}.sets td.weight:before{content:"Weight";font-weight:700;color:var(--subtext);margin-right:12px}.sets td.reps:before{content:"Reps";font-weight:700;color:var(--subtext);margin-right:12px}.sets td.duration:before{content:"Duration";font-weight:700;color:var(--subtext);margin-right:12px}.sets td:nth-last-child(2):before{content:"Notes";font-weight:700;color:var(--subtext);margin-right:12px}.sets td:last-child{justify-content:center;gap:8px;padding:8px 0 0;border-top:1px dashed rgba(255,255,255,.1);display:grid;grid-template-columns:1fr 1fr;width:100%}.set-edit-input{width:120px;font-size:14px;padding:6px 8px}.set-edit-input.small{width:70px;font-size:14px;padding:6px 8px}.duration-edit-inputs{gap:6px;flex:1;justify-content:flex-end}.notes-text{max-width:150px}.sets td:nth-last-child(2) input{width:100%!important;max-width:none;flex:1}}.sets td:nth-last-child(2) input{width:100%!important;max-width:none;flex:1}.exercise-list-header{display:flex;justify-content:flex-end;gap:.5rem;padding:0rem 1rem .5rem 0rem}.exercise-list-header button{background:transparent;border:1px solid var(--text);color:var(--text);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.exercise-list-header button:hover{background:var(--muted)}.add-set-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;font-size:.95rem}.set-row .input{background:var(--muted);border:1px solid rgba(255,255,255,.05);color:var(--text);padding:.5rem .75rem;font-size:.95rem;border-radius:0}.set-row .input::placeholder{color:var(--subtext)}.set-row .textarea{background:var(--muted);border:1px solid rgba(255,255,255,.05);padding:.5rem .75rem;font-size:.95rem;color:var(--text);transition:border .2s,box-shadow .2s;min-height:70px;resize:vertical;border-radius:0}.set-row .textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff2d0040}.set-row .textarea::placeholder{color:var(--subtext)}.form-buttons{display:flex;gap:.5rem}.btn.cancel{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-weight:700;cursor:pointer;transition:.2s}.btn.cancel:hover{background:#666;color:#fff}.edit-set-row{display:flex;flex-direction:column;gap:.75rem;border-left:3px solid var(--accent)}.edit-set-row input{background:var(--muted);border:1px solid rgba(255,255,255,.05);padding:.5rem .75rem;font-size:.95rem;color:var(--text);transition:border .2s,box-shadow .2s;border-radius:0}.edit-set-row button{background:var(--accent);border:none;color:#fff;padding:6px 10px;border-radius:0;font-size:13px;cursor:pointer;transition:.2s}.edit-set-row button:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2))}.edit-set-row input::placeholder{color:var(--subtext)}.edit-exercise-form{display:flex;flex-direction:column;gap:.75rem}.edit-sets,.exercise-edit-buttons{display:flex;flex-direction:column;gap:.5rem}.exercise-type-select{padding:.5rem .75rem}.edit-exercise-form{background:var(--card);color:var(--text);border:1px solid rgba(255,255,255,.05);border-radius:0}.edit-exercise-form label{display:flex;flex-direction:column}.edit-exercise-form input,.edit-exercise-form select,.edit-exercise-form textarea{padding:.5rem .75rem;font-size:.95rem;border:1px solid rgba(255,255,255,.05);background:var(--muted);color:var(--text);border-radius:0}.edit-sets{display:flex;flex-direction:column;gap:.5rem;padding-left:.75rem}.exercise-edit-buttons{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.exercise-edit-buttons button{padding:8px 12px;background:var(--muted);border:none;color:var(--text);border-radius:0;font-weight:700;cursor:pointer;transition:.2s}.exercise-edit-buttons button:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.edit-exercise-form.active-editing{background:var(--card)}.session-detail{display:flex;flex-direction:column;gap:1rem}.session-card{background:var(--card);padding:18px;border-radius:0;border:1px solid rgba(255,255,255,.05)}.session-card h2{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text)}.session-notes{margin-top:8px;font-style:italic;color:var(--subtext)}.timestamps{margin-top:6px;font-size:.8rem;color:var(--subtext)}.loading{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic}.bulk-mode-buttons{display:flex;gap:12px;flex-wrap:wrap;padding:0rem 1rem}.bulk-mode-buttons .btn{padding:8px 12px;border:none;border-radius:0;font-weight:700;cursor:pointer;background:var(--muted);color:var(--text)}.bulk-mode-buttons .btn.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.bulk-mode-buttons .btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.timer{background:var(--card);padding:12px;border-radius:0;text-align:center;margin-top:20px;font-weight:700;font-size:16px;border:1px solid rgba(255,255,255,.05)}.timer-mode{display:flex;gap:.5rem}.timer-mode button{flex:1;padding:8px 12px;background:var(--muted);border:none;color:var(--text);cursor:pointer;font-size:.85rem;border-radius:0;font-weight:700;transition:.2s}.timer-mode button.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.time{font-size:1.3rem;font-weight:700;text-align:center;letter-spacing:.5px;color:var(--text)}.controls{display:flex;justify-content:center;gap:.5rem}.set-time{display:flex;justify-content:center;gap:1rem;font-size:.85rem;color:var(--subtext)}.set-time label{display:flex;align-items:center;gap:.25rem}.set-time input{width:60px;padding:.25rem;border:1px solid rgba(255,255,255,.05);background:var(--muted);color:var(--text);text-align:right;border-radius:0}.bulk-exercise-form{display:flex;flex-direction:column;gap:1rem;border-left:3px solid var(--accent)}.bulk-exercise-form.quick-log-mode{border-left:3px solid var(--accent-orange)}.bulk-exercise-form.add-exercise-mode{border-left:3px solid var(--accent-teal)}.add-exercises-section{padding:1rem;display:flex;flex-direction:column;gap:1rem;background:var(--card)}.btn.add-exercise{background:#14b8a61a;border:1px solid rgba(20,184,166,.2);color:var(--accent-teal);padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.add-exercise:hover{background:#14b8a633}.btn.quick-log-submit{background:#f973161a;border:1px solid rgba(249,115,22,.2);color:var(--accent-orange);padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.quick-log-submit:hover{background:#f9731633}.btn.save-submit{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);color:var(--accent);padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.save-submit:hover{background:#3b82f633}.set-row{display:flex;flex-direction:column;gap:1rem;border-left:2px solid var(--accent)}.duration-inputs{display:flex;gap:.4rem}.btn.remove-set{background:red;border:none;color:#fff;padding:6px 10px;border-radius:0;font-size:13px;cursor:pointer;transition:.2s}.btn.remove-set:hover{background:#ff4500}.btn.add-set{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-weight:700;cursor:pointer;transition:.2s}.bulk-exercise-card{background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);border:1px solid rgba(255,255,255,.05);border-radius:0;padding:12px;margin-bottom:12px;overflow:hidden}.exercise-hierarchy{padding:1rem;display:flex;flex-direction:column;gap:1rem}.exercise-type-indicator{display:flex;justify-content:flex-start;margin-bottom:.5rem}.exercise-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.exercise-badge.dictionary{background:#ff2d001a;color:var(--accent);border:1px solid rgba(255,45,0,.2)}.exercise-badge.custom{background:#ff66001a;color:var(--accent-2);border:1px solid rgba(255,102,0,.2)}.exercise-badge.add-custom{background:var(--glass);color:var(--text);border:1px solid rgba(255,255,255,.05)}.field{display:flex;flex-direction:column;gap:.5rem}.field-label{font-size:.95rem;font-weight:500;color:var(--subtext)}.type-radio-group{display:flex;gap:1.25rem;flex-wrap:wrap}.radio-option{display:flex;align-items:center;gap:.35rem;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.95rem;color:var(--text);transition:color .2s}.radio-option input[type=radio]{accent-color:var(--accent);width:1rem;height:1rem;cursor:pointer}.radio-option:hover span{color:var(--accent)}.textarea{background:var(--muted);border:1px solid rgba(255,255,255,.05);padding:.5rem .75rem;font-size:.95rem;color:var(--text);transition:border .2s,box-shadow .2s;min-height:70px;resize:vertical;border-radius:0}.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff2d0040}.sets-section{display:flex;flex-direction:column;gap:1rem}.btn.save{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-weight:700;cursor:pointer}.btn.save:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.btn.remove{background:red;border:none;color:#fff;padding:8px 12px;border-radius:0;font-size:14px;cursor:pointer}.btn.remove:hover{background:#ff4500}.btn.add-set{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-weight:700;cursor:pointer}.btn.add-set:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.exercise-selector{display:flex;flex-direction:column;gap:.75rem}.mode-toggle{display:flex;flex-wrap:wrap;gap:1.25rem;font-size:1rem;font-weight:500;color:var(--text)}.mode-toggle label{display:flex;align-items:center;gap:.25rem;cursor:pointer;-webkit-user-select:none;user-select:none}.mode-toggle input[type=radio]{accent-color:var(--accent);cursor:pointer}.input{background:var(--muted);border:1px solid rgba(255,255,255,.05);padding:.6rem;font-size:1rem;color:var(--text);transition:border .2s,box-shadow .2s,background .2s;width:100%;border-radius:0}.input:hover{border-color:var(--accent)}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff2d0040}.btn{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border:none;cursor:pointer;transition:background .2s ease}.btn:hover{background:linear-gradient(135deg,var(--accent-2),var(--accent))}.add-new-custom-exercise-btn{color:var(--success);background:#22c55e1a;border:1px solid rgba(34,197,94,.2);padding:.6rem;font-size:1rem}.add-new-custom-exercise-btn:hover{background:#22c55e33}.custom-selector,.custom-select-row,.custom-add-row{display:flex;flex-direction:column;gap:.5rem}.add-actions{display:flex;justify-content:flex-end}.back-btn{background:var(--muted);color:var(--text)}.back-btn:hover{background:var(--bg-hover)}.quick-log-input-wrapper{display:flex;flex-direction:column;gap:1rem;padding:18px;background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:0}.quick-log-instructions{background:var(--muted);padding:.75rem 1rem;border:1px solid rgba(255,255,255,.05);border-radius:0;font-size:.95rem;color:var(--text)}.quick-log-instructions pre{background:var(--muted);padding:.5rem;font-size:.9rem;overflow-x:auto}.quick-log-instructions code{background:#ff2d001a;padding:.1rem .25rem;font-size:.9rem}.quick-log-input-wrapper textarea{width:100%;min-height:100px;padding:.75rem;font-size:1rem;border:1px solid rgba(255,255,255,.05);background:var(--muted);color:var(--text);resize:vertical;transition:border .2s,background .2s}.quick-log-input-wrapper textarea:focus{outline:none;border-color:var(--accent);background:var(--card)}.quick-log-input-wrapper .error{color:#f66;font-size:.875rem;font-weight:500}.quick-log-input-wrapper .btn.parse{background:#f973161a;border:1px solid rgba(249,115,22,.2);color:var(--accent-orange);padding:.6rem;font-size:1rem;transition:background .2s,color .2s;align-self:flex-start}.quick-log-input-wrapper .btn.parse:hover{background:#f9731633}.quick-log-auto-processed{margin-top:1rem}.quick-log-auto-processed .auto-processed-content{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid rgba(34,197,94,.2);background:#22c55e0d}.quick-log-auto-processed h3{margin:0;font-size:1.1rem;font-weight:600;color:#22c55e}.auto-processed-list{display:flex;flex-direction:column;gap:.5rem;padding:0;margin:0;list-style:none}.auto-processed-item{display:flex;flex-direction:column;gap:.5rem;padding:.5rem .75rem;background:#22c55e1a;border-left:3px solid #22c55e}.auto-processed-main{display:flex;align-items:center;gap:.75rem;justify-content:space-between}.auto-processed-info{display:flex;align-items:center;gap:.75rem;flex:1}.clickable-exercise{cursor:pointer;color:var(--accent);text-decoration:underline;text-decoration-style:dotted}.clickable-exercise:hover{color:var(--accent-2)}.clickable-item{cursor:pointer;transition:background-color .2s}.clickable-item:hover{background-color:#3b82f60d}.toggle-suggestions-btn{background:transparent;border:none;color:var(--subtext);cursor:pointer;padding:.25rem;font-size:.8rem;transition:color .2s}.toggle-suggestions-btn:hover{color:var(--accent)}.auto-processed-suggestions{margin-top:.5rem;padding-left:1rem;border-left:2px solid rgba(255,255,255,.05)}.suggestion-btn.keep-current{background:#a855f726;border-color:#a855f74d;color:#9333ea}.suggestion-btn.keep-current:hover{background:#a855f740}.auto-processed-item.dictionary-match{background:#ff2d001a;border-left-color:var(--accent)}.auto-processed-item.custom-match{background:#22c55e1a;border-left-color:#22c55e}.auto-processed-item.add-custom-match{background:#a855f71a;border-left-color:#a855f7}.source-badge{font-size:.85rem;padding:.2rem .5rem;background:#22c55e33;color:#16a34a;font-weight:500}.source-badge.dictionary-badge{background:#ff2d0033;color:var(--accent)}.source-badge.custom-badge{background:#22c55e33;color:#16a34a}.source-badge.add-custom-badge{background:#a855f733;color:#9333ea}.auto-processed-note{display:flex;flex-direction:column;font-size:.85rem;color:var(--subtext);margin:.5rem 0 0;font-style:italic;gap:.25rem}.exercise-details{font-size:.9rem;color:var(--subtext);margin-left:auto}.quick-log-suggestions{margin-top:1rem}.quick-log-suggestions .suggestions-content{display:flex;flex-direction:column;gap:1rem}.quick-log-suggestions h3{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.suggestion-item{display:flex;flex-direction:column;gap:1rem;border:1px solid rgba(255,255,255,.05);background:var(--card)}.suggestion-section{display:flex;flex-direction:column;gap:.5rem}.suggestion-section-title{margin:0;font-size:.9rem;font-weight:600;color:var(--text);padding:.25rem 0}.suggestion-btn.exact-match{background:#22c55e26;border-color:#22c55e4d;color:#16a34a;font-weight:500}.suggestion-btn.exact-match:hover{background:#22c55e40}.suggestion-btn.partial-match{background:#ff2d0026;border-color:#ff2d004d;color:var(--accent)}.suggestion-btn.partial-match:hover{background:#ff2d0040}.suggestion-list{display:flex;flex-direction:column;gap:.5rem;padding:0;margin:0;list-style:none}.suggestion-list-item{width:100%}.suggestion-btn,.btn.small.secondary{width:100%;text-align:left;padding:.6rem .8rem;border:1px solid rgba(255,255,255,.05);background:var(--muted);color:var(--accent);font-size:1rem;transition:background .2s,color .2s}.suggestion-btn:hover,.btn.small.secondary:hover{background:var(--muted)}.goal-card{background:var(--card);border-radius:0;padding:18px;border:1px solid rgba(255,255,255,.05);transition:.2s;margin-bottom:24px}.goal-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.goal-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.goal-card-title{display:flex;align-items:center;gap:.5rem}.goal-card-title h3{font-size:1.125rem;font-weight:600;color:var(--text)}.goal-status{font-size:.875rem;font-weight:500}.goal-status.active{color:var(--success)}.goal-status.completed{color:var(--accent)}.goal-status.paused{color:var(--accent-yellow, #d97706)}.goal-progress{margin-bottom:1rem}.progress-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.progress-label{font-size:.875rem;font-weight:500;color:var(--subtext)}.progress-status{font-size:.875rem;font-weight:500}.progress-status.on-track{color:var(--success)}.progress-status.behind{color:var(--accent-yellow, #d97706)}.progress-bar-container{width:100%;background-color:var(--muted);border-radius:0;height:.5rem;margin-bottom:.5rem}.progress-bar{background-color:var(--accent);height:.5rem;border-radius:0;transition:width .3s}.progress-percentage{font-size:.75rem;color:var(--subtext);text-align:center}.goal-details{margin-bottom:1rem}.goal-detail-row{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:.5rem}.goal-detail-label{color:var(--subtext)}.goal-detail-value{font-weight:500;color:var(--text)}.goal-actions{display:flex;flex-wrap:wrap;gap:.5rem}.goal-btn{padding:.25rem .75rem;font-size:.875rem;border-radius:0;border:none;cursor:pointer;transition:background-color .2s}.goal-btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.goal-btn.primary:hover{background:linear-gradient(135deg,var(--accent-2),var(--accent))}.goal-btn.secondary{background:var(--muted);color:var(--text);border:1px solid rgba(255,255,255,.05)}.goal-btn.secondary:hover{background:var(--muted)}.goal-btn.warning{background-color:var(--accent-yellow, #d97706);color:#fff}.goal-btn.warning:hover{background-color:#b45309}.goal-btn.success{background-color:var(--success);color:#fff}.goal-btn.success:hover{background-color:#047857}.goal-btn.danger{background-color:#dc2626;color:#fff}.goal-btn.danger:hover{background-color:#b91c1c}@media (max-width: 768px){.goal-actions{flex-direction:column}.goal-btn{width:100%}}.goal-form-page{max-width:28rem;margin:0 auto;padding:0}.goal-form-header{padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05);margin-bottom:1rem}.goal-form-header h2{font-size:1.25rem;font-weight:700;color:var(--text);margin:0;padding:0}.goal-form-body{padding:0}.goal-form-error{margin-bottom:1rem;padding:.75rem;background-color:#ff00001a;border:1px solid rgba(255,0,0,.2);border-radius:0;color:#f66}.form-group{margin-bottom:.75rem}.form-label{display:block;font-size:.875rem;font-weight:500;color:var(--subtext);margin-bottom:.25rem}.form-input,.form-select{width:100%;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.05);border-radius:0;font-size:.95rem;background-color:var(--muted);color:var(--text);transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #ff2d001a}.form-input:disabled,.form-select:disabled{background-color:var(--muted);color:var(--subtext);cursor:not-allowed}.form-btn{flex:1;padding:.5rem .75rem;border-radius:0;border:1px solid rgba(255,255,255,.05);font-weight:500;cursor:pointer;transition:background-color .2s;background:var(--muted);color:var(--text)}.form-btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border-color:var(--accent)}.form-btn.primary:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-2),var(--accent))}.form-btn.primary:disabled{background:var(--muted);color:var(--subtext);cursor:not-allowed}.form-btn.secondary{background:var(--muted);color:var(--text);border-color:#ffffff0d}.form-btn.secondary:hover{background:var(--muted)}.exercise-loading{width:100%;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.05);border-radius:0;background-color:var(--muted);color:var(--subtext);font-size:.9rem}.progress-chart{background:var(--card);border-radius:0;padding:18px;border:1px solid rgba(255,255,255,.05)}.progress-chart h3{font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:1.5rem;text-align:center}.progress-circle-container{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem}.progress-circle{position:relative}.progress-percentage-display{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-percentage-display .percentage{font-size:1.5rem;font-weight:700;color:var(--text)}.progress-percentage-display .label{font-size:.75rem;color:var(--subtext)}.progress-stats{display:flex;flex-direction:column;gap:1rem}.progress-stat-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--muted);border-radius:0}.progress-stat-label{font-size:.875rem;font-weight:500;color:var(--subtext)}.progress-stat-value{font-size:.875rem;font-weight:500}.progress-stat-value.on-track{color:var(--success)}.progress-stat-value.behind{color:var(--accent-yellow, #d97706)}.progress-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.progress-card{padding:.75rem;border-radius:0}.progress-card.current{background-color:#ff2d000d}.progress-card.current .card-label{color:var(--accent)}.progress-card.current .card-value{color:var(--accent-2)}.progress-card.target{background-color:#22c55e0d}.progress-card.target .card-label,.progress-card.target .card-value{color:var(--success)}.progress-card.time{background-color:#d977060d;grid-column:1 / -1}.progress-card.time .card-label{color:var(--accent-yellow, #d97706)}.progress-card.time .card-value{color:var(--accent-yellow-hover, #92400e)}.card-label{font-size:.75rem;font-weight:500;margin-bottom:.25rem}.card-value{font-size:.875rem;font-weight:600}.success-message{padding:.75rem;background-color:#0596691a;border:1px solid rgba(5,150,105,.2);border-radius:0;display:flex;align-items:center;gap:.5rem}.success-message .message{font-size:.875rem;font-weight:500;color:var(--success)}.progress-breakdown{margin-top:1rem;padding:1rem;background-color:var(--muted);border-radius:0;border:1px solid rgba(255,255,255,.05)}.progress-breakdown h4{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:1rem;text-align:center}.breakdown-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.breakdown-card{padding:1rem;background-color:var(--card);border-radius:0;border:1px solid rgba(255,255,255,.05);text-align:center;transition:transform .2s ease,box-shadow .2s ease}.breakdown-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.breakdown-label{font-size:.875rem;font-weight:500;color:var(--subtext);margin-bottom:.5rem}.breakdown-value{font-size:1.5rem;font-weight:700;color:var(--text);margin-bottom:.25rem}.breakdown-weight{font-size:.75rem;color:var(--subtext);background-color:var(--muted);padding:.25rem .5rem;border-radius:0;display:inline-block}.goal-type-indicator{text-align:center;padding:.5rem 1rem;border-radius:0;font-size:.875rem;font-weight:500}.goal-type.weight-only{background-color:#ff2d001a;color:var(--accent);border:1px solid rgba(255,45,0,.2)}.goal-type.rep-only{background-color:#22c55e1a;color:var(--success);border:1px solid rgba(34,197,94,.2)}.goal-type.combined{background-color:#d977061a;color:var(--accent-yellow, #d97706);border:1px solid rgba(217,119,6,.2)}.grace-period-notice{padding:.75rem;background-color:#ff2d000d;border:1px solid rgba(255,45,0,.1);border-radius:0;text-align:center}.grace-period-notice span{font-size:.875rem;color:var(--accent);font-weight:500}@media (max-width: 768px){.progress-cards,.breakdown-cards{grid-template-columns:1fr}}.goal-detail-page{max-width:64rem;margin:0 auto;padding:0}.goal-detail-header{padding:.5rem 0;border-bottom:1px solid var(--bg-hover, #e5e7eb);margin-bottom:1rem}.goal-detail-title{font-size:1.5rem;font-weight:700;color:var(--text);margin:0;padding:0}.goal-detail-meta{display:flex;align-items:center;gap:.75rem}.goal-status-badge{padding:.25rem .75rem;border-radius:0;font-size:.875rem;font-weight:500}.goal-status-badge.active{background-color:#0596691a;color:var(--accent-green, #059669)}.goal-status-badge.completed{background-color:#2563eb1a;color:var(--accent-blue, #2563eb)}.goal-status-badge.paused{background-color:#d977061a;color:var(--accent-yellow, #d97706)}.goal-detail-date{font-size:.875rem;color:var(--subtext)}.goal-detail-close{background:none;border:none;font-size:1.5rem;color:var(--subtext);cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.goal-detail-close:hover{color:var(--text)}.goal-detail-error{margin-bottom:1rem;padding:.75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:0;color:#dc2626}.goal-detail-grid{display:grid;grid-template-columns:1fr;gap:1rem;padding:0}.goal-detail-section{background:var(--bg-panel, white);border-radius:0;padding:.75rem;border:1px solid var(--bg-hover, #e5e7eb)}.goal-detail-section h3{font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:.75rem}.goal-detail-list{display:flex;flex-direction:column;gap:.5rem}.goal-detail-item{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;border-bottom:1px solid var(--bg-hover, #f3f4f6)}.goal-detail-item:last-child{border-bottom:none}.goal-detail-label{font-size:.875rem;color:var(--subtext)}.goal-detail-value{font-size:.875rem;font-weight:500;color:var(--text)}.goal-detail-actions{display:flex;flex-direction:column;gap:.5rem}.goal-detail-action-btn{width:100%;padding:.5rem .75rem;border-radius:0;border:1px solid var(--muted);font-weight:500;cursor:pointer;transition:background-color .2s;background:var(--bg-dark);color:var(--text)}.goal-detail-action-btn.primary{background-color:var(--accent-blue, #2563eb);color:#fff;border-color:var(--accent-blue, #2563eb)}.goal-detail-action-btn.primary:hover{background-color:var(--accent-blue-hover, #1d4ed8)}.goal-detail-action-btn.warning{background-color:var(--accent-yellow, #d97706);color:#fff;border-color:var(--accent-yellow, #d97706)}.goal-detail-action-btn.warning:hover{background-color:#b45309}.goal-detail-action-btn.success{background-color:var(--accent-green, #059669);color:#fff;border-color:var(--accent-green, #059669)}.goal-detail-action-btn.success:hover{background-color:#047857}.progress-chart-loading{display:flex;flex-direction:column;align-items:center;gap:1rem}.progress-chart-loading .skeleton-title{height:1rem;background-color:var(--bg-hover, #e5e7eb);border-radius:0;width:33%}.progress-chart-loading .skeleton-circle{width:8rem;height:8rem;background-color:var(--bg-hover, #e5e7eb);border-radius:0}.progress-chart-loading .skeleton-item{height:.75rem;background-color:var(--bg-hover, #e5e7eb);border-radius:0;width:100%}.progress-chart-loading .skeleton-item.short{width:75%}.progress-chart-empty{text-align:center;color:var(--text-muted, #6b7280)}.progress-chart-empty h4{font-weight:500;margin-bottom:.5rem;color:var(--text)}.progress-chart-empty p{font-size:.875rem}@media (min-width: 1024px){.goal-detail-grid{grid-template-columns:1fr 1fr}}.goals-page{max-width:1200px;margin:0 auto;padding:1rem}.goals-header{margin-bottom:1rem}.goals-header h1{font-size:2rem;font-weight:700;color:var(--text);margin-bottom:.5rem}.goals-header p{color:var(--subtext)}.goals-error{margin-bottom:1.5rem;padding:1rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:0;color:#dc2626}.goals-actions{margin-bottom:1rem}.add-goal-btn{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;padding:.75rem 1.5rem;border-radius:0;border:none;font-weight:500;cursor:pointer;transition:background .2s}.add-goal-btn:hover{background:linear-gradient(135deg,var(--accent-2),var(--accent))}.goals-section{margin-bottom:1.5rem}.goals-section h2{font-size:1.25rem;font-weight:600;color:var(--text);margin-bottom:.75rem}.goals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.loading-skeleton{display:flex;flex-direction:column;gap:1rem}.skeleton-header{height:2rem;background-color:var(--muted);border-radius:0;width:25%}.skeleton-subheader{height:1rem;background-color:var(--muted);border-radius:0;width:50%}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.skeleton-card{height:16rem;background-color:var(--muted);border-radius:0}.empty-state{text-align:center;padding:2rem 1rem}.empty-state .icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{font-size:1.25rem;font-weight:600;color:var(--text);margin-bottom:.5rem}.empty-state p{color:var(--subtext);margin-bottom:1.5rem}@media (max-width: 768px){.goals-page{padding:.5rem}.goals-grid,.skeleton-grid{grid-template-columns:1fr}}.custom-exercise-manager{background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:0;padding:18px;max-width:960px;margin:0 auto}.exercise-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.05)}.exercise-manager-header h2{margin:0;color:var(--text);font-size:1.5rem;font-weight:600}.close-btn{background:var(--muted);border:none;font-size:1.5rem;color:var(--text);cursor:pointer;padding:.25rem;border-radius:0;transition:.2s}.close-btn:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.loading{text-align:center;padding:2.5rem;color:var(--subtext);font-size:1rem}.error-message{background:#ff00001a;border:1px solid rgba(255,0,0,.2);color:#f66;padding:.75rem;border-radius:0;margin-bottom:1rem;font-size:.875rem}.create-exercise-section{margin-bottom:2rem}.create-exercise-section h3{margin:0 0 1rem;color:var(--text);font-size:1.125rem;font-weight:500}.create-exercise-form{display:flex;gap:.75rem;align-items:center}.exercise-input{flex:1;padding:.625rem .75rem;border:1px solid rgba(255,255,255,.05);border-radius:0;font-size:.875rem;background:var(--muted);color:var(--text);transition:border-color .2s ease}.exercise-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff2d0040}.create-btn{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border:none;padding:.625rem 1rem;border-radius:0;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease}.create-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-2),var(--accent))}.create-btn:disabled{background:var(--muted);color:var(--subtext);cursor:not-allowed}.exercises-section{margin-bottom:2rem}.exercises-section:last-child{margin-bottom:0}.exercises-section h3{margin:0 0 1rem;color:var(--text);font-size:1.125rem;font-weight:500}.no-exercises{color:var(--subtext);font-style:italic;text-align:center;padding:1.25rem;background:var(--muted);border-radius:0;border:1px dashed rgba(255,255,255,.05)}.exercise-list{display:flex;flex-direction:column;gap:.5rem}.exercise-item{border:1px solid rgba(255,255,255,.05);border-radius:0;overflow:hidden}.exercise-item.readonly{background:var(--muted);border-color:#ffffff0d}.exercise-display{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem}.exercise-category{background:var(--muted);color:var(--subtext);padding:.125rem .5rem;border-radius:0;font-size:.75rem;margin-left:.5rem}.exercise-actions{display:flex;gap:.5rem}.btn.edit-btn,.btn.delete-btn{padding:8px 12px;border:none;border-radius:0;font-size:14px;font-weight:700;cursor:pointer;transition:.2s}.btn.edit-btn{background:var(--accent);color:#fff}.btn.edit-btn:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2))}.btn.delete-btn{background:red;color:#fff}.btn.delete-btn:hover{background:#ff4500}.exercise-edit{display:flex;align-items:center;padding:.75rem 1rem;gap:.75rem}.exercise-edit .exercise-input{flex:1}.edit-actions{display:flex;gap:.5rem}.btn.save-btn,.btn.cancel-btn{padding:.375rem .75rem;border:1px solid rgba(255,255,255,.05);border-radius:0;font-size:.75rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;background:transparent;color:var(--text)}.btn.save-btn{border-color:var(--success);color:var(--success)}.btn.save-btn:hover{background:#22c55e1a}.btn.cancel-btn:hover{background:var(--muted)}@media (max-width: 640px){.custom-exercise-manager{margin:1rem;padding:1rem}.create-exercise-form{flex-direction:column;align-items:stretch}.exercise-display{flex-direction:column;align-items:flex-start;gap:.5rem}.exercise-actions{align-self:flex-end}.exercise-edit{flex-direction:column;align-items:stretch;gap:.5rem}.edit-actions{justify-content:flex-end}}.exercise-progress-chart{background:var(--card);border-radius:0;padding:1.5rem;border:1px solid rgba(255,255,255,.05);margin-bottom:1.5rem}.chart-container{position:relative;height:400px;width:100%}.combined-chart .exercise-progress-chart{margin-bottom:2rem}.combined-chart .chart-container{height:450px}@media (max-width: 768px){.exercise-progress-chart{padding:1rem}.chart-container{height:350px}.combined-chart .chart-container{height:400px}}.exercise-stats{background:var(--card);padding:1.5rem;border:1px solid rgba(255,255,255,.05);margin-bottom:1.5rem}.stats-header{margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:1rem}.stats-header h3{margin:0 0 .25rem;font-size:1.25rem;font-weight:600;color:var(--text)}.stats-period{margin:0;font-size:.875rem;color:var(--subtext)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-card{background:var(--muted);padding:1rem;border:1px solid rgba(255,255,255,.05);transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.stat-card--primary{border-left:4px solid var(--accent)}.stat-card--secondary,.stat-card--positive{border-left:4px solid var(--success)}.stat-card--neutral{border-left:4px solid var(--subtext)}.stat-label{font-size:.75rem;font-weight:500;color:var(--subtext);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text);margin-bottom:.25rem;line-height:1.2}.stat-subtitle{font-size:.75rem;color:var(--subtext);line-height:1.3}@media (max-width: 768px){.exercise-stats{padding:1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.stat-card{padding:.75rem}.stat-value{font-size:1.25rem}.stats-header h3{font-size:1.125rem}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr 1fr}.stat-value{font-size:1.125rem}.stat-label,.stat-subtitle{font-size:.6875rem}}.progressive-overload{background:var(--card);padding:1.5rem;border:1px solid rgba(255,255,255,.05);margin-bottom:1.5rem}.progressive-overload h3{margin:0 0 1.5rem;color:var(--text);font-size:1.25rem;font-weight:600}.progressive-overload-loading,.progressive-overload-error,.progressive-overload-no-data{text-align:center;padding:1.5rem;color:var(--subtext)}.progressive-overload-error{color:var(--error);background:#dc35451a;border:1px solid rgba(220,53,69,.2);border-radius:4px}.overload-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.overload-metric{background:var(--muted);padding:1rem;border:1px solid rgba(255,255,255,.05);border-radius:6px;text-align:center;transition:all .2s ease}.overload-metric:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.overload-metric h4{margin:0 0 .75rem;font-size:.875rem;color:var(--subtext);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.overload-value{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;line-height:1.2}.overload-value.no-data{color:var(--subtext)}.overload-value.regression{color:var(--error)}.overload-value.maintenance{color:var(--warning)}.overload-value.good{color:var(--success)}.overload-value.rapid{color:var(--info)}.overload-value.exceptional{color:var(--accent)}.overload-interpretation{font-size:.75rem;color:var(--subtext);font-style:italic;line-height:1.3}.week-details{background:var(--muted);border:1px solid rgba(255,255,255,.05);border-radius:6px;padding:1rem;margin-bottom:1.5rem}.week-details h4{margin:0 0 1rem;font-size:1rem;color:var(--text);font-weight:600}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.75rem}.detail-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.detail-item:last-child{border-bottom:none}.detail-label{font-weight:500;color:var(--subtext)}.detail-value{font-weight:600;color:var(--text)}.progress-guide{background:var(--muted);border:1px solid rgba(255,255,255,.05);border-radius:6px;padding:1rem}.progress-guide h4{margin:0 0 .75rem;font-size:1rem;color:var(--text);font-weight:600}.progress-guide ul{margin:0;padding-left:1.25rem;list-style-type:none}.progress-guide li{margin-bottom:.5rem;display:flex;align-items:center;font-size:.875rem}.guide-value{font-weight:600;color:var(--text);min-width:50px;display:inline-block}@media (max-width: 768px){.progressive-overload{padding:1rem}.overload-summary{grid-template-columns:1fr;gap:.75rem}.detail-grid{grid-template-columns:1fr}.detail-item{flex-direction:column;gap:.25rem}.overload-metric{padding:.75rem}.overload-value{font-size:1.25rem}.week-details,.progress-guide{padding:.75rem}}@media (max-width: 480px){.overload-value{font-size:1.125rem}.overload-metric h4{font-size:.75rem}.overload-interpretation{font-size:.6875rem}.progress-guide li{font-size:.75rem}}.exercises-page{max-width:960px;margin:0 auto;color:var(--text)}.exercises-header{text-align:center;margin-bottom:2rem}.exercises-header h1{font-size:2.5rem;font-weight:700;color:var(--text);margin-bottom:.5rem}.exercises-header p{font-size:1.1rem;color:var(--subtext);margin:0}.exercises-actions{display:flex;justify-content:center;margin-bottom:2rem}.btn.manage-custom-exercises-btn{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn.manage-custom-exercises-btn:hover{background:linear-gradient(135deg,var(--accent-2),var(--accent))}.exercises-content{text-align:center;padding:3rem 1rem;background-color:var(--card);border-radius:0;border:2px dashed rgba(255,255,255,.05)}.exercises-content p{font-size:1.1rem;color:var(--subtext);margin:0}.exercise-progress-section{margin-top:2rem}.exercise-controls{display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem;background-color:var(--card);border-radius:0;border:1px solid rgba(255,255,255,.05);align-items:flex-end}.exercise-selector,.period-selector{flex:1;min-width:200px}.exercise-selector label,.period-selector label{display:block;font-weight:600;color:var(--text);margin-bottom:.5rem}.exercise-dropdown,.period-dropdown{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.05);border-radius:0;background-color:var(--muted);color:var(--text);font-size:1rem}.exercise-dropdown:focus,.period-dropdown:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff2d0040}.loading-message,.no-data-message,.welcome-message{text-align:center;padding:2rem;background-color:var(--card);border-radius:0;border:1px solid rgba(255,255,255,.05)}.loading-message{color:var(--subtext);font-style:italic}.no-data-message{color:var(--subtext)}.no-data-message p{margin-bottom:1rem}.no-data-message p:last-child{margin-bottom:0}.welcome-message h3{color:var(--text);margin-bottom:1rem}.welcome-message p{color:var(--subtext);margin-bottom:1rem}.welcome-message p:last-child{margin-bottom:0}.welcome-message ul{text-align:left;color:var(--subtext);max-width:400px;margin:1rem auto 0}.welcome-message li{margin-bottom:.5rem}.progress-charts{margin-top:2rem}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}@media (max-width: 768px){.exercises-page{padding:1rem}.exercises-header h1{font-size:2rem}.exercises-actions{flex-direction:column;align-items:center;gap:1rem}.manage-custom-exercises-btn{width:100%;max-width:300px}.exercise-controls{flex-direction:column;gap:1rem;align-items:stretch}.exercise-selector,.period-selector{min-width:auto}.charts-grid{grid-template-columns:1fr}}.group-card{background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:0;padding:18px;margin-bottom:24px;transition:.2s}.group-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.group-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.group-card-title{display:flex;align-items:center;gap:.5rem}.group-card-title h3{font-size:1.125rem;font-weight:600;color:var(--text);margin:0}.group-description{margin-bottom:1rem}.group-description p{font-size:.875rem;color:var(--subtext);margin:0;line-height:1.5}.group-details{margin-bottom:1rem}.group-detail-row{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:.5rem}.group-detail-label{color:var(--subtext)}.group-detail-value{font-weight:500;color:var(--text)}.group-actions{display:flex;flex-wrap:wrap;gap:.5rem}.group-btn{background:transparent;border:1px solid rgba(255,255,255,.05);color:var(--text);padding:.6rem;font-size:1rem;cursor:pointer;transition:background-color .2s}.group-btn:hover{background:var(--muted)}@media (max-width: 768px){.group-actions{flex-direction:column}.group-btn{width:100%}}.group-form-page{max-width:28rem;margin:0 auto;padding:0}.group-form-header{padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05);margin-bottom:1rem}.group-form-header h2{font-size:1.25rem;font-weight:700;color:var(--text);margin:0;padding:0}.group-form-body{padding:0}.group-form-error{margin-bottom:1rem;padding:.75rem;background-color:#ff00001a;border:1px solid rgba(255,0,0,.2);border-radius:0;color:#f66}.field{margin-bottom:.75rem}.field-label{display:block;font-size:.875rem;font-weight:500;color:var(--subtext);margin-bottom:.25rem}.input,.textarea,.select{width:100%;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.05);font-size:.95rem;background-color:var(--muted);color:var(--text);transition:border-color .2s,box-shadow .2s;font-family:inherit;border-radius:0}.textarea{resize:vertical;min-height:100px}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff2d0040}.input:disabled,.textarea:disabled,.select:disabled{background-color:var(--muted);color:var(--subtext);cursor:not-allowed}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;gap:.5rem;margin-top:.75rem}.form-btn{flex:1;background:transparent;border:1px solid rgba(255,255,255,.05);color:var(--text);padding:.6rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.form-btn:hover{background:var(--muted)}@media (max-width: 768px){.form-grid{grid-template-columns:1fr}}.member-sessions-view{display:flex;flex-direction:column;gap:.5rem}.member-sessions-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.05)}.member-sessions-header .back-btn{padding:.4rem .6rem;border:1px solid rgba(255,255,255,.05);background:var(--muted);color:var(--text);cursor:pointer;transition:background-color .2s;font-size:.8rem}.member-sessions-header .back-btn:hover{background-color:var(--muted)}.member-sessions-header h3{font-size:1.25rem;font-weight:600;color:var(--text);margin:0}.member-sessions-error{margin-bottom:1rem;padding:.5rem;background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.member-sessions-loading,.member-sessions-empty{text-align:center;padding:1rem 0;color:var(--subtext)}.member-sessions-empty p{font-size:1rem;margin:0}.member-sessions-list{display:flex;flex-direction:column;gap:.75rem}.session-card{background:var(--card);padding:1rem;box-shadow:0 2px 6px #0000000f}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.session-header h3{font-size:1.1rem;font-weight:600;margin:0;color:var(--text)}.session-date{font-size:.8rem;color:var(--subtext);background-color:var(--muted);padding:.2rem .4rem;border-radius:0}.session-notes{margin-top:.25rem;font-size:.85rem;color:var(--subtext);margin-bottom:.75rem}.member-sessions-view .exercises-list{display:flex;flex-direction:column}.member-sessions-view .exercise-card{background:var(--card);color:var(--text);padding:0rem;display:flex;flex-direction:column;gap:.5rem;transition:background .2s ease}.exercise-header{border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:.25rem;margin-bottom:.25rem;padding-left:.5rem}.exercise-title-wrapper{flex:1;display:flex;flex-direction:column;gap:.25rem}.exercise-title{margin:0;padding:0;font-weight:600;font-size:1rem;color:var(--text)}.exercise-variation{color:var(--subtext);font-weight:400}.set-summary{font-size:.8rem;color:var(--subtext);font-weight:500}.exercise-type{display:inline-block;margin:0;font-size:.8rem;font-weight:500;color:var(--subtext)}.exercise-notes{color:var(--subtext);font-size:.85rem;margin-top:.25rem;margin-left:.5rem}.member-sessions-view .sets{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px}.member-sessions-view .sets th,.member-sessions-view .sets td{padding:6px 8px;text-align:left;border-bottom:1px dashed rgba(255,255,255,.05)}.member-sessions-view .sets th{color:var(--subtext);text-transform:uppercase;font-size:12px;letter-spacing:.05em}.member-sessions-view .sets .weight{font-weight:700;color:var(--accent)}.member-sessions-view .sets .reps,.member-sessions-view .sets .duration{font-weight:700;color:var(--accent-2)}.member-sessions-view .sets .notes-container{position:relative}.member-sessions-view .sets .notes-text{color:var(--subtext);font-style:italic;display:block;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-sessions-view .sets tbody tr{background:linear-gradient(90deg,#ff2d0012,#ff660008);border-radius:0}@media (max-width: 768px){.member-sessions-view{padding:0 .5rem}.member-sessions-header{flex-wrap:wrap;gap:.5rem}.session-header{flex-direction:column;align-items:flex-start;gap:.25rem}.member-sessions-view .exercise-header,.member-sessions-view .exercise-notes{margin-left:0;padding-left:0}.member-sessions-view .sets{font-size:14px;border-collapse:separate;border-spacing:0}.member-sessions-view .sets thead{display:none}.member-sessions-view .sets tbody tr{display:flex;flex-direction:column;gap:6px;padding:8px;margin-bottom:8px;background:linear-gradient(90deg,#ff2d0012,#ff660008);border-radius:0;border:1px solid rgba(255,255,255,.05)}.member-sessions-view .sets td{display:flex;justify-content:space-between;align-items:center;padding:0;border-bottom:none;width:100%}.member-sessions-view .sets td:first-child:before{content:"Set";font-weight:700;color:var(--subtext);margin-right:12px}.member-sessions-view .sets td.weight:before{content:"Weight";font-weight:700;color:var(--subtext);margin-right:12px}.member-sessions-view .sets td.reps:before{content:"Reps";font-weight:700;color:var(--subtext);margin-right:12px}.member-sessions-view .sets td.duration:before{content:"Duration";font-weight:700;color:var(--subtext);margin-right:12px}.member-sessions-view .sets td.notes:before{content:"Notes";font-weight:700;color:var(--subtext);margin-right:12px}.member-sessions-view .sets .notes-text{max-width:150px}}.invite-form{padding:18px;border:1px solid rgba(255,255,255,.05);border-radius:0;background:var(--card);margin:1rem 0}.invite-form h4{margin:0 0 1rem;color:var(--text)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--subtext)}.form-group input{width:100%;padding:.5rem;border:1px solid rgba(255,255,255,.05);border-radius:0;font-size:1rem;background:var(--muted);color:var(--text)}.form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff2d0040}.form-group input:disabled{background-color:var(--muted);opacity:.6}.error-message{color:#f66;font-size:.9rem;margin-bottom:1rem;padding:.5rem;background-color:#ff00001a;border:1px solid rgba(255,0,0,.2);border-radius:0}.form-actions{display:flex;gap:.5rem}.submit-btn,.cancel-btn{padding:.5rem 1rem;border:none;border-radius:0;cursor:pointer;font-size:.9rem;transition:background-color .2s}.submit-btn{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-2),var(--accent))}.cancel-btn{background:var(--muted);color:var(--text);border:1px solid rgba(255,255,255,.05)}.cancel-btn:hover:not(:disabled){background:var(--muted)}.submit-btn:disabled,.cancel-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.form-actions{flex-direction:column}.submit-btn,.cancel-btn{width:100%}}.group-detail{max-width:48rem;margin:0 auto;padding:0}.group-detail-loading,.group-detail-error{text-align:center;padding:2rem;font-size:1rem}.group-detail-error{color:red;background-color:#ff00001a;border:1px solid #FF0000}.group-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.back-btn,.edit-btn,.add-member-btn,.invite-member-btn,.add-btn,.cancel-btn,.view-sessions-btn,.remove-btn{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-size:1rem;font-weight:700;cursor:pointer}.back-btn:hover,.edit-btn:hover,.add-member-btn:hover,.invite-member-btn:hover,.add-btn:hover,.cancel-btn:hover,.view-sessions-btn:hover,.remove-btn:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.remove-btn{padding:.25rem .5rem;font-size:.75rem}.group-info{background:var(--card);border:1px solid rgba(255,255,255,.05);padding:1.25rem 1rem;margin-bottom:1.5rem}.group-info h2{font-size:1.5rem;font-weight:600;color:var(--text);margin:0 0 .5rem}.group-description{color:var(--subtext);margin:.5rem 0 1rem;line-height:1.5}.group-meta{display:flex;gap:1rem;font-size:.875rem;color:var(--subtext)}.members-section{background:var(--card);border:1px solid rgba(255,255,255,.05);padding:1.25rem 1rem}.members-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.members-header h3{font-size:1.125rem;font-weight:600;color:var(--text);margin:0}.member-actions-buttons{display:flex;gap:.5rem}.add-member-form{display:flex;gap:.5rem;margin-bottom:1rem;padding:1rem;background-color:var(--muted);border:1px solid var(--muted)}.input,.select{padding:.5rem .75rem;border:1px solid var(--muted);background-color:var(--bg-dark);color:var(--text);font-size:.875rem}.input{flex:1}.select{min-width:100px}.select.small{padding:.25rem .5rem;font-size:.75rem}.members-list{display:flex;flex-direction:column;gap:.75rem}.member-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid var(--muted);background-color:var(--muted)}.member-info{display:flex;flex-direction:column;gap:.25rem}.member-name{font-weight:500;color:var(--text)}.member-email{font-size:.875rem;color:var(--subtext)}.member-joined{font-size:.75rem;color:var(--subtext)}.member-actions{display:flex;align-items:center;gap:.5rem}.member-role{padding:.25rem .5rem;font-size:.75rem;font-weight:500;text-transform:uppercase}.member-role.admin{background-color:#f59e0b1a;color:#92400e;border:1px solid rgba(245,158,11,.2)}.member-role.member{background-color:#3b82f61a;color:#1e40af;border:1px solid rgba(59,130,246,.2)}@media (max-width: 768px){.group-detail-header{flex-direction:column;gap:.5rem;align-items:stretch}.group-meta{flex-direction:column;gap:.25rem}.members-header{flex-direction:column;gap:.5rem;align-items:stretch}.member-actions-buttons,.add-member-form{flex-direction:column}.member-item{flex-direction:column;align-items:stretch;gap:.75rem}.member-actions{justify-content:space-between}}.groups-list{max-width:64rem;margin:0;padding:0}.groups-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.groups-list-header h2{font-size:1.5rem;font-weight:600;color:var(--text);margin:0}.create-group-btn{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-weight:700;cursor:pointer;transition:.2s}.create-group-btn:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.create-group-btn.empty-state{padding:.75rem 1.5rem;font-size:1rem;margin-top:1rem;background:var(--muted);border:none;color:var(--text);border-radius:0;font-weight:700;cursor:pointer;transition:.2s}.create-group-btn.empty-state:hover{background:var(--muted)}.groups-list-error{margin-bottom:1rem;padding:.75rem;background-color:#ef44441a;border:1px solid #FF0000;color:red}.groups-list-loading{text-align:center;padding:2rem;font-size:1rem;color:var(--subtext)}.groups-list-empty{text-align:center;padding:3rem 1.25rem;background:var(--card);border:1px solid rgba(255,255,255,.05)}.groups-list-empty h3{font-size:1.25rem;font-weight:600;color:var(--text);margin:0 0 .5rem}.groups-list-empty p{color:var(--subtext);margin:0 0 1.5rem;line-height:1.5}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}@media (max-width: 768px){.groups-list-header{flex-direction:column;gap:1rem;align-items:stretch}.groups-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width: 480px){.groups-list-empty{padding:2rem .5rem}}.groups-page{min-height:100vh;background-color:var(--bg-dark)}.groups-container{padding:2rem 1rem;max-width:none}@media (max-width: 768px){.groups-container{padding:1rem .5rem}}.invite-list{margin:1rem 0}.invite-list h3{margin-bottom:1rem;color:#333}.invite-list-loading,.invite-list-error,.invite-list-empty{padding:1rem;text-align:center;color:#666}.invite-list-error{color:#dc3545}.invite-list-items{display:flex;flex-direction:column;gap:.75rem}.invite-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #ddd;border-radius:0;background-color:#f8f9fa}.invite-info h4{margin:0 0 .5rem;color:#333}.invite-info p{margin:.25rem 0;color:#666;font-size:.9rem}.invite-date{font-style:italic}.invite-actions{display:flex;gap:.5rem}.accept-btn,.decline-btn{padding:.5rem 1rem;border:none;border-radius:0;cursor:pointer;font-size:.9rem;transition:background-color .2s}.accept-btn{background-color:#28a745;color:#fff}.accept-btn:hover:not(:disabled){background-color:#218838}.decline-btn{background-color:#dc3545;color:#fff}.decline-btn:hover:not(:disabled){background-color:#c82333}.accept-btn:disabled,.decline-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.invite-item{flex-direction:column;align-items:stretch;gap:1rem}.invite-actions{justify-content:center}}.user-invites-page{max-width:800px;margin:0 auto;padding:2rem 1rem}.user-invites-header{text-align:center;margin-bottom:2rem}.user-invites-header h1{font-size:2rem;font-weight:600;color:var(--text);margin:0 0 .5rem}.user-invites-header p{color:var(--subtext);font-size:1.1rem;margin:0}@media (max-width: 768px){.user-invites-page{padding:1rem .5rem}.user-invites-header h1{font-size:1.5rem}.user-invites-header p{font-size:1rem}}.calendar-view{background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:0;overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;background:var(--muted);border-bottom:1px solid rgba(255,255,255,.05)}.calendar-header h2{font-size:1.5rem;font-weight:600;margin:0;color:var(--text)}.nav-btn{background:var(--muted);border:none;color:var(--text);font-size:1.5rem;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;border-radius:0}.nav-btn:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.calendar-stats{display:flex;justify-content:space-around;padding:1rem 2rem;background:var(--muted);border-bottom:1px solid rgba(255,255,255,.05)}.calendar-stats .stat{text-align:center}.calendar-stats .stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--text)}.calendar-stats .stat-label{font-size:.875rem;color:var(--subtext);text-transform:uppercase;letter-spacing:.05em}.calendar-grid{padding:1rem}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border-dark);border:1px solid var(--border-dark);border-bottom:none}.weekday{background:var(--muted);padding:.75rem;text-align:center;font-weight:600;color:var(--text);font-size:.875rem}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border-dark);border:1px solid var(--border-dark)}.calendar-day{background:var(--card);min-height:80px;padding:.5rem;cursor:pointer;transition:all .2s;position:relative;display:flex;flex-direction:column}.calendar-day:hover{background:var(--muted)}.calendar-day.other-month{background:var(--muted);color:var(--subtext)}.calendar-day.today{background:var(--muted);border:2px solid var(--accent)}.calendar-day.has-workout-current-month{background:var(--success)}.calendar-day.has-workout-other-month{background:#22c55e40}.day-number{font-weight:600;font-size:.875rem;margin-bottom:.25rem;color:var(--text)}.workout-summary-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.workout-summary-modal{background:var(--card);border:1px solid rgba(255,255,255,.05);max-width:500px;width:100%;max-height:80vh;overflow-y:auto}.workout-summary-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.workout-summary-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text)}.close-btn{background:none;border:1px solid rgba(255,255,255,.05);font-size:1.5rem;cursor:pointer;color:var(--subtext);width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn:hover{background:var(--muted);color:var(--text)}.workout-summary-date{padding:1rem 1.5rem;font-weight:600;color:var(--subtext);background:var(--muted);border-bottom:1px solid rgba(255,255,255,.05)}.workout-summary-stats{display:flex;justify-content:space-around;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.workout-summary-stats .stat{text-align:center}.workout-summary-stats .stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--text)}.workout-summary-stats .stat-label{font-size:.875rem;color:var(--subtext)}.workout-summary-sessions{padding:1.5rem}.session-summary{margin-bottom:1.5rem}.session-summary:last-child{margin-bottom:0}.session-header h4{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text)}.session-notes{margin:0 0 1rem;color:var(--subtext);font-style:italic}.exercise-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.exercise-item:last-child{border-bottom:none}.exercise-name{font-weight:500;color:var(--text)}.exercise-sets{font-size:.875rem;color:var(--subtext)}@media (max-width: 768px){.calendar-page,.calendar-header{padding:1rem}.calendar-header h2{font-size:1.25rem}.calendar-stats{padding:.75rem 1rem}.calendar-stats .stat-value{font-size:1.25rem}.calendar-day{min-height:60px;padding:.25rem}.day-number{font-size:.75rem}.workout-summary-modal{margin:1rem;max-height:90vh}}@media (max-width: 480px){.calendar-stats{flex-direction:column;gap:.75rem}.calendar-stats .stat{display:flex;justify-content:space-between;align-items:center}.calendar-stats .stat-value{font-size:1.125rem}.calendar-day{min-height:50px}.weekday{padding:.5rem .25rem;font-size:.75rem}}.calendar-page{padding:2rem;max-width:960px;margin:0 auto}.calendar-page-header{text-align:center;margin-bottom:2rem}.calendar-page-header h1{font-size:2.5rem;font-weight:700;color:var(--text-light);margin-bottom:.5rem}.calendar-page-header p{font-size:1.1rem;color:var(--text-muted)}.calendar-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-dark);border-top:4px solid var(--accent-blue);animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.calendar-error{background:var(--bg-panel);border:1px solid var(--accent-red);color:var(--accent-red);padding:1rem;margin-bottom:1rem;text-align:center}:root{--bg: #080808;--card: #101010;--muted: #2A2A2A;--accent: #FF2D00;--accent-2: #FF6600;--text: #E5E5E5;--subtext: #888888;--success: #27AE60;--error: #FF0000;--warning: #FFA500;--info: #17A2B8;--radius: 0;--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, "Roboto Mono", monospace;--ui: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;--glass: rgba(255,255,255,.03);--bg-dark: var(--bg);--bg-panel: var(--card);--bg-hover: var(--muted);--text-light: var(--text);--text-muted: var(--subtext);--border-dark: rgba(255,255,255,.1);--border-light: rgba(255,255,255,.05);--accent-blue: var(--accent);--accent-green: var(--success);--accent-red: #FF0000;--accent-purple: var(--accent-2);--accent-orange: var(--accent-2);--accent-teal: var(--success);--accent-cyan: var(--accent)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:linear-gradient(180deg,var(--bg),#050505);color:var(--text);font-family:var(--ui);font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}.btn,a.btn,button.btn,input[type=button].btn,input[type=submit].btn{appearance:none;cursor:pointer;padding:8px 12px;border:none;border-radius:0;font-weight:700;background:var(--muted);color:var(--text)}.btn:hover,.btn.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.btn.small{padding:6px 10px;font-size:13px}a.btn:link,a.btn:visited{text-decoration:none}.btn:focus{outline:none}.btn:focus-visible{outline:3px solid rgba(255,45,0,.18);outline-offset:2px}.btn[disabled],.btn.disabled{opacity:.55;cursor:not-allowed;transform:none}.weight{font-weight:700;color:var(--accent)}.reps{font-weight:700;color:var(--accent-2)}.rest{color:var(--subtext)}.heavy{background:linear-gradient(90deg,#ff2d0012,#ff660008);border-radius:0}body{background:linear-gradient(180deg,var(--bg),#050505);color:var(--text);margin:0}.navbar{background:var(--card);padding:18px;color:var(--text);border:1px solid rgba(255,255,255,.05);position:sticky;top:0;z-index:10;margin-bottom:24px}.navbar-container{display:flex;align-items:center;justify-content:space-between;max-width:960px;margin:0 auto;width:100%;position:relative}.navbar-logo{font-size:1.2rem;font-weight:700;letter-spacing:.05em;color:var(--text)}.navbar-links{display:flex;gap:1rem;align-items:center;transition:all .3s ease}.navbar-links a{font-weight:500;font-size:.95rem;color:var(--text);transition:color .2s ease;text-decoration:none}.navbar-links a:hover{color:var(--accent)}.user-name{font-size:.9rem;opacity:.8}.main-content{max-width:960px;margin:0 auto}@media (min-width: 768px){.main-content{padding:2rem}.navbar-logo{font-size:1.35rem}.navbar-links a{font-size:1rem}}.menu-toggle{display:none;background:none;border:none;color:var(--text);font-size:1.6rem;cursor:pointer}@media (max-width: 600px){.menu-toggle{display:block}.navbar-container{flex-direction:column;align-items:stretch}.navbar-links{display:flex;flex-direction:column;background:var(--card);border-top:1px solid rgba(255,255,255,.05);padding:0;gap:0;max-height:0;overflow:hidden;opacity:0;transition:all .25s ease-in-out;width:100%}.navbar-links.open{max-height:400px;opacity:1;padding:.5rem 0rem;margin-top:.5rem}.navbar-links a,.navbar-links button,.navbar-links div{width:100%;text-align:left;padding:.5rem 0;font-size:.95rem}.navbar-logo{display:flex;align-items:center;justify-content:space-between;width:100%}.user-name{margin-top:.5rem}}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px;color:var(--text-light)}.auth-required-container{display:flex;justify-content:center;align-items:center;min-height:400px;padding:2rem}.auth-required-content{background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:0;padding:2rem;text-align:center;max-width:400px;width:100%}.auth-required-content h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text)}.auth-required-content p{color:var(--subtext);margin-bottom:1.5rem}.logout{background:var(--muted);border:none;color:var(--text);padding:8px 12px;border-radius:0;font-weight:700;cursor:pointer;transition:.2s}.logout:hover{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.not-found{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:2rem}.not-found-content{text-align:center;max-width:500px;width:100%}.not-found-title{font-size:6rem;font-weight:700;color:var(--accent);margin:0;line-height:1}.not-found-subtitle{font-size:2rem;font-weight:600;color:var(--text);margin:1rem 0}.not-found-description{font-size:1.1rem;color:var(--subtext);margin:1.5rem 0;line-height:1.5}.not-found-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.not-found-link{display:inline-block;padding:.75rem 1.5rem;border-radius:0;text-decoration:none;font-weight:500;transition:all .2s ease;border:2px solid transparent}.not-found-link.primary{background:var(--accent);color:#fff}.not-found-link.primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.not-found-link.secondary{background:transparent;color:var(--text);border-color:#ffffff0d}.not-found-link.secondary:hover{background:var(--muted);transform:translateY(-1px)}@media (max-width: 640px){.not-found-title{font-size:4rem}.not-found-subtitle{font-size:1.5rem}.not-found-actions{flex-direction:column;align-items:center}.not-found-link{width:200px}}
