.Navigation_nav__KErzK{background:#fff;border-bottom:1px solid #e2e8f0;position:-webkit-sticky;position:sticky;top:0;z-index:100;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.Navigation_navContainer__TRHkm{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:64px}@media(max-width:640px){.Navigation_navContainer__TRHkm{padding:0 1rem}}.Navigation_logo__g4_Kf{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.25rem;color:#0f172a;text-decoration:none}@media(max-width:640px){.Navigation_logoText__EhKW0{display:none}}.Navigation_navList__V4Bly{display:flex;list-style:none;gap:.5rem;margin:0;padding:0}@media(max-width:640px){.Navigation_navList__V4Bly{flex-wrap:wrap;gap:.25rem}}.Navigation_navLink__AbjTj{display:flex;align-items:center;gap:.25rem;padding:.5rem 1rem;border-radius:.5rem;text-decoration:none;color:#64748b;font-weight:500;transition:all .2s ease}.Navigation_navLink__AbjTj:hover{background-color:#f8fafc;color:#0f172a}.Navigation_navLink__AbjTj.Navigation_active__kQT4n{background-color:#de1c6a;color:#fff}@media(max-width:640px){.Navigation_navLink__AbjTj{padding:.25rem .5rem;font-size:.95rem}}.Navigation_icon__v2I_I{font-size:1.1rem}@media(max-width:640px){.Navigation_icon__v2I_I{font-size:1.25rem}}.Navigation_label__Bw3Rl{font-size:.875rem}@media(max-width:640px){.Navigation_label__Bw3Rl{display:none}}.page_app__4Zs_Z{min-height:100vh;background:#f8fafc}.page_main__VXOvK{padding:2rem 0}.page_header__dONhT{text-align:center;margin-bottom:3rem}.page_header__dONhT h1{font-size:2.5rem;margin-bottom:.5rem;color:#0f172a;font-weight:700}@media(max-width:640px){.page_header__dONhT h1{font-size:2rem}}.page_header__dONhT p{font-size:1.125rem;color:#64748b;margin:0}.page_summaryBar__wusxn{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:.75rem;padding:1rem 1.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);border:1px solid #e2e8f0;margin-bottom:3rem;gap:1.5rem}@media(max-width:640px){.page_summaryBar__wusxn{flex-wrap:wrap;gap:1rem;padding:.5rem 1rem}}.page_summaryItem__8YC5a{display:flex;align-items:center;gap:.5rem}@media(max-width:640px){.page_summaryItem__8YC5a{flex:1 1;min-width:calc(50% - .5rem);justify-content:center}}.page_summaryIcon__HwhNU{font-size:1.25rem;font-weight:600}@media(max-width:640px){.page_summaryIcon__HwhNU{font-size:1rem}}.page_summaryText__1R_5V{font-size:.9rem;font-weight:600;color:#0f172a;white-space:nowrap}@media(max-width:640px){.page_summaryText__1R_5V{font-size:.8rem}}.page_summaryDivider__19H_v{width:1px;height:24px;background:#e2e8f0}@media(max-width:640px){.page_summaryDivider__19H_v{display:none}}.page_categoryTabs__QeIFp{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.page_categoryTab__Lqj4b{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:.5rem 1.5rem;cursor:pointer;font-size:.9rem;font-weight:600;color:#64748b;transition:all .2s ease}.page_categoryTab__Lqj4b.page_active__55tdn{background:#e54646;color:#fff;border-color:#e54646}.page_categoryTab__Lqj4b:hover:not(.page_active__55tdn){background:#f8fafc;border-color:#64748b}.page_emptyState__fD8Fs{text-align:center;padding:3rem;background:#fff;border-radius:.75rem;border:1px solid #e2e8f0}.page_emptyState__fD8Fs .page_emptyIcon__N18AD{font-size:4rem;display:block;margin-bottom:1.5rem}.page_emptyState__fD8Fs h3{color:#0f172a;margin-bottom:.5rem;font-size:1.5rem}.page_emptyState__fD8Fs p{color:#64748b;margin-bottom:2rem;font-size:1rem}.page_catalogGrid__5cpRr{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-auto-rows:max-content;grid-gap:1rem;gap:1rem;align-items:start}.page_catalogGrid__5cpRr *{font-family:Zen Kaku Gothic New,sans-serif}@media(max-width:640px){.page_catalogGrid__5cpRr{grid-template-columns:1fr}}.page_catalogCard__uHZoZ{background:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);border:1px solid #e2e8f0;transition:transform .2s ease,box-shadow .2s ease;overflow:hidden}.page_catalogCard__uHZoZ:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.page_cardImage__9sgL7{width:100%;height:300px;overflow:hidden;position:relative}.page_cardImage__9sgL7 img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease}.page_cardImage__9sgL7:hover img{transform:scale(1.05)}.page_imageOverlayBtn__HeynZ{position:absolute;top:.5rem;right:.5rem;background:rgba(0,0,0,.5);border:none;border-radius:.375rem;padding:.25rem;cursor:pointer;transition:all .2s ease;z-index:2;opacity:.7}.page_imageOverlayBtn__HeynZ:hover{background:rgba(0,0,0,.7);opacity:1}.page_imageOverlayBtn__HeynZ svg{width:16px;height:16px;fill:#fff;display:block}.page_cardContent__MFApp{padding:.5rem}.page_cardHeader__wv8Yn{margin-bottom:.5rem}.page_cardTitle__qvCkl{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.page_cardTitle__qvCkl h3{margin:0;font-size:1rem;color:#0f172a;line-height:1.3;flex:1 1}.page_statsToggle__oachT{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:1px solid #e2e8f0;border-radius:.5rem;padding:.5rem 1rem;cursor:pointer;font-size:.875rem;color:#64748b;transition:all .2s ease;margin-top:.5rem}.page_statsToggle__oachT:hover{background-color:#f8fafc;border-color:#64748b}.page_statsToggle__oachT span:first-child{font-weight:500}.page_toggleIcon__6b3Mk{font-size:.75rem;transition:transform .2s ease}.page_toggleIcon__6b3Mk.page_expanded__KzvpK{transform:rotate(180deg)}.page_typeChip__imQ6M{display:inline-block;padding:.25rem .5rem;border-radius:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.page_typeChip__imQ6M.page_vn__Z3VCb{background:rgb(239.4,144,144);color:#e54646}.page_typeChip__imQ6M.page_ln__8mhDV{background:rgb(249,196.8,108.6);color:rgb(221.3291338583,142.4125984252,9.0708661417)}.page_typeChip__imQ6M.page_other___uwHS{background:rgb(160.4334728033,171.3188284519,186.9665271967);color:#64748b}.page_cardStats__IfVOC{margin-bottom:.5rem;animation:page_slideDown__wmdTv .2s ease-out}@keyframes page_slideDown__wmdTv{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.page_statRow__PJcVF{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.page_statRow__PJcVF:last-child{margin-bottom:0}.page_statLabel__cqcka{font-size:.875rem;color:#64748b;font-weight:500}.page_statValue__LLBdV{font-size:.875rem;color:#0f172a;font-weight:600;font-family:Geist Mono,Courier New,monospace}.page_cardDates__G55V0{border-top:1px solid #e2e8f0;padding-top:.25rem;margin-bottom:.25rem}.page_dateInfo__Pvf00{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.page_dateInfo__Pvf00:last-child{margin-bottom:0}.page_dateLabel__hanWR{font-size:.75rem;color:#64748b;font-weight:500}.page_dateValue__RH6z_{font-size:.75rem;color:#0f172a;font-weight:500}.page_cardDescription__ovFEz{border-top:1px solid #e2e8f0;padding-top:.25rem;font-size:.8rem;color:#64748b;line-height:1.4;font-style:italic}.page_modalOverlay__0PIDC{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.page_modal__aYBvw{background:#fff;border-radius:.75rem;border:1px solid #e2e8f0;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);width:100%;max-width:500px;max-height:80vh;overflow-y:auto}.page_modalHeader__PBDfa{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e2e8f0}.page_modalHeader__PBDfa h3{margin:0;color:#0f172a;font-size:1.25rem}.page_modalCloseBtn__fewc6{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;padding:.25rem;line-height:1}.page_modalCloseBtn__fewc6:hover{color:#0f172a}.page_modalContent__AN__v{padding:1.5rem}.page_imagePreview__CKzhC{margin-top:1rem;border-radius:.5rem;overflow:hidden;max-height:200px}.page_imagePreview__CKzhC img{width:100%;height:auto;max-height:200px;object-fit:cover}.page_modalActions__c_JRA{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0}.SessionForm_titleRow__mE0J4{display:flex;flex-direction:row;align-items:flex-end;gap:8px}.SessionForm_smallDropdown__VsYf3{font-size:.9em;padding:4px 8px;min-width:0;width:100%;max-width:180px;height:32px}.SessionForm_srOnly__0p1ig{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.SessionForm_formContainer__MUbcr{background:#fff;border-radius:.75rem;padding:2rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);border:1px solid #e2e8f0;max-width:600px;margin:0 auto}.SessionForm_formHeader__EJdSj{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.SessionForm_formHeader__EJdSj h2{margin:0;color:#0f172a;font-size:1.5rem}.SessionForm_closeButton__WeSZQ{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;transition:all .2s ease}.SessionForm_closeButton__WeSZQ:hover{background-color:#f8fafc;color:#0f172a}.SessionForm_error__EhFC8{background-color:rgb(245.4,142.8,142.8);color:#ef4444;padding:.5rem 1rem;border-radius:.5rem;margin-bottom:1rem;border:1px solid rgb(242.2,105.4,105.4);font-size:.875rem}.SessionForm_form__aPNnX{display:flex;flex-direction:column;gap:1rem}.SessionForm_formRow__P6PwE{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}@media(max-width:640px){.SessionForm_formRow__P6PwE{grid-template-columns:1fr}}.SessionForm_formActions__s4P0_{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}@media(max-width:640px){.SessionForm_formActions__s4P0_{flex-direction:column-reverse}}.page_app___i_Xj{min-height:100vh;background:#f8fafc}.page_main__AqHAH{padding:2rem 0}.page_header__mWrxR{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.page_header__mWrxR h1{font-size:2.5rem;margin-bottom:.5rem;color:#0f172a;font-weight:700}@media(max-width:640px){.page_header__mWrxR h1{font-size:2rem}}.page_header__mWrxR p{font-size:1.125rem;color:#64748b;margin:0}@media(max-width:768px){.page_header__mWrxR{flex-direction:column;gap:1.5rem;align-items:stretch}}.page_controls__H1B8K{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1.5rem;background:#fff;border-radius:.75rem;border:1px solid #e2e8f0}@media(max-width:768px){.page_controls__H1B8K{flex-direction:column;gap:1rem;align-items:stretch}}.page_filters__x5sk2 label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#0f172a}.page_filters__x5sk2 label select{margin-left:.5rem;padding:.25rem .5rem;border:1px solid #e2e8f0;border-radius:.5rem;background:#fff}.page_stats__zZG76{display:flex;gap:1.5rem;font-size:.875rem;color:#64748b}.page_stats__zZG76 span{font-weight:500}@media(max-width:640px){.page_stats__zZG76{flex-direction:column;gap:.5rem}}.page_tableContainer__fZgC3{background:#fff;border-radius:.75rem;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.page_table__QHhdy{width:100%;border-collapse:collapse}.page_table__QHhdy td,.page_table__QHhdy th{padding:1rem;text-align:left;border-bottom:1px solid #e2e8f0}.page_table__QHhdy th{background:#f8fafc;font-weight:600;color:#0f172a;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .2s ease}.page_table__QHhdy th:hover{background:rgb(237.5,242.5,247.5)}.page_table__QHhdy tbody tr{transition:background-color .2s ease}.page_table__QHhdy tbody tr:hover{background:rgb(230.5,237.5,244.5)}@media(max-width:1024px){.page_table__QHhdy{font-size:.875rem}.page_table__QHhdy td,.page_table__QHhdy th{padding:.5rem}}.page_dateCell__kmB_m .page_dateMain___EEG7{font-weight:500;color:#0f172a}.page_dateCell__kmB_m .page_dateTime__TSYSR{font-size:.75rem;color:#64748b;margin-top:.25rem}.page_titleCell__3_DOb .page_titleMain__kkrLA{font-weight:500;color:#0f172a;margin-bottom:.25rem}.page_titleCell__3_DOb .page_titleNotes__Zg7wc{font-size:.75rem;color:#64748b;font-style:italic}.page_typeChip__VrMsR{display:inline-block;padding:.25rem .5rem;border-radius:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.page_typeChip__VrMsR.page_vn___UzTq{background:rgb(239.4,144,144);color:#e54646}.page_typeChip__VrMsR.page_ln__U1QO8{background:rgb(249,196.8,108.6);color:rgb(221.3291338583,142.4125984252,9.0708661417)}.page_typeChip__VrMsR.page_other__aWi8p{background:rgb(160.4334728033,171.3188284519,186.9665271967);color:#64748b}.page_numberCell__9pZbN{font-family:Geist Mono,Courier New,monospace;font-weight:500;color:#0f172a}.page_actions___v8i7{display:flex;gap:.5rem}.page_imageOverlayBtn__IRBME{background:rgba(0,0,0,.5);border:none;border-radius:.375rem;padding:.25rem;cursor:pointer;transition:all .2s ease;opacity:.7;display:flex;align-items:center;justify-content:center}.page_imageOverlayBtn__IRBME:hover{background:rgba(0,0,0,.7);opacity:1}.page_imageOverlayBtn__IRBME svg{display:block;fill:#fff}.page_deleteButton__pVmGs{background:rgba(255,0,0,.08);border:none;border-radius:.375rem;padding:.25rem;cursor:pointer;transition:background .2s,opacity .2s;display:flex;align-items:center;justify-content:center;opacity:.8}.page_deleteButton__pVmGs:hover{background:rgba(255,0,0,.18);opacity:1}.page_deleteButton__pVmGs svg{display:block;fill:#e53935}.page_emptyState__XKVa7{text-align:center;padding:3rem}.page_emptyState__XKVa7 .page_emptyIcon__649W2{font-size:4rem;display:block;margin-bottom:1.5rem}.page_emptyState__XKVa7 h3{color:#0f172a;margin-bottom:.5rem;font-size:1.5rem}.page_emptyState__XKVa7 p{color:#64748b;margin-bottom:2rem;font-size:1rem}.page_modal__mn25Q{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.page_modalContent__KKy2K{background:#fff;border-radius:.75rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.page_pagination__CM6NJ{display:flex;justify-content:center;align-items:center;margin:2rem 0;gap:16px}.page_pagination__CM6NJ button:hover{background:rgb(40.5,42.3,45);color:#fff}.ProgressStats_filterButtonGroup__oSgfU{display:flex;gap:12px;margin-bottom:20px}.ProgressStats_filterButton___gLAG{padding:8px 20px;border:none;border-radius:6px;background:#f3f4f6;color:#222;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;box-shadow:0 1px 2px rgba(0,0,0,.03)}.ProgressStats_filterButton___gLAG:hover{background:#2e2e2e;color:#fff}.ProgressStats_activeFilter__bYGOu{background:#304357;color:#fff;font-weight:600;box-shadow:0 2px 8px rgba(37,99,235,.1)}.ProgressStats_statsGrid__mvV7Q{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}@media(max-width:640px){.ProgressStats_statsGrid__mvV7Q{grid-template-columns:1fr;gap:.5rem;margin:0 auto}}@media(max-width:400px){.ProgressStats_statsGrid__mvV7Q{grid-template-columns:1fr;gap:8px;max-width:95vw}}.ProgressStats_statCard__QpYTN{background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);border:1px solid #e2e8f0;display:flex;align-items:center;gap:1rem;transition:transform .2s ease,box-shadow .2s ease}.ProgressStats_statCard__QpYTN:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.ProgressStats_statCard__QpYTN.ProgressStats_black__khPEM{border-left:4px solid #000}@media(max-width:640px){.ProgressStats_statCard__QpYTN{flex-direction:column;align-items:flex-start;padding:1rem;gap:.25rem;width:100%;max-width:350px}}.ProgressStats_statIcon__2HWlh{font-family:Klee One,sans-serif;font-size:2rem;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:.5rem;background-color:#f8fafc}@media(max-width:640px){.ProgressStats_statIcon__2HWlh{width:36px;height:36px;font-size:1.25rem}}.ProgressStats_statContent__q2zzH{flex:1 1;min-width:0}.ProgressStats_statValue___CobR{font-size:1.5rem;font-weight:700;color:#0f172a;line-height:1.2;margin-bottom:.25rem}@media(max-width:640px){.ProgressStats_statValue___CobR{font-size:1.25rem}}.ProgressStats_statLabel__8bi_W{font-size:.875rem;color:#64748b;font-weight:500}@media(max-width:640px){.ProgressStats_statLabel__8bi_W{font-size:.75rem}}.Heatmap_monthLabel__kwpmh{text-align:center;font-size:1rem;color:var(--text-primary);font-weight:600;margin-bottom:8px;letter-spacing:1px}.Heatmap_calendarGrid__k1QGd{display:flex;gap:4px;width:100%;justify-content:flex-start}@media(max-width:900px){.Heatmap_monthRow__lFZLK{display:flex;gap:12px;flex-direction:row}.Heatmap_monthBlock__lFH0O{max-width:220px;padding:4px 4px 12px}.Heatmap_monthLabel__kwpmh{font-size:.9rem}}.Heatmap_heatmap__wsPxM{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#fcfcfe;border-radius:12px;padding:24px;margin:24px 0;box-shadow:0 4px 16px rgba(0,0,0,.18)}.Heatmap_heatmap__wsPxM .Heatmap_header__EFw58{display:flex;justify-content:center;align-items:center;margin-bottom:20px}.Heatmap_heatmap__wsPxM .Heatmap_header__EFw58 h3{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.Heatmap_heatmap__wsPxM .Heatmap_header__EFw58 .Heatmap_yearSelector__fSPoA{background:#e8e8e8;border:1px solid var(--border-color);border-radius:6px;padding:6px 12px;color:var(--text-primary);font-size:.875rem;cursor:pointer;margin-left:1rem}.Heatmap_heatmap__wsPxM .Heatmap_header__EFw58 .Heatmap_yearSelector__fSPoA:focus{outline:none;border-color:var(--accent-color)}.Heatmap_heatmap__wsPxM .Heatmap_header__EFw58 .Heatmap_yearSelector__fSPoA:hover{background:#dcdcdc;transition:all .2s ease}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_monthLabels__SB6iX{display:flex;margin-bottom:8px;padding-left:60px;gap:40px}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_monthLabels__SB6iX .Heatmap_monthLabel__kwpmh{text-align:center;font-size:.75rem;color:var(--text-secondary);font-weight:500}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_calendarGrid__k1QGd{display:flex;gap:4px}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_calendarGrid__k1QGd .Heatmap_weekdayLabels__EA720{display:flex;flex-direction:column;gap:2px;margin-right:8px;width:32px}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_calendarGrid__k1QGd .Heatmap_weekdayLabels__EA720 .Heatmap_weekdayLabel__wIQY_{height:12px;display:flex;align-items:center;font-size:.625rem;color:var(--text-secondary);font-weight:500}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_calendarGrid__k1QGd .Heatmap_weeks___vWKs{display:flex;gap:2px;flex:1 1}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_calendarGrid__k1QGd .Heatmap_weeks___vWKs .Heatmap_week__LVQl7{display:flex;flex-direction:column;gap:2px}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_calendarGrid__k1QGd .Heatmap_weeks___vWKs .Heatmap_week__LVQl7 .Heatmap_day__WqsBb{width:12px;height:12px;border-radius:2px;border:1px solid #e6e3e3;cursor:pointer;transition:all .2s ease}.Heatmap_heatmap__wsPxM .Heatmap_calendar__NOsM4 .Heatmap_calendarGrid__k1QGd .Heatmap_weeks___vWKs .Heatmap_week__LVQl7 .Heatmap_day__WqsBb:hover{transform:scale(1.2);border-color:var(--text-primary)}.Heatmap_heatmap__wsPxM .Heatmap_legend__KfS0k{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:16px}.Heatmap_heatmap__wsPxM .Heatmap_legend__KfS0k .Heatmap_legendLabel__Qhqrz{font-size:.75rem;color:var(--text-secondary)}.Heatmap_heatmap__wsPxM .Heatmap_legend__KfS0k .Heatmap_legendScale__0GDID{display:flex;gap:2px}.Heatmap_heatmap__wsPxM .Heatmap_legend__KfS0k .Heatmap_legendScale__0GDID .Heatmap_legendSquare__4ihQd{width:12px;height:12px;border-radius:2px;border:1px solid var(--border-color)}@media(max-width:600px){.Heatmap_heatmap__wsPxM{overflow-x:auto;width:100%;margin:2rem auto}}.Heatmap_heatmap__wsPxM .Heatmap_intensity0__p8RL9{background-color:#e4e4e4}.Heatmap_heatmap__wsPxM .Heatmap_intensity1__CT8tr{background-color:#f5b6d2}.Heatmap_heatmap__wsPxM .Heatmap_intensity2__fqLbs{background-color:#f184b7}.Heatmap_heatmap__wsPxM .Heatmap_intensity3__pbvPL{background-color:#e7548c}.Heatmap_heatmap__wsPxM .Heatmap_intensity4__8mwIM{background-color:#c2185b}.page_app__YzTRe{min-height:100vh;background:#f8fafc}.page_main__akH3E{padding:2rem 0}@media(max-width:640px){.page_main__akH3E{padding:1rem 0}}.page_header__Tcoou{text-align:center;margin-bottom:3rem}.page_header__Tcoou h1{font-size:2.5rem;margin-bottom:.5rem;color:#0f172a;font-weight:700}@media(max-width:640px){.page_header__Tcoou h1{font-size:2rem}}.page_header__Tcoou p{font-size:1.125rem;color:#64748b;margin:0}@media(max-width:640px){.page_header__Tcoou p{font-size:1rem}.page_header__Tcoou{margin-bottom:1.5rem}}.page_content__szHtB{display:grid;grid-template-columns:2fr 1fr;grid-gap:3rem;gap:3rem;margin-top:3rem}@media(max-width:1024px){.page_content__szHtB{grid-template-columns:1fr;gap:2rem}}.page_chartsSection__bbvWX{min-width:0}.page_quickAdd__cWFh0 h2{margin-bottom:1.5rem;color:#0f172a;font-size:1.5rem}.page_image-logo__PSHMp img{border-radius:.8rem}.ProgressCharts_filterButton__9Yo23{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1.2rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border .15s;outline:none}.ProgressCharts_filterButton__9Yo23:hover{background:#585768;color:#fff}.ProgressCharts_activeFilter__uD75y,.ProgressCharts_activeFilter__uD75y:hover{background:#1c1c28;color:#fff}.ProgressCharts_chartsContainer__D1tjM{margin-top:2rem}.ProgressCharts_chartGrid___PcKF{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));grid-gap:1.5rem;gap:1.5rem}@media(max-width:768px){.ProgressCharts_chartGrid___PcKF{grid-template-columns:1fr;gap:1rem}}@media(max-width:500px){.ProgressCharts_chartGrid___PcKF{grid-template-columns:1fr;gap:.5rem}}.ProgressCharts_chartCard__j2eot{background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);border:1px solid #e2e8f0}.ProgressCharts_chartCard__j2eot h3{margin:0 0 1.5rem;color:#0f172a;font-size:1.25rem;font-weight:600}.ProgressCharts_chartCard__j2eot.ProgressCharts_wideCard__p_sr5{grid-column:1/-1}@media(max-width:768px){.ProgressCharts_chartCard__j2eot{padding:1rem}}@media(max-width:500px){.ProgressCharts_chartCard__j2eot{padding:.5rem}.ProgressCharts_chartCard__j2eot h3{font-size:1rem}}.ProgressCharts_chartWrapper__gq9XP{width:100%}.ProgressCharts_chartWrapper__gq9XP .ProgressCharts_recharts-wrapper__UwYWO{font-family:Geist,Zen Kaku Gothic New,Klee One,system-ui,-apple-system,sans-serif;font-size:.75rem}.ProgressCharts_chartWrapper__gq9XP .ProgressCharts_recharts-tooltip-wrapper__3eLmD .ProgressCharts_recharts-default-tooltip__GYeLN{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:.5rem!important;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)!important}.ProgressCharts_chartWrapper__gq9XP .ProgressCharts_recharts-tooltip-wrapper__3eLmD .ProgressCharts_recharts-default-tooltip__GYeLN .ProgressCharts_recharts-tooltip-label__WgqmK{color:#0f172a!important;font-weight:600!important}.ProgressCharts_chartWrapper__gq9XP .ProgressCharts_recharts-tooltip-wrapper__3eLmD .ProgressCharts_recharts-default-tooltip__GYeLN .ProgressCharts_recharts-tooltip-item__gZ6pj{color:#64748b!important}.ProgressCharts_chartWrapper__gq9XP .ProgressCharts_recharts-cartesian-grid__UG_rl line{stroke:#e2e8f0!important}.ProgressCharts_chartWrapper__gq9XP .ProgressCharts_recharts-xAxis__BsynU .ProgressCharts_recharts-text__kVudN,.ProgressCharts_chartWrapper__gq9XP .ProgressCharts_recharts-yAxis__5SpO2 .ProgressCharts_recharts-text__kVudN{fill:#64748b!important;font-size:.75rem!important}.page_app__ql8Pj{min-height:100vh;background:linear-gradient(135deg,var(--primary-50) 0,var(--secondary-50) 100%)}.page_main__89BN_{padding:2rem 0}.page_header__dSOyG{margin-bottom:2rem;text-align:center}.page_header__dSOyG h1{color:var(--gray-800);margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.page_header__dSOyG p{color:var(--gray-600);font-size:1.1rem}.page_content__NVWAf{margin-top:2rem}.page_app__n9FCm{min-height:100vh;background:#f8fafc}.page_main__uPuDo{padding:2rem 0}.page_header__afH2I{text-align:center;margin-bottom:3rem}.page_header__afH2I h1{font-size:2.5rem;margin-bottom:.5rem;color:#0f172a;font-weight:700}@media(max-width:640px){.page_header__afH2I h1{font-size:2rem}}.page_header__afH2I p{font-size:1.125rem;color:#64748b;margin:0}.page_error__wNQ_7{background-color:rgb(245.4,142.8,142.8);color:#ef4444;padding:1rem 1.5rem;border-radius:.5rem;margin-bottom:2rem;border:1px solid rgb(242.2,105.4,105.4);text-align:center;font-weight:500}.page_content__vq8BN{display:flex;flex-direction:column;gap:3rem}.page_section__96_g_{max-width:800px;margin:0 auto;width:100%}.page_sectionHeader__JrX6_{text-align:center;margin-bottom:1.5rem}.page_sectionHeader__JrX6_ h2{font-size:1.75rem;color:#0f172a;margin-bottom:.5rem}.page_sectionHeader__JrX6_ p{color:#64748b;font-size:1rem;margin:0}.page_card2__qRqiC,.page_card__rNkVe{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:.75rem;padding:2rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);border:1px solid #e2e8f0}.page_card2__qRqiC{flex-direction:column}.page_infoItem__gwJzB{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.page_infoItem__gwJzB:last-child{margin-bottom:0}.page_infoItem__gwJzB .page_icon__HfsmE{font-size:1.5rem;margin-top:.25rem}.page_infoItem__gwJzB strong{display:block;color:#0f172a;margin-bottom:.25rem;font-size:1rem}.page_infoItem__gwJzB p{color:#64748b;margin:0;font-size:.875rem}.page_dropZone__shEuM{border:2px dashed #e2e8f0;border-radius:.75rem;padding:3rem;text-align:center;cursor:pointer;transition:all .3s ease;margin-bottom:1.5rem}.page_dropZone__shEuM:hover{border-color:#000;background-color:hsl(0,0%,85%)}.page_dropZone__shEuM.page_dragOver__dZGGA{border-color:#e54646;background-color:rgb(240.7,153.25,153.25);transform:scale(1.02)}.page_dropContent__51OgN .page_dropIcon__xF3rQ{font-size:3rem;display:block;margin-bottom:1rem}.page_dropContent__51OgN h3{color:#0f172a;margin-bottom:.5rem;font-size:1.25rem}.page_dropContent__51OgN p{color:#64748b;margin-bottom:1.5rem;font-size:1rem}.page_dropContent__51OgN .page_fileTypes__Mby0x{background:#f8fafc;padding:.5rem 1rem;border-radius:.5rem;display:inline-block;font-size:.875rem;color:#64748b}.page_dropContent__51OgN .page_fileTypes__Mby0x code{background:#fff;padding:.25rem;border-radius:.375rem;font-family:Geist Mono,Courier New,monospace;color:#e54646}.page_importWarning__4bFS8{background:#333;color:#fff;padding:1rem;border-radius:.5rem;border:1px solid rgb(247,177.4,59.8);font-size:.875rem}.page_importWarning__4bFS8 strong{font-weight:600}.page_instructions__m5bSq{display:flex;flex-direction:column;gap:1.5rem}.page_step__mt88p{display:flex;align-items:flex-start;gap:1rem}.page_step__mt88p .page_stepNumber__Z2jVj{background:#e54646;color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;flex-shrink:0;margin-top:.25rem}.page_step__mt88p strong{display:block;color:#0f172a;margin-bottom:.25rem;font-size:1rem}.page_step__mt88p p{color:#64748b;margin:0;font-size:.875rem}.page_btn-black__M40ps{background:#304357;color:#fff}.page_btn-black__M40ps:hover{background:#2e2e2e;color:#fff}.page_sectionHeader__JrX6_ h2{text-decoration:underline}