:root{--bg-primary: #121212;--bg-secondary: #1e1e1e;--bg-elevated: #2d2d2d;--text-primary: #ffffff;--text-secondary: #b3b3b3;--accent-color: #2d5a27;--accent-hover: #22421e;--error-color: #cf6679;--success-color: #4caf50;--border-color: #333333}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1rem}h6{font-size:.875rem}p{margin-bottom:1rem}a{color:var(--accent-color);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}button,input,select,textarea{font-family:inherit;font-size:100%;border-radius:4px}button{cursor:pointer;background-color:var(--accent-color);color:#fff;border:none;padding:.5rem 1rem;margin:.5rem 0;transition:background-color .3s ease}button:hover{background-color:var(--accent-hover)}input,select,textarea{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem}@media(max-width:768px){html{font-size:14px}}@media(max-width:480px){html{font-size:12px}button{padding:.75rem 1rem}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background-color:var(--bg-primary);border-radius:8px;box-shadow:0 4px 20px #0003;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;animation:modalFadeIn .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:1.2rem}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:20px}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-body .create-form-container{padding:0;margin:0;box-shadow:none;border:none}.list{display:flex;flex-direction:column;margin:0 auto;padding:10px;width:100%;max-width:600px;box-sizing:border-box}.line{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:15px;border-radius:8px;background-color:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;width:100%;text-align:left;box-sizing:border-box;margin-bottom:10px;transition:all .2s ease}.line:hover{background-color:var(--bg-elevated);transform:translateY(-2px);box-shadow:0 4px 8px #0003}.line:active{transform:translateY(0)}.line h3,.line p{margin:0;overflow:hidden;text-overflow:ellipsis}.line h3{flex:1.5;color:var(--text-primary);font-size:1.1rem;padding-right:10px}.line p{flex:1;color:var(--text-secondary);font-size:.9rem;text-align:right}.create-button{display:flex;justify-content:center;margin:20px auto;width:100%;max-width:600px}.create-button button{width:100%;padding:12px;font-size:1rem;font-weight:500}.workout-history-btn{margin-top:20px;padding:10px;background-color:var(--accent-color);border:none;border-radius:4px;color:#fff;cursor:pointer;width:100%;font-weight:500;transition:background-color .3s,transform .2s}.workout-history-btn:hover{background-color:var(--accent-hover);transform:translateY(-2px)}.workout-history-btn:active{transform:translateY(0)}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-state h3{margin-bottom:10px}@media(max-width:480px){.list{padding:5px}.line{padding:12px;margin-bottom:8px;flex-direction:column;align-items:flex-start}.line h3{margin-bottom:5px;width:100%}.line p{width:100%;text-align:left}.create-button button{padding:15px}}.select-line-container{display:flex;width:100%;margin-bottom:10px;align-items:center}.select-line{flex:1;padding:12px;margin-bottom:0;background-color:var(--bg-elevated);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:all .2s ease;text-align:left;color:var(--text-primary);display:flex;justify-content:space-between;align-items:center}.select-line:hover{border-color:var(--accent-color);transform:translateY(-1px)}.select-content{display:flex;flex-direction:column;gap:4px;flex:1}.select-name{font-weight:500;color:var(--text-primary)}.select-description{font-size:.9em;color:var(--text-secondary)}.select-line-actions{display:flex;align-items:center;gap:4px;margin-left:10px}.action-button{padding:8px;border:none;cursor:pointer;font-size:.8em;font-weight:500;margin:0;flex:1;display:flex;align-items:center;justify-content:center;min-width:50px}.edit-button{background-color:var(--accent-color);color:#fff;border-radius:4px;margin:.2rem}.edit-button:hover{background-color:var(--accent-hover)}.delete-button{background-color:#e25c5c;color:#fff;font-weight:500;border-radius:4px}.delete-button:hover{background-color:#c74545}@media(max-width:480px){.action-button{flex:1}}.form-buttons{display:flex;gap:10px;width:100%}.form-buttons button{flex:1}.create-form-button{background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;padding:10px;cursor:pointer;font-weight:500;transition:background-color .2s}.create-form-button:hover{background-color:var(--accent-hover)}.cancel-button{background-color:#888;color:#fff;border:none;border-radius:4px;padding:10px;cursor:pointer;font-weight:500;transition:background-color .2s}.cancel-button:hover{background-color:#666}.add-button{display:flex;align-items:center;justify-content:center;background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;padding:10px;margin-top:15px;width:100%;cursor:pointer;font-weight:500;transition:background-color .2s,transform .1s}.add-button:hover{background-color:var(--accent-hover);transform:translateY(-1px)}.add-button:active{transform:translateY(0)}.add-button-icon{margin-right:8px;font-size:1.2em}.delete-confirmation{text-align:center;padding:20px 0}.delete-confirmation p{margin:0 0 15px;color:var(--text-primary);font-size:1rem}.delete-warning{color:#e25c5c!important;font-weight:500;font-size:.9rem!important}.modal-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.modal-actions button{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s;min-width:80px}.delete-confirm-button{background-color:#e25c5c;color:#fff}.delete-confirm-button:hover{background-color:#c74545}.list-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.edit-toggle-button{background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;padding:6px 12px;cursor:pointer;font-weight:500;transition:background-color .2s}.edit-toggle-button:hover{background-color:var(--accent-hover)}.delete-x-button{background-color:#e25c5c;color:#fff;border-radius:4px;min-width:28px;height:28px;font-weight:700;line-height:1}.delete-x-button:hover{background-color:#c74545}.App{background-color:var(--bg-primary);min-height:100vh;display:flex;color:var(--text-primary);flex-direction:column}.content-container{margin-top:60px;padding:20px;flex-grow:1;width:100%;max-width:1200px;margin-left:auto;margin-right:auto}.header{position:fixed;top:0;left:0;right:0;height:60px;background-color:var(--bg-secondary);display:flex;align-items:center;justify-content:space-between;padding:0 20px;box-shadow:0 2px 5px #0003;z-index:1000}.header h1{font-size:1.5rem;margin:0}.header-title{font-size:1.5rem;margin:0;color:var(--text-primary);text-decoration:none;font-weight:600}.header-nav,.header-left{display:flex;align-items:center}.nav-button{background:none;border:none;color:var(--text-primary);margin-left:15px;padding:8px 12px;cursor:pointer;font-size:1rem;transition:color .3s ease}.back-button{display:flex;align-items:center;gap:5px}.btn{display:inline-block;background-color:var(--accent-color);color:#fff;padding:10px 15px;border-radius:4px;border:none;cursor:pointer;font-weight:500;text-align:center;text-decoration:none;transition:background-color .3s,transform .2s}.btn:hover{background-color:var(--accent-hover);transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-secondary{background-color:var(--bg-elevated);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--bg-secondary)}.card{background-color:var(--bg-secondary);border-radius:8px;padding:15px;margin-bottom:15px;box-shadow:0 2px 10px #0000001a}.form-group{margin-bottom:15px}.form-label{display:block;margin-bottom:5px;font-weight:500;color:var(--text-secondary)}.form-control{width:100%;padding:10px;background-color:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;transition:border-color .3s}.form-control:focus{outline:none;border-color:var(--accent-color)}.container{width:100%;padding:0 15px;margin:0 auto}.row{display:flex;flex-wrap:wrap;margin:0 -15px}.col{flex:1;padding:0 15px}@media(max-width:768px){.content-container{padding:15px}.row{flex-direction:column}.col{width:100%;margin-bottom:15px}.header{padding:0 15px}}@supports (-webkit-touch-callout: none){input,button,select,textarea{font-size:16px}.btn{padding:12px 15px}.header{padding-top:env(safe-area-inset-top);height:calc(60px + env(safe-area-inset-top))}.content-container{margin-top:calc(60px + env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom)}}.exercise-container{background-color:var(--bg-secondary);display:grid;justify-content:center;border-radius:8px;padding:10px;margin:0 auto 10px;box-shadow:0 2px 5px #0000001a;max-width:800px;width:100%}.exercise-heading{font-size:1.2rem;font-weight:600;color:#fff;text-align:center}.exercise-subtitle{font-size:1rem;text-align:center;color:var(--accent-color)}.set-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;justify-content:center;flex-wrap:nowrap;min-width:300px}.set-number{background-color:var(--accent-color);color:#fff;padding:8px 12px;border-radius:4px;min-width:30px;text-align:center;font-weight:500}.set-row input{background-color:var(--bg-elevated);border:1px solid var(--border-color);border-radius:4px;padding:8px;width:100px;color:var(--text-primary);margin-bottom:0}.set-row input:focus{outline:none;border-color:var(--accent-color)}.set-row button{background-color:var(--bg-elevated);border:1px solid var(--border-color);color:#f44;border-radius:4px;padding:8px 12px;cursor:pointer;transition:all .2s ease}.set-row button:hover{background-color:#f44;color:#fff;border-color:#f44}.add-set-button{background-color:var(--bg-elevated);border:1px solid var(--border-color);color:var(--text-primary);border-radius:4px;padding:8px 12px;cursor:pointer;transition:all .2s ease;margin:0 auto;display:block}.workout-header{margin-bottom:30px;text-align:center;max-width:800px;margin-left:auto;margin-right:auto}.Session{display:flex;flex-direction:column;align-items:center;width:100%}.create-form-container{background-color:var(--bg-secondary);border-radius:8px;padding:20px;margin:0 auto 20px;box-shadow:0 2px 5px #0000001a;max-width:500px;width:100%}.create-form-container h2{color:var(--accent-color);text-align:center;margin-bottom:5px;font-size:1.5rem}.create-form{display:flex;flex-direction:column;gap:15px}.form-field{display:flex;flex-direction:column;gap:5px}.form-field label{color:var(--text-secondary);font-weight:500}.form-field input[type=text],.form-field input[type=number]{background-color:var(--bg-elevated);border:1px solid var(--border-color);border-radius:4px;padding:8px 12px;color:var(--text-primary);width:100%}.form-field input[type=checkbox]{width:20px;height:20px;margin-right:8px}.checkbox-field{display:flex;align-items:center;margin-bottom:5px;cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;padding:8px 12px;background-color:var(--bg-elevated);border:1px solid var(--border-color);border-radius:4px;transition:border-color .3s}.checkbox-field input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin-right:10px;border:2px solid var(--border-color);border-radius:4px;background-color:var(--bg-primary);cursor:pointer;position:relative;vertical-align:middle;transition:background-color .3s,border-color .3s}.checkbox-field input[type=checkbox]:checked{background-color:var(--accent-color);border-color:var(--accent-color)}.checkbox-field input[type=checkbox]:checked:after{content:"✓";position:absolute;color:#fff;font-size:14px;left:4px;top:-1px}.checkbox-field label{color:var(--text-primary);font-weight:400;cursor:pointer;flex:1}.create-form-error{color:#f44;text-align:center;margin-top:10px}.password-field .password-input-container{position:relative;display:flex;align-items:center}.password-field input{padding-right:40px;width:100%}.password-toggle-button{position:absolute;right:8px;background:none;border:none;cursor:pointer;padding:4px 8px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.password-toggle-button:hover{color:var(--text-primary)}.draggable-container{position:relative}.draggable-item{position:relative;margin-bottom:4px}.draggable-select-line{position:relative;display:flex;align-items:center;width:100%}.drag-handle-inline{display:inline-flex;align-items:center;justify-content:center;cursor:grab;color:#666;font-size:16px;touch-action:none;border-radius:4px;background-color:#0000000d;min-width:32px;height:32px}.drag-handle-inline:hover{opacity:1;color:#333;background-color:#0000001a;border-color:#0000001a}.drag-handle-inline:active{cursor:grabbing;background-color:#00000026}.exercise-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.reorder-button{background:#f8f9fa;padding:6px 8px;color:#495057;transition:all .2s ease}.reorder-button:hover{background:#e9ecef}.reorder-button.active{background:var(--accent-color);color:#fff}.reorder-button.active:hover{background:var(--accent-hover)}.dragging{transform:rotate(1deg);box-shadow:0 4px 12px #00000026;border-radius:4px;background:#fff;z-index:999}
