.home{text-align:center;margin-top:2rem;color:var(--text-light)}.home-title{font-size:2.2rem;font-weight:700;margin-bottom:.5rem}.home-subtitle{color:var(--text-muted);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(--bg-panel);border:1px solid var(--bg-hover);text-decoration:none;color:var(--text-light);transition:background .2s ease,transform .15s ease}.home-link:hover{background:var(--bg-hover);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(--text-muted)}.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);border-radius:8px;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(--bg-dark);color:var(--text-light);min-height:100vh}.no-sessions{color:var(--text-muted);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(--bg-panel);border-radius:8px;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(--text-muted)}.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-light)}.form-group input,.form-group textarea{padding:.5rem;border:1px solid #333;font-size:.9rem;background:#111;color:var(--text-light)}textarea{resize:vertical;min-height:60px}.btn.view{background:transparent;border:1px solid var(--text-light);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.btn.view:hover{background:var(--bg-hover)}.btn.edit{background:transparent;border:1px solid var(--text-light);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.btn.edit:hover{background:var(--bg-hover)}.btn.delete{background:transparent;border:1px solid var(--text-light);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.btn.delete:hover{background:var(--bg-hover)}.btn.save{background:transparent;border:1px solid var(--text-light)}.btn.cancel{background:#6b7280;color:#fff}.btn.cancel:hover{background:#4b5563}.exercise-list{display:flex;flex-direction:column;gap:1rem}.exercise-card{background:var(--bg-panel);color:var(--text-light);padding:0rem;display:flex;flex-direction:column;gap:.75rem;transition:background .2s ease}.exercise-card .edit-exercise-form{display:flex;flex-direction:column;gap:.75rem}.exercise-card .edit-exercise-form .edit-sets,.exercise-card .edit-exercise-form .exercise-edit-buttons{display:flex;flex-direction:column;gap:.5rem}.exercise-card .edit-exercise-form button,input,textarea,.exercise-card .edit-exercise-form .exercise-type-select,.exercise-card .edit-exercise-form label input{padding:.5rem .75rem}.exercise-card .edit-exercise-form button,select,input,textarea{background:var(--bg-dark);border:1px solid var(--bg-dark);color:var(--text-light)}.edit-set-fields{display:flex;flex-direction:column;gap:.5rem}.edit-set-form label,.edit-exercise-form label{display:flex;flex-direction:column}.edit-set-form input,.edit-set-form select,.edit-set-form textarea,.edit-exercise-form input,.edit-exercise-form select,.edit-exercise-form textarea{padding:.3rem .5rem;font-size:.9rem;border:1px solid var(--bg-hover);background:var(--bg-dark);color:var(--text-light)}.exercise-card .sets-list .edit-set-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;font-size:.95rem}.exercise-card .sets-list .edit-set-form button{background:transparent;border:1px solid var(--bg-hover);color:var(--text-light);padding:.5rem .75rem;font-size:.95rem;cursor:pointer;transition:background .2s ease,color .2s ease}.exercise-header{border-bottom:1px solid var(--bg-hover);padding-bottom:.5rem;margin-bottom:.5rem}.exercise-title{margin:0;padding:0;font-weight:600;font-size:1.1rem;color:var(--text-light)}.exercise-actions{display:flex;gap:.5rem}.exercise-actions button{background:transparent;border:1px solid var(--text-light);color:var(--text-light);padding:.25rem .5rem;font-size:.8rem;cursor:pointer;transition:background .2s ease,color .2s ease}.exercise-variation{color:var(--text-muted);font-weight:400}.exercise-notes{color:var(--text-muted);font-size:.9rem;margin-top:.25rem}.exercise-type{display:inline-block;margin:0;padding:.1rem .5rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.type-weighted{background:var(--accent-blue);color:#fff}.type-reps{background:var(--accent-green);color:#fff}.type-duration{background:var(--accent-purple);color:#fff}.sets-list{display:flex;flex-direction:column;gap:.4rem}.set-item{display:flex;flex-direction:column;gap:.3rem;border:1px solid var(--bg-hover);padding:.5rem .6rem;font-size:.9rem;color:var(--text-light)}.set-notes{color:var(--text-muted);font-size:.8rem;margin-left:.5rem}.timestamps{margin:0;padding:0;color:var(--text-muted);font-size:.75rem}.set-actions{display:flex;gap:.5rem}.set-actions button{background:transparent;border:1px solid var(--text-light);color:var(--text-light);padding:.25rem .5rem;font-size:.8rem;cursor:pointer;transition:background .2s ease,color .2s ease}.set-actions button:hover{background:var(--bg-hover)}.delete-button{border-color:var(--accent-red);color:var(--accent-red)}.no-exercises{font-style:italic;color:var(--text-muted)}.exercise-list .exercise-card{position:relative}.exercise-list .exercise-card .exercise-hierarchy{border-left:3px solid var(--accent-blue);padding:1rem}.sets-list .set-item{border-left:2px solid var(--accent-green);margin-left:.5rem 0rem}.exercise-card.collapsed .sets-list,.exercise-card.collapsed .exercise-notes,.exercise-card.collapsed .timestamps,.exercise-card.collapsed .exercise-actions,.exercise-card.collapsed .exercise-type,.exercise-card.collapsed .add-set-form{display:none!important}.exercise-header-main{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.exercise-title-wrapper{flex:1;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.collapse-button{background:transparent;border:none;color:var(--text-light);font-size:1rem;cursor:pointer;transition:transform .2s ease,color .2s ease;padding:.25rem}.collapse-button:hover{color:var(--accent-blue);transform:scale(1.1)}.exercise-card.collapsed .exercise-title{font-weight:600;color:var(--text-light)}.exercise-meta{font-size:.85rem;color:var(--text-muted)}.add-set-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;font-size:.95rem}.add-set-form input{background:var(--bg-dark);border:1px solid var(--bg-hover);color:var(--text-light);padding:.5rem .75rem;font-size:.95rem}.add-set-form input::placeholder{color:var(--text-muted)}.duration-inputs{display:flex;flex-direction:column;gap:.75rem}.edit-set-row{display:flex;flex-direction:column;gap:.75rem;border-left:3px solid var(--accent-green)}.edit-set-row input{background:var(--bg-dark);border:1px solid var(--bg-hover);padding:.5rem .75rem;font-size:.95rem;color:var(--text-light);transition:border .2s,box-shadow .2s}.edit-set-row button{background:transparent;border:1px solid var(--bg-hover);color:var(--text-light);padding:.25rem .5rem;cursor:pointer;transition:background .2s ease,color .2s ease}.edit-set-row button:hover{background:var(--bg-hover)}.edit-set-row input::placeholder{color:var(--text-muted)}.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(--bg-panel);color:var(--text-light)}.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 var(--bg-hover);background:var(--bg-dark);color:var(--text-light)}.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:.5rem .75rem;background:var(--bg-dark);border:1px solid var(--bg-dark);color:var(--text-light);cursor:pointer;transition:background .2s ease,color .2s ease}.exercise-edit-buttons button:hover{background:var(--bg-hover)}.edit-exercise-form.active-editing{background:var(--bg-panel-alt, rgba(255,255,255,.02))}.session-detail{display:flex;flex-direction:column;gap:1rem}.session-card{background:var(--bg-panel);padding:1.5rem;margin-bottom:1rem;box-shadow:0 2px 6px #0000000f}.session-card h2{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text-color)}.session-notes{margin-top:.25rem;font-size:.95rem;color:var(--text-muted)}.timestamps{margin-top:0;font-size:.8rem;color:var(--text-subtle)}.loading{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic}.timer{display:flex;flex-direction:column;gap:.75rem;background:var(--bg-dark);border:1px solid var(--bg-hover);border-radius:10px;padding:.75rem 1rem;margin-top:.75rem}.timer-mode{display:flex;gap:.5rem}.timer-mode button{flex:1;padding:.4rem .75rem;background:var(--bg-panel);border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem}.timer-mode button.active{background:var(--accent);color:#fff}.time{font-size:1.3rem;font-weight:600;text-align:center;letter-spacing:.5px;color:var(--text-light)}.controls{display:flex;justify-content:center;gap:.5rem}.set-time{display:flex;justify-content:center;gap:1rem;font-size:.85rem;color:var(--text-subtle)}.set-time label{display:flex;align-items:center;gap:.25rem}.set-time input{width:60px;padding:.25rem;border-radius:5px;border:1px solid var(--bg-hover);background:var(--bg-panel);color:var(--text-light);text-align:right}.bulk-exercise-form{display:flex;flex-direction:column;gap:1rem;border-left:3px solid var(--accent-blue)}.add-exercises-section{padding:1rem;display:flex;flex-direction:column;gap:1rem;background:var(--bg-panel)}.btn.add-exercise{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);color:var(--accent-blue);padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.add-exercise:hover{background:#3b82f633}.btn.add-exercises{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);color:var(--accent-blue);padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.add-exercises:hover{background:#3b82f633}.set-row{display:flex;flex-direction:column;gap:1rem;border-left:2px solid var(--accent-green)}.duration-inputs{display:flex;gap:.4rem}.btn.remove-set{background:#ff00001a;border:1px solid rgba(255,0,0,.2);color:#f66;padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.remove-set:hover{background:#f003;color:#f44}.bulk-exercise-card{background:var(--bg-panel);border:1px solid var(--bg-hover)}.exercise-hierarchy{padding:1rem;display:flex;flex-direction:column;gap:1rem}.field{display:flex;flex-direction:column;gap:.25rem}.field-label{font-size:.95rem;font-weight:500;color:var(--text-muted)}.textarea{background:var(--bg-dark);border:1px solid var(--bg-hover);padding:.5rem .75rem;font-size:.95rem;color:var(--text-light);transition:border .2s,box-shadow .2s;min-height:70px;resize:vertical}.textarea:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #3b82f640}.sets-section{display:flex;flex-direction:column;gap:1rem}.btn.save{background:transparent;border:1px solid var(--bg-dark);color:var(--text-light);padding:.6rem;font-size:1rem}.btn.save:hover{background:var(--bg-hover)}.btn.remove{background:#ff00001a;border:1px solid rgba(255,0,0,.2);color:#f66;padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.remove:hover{background:#f003;color:#f44}.btn.add-set{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:var(--accent-green);padding:.6rem;font-size:1rem;transition:background .2s,color .2s}.btn.add-set:hover{background:#22c55e33}.exercise-selector{display:flex;flex-direction:column;gap:.5rem}.mode-toggle{display:flex;gap:1rem;font-size:.9rem}.mode-toggle label{display:flex;align-items:center;gap:.25rem;cursor:pointer}.input{background:var(--bg-dark);border:1px solid var(--bg-hover);padding:.5rem .75rem;font-size:.95rem;color:var(--text-light);transition:border .2s,box-shadow .2s}.input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #3b82f640}.quick-log-input-wrapper{display:flex;flex-direction:column;gap:1rem;border-left:3px solid var(--accent-blue);padding:1rem;background:var(--bg-panel)}.quick-log-instructions{background:var(--bg-panel);padding:.75rem 1rem;border-radius:.5rem;border:1px solid rgba(59,130,246,.2);font-size:.95rem;color:var(--text-color)}.quick-log-instructions pre{background:var(--bg-input);padding:.5rem;border-radius:.25rem;font-size:.9rem;overflow-x:auto}.quick-log-instructions code{background:#3b82f61a;padding:.1rem .25rem;border-radius:.25rem;font-size:.9rem}.quick-log-input-wrapper textarea{width:100%;min-height:100px;padding:.75rem;font-size:1rem;border:1px solid rgba(59,130,246,.2);border-radius:.5rem;background:var(--bg-input);color:var(--text-color);resize:vertical;transition:border .2s,background .2s}.quick-log-input-wrapper textarea:focus{outline:none;border-color:var(--accent-blue);background:var(--bg-panel)}.quick-log-input-wrapper .error{color:#f66;font-size:.875rem;font-weight:500}.quick-log-input-wrapper .btn.parse{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);color:var(--accent-blue);padding:.6rem;font-size:1rem;transition:background .2s,color .2s;border-radius:.5rem;align-self:flex-start}.quick-log-input-wrapper .btn.parse:hover{background:#3b82f633}:root{--bg-dark: #2d2d2f;--bg-panel: #1c1c1e;--bg-hover: #2c2c2c;--text-light: #eaeaea;--text-muted: #aaa;--accent-blue: #3b82f6;--accent-green: #22c55e;--accent-red: #ef4444;--accent-purple: #8b5cf6}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-dark);color:var(--text-light);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;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}a.btn:link,a.btn:visited{text-decoration:none}.btn:focus{outline:none}.btn:focus-visible{outline:3px solid rgba(59,130,246,.18);outline-offset:2px}.btn[disabled],.btn.disabled{opacity:.55;cursor:not-allowed;transform:none;pointer-events:none}body{background-color:var(--bg-dark);color:var(--text-light);margin:0;font-family:system-ui,sans-serif}.navbar{background:var(--bg-panel);padding:.75rem 1.25rem;color:var(--text-light);border-bottom:1px solid var(--bg-hover);position:sticky;top:0;z-index:10}.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-light)}.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-light);transition:color .2s ease;text-decoration:none}.navbar-links a:hover{color:var(--accent-blue)}.user-name{font-size:.9rem;opacity:.8}.main-content{padding:1.25rem;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-light);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(--bg-panel);border-top:1px solid var(--bg-hover);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}}.login,.logout{background:transparent;border:none;cursor:pointer}
