._nav_6klco_1{display:flex;align-items:center;gap:24px;padding:0 24px;height:56px;width:100%;box-sizing:border-box;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:relative}._brand_6klco_14{font-size:16px;font-weight:700;white-space:nowrap}._brand_6klco_14 a{padding:6px 12px;border-radius:var(--radius);color:var(--color-primary);font-weight:700;transition:color .15s,background .15s}._brand_6klco_14 a:hover{color:var(--color-text);text-decoration:none;background:var(--color-border)}._links_6klco_34{display:flex;gap:4px;flex:1}._links_6klco_34 a{padding:6px 12px;border-radius:var(--radius);color:var(--color-muted);font-weight:500;transition:color .15s,background .15s}._links_6klco_34 a:hover{color:var(--color-text);text-decoration:none;background:var(--color-border)}._links_6klco_34 a._active_6klco_54{color:var(--color-text);background:var(--color-border)}._user_6klco_59{display:flex;align-items:center;gap:12px}._email_6klco_65{font-size:13px;color:var(--color-muted);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._hamburger_6klco_75{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:4px;margin-left:auto}._hamburger_6klco_75 span{display:block;width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:transform .2s,opacity .2s}._barTop_open_6klco_97{transform:translateY(7px) rotate(45deg)}._barMid_open_6klco_100{opacity:0}._barBot_open_6klco_103{transform:translateY(-7px) rotate(-45deg)}._mobileMenu_6klco_109{display:none;position:fixed;top:56px;left:0;right:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-direction:column;padding:8px 0;z-index:100}._mobileLink_6klco_122,._mobileActive_6klco_123{display:block;padding:12px 24px;font-size:15px;font-weight:500;color:var(--color-muted);text-decoration:none;transition:background .15s,color .15s}._mobileLink_6klco_122:hover,._mobileActive_6klco_123:hover{background:var(--color-border);color:var(--color-text);text-decoration:none}._mobileActive_6klco_123{color:var(--color-text);background:var(--color-border)}._mobileSignOut_6klco_145{display:block;width:100%;text-align:left;padding:12px 24px;font-size:15px;font-weight:500;color:var(--color-muted);background:none;border:none;cursor:pointer;transition:background .15s,color .15s;border-top:1px solid var(--color-border);margin-top:4px}._mobileSignOut_6klco_145:hover{background:var(--color-border);color:var(--color-text)}@media (max-width: 800px){._nav_6klco_1{padding:0 16px;gap:12px}._links_6klco_34,._user_6klco_59{display:none}._hamburger_6klco_75,._mobileMenu_6klco_109{display:flex}}._cell_1w66i_1{background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:6px 8px;cursor:pointer;transition:border-color .15s,background .15s;font-size:12px;position:relative}._cell_1w66i_1:hover{border-color:var(--color-primary);background:#1e3a5f22}._scheduled_1w66i_17{border-left:3px solid var(--color-primary)}._completed_1w66i_18{border-left:3px solid var(--color-success);opacity:.85}._skipped_1w66i_19{border-left:3px solid var(--color-warning);opacity:.7}._partial_1w66i_20{border-left:3px solid #f97316}._top_1w66i_22{display:flex;align-items:center;gap:4px}._icon_1w66i_28{font-size:14px;flex-shrink:0}._title_1w66i_30{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}._strava_1w66i_38{font-size:10px;color:#fc4c02}._commute_1w66i_43{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#3b2f6e;color:#c4b5fd;border-radius:3px;padding:1px 4px;flex-shrink:0}._meta_1w66i_55{color:var(--color-muted);font-size:11px;margin-top:2px}._description_1w66i_61{color:var(--color-muted);font-size:11px;margin-top:2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}._actions_1w66i_71{display:flex;gap:4px;margin-top:4px}._actionBtn_1w66i_77{flex:1;background:none;border:1px solid var(--color-border);color:var(--color-muted);border-radius:4px;font-size:11px;padding:2px 0;transition:background .15s,color .15s}._actionBtn_1w66i_77:hover{background:var(--color-border);color:var(--color-text)}._confirmOverlay_1w66i_93{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-surface, #1a1a2e);border-radius:6px;display:flex;align-items:center;justify-content:center;z-index:10}._confirmBox_1w66i_104{padding:8px;text-align:center}._confirmText_1w66i_109{font-size:11px;font-weight:500;margin:0 0 8px;color:var(--color-text)}._confirmActions_1w66i_116{display:flex;gap:6px;justify-content:center}._confirmCancel_1w66i_122,._confirmReset_1w66i_123{flex:1;border-radius:4px;font-size:11px;padding:3px 0;border:1px solid var(--color-border);cursor:pointer}._confirmCancel_1w66i_122{background:none;color:var(--color-muted)}._confirmCancel_1w66i_122:hover{background:var(--color-border);color:var(--color-text)}._confirmReset_1w66i_123{background:none;color:var(--color-danger, #ef4444);border-color:var(--color-danger, #ef4444)}._confirmReset_1w66i_123:hover{background:var(--color-danger, #ef4444);color:#fff}._racesSection_1pr7o_1{margin-bottom:32px}._raceList_1pr7o_5{display:flex;flex-direction:column;gap:8px}._raceCard_1pr7o_11{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:12px 16px}._raceInfo_1pr7o_21{display:flex;flex-direction:column;gap:2px}._raceName_1pr7o_27{font-size:15px;font-weight:600}._raceType_1pr7o_32,._raceDate_1pr7o_37{font-size:12px;color:var(--color-muted)}._countdown_1pr7o_42{display:flex;flex-direction:column;align-items:center;min-width:56px}._countdownDays_1pr7o_49{font-size:28px;font-weight:800;line-height:1;color:var(--color-primary)}._countdownLabel_1pr7o_56{font-size:11px;color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em}._countdownToday_1pr7o_63{font-size:14px;font-weight:700;color:var(--color-primary)}._phaseSection_1pr7o_69{margin-bottom:32px}._phaseCard_1pr7o_73{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius) var(--radius) 0 0;padding:12px 16px;border-bottom:none}._phaseLeft_1pr7o_84{display:flex;align-items:center;gap:12px}._phaseDot_1pr7o_90{width:12px;height:12px;border-radius:50%;flex-shrink:0}._phaseInfo_1pr7o_97{display:flex;flex-direction:column;gap:2px}._phaseName_1pr7o_103{font-size:15px;font-weight:600}._phasePlan_1pr7o_108{font-size:12px;color:var(--color-muted)}._phaseRight_1pr7o_113{display:flex;flex-direction:column;align-items:center;min-width:48px}._phaseDaysLeft_1pr7o_120{font-size:24px;font-weight:800;line-height:1;color:var(--color-primary)}._phaseDaysLabel_1pr7o_127{font-size:11px;color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em}._phaseProgressTrack_1pr7o_134{background:var(--color-border);border-radius:0 0 var(--radius) var(--radius);height:6px;overflow:hidden}._phaseProgressBar_1pr7o_141{height:100%;transition:width .3s ease;border-radius:0 0 var(--radius) var(--radius)}._dayColumns_1pr7o_147{display:flex;flex-direction:column}@media (min-width: 768px){._dayColumns_1pr7o_147{flex-direction:row;gap:24px;align-items:flex-start}._dayColumns_1pr7o_147 ._section_1pr7o_159{flex:1;min-width:0}}._section_1pr7o_159{margin-bottom:32px}._sectionTitle_1pr7o_169{font-size:20px;font-weight:700;margin:0 0 2px}._sectionDate_1pr7o_175{font-size:13px;color:var(--color-muted);margin:0 0 12px}._workoutList_1pr7o_181{display:flex;flex-direction:column;gap:8px}._restDay_1pr7o_187{color:var(--color-muted);font-size:14px;padding:16px 0}._container_2sqc2_1{display:flex;flex-direction:column;gap:0}._monthNav_2sqc2_7{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}._monthLabel_2sqc2_14{font-size:18px;font-weight:700}._dowHeaders_2sqc2_19{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) 140px;gap:4px;margin-bottom:4px}._dowLabel_2sqc2_26{text-align:center;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-muted);padding:4px 0}._grid_2sqc2_36{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) 140px;gap:4px}._dayCell_2sqc2_42{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);min-height:110px;display:flex;flex-direction:column}._past_2sqc2_51{opacity:.55}._outsideMonth_2sqc2_55{background:var(--color-surface);border-color:var(--color-border);min-height:110px;opacity:.45}._today_2sqc2_62{border-color:var(--color-primary)}._dayHeader_2sqc2_66{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 4px;border-bottom:1px solid var(--color-border)}._dayNumber_2sqc2_75{font-size:15px;font-weight:700;line-height:1;color:var(--color-muted)}._today_2sqc2_62 ._dayNumber_2sqc2_75,._todayNumber_2sqc2_83{color:var(--color-primary)}._dayCell_2sqc2_42:not(._outsideMonth_2sqc2_55) ._dayNumber_2sqc2_75{color:var(--color-text)}._today_2sqc2_62 ._dayNumber_2sqc2_75{color:var(--color-primary)}._dayBadges_2sqc2_95{display:flex;align-items:center;gap:4px}._addButton_2sqc2_101{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);color:var(--color-muted);font-size:14px;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease,border-color .12s ease}._dayCell_2sqc2_42:hover ._addButton_2sqc2_101,._addButton_2sqc2_101:focus-visible{opacity:1}._addButton_2sqc2_101:hover{color:var(--color-primary);border-color:var(--color-primary)}._firstOfMonth_2sqc2_129{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--color-muted);letter-spacing:.04em}._cycleBadge_2sqc2_137{font-size:9px;font-weight:700;padding:1px 5px;border-radius:8px;line-height:1.6;white-space:nowrap}._raceDay_2sqc2_146{border-color:#e65c00;background:#fff8f5}[data-theme=dark] ._raceDay_2sqc2_146{background:#2a1a10;border-color:#e65c00}._raceBadges_2sqc2_156{padding:3px 6px 0;display:flex;flex-direction:column;gap:2px}._raceBadge_2sqc2_156{display:flex;flex-direction:column;gap:1px;background:#e65c0018;border:1px solid #e65c0044;border-radius:4px;padding:3px 5px}._raceBadgeTop_2sqc2_173{display:flex;align-items:center;gap:3px}._raceFlag_2sqc2_179{font-size:10px;line-height:1}._raceBadgeName_2sqc2_184{font-size:9px;font-weight:700;color:#e65c00;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._racePlanName_2sqc2_195{font-size:9px;font-weight:500;color:#e65c00;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._workouts_2sqc2_205{flex:1;padding:4px 6px;display:flex;flex-direction:column;gap:3px;overflow-y:auto}._restDay_2sqc2_214{color:var(--color-muted);font-size:11px;text-align:center;padding:10px 0}._weekStatsCell_2sqc2_221{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);min-height:110px;padding:8px;display:flex;flex-direction:column;gap:4px}._weekStatsEmpty_2sqc2_232{color:var(--color-muted);font-size:12px;margin:auto}._weekStatsTotal_2sqc2_238{font-size:13px;font-weight:700;color:var(--color-text);padding-bottom:4px;border-bottom:1px solid var(--color-border);margin-bottom:2px}._weekStatsBreakdown_2sqc2_247{display:flex;flex-direction:column;gap:2px}._weekStatRow_2sqc2_253{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--color-muted);white-space:nowrap}._weekStatDur_2sqc2_262{margin-left:auto;font-variant-numeric:tabular-nums}@media (max-width: 800px){._dayCell_2sqc2_42,._outsideMonth_2sqc2_55{min-height:80px}._dayNumber_2sqc2_75{font-size:13px}._dowLabel_2sqc2_26{font-size:10px}._cycleBadge_2sqc2_137{display:none}._weekStatsCell_2sqc2_221{min-height:80px;padding:6px}._weekStatsTotal_2sqc2_238{font-size:11px}._weekStatRow_2sqc2_253{font-size:10px}}._builder_fisr0_1{display:flex;flex-direction:column;gap:16px}._exerciseCard_fisr0_7{display:flex;flex-direction:column;gap:12px}._exerciseHeader_fisr0_13{display:flex;align-items:center;gap:8px}._exerciseNum_fisr0_19{flex:none;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;background:var(--color-border);color:var(--color-text);font-size:12px;font-weight:700}._nameInput_fisr0_33{flex:1;font-weight:600}._headerActions_fisr0_38{display:flex;gap:4px}._iconBtn_fisr0_43{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:var(--radius);width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1}._iconBtn_fisr0_43:hover:not(:disabled){background:var(--color-border)}._iconBtn_fisr0_43:disabled{opacity:.4;cursor:not-allowed}._removeBtn_fisr0_59:hover:not(:disabled){background:var(--color-danger);border-color:var(--color-danger);color:#fff}._supersetBlock_fisr0_65{display:flex;flex-direction:column;gap:10px;padding:10px 10px 12px;border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:var(--radius);background:#3b82f60d}._supersetLabel_fisr0_76{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary)}._hint_fisr0_84{font-size:12px;color:var(--color-muted)}._setsTable_fisr0_89{display:flex;flex-direction:column;gap:6px}._setRow_fisr0_95{display:grid;grid-template-columns:36px 1fr 1fr 1fr 1.5fr auto;gap:8px;align-items:center}._setHeader_fisr0_102{font-size:12px;color:var(--color-muted);font-weight:600}._setHeader_fisr0_102 span{padding:0 2px}._setNum_fisr0_109{text-align:center;color:var(--color-muted);font-size:13px}._setRow_fisr0_95 input{width:100%;padding:6px 8px}._setActions_fisr0_120{display:flex;gap:4px}._setControls_fisr0_125{display:flex;align-items:center;gap:12px;flex-wrap:wrap}._addNextRow_fisr0_132{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--color-border);padding-top:12px}._quickAdd_fisr0_140{display:flex;align-items:center;gap:6px}._quickAdd_fisr0_140 input{width:56px;padding:6px 8px}._addExercise_fisr0_150{align-self:flex-start}._footer_fisr0_154{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}._fieldError_fisr0_161{color:#fca5a5;font-size:12px;padding:2px 0}@media (max-width: 640px){._setRow_fisr0_95{grid-template-columns:28px 1fr 1fr;grid-auto-rows:auto}._setHeader_fisr0_102{display:none}._setRow_fisr0_95 input{min-width:0}}._overlay_1isfw_1{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:flex-start;justify-content:center;padding:32px 16px;overflow-y:auto;z-index:1000}._modal_1isfw_13{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:24px;max-width:640px;width:100%}._header_1isfw_22{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 16px}._title_1isfw_31{margin:0;font-size:18px;font-weight:600}._fields_1isfw_37{display:flex;gap:12px}._field_1isfw_37{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--color-muted)}._headerActions_74ent_1{display:flex;gap:.5rem;align-items:center}._desktopView_74ent_7{display:block}._mobileView_74ent_11{display:none}@media (max-width: 800px){._desktopView_74ent_7{display:none}._mobileView_74ent_11{display:block}}._weekNav_74ent_26{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}._weekLabel_74ent_33{font-size:15px;font-weight:700;text-align:center}._daySection_74ent_39{margin-bottom:28px}._todaySection_74ent_43 ._dayTitle_74ent_43{color:var(--color-primary)}._dayTitle_74ent_43{font-size:20px;font-weight:700;margin:0 0 2px}._dayDate_74ent_53{font-size:13px;color:var(--color-muted);margin:0 0 12px}._workoutList_74ent_59{display:flex;flex-direction:column;gap:8px}._restDay_74ent_65{color:var(--color-muted);font-size:14px;padding:12px 0}._addWorkoutBtn_74ent_71{margin-top:8px;width:100%;padding:8px;border:1px dashed var(--color-border);border-radius:var(--radius);background:transparent;color:var(--color-muted);font-size:14px;cursor:pointer}._addWorkoutBtn_74ent_71:hover{color:var(--color-primary);border-color:var(--color-primary)}._raceBanner_74ent_88{display:flex;align-items:center;gap:8px;background:#e65c0018;border:1px solid #e65c0044;border-radius:var(--radius);padding:8px 12px;margin-bottom:8px}._raceFlag_74ent_99{font-size:16px}._raceBannerName_74ent_103{font-size:13px;font-weight:700;color:#e65c00}._weekStatsBanner_74ent_109{display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 14px;margin-bottom:20px;font-size:13px}._weekStatsBannerTotal_74ent_122{font-weight:700;color:var(--color-text)}._weekStatsBannerItem_74ent_127{color:var(--color-muted)}._card_1b9k8_1{cursor:pointer;transition:border-color .15s}._card_1b9k8_1:hover{border-color:var(--color-primary)}._header_1b9k8_10{display:flex;align-items:center;gap:12px;margin-bottom:8px}._sport_1b9k8_17{font-size:24px}._info_1b9k8_21{flex:1}._name_1b9k8_25{font-weight:600;font-size:15px}._meta_1b9k8_30{font-size:12px;color:var(--color-muted)}._race_1b9k8_35{font-size:13px;color:var(--color-muted);margin-bottom:8px}._footer_1b9k8_41{display:flex;justify-content:flex-end}._grid_5ud96_1{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}._formCard_5ud96_7{margin-bottom:24px}._empty_5ud96_11{text-align:center;color:var(--color-muted);padding:48px}._meta_1cstb_1{margin-bottom:24px}._row_1cstb_5{display:flex;gap:16px;padding:6px 0;border-bottom:1px solid var(--color-border);align-items:center}._row_1cstb_5:last-child{border-bottom:none}._label_1cstb_17{width:120px;flex-shrink:0;color:var(--color-muted);font-size:13px}._workoutList_1cstb_24{display:flex;flex-direction:column;gap:6px}._workoutRow_1cstb_30{display:flex;align-items:center;gap:12px;cursor:pointer;padding:10px 14px;transition:border-color .15s}._workoutRow_1cstb_30:hover{border-color:var(--color-primary)}._date_1cstb_43{font-size:12px;color:var(--color-muted);width:90px;flex-shrink:0;font-variant-numeric:tabular-nums}._wTitle_1cstb_51{flex:1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._builder_6dl0t_1{display:flex;flex-direction:column;gap:16px}._segmentCard_6dl0t_7{display:flex;flex-direction:column;gap:12px}._segmentHeader_6dl0t_13{display:flex;align-items:center;gap:8px;flex-wrap:wrap}._segmentNum_6dl0t_20{flex:none;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;background:var(--color-border);color:var(--color-text);font-size:12px;font-weight:700}._nameInput_6dl0t_34{flex:1;min-width:160px;font-weight:600}._kindSelect_6dl0t_40{flex:none;padding:6px 8px}._headerActions_6dl0t_45{display:flex;gap:4px;margin-left:auto}._iconBtn_6dl0t_51{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:var(--radius);width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1}._iconBtn_6dl0t_51:hover:not(:disabled){background:var(--color-border)}._iconBtn_6dl0t_51:disabled{opacity:.4;cursor:not-allowed}._removeBtn_6dl0t_67:hover:not(:disabled){background:var(--color-danger);border-color:var(--color-danger);color:#fff}._hint_6dl0t_73{font-size:12px;color:var(--color-muted)}._repsTable_6dl0t_78{display:flex;flex-direction:column;gap:6px}._repRow_6dl0t_84{display:grid;grid-template-columns:36px 1fr 1fr 1.2fr 1fr 1.5fr auto;gap:8px;align-items:center}._repHeader_6dl0t_91{font-size:12px;color:var(--color-muted);font-weight:600}._repHeader_6dl0t_91 span{padding:0 2px}._repNum_6dl0t_98{text-align:center;color:var(--color-muted);font-size:13px}._repRow_6dl0t_84 input{width:100%;padding:6px 8px}._repActions_6dl0t_109{display:flex;gap:4px}._repControls_6dl0t_114{display:flex;align-items:center;gap:12px;flex-wrap:wrap}._addNextRow_6dl0t_121{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--color-border);padding-top:12px}._quickAdd_6dl0t_129{display:flex;align-items:center;gap:6px}._quickAdd_6dl0t_129 input{width:64px;padding:6px 8px}._addSegment_6dl0t_139{align-self:flex-start}._footer_6dl0t_143{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}._fieldError_6dl0t_150{color:#fca5a5;font-size:12px;padding:2px 0}@media (max-width: 640px){._repRow_6dl0t_84{grid-template-columns:28px 1fr 1fr;grid-auto-rows:auto}._repHeader_6dl0t_91{display:none}._repRow_6dl0t_84 input{min-width:0}}._statusRow_j90u2_1{display:flex;align-items:center;gap:12px;margin-bottom:12px}._stravaLink_j90u2_8{font-size:13px;color:#fc4c02}._desc_j90u2_13{color:var(--color-muted);font-size:14px;margin:0 0 16px}._grid_j90u2_19{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}._stat_j90u2_1{background:var(--color-bg);border-radius:var(--radius);padding:10px 12px}._statLabel_j90u2_31{font-size:11px;color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}._statValue_j90u2_39{font-size:18px;font-weight:600}._modalOverlay_j90u2_44{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}._modal_j90u2_44{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:24px;max-width:400px;width:calc(100% - 32px)}._modalTitle_j90u2_63{margin:0 0 8px;font-size:16px;font-weight:600}._modalBody_j90u2_69{margin:0 0 20px;font-size:14px;color:var(--color-muted);line-height:1.5}._modalActions_j90u2_76{display:flex;gap:8px;justify-content:flex-end}._copyDates_j90u2_82{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}._copyDateRow_j90u2_89{display:flex;gap:8px;align-items:center}._copyDateRow_j90u2_89 input{flex:1}._exerciseList_j90u2_98{display:flex;flex-direction:column;gap:14px}._supersetGroup_j90u2_104{display:flex;flex-direction:column;gap:10px;padding:10px 12px;border-left:3px solid var(--color-primary);border-radius:var(--radius);background:#3b82f60d}._exercise_j90u2_98{background:var(--color-bg);border-radius:var(--radius);padding:12px 14px}._exerciseTitle_j90u2_120{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;margin-bottom:8px}._setList_j90u2_129{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}._setItem_j90u2_138{display:flex;align-items:baseline;gap:10px;font-size:14px}._setMain_j90u2_145{font-variant-numeric:tabular-nums;min-width:110px}._setMeta_j90u2_150{font-size:12px;color:var(--color-muted)}._sectionHeader_j90u2_155{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}._sectionTitle_j90u2_163{margin:0 0 12px;font-size:15px;font-weight:600}._sectionHeader_j90u2_155 ._sectionTitle_j90u2_163{margin:0}._lapTableWrap_j90u2_172{overflow-x:auto}._lapTable_j90u2_172{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}._lapTable_j90u2_172 th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-muted);font-weight:600;padding:6px 10px;border-bottom:1px solid var(--color-border)}._lapTable_j90u2_172 td{padding:6px 10px;border-bottom:1px solid var(--color-border)}._lapTable_j90u2_172 tbody tr:last-child td{border-bottom:none}._bestEfforts_j90u2_203{margin-top:16px}._bestEffortsRow_j90u2_207{display:flex;flex-wrap:wrap;gap:8px}._bestEffort_j90u2_203{background:var(--color-bg);border-radius:var(--radius);padding:6px 10px;font-size:13px;font-variant-numeric:tabular-nums}._container_pdk1r_1{padding:16px}._connected_pdk1r_5,._disconnected_pdk1r_5{display:flex;flex-direction:column;gap:12px}._status_pdk1r_11{display:flex;align-items:center;gap:8px;font-weight:600}._dot_pdk1r_18{width:10px;height:10px;border-radius:50%;background:var(--color-success)}._desc_pdk1r_25{color:var(--color-muted);font-size:14px;margin:0}._stravaBtn_pdk1r_31{display:inline-flex;align-items:center;gap:8px;background:#fc4c02;color:#fff;border:none;border-radius:var(--radius);padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;width:fit-content;transition:background .15s}._stravaBtn_pdk1r_31:hover{background:#e03e00}._stravaBtn_pdk1r_31:disabled{opacity:.6}._sections_7nh7z_1{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 768px){._sections_7nh7z_1{grid-template-columns:1fr}}._fullWidth_7nh7z_13{grid-column:1 / -1}._sectionTitle_7nh7z_17{font-size:15px;font-weight:600;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}._statsRow_1lgh4_1{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 640px){._statsRow_1lgh4_1{grid-template-columns:repeat(2,1fr)}}._statCard_1lgh4_13{display:flex;flex-direction:column;align-items:center;padding:20px 16px;text-align:center}._statValue_1lgh4_21{font-size:32px;font-weight:700;color:var(--color-primary);line-height:1}._statLabel_1lgh4_28{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);margin-top:6px}._sectionTitle_1lgh4_37{font-size:15px;font-weight:600;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}._tableWrapper_1lgh4_45{overflow-x:auto}._table_1lgh4_45{width:100%;border-collapse:collapse;font-size:13px}._table_1lgh4_45 th{text-align:left;padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);border-bottom:1px solid var(--color-border)}._table_1lgh4_45 td{padding:10px 12px;border-bottom:1px solid var(--color-border);vertical-align:middle}._table_1lgh4_45 tr:last-child td{border-bottom:none}._table_1lgh4_45 tr:hover td{background:#ffffff05}._selfRow_1lgh4_80 td{opacity:.7}._email_1lgh4_84{color:var(--color-muted);font-size:12px}._adminOn_1lgh4_89{background:#1e3a5f;color:#93c5fd;border:1px solid #2563eb;font-size:11px;font-weight:600;padding:4px 10px}._adminOn_1lgh4_89:hover:not(:disabled){background:#1e40af}._adminOff_1lgh4_102{background:var(--color-surface);color:var(--color-muted);border:1px solid var(--color-border);font-size:11px;font-weight:600;padding:4px 10px}._adminOff_1lgh4_102:hover:not(:disabled){background:var(--color-border);color:var(--color-text)}._errorBanner_1lgh4_116{background:#ef44441a;border:1px solid var(--color-danger);color:var(--color-danger);padding:8px 12px;border-radius:var(--radius);margin-bottom:16px;font-size:13px}._empty_1lgh4_126{text-align:center;color:var(--color-muted);padding:48px}._page_ualpo_1{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:16px}._card_ualpo_9{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:32px;width:100%;max-width:400px}._title_ualpo_18{font-size:24px;font-weight:700;text-align:center;margin:0 0 24px;color:var(--color-primary)}._success_ualpo_26{background:#14532d;border:1px solid #22c55e;color:#86efac;padding:10px;border-radius:var(--radius);margin-bottom:16px;font-size:13px}._switch_ualpo_36{text-align:center;margin:16px 0 0;color:var(--color-muted);font-size:13px}._link_ualpo_43{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:13px;padding:0;text-decoration:underline}*,*:before,*:after{box-sizing:border-box}:root{--color-bg: #0f172a;--color-surface: #1e293b;--color-border: #334155;--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--color-text: #f1f5f9;--color-muted: #94a3b8;--radius: 8px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html{overflow-x:hidden}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font);font-size:14px;line-height:1.5;overflow-x:hidden}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:var(--font)}input,textarea,select{font-family:var(--font);font-size:14px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:var(--radius);padding:8px 12px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--color-primary)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:var(--radius);font-size:14px;font-weight:500;transition:background .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-border)}.btn-danger{background:var(--color-danger);color:#fff}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:16px}.badge{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-scheduled{background:#1e40af;color:#93c5fd}.badge-completed{background:#14532d;color:#86efac}.badge-skipped{background:#451a03;color:#fde68a}.badge-partial{background:#7c2d12;color:#fdba74}.badge-active{background:#1e3a5f;color:#93c5fd}.badge-commute{background:#3b2f6e;color:#c4b5fd}.form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.form-group label{font-size:13px;color:var(--color-muted);font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%}.page{max-width:1400px;margin:0 auto;padding:16px 8px}.page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:24px}.page-title{font-size:22px;font-weight:700;margin:0}.loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-muted)}.error-msg{background:#7f1d1d;border:1px solid #ef4444;color:#fca5a5;padding:12px;border-radius:var(--radius);margin-bottom:16px}
