*{box-sizing:border-box;margin:0;padding:0}:root{--text:#333;--text-secondary:#666;--text-muted:#999;--bg:#f5f5f5;--bg-card:#fff;--border:#e0e0e0;--primary:#1976d2;--primary-light:#1976d21a;--success:#4caf50;--warning:#ff9800;--error:#f44336;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;--heading:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;--mono:"SF Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;font:16px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{height:100%}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}.layout{background-color:#f5f5f5;flex-direction:column;min-height:100dvh;display:flex}.header{z-index:100;background-color:#fff;border-bottom:1px solid #e0e0e0;flex-direction:column;padding:12px 16px;display:flex;position:sticky;top:0}.headerRow{justify-content:space-between;align-items:center;gap:8px;display:flex}.headerMonthLabel{text-align:center;color:#333;white-space:nowrap;font-size:20px;font-weight:700;line-height:1}.headerMonthNav{cursor:pointer;color:#333;background:#f0f0f0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:18px;line-height:1;transition:background-color .2s;display:flex}.headerMonthNav:hover{background-color:#e0e0e0}.headerMonthLabelInline{text-overflow:ellipsis;min-width:0;display:none;overflow:hidden}.headerMonthLabelBlock{padding-top:8px}.headerMonthLabelBlock:not(.withNav){display:block}.headerMonthLabelBlock.withNav{justify-content:center;align-items:center;gap:6px;display:flex}@media (width>=420px){.headerMonthLabelInline{display:block}.headerMonthLabelInline.withNav{align-items:center;gap:6px;display:flex}.headerMonthLabelBlock,.headerMonthLabelBlock.withNav,.headerMonthLabelBlock:not(.withNav){display:none}}.modeSelector{background-color:#f0f0f0;border-radius:12px;justify-self:start;gap:4px;padding:4px;display:flex}.modeButton{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:40px;height:36px;font-size:18px;transition:background-color .2s,transform .1s;display:flex}.modeButton:hover{background-color:#e0e0e0}.modeButton:active{transform:scale(.95)}.modeButton.active{background-color:#fff;box-shadow:0 1px 3px #0000001a}.viewToggle{background-color:#f0f0f0;border-radius:12px;justify-self:end;gap:4px;padding:4px;display:flex}.viewButton{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:40px;height:36px;font-size:18px;transition:background-color .2s,transform .1s;display:flex}.viewButton:hover{background-color:#e0e0e0}.viewButton:active{transform:scale(.95)}.viewButton.active{background-color:#fff;box-shadow:0 1px 3px #0000001a}.main{flex:1;padding-bottom:56px}.bottomBar{height:48px;padding-bottom:env(safe-area-inset-bottom);z-index:100;background-color:#fff;border-top:1px solid #e0e0e0;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottomBarButton{cursor:pointer;color:#666;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 16px;font-size:11px;text-decoration:none;transition:color .2s;display:flex}.bottomBarButton:hover,.bottomBarButton.active{color:#1976d2}.bottomBarButton .icon{font-size:20px}.dateStrip{background-color:#fff;border-bottom:1px solid #e0e0e0;align-items:center;gap:8px;padding:12px 16px;display:flex;overflow:hidden}.dateNavButton{cursor:pointer;color:#666;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:background-color .2s;display:flex}.dateNavButton:hover{background-color:#f0f0f0}.dateNavButton:active{background-color:#e0e0e0}.dateList{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;flex:1;gap:8px;padding:4px 0;display:flex;overflow-x:auto}.dateList::-webkit-scrollbar{display:none}.dateItem{cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;min-width:48px;height:60px;padding:8px 4px;transition:background-color .2s,transform .1s;display:flex}.dateItem:hover{background-color:#f0f0f0}.dateItem:active{transform:scale(.95)}.dateItem.selected{color:#fff;background-color:#1976d2}.dateItem.today:not(.selected){border:2px solid #1976d2}.dayName{text-transform:uppercase;color:#888;margin-bottom:4px;font-size:11px;font-weight:500}.dateItem.selected .dayName{color:#fffc}.dayNumber{font-size:18px;font-weight:600}.setRow{background-color:var(--bg-card,#fff);border-radius:8px;align-items:center;gap:12px;margin-bottom:4px;padding:8px 12px;transition:opacity .2s;display:flex}.setNumber{width:24px;height:24px;color:var(--text-muted,#999);background-color:var(--bg,#f5f5f5);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.setValues{flex:1;align-items:center;gap:8px;display:flex}.setValue{border:1px solid var(--border,#e0e0e0);color:var(--text,#333);cursor:pointer;text-align:center;background:0 0;border-radius:6px;min-width:70px;padding:6px 12px;font-size:16px;font-weight:500;transition:background-color .2s,border-color .2s}.setValue:hover{background-color:var(--bg,#f5f5f5);border-color:var(--primary,#1976d2)}.setValue.weight{min-width:80px}.setMultiplier{color:var(--text-muted,#999);font-size:14px}.setInput{border:2px solid var(--primary,#1976d2);text-align:center;border-radius:6px;outline:none;width:70px;padding:6px 8px;font-size:16px;font-weight:500}.setInput:focus{box-shadow:0 0 0 3px var(--primary-light,#1976d21a)}.setActions{gap:4px;display:flex}.deleteButton{cursor:pointer;width:32px;height:32px;color:var(--text-muted,#999);background-color:#0000;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:16px;transition:background-color .2s,transform .1s;display:flex}.deleteButton:hover{background-color:var(--error,#f44336);color:#fff}.deleteButton:active{transform:scale(.95)}.exerciseCard{background-color:var(--bg-card,#fff);border-radius:12px;margin-bottom:12px;overflow:hidden;box-shadow:0 1px 3px #00000014}.exerciseHeader{cursor:pointer;justify-content:space-between;align-items:center;padding:16px;transition:background-color .2s;display:flex}.exerciseHeader:hover{background-color:#00000005}.exerciseInfo{flex-direction:column;gap:4px;display:flex}.exerciseName{color:var(--text,#333);font-size:18px;font-weight:600;text-decoration:none}.exerciseName:hover{color:var(--primary,#1976d2);text-decoration:underline}.exerciseCategory{color:var(--text-muted,#999);text-transform:capitalize;font-size:13px}.exerciseMeta{align-items:center;gap:12px;display:flex}.exerciseStats{color:var(--text-secondary,#666);font-size:14px}.exerciseVolume{color:var(--primary,#1976d2);font-size:14px;font-weight:500}.expandButton{width:28px;height:28px;color:var(--text-muted,#999);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:12px;transition:background-color .2s;display:flex}.expandButton:hover{background-color:var(--bg,#f5f5f5)}.exerciseContent{padding:0 16px 16px}.noSets{text-align:center;color:var(--text-muted,#999);padding:16px 0;font-size:14px}.setsList{margin-bottom:12px}.exerciseActions{gap:8px;display:flex}.addSetButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:1;padding:10px 16px;font-size:14px;font-weight:500;transition:background-color .2s}.addSetButton:hover{background-color:#1565c0}.removeExerciseButton{color:var(--text-muted,#999);border:1px solid var(--border,#e0e0e0);cursor:pointer;background-color:#0000;border-radius:8px;padding:10px 16px;font-size:14px;transition:all .2s}.removeExerciseButton:hover{background-color:var(--error,#f44336);color:#fff;border-color:var(--error,#f44336)}.statsButton{border:1px solid var(--border,#e0e0e0);cursor:pointer;background-color:#0000;border-radius:8px;justify-content:center;align-items:center;padding:10px 14px;font-size:16px;text-decoration:none;transition:all .2s;display:flex}.statsButton:hover{background-color:var(--primary,#1976d2);border-color:var(--primary,#1976d2)}.stateContainer{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.stateIcon{opacity:.7;margin-bottom:16px;font-size:48px}.stateIcon.error{color:var(--error,#f44336)}.stateMessage{color:var(--text-secondary,#666);max-width:280px;margin-bottom:24px;font-size:16px}.loadingSpinner{border:3px solid var(--border,#e0e0e0);border-top-color:var(--primary,#1976d2);border-radius:50%;width:40px;height:40px;margin-bottom:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.retryButton,.actionButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-size:16px;font-weight:500;transition:background-color .2s;display:inline-flex}.retryButton:hover,.actionButton:hover{background-color:#1565c0}.retryButton:active,.actionButton:active{transform:scale(.98)}.fab{color:#fff;cursor:pointer;z-index:100;background-color:#1976d2;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;font-weight:300;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:60px;right:20px;box-shadow:0 4px 12px #1976d266}.fab:hover{transform:scale(1.05);box-shadow:0 6px 16px #1976d280}.fab:active{transform:scale(.95)}.fab.fabInline{margin:20px auto;display:flex;position:relative;bottom:auto;right:auto}.bottomSheetOverlay{z-index:200;background-color:#00000080;animation:.2s ease-out fabFadeIn;position:fixed;inset:0}@keyframes fabFadeIn{0%{opacity:0}to{opacity:1}}.bottomSheet{z-index:201;background-color:#fff;border-radius:16px 16px 0 0;padding:16px 16px 32px;animation:.3s ease-out fabSlideUp;position:fixed;bottom:0;left:0;right:0}@keyframes fabSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bottomSheetHandle{background-color:#ddd;border-radius:2px;width:40px;height:4px;margin:0 auto 16px}.bottomSheetTitle{color:#333;text-align:center;margin-bottom:16px;font-size:18px;font-weight:600}.bottomSheetOptions{flex-direction:column;gap:8px;display:flex}.bottomSheetOption{color:#333;cursor:pointer;background:#f5f5f5;border:none;border-radius:12px;align-items:center;gap:12px;width:100%;padding:16px;font-size:16px;transition:background-color .2s;display:flex}.bottomSheetOption:hover{background-color:#e8e8e8}.bottomSheetOptionIcon{font-size:24px}.bottomSheetCancel{color:#666;cursor:pointer;background:0 0;border:1px solid #e0e0e0;border-radius:12px;width:100%;margin-top:16px;padding:16px;font-size:16px;transition:background-color .2s}.bottomSheetCancel:hover{background-color:#f5f5f5}.pageContainer{padding:16px}.pageTitle{color:#333;margin-bottom:16px;font-size:24px;font-weight:600}.emptyState{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.emptyStateIcon{opacity:.5;margin-bottom:16px;font-size:64px}.emptyStateText{color:#666;max-width:280px;margin-bottom:24px;font-size:16px}.emptyStateButton{color:#fff;cursor:pointer;background-color:#1976d2;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-size:16px;font-weight:500;transition:background-color .2s;display:inline-flex}.emptyStateButton:hover{background-color:#1565c0}.section{margin-bottom:24px}.sectionHeader{cursor:pointer;background-color:#fff;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.sectionTitle{color:#333;align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.sectionIcon{font-size:20px}.sectionContent{background-color:#fff;border-radius:0 0 8px 8px;padding:16px}.placeholder{color:#999;font-size:14px;font-style:italic}.workoutNote{background-color:var(--bg-card,#fff);color:var(--text-secondary,#666);border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-style:italic}.exercisesList{margin-bottom:16px}.addExerciseButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:100%;padding:14px 24px;font-size:16px;font-weight:500;text-decoration:none;transition:background-color .2s;display:flex}.addExerciseButton:hover{background-color:#1565c0;text-decoration:none}.habitCard{background:var(--bg-card,#fff);border-left:4px solid var(--habit-color,var(--primary,#1976d2));cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;margin-bottom:12px;padding:16px;transition:all .2s;box-shadow:0 1px 3px #00000014}.habitCard:hover{box-shadow:0 2px 8px #0000001f}.habitCard.completed{background:linear-gradient(135deg,#4caf5014 0%,#4caf500a 100%)}.habitCard.readOnly{opacity:.86}.habitCardMain{justify-content:space-between;align-items:center;gap:12px;display:flex}.habitInfo{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.habitColor{border-radius:50%;flex-shrink:0;width:12px;height:12px}.habitText{flex-direction:column;min-width:0;display:flex}.habitName{color:var(--text,#333);white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:500;overflow:hidden}.habitDescription{color:var(--text-secondary,#666);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.habitStatus{flex-shrink:0}.habitCheckbox{border:2px solid var(--border,#e0e0e0);color:#fff;cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:18px;transition:all .2s;display:flex}.habitCheckbox.checked{background:var(--success,#4caf50);border-color:var(--success,#4caf50)}.habitCheckbox:disabled{cursor:default;opacity:.75}.habitNumericInput{align-items:center;gap:4px;display:flex}.habitValueButton{border:1px solid var(--border,#e0e0e0);background:var(--bg,#f5f5f5);min-width:48px;color:var(--text,#333);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:16px;font-weight:500;transition:all .2s}.habitValueButton:hover{border-color:var(--primary,#1976d2)}.habitValueInput{border:2px solid var(--primary,#1976d2);text-align:center;width:60px;color:var(--text,#333);border-radius:8px;padding:6px 8px;font-size:16px;font-weight:500}.habitValueInput:focus{outline:none}.habitValueReadonly{border:1px solid var(--border,#e0e0e0);min-width:48px;color:var(--text-secondary,#666);text-align:center;background:#f4f4f4;border-radius:8px;padding:6px 12px;font-size:16px;font-weight:500}.habitGoal{color:var(--text-secondary,#666);font-size:14px}.habitStreak{border-top:1px solid var(--border,#e0e0e0);color:var(--text-secondary,#666);margin-top:12px;padding-top:10px;font-size:13px}.dayHabitsPage{flex-direction:column;min-height:100%;padding:16px 16px 80px;display:flex}.habitsHeader{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.habitsProgress{color:var(--text-secondary,#666);font-size:14px;font-weight:500}.addHabitLink{color:var(--primary,#1976d2);font-size:14px;font-weight:500;text-decoration:none}.addHabitLink:hover{text-decoration:underline}.habitsList{flex:1}.inactiveNote{text-align:center;color:var(--text-muted,#999);margin-top:16px;font-size:13px}.logEntryCard{background:var(--bg-card,#fff);cursor:pointer;border-radius:12px;margin-bottom:12px;padding:16px;transition:all .2s;position:relative;box-shadow:0 1px 3px #00000014}.logEntryCard:hover{box-shadow:0 2px 8px #0000001f}.logEntryCard:active{transform:scale(.99)}.logEntryHeader{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.logEntryCategory{align-items:center;gap:6px;display:flex}.logEntryCategoryIcon{font-size:16px}.logEntryCategoryName{font-size:13px;font-weight:500}.logEntryTime{color:var(--text-muted,#999);font-size:12px}.logEntryTitle{color:var(--text,#333);margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.3}.logEntryContent{color:var(--text-secondary,#666);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.logEntryTags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.logEntryTag{background-color:var(--bg-hover,#f0f0f0);color:var(--text-secondary,#666);border-radius:12px;padding:4px 10px;font-size:12px}.logEntryDeleteButton{background:var(--bg-hover,#f5f5f5);width:28px;height:28px;color:var(--text-muted,#999);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:none;position:absolute;top:12px;right:12px}.logEntryCard:hover .logEntryDeleteButton{display:flex}.logEntryDeleteButton:hover{color:#dc2626;background-color:#fef2f2}.dayLogPage{flex-direction:column;min-height:100%;padding:16px 16px 80px;display:flex}.logFilters{margin-bottom:16px}.logSearchInput{border:1px solid var(--border,#e0e0e0);background-color:var(--bg-card,#fff);border-radius:10px;width:100%;margin-bottom:12px;padding:12px 16px;font-size:16px}.logSearchInput:focus{border-color:var(--primary,#1976d2);box-shadow:0 0 0 3px var(--primary-light,#1976d21a);outline:none}.logCategoryFilter{scrollbar-width:none;gap:8px;padding-bottom:8px;display:flex;overflow-x:auto}.logCategoryFilter::-webkit-scrollbar{display:none}.logCategoryButton{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text-secondary,#666);white-space:nowrap;cursor:pointer;border-radius:20px;flex-shrink:0;align-items:center;gap:6px;padding:8px 14px;font-size:14px;transition:all .2s;display:flex}.logCategoryButton:hover{border-color:var(--cat-color,var(--primary,#1976d2));color:var(--cat-color,var(--primary,#1976d2))}.logCategoryButton.active{background-color:var(--cat-color,var(--primary,#1976d2));border-color:var(--cat-color,var(--primary,#1976d2));color:#fff}.logEntriesList{flex:1}.addLogButton{text-align:center;color:var(--primary,#1976d2);margin-top:12px;padding:12px 20px;font-size:14px;font-weight:500;text-decoration:none;display:block}.addLogButton:hover{text-decoration:underline}.dayAllPage{padding:16px 16px 80px}.collapsibleSection{background-color:#fff;border-radius:12px;margin-bottom:16px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.collapsibleHeader{cursor:pointer;color:#333;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:16px;font-size:16px;font-weight:600;transition:background-color .2s;display:flex}.collapsibleHeader:hover{background-color:#f5f5f5}.collapsibleTitle{align-items:center;gap:8px;display:flex}.collapsibleIcon{font-size:20px}.collapsibleCount{color:#fff;background-color:#1976d2;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;font-weight:600;display:inline-flex}.collapsibleArrow{color:#888;font-size:12px;transition:transform .2s}.collapsibleArrow.open{transform:rotate(180deg)}.collapsibleContent{border-top:1px solid #e0e0e0;padding:16px}.sectionEmpty{color:#999;text-align:center;padding:8px;font-size:14px}.sectionEmpty a{color:#1976d2;font-weight:500;text-decoration:none}.sectionEmpty a:hover{text-decoration:underline}.exercisesList,.habitsList,.logEntriesList{flex-direction:column;gap:12px;display:flex}.calendar{background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.calendarGrid{background:#fff;border:1px solid #e0e0e0;border-radius:12px;grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.calendarWeekday{color:#888;text-transform:uppercase;background:#fafafa;border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0;justify-content:center;align-items:center;height:40px;font-size:12px;font-weight:600;display:flex}.calendarDay{cursor:pointer;box-sizing:border-box;background:0 0;border:1px solid #e0e0e0;border-top:none;border-left:none;border-radius:0;flex-direction:column;justify-content:flex-start;align-items:center;min-height:72px;padding:8px 4px;transition:background-color .2s;display:flex}.calendarGrid>:nth-child(7n){border-right:none}.calendarGrid>.calendarDay:nth-last-child(-n+7){border-bottom:none}.calendarDay:hover:not(.empty):not(.selected){background-color:#f0f4fa}.calendarDay.empty{cursor:default;pointer-events:none}.calendarDay.outside{opacity:.4}.calendarDay.selected{color:#fff;z-index:1;background-color:#1976d2}.calendarDay.selected .dayMarker{border:1px solid #ffffff80}.calendarDay.today:not(.selected){background-color:#e3f2fd;font-weight:700}.calendarDay .dayNumber{font-size:14px;font-weight:500;line-height:1.2}.dayMarkers{gap:3px;margin-top:4px;display:flex}.dayMarker{border-radius:50%;width:6px;height:6px}.dayMarker.workouts{background-color:#4caf50}.dayMarker.habits{background-color:#ff9800}.dayMarker.log{background-color:#2196f3}.calendarViewPage,.calendarView{padding:16px}.calendarView .calendarHeader{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.calendarView .calendarNavButton{cursor:pointer;color:#333;background:#f0f0f0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:24px;transition:background-color .2s;display:flex}.calendarView .calendarNavButton:hover{background-color:#e0e0e0}.calendarView .calendarTitle{color:#333;font-size:20px;font-weight:600}.calendarView .calendarGrid{background-color:#fff;border-radius:12px;grid-template-columns:repeat(7,1fr);gap:4px;padding:16px;display:grid;box-shadow:0 2px 8px #0000000d}.calendarView .calendarWeekday{color:#888;text-transform:uppercase;justify-content:center;align-items:center;height:32px;font-size:12px;font-weight:600;display:flex}.calendarView .calendarDay{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;justify-content:flex-start;align-items:center;min-height:48px;padding:8px 4px;transition:background-color .2s;display:flex}.calendarView .calendarDay:hover:not(.empty){background-color:#f5f5f5}.calendarView .calendarDay.empty{cursor:default}.calendarView .calendarDay.selected{color:#fff;background-color:#1976d2}.calendarView .calendarDay.today:not(.selected){border:2px solid #1976d2}.calendarView .calendarDay .dayNumber{font-size:14px;font-weight:500}.calendarView .dayMarkers{gap:2px;margin-top:4px;display:flex}.calendarView .dayMarker{border-radius:50%;width:6px;height:6px}.calendarView .dayMarker.workouts{background-color:#4caf50}.calendarView .dayMarker.habits{background-color:#ff9800}.calendarView .dayMarker.log{background-color:#2196f3}.calendarFooter{text-align:center;margin-top:16px}.calendarHint{color:#888;font-size:14px}.dayPreview{background-color:#fff;border-radius:12px;margin-top:20px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.dayPreviewHeader{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px;display:flex}.dayPreviewTitle{color:#333;margin:0;font-size:16px;font-weight:600}.dayPreviewButton{color:#fff;cursor:pointer;background-color:#1976d2;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:500;transition:background-color .2s}.dayPreviewButton:hover{background-color:#1565c0}.dayPreviewLoading{text-align:center;color:#888;padding:24px}.dayPreviewContent{padding:16px}.previewSection{margin-bottom:16px}.previewSection:last-child{margin-bottom:0}.previewSectionHeader{align-items:center;gap:8px;margin-bottom:12px;display:flex}.previewSectionIcon{font-size:18px}.previewSectionTitle{color:#666;font-size:14px;font-weight:600}.previewSectionContent{flex-direction:column;gap:8px;display:flex}.previewEmpty{text-align:center;color:#999;background-color:#f5f5f5;border-radius:8px;padding:12px;font-size:14px}.previewMore{text-align:center;color:#1976d2;cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;padding:8px;font-size:14px;font-weight:500;transition:background-color .2s}.previewMore:hover{background-color:#f0f4ff}.calendarLegend{background-color:#fff;border-radius:8px;justify-content:center;gap:24px;margin-top:16px;padding:12px;display:flex;box-shadow:0 2px 8px #0000000d}.legendItem{color:#666;align-items:center;gap:6px;font-size:12px;display:flex}.legendMarker{border-radius:50%;width:8px;height:8px}.legendMarker.workouts{background-color:#4caf50}.legendMarker.habits{background-color:#ff9800}.legendMarker.log{background-color:#2196f3}.addExercisePage{flex-direction:column;min-height:100%;padding:16px 16px 80px;display:flex}.addExercisePage .addExerciseHeader{align-items:center;gap:12px;margin-bottom:20px;display:flex}.addExercisePage .backButton{color:var(--primary,#1976d2);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:16px;transition:background-color .2s}.addExercisePage .backButton:hover{background-color:var(--primary-light,#1976d21a)}.addExercisePage .addExerciseTitle{color:var(--text,#333);margin:0;font-size:20px;font-weight:600}.addExercisePage .searchSection{margin-bottom:16px}.addExercisePage .searchInput{border:1px solid var(--border,#e0e0e0);background-color:var(--bg-card,#fff);border-radius:10px;width:100%;margin-bottom:12px;padding:12px 16px;font-size:16px}.addExercisePage .searchInput:focus{border-color:var(--primary,#1976d2);box-shadow:0 0 0 3px var(--primary-light,#1976d21a);outline:none}.addExercisePage .categoryFilter{scrollbar-width:none;gap:8px;padding-bottom:8px;display:flex;overflow-x:auto}.addExercisePage .categoryFilter::-webkit-scrollbar{display:none}.addExercisePage .categoryButton{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text-secondary,#666);white-space:nowrap;cursor:pointer;text-transform:capitalize;border-radius:20px;flex-shrink:0;padding:8px 14px;font-size:14px;transition:all .2s}.addExercisePage .categoryButton:hover{border-color:var(--primary,#1976d2);color:var(--primary,#1976d2)}.addExercisePage .categoryButton.active{background-color:var(--primary,#1976d2);border-color:var(--primary,#1976d2);color:#fff}.addExercisePage .errorBanner{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.addExercisePage .errorBanner button{color:#dc2626;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:18px}.addExercisePage .exercisesList{flex-direction:column;flex:1;gap:8px;display:flex}.addExercisePage .exerciseItem{background-color:var(--bg-card,#fff);border:1px solid var(--border,#e0e0e0);cursor:pointer;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;padding:16px;transition:all .2s;display:flex}.addExercisePage .exerciseItem:hover{border-color:var(--primary,#1976d2);background-color:var(--primary-light,#1976d20d)}.addExercisePage .exerciseItemInfo{flex-direction:column;gap:4px;display:flex}.addExercisePage .exerciseItemName{color:var(--text,#333);font-size:16px;font-weight:500}.addExercisePage .exerciseItemCategory{color:var(--text-muted,#999);text-transform:capitalize;font-size:13px}.addExercisePage .exerciseItemUsage{color:var(--text-secondary,#666);font-size:13px}.addExercisePage .noExercises{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.addExercisePage .noExercises p{color:var(--text-muted,#999);margin-bottom:16px}.addExercisePage .createNewButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:500;transition:background-color .2s}.addExercisePage .createNewButton:hover{background-color:#1565c0}.addExercisePage .floatingCreateButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:24px;padding:12px 24px;font-size:16px;font-weight:500;transition:all .2s;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #1976d266}.addExercisePage .floatingCreateButton:hover{transform:translate(-50%)scale(1.05);box-shadow:0 6px 16px #1976d280}.addExercisePage .createFormOverlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.addExercisePage .createForm{background-color:var(--bg-card,#fff);border-radius:16px;width:100%;max-width:400px;padding:24px}.addExercisePage .createForm h2{color:var(--text,#333);margin:0 0 20px;font-size:20px}.addExercisePage .formInput{border:1px solid var(--border,#e0e0e0);box-sizing:border-box;border-radius:8px;width:100%;margin-bottom:12px;padding:12px 16px;font-size:16px}.addExercisePage .formInput:focus{border-color:var(--primary,#1976d2);outline:none}.addExercisePage .formActions{gap:12px;margin-top:8px;display:flex}.addExercisePage .cancelButton{border:1px solid var(--border,#e0e0e0);cursor:pointer;color:var(--text-secondary,#666);background:0 0;border-radius:8px;flex:1;padding:12px;font-size:16px;transition:background-color .2s}.addExercisePage .cancelButton:hover{background-color:var(--bg,#f5f5f5)}.addExercisePage .submitButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:1;padding:12px;font-size:16px;font-weight:500;transition:background-color .2s}.addExercisePage .submitButton:hover{background-color:#1565c0}.exerciseHistoryPage{padding:16px 16px 80px}.historyHeader{align-items:center;gap:12px;margin-bottom:24px;display:flex}.historyHeader .backButton{background-color:var(--bg-card,#fff);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;transition:background-color .2s;display:flex}.historyHeader .backButton:hover{background-color:var(--bg,#f5f5f5)}.headerInfo{flex-direction:column;gap:4px;display:flex}.exerciseTitle{color:var(--text,#333);margin:0;font-size:22px;font-weight:600}.exerciseCategoryBadge{color:var(--text-muted,#999);text-transform:capitalize;font-size:13px}.statsSection{margin-bottom:24px}.periodSelector{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.periodButton:hover{border-color:var(--primary,#1976d2)}.statsGrid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.statCard{background-color:var(--bg-card,#fff);border-radius:12px;flex-direction:column;align-items:center;padding:16px;display:flex;box-shadow:0 1px 3px #00000014}.statLabel{color:var(--text-muted,#999);margin-top:4px;font-size:13px}.progressChart{background-color:var(--bg-card,#fff);border-radius:12px;padding:16px;box-shadow:0 1px 3px #00000014}.progressChart+.progressChart{margin-top:12px}.progressChart h3{color:var(--text,#333);margin:0 0 10px;font-size:16px;font-weight:600}.noChartData{color:var(--text-secondary,#666)}.tonnageChartContainer{width:100%;padding-bottom:10px;position:relative}.tonnageChartSvg{width:100%;height:auto;max-height:220px;display:block;overflow:visible}.tonnageGridLine{stroke:#94a3b847;stroke-width:1px;shape-rendering:crispedges}.tonnageAxisLabel{fill:var(--text-muted,#999);font-size:10px}.tonnageArea{fill:url(#tonnage-fill)}.tonnageLine{fill:none;stroke:var(--primary,#1976d2);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.tonnagePoint{fill:var(--primary,#1976d2);stroke:var(--bg-card,#fff);stroke-width:2px}.tonnagePoint.active{fill:#1565c0}.tonnageHoverGuide{stroke:#1976d28c;stroke-width:1.5px;stroke-dasharray:4 3;pointer-events:none}.tonnageHoverCapture{fill:#0000;cursor:crosshair}.tonnageTooltip{color:#fff;pointer-events:none;text-align:center;background:#0f172aeb;border-radius:8px;min-width:120px;padding:8px 10px;position:absolute;transform:translate(-50%,-100%);box-shadow:0 10px 24px #0f172a40}.tonnageTooltipDate{color:#fffc;font-size:11px}.tonnageTooltipValue{margin-top:2px;font-size:13px;font-weight:700}.tonnageDateLabels{height:22px;margin-top:2px;position:relative}.tonnageDateLabel{color:var(--text-muted,#999);white-space:nowrap;font-size:11px;position:absolute;transform:translate(-50%)}.historySection h2{color:var(--text,#333);margin:0 0 12px;font-size:18px;font-weight:600}.noHistory{text-align:center;color:var(--text-muted,#999);padding:24px}.historyList{flex-direction:column;gap:8px;display:flex}.historyEntry{background-color:var(--bg-card,#fff);border-radius:10px;justify-content:space-between;align-items:center;padding:14px 16px;display:flex;box-shadow:0 1px 2px #0000000d}.historyDate{color:var(--text,#333);font-size:15px;font-weight:500}.historySets{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.historySet{background-color:var(--bg,#f5f5f5);color:var(--text-secondary,#666);border-radius:6px;padding:4px 10px;font-size:13px;font-weight:500}.historyFooterStats{margin-top:20px}.habitFormPage{flex-direction:column;min-height:100%;padding:16px 16px 80px;display:flex}.habitFormPage .habitFormHeader{align-items:center;gap:12px;margin-bottom:24px;display:flex}.habitFormPage .backButton{color:var(--primary,#1976d2);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:16px;transition:background-color .2s}.habitFormPage .backButton:hover{background-color:var(--primary-light,#1976d21a)}.habitFormPage .habitFormTitle{color:var(--text,#333);margin:0;font-size:20px;font-weight:600}.habitFormPage .formError{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.habitFormPage .formError button{cursor:pointer;color:#dc2626;background:0 0;border:none;padding:4px;font-size:18px}.habitFormPage .habitForm{flex-direction:column;gap:20px;display:flex}.habitFormPage .formGroup{flex-direction:column;gap:8px;display:flex}.habitFormPage .formGroup.flex1{flex:1}.habitFormPage .formRow{gap:12px;display:flex}.habitFormPage .formLabel{color:var(--text,#333);font-size:14px;font-weight:500}.habitFormPage .formInput{border:1px solid var(--border,#e0e0e0);background-color:var(--bg-card,#fff);border-radius:10px;padding:12px 16px;font-size:16px}.habitFormPage .formInput:focus{border-color:var(--primary,#1976d2);box-shadow:0 0 0 3px var(--primary-light,#1976d21a);outline:none}.habitFormPage .goalTypeToggle,.habitFormPage .frequencyToggle{gap:8px;display:flex}.habitFormPage .goalTypeButton,.habitFormPage .frequencyButton{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text-secondary,#666);cursor:pointer;border-radius:10px;flex:1;padding:12px 16px;font-size:14px;transition:all .2s}.habitFormPage .goalTypeButton:hover,.habitFormPage .frequencyButton:hover{border-color:var(--primary,#1976d2);color:var(--primary,#1976d2)}.habitFormPage .goalTypeButton.active,.habitFormPage .frequencyButton.active{background-color:var(--primary,#1976d2);border-color:var(--primary,#1976d2);color:#fff}.habitFormPage .weekdaysPicker{gap:8px;display:flex}.habitFormPage .weekdayButton{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);width:40px;height:40px;color:var(--text-secondary,#666);cursor:pointer;border-radius:50%;font-size:13px;transition:all .2s}.habitFormPage .weekdayButton:hover{border-color:var(--primary,#1976d2);color:var(--primary,#1976d2)}.habitFormPage .weekdayButton.active{background-color:var(--primary,#1976d2);border-color:var(--primary,#1976d2);color:#fff}.habitFormPage .colorPicker{flex-wrap:wrap;gap:12px;display:flex}.habitFormPage .colorOption{cursor:pointer;border:2px solid #0000;border-radius:50%;width:36px;height:36px;transition:all .2s}.habitFormPage .colorOption:hover{transform:scale(1.1)}.habitFormPage .colorOption.active{border-color:var(--text,#333);box-shadow:0 0 0 2px #fff,0 0 0 4px}.habitFormPage .formActions{flex-direction:column;gap:12px;margin-top:16px;display:flex}.habitFormPage .submitButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:14px 24px;font-size:16px;font-weight:500;transition:background-color .2s}.habitFormPage .submitButton:hover:not(:disabled){background-color:var(--primary-dark,#1565c0)}.habitFormPage .submitButton:disabled{opacity:.6;cursor:not-allowed}.habitFormPage .deleteButton{color:#dc2626;cursor:pointer;background-color:#0000;border:1px solid #dc2626;border-radius:10px;padding:14px 24px;font-size:16px;font-weight:500;transition:all .2s}.habitFormPage .deleteButton:hover:not(:disabled){background-color:#fef2f2}.habitFormPage .deleteButton:disabled{opacity:.6;cursor:not-allowed}.habitFormPage .confirmOverlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.habitFormPage .confirmDialog{background:var(--bg-card,#fff);border-radius:16px;width:100%;max-width:320px;padding:24px}.habitFormPage .confirmText{color:var(--text,#333);text-align:center;margin:0 0 20px;font-size:16px}.habitFormPage .confirmText small{color:var(--text-secondary,#666);margin-top:8px;display:block}.habitFormPage .confirmActions{gap:12px;display:flex}.habitFormPage .confirmCancel{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text,#333);cursor:pointer;border-radius:10px;flex:1;padding:12px;font-size:14px}.habitFormPage .confirmDelete{color:#fff;cursor:pointer;background-color:#dc2626;border:none;border-radius:10px;flex:1;padding:12px;font-size:14px}.habitFormPage .confirmDelete:disabled{opacity:.6;cursor:not-allowed}.habitStatsPage{flex-direction:column;min-height:100%;padding:16px 16px 80px;display:flex}.habitStatsHeader{align-items:center;gap:12px;margin-bottom:24px;display:flex}.habitStatsInfo{align-items:center;gap:10px;display:flex}.habitStatsColor{border-radius:50%;width:16px;height:16px}.habitStatsTitle{color:var(--text,#333);margin:0;font-size:20px;font-weight:600}.statsGrid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px;display:grid}.statCard{background:var(--bg-card,#fff);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:16px;display:flex;box-shadow:0 1px 3px #00000014}.statValue{color:var(--text,#333);font-size:24px;font-weight:600}.statLabel{color:var(--text-secondary,#666);font-size:13px}.periodSelector{gap:8px;margin-bottom:20px;display:flex}.periodButton{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text-secondary,#666);cursor:pointer;border-radius:8px;flex:1;padding:10px 16px;font-size:14px;transition:all .2s}.periodButton:hover{border-color:var(--primary,#1976d2);color:var(--primary,#1976d2)}.periodButton.active{background-color:var(--primary,#1976d2);border-color:var(--primary,#1976d2);color:#fff}.chartContainer{background:var(--bg-card,#fff);border-radius:12px;margin-bottom:24px;padding:20px;box-shadow:0 1px 3px #00000014}.chartBars{align-items:flex-end;gap:4px;height:150px;display:flex}.chartBarWrapper{flex-direction:column;flex:1;align-items:center;min-width:0;height:100%;display:flex}.chartBar{border-radius:4px 4px 0 0;justify-content:center;align-items:flex-start;width:100%;max-width:30px;transition:height .3s;display:flex;position:relative}.chartBar.completed{opacity:1}.chartBarValue{color:var(--text-secondary,#666);font-size:11px;font-weight:500;position:absolute;top:-20px}.chartBarLabel{color:var(--text-muted,#999);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-top:6px;font-size:10px;overflow:hidden}.noDataMessage{background:var(--bg-card,#fff);text-align:center;color:var(--text-secondary,#666);border-radius:12px;margin-bottom:24px;padding:40px 20px}.habitStatsActions{flex-direction:column;gap:12px;display:flex}.editHabitButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-size:16px;font-weight:500;text-decoration:none;transition:background-color .2s;display:flex}.editHabitButton:hover{background-color:var(--primary-dark,#1565c0)}.archiveButton{color:var(--text-secondary,#666);border:1px solid var(--border,#e0e0e0);cursor:pointer;background-color:#0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-size:16px;transition:all .2s;display:flex}.archiveButton:hover{border-color:var(--text-secondary,#666);background-color:var(--bg-hover,#f5f5f5)}.tagInputContainer{width:100%;position:relative}.tagInputWrapper{border:1px solid var(--border,#e0e0e0);background-color:var(--bg-card,#fff);cursor:text;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;padding:10px 12px;display:flex}.tagInputWrapper:focus-within{border-color:var(--primary,#1976d2);box-shadow:0 0 0 3px var(--primary-light,#1976d21a)}.tagChip{background-color:var(--primary-light,#1976d21a);color:var(--primary,#1976d2);border-radius:16px;align-items:center;gap:4px;padding:4px 10px;font-size:14px;display:inline-flex}.tagChipRemove{width:18px;height:18px;color:var(--primary,#1976d2);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:16px;transition:background-color .2s;display:flex}.tagChipRemove:hover{background-color:#1976d233}.tagInputField{min-width:100px;color:var(--text,#333);background:0 0;border:none;flex:1;padding:2px 0;font-size:16px}.tagInputField:focus{outline:none}.tagInputField::placeholder{color:var(--text-muted,#999)}.tagSuggestions{background:var(--bg-card,#fff);border:1px solid var(--border,#e0e0e0);z-index:100;border-radius:10px;max-height:200px;margin-top:4px;padding:8px 0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.tagSuggestionItem{cursor:pointer;justify-content:space-between;align-items:center;padding:10px 16px;transition:background-color .15s;display:flex}.tagSuggestionItem:hover,.tagSuggestionItem.highlighted{background-color:var(--bg-hover,#f5f5f5)}.tagSuggestionName{color:var(--text,#333);font-size:14px}.tagSuggestionCount{color:var(--text-muted,#999);background-color:var(--bg-hover,#f0f0f0);border-radius:10px;padding:2px 8px;font-size:12px}.logFormPage{flex-direction:column;min-height:100%;padding:16px 16px 80px;display:flex}.logFormPage .logFormHeader{align-items:center;gap:12px;margin-bottom:24px;display:flex}.logFormPage .backButton{color:var(--primary,#1976d2);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:16px;transition:background-color .2s}.logFormPage .backButton:hover{background-color:var(--primary-light,#1976d21a)}.logFormPage .logFormTitle{color:var(--text,#333);margin:0;font-size:20px;font-weight:600}.logFormPage .formError{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.logFormPage .formError button{cursor:pointer;color:#dc2626;background:0 0;border:none;padding:4px;font-size:18px}.logFormPage .logForm{flex-direction:column;gap:20px;display:flex}.logFormPage .formGroup{flex-direction:column;gap:8px;display:flex}.logFormPage .formLabel{color:var(--text,#333);font-size:14px;font-weight:500}.logFormPage .formInput{border:1px solid var(--border,#e0e0e0);background-color:var(--bg-card,#fff);border-radius:10px;padding:12px 16px;font-size:16px}.logFormPage .formInput:focus{border-color:var(--primary,#1976d2);box-shadow:0 0 0 3px var(--primary-light,#1976d21a);outline:none}.logFormPage .formTextarea{border:1px solid var(--border,#e0e0e0);background-color:var(--bg-card,#fff);resize:vertical;border-radius:10px;min-height:120px;padding:12px 16px;font-family:inherit;font-size:16px;line-height:1.5}.logFormPage .formTextarea:focus{border-color:var(--primary,#1976d2);box-shadow:0 0 0 3px var(--primary-light,#1976d21a);outline:none}.logFormPage .categorySelector{flex-wrap:wrap;gap:8px;display:flex}.logFormPage .categorySelectorButton{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text-secondary,#666);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:14px;transition:all .2s;display:flex}.logFormPage .categorySelectorButton:hover{border-color:var(--cat-color,var(--primary,#1976d2));color:var(--cat-color,var(--primary,#1976d2))}.logFormPage .categorySelectorButton.active{background-color:var(--cat-color,var(--primary,#1976d2));border-color:var(--cat-color,var(--primary,#1976d2));color:#fff}.logFormPage .categoryIcon{font-size:16px}.logFormPage .categoryName{font-size:14px}.logFormPage .noCategoriesHint{color:var(--text-muted,#999);margin:4px 0 0;font-size:13px}.logFormPage .formActions{flex-direction:column;gap:12px;margin-top:16px;display:flex}.logFormPage .submitButton{background-color:var(--primary,#1976d2);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:14px 24px;font-size:16px;font-weight:500;transition:background-color .2s}.logFormPage .submitButton:hover:not(:disabled){background-color:var(--primary-dark,#1565c0)}.logFormPage .submitButton:disabled{opacity:.6;cursor:not-allowed}.logFormPage .deleteButton{color:#dc2626;cursor:pointer;background-color:#0000;border:1px solid #dc2626;border-radius:10px;padding:14px 24px;font-size:16px;font-weight:500;transition:all .2s}.logFormPage .deleteButton:hover:not(:disabled){background-color:#fef2f2}.logFormPage .deleteButton:disabled{opacity:.6;cursor:not-allowed}.logFormPage .confirmOverlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.logFormPage .confirmDialog{background:var(--bg-card,#fff);border-radius:16px;width:100%;max-width:320px;padding:24px}.logFormPage .confirmText{color:var(--text,#333);text-align:center;margin:0 0 20px;font-size:16px}.logFormPage .confirmActions{gap:12px;display:flex}.logFormPage .confirmCancel{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text,#333);cursor:pointer;border-radius:10px;flex:1;padding:12px;font-size:14px}.logFormPage .confirmDelete{color:#fff;cursor:pointer;background-color:#dc2626;border:none;border-radius:10px;flex:1;padding:12px;font-size:14px}.logFormPage .confirmDelete:disabled{opacity:.6;cursor:not-allowed}.logViewPage{flex-direction:column;min-height:100%;padding:16px 16px 80px;display:flex}.logViewHeader{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.backButton{color:var(--primary,#1976d2);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:16px;transition:background-color .2s}.backButton:hover{background-color:var(--primary-light,#1976d21a)}.logViewActions{gap:8px;display:flex}.editButton,.deleteIconButton{background:var(--bg-hover,#f5f5f5);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;text-decoration:none;transition:background-color .2s;display:flex}.editButton:hover{background-color:var(--primary-light,#1976d21a)}.deleteIconButton:hover{background-color:#fef2f2}.logViewContent{flex:1}.logViewMeta{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.logViewCategory{align-items:center;gap:6px;font-size:14px;font-weight:500;display:flex}.logViewCategoryIcon{font-size:16px}.logViewDate{color:var(--text-muted,#999);font-size:14px}.logViewTitle{color:var(--text,#333);margin:0 0 16px;font-size:24px;font-weight:600;line-height:1.3}.logViewText{color:var(--text,#333);white-space:pre-wrap;word-wrap:break-word;font-size:16px;line-height:1.7}.logViewTags{border-top:1px solid var(--border,#e0e0e0);flex-wrap:wrap;gap:8px;margin-top:24px;padding-top:20px;display:flex}.logViewTag{background-color:var(--primary-light,#1976d21a);color:var(--primary,#1976d2);border-radius:16px;padding:6px 12px;font-size:14px}.confirmOverlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirmDialog{background:var(--bg-card,#fff);border-radius:16px;width:100%;max-width:320px;padding:24px}.confirmText{color:var(--text,#333);text-align:center;margin:0 0 20px;font-size:16px}.confirmActions{gap:12px;display:flex}.confirmCancel{border:1px solid var(--border,#e0e0e0);background:var(--bg-card,#fff);color:var(--text,#333);cursor:pointer;border-radius:10px;flex:1;padding:12px;font-size:14px}.confirmDelete{color:#fff;cursor:pointer;background-color:#dc2626;border:none;border-radius:10px;flex:1;padding:12px;font-size:14px}.confirmDelete:disabled{opacity:.6;cursor:not-allowed}.settingsPage{padding:16px}.settingsPage .settingsTitle{color:#333;margin-bottom:24px;font-size:24px;font-weight:600}.settingsPage .errorBanner{color:#c62828;background-color:#ffebee;border:1px solid #f44336;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.settingsPage .errorClose{color:#c62828;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:20px}.settingsPage .settingsSection{background-color:#fff;border-radius:12px;margin-bottom:24px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.settingsPage .sectionHeader{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px;display:flex}.settingsPage .sectionTitleRow{align-items:center;gap:8px;display:flex}.settingsPage .sectionIcon{font-size:20px}.settingsPage .sectionTitle{color:#333;font-size:16px;font-weight:600}.settingsPage .sectionContent{padding:16px}.settingsPage .accountCard{background:linear-gradient(135deg,#f8fbff 0%,#fef6ed 100%);border:1px solid #e3e8ef;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.settingsPage .accountIdentity{align-items:center;gap:12px;min-width:0;display:flex}.settingsPage .accountAvatar{object-fit:cover;border-radius:16px;flex:none;width:52px;height:52px}.settingsPage .accountAvatarFallback{color:#fff;background:linear-gradient(135deg,#1976d2 0%,#42a5f5 100%);justify-content:center;align-items:center;font-size:20px;font-weight:700;display:inline-flex}.settingsPage .accountMeta{min-width:0}.settingsPage .accountName{color:#1f2937;font-size:15px;font-weight:700}.settingsPage .accountHandle{color:#64748b;margin-top:4px;font-size:13px}.settingsPage .accountNumberRow{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.settingsPage .accountNumberValue{color:#475569;overflow-wrap:anywhere;background:0 0;font-size:13px;line-height:1.4}.settingsPage .accountRevealButton{color:#334155;cursor:pointer;background:#fff;border:1px solid #d5deeb;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.settingsPage .accountRevealButton:hover{background:#f8fafc;border-color:#b8c5d8}.settingsPage .accountLogoutButton,.settingsPage .accountModeBadge{border-radius:999px;flex:none;padding:10px 16px;font-size:13px;font-weight:700}.settingsPage .accountLogoutButton{color:#fff;cursor:pointer;background:#1f2937;border:none}.settingsPage .accountModeBadge{color:#475569;background:#fff;border:1px solid #dbe4ef}.settingsPage .languageToggle{background-color:#f2f4f7;border-radius:10px;gap:8px;padding:4px;display:inline-flex}.settingsPage .languageButton{color:#445;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-size:14px;font-weight:600;transition:background-color .2s,color .2s}.settingsPage .languageButton.active{color:#fff;background-color:#1976d2}.settingsPage .featureFlagsList{flex-direction:column;gap:12px;display:flex}.settingsPage .featureFlagItem{background-color:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.settingsPage .featureFlagInfo{flex-direction:column;gap:2px;min-width:0;display:flex}.settingsPage .featureFlagTitle{color:#1f2937;font-size:14px;font-weight:600}.settingsPage .featureFlagDesc{color:#6b7280;font-size:12px}.settingsPage .featureFlagToggle{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;min-width:64px;padding:8px 12px;font-size:12px;font-weight:700;transition:all .2s}.settingsPage .featureFlagToggle.active{color:#fff;background-color:#1976d2;border-color:#1976d2}.settingsPage .addButton{color:#fff;cursor:pointer;background-color:#1976d2;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-flex}.settingsPage .addButton:hover{background-color:#1565c0}.settingsPage .categoryFormWrapper{background-color:#f5f5f5;border-radius:8px;margin-bottom:16px;padding:16px}.settingsPage .categoryForm{flex-direction:column;gap:16px;display:flex}.settingsPage .formField{flex-direction:column;gap:8px;display:flex}.settingsPage .formLabel{color:#666;font-size:14px;font-weight:500}.settingsPage .formInput{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px;font-size:16px}.settingsPage .formInput:focus{border-color:#1976d2;outline:none}.settingsPage .iconPicker{position:relative}.settingsPage .iconPickerTrigger{cursor:pointer;text-align:left;background-color:#fff;border:1px solid #d6dbe1;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.settingsPage .iconPickerSelected{background:#f4f7fb;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;display:inline-flex}.settingsPage .iconPickerTriggerText{color:#334155;flex:1;font-size:14px;font-weight:500}.settingsPage .iconPickerArrow{color:#64748b;font-size:12px}.settingsPage .iconPickerDropdown{z-index:20;background:#fff;border:1px solid #d6dbe1;border-radius:10px;padding:10px;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 10px 30px #0f172a26}.settingsPage .iconPickerManual{border-bottom:1px solid #eef2f7;grid-template-columns:minmax(0,1fr) 72px;align-items:center;gap:8px 10px;margin-bottom:10px;padding-bottom:10px;display:grid}.settingsPage .iconPickerManualLabel{color:#334155;font-size:13px;font-weight:700}.settingsPage .iconPickerInput{text-align:center;background-color:#fff;border:1px solid #d6dbe1;border-radius:8px;width:72px;height:44px;padding:6px 8px;font-size:24px}.settingsPage .iconPickerInput:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #1976d21a}.settingsPage .iconPickerHint{color:#64748b;grid-column:1/-1;margin:0;font-size:12px;line-height:1.4}.settingsPage .iconPickerGroups{max-height:220px;padding-right:2px;overflow-y:auto}.settingsPage .iconPickerGroup+.iconPickerGroup{margin-top:12px}.settingsPage .iconPickerGroupTitle{color:#64748b;letter-spacing:0;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700}.settingsPage .iconPickerGrid{grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:8px;display:grid}.settingsPage .iconOption{cursor:pointer;background-color:#fff;border:2px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;transition:border-color .2s;display:flex}.settingsPage .iconOption:hover{border-color:#e0e0e0}.settingsPage .iconOption.selected{background-color:#e3f2fd;border-color:#1976d2}@media (width<=520px){.settingsPage .iconPickerDropdown{max-height:min(520px,100vh - 24px);position:fixed;inset:auto 12px 12px;overflow:hidden}.settingsPage .iconPickerGroups{max-height:min(320px,100vh - 190px)}}.settingsPage .colorPicker{flex-wrap:wrap;gap:8px;display:flex}.settingsPage .colorOption{cursor:pointer;border:2px solid #0000;border-radius:50%;width:32px;height:32px;transition:transform .2s}.settingsPage .colorOption:hover{transform:scale(1.1)}.settingsPage .colorOption.selected{border-color:#333;box-shadow:0 0 0 2px #fff,0 0 0 4px}.settingsPage .formActions{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.settingsPage .entryTypeToggle{background-color:#f2f4f7;border-radius:10px;gap:8px;padding:4px;display:inline-flex}.settingsPage .entryTypeButton{color:#445;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:14px;font-weight:600;transition:background-color .2s,color .2s}.settingsPage .entryTypeButton.active{color:#fff;background-color:#1976d2}.settingsPage .cancelButton{color:#666;cursor:pointer;background:0 0;border:1px solid #e0e0e0;border-radius:8px;padding:10px 20px;font-size:14px;transition:background-color .2s}.settingsPage .cancelButton:hover{background-color:#f5f5f5}.settingsPage .submitButton{color:#fff;cursor:pointer;background-color:#1976d2;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:background-color .2s}.settingsPage .submitButton:hover:not(:disabled){background-color:#1565c0}.settingsPage .submitButton:disabled{cursor:not-allowed;background-color:#bdbdbd}.settingsPage .habitSettingsList{flex-direction:column;gap:10px;display:flex}.settingsPage .habitSettingsItem{background-color:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.settingsPage .habitSettingsInfo{align-items:center;gap:10px;min-width:0;display:flex}.settingsPage .habitSettingsColor{border-radius:6px;flex-shrink:0;width:10px;height:28px}.settingsPage .habitSettingsText{flex-direction:column;gap:2px;min-width:0;display:flex}.settingsPage .habitSettingsName{color:#111827;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.settingsPage .habitSettingsState{font-size:12px;font-weight:600}.settingsPage .habitSettingsState.active{color:#15803d}.settingsPage .habitSettingsState.inactive{color:#6b7280}.settingsPage .habitSettingsActions{align-items:center;gap:8px;display:flex}.settingsPage .habitActiveToggle{cursor:pointer;background:#e2e8f0;border:1px solid #cbd5e1;border-radius:999px;justify-content:flex-start;align-items:center;width:50px;height:30px;padding:2px;transition:background-color .2s;display:inline-flex}.settingsPage .habitActiveToggleThumb{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;box-shadow:0 1px 2px #0f172a40}.settingsPage .habitActiveToggle.active{background-color:#1976d2;border-color:#1976d2}.settingsPage .habitActiveToggle.active .habitActiveToggleThumb{transform:translate(20px)}.settingsPage .habitActiveToggle:disabled{opacity:.6;cursor:not-allowed}.settingsPage .emptyCategories{text-align:center;color:#999;padding:16px;font-size:14px}.settingsPage .categoriesList{flex-direction:column;gap:8px;display:flex}.settingsPage .categoryItem{background-color:#f5f5f5;border-radius:8px;justify-content:space-between;align-items:center;padding:12px;display:flex}.settingsPage .categoryInfo{align-items:center;gap:12px;display:flex}.settingsPage .categoryIcon{border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.settingsPage .categoryName{color:#333;font-size:16px;font-weight:500}.settingsPage .categoryActions{gap:8px;display:flex}.settingsPage .editButton,.settingsPage .deleteButton{vertical-align:middle;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:16px;line-height:1;transition:background-color .2s;display:inline-flex}.settingsPage .editButton:hover:not(:disabled),.settingsPage .deleteButton:hover:not(:disabled){background-color:#e0e0e0}.settingsPage .editButton:disabled,.settingsPage .deleteButton:disabled{opacity:.5;cursor:not-allowed}.settingsPage a.editButton{color:inherit;text-decoration:none}.settingsPage .confirmDelete,.settingsPage .cancelDelete{cursor:pointer;border-radius:4px;padding:6px 12px;font-size:12px}.settingsPage .confirmDelete{color:#fff;background-color:#f44336;border:none}.settingsPage .confirmDelete:hover{background-color:#d32f2f}.settingsPage .cancelDelete{color:#666;background:0 0;border:1px solid #e0e0e0}.settingsPage .cancelDelete:hover{background-color:#f5f5f5}.settingsPage .aboutInfo{color:#666;font-size:14px;line-height:1.6}.settingsPage .aboutDescription{color:#999}.settingsPage .settingsLink{color:var(--primary,#1976d2);background-color:#f5f5f5;border-radius:10px;justify-content:space-between;align-items:center;padding:14px;font-size:15px;font-weight:500;text-decoration:none;transition:background-color .2s;display:flex}.settingsPage .settingsLink:hover{background-color:#e8e8e8}.settingsPage .settingsLinkArrow{font-size:18px}.adminPage{max-width:800px;margin:0 auto;padding:16px}.adminTitle{color:#1a2233;margin:0 0 16px;font-size:1.4rem;font-weight:700}.adminTotals{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px;display:grid}.adminTotalCard{background:#fff;border-radius:10px;flex-direction:column;align-items:center;padding:14px;display:flex;box-shadow:0 1px 3px #00000014}.adminTotalValue{color:#1976d2;font-size:1.6rem;font-weight:700}.adminTotalLabel{color:#6b7a8d;margin-top:2px;font-size:.8rem}.adminSectionTitle{color:#1a2233;margin:0 0 10px;font-size:1.1rem;font-weight:600}.adminUsersTable{background:#fff;border-radius:10px;overflow-x:auto;box-shadow:0 1px 3px #00000014}.adminTableHeader,.adminTableRow{grid-template-columns:2fr repeat(4,1fr) 1.5fr;align-items:center;gap:4px;min-width:500px;padding:10px 12px;display:grid}.adminTableHeader{color:#6b7a8d;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #eee;font-size:.75rem;font-weight:600}.adminTableRow{border-bottom:1px solid #f4f4f4;font-size:.85rem}.adminTableRow:last-child{border-bottom:none}.adminColUser{flex-direction:column;gap:1px;min-width:0;display:flex}.adminUserName{color:#1a2233;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.adminUserHandle{color:#8e99a4;font-size:.75rem}.adminColStat{text-align:center;font-variant-numeric:tabular-nums}.adminColDate{text-align:right;color:#6b7a8d;font-size:.8rem}@media (width<=480px){.adminTotals{grid-template-columns:repeat(2,1fr);gap:8px}.adminTotalCard{padding:10px}.adminTotalValue{font-size:1.3rem}}.accountNumberInput{color:#203147;letter-spacing:.04em;font-variant-numeric:tabular-nums;box-sizing:border-box;background:#ffffffe0;border:1px solid #252e4029;border-radius:12px;width:100%;padding:12px 14px;font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:clamp(.78rem,4.4vw,.95rem);line-height:1.3}.accountNumberInput:focus{border-color:#2795ff;outline:none;box-shadow:0 0 0 3px #2795ff2e}.accountNumberInput:disabled{opacity:.65;cursor:not-allowed}.langSwitcher{z-index:2;-webkit-backdrop-filter:blur(8px);background:#ffffffb3;border:1px solid #0000000f;border-radius:999px;gap:2px;padding:4px;display:inline-flex;position:absolute;top:16px;right:16px;box-shadow:0 4px 16px #00000014}.langSwitcherButton{appearance:none;letter-spacing:.04em;color:#5b6573;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;transition:background .15s,color .15s}.langSwitcherButton:hover{color:#1f2937}.langSwitcherButton.active{color:#fff;background:#1f2937}.loginPageShell{background:radial-gradient(circle at 0 0,#ff922b38,#0000 34%),radial-gradient(circle at 100% 100%,#2da2ff2e,#0000 30%),linear-gradient(135deg,#f8f2e8 0%,#f4f6fb 52%,#eef6ff 100%);place-items:center;gap:16px;min-height:100dvh;padding:32px 20px;display:grid;position:relative;overflow:hidden}.loginGlow{filter:blur(64px);opacity:.55;pointer-events:none;border-radius:999px;width:360px;height:360px;position:absolute}.loginGlowLeft{background:#ffa4385c;top:-120px;left:-80px}.loginGlowRight{background:#2794ff47;bottom:-120px;right:-90px}.loginCard{z-index:1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd6;border:1px solid #252e4014;border-radius:22px;gap:14px;width:min(100%,480px);padding:24px;display:grid;position:relative;box-shadow:0 28px 80px #2e3f5c29}.loginTitle{color:#203147;letter-spacing:0;text-align:center;margin:0;font-size:clamp(1.15rem,4.4vw,1.55rem);font-weight:800;line-height:1.08}.loginTagline{text-align:center;color:#6f7d90;margin:-8px 0 0;font-size:.82rem}.loginHelpText{color:#6d7b8f;margin:0;font-size:.78rem;line-height:1.5}.loginForm{gap:12px;display:grid}.loginSubmitButton{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2795ff 0%,#217de0 100%);border:0;border-radius:12px;width:100%;padding:10px 14px;font-size:.82rem;font-weight:700}.loginSubmitButton:disabled{opacity:.55;cursor:not-allowed}.loginErrorBanner{color:#9a2e2e;background:#ffedede6;border:1px solid #ce48483d;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:.78rem;display:flex}.loginErrorClose{all:unset;cursor:pointer;font-size:.9rem;line-height:1}.loginSecondaryLinks{z-index:1;justify-items:center;gap:8px;width:min(100%,480px);display:grid;position:relative}.loginInlineLink,.loginFooterLink{color:#31557f;text-decoration:none}.loginInlineLink:hover,.loginFooterLink:hover{text-decoration:underline}.loginFooterLink{color:#526781;text-align:center;font-size:.75rem}.loginBackBtn{all:unset;cursor:pointer;color:#6c7a91;padding:4px 0;font-size:.76rem}.termsTitle{font-size:clamp(1.05rem,4.2vw,1.35rem)}.termsParagraph{color:#3e5067;margin:0;line-height:1.5}.termsList{color:#3e5067;gap:8px;margin:0;padding-left:18px;line-height:1.45;display:grid}.termsBackLink{justify-self:start}@media (width<=640px){.loginPageShell{padding:20px 14px}.loginCard{border-radius:20px;width:min(100%,420px);padding:20px 14px}.loginSecondaryLinks{width:min(100%,420px)}}.signupLeadText{margin-top:0}.signupNumberWrap{justify-items:center;gap:8px;display:grid}.signupAccountCode{text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.04em;-webkit-user-select:all;user-select:all;white-space:nowrap;box-sizing:border-box;background:#f9fbfff2;border:1px solid #252e4024;border-radius:12px;width:100%;padding:12px 8px;font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:clamp(.68rem,5.1vw,1.05rem);line-height:1.25;overflow:hidden}.signupCopyButton{color:#203147;cursor:pointer;background:#fff;border:1px solid #252e4026;border-radius:10px;padding:5px 12px;font-size:.78rem;font-weight:600}.signupCopyHint{color:#2e7d32;font-size:.8rem}.signupCopyHintError{color:#b23b3b}.signupWarningBanner{color:#6b421b;background:#fff5e4f2;border:1px solid #f0952359;border-radius:12px;padding:9px 11px;font-size:.78rem;line-height:1.45}.signupQuestion{color:#31435b;margin:0;font-size:.86rem;font-weight:600}.signupCheckbox{color:#3d4f67;align-items:flex-start;gap:10px;font-size:.8rem;line-height:1.4;display:flex}.signupCheckbox input{margin-top:3px}.signupActions{gap:10px;display:grid}
