.ActivityHeatmap-module__60OO-q__wrap{--cell:13px;--gap:3px;position:relative}.ActivityHeatmap-module__60OO-q__scroll{padding:0 4px 4px 0;overflow-x:auto}.ActivityHeatmap-module__60OO-q__grid{grid-template-rows:16px auto;grid-template-columns:28px auto;gap:4px 6px;width:max-content;display:grid}.ActivityHeatmap-module__60OO-q__months{grid-column:2;grid-template-columns:repeat(var(--weeks), var(--cell));column-gap:var(--gap);color:#94a3b8;font-size:.7rem;display:grid}.ActivityHeatmap-module__60OO-q__months span{white-space:nowrap}.ActivityHeatmap-module__60OO-q__rowLabels{grid-template-rows:repeat(7, var(--cell));row-gap:var(--gap);color:#94a3b8;font-size:.68rem;line-height:var(--cell);display:grid}.ActivityHeatmap-module__60OO-q__cells{gap:var(--gap);display:flex}.ActivityHeatmap-module__60OO-q__week{grid-template-rows:repeat(7, var(--cell));row-gap:var(--gap);display:grid}.ActivityHeatmap-module__60OO-q__cell,.ActivityHeatmap-module__60OO-q__empty{width:var(--cell);height:var(--cell);border-radius:3px}.ActivityHeatmap-module__60OO-q__cell{outline-offset:-1px;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#94a3b829;outline:1px solid #0f172a0a}@media (hover:hover){.ActivityHeatmap-module__60OO-q__cell:hover{transform:scale(1.25)}}.ActivityHeatmap-module__60OO-q__cell[data-level="1"]{background:var(--blue-200)}.ActivityHeatmap-module__60OO-q__cell[data-level="2"]{background:var(--blue-400)}.ActivityHeatmap-module__60OO-q__cell[data-level="3"]{background:var(--blue-600)}.ActivityHeatmap-module__60OO-q__cell[data-level="4"]{background:var(--blue-900)}.ActivityHeatmap-module__60OO-q__legend{justify-content:flex-end;align-items:center;gap:var(--gap);color:#94a3b8;margin-top:10px;font-size:.72rem;display:flex}.ActivityHeatmap-module__60OO-q__legend>span:nth-child(2){margin-right:4px}.ActivityHeatmap-module__60OO-q__legend>span:last-child{margin-left:4px}.ActivityHeatmap-module__60OO-q__legendCompleted{align-items:center;gap:7px;margin-left:4px;margin-right:auto;display:flex}.ActivityHeatmap-module__60OO-q__cell[data-completed]{background:linear-gradient(135deg,#fde68a,#f59e0b);outline-color:#b4530926;box-shadow:0 0 8px #f59e0b99}.ActivityHeatmap-module__60OO-q__toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.ActivityHeatmap-module__60OO-q__filterGroup{align-items:center;gap:6px;min-width:0;max-width:100%;display:flex}.ActivityHeatmap-module__60OO-q__filter{min-width:0;max-width:280px;height:34px;font-family:var(--font-body);color:#334155;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#ffffffd9;border:1px solid #94a3b84d;border-radius:999px;align-items:center;gap:7px;padding:0 12px 0 11px;font-size:.82rem;font-weight:500;display:inline-flex;position:relative;box-shadow:0 1px 2px #0f172a0a}@media (hover:hover){.ActivityHeatmap-module__60OO-q__filter:hover{background:#fff;border-color:#3b82f666}}.ActivityHeatmap-module__60OO-q__filter:focus-within{border-color:var(--blue-400);box-shadow:0 0 0 3px #3b82f624}.ActivityHeatmap-module__60OO-q__filter[data-active]{color:var(--blue-700);background:#3b82f614;border-color:#3b82f673;font-weight:600}.ActivityHeatmap-module__60OO-q__filterIcon{color:#94a3b8;flex-shrink:0}.ActivityHeatmap-module__60OO-q__filter[data-active] .ActivityHeatmap-module__60OO-q__filterIcon,.ActivityHeatmap-module__60OO-q__filter[data-active] .ActivityHeatmap-module__60OO-q__filterChevron{color:var(--blue-600)}.ActivityHeatmap-module__60OO-q__filterLabel{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ActivityHeatmap-module__60OO-q__filterChevron{color:#94a3b8;transition:transform var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);flex-shrink:0}@media (hover:hover){.ActivityHeatmap-module__60OO-q__filter:hover .ActivityHeatmap-module__60OO-q__filterChevron{transform:translateY(1px)}}.ActivityHeatmap-module__60OO-q__filterSelect{opacity:0;cursor:pointer;width:100%;font-size:16px;position:absolute;top:0;bottom:0;left:0;right:0}.ActivityHeatmap-module__60OO-q__filterClear{color:#64748b;cursor:pointer;width:28px;height:28px;transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#94a3b826;border:none;border-radius:999px;flex-shrink:0;place-items:center;display:grid}@media (hover:hover){.ActivityHeatmap-module__60OO-q__filterClear:hover{color:#dc2626;background:#ef44441a}}.ActivityHeatmap-module__60OO-q__filterSummary{color:#64748b;align-items:center;gap:8px;font-size:.78rem;display:inline-flex}.ActivityHeatmap-module__60OO-q__filterSummary strong{color:#0f172a;font-weight:700}.ActivityHeatmap-module__60OO-q__filterDone{color:#b45309;background:#f59e0b1f;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.ActivityHeatmap-module__60OO-q__legend .ActivityHeatmap-module__60OO-q__cell{cursor:default}@media (hover:hover){.ActivityHeatmap-module__60OO-q__legend .ActivityHeatmap-module__60OO-q__cell:hover{transform:none}}.ActivityHeatmap-module__60OO-q__tooltip{color:#f8fafc;white-space:nowrap;pointer-events:none;z-index:5;background:#0f172a;border-radius:9px;flex-direction:column;gap:2px;padding:7px 10px;font-size:.75rem;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 8px));box-shadow:0 6px 18px #0f172a40}.ActivityHeatmap-module__60OO-q__tooltipDate{color:#cbd5e1}.ActivityHeatmap-module__60OO-q__tooltipDate:first-letter{text-transform:uppercase}.ActivityHeatmap-module__60OO-q__tooltipGoals{flex-direction:column;gap:2px;margin:2px 0;padding:0;list-style:none;display:flex}.ActivityHeatmap-module__60OO-q__tooltipGoals li{justify-content:space-between;gap:12px;display:flex}.ActivityHeatmap-module__60OO-q__tooltipGoals b{color:#e2e8f0;text-overflow:ellipsis;max-width:180px;font-weight:500;overflow:hidden}.ActivityHeatmap-module__60OO-q__tooltipGoals i{color:#94a3b8;font-style:normal}.ActivityHeatmap-module__60OO-q__tooltipCompleted{color:#fbbf24;align-items:center;gap:5px;font-style:normal;display:flex}.ActivityHeatmap-module__60OO-q__cellWave{animation:ActivityHeatmap-module__60OO-q__cellIn var(--dur-slow) var(--ease-spring) calc(var(--w,0) * 12ms + var(--d,0) * 20ms) both}@keyframes ActivityHeatmap-module__60OO-q__cellIn{0%{opacity:0;scale:.4}to{opacity:1;scale:1}}
.NumericGoalChart-module__pAAj3W__chart{width:100%;min-height:170px;position:relative}.NumericGoalChart-module__pAAj3W__chart svg{display:block;overflow:visible}.NumericGoalChart-module__pAAj3W__grid{stroke:#94a3b838;stroke-width:1px}.NumericGoalChart-module__pAAj3W__axis{fill:#94a3b8;font-size:10.5px;font-family:var(--font-body)}.NumericGoalChart-module__pAAj3W__target{stroke:#10b981;stroke-width:1.5px;stroke-dasharray:5 4}.NumericGoalChart-module__pAAj3W__targetLabel{fill:#475569;font-size:10.5px;font-weight:600;font-family:var(--font-body)}.NumericGoalChart-module__pAAj3W__area{fill:#3b82f61a}.NumericGoalChart-module__pAAj3W__line{fill:none;stroke:var(--blue-600);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.NumericGoalChart-module__pAAj3W__dot{fill:var(--blue-600);stroke:#fff;stroke-width:2px}.NumericGoalChart-module__pAAj3W__crosshair{stroke:#0f172a40;stroke-width:1px}.NumericGoalChart-module__pAAj3W__tooltip{color:#f8fafc;white-space:nowrap;pointer-events:none;background:#0f172a;border-radius:9px;flex-direction:column;gap:2px;padding:7px 10px;font-size:.75rem;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 12px));box-shadow:0 6px 18px #0f172a40}.NumericGoalChart-module__pAAj3W__tooltip span{color:#cbd5e1}.NumericGoalChart-module__pAAj3W__line{stroke-dasharray:var(--line-length,0);animation:NumericGoalChart-module__pAAj3W__lineDraw 1.2s var(--ease-in-out) both}.NumericGoalChart-module__pAAj3W__area{animation:NumericGoalChart-module__pAAj3W__areaIn .8s var(--ease-out) .45s both}.NumericGoalChart-module__pAAj3W__dot{transform-box:fill-box;transform-origin:50%;animation:NumericGoalChart-module__pAAj3W__dotIn var(--dur-slow) var(--ease-spring) 1.15s both}@keyframes NumericGoalChart-module__pAAj3W__lineDraw{0%{stroke-dashoffset:var(--line-length,0)}to{stroke-dashoffset:0}}@keyframes NumericGoalChart-module__pAAj3W__areaIn{0%{opacity:0}to{opacity:1}}@keyframes NumericGoalChart-module__pAAj3W__dotIn{0%{scale:0}to{scale:1}}
.GoalForecast-module__H_iZ4q__forecast{color:#64748b;background:#94a3b81a;border-radius:10px;align-items:flex-start;gap:8px;margin-top:12px;padding:9px 12px;font-size:.8rem;line-height:1.45;display:flex}.GoalForecast-module__H_iZ4q__forecast svg{flex-shrink:0;margin-top:2px}.GoalForecast-module__H_iZ4q__forecast strong{color:#0f172a}.GoalForecast-module__H_iZ4q__forecastGood{color:#047857;background:#10b98114}.GoalForecast-module__H_iZ4q__forecastBad{color:#b91c1c;background:#ef444412}
.CycleChart-module__oCQzCq__chart{width:100%;min-height:180px;position:relative}.CycleChart-module__oCQzCq__chart svg{display:block;overflow:visible}.CycleChart-module__oCQzCq__grid{stroke:#94a3b838;stroke-width:1px}.CycleChart-module__oCQzCq__axis{fill:#94a3b8;font-size:10.5px;font-family:var(--font-body)}.CycleChart-module__oCQzCq__hit{fill:#0000;cursor:pointer}.CycleChart-module__oCQzCq__bar{transition:opacity var(--dur-fast) var(--ease-out), filter var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);pointer-events:none}.CycleChart-module__oCQzCq__bar[data-state=done]{fill:#34d399}.CycleChart-module__oCQzCq__bar[data-state=missed]{fill:#fca5a5}.CycleChart-module__oCQzCq__bar[data-state=current]{fill:var(--blue-400)}.CycleChart-module__oCQzCq__bar[data-active]{filter:brightness(.92)}.CycleChart-module__oCQzCq__target{stroke:#0f172a;stroke-width:1.5px;stroke-linecap:round;opacity:.55;pointer-events:none}.CycleChart-module__oCQzCq__tooltip{color:#f8fafc;white-space:nowrap;pointer-events:none;z-index:5;background:#0f172a;border-radius:9px;flex-direction:column;gap:2px;padding:7px 10px;font-size:.75rem;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 6px 18px #0f172a40}.CycleChart-module__oCQzCq__tooltip span{color:#cbd5e1}.CycleChart-module__oCQzCq__legend{color:#64748b;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:.75rem;display:flex}.CycleChart-module__oCQzCq__legend span{align-items:center;gap:6px;display:flex}.CycleChart-module__oCQzCq__legend i{border-radius:3px;width:10px;height:10px}.CycleChart-module__oCQzCq__legend i[data-state=done]{background:#34d399}.CycleChart-module__oCQzCq__legend i[data-state=missed]{background:#fca5a5}.CycleChart-module__oCQzCq__legend i[data-state=current]{background:var(--blue-400)}.CycleChart-module__oCQzCq__legend .CycleChart-module__oCQzCq__legendTarget{border-top:1.5px solid #0f172a8c;border-radius:0;width:14px;height:0}.CycleChart-module__oCQzCq__bar{transform-box:fill-box;transform-origin:bottom;animation:CycleChart-module__oCQzCq__barGrow var(--dur-enter) var(--ease-out) calc(min(var(--i,0), 20) * 30ms) both}@keyframes CycleChart-module__oCQzCq__barGrow{0%{scale:1 0}to{scale:1}}
.ConfirmDialog-module__Zew2iq__content{align-items:flex-start;gap:14px;margin-bottom:22px;display:flex}.ConfirmDialog-module__Zew2iq__icon{width:40px;height:40px;color:var(--blue-600);background:#3b82f61a;border:1px solid #3b82f62e;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ConfirmDialog-module__Zew2iq__iconDanger{color:#ef4444;background:#ef444414;border-color:#ef444433}.ConfirmDialog-module__Zew2iq__message{color:#475569;flex-direction:column;gap:8px;padding-top:2px;font-size:.9rem;line-height:1.55;display:flex}.ConfirmDialog-module__Zew2iq__message strong{color:#1e293b}.ConfirmDialog-module__Zew2iq__btnDanger{font-family:var(--font-body);color:#fff;cursor:pointer;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;padding:10px 24px;font-size:.875rem;font-weight:600;box-shadow:0 4px 14px #dc26264d}@media (hover:hover){.ConfirmDialog-module__Zew2iq__btnDanger:hover{opacity:.9;transform:translateY(-1px)}}
.GroupPanel-module__kxqdKG__section{flex-direction:column;gap:10px;display:flex}.GroupPanel-module__kxqdKG__header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.GroupPanel-module__kxqdKG__headerIcon{color:var(--b400)}.GroupPanel-module__kxqdKG__title{font-family:var(--font-display);color:#0f172a;font-size:1.05rem;font-weight:700}.GroupPanel-module__kxqdKG__count{color:var(--b600);background:#3b82f61a;border-radius:99px;padding:2px 8px;font-size:.72rem;font-weight:700}.GroupPanel-module__kxqdKG__inviteBtn{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;font-family:var(--font-body);cursor:pointer;transition:opacity var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);border:none;border-radius:10px;align-items:center;gap:6px;margin-left:auto;padding:7px 14px;font-size:.8rem;font-weight:600;display:inline-flex;box-shadow:0 4px 12px #2563eb40}.GroupPanel-module__kxqdKG__inviteBtn:disabled{opacity:.5;cursor:not-allowed}@media (hover:hover){.GroupPanel-module__kxqdKG__inviteBtn:hover:not(:disabled){opacity:.9}}.GroupPanel-module__kxqdKG__inviteBox{border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.GroupPanel-module__kxqdKG__inviteRow{gap:8px;display:flex}.GroupPanel-module__kxqdKG__inviteInput{min-width:0;font-family:var(--font-body);color:#334155;background:#fffc;border:1px solid #3b82f633;border-radius:10px;flex:1;padding:8px 12px;font-size:.82rem}.GroupPanel-module__kxqdKG__copyBtn{color:var(--b600);font-family:var(--font-body);cursor:pointer;background:#3b82f612;border:1px solid #3b82f640;border-radius:10px;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.GroupPanel-module__kxqdKG__inviteHint{color:#64748b;font-size:.78rem}.GroupPanel-module__kxqdKG__error{color:#ef4444;font-size:.82rem}.GroupPanel-module__kxqdKG__winner{color:#b45309;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;display:flex;background:linear-gradient(135deg,#fbbf242e,#f59e0b14)!important;border-color:#f59e0b4d!important}.GroupPanel-module__kxqdKG__list{flex-direction:column;gap:7px;list-style:none;display:flex}.GroupPanel-module__kxqdKG__member{border-radius:12px;align-items:center;gap:12px;padding:10px 14px;display:flex}.GroupPanel-module__kxqdKG__memberViewing{box-shadow:0 0 0 1px var(--blue-300);border-color:var(--blue-300)!important}.GroupPanel-module__kxqdKG__rank{text-align:center;width:20px;font-family:var(--font-display);color:#94a3b8;flex-shrink:0;font-size:.9rem;font-weight:700}.GroupPanel-module__kxqdKG__rankFirst{color:#d97706}.GroupPanel-module__kxqdKG__avatar{background:linear-gradient(135deg, var(--blue-400), var(--blue-600));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;display:flex}.GroupPanel-module__kxqdKG__memberBody{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.GroupPanel-module__kxqdKG__memberTop{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.GroupPanel-module__kxqdKG__name{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.GroupPanel-module__kxqdKG__you{color:#94a3b8;font-weight:400}.GroupPanel-module__kxqdKG__role{letter-spacing:.04em;text-transform:uppercase;color:#8b5cf6;background:#8b5cf614;border:1px solid #8b5cf633;border-radius:99px;align-items:center;gap:4px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.GroupPanel-module__kxqdKG__roleLeader{color:#d97706;background:#f59e0b14;border-color:#f59e0b40}.GroupPanel-module__kxqdKG__progressRow{align-items:center;gap:8px;display:flex}.GroupPanel-module__kxqdKG__progressTrack{background:#3b82f61a;border-radius:99px;flex:1;height:6px;overflow:hidden}.GroupPanel-module__kxqdKG__progressFill{background:linear-gradient(90deg, var(--blue-400), var(--blue-600));height:100%;transition:width var(--dur-progress) var(--ease-out);animation:GroupPanel-module__kxqdKG__barIn var(--dur-progress) var(--ease-out) both;border-radius:99px}.GroupPanel-module__kxqdKG__progressDone{background:linear-gradient(90deg,#34d399,#059669)}.GroupPanel-module__kxqdKG__progressPct{text-align:right;width:38px;color:var(--b600);font-size:.78rem;font-weight:700}.GroupPanel-module__kxqdKG__progressValue{color:var(--b600);white-space:nowrap;font-size:.85rem;font-weight:700}.GroupPanel-module__kxqdKG__menuWrap{flex-shrink:0;position:relative}.GroupPanel-module__kxqdKG__memberMenuOpen{z-index:5;position:relative}.GroupPanel-module__kxqdKG__iconBtnActive{background:#3b82f624}.GroupPanel-module__kxqdKG__menu{min-width:200px;box-shadow:var(--glass-shadow-lg);z-index:10;background:#fff;border:1px solid #3b82f624;border-radius:14px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.GroupPanel-module__kxqdKG__menuItem{width:100%;font-family:var(--font-body);color:#334155;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:9px 12px;font-size:.85rem;font-weight:500;display:flex}.GroupPanel-module__kxqdKG__menuItem svg{color:var(--b500);flex-shrink:0}.GroupPanel-module__kxqdKG__menuItemDanger,.GroupPanel-module__kxqdKG__menuItemDanger svg{color:#ef4444}@media (hover:hover){.GroupPanel-module__kxqdKG__menuItem:hover{background:#3b82f614}.GroupPanel-module__kxqdKG__menuItemDanger:hover{background:#ef444414}}.GroupPanel-module__kxqdKG__iconBtn,.GroupPanel-module__kxqdKG__viewLink{width:30px;height:30px;color:var(--b600);cursor:pointer;transition:background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#3b82f60d;border:1px solid #3b82f62e;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.GroupPanel-module__kxqdKG__iconBtn:disabled{opacity:.5;cursor:not-allowed}@media (hover:hover){.GroupPanel-module__kxqdKG__iconBtn:hover:not(:disabled),.GroupPanel-module__kxqdKG__viewLink:hover{background:#3b82f61f}}.GroupPanel-module__kxqdKG__leaveBtn{color:#ef4444;font-family:var(--font-body);cursor:pointer;background:0 0;border:1px solid #ef444433;border-radius:10px;align-self:flex-start;align-items:center;gap:6px;padding:7px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.GroupPanel-module__kxqdKG__leaveBtn:disabled{opacity:.5;cursor:not-allowed}@media (hover:hover){.GroupPanel-module__kxqdKG__leaveBtn:hover:not(:disabled){background:#ef44440f}}.GroupPanel-module__kxqdKG__podiums{flex-direction:column;gap:10px;margin-top:6px;display:flex}.GroupPanel-module__kxqdKG__podium{border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.GroupPanel-module__kxqdKG__podiumTitle{color:#475569;font-size:.8rem;font-weight:700}.GroupPanel-module__kxqdKG__podiumEmpty{color:#94a3b8;font-size:.82rem}.GroupPanel-module__kxqdKG__places{flex-direction:column;gap:6px;list-style:none;display:flex}.GroupPanel-module__kxqdKG__place{color:#334155;align-items:center;gap:10px;font-size:.86rem;display:flex}.GroupPanel-module__kxqdKG__placeMedal{text-align:center;width:28px;font-family:var(--font-display);border-radius:8px;flex-shrink:0;padding:2px 0;font-size:.75rem;font-weight:700}.GroupPanel-module__kxqdKG__place[data-position="1"] .GroupPanel-module__kxqdKG__placeMedal{color:#b45309;background:#fbbf2438}.GroupPanel-module__kxqdKG__place[data-position="2"] .GroupPanel-module__kxqdKG__placeMedal{color:#475569;background:#94a3b838}.GroupPanel-module__kxqdKG__place[data-position="3"] .GroupPanel-module__kxqdKG__placeMedal{color:#9a3412;background:#ea580c26}.GroupPanel-module__kxqdKG__placeName{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.GroupPanel-module__kxqdKG__placeScore{color:var(--b600);white-space:nowrap;flex-shrink:0;font-weight:700}.GroupPanel-module__kxqdKG__showMore{color:var(--b600);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.8rem;font-weight:600}@media (max-width:480px){.GroupPanel-module__kxqdKG__member{gap:10px;padding:10px 12px}.GroupPanel-module__kxqdKG__avatar{width:28px;height:28px;font-size:.78rem}}@keyframes GroupPanel-module__kxqdKG__barIn{0%{width:0}}
.Toast-module__DUO-ja__region{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:300;pointer-events:none;flex-direction:column;width:min(440px,100% - 32px);display:flex;position:fixed;transform:translate(-50%)}.Toast-module__DUO-ja__slot{animation:Toast-module__DUO-ja__slotIn var(--dur-slow) var(--ease-out) both;grid-template-rows:1fr;padding-top:8px;display:grid}.Toast-module__DUO-ja__slotInner{min-height:0}.Toast-module__DUO-ja__slotLeaving{animation:Toast-module__DUO-ja__slotOut var(--dur-base) var(--ease-in) forwards}.Toast-module__DUO-ja__toast{pointer-events:auto;animation:Toast-module__DUO-ja__toastIn var(--dur-slow) var(--ease-spring) both;border-radius:16px;align-items:center;gap:10px;padding:10px 8px 10px 14px;display:flex}.Toast-module__DUO-ja__slotLeaving .Toast-module__DUO-ja__toast{animation:Toast-module__DUO-ja__toastOut var(--dur-base) var(--ease-in) forwards}.Toast-module__DUO-ja__icon{color:var(--tone);flex-shrink:0}.Toast-module__DUO-ja__success{--tone:#10b981}.Toast-module__DUO-ja__info{--tone:var(--blue-500)}.Toast-module__DUO-ja__danger{--tone:#ef4444}.Toast-module__DUO-ja__message{color:#1e293b;flex:1;min-width:0;font-size:.875rem;font-weight:500;line-height:1.35}.Toast-module__DUO-ja__action{color:var(--blue-700);font-family:var(--font-body);cursor:pointer;transition:background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#3b82f61a;border:none;border-radius:10px;flex-shrink:0;padding:7px 12px;font-size:.82rem;font-weight:700}@media (hover:hover){.Toast-module__DUO-ja__action:hover{background:#3b82f62e}}.Toast-module__DUO-ja__close{color:#94a3b8;cursor:pointer;width:28px;height:28px;transition:background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}@media (hover:hover){.Toast-module__DUO-ja__close:hover{background:#64748b1a}}@keyframes Toast-module__DUO-ja__slotIn{0%{grid-template-rows:0fr;padding-top:0}to{grid-template-rows:1fr;padding-top:8px}}@keyframes Toast-module__DUO-ja__slotOut{0%{grid-template-rows:1fr;padding-top:8px}to{grid-template-rows:0fr;padding-top:0}}@keyframes Toast-module__DUO-ja__toastIn{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes Toast-module__DUO-ja__toastOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.97)}}@media (max-width:600px){.Toast-module__DUO-ja__region{bottom:calc(88px + env(safe-area-inset-bottom,0px))}}
.page-module__-YqvXW__main{z-index:1;flex-direction:column;gap:16px;max-width:1100px;margin:0 auto;padding:24px 24px 80px;display:flex;position:relative}.page-module__-YqvXW__pageHero{border-radius:22px;justify-content:space-between;align-items:center;gap:20px;padding:22px 28px;display:flex}.page-module__-YqvXW__heroLeft{align-items:center;gap:16px;display:flex}.page-module__-YqvXW__title{font-family:var(--font-display);color:#0f172a;letter-spacing:-.03em;font-size:1.5rem;font-weight:800;line-height:1.1}.page-module__-YqvXW__sub{color:#94a3b8;align-items:center;gap:6px;margin-top:3px;font-size:.85rem;display:flex}.page-module__-YqvXW__countBadge{min-width:22px;height:20px;color:var(--b600);background:#3b82f61a;border:1px solid #3b82f62e;border-radius:6px;justify-content:center;align-items:center;padding:0 6px;font-size:.75rem;font-weight:700;display:inline-flex}.page-module__-YqvXW__btnNew{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;font-family:var(--font-body);cursor:pointer;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);white-space:nowrap;letter-spacing:-.01em;border:none;border-radius:14px;flex-shrink:0;align-items:center;gap:8px;padding:11px 22px;font-size:.875rem;font-weight:600;display:flex;box-shadow:0 4px 16px #2563eb52}@media (hover:hover){.page-module__-YqvXW__btnNew:hover{opacity:.92;transform:translateY(-2px);box-shadow:0 8px 24px #2563eb66}}.page-module__-YqvXW__heroActions{flex-shrink:0;align-items:center;gap:10px;display:flex}.page-module__-YqvXW__btnSuper{color:#4338ca;font-family:var(--font-body);white-space:nowrap;cursor:pointer;transition:background var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#6366f114;border:1px solid #4f46e540;border-radius:14px;align-items:center;gap:8px;padding:10px 18px;font-size:.875rem;font-weight:600;display:flex}@media (hover:hover){.page-module__-YqvXW__btnSuper:hover{background:#6366f124;transform:translateY(-2px)}}.page-module__-YqvXW__toolbar{border-radius:18px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.page-module__-YqvXW__searchWrap{flex:1;min-width:160px;position:relative}.page-module__-YqvXW__searchIcon{color:#94a3b8;pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.page-module__-YqvXW__searchInput{width:100%;font-family:var(--font-body);color:#1e293b;transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#fff9;border:1px solid #3b82f626;border-radius:11px;outline:none;padding:9px 12px 9px 34px;font-size:.875rem}.page-module__-YqvXW__searchInput::placeholder{color:#cbd5e1}.page-module__-YqvXW__searchInput:focus{border-color:var(--b400);background:#ffffffd9;box-shadow:0 0 0 3px #3b82f61a}.page-module__-YqvXW__divider{background:#3b82f61f;flex-shrink:0;width:1px;height:28px}.page-module__-YqvXW__filters{flex-wrap:wrap;align-items:center;gap:4px;display:flex;position:relative}.page-module__-YqvXW__filterIndicator{pointer-events:none;background:#3b82f61a;border:1px solid #3b82f638;border-radius:10px;position:absolute;top:0;left:0}.page-module__-YqvXW__filterIndicator[data-ready]{transition:transform var(--dur-slow) var(--ease-spring), width var(--dur-slow) var(--ease-spring)}.page-module__-YqvXW__filterBtn{font-family:var(--font-body);color:#64748b;cursor:pointer;transition:color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:6px;padding:7px 14px;font-size:.82rem;font-weight:500;display:flex;position:relative}@media (hover:hover){.page-module__-YqvXW__filterBtn:not(.page-module__-YqvXW__filterActive):hover{color:var(--b600);background:#3b82f612}}.page-module__-YqvXW__filterActive{color:var(--b700)!important;font-weight:600!important}.page-module__-YqvXW__filterDot{background:var(--dot);width:7px;height:7px;box-shadow:0 0 5px var(--dot);opacity:.7;transition:opacity var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);border-radius:50%;flex-shrink:0}.page-module__-YqvXW__filterActive .page-module__-YqvXW__filterDot{opacity:1}@media (hover:hover){.page-module__-YqvXW__filterBtn:hover .page-module__-YqvXW__filterDot{opacity:1}}.page-module__-YqvXW__grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.page-module__-YqvXW__cardSkeleton{border-radius:var(--radius-xl);background:linear-gradient(90deg,#ffffff80 25%,#fffc 50%,#ffffff80 75%) 0 0/200% 100%;height:220px;animation:1.5s infinite page-module__-YqvXW__shimmer}.page-module__-YqvXW__empty{border-radius:var(--radius-xl);text-align:center;flex-direction:column;align-items:center;gap:14px;padding:64px 40px;display:flex}.page-module__-YqvXW__empty p{color:#94a3b8;font-size:.95rem}.page-module__-YqvXW__empty .page-module__-YqvXW__emptyTitle{color:#1e293b;font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:-6px;font-size:1.05rem;font-weight:700}.page-module__-YqvXW__emptyActions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px;display:flex}.page-module__-YqvXW__emptyBtnGhost{color:var(--b700);font-family:var(--font-body);cursor:pointer;transition:background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#fff9;border:1px solid #3b82f638;border-radius:13px;padding:11px 20px;font-size:.875rem;font-weight:600}@media (hover:hover){.page-module__-YqvXW__emptyBtnGhost:hover{background:#3b82f614}}.page-module__-YqvXW__searchToggle,.page-module__-YqvXW__searchClose,.page-module__-YqvXW__fab{display:none}.page-module__-YqvXW__emptyBtn{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;cursor:pointer;transition:transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);border:none;border-radius:13px;align-items:center;gap:7px;padding:11px 22px;font-size:.875rem;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #2563eb4d}@media (hover:hover){.page-module__-YqvXW__emptyBtn:hover{transform:translateY(-2px);box-shadow:0 8px 22px #2563eb66}}.page-module__-YqvXW__error{color:#ef4444;background:#ef444414;border:1px solid #ef444433;border-radius:12px;padding:12px 16px;font-size:.875rem}@keyframes page-module__-YqvXW__fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes page-module__-YqvXW__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:900px){.page-module__-YqvXW__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.page-module__-YqvXW__main{padding:14px 16px calc(100px + env(safe-area-inset-bottom));gap:12px}.page-module__-YqvXW__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.page-module__-YqvXW__pageHero{border-radius:18px;gap:10px;padding:12px 12px 12px 18px}.page-module__-YqvXW__btnSuper{border-radius:12px;gap:6px;padding:8px 12px;font-size:.82rem}.page-module__-YqvXW__heroText{align-items:center;gap:10px;display:flex}.page-module__-YqvXW__title{font-size:1.3rem}.page-module__-YqvXW__sub{margin-top:0}.page-module__-YqvXW__subLabel,.page-module__-YqvXW__btnNew{display:none}.page-module__-YqvXW__toolbar{border-radius:16px;flex-wrap:nowrap;gap:6px;padding:6px}.page-module__-YqvXW__divider,.page-module__-YqvXW__searchWrap{display:none}.page-module__-YqvXW__searchToggle{width:38px;height:38px;color:var(--b600);cursor:pointer;background:#3b82f614;border:none;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.page-module__-YqvXW__filters{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;min-width:0;overflow-x:auto}.page-module__-YqvXW__filters::-webkit-scrollbar{display:none}.page-module__-YqvXW__filterBtn{flex-shrink:0;padding:8px 12px}.page-module__-YqvXW__toolbarSearching .page-module__-YqvXW__searchWrap{animation:page-module__-YqvXW__fadeIn var(--dur-base) var(--ease-out) both;flex:1;display:block}.page-module__-YqvXW__toolbarSearching .page-module__-YqvXW__searchInput{padding-right:40px;font-size:16px}.page-module__-YqvXW__toolbarSearching .page-module__-YqvXW__searchToggle,.page-module__-YqvXW__toolbarSearching .page-module__-YqvXW__filters{display:none}.page-module__-YqvXW__searchClose{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.page-module__-YqvXW__fab{right:18px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:50;background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;width:56px;height:56px;transition:transform var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);border:none;border-radius:18px;justify-content:center;align-items:center;display:flex;position:fixed;box-shadow:0 10px 28px #2563eb6b}.page-module__-YqvXW__fab:active{transform:scale(.94)}.page-module__-YqvXW__empty{padding:40px 24px}}@keyframes page-module__-YqvXW__fadeIn{0%{opacity:0}to{opacity:1}}
.SkeletonSwap-module__dpvzlG__swap{gap:inherit;min-width:0;display:grid}.SkeletonSwap-module__dpvzlG__layer{gap:inherit;flex-direction:column;grid-area:1/1;min-width:0;display:flex}.SkeletonSwap-module__dpvzlG__contentIn{animation:SkeletonSwap-module__dpvzlG__contentIn var(--dur-slow) var(--ease-out) both}.SkeletonSwap-module__dpvzlG__skeletonOut{pointer-events:none;animation:SkeletonSwap-module__dpvzlG__skeletonOut var(--dur-base) var(--ease-in) forwards}@keyframes SkeletonSwap-module__dpvzlG__contentIn{0%{opacity:0}to{opacity:1}}@keyframes SkeletonSwap-module__dpvzlG__skeletonOut{0%{opacity:1}to{opacity:0}}
.celebrate-module__c82w9W__burstContainer{pointer-events:none;z-index:9999;width:0;height:0;position:fixed}.celebrate-module__c82w9W__burstParticle{border-radius:50%;width:6px;height:6px;animation:.6s ease-out forwards celebrate-module__c82w9W__burst;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}@keyframes celebrate-module__c82w9W__burst{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(0);opacity:0}}.celebrate-module__c82w9W__confettiContainer{pointer-events:none;z-index:9999;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.celebrate-module__c82w9W__confettiPiece{opacity:.9;border-radius:2px;width:8px;height:12px;animation-name:celebrate-module__c82w9W__confettiFall;animation-timing-function:cubic-bezier(.25,.46,.45,.94);animation-fill-mode:forwards;position:absolute;top:-10px}@keyframes celebrate-module__c82w9W__confettiFall{0%{opacity:1;transform:translateY(0)translate(0)rotate(0)}to{transform:translateY(100vh) translateX(var(--drift)) rotate(var(--rot));opacity:0}}@media (prefers-reduced-motion:reduce){.celebrate-module__c82w9W__burstParticle,.celebrate-module__c82w9W__confettiPiece{opacity:0;animation:none}}
.page-module__ZNEmBa__main{z-index:1;flex-direction:column;gap:16px;max-width:1100px;margin:0 auto;padding:24px 24px 80px;display:flex;position:relative}.page-module__ZNEmBa__backLink{font-family:var(--font-body);color:var(--b600);cursor:pointer;background:#3b82f612;border:1px solid #3b82f624;border-radius:10px;align-items:center;gap:7px;width:fit-content;padding:7px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.page-module__ZNEmBa__hero{animation:page-module__ZNEmBa__fadeUp var(--dur-enter) var(--ease-out) both;border-radius:22px;align-items:center;gap:16px;padding:20px 24px;display:flex;background:radial-gradient(circle at 0% 0%, #6366f129, transparent 55%), var(--glass-bg)!important}.page-module__ZNEmBa__heroIcon{color:#fff;background:linear-gradient(135deg,#6366f1,#2563eb);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 8px 20px #4f46e559}.page-module__ZNEmBa__heroText{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.page-module__ZNEmBa__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#4f46e5;font-size:.7rem;font-weight:700}.page-module__ZNEmBa__title{font-family:var(--font-display);color:#0f172a;letter-spacing:-.03em;overflow-wrap:anywhere;font-size:1.5rem;font-weight:800;line-height:1.15}.page-module__ZNEmBa__count{color:#94a3b8;font-size:.85rem}.page-module__ZNEmBa__heroActions{flex-shrink:0;gap:8px;display:flex}.page-module__ZNEmBa__iconBtn{width:38px;height:38px;color:var(--b600);cursor:pointer;transition:background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#fff9;border:1px solid #3b82f633;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.page-module__ZNEmBa__iconBtnDanger{color:#ef4444;border-color:#ef444440}@media (hover:hover){.page-module__ZNEmBa__iconBtn:hover{background:#3b82f614}.page-module__ZNEmBa__iconBtnDanger:hover{background:#ef444414}}.page-module__ZNEmBa__renameForm{align-items:center;gap:6px;display:flex}.page-module__ZNEmBa__renameInput{border:1px solid var(--b400);min-width:0;font-family:var(--font-display);color:#0f172a;background:#ffffffd9;border-radius:11px;outline:none;flex:1;padding:7px 12px;font-size:1.15rem;font-weight:700;box-shadow:0 0 0 3px #3b82f61a}.page-module__ZNEmBa__btnAdd,.page-module__ZNEmBa__btnPrimary{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:13px;justify-content:center;align-items:center;gap:7px;padding:11px 20px;font-size:.875rem;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #2563eb4d}.page-module__ZNEmBa__btnAdd{width:fit-content}.page-module__ZNEmBa__grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.page-module__ZNEmBa__cardSkeleton{border-radius:var(--radius-xl);background:linear-gradient(90deg,#ffffff80 25%,#fffc 50%,#ffffff80 75%) 0 0/200% 100%;height:200px;animation:1.5s infinite page-module__ZNEmBa__shimmer}.page-module__ZNEmBa__empty{border-radius:var(--radius-xl);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:56px 32px;display:flex}.page-module__ZNEmBa__empty p{color:#94a3b8;font-size:.95rem}.page-module__ZNEmBa__empty .page-module__ZNEmBa__emptyTitle{color:#1e293b;font-family:var(--font-display);font-size:1.05rem;font-weight:700}.page-module__ZNEmBa__error{color:#ef4444;background:#ef444414;border:1px solid #ef444433;border-radius:12px;padding:12px 16px;font-size:.875rem}@keyframes page-module__ZNEmBa__fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes page-module__ZNEmBa__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:900px){.page-module__ZNEmBa__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.page-module__ZNEmBa__main{gap:12px;padding:14px 16px 60px}.page-module__ZNEmBa__hero{border-radius:18px;gap:12px;padding:14px}.page-module__ZNEmBa__heroIcon{border-radius:13px;width:42px;height:42px}.page-module__ZNEmBa__title{font-size:1.2rem}.page-module__ZNEmBa__iconBtn{border-radius:10px;width:34px;height:34px}.page-module__ZNEmBa__btnAdd{width:100%}.page-module__ZNEmBa__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.page-module__ZNEmBa__empty{padding:40px 24px}}
.page-module__vkS2JG__main{z-index:1;flex-direction:column;gap:16px;max-width:860px;margin:0 auto;padding:20px 24px 80px;display:flex;position:relative}.page-module__vkS2JG__backLink{color:var(--b600);cursor:pointer;width:fit-content;transition:background var(--dur-base) var(--ease-out), gap var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#3b82f612;border:1px solid #3b82f624;border-radius:10px;align-items:center;gap:7px;padding:7px 14px;font-size:.82rem;font-weight:600;display:inline-flex}@media (hover:hover){.page-module__vkS2JG__backLink:hover{background:#3b82f621;gap:10px}}.page-module__vkS2JG__goalCard{animation:page-module__vkS2JG__fadeUp var(--dur-enter) var(--ease-out) both;border-radius:24px;flex-direction:column;padding:0;display:flex;overflow:hidden}.page-module__vkS2JG__goalBanner{background:linear-gradient(90deg, var(--banner-a), var(--banner-b));width:100%;height:6px}.page-module__vkS2JG__goalCardBody{flex-direction:column;gap:20px;padding:28px 32px 32px;display:flex}.page-module__vkS2JG__goalTop{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-module__vkS2JG__statusBadge{letter-spacing:.06em;text-transform:uppercase;color:var(--badge-color);background:color-mix(in srgb, var(--badge-color) 10%, transparent);border:1px solid color-mix(in srgb, var(--badge-color) 22%, transparent);border-radius:99px;align-items:center;gap:7px;padding:5px 13px;font-size:.72rem;font-weight:700;display:inline-flex}.page-module__vkS2JG__badgeDot{background:var(--badge-color);width:6px;height:6px;box-shadow:0 0 7px var(--badge-color);border-radius:50%;animation:2s ease-in-out infinite page-module__vkS2JG__pulse}@keyframes page-module__vkS2JG__pulse{0%,to{opacity:1}50%{opacity:.35}}.page-module__vkS2JG__goalActions{gap:8px;display:flex}.page-module__vkS2JG__iconBtn{color:#64748b;cursor:pointer;width:36px;height:36px;transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#3b82f60f;border:1px solid #3b82f62e;border-radius:10px;justify-content:center;align-items:center;display:flex}@media (hover:hover){.page-module__vkS2JG__iconBtn:hover{color:var(--b600);background:#3b82f61f;transform:scale(1.07)}}.page-module__vkS2JG__danger{color:#f87171;background:#ef44440d;border-color:#ef44442e}@media (hover:hover){.page-module__vkS2JG__danger:hover{color:#ef4444;background:#ef44441f;transform:scale(1.07)}}.page-module__vkS2JG__btnComplete{color:#10b981;cursor:pointer;width:36px;height:36px;transition:background var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#10b98112;border:1px solid #10b98140;border-radius:10px;justify-content:center;align-items:center;display:flex}@media (hover:hover){.page-module__vkS2JG__btnComplete:hover{background:#10b98129;transform:scale(1.07)}}.page-module__vkS2JG__goalTitle{font-family:var(--font-display);color:#0f172a;letter-spacing:-.04em;font-size:2rem;font-weight:800;line-height:1.15}.page-module__vkS2JG__goalDesc{color:#64748b;background:#3b82f60a;border-left:3px solid #3b82f633;border-radius:0 8px 8px 0;padding:12px 16px;font-size:.95rem;line-height:1.7}.page-module__vkS2JG__goalMeta{flex-wrap:wrap;gap:8px;display:flex}.page-module__vkS2JG__metaChip{color:#475569;background:#ffffffb3;border:1px solid #3b82f624;border-radius:99px;align-items:center;gap:6px;padding:5px 12px;font-size:.8rem;font-weight:500;display:inline-flex}.page-module__vkS2JG__metaChip svg{color:var(--b400)}.page-module__vkS2JG__progressWrap{background:#3b82f60a;border:1px solid #3b82f61a;border-radius:14px;flex-direction:column;gap:8px;padding:16px 20px;display:flex}.page-module__vkS2JG__progressInfo{justify-content:space-between;align-items:center;display:flex}.page-module__vkS2JG__progressLabel{color:#94a3b8;letter-spacing:.02em;text-transform:uppercase;font-size:.8rem;font-weight:500}.page-module__vkS2JG__progressPct{font-family:var(--font-display);color:var(--b600);letter-spacing:-.03em;font-size:1.1rem;font-weight:800}.page-module__vkS2JG__progressTrack{background:#3b82f61a;border-radius:99px;height:10px;overflow:hidden}.page-module__vkS2JG__progressFill{background:linear-gradient(90deg, var(--b400), var(--b600));height:100%;transition:width var(--dur-progress) var(--ease-spring), scale var(--dur-fast) var(--ease-out);border-radius:99px;position:relative;box-shadow:0 0 12px #3b82f673}.page-module__vkS2JG__progressFill:after{content:"";filter:blur(6px);background:#ffffff59;width:40px;height:100%;animation:2.5s ease-in-out infinite page-module__vkS2JG__shine;position:absolute;top:0;left:-60px}@keyframes page-module__vkS2JG__shine{0%{opacity:0;left:-60px}30%{opacity:1}to{opacity:0;left:110%}}.page-module__vkS2JG__tasksSection{animation:page-module__vkS2JG__fadeUp var(--dur-enter) var(--ease-out) .1s both;flex-direction:column;gap:14px;display:flex}.page-module__vkS2JG__taskHeader{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.page-module__vkS2JG__taskTitle{white-space:nowrap;font-family:var(--font-display);color:#0f172a;letter-spacing:-.02em;font-size:1.1rem;font-weight:700}.page-module__vkS2JG__taskCount{min-width:24px;height:22px;color:var(--b600);background:#3b82f61a;border:1px solid #3b82f62e;border-radius:7px;justify-content:center;align-items:center;padding:0 7px;font-size:.78rem;font-weight:700;display:flex}.page-module__vkS2JG__addTask{border-radius:16px;align-items:center;gap:10px;padding:8px 8px 8px 16px;display:flex}.page-module__vkS2JG__taskInput{min-width:0;font-family:var(--font-body);color:#1e293b;background:0 0;border:none;outline:none;flex:1;font-size:.9rem}.page-module__vkS2JG__taskInput::placeholder{color:#cbd5e1}.page-module__vkS2JG__addBtn{background:linear-gradient(135deg, var(--b500), var(--b700));color:#fff;cursor:pointer;width:36px;height:36px;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);border:none;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 3px 10px #2563eb4d}@media (hover:hover){.page-module__vkS2JG__addBtn:hover:not(:disabled){opacity:.9;transform:scale(1.08)rotate(8deg);box-shadow:0 5px 16px #2563eb66}}.page-module__vkS2JG__addBtn:disabled{opacity:.35;cursor:not-allowed}.page-module__vkS2JG__taskGroups{flex-direction:column;gap:18px;display:flex}.page-module__vkS2JG__taskGroup{flex-direction:column;gap:8px;display:flex}.page-module__vkS2JG__groupLabel{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;align-items:center;gap:6px;padding:0 4px;font-size:.72rem;font-weight:700;display:flex}.page-module__vkS2JG__taskList{flex-direction:column;gap:7px;display:flex}.page-module__vkS2JG__emptyTasks{text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:40px 24px;display:flex}.page-module__vkS2JG__emptyTasks p{color:#94a3b8;font-size:.875rem}.page-module__vkS2JG__seeStats{color:var(--blue-600);white-space:nowrap;transition:gap var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);align-items:center;gap:5px;margin-left:auto;font-size:.85rem;font-weight:600;text-decoration:none;display:flex}@media (hover:hover){.page-module__vkS2JG__seeStats:hover{gap:8px}}.page-module__vkS2JG__showMore{font-family:var(--font-body);color:var(--blue-600);cursor:pointer;transition:background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#ffffffb3;border:1px solid #3b82f640;border-radius:10px;align-self:center;padding:8px 16px;font-size:.82rem;font-weight:600}@media (hover:hover){.page-module__vkS2JG__showMore:hover{background:#3b82f60f}}.page-module__vkS2JG__chartCard{border-radius:16px;padding:18px 18px 14px}.page-module__vkS2JG__chartEmpty{text-align:center;color:#94a3b8;padding:24px 0;font-size:.85rem}.page-module__vkS2JG__error{color:#ef4444;background:#ef444412;border:1px solid #ef44442e;border-radius:12px;padding:12px 16px;font-size:.875rem}.page-module__vkS2JG__skeleton{background:linear-gradient(90deg,#ffffff80 25%,#fffc 50%,#ffffff80 75%) 0 0/200% 100%;border-radius:20px;animation:1.5s infinite page-module__vkS2JG__shimmer}.page-module__vkS2JG__notFound{text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:14px;padding:56px;display:flex}.page-module__vkS2JG__notFound p{color:#94a3b8}.page-module__vkS2JG__backBtn{background:linear-gradient(135deg, var(--b500), var(--b700));color:#fff;cursor:pointer;border:none;border-radius:12px;align-items:center;gap:7px;padding:10px 20px;font-weight:600;display:inline-flex}@keyframes page-module__vkS2JG__fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes page-module__vkS2JG__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:600px){.page-module__vkS2JG__main{padding:14px 14px 60px}.page-module__vkS2JG__goalTitle{font-size:1.5rem}.page-module__vkS2JG__goalCardBody{padding:20px}}.page-module__vkS2JG__progress{flex-direction:column;gap:8px;display:flex}.page-module__vkS2JG__progressFillComplete{background:linear-gradient(90deg,#4ade80,#16a34a);box-shadow:0 0 10px #16a34a66}.page-module__vkS2JG__progressPctComplete{color:#16a34a}.page-module__vkS2JG__viewingBanner{color:#475569;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;font-size:.875rem;display:flex}.page-module__vkS2JG__viewingBanner svg{color:var(--b500);flex-shrink:0}.page-module__vkS2JG__viewingLink{color:var(--b600);align-items:center;gap:4px;margin-left:auto;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex}.page-module__vkS2JG__skeletonHeader{height:200px}.page-module__vkS2JG__skeletonBody{height:300px}.page-module__vkS2JG__notFound>svg{color:var(--b300)}.page-module__vkS2JG__taskHeader>svg{color:var(--b400)}.page-module__vkS2JG__emptyTasks>svg{color:var(--b200)}.page-module__vkS2JG__metaChipHabit{color:#8b5cf6;background:#8b5cf612;border-color:#8b5cf633}.page-module__vkS2JG__valueInput{max-width:160px}.page-module__vkS2JG__groupLabelDone{color:#10b981}.page-module__vkS2JG__consistency{white-space:nowrap;border:none;padding:0 8px}.page-module__vkS2JG__consistencyGood{color:#10b981;background:#10b9811a}.page-module__vkS2JG__consistencyMid{color:#f59e0b;background:#f59e0b1a}.page-module__vkS2JG__consistencyLow{color:#ef4444;background:#ef44441a}.page-module__vkS2JG__listItem{border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.page-module__vkS2JG__listItemSide{flex-shrink:0;align-items:center;gap:8px;display:flex}.page-module__vkS2JG__entryText{color:#475569;flex-direction:column;gap:2px;min-width:0;font-size:.85rem;display:flex}.page-module__vkS2JG__entryValue{color:#1e293b}.page-module__vkS2JG__entryNote{text-overflow:ellipsis;overflow:hidden}.page-module__vkS2JG__entryAuthor{color:#94a3b8;font-size:.75rem}.page-module__vkS2JG__entryDate{color:#94a3b8;font-size:.78rem}.page-module__vkS2JG__cycleRange{color:#475569;align-items:center;gap:8px;font-size:.85rem;display:flex}.page-module__vkS2JG__cycleScore{font-size:.82rem;font-weight:600}.page-module__vkS2JG__cycleDone{color:#10b981}.page-module__vkS2JG__cycleMissed{color:#ef4444}.page-module__vkS2JG__progressFlash{animation:page-module__vkS2JG__progressFlash .9s var(--ease-out)}@keyframes page-module__vkS2JG__progressFlash{0%{box-shadow:0 0 #16a34a00}35%{box-shadow:0 0 0 4px #16a34a2e,0 0 18px #16a34a8c}to{box-shadow:0 0 #16a34a00}}.page-module__vkS2JG__progressFill{animation:page-module__vkS2JG__progressFillIn var(--dur-progress) var(--ease-out) both}@keyframes page-module__vkS2JG__progressFillIn{0%{width:0}}.page-module__vkS2JG__listEnter{animation:page-module__vkS2JG__listIn var(--dur-enter) var(--ease-out) calc(var(--stagger) * var(--i,0) + 80ms) both}@keyframes page-module__vkS2JG__listIn{0%{opacity:0;transform:translate(-12px)}}
.CheckMark-module__BOJzVG__svg{overflow:visible}.CheckMark-module__BOJzVG__mark{fill:none;stroke:currentColor;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px;transition:stroke-dashoffset var(--dur-slow) var(--ease-out) 60ms}.CheckMark-module__BOJzVG__on{stroke-dashoffset:0}
.Navbar-module__EIxHdq__header{z-index:100;padding:12px 24px;position:sticky;top:0}.Navbar-module__EIxHdq__nav{border-radius:18px;justify-content:space-between;align-items:center;gap:24px;max-width:1100px;margin:0 auto;padding:10px 20px;display:flex;-webkit-backdrop-filter:blur(24px)saturate(180%)!important;backdrop-filter:blur(24px)saturate(180%)!important;background:#ffffffc7!important}.Navbar-module__EIxHdq__brand{font-family:var(--font-display);color:var(--blue-700);letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.2rem;font-weight:700;text-decoration:none;display:flex}.Navbar-module__EIxHdq__brandIcon{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 12px #2563eb59}.Navbar-module__EIxHdq__brandName{background:linear-gradient(135deg, var(--blue-600), var(--blue-800));-webkit-text-fill-color:transparent;background-clip:text}.Navbar-module__EIxHdq__links{align-items:center;gap:4px;list-style:none;display:flex;position:relative}.Navbar-module__EIxHdq__indicator{pointer-events:none;background:#3b82f61a;border-radius:12px;height:32px;margin-top:-16px;position:absolute;top:50%;left:0}.Navbar-module__EIxHdq__indicator:after{content:"";background:var(--blue-500);border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:4px;left:50%}.Navbar-module__EIxHdq__indicator[data-ready]{transition:transform var(--dur-slow) var(--ease-spring), width var(--dur-slow) var(--ease-spring), opacity var(--dur-base) var(--ease-out)}.Navbar-module__EIxHdq__indicator[data-hidden]{opacity:0}.Navbar-module__EIxHdq__link{color:#475569;height:32px;transition:color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);z-index:1;border-radius:12px;align-items:center;gap:7px;padding:8px 16px;font-size:.875rem;font-weight:500;text-decoration:none;display:flex;position:relative}@media (hover:hover){.Navbar-module__EIxHdq__link:not(.Navbar-module__EIxHdq__active):hover{color:var(--blue-600);background:#3b82f614}}.Navbar-module__EIxHdq__active{color:var(--blue-600);font-weight:600}.Navbar-module__EIxHdq__fireWrap{transform-origin:bottom;display:inline-flex}.Navbar-module__EIxHdq__firePop{animation:Navbar-module__EIxHdq__firePop var(--dur-enter) var(--ease-spring)}.Navbar-module__EIxHdq__streakNumber{font-variant-numeric:tabular-nums;display:inline-flex;overflow:hidden}.Navbar-module__EIxHdq__numberIn{animation:Navbar-module__EIxHdq__numberIn var(--dur-slow) var(--ease-spring) both;display:inline-block}.Navbar-module__EIxHdq__linkIconWrap{justify-content:center;align-items:center;display:flex;position:relative}.Navbar-module__EIxHdq__lateBadge{color:#fff;background:#ef4444;border:1.5px solid #fff;border-radius:99px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.6rem;font-weight:800;animation:2s ease-in-out infinite Navbar-module__EIxHdq__badgePulse;display:flex;position:absolute;top:-7px;right:-9px;box-shadow:0 0 8px #ef444499}@keyframes Navbar-module__EIxHdq__badgePulse{0%,to{box-shadow:0 0 8px #ef444499}50%{box-shadow:0 0 14px #ef4444e6}}.Navbar-module__EIxHdq__streakChip{color:#2a2f36;height:32px;transition:all var(--dur-slow) var(--ease-out);background:#94a3b814;border:1px solid #94a3b82e;border-radius:10px;align-items:center;gap:5px;padding:6px 12px;font-size:.85rem;font-weight:700;display:flex}.Navbar-module__EIxHdq__streakChipActive{color:#ea580c;background:#fb923c1a;border-color:#fb923c40}.Navbar-module__EIxHdq__streakFire{transform-origin:bottom;flex-shrink:0;width:20px;height:24px}.Navbar-module__EIxHdq__streakFireOff{filter:grayscale();opacity:.45}.Navbar-module__EIxHdq__streakFireActive{filter:drop-shadow(0 1px 4px #f9731699);animation:2s ease-in-out infinite alternate Navbar-module__EIxHdq__fireWiggle}@keyframes Navbar-module__EIxHdq__fireWiggle{0%{transform:scaleX(1)scaleY(1)rotate(-4deg)translateY(0)}20%{transform:scaleX(1.08)scaleY(.96)rotate(2deg)translateY(-1px)}40%{transform:scaleX(.93)scaleY(1.07)rotate(-3deg)translateY(-2px)}60%{transform:scaleX(1.06)scaleY(.94)rotate(3deg)translateY(-1px)}80%{transform:scaleX(.96)scaleY(1.04)rotate(-2deg)translateY(-1.5px)}to{transform:scaleX(1.04)scaleY(.97)rotate(4deg)translateY(0)}}.Navbar-module__EIxHdq__right{align-items:center;gap:8px;display:flex}.Navbar-module__EIxHdq__userChip{height:32px;color:var(--blue-700);transition:background var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#3b82f614;border:1px solid #3b82f629;border-radius:10px;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:600;text-decoration:none;display:flex}.Navbar-module__EIxHdq__userChipActive{background:#3b82f624;border-color:#3b82f64d}@media (hover:hover){.Navbar-module__EIxHdq__userChip:hover{background:#3b82f624;border-color:#3b82f64d}}.Navbar-module__EIxHdq__userChip svg{color:var(--blue-500)}@media (max-width:600px){.Navbar-module__EIxHdq__header{padding:10px 12px}.Navbar-module__EIxHdq__nav{gap:10px;padding:8px 12px}.Navbar-module__EIxHdq__brandName,.Navbar-module__EIxHdq__linkLabel{display:none}.Navbar-module__EIxHdq__link{padding:8px 10px}.Navbar-module__EIxHdq__links{gap:2px}.Navbar-module__EIxHdq__userChip span{display:none}.Navbar-module__EIxHdq__userChip{padding:6px 8px}.Navbar-module__EIxHdq__right{gap:6px}}@media (max-width:420px){.Navbar-module__EIxHdq__brandIcon{width:32px;height:32px}.Navbar-module__EIxHdq__streakChip{padding:6px 9px}}@keyframes Navbar-module__EIxHdq__firePop{0%{transform:scale(1)rotate(0)}35%{transform:scale(1.45)rotate(-8deg)}65%{transform:scale(.92)rotate(4deg)}to{transform:scale(1)rotate(0)}}@keyframes Navbar-module__EIxHdq__numberIn{0%{opacity:0;transform:translateY(70%)}to{opacity:1;transform:translateY(0)}}
.page-module__XF6Hjq__main{z-index:1;flex-direction:column;gap:40px;max-width:1100px;margin:0 auto;padding:24px 24px 80px;display:flex;position:relative}.page-module__XF6Hjq__hero{border-radius:var(--radius-2xl);background:linear-gradient(135deg,#2563ebeb 0%,#1d4ed8f5 60%,#1e3a8a 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:40px;padding:56px 52px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #2563eb59}.page-module__XF6Hjq__hero:before{content:"";pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;top:0;bottom:0;left:0;right:0}.page-module__XF6Hjq__heroContent{z-index:1;flex:320px;min-width:260px;max-width:520px;position:relative}.page-module__XF6Hjq__heroCalendar{width:260px;max-width:100%}.page-module__XF6Hjq__heroBadge{letter-spacing:.06em;text-transform:uppercase;color:#ffffffbf;background:#ffffff1f;border:1px solid #fff3;border-radius:99px;align-items:center;gap:6px;margin-bottom:20px;padding:5px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.page-module__XF6Hjq__heroTitle{font-family:var(--font-display);color:#fff;letter-spacing:-.03em;margin-bottom:14px;font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.1}.page-module__XF6Hjq__heroGradient{background:linear-gradient(135deg,#93c5fd,#bfdbfe);-webkit-text-fill-color:transparent;background-clip:text}.page-module__XF6Hjq__heroSub{color:#ffffffb8;margin-bottom:28px;font-size:1rem;line-height:1.6}.page-module__XF6Hjq__heroBtn{color:var(--blue-700);transition:transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#fff;border-radius:14px;align-items:center;gap:8px;padding:12px 24px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 4px 16px #00000026}@media (hover:hover){.page-module__XF6Hjq__heroBtn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0003}}.page-module__XF6Hjq__stats{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}.page-module__XF6Hjq__statCard{border-radius:var(--radius-lg);animation:page-module__XF6Hjq__fadeUp var(--dur-enter) var(--ease-out) both;align-items:center;gap:16px;padding:20px;display:flex}.page-module__XF6Hjq__statIcon{background:color-mix(in srgb, var(--icon-color) 14%, transparent);border:1px solid color-mix(in srgb, var(--icon-color) 22%, transparent);width:48px;height:48px;color:var(--icon-color);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.page-module__XF6Hjq__statValue{font-family:var(--font-display);color:#0f172a;letter-spacing:-.03em;font-size:1.7rem;font-weight:800;line-height:1}.page-module__XF6Hjq__statLabel{color:#94a3b8;margin-top:3px;font-size:.8rem}.page-module__XF6Hjq__skeleton{background:linear-gradient(90deg,#ffffff80 25%,#fffc 50%,#ffffff80 75%) 0 0/200% 100%;height:88px;animation:1.5s infinite page-module__XF6Hjq__shimmer}.page-module__XF6Hjq__lateBanner{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:page-module__XF6Hjq__fadeUp var(--dur-enter) var(--ease-out) both;background:linear-gradient(135deg,#ef44441f 0%,#ef44440d 100%);border:1px solid #ef444440;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex;box-shadow:0 4px 20px #ef444414}.page-module__XF6Hjq__lateBannerLeft{align-items:center;gap:14px;min-width:0;display:flex}.page-module__XF6Hjq__lateBannerIcon{color:#ef4444;background:#ef44441f;border:1px solid #ef444438;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;animation:2s ease-in-out infinite page-module__XF6Hjq__badgePulse;display:flex}@keyframes page-module__XF6Hjq__badgePulse{0%,to{box-shadow:0 0 #ef444400}50%{box-shadow:0 0 0 6px #ef44441f}}.page-module__XF6Hjq__lateBannerTitle{font-family:var(--font-display);color:#dc2626;letter-spacing:-.01em;font-size:.95rem;font-weight:700}.page-module__XF6Hjq__lateBannerSub{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.8rem;overflow:hidden}.page-module__XF6Hjq__lateBannerLink{color:#ef4444;transition:opacity var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);font-weight:600;text-decoration:none}@media (hover:hover){.page-module__XF6Hjq__lateBannerLink:hover{opacity:.75;text-decoration:underline}}.page-module__XF6Hjq__lateBannerBtn{color:#dc2626;transition:gap var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);flex-shrink:0;align-items:center;gap:5px;font-size:.85rem;font-weight:600;text-decoration:none;display:flex}@media (hover:hover){.page-module__XF6Hjq__lateBannerBtn:hover{gap:8px}}.page-module__XF6Hjq__habitBanner{border-radius:var(--radius-lg);color:#334155;border-left:3px solid #8b5cf6;align-items:center;gap:12px;padding:14px 20px;font-size:.875rem;display:flex}.page-module__XF6Hjq__habitBanner strong{color:#8b5cf6}.page-module__XF6Hjq__sectionTitleRow{align-items:center;gap:10px;display:flex}.page-module__XF6Hjq__todayBadge{color:var(--b600);background:#3b82f61a;border:1px solid #3b82f62e;border-radius:99px;align-items:center;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.page-module__XF6Hjq__todayCard{border-radius:20px;flex-direction:column;gap:2px;padding:8px;display:flex}.page-module__XF6Hjq__todayItem{transition:background var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);border-radius:13px;align-items:center;gap:12px;padding:11px 14px;display:flex}@media (hover:hover){.page-module__XF6Hjq__todayItem:hover{background:#ffffff80}}.page-module__XF6Hjq__todayItemDone{opacity:.55}.page-module__XF6Hjq__todayCheck{cursor:pointer;color:#fff;width:24px;height:24px;transition:background var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:0 0;border:2px solid #3b82f64d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}@media (hover:hover){.page-module__XF6Hjq__todayCheck:hover{border-color:var(--b500);background:#3b82f614;transform:scale(1.1)}}.page-module__XF6Hjq__todayCheck:disabled{cursor:not-allowed;opacity:.6}.page-module__XF6Hjq__todayChecked{box-shadow:0 2px 8px #2563eb59;background:linear-gradient(135deg, var(--blue-500), var(--blue-700))!important;border-color:#0000!important}.page-module__XF6Hjq__todayPop{animation:page-module__XF6Hjq__todayPop var(--dur-slow) var(--ease-spring)}@keyframes page-module__XF6Hjq__todayPop{0%{transform:scale(1)}45%{transform:scale(1.22)}to{transform:scale(1)}}.page-module__XF6Hjq__todayStrike{transition:background-size var(--dur-slow) var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 58%/0% 1.5px no-repeat}.page-module__XF6Hjq__todayItemDone .page-module__XF6Hjq__todayStrike{background-size:100% 1.5px}.page-module__XF6Hjq__todayInfo{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.page-module__XF6Hjq__todayTitle{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:500;overflow:hidden}.page-module__XF6Hjq__todayItemDone .page-module__XF6Hjq__todayTitle{color:#94a3b8}.page-module__XF6Hjq__todayGoal{color:#94a3b8;transition:color var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:500;text-decoration:none;overflow:hidden}@media (hover:hover){.page-module__XF6Hjq__todayGoal:hover{color:var(--b500)}}.page-module__XF6Hjq__todayRecurring{color:#8b5cf6;flex-shrink:0;align-items:center;gap:4px;font-size:.72rem;font-weight:500;display:flex}.page-module__XF6Hjq__todayDivider{letter-spacing:.04em;text-transform:uppercase;color:#cbd5e1;align-items:center;gap:10px;padding:8px 14px 4px;font-size:.72rem;font-weight:600;display:flex}.page-module__XF6Hjq__todayDivider:before,.page-module__XF6Hjq__todayDivider:after{content:"";background:#3b82f61a;flex:1;height:1px}.page-module__XF6Hjq__todayEmpty{text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:10px;padding:40px;display:flex}.page-module__XF6Hjq__todayEmpty p{color:#94a3b8;font-size:.875rem}.page-module__XF6Hjq__todaySkeleton{background:linear-gradient(90deg,#fff6 25%,#ffffffb3 50%,#fff6 75%) 0 0/200% 100%;border-radius:13px;height:46px;margin:2px 0;animation:1.5s infinite page-module__XF6Hjq__shimmer}.page-module__XF6Hjq__section{flex-direction:column;gap:20px;display:flex}.page-module__XF6Hjq__sectionHead{justify-content:space-between;align-items:center;display:flex}.page-module__XF6Hjq__sectionTitle{font-family:var(--font-display);color:#0f172a;letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.page-module__XF6Hjq__seeAll{color:var(--blue-600);transition:gap var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);align-items:center;gap:5px;font-size:.85rem;font-weight:600;text-decoration:none;display:flex}@media (hover:hover){.page-module__XF6Hjq__seeAll:hover{gap:8px}}.page-module__XF6Hjq__recentGrid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.page-module__XF6Hjq__recentCard{border-radius:var(--radius-lg);transition:transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);animation:page-module__XF6Hjq__fadeUp var(--dur-enter) var(--ease-out) both;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;display:flex}@media (hover:hover){.page-module__XF6Hjq__recentCard:hover{box-shadow:var(--glass-shadow-lg);transform:translateY(-2px)}}.page-module__XF6Hjq__recentDot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.page-module__XF6Hjq__recentBody{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.page-module__XF6Hjq__recentTitle{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.page-module__XF6Hjq__recentBar{background:#3b82f61f;border-radius:99px;height:4px;overflow:hidden}.page-module__XF6Hjq__recentFill{background:linear-gradient(90deg, var(--blue-400), var(--blue-600));height:100%;transition:width var(--dur-progress) var(--ease-out), scale var(--dur-fast) var(--ease-out);border-radius:99px}.page-module__XF6Hjq__recentFillComplete{background:linear-gradient(90deg,#4ade80,#16a34a)}.page-module__XF6Hjq__recentPct{color:var(--blue-500);font-size:.75rem;font-weight:600}.page-module__XF6Hjq__recentPctComplete{color:#16a34a}.page-module__XF6Hjq__recentArrow{color:#cbd5e1;transition:color var(--dur-base) var(--ease-out), scale var(--dur-fast) var(--ease-out);flex-shrink:0}@media (hover:hover){.page-module__XF6Hjq__recentCard:hover .page-module__XF6Hjq__recentArrow{color:var(--blue-500)}}.page-module__XF6Hjq__recentSkeleton{border-radius:var(--radius-lg);height:70px;animation:1.5s infinite page-module__XF6Hjq__shimmer}.page-module__XF6Hjq__empty{border-radius:var(--radius-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:52px;display:flex}.page-module__XF6Hjq__empty p{color:#94a3b8;font-size:.95rem}.page-module__XF6Hjq__emptyBtn{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;border-radius:12px;align-items:center;gap:7px;padding:10px 20px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 4px 14px #2563eb4d}@keyframes page-module__XF6Hjq__fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes page-module__XF6Hjq__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:900px){.page-module__XF6Hjq__stats{grid-template-columns:repeat(3,1fr)}}@media (max-width:640px){.page-module__XF6Hjq__main{gap:28px;padding:16px 16px 60px}.page-module__XF6Hjq__hero{text-align:center;justify-content:center;padding:32px 20px}.page-module__XF6Hjq__heroContent{flex-basis:100%;min-width:0}.page-module__XF6Hjq__heroTitle{font-size:1.75rem}.page-module__XF6Hjq__heroSub{max-width:100%}.page-module__XF6Hjq__heroCalendar{margin:0 auto}.page-module__XF6Hjq__stats{grid-template-columns:repeat(3,1fr);gap:8px}.page-module__XF6Hjq__statCard{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:12px 6px}.page-module__XF6Hjq__statIcon{border-radius:10px;width:34px;height:34px}.page-module__XF6Hjq__statIcon svg{width:16px;height:16px}.page-module__XF6Hjq__statValue{font-size:1.2rem}.page-module__XF6Hjq__statLabel{margin-top:0;font-size:.66rem;line-height:1.25}.page-module__XF6Hjq__skeleton{height:84px}.page-module__XF6Hjq__recentGrid{grid-template-columns:1fr}}.page-module__XF6Hjq__todayEnter{animation:page-module__XF6Hjq__todayIn var(--dur-enter) var(--ease-out) calc(var(--stagger) * var(--i,0) + 80ms) both}@keyframes page-module__XF6Hjq__todayIn{0%{opacity:0;transform:translate(-12px)}}.page-module__XF6Hjq__recentFill{animation:page-module__XF6Hjq__recentFillIn var(--dur-progress) var(--ease-out) calc(var(--stagger) * var(--i,0) + .16s) both}@keyframes page-module__XF6Hjq__recentFillIn{0%{width:0}}
.HoursChart-module__RH_biG__chart{width:100%;min-height:150px;position:relative}.HoursChart-module__RH_biG__chart svg{display:block;overflow:visible}.HoursChart-module__RH_biG__baseline{stroke:#94a3b859;stroke-width:1px}.HoursChart-module__RH_biG__bar{fill:var(--blue-300);transition:fill var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);cursor:pointer}.HoursChart-module__RH_biG__peak{fill:var(--blue-600)}.HoursChart-module__RH_biG__active{fill:var(--blue-700)}.HoursChart-module__RH_biG__axis{fill:#94a3b8;font-size:10.5px;font-family:var(--font-body)}.HoursChart-module__RH_biG__tooltip{color:#f8fafc;white-space:nowrap;pointer-events:none;background:#0f172a;border-radius:9px;flex-direction:column;gap:2px;padding:7px 10px;font-size:.75rem;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 8px));box-shadow:0 6px 18px #0f172a40}.HoursChart-module__RH_biG__tooltip span{color:#cbd5e1}.HoursChart-module__RH_biG__bar{transform-box:fill-box;transform-origin:bottom;animation:HoursChart-module__RH_biG__barGrow var(--dur-enter) var(--ease-out) calc(var(--i,0) * 18ms) both}@keyframes HoursChart-module__RH_biG__barGrow{0%{scale:1 0}to{scale:1}}
.page-module__jiSiuG__main{z-index:1;flex-direction:column;gap:16px;max-width:1100px;margin:0 auto;padding:24px 24px 80px;display:flex;position:relative}.page-module__jiSiuG__pageHero{border-radius:22px;padding:22px 28px}.page-module__jiSiuG__title{font-family:var(--font-display);color:#0f172a;letter-spacing:-.03em;font-size:1.5rem;font-weight:800;line-height:1.1}.page-module__jiSiuG__sub{color:#94a3b8;margin-top:3px;font-size:.85rem}.page-module__jiSiuG__error{color:#ef4444;font-size:.85rem}.page-module__jiSiuG__tiles{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.page-module__jiSiuG__tile{animation:page-module__jiSiuG__fadeUp var(--dur-enter) var(--ease-out) both;border-radius:18px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.page-module__jiSiuG__tileIcon{width:30px;height:30px;color:var(--blue-600);background:#3b82f61a;border-radius:9px;justify-content:center;align-items:center;margin-bottom:6px;display:inline-flex}.page-module__jiSiuG__tileLabel{color:#64748b;font-size:.78rem;font-weight:500}.page-module__jiSiuG__tileValue{font-family:var(--font-display);color:#0f172a;letter-spacing:-.03em;font-size:1.6rem;font-weight:800;line-height:1.15}.page-module__jiSiuG__tileHint{color:#94a3b8;font-size:.75rem}.page-module__jiSiuG__card{border-radius:20px;min-width:0;padding:18px 20px}.page-module__jiSiuG__cardHeader,.page-module__jiSiuG__sectionHeader{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.page-module__jiSiuG__cardHeader{margin-bottom:14px}.page-module__jiSiuG__cardIcon{color:var(--b400)}.page-module__jiSiuG__cardTitle{font-family:var(--font-display);color:#0f172a;letter-spacing:-.02em;font-size:1rem;font-weight:700}.page-module__jiSiuG__cardHint{color:#94a3b8;font-size:.78rem}.page-module__jiSiuG__count{min-width:24px;height:22px;color:var(--b600);background:#3b82f61a;border:1px solid #3b82f62e;border-radius:7px;justify-content:center;align-items:center;padding:0 7px;font-size:.78rem;font-weight:700;display:flex}.page-module__jiSiuG__section{flex-direction:column;gap:12px;margin-top:8px;display:flex}.page-module__jiSiuG__chartGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.page-module__jiSiuG__chartHeader{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.page-module__jiSiuG__goalLink{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;text-decoration:none;overflow:hidden}@media (hover:hover){.page-module__jiSiuG__goalLink:hover{color:var(--blue-600)}}.page-module__jiSiuG__chartValue{color:#475569;white-space:nowrap;font-size:.8rem;font-weight:600}.page-module__jiSiuG__chartEmpty{color:#94a3b8;text-align:center;padding:24px 0;font-size:.82rem}.page-module__jiSiuG__empty{color:var(--b300);text-align:center;border-radius:18px;flex-direction:column;align-items:center;gap:8px;padding:28px 20px;display:flex}.page-module__jiSiuG__empty p{color:#94a3b8;font-size:.85rem}.page-module__jiSiuG__recurringList{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.page-module__jiSiuG__recurringItem{border-radius:14px;align-items:center;gap:16px;padding:12px 16px;display:flex}.page-module__jiSiuG__recurringInfo{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.page-module__jiSiuG__recurringMeta{color:#94a3b8;font-size:.78rem}.page-module__jiSiuG__cycleStrip{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.page-module__jiSiuG__cycle{color:#fff;cursor:default;border-radius:5px;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.page-module__jiSiuG__cycleDone{background:#10b981}.page-module__jiSiuG__cycleMissed{background:#ef4444}.page-module__jiSiuG__rate{text-align:center;border-radius:8px;min-width:52px;padding:4px 8px;font-size:.82rem;font-weight:700}.page-module__jiSiuG__toneGood{color:#059669;background:#10b9811f}.page-module__jiSiuG__toneWarn{color:#b45309;background:#f59e0b24}.page-module__jiSiuG__toneBad{color:#dc2626;background:#ef44441f}.page-module__jiSiuG__skeleton{opacity:.6;border-radius:18px;height:112px}.page-module__jiSiuG__skeletonTall{height:200px}.page-module__jiSiuG__delta{align-items:center;gap:4px;font-weight:600;display:inline-flex}.page-module__jiSiuG__deltaUp{color:#059669}.page-module__jiSiuG__deltaDown{color:#dc2626}.page-module__jiSiuG__deltaFlat{color:#94a3b8}.page-module__jiSiuG__pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.page-module__jiSiuG__cardEmpty{color:#94a3b8;padding:18px 0 8px;font-size:.85rem}.page-module__jiSiuG__allGood{color:#059669;align-items:center;gap:8px;display:flex}.page-module__jiSiuG__cardFoot{color:#94a3b8;border-top:1px solid #94a3b833;margin-top:14px;padding-top:12px;font-size:.78rem}.page-module__jiSiuG__insight{color:#475569;margin-bottom:12px;font-size:.88rem;line-height:1.45}.page-module__jiSiuG__insight strong{color:#0f172a}.page-module__jiSiuG__periods{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.page-module__jiSiuG__period{background:#94a3b814;border-radius:10px;flex-direction:column;align-items:center;gap:1px;padding:8px 4px;display:flex}.page-module__jiSiuG__periodBest{background:#3b82f61a;outline:1px solid #3b82f640}.page-module__jiSiuG__periodValue{font-family:var(--font-display);color:#0f172a;font-size:1rem;font-weight:700}.page-module__jiSiuG__periodLabel{color:#64748b;font-size:.72rem}.page-module__jiSiuG__streakList,.page-module__jiSiuG__taskList{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.page-module__jiSiuG__streakItem{align-items:flex-start;gap:12px;display:flex}.page-module__jiSiuG__rank{width:26px;height:26px;color:var(--blue-600);background:#3b82f61a;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.page-module__jiSiuG__streakBody{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.page-module__jiSiuG__streakTop{align-items:center;gap:8px;display:flex}.page-module__jiSiuG__streakLength{font-family:var(--font-display);color:#0f172a;font-size:1rem;font-weight:700}.page-module__jiSiuG__currentBadge{color:#c2410c;background:#f973161f;border-radius:999px;align-items:center;gap:3px;padding:2px 7px;font-size:.7rem;font-weight:700;display:inline-flex}.page-module__jiSiuG__streakRange{color:#94a3b8;font-size:.78rem}.page-module__jiSiuG__meter{background:#94a3b829;border-radius:999px;height:6px;margin-top:4px;display:block;overflow:hidden}.page-module__jiSiuG__meter span{background:var(--blue-500);border-radius:999px;height:100%;display:block}.page-module__jiSiuG__taskItem{align-items:center;gap:12px;display:flex}.page-module__jiSiuG__taskText{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.page-module__jiSiuG__taskTitle{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;overflow:hidden}.page-module__jiSiuG__taskGoal{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;text-decoration:none;overflow:hidden}@media (hover:hover){.page-module__jiSiuG__taskGoal:hover{color:var(--blue-600)}}.page-module__jiSiuG__taskMeta{color:#64748b;font-size:.75rem}.page-module__jiSiuG__taskCount{color:#0f172a;text-align:right;min-width:36px;font-size:.85rem;font-weight:700}@keyframes page-module__jiSiuG__fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.page-module__jiSiuG__tiles{grid-template-columns:repeat(2,1fr)}.page-module__jiSiuG__chartGrid,.page-module__jiSiuG__pair{grid-template-columns:minmax(0,1fr)}}@media (max-width:600px){.page-module__jiSiuG__main{padding:16px 16px 60px}.page-module__jiSiuG__pageHero{padding:18px 20px}.page-module__jiSiuG__tileValue{font-size:1.3rem}.page-module__jiSiuG__recurringItem{flex-wrap:wrap}.page-module__jiSiuG__cycleStrip{order:3;justify-content:flex-start;width:100%}}
