.exercise-library{padding:1.5rem;max-width:1400px;margin:0 auto}.library-header{margin-bottom:2rem}.library-title-section{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.library-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0}.library-stats{display:flex;gap:1.5rem}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-number{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.stat-label{font-size:.8rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.search-section{margin-bottom:1rem}.search-container{position:relative;max-width:500px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1.2rem;height:1.2rem;color:var(--color-text-secondary)}.search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:2px solid var(--color-border-light);border-radius:12px;font-size:1rem;background:var(--color-surface);color:var(--color-text-primary);transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-10)}.search-clear{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.5rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center}.controls-section{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.sort-container{display:flex;align-items:center;gap:.5rem}.sort-label{font-size:.9rem;color:var(--color-text-secondary);font-weight:500}.sort-select{padding:.5rem .75rem;border:1px solid var(--color-border-light);border-radius:8px;background:var(--color-surface);color:var(--color-text-primary);font-size:.9rem}.filter-summary{display:flex;align-items:center;gap:.75rem}.filter-count{font-size:.9rem;color:var(--color-text-secondary)}.clear-filters-btn,.clear-all-small{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:6px;padding:.4rem .8rem;font-size:.8rem;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease}.clear-filters-btn:hover,.clear-all-small:hover{background:var(--color-hover-overlay);color:var(--color-text-primary)}.library-content{display:grid;grid-template-columns:300px 1fr;gap:2rem}.filters-sidebar{background:var(--color-surface-elevated);border-radius:12px;padding:1.5rem;height:fit-content;max-height:calc(100vh - 200px);overflow-y:auto}.filters-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-light)}.filters-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text-primary)}.filter-group{margin-bottom:1.5rem}.filter-group-header{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;padding:.75rem 0;font-size:.95rem;font-weight:500;color:var(--color-text-primary);cursor:pointer;text-align:left}.filter-chevron{transition:transform .2s ease;font-size:.8rem;color:var(--color-text-secondary)}.filter-chevron.expanded{transform:rotate(180deg)}.filter-options{padding-top:.5rem;max-height:200px;overflow-y:auto}.filter-option{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;cursor:pointer;font-size:.9rem}.filter-option input[type=checkbox]{margin:0}.filter-label{flex:1;color:var(--color-text-primary)}.filter-count{font-size:.8rem;color:var(--color-text-secondary)}.exercises-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.exercise-card{background:var(--color-surface-elevated);border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border-light)}.exercise-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--color-shadow);border-color:var(--color-primary-20)}.exercise-card-header{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.exercise-name{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin:0;line-height:1.3}.exercise-badges{display:flex;gap:.5rem;flex-wrap:wrap}.difficulty-badge{padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500;text-transform:uppercase}.difficulty-beginner{background:var(--color-success-10);color:var(--color-success)}.difficulty-intermediate{background:var(--color-warning-10);color:var(--color-warning)}.difficulty-advanced{background:var(--color-error-10);color:var(--color-error)}.category-badge{padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500;background:var(--color-primary-10);color:var(--color-primary)}.exercise-notes{color:var(--color-text-secondary);font-size:.9rem;line-height:1.4;margin:0 0 1rem}.exercise-details{display:flex;flex-direction:column;gap:.5rem}.exercise-detail{display:flex;align-items:flex-start;gap:.5rem;font-size:.8rem}.detail-label{font-weight:500;color:var(--color-text-secondary);min-width:70px}.detail-value{color:var(--color-text-primary);line-height:1.3}.no-results{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--color-text-secondary)}.no-results-icon{font-size:3rem;margin-bottom:1rem}.no-results h3{margin:0 0 .5rem;font-size:1.2rem;color:var(--color-text-primary)}.no-results p{margin:0 0 1.5rem}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.exercise-modal{background:var(--color-surface);border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:2rem 2rem 1rem;border-bottom:1px solid var(--color-border-light)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text-primary);line-height:1.3;padding-right:1rem}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close:hover{background:var(--color-hover-overlay);color:var(--color-text-primary)}.modal-content{padding:1.5rem 2rem 2rem}.modal-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.movement-badge{padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500;background:var(--color-surface-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border)}.modal-section{margin-bottom:1.5rem}.modal-section h4{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:var(--color-text-primary)}.modal-section p{margin:0;line-height:1.5;color:var(--color-text-secondary)}.modal-details-grid{display:grid;gap:1.5rem}.modal-detail h5{margin:0 0 .75rem;font-size:.9rem;font-weight:600;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.5px}.detail-tags{display:flex;gap:.5rem;flex-wrap:wrap}.detail-tag{padding:.4rem .8rem;border-radius:8px;font-size:.8rem;font-weight:500;background:var(--color-primary-10);color:var(--color-primary)}.detail-tag.secondary{background:var(--color-surface-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border)}.detail-tag.equipment{background:var(--color-warning-10);color:var(--color-warning)}.detail-tag.accessory{background:var(--color-info-10);color:var(--color-info)}.type-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.type-badge.official{background:var(--color-success-10);color:var(--color-success)}.type-badge.custom{background:var(--color-info-10);color:var(--color-info)}.stat-separator{margin:0 .5rem;color:var(--color-text-muted)}.exercise-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.migrate-btn,.view-btn{padding:.4rem .8rem;border:none;border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.migrate-btn{flex:1;background:var(--color-warning-10);color:var(--color-warning);border:1px solid var(--color-warning-20)}.migrate-btn:hover{background:var(--color-warning-20)}.view-btn{background:var(--color-primary-10);color:var(--color-primary);border:1px solid var(--color-primary-20)}.view-btn:hover{background:var(--color-primary-20)}.migration-modal{background:var(--color-surface);border-radius:12px;max-width:800px;width:90vw;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.migration-warning{display:flex;gap:1rem;padding:1rem;background:var(--color-warning-10);border:1px solid var(--color-warning-20);border-radius:8px;margin-bottom:1.5rem}.migration-warning .warning-icon{font-size:1.5rem;flex-shrink:0}.migration-warning h4{margin:0 0 .5rem;color:var(--color-warning)}.migration-warning p{margin:0;color:var(--color-text-primary);font-size:.9rem}.migration-current{margin-bottom:1.5rem}.migration-current h4{margin:0 0 1rem;color:var(--color-text-primary);font-size:1rem}.exercise-preview{padding:1rem;border-radius:8px;border:2px solid}.exercise-preview.custom{border-color:var(--color-info-20);background:var(--color-info-5)}.exercise-preview h5{margin:0 0 .5rem;color:var(--color-text-primary);font-size:1.1rem}.exercise-preview p{margin:0 0 .75rem;color:var(--color-text-secondary);font-size:.9rem}.preview-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.migration-search{margin-bottom:1.5rem}.migration-search h4{margin:0 0 1rem;color:var(--color-text-primary);font-size:1rem}.migration-results{margin-bottom:1.5rem}.migration-results h4{margin:0 0 1rem;color:var(--color-text-primary);font-size:1rem}.exercise-list{max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px}.exercise-option{padding:1rem;border-bottom:1px solid var(--color-border);cursor:pointer;transition:all .2s ease}.exercise-option:last-child{border-bottom:none}.exercise-option:hover{background:var(--color-surface-subtle)}.exercise-option.selected{background:var(--color-primary-10);border-left:4px solid var(--color-primary)}.exercise-option-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.exercise-option h5{margin:0;color:var(--color-text-primary);font-size:1rem;font-weight:600}.exercise-option-badges{display:flex;gap:.5rem;flex-wrap:wrap}.exercise-option-notes{margin:0 0 .5rem;color:var(--color-text-secondary);font-size:.85rem}.exercise-option-instructions{margin:0;color:var(--color-text-secondary);font-size:.8rem;line-height:1.4}.exercise-option-instructions strong{color:var(--color-text-primary)}.more-results{padding:1rem;text-align:center;color:var(--color-text-secondary);font-style:italic;background:var(--color-surface-subtle);border-top:1px solid var(--color-border)}.no-results{padding:2rem;text-align:center;color:var(--color-text-secondary)}.migration-validation{margin-bottom:1.5rem;padding:1rem;background:var(--color-surface-subtle);border-radius:8px;border:1px solid var(--color-border)}.migration-validation h4{margin:0 0 1rem;color:var(--color-text-primary);font-size:1rem}.validation-warnings{margin-bottom:1rem;padding:.75rem;background:var(--color-warning-5);border:1px solid var(--color-warning-20);border-radius:6px}.warnings-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.warning-icon{font-size:1rem}.warnings-list{margin:0;padding-left:1.5rem;color:var(--color-text-primary)}.warnings-list li{margin-bottom:.25rem;font-size:.9rem}.conflict-warning{margin-bottom:1rem;padding:.75rem;background:var(--color-info-5);border:1px solid var(--color-info-20);border-radius:6px}.conflict-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.conflict-icon{font-size:1rem}.conflicts-list{margin:0 0 .5rem;padding-left:1.5rem;color:var(--color-text-primary)}.conflicts-list li{margin-bottom:.25rem;font-size:.9rem}.conflict-note{margin:0;font-size:.85rem;color:var(--color-text-secondary);font-style:italic}.migration-summary{padding:.75rem;background:var(--color-success-5);border:1px solid var(--color-success-20);border-radius:6px}.migration-summary h5{margin:0 0 .5rem;color:var(--color-text-primary);font-size:.9rem}.migration-summary ul{margin:0;padding-left:1.5rem}.migration-summary li{margin-bottom:.25rem;font-size:.85rem;color:var(--color-text-primary)}.error-message{padding:1rem;background:var(--color-error-10);border:1px solid var(--color-error-20);border-radius:8px;margin-bottom:1.5rem;color:var(--color-error)}.migration-actions{display:flex;gap:1rem;justify-content:flex-end}.cancel-btn,.confirm-btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-btn{background:var(--color-surface-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border)}.cancel-btn:hover:not(:disabled){background:var(--color-border)}.confirm-btn{background:var(--color-primary);color:var(--color-text-inverse)}.confirm-btn:hover:not(:disabled){background:var(--color-primary-dark)}.confirm-btn:disabled,.cancel-btn:disabled{opacity:.6;cursor:not-allowed}.no-match{text-align:center;padding:2rem}.no-match-icon{font-size:3rem;margin-bottom:1rem}.no-match h4{margin:0 0 1rem;color:var(--color-text-primary)}.no-match p{margin:0 0 1.5rem;color:var(--color-text-secondary);max-width:400px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.exercise-library{padding:1rem}.library-content{grid-template-columns:1fr;gap:1rem}.filters-sidebar{order:1;position:static;max-height:none;margin-bottom:1rem}.exercises-grid{grid-template-columns:1fr;order:2}.library-title-section{flex-direction:column;align-items:flex-start;gap:1rem}.controls-section{flex-direction:column;align-items:flex-start}.modal-overlay{padding:1rem}.modal-header{padding:1.5rem 1.5rem 1rem}.modal-content{padding:1rem 1.5rem 1.5rem}.migration-modal{width:95vw;max-height:85vh}.exercise-option-header{flex-direction:column;align-items:flex-start;gap:.5rem}.exercise-list{max-height:250px}.migration-actions,.exercise-actions{flex-direction:column}.migrate-btn{flex:none}.stat-item{flex-direction:row;gap:.5rem}.stat-item .stat-separator{margin:0 .25rem}}.app-footer{background:var(--color-surface);border-top:1px solid var(--color-border);padding:3rem 0 1rem;margin-top:4rem;width:100%}.footer-container{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.footer-column h4{margin-bottom:1rem;color:var(--color-text-primary);font-size:1.1rem;font-weight:600}.footer-column p{color:var(--color-text-secondary);line-height:1.6;margin:0}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-bottom:0}.footer-column a{color:var(--color-text-secondary);text-decoration:none;display:block;padding:.25rem 0;transition:color .2s}.footer-column a:hover{color:var(--color-primary)}.footer-bottom{text-align:center;padding-top:2rem;margin-top:2rem;border-top:1px solid var(--color-border);color:var(--color-text-secondary);max-width:1200px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}.footer-bottom p{margin:0;font-size:.9rem}@media (max-width: 768px){.app-footer{margin-top:3rem;padding:2rem 0 1rem}.footer-container{grid-template-columns:1fr;gap:2rem;padding:0 1rem}.footer-column{text-align:center}.footer-bottom{padding-top:1.5rem;margin-top:1.5rem;padding-left:1rem;padding-right:1rem}}:root{--color-primary: ;--color-primary-hover: ;--color-primary-light: ;--color-primary-border: ;--color-success: ;--color-success-hover: ;--color-success-light: ;--color-success-border: ;--color-warning: ;--color-warning-hover: ;--color-warning-light: ;--color-warning-border: ;--color-error: ;--color-error-hover: ;--color-error-light: ;--color-error-border: ;--color-info: ;--color-info-hover: ;--color-info-light: ;--color-info-border: ;--color-background: ;--color-surface: ;--color-surface-elevated: ;--color-overlay: ;--color-text-primary: ;--color-text-secondary: ;--color-text-muted: ;--color-text-inverse: ;--color-border: ;--color-border-light: ;--color-border-focus: ;--color-hover-overlay: ;--color-active-overlay: ;--color-disabled: ;--color-google: ;--color-google-hover: ;--color-nav-background: ;--color-card-background: ;--color-input-background: ;--color-timer-active: ;--color-progress-bar: }[data-theme=dark]{--color-primary: #646cff;--color-primary-hover: #535bf2;--color-primary-light: rgba(100, 108, 255, .1);--color-primary-border: rgba(100, 108, 255, .3);--color-success: #22c55e;--color-success-hover: #16a34a;--color-success-light: rgba(34, 197, 94, .1);--color-success-border: rgba(34, 197, 94, .3);--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-warning-light: rgba(245, 158, 11, .1);--color-warning-border: rgba(245, 158, 11, .3);--color-error: #ff6b6b;--color-error-hover: #dc2626;--color-error-light: rgba(255, 107, 107, .1);--color-error-border: rgba(255, 107, 107, .3);--color-info: #06b6d4;--color-info-hover: #0891b2;--color-info-light: rgba(6, 182, 212, .1);--color-info-border: rgba(6, 182, 212, .3);--color-background: #242424;--color-surface: #1a1a1a;--color-surface-elevated: rgba(255, 255, 255, .05);--color-overlay: rgba(0, 0, 0, .5);--color-text-primary: rgba(255, 255, 255, .87);--color-text-secondary: #666666;--color-text-muted: #888888;--color-text-inverse: #000000;--color-border: #333333;--color-border-light: rgba(255, 255, 255, .1);--color-border-focus: var(--color-primary);--color-hover-overlay: rgba(255, 255, 255, .05);--color-active-overlay: rgba(255, 255, 255, .1);--color-disabled: #374151;--color-google: #4285f4;--color-google-hover: #3367d6;--color-message-success-bg: rgba(34, 197, 94, .1);--color-message-success-border: var(--color-success-border);--color-message-success-text: var(--color-success);--color-message-error-bg: rgba(255, 107, 107, .1);--color-message-error-border: var(--color-error-border);--color-message-error-text: var(--color-error);--color-message-warning-bg: var(--color-warning-light);--color-message-warning-border: var(--color-warning-border);--color-message-warning-text: var(--color-warning);--color-message-info-bg: var(--color-info-light);--color-message-info-border: var(--color-info-border);--color-message-info-text: var(--color-info);--color-form-bg: var(--color-input-background);--color-form-border: var(--color-border);--color-form-text: var(--color-text-primary);--color-form-disabled-bg: var(--color-disabled);--color-form-disabled-border: var(--color-text-muted);--color-form-disabled-text: var(--color-text-muted);--color-select-option-bg: var(--color-surface);--color-chart-positive: var(--color-success);--color-chart-negative: var(--color-error);--color-chart-neutral: var(--color-text-muted);--color-button-danger: var(--color-error);--color-button-danger-hover: var(--color-error-hover);--color-button-info: var(--color-info);--color-button-info-hover: var(--color-info-hover);--color-loading-bg: var(--color-surface-elevated);--color-loading-border: var(--color-border-light);--color-loading-spinner: var(--color-primary);--color-timer-rest: var(--color-success);--color-timer-active: var(--color-warning);--color-timer-stop: var(--color-error);--color-status-due: var(--color-primary);--color-status-in-progress: var(--color-warning);--color-status-completed: var(--color-success);--color-nav-background: rgba(36, 36, 36, .8);--color-nav-mobile-background: #242424;--color-card-background: var(--color-white-02);--color-input-background: var(--color-white-05);--color-progress-bar: var(--color-primary);--color-white-02: rgba(255, 255, 255, .02);--color-white-05: rgba(255, 255, 255, .05);--color-white-08: rgba(255, 255, 255, .08);--color-white-10: rgba(255, 255, 255, .1);--color-white-15: rgba(255, 255, 255, .15);--color-white-20: rgba(255, 255, 255, .2);--color-white-30: rgba(255, 255, 255, .3);--color-white-50: rgba(255, 255, 255, .5);--color-white-70: rgba(255, 255, 255, .7);--color-white-80: rgba(255, 255, 255, .8);--color-white-87: rgba(255, 255, 255, .87);--color-white-90: rgba(255, 255, 255, .9);--color-black-10: rgba(0, 0, 0, .1);--color-black-40: rgba(0, 0, 0, .4);--color-google-shadow-30: rgba(66, 133, 244, .3);--color-google-shadow-40: rgba(66, 133, 244, .4);--color-orange-20: rgba(255, 165, 0, .2);--color-orange-50: rgba(255, 165, 0, .5);--color-surface-dark-95: rgba(30, 30, 30, .95);--color-success-bg-05: rgba(34, 197, 94, .05);--color-success-bg-10: rgba(34, 197, 94, .1);--color-success-bg-15: rgba(34, 197, 94, .15);--color-success-bg-20: rgba(34, 197, 94, .2);--color-success-bg-30: rgba(34, 197, 94, .3);--color-warning-bg-05: rgba(245, 158, 11, .05);--color-warning-bg-10: rgba(245, 158, 11, .1);--color-warning-bg-20: rgba(245, 158, 11, .2);--color-warning-bg-25: rgba(245, 158, 11, .25);--color-warning-bg-30: rgba(245, 158, 11, .3);--color-primary-bg-05: rgba(100, 108, 255, .05);--color-primary-bg-10: rgba(100, 108, 255, .1);--color-primary-bg-15: rgba(100, 108, 255, .15);--color-primary-bg-20: rgba(100, 108, 255, .2);--color-primary-bg-30: rgba(100, 108, 255, .3);--color-primary-bg-40: rgba(100, 108, 255, .4);--color-error-bg-05: rgba(255, 107, 107, .05);--color-error-bg-10: rgba(255, 107, 107, .1);--color-error-bg-20: rgba(255, 107, 107, .2);--color-red-bg-20: rgba(239, 68, 68, .2);--color-disabled-bg-10: rgba(156, 163, 175, .1)}[data-theme=light]{--color-primary: #646cff;--color-primary-hover: #535bf2;--color-primary-light: rgba(100, 108, 255, .15);--color-primary-border: rgba(100, 108, 255, .4);--color-success: #16a34a;--color-success-hover: #15803d;--color-success-light: rgba(34, 197, 94, .15);--color-success-border: rgba(34, 197, 94, .4);--color-warning: #d97706;--color-warning-hover: #b45309;--color-warning-light: rgba(245, 158, 11, .15);--color-warning-border: rgba(245, 158, 11, .4);--color-error: #dc2626;--color-error-hover: #b91c1c;--color-error-light: rgba(220, 38, 38, .15);--color-error-border: rgba(220, 38, 38, .4);--color-info: #0891b2;--color-info-hover: #0e7490;--color-info-light: rgba(6, 182, 212, .15);--color-info-border: rgba(6, 182, 212, .4);--color-background: #f5f5f5;--color-surface: #ffffff;--color-surface-elevated: rgba(0, 0, 0, .02);--color-overlay: rgba(0, 0, 0, .4);--color-text-primary: rgba(0, 0, 0, .87);--color-text-secondary: #666666;--color-text-muted: #999999;--color-text-inverse: #ffffff;--color-border: #e0e0e0;--color-border-light: rgba(0, 0, 0, .08);--color-border-focus: var(--color-primary);--color-hover-overlay: rgba(0, 0, 0, .04);--color-active-overlay: rgba(0, 0, 0, .08);--color-disabled: #e5e7eb;--color-google: #4285f4;--color-google-hover: #3367d6;--color-message-success-bg: rgba(34, 197, 94, .15);--color-message-success-border: var(--color-success-border);--color-message-success-text: var(--color-success);--color-message-error-bg: rgba(220, 38, 38, .15);--color-message-error-border: var(--color-error-border);--color-message-error-text: var(--color-error);--color-message-warning-bg: var(--color-warning-light);--color-message-warning-border: var(--color-warning-border);--color-message-warning-text: var(--color-warning);--color-message-info-bg: var(--color-info-light);--color-message-info-border: var(--color-info-border);--color-message-info-text: var(--color-info);--color-form-bg: var(--color-input-background);--color-form-border: var(--color-border);--color-form-text: var(--color-text-primary);--color-form-disabled-bg: var(--color-disabled);--color-form-disabled-border: var(--color-text-muted);--color-form-disabled-text: var(--color-text-muted);--color-select-option-bg: var(--color-surface);--color-chart-positive: var(--color-success);--color-chart-negative: var(--color-error);--color-chart-neutral: var(--color-text-muted);--color-button-danger: var(--color-error);--color-button-danger-hover: var(--color-error-hover);--color-button-info: var(--color-info);--color-button-info-hover: var(--color-info-hover);--color-loading-bg: var(--color-surface-elevated);--color-loading-border: var(--color-border-light);--color-loading-spinner: var(--color-primary);--color-timer-rest: var(--color-success);--color-timer-active: var(--color-warning);--color-timer-stop: var(--color-error);--color-status-due: var(--color-primary);--color-status-in-progress: var(--color-warning);--color-status-completed: var(--color-success);--color-nav-background: rgba(255, 255, 255, .9);--color-nav-mobile-background: #ffffff;--color-card-background: var(--color-black-02);--color-input-background: var(--color-black-05);--color-progress-bar: var(--color-primary);--color-white-02: rgba(255, 255, 255, .02);--color-white-05: rgba(255, 255, 255, .05);--color-white-08: rgba(255, 255, 255, .08);--color-white-10: rgba(255, 255, 255, .1);--color-white-15: rgba(255, 255, 255, .15);--color-white-20: rgba(255, 255, 255, .2);--color-white-30: rgba(255, 255, 255, .3);--color-white-50: rgba(255, 255, 255, .5);--color-white-70: rgba(255, 255, 255, .7);--color-white-80: rgba(255, 255, 255, .8);--color-white-87: rgba(255, 255, 255, .87);--color-white-90: rgba(255, 255, 255, .9);--color-black-02: rgba(0, 0, 0, .02);--color-black-05: rgba(0, 0, 0, .05);--color-black-08: rgba(0, 0, 0, .08);--color-black-10: rgba(0, 0, 0, .1);--color-black-15: rgba(0, 0, 0, .15);--color-black-20: rgba(0, 0, 0, .2);--color-black-30: rgba(0, 0, 0, .3);--color-black-40: rgba(0, 0, 0, .4);--color-black-50: rgba(0, 0, 0, .5);--color-black-60: rgba(0, 0, 0, .6);--color-black-70: rgba(0, 0, 0, .7);--color-black-80: rgba(0, 0, 0, .8);--color-black-87: rgba(0, 0, 0, .87);--color-black-90: rgba(0, 0, 0, .9);--color-google-shadow-30: rgba(66, 133, 244, .3);--color-google-shadow-40: rgba(66, 133, 244, .4);--color-orange-20: rgba(217, 119, 6, .2);--color-orange-50: rgba(217, 119, 6, .5);--color-surface-dark-95: rgba(255, 255, 255, .95);--color-success-bg-05: rgba(34, 197, 94, .05);--color-success-bg-10: rgba(34, 197, 94, .1);--color-success-bg-15: rgba(34, 197, 94, .15);--color-success-bg-20: rgba(34, 197, 94, .2);--color-success-bg-30: rgba(34, 197, 94, .3);--color-warning-bg-05: rgba(217, 119, 6, .05);--color-warning-bg-10: rgba(217, 119, 6, .1);--color-warning-bg-20: rgba(217, 119, 6, .2);--color-warning-bg-25: rgba(217, 119, 6, .25);--color-warning-bg-30: rgba(217, 119, 6, .3);--color-primary-bg-05: rgba(100, 108, 255, .05);--color-primary-bg-10: rgba(100, 108, 255, .1);--color-primary-bg-15: rgba(100, 108, 255, .15);--color-primary-bg-20: rgba(100, 108, 255, .2);--color-primary-bg-30: rgba(100, 108, 255, .3);--color-primary-bg-40: rgba(100, 108, 255, .4);--color-error-bg-05: rgba(220, 38, 38, .05);--color-error-bg-10: rgba(220, 38, 38, .1);--color-error-bg-20: rgba(220, 38, 38, .2);--color-red-bg-20: rgba(220, 38, 38, .2);--color-disabled-bg-10: rgba(156, 163, 175, .1)}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text-primary);background-color:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}[data-theme=dark]{color-scheme:dark}[data-theme=light]{color-scheme:light}a{font-weight:500;color:var(--color-primary);text-decoration:inherit}a:hover{color:var(--color-primary-hover)}html{overflow-x:hidden}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#root{width:100%;min-height:100vh;overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--color-surface);color:var(--color-text-primary);cursor:pointer;transition:all .25s}button:hover{background-color:var(--color-hover-overlay);border-color:var(--color-primary)}button:focus,button:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.logo{height:64px;width:auto}.nav-bar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-bottom:1px solid var(--color-border);margin-bottom:2rem;background-color:var(--color-nav-background);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:1000;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding-left:calc(50vw - 50% + 2rem);padding-right:calc(50vw - 50% + 2rem)}.nav-brand{display:flex;align-items:center;gap:1rem}.nav-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text-primary);font-variant-caps:all-small-caps}.mobile-menu-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;gap:4px}.hamburger-line{width:24px;height:3px;background-color:var(--color-text-primary);border-radius:2px;transition:all .3s ease}.nav-links{display:flex;gap:.5rem;list-style:none;margin:0;padding-left:16px;padding-right:16px}.nav-link{text-decoration:none;padding:.75rem 1rem;border-radius:8px;transition:all .25s ease;font-weight:500;position:relative;color:var(--color-text-secondary);display:flex;align-items:center;gap:.5rem}.nav-link-icon{display:flex;align-items:center;opacity:.8;transition:opacity .25s ease}.nav-link-text{white-space:nowrap}.nav-link:hover{background-color:var(--color-primary-light);color:var(--color-text-primary);transform:translateY(-1px)}.nav-link:hover .nav-link-icon{opacity:1}.nav-link-active{background-color:var(--color-primary-light)!important;color:var(--color-primary)!important}.nav-auth{margin-left:auto;display:flex;align-items:center;gap:.75rem;position:relative}.nav-auth-mobile,.mobile-sync-button{display:none}.sync-button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8rem;font-weight:500;border-radius:6px;border:1px solid var(--color-border-light);background-color:var(--color-surface-elevated);color:var(--color-text-primary);cursor:pointer;transition:all .2s ease}.sync-button:disabled{cursor:not-allowed;opacity:.6}.sync-button:hover:not(:disabled){background-color:var(--color-hover-overlay);border-color:var(--color-border)}.sync-button-desktop{position:relative}.sync-status-desktop{position:absolute;top:-2rem;right:0;font-size:.85rem;font-weight:500;padding:.25rem .5rem;border-radius:4px;background-color:var(--color-black-10);white-space:nowrap;z-index:10}.sync-icon-spinning{animation:spin 1s linear infinite}@media (max-width: 1024px) and (min-width: 769px){.nav-link{padding:.6rem .8rem;font-size:.9rem}.nav-link-text{display:none}.nav-link-icon{opacity:1}}@media (max-width: 768px){.nav-bar{padding:1rem;position:relative;padding-left:calc(50vw - 50% + 1rem);padding-right:calc(50vw - 50% + 1rem)}.nav-title{font-size:1.25rem}.mobile-menu-toggle{display:flex}.nav-links{position:absolute;top:100%;left:1rem;right:1rem;background-color:var(--color-nav-mobile-background);flex-direction:column;padding:1rem;gap:0;border-top:1px solid var(--color-border);border-radius:0 0 12px 12px;display:none;box-shadow:0 4px 6px var(--color-overlay)}.nav-links-mobile-open{display:flex;animation:mobileMenuFadeIn .2s ease-out}.nav-links-mobile-open li{animation:mobileMenuItemFadeIn .2s ease-out}.nav-links li{width:100%}.nav-link{width:calc(100% - 2rem);padding:1rem;border-radius:8px;margin:0 auto .5rem;text-align:center;border:1px solid transparent;justify-content:center}.nav-link:hover{border-color:var(--color-primary);background-color:var(--color-primary-light)}.nav-auth{display:none}.nav-auth-mobile{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-light);display:flex!important;justify-content:center;align-items:center}.mobile-sync-button{display:flex!important;flex-direction:column;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-light)}.sync-button-mobile-style{width:100%;padding:.75rem 1rem;font-size:.9rem;justify-content:center;background-color:var(--color-surface-elevated);border-color:var(--color-border-light);color:var(--color-text-primary)}.sync-status-mobile{font-size:.8rem;font-weight:500;padding:.25rem .75rem;text-align:center;margin-top:.5rem}}@media (max-width: 480px){.nav-bar{padding:.75rem;padding-left:calc(50vw - 50% + .75rem);padding-right:calc(50vw - 50% + .75rem)}.logo{height:48px}.nav-title{font-size:1.125rem}.nav-brand{gap:.75rem}}.card{background:var(--color-card-background);border-radius:12px;padding:1.5rem;margin:1rem 0;border:1px solid var(--color-border-light)}.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.btn-primary{background-color:var(--color-primary);color:var(--color-text-inverse);border:1px solid var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-secondary{background-color:transparent;border:1px solid var(--color-primary);color:var(--color-primary)}.btn-secondary:hover{background-color:var(--color-primary);color:var(--color-text-inverse)}.btn-danger{background-color:var(--color-error);color:var(--color-text-inverse);border:1px solid var(--color-error)}.btn-danger:hover{background-color:var(--color-error-hover);border-color:var(--color-error-hover)}.btn-success{background-color:var(--color-success);color:var(--color-text-inverse);border:1px solid var(--color-success)}.btn-success:hover{background-color:var(--color-success-hover);border-color:var(--color-success-hover)}.btn-info{background-color:var(--color-info);color:var(--color-text-inverse);border:1px solid var(--color-info)}.btn-info:hover{background-color:var(--color-info-hover);border-color:var(--color-info-hover)}button,.btn-primary,.btn-secondary,.btn-danger,.btn-success,.btn-info{padding:.6em 1em;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}button:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled,.btn-success:disabled{opacity:.5;cursor:not-allowed}.btn-dashed{background-color:transparent;border:2px dashed var(--color-primary);color:var(--color-primary)}.btn-dashed:hover{background-color:var(--color-primary-light);border-color:var(--color-primary-hover);color:var(--color-primary-hover)}input,textarea,select{background-color:var(--color-input-background);border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:4px;padding:.5rem}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-border-focus)}@media (max-width: 768px){.card{padding:1rem;margin:.5rem 0}div[style*="maxWidth: '900px'"]{max-width:100%!important;padding:0 .5rem}div[style*="display: 'flex'"]{flex-wrap:wrap!important}input[type=number],input[type=text],textarea{min-width:40px!important;max-width:100px!important}button{min-height:44px;min-width:44px;padding:.75rem 1rem;font-size:.9rem}button{white-space:nowrap}}@media (max-width: 480px){.card{padding:.75rem;border-radius:8px}input[type=number]{width:45px!important;min-width:45px!important;padding:.5rem .25rem!important;font-size:.8rem!important}input[type=text],textarea{min-width:60px!important}button{font-size:.8rem;padding:.6rem .8rem}div[style*="display: 'flex'"][style*="gap: '0.5rem'"]{gap:.25rem!important}}@keyframes slideUp{0%{transform:translate(-50%) translateY(100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@keyframes mobileMenuFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileMenuItemFadeIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.initial-loading-overlay{-webkit-user-select:none;user-select:none;pointer-events:none}.loading-spinner{will-change:transform}.initial-loading-overlay *{box-sizing:border-box}
