.page_container__kJo85{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.page_content__96mt9{max-width:1200px;margin:0 auto}.page_loading__ak_Su{height:200px;color:#fff;font-size:18px}.page_loading__ak_Su,.page_loginPrompt__7_g0G{display:flex;justify-content:center;align-items:center}.page_loginPrompt__7_g0G{min-height:80vh}.page_loginContent__XvIs8{background:#fff;border-radius:20px;padding:40px;text-align:center;box-shadow:0 20px 40px rgba(0,0,0,.1);max-width:500px;width:100%}.page_loginIcon__N3Tv_{font-size:64px;margin-bottom:20px}.page_loginTitle__EIHAw{color:#333;margin-bottom:16px;font-size:28px;font-weight:600}.page_loginDescription__gZCM6{color:#666;margin-bottom:30px;line-height:1.6}.page_badgePreview__Wk9i8,.page_challengePreview__Uc1gS{background:#f8f9fa;border-radius:12px;padding:20px;margin-bottom:20px;text-align:left}.page_badgePreview__Wk9i8 h3,.page_challengePreview__Uc1gS h3{color:#333;margin-bottom:15px;font-size:18px}.page_rewardList__Et_qA{display:flex;flex-direction:column;gap:10px}.page_rewardItem__ASArS{display:flex;align-items:center;gap:10px;color:#555}.page_rewardIcon__QRLyM{font-size:20px}.page_badgeList__xbQhQ{display:flex;flex-wrap:wrap;gap:10px}.page_badgePreviewItem__K_8j8{background:#e3f2fd;color:#1976d2;padding:8px 12px;border-radius:20px;font-size:14px;font-weight:500}.page_loginActions__ySLGh{display:flex;flex-direction:column;gap:12px}.page_loginBtn__miPQq,.page_previewBtn__U83Pw{padding:14px 24px;border-radius:12px;text-decoration:none;font-weight:600;transition:all .3s ease;border:none;cursor:pointer;font-size:16px}.page_loginBtn__miPQq{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.page_loginBtn__miPQq:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(102,126,234,.3)}.page_previewBtn__U83Pw{background:#f8f9fa;color:#666;border:2px solid #e9ecef}.page_previewBtn__U83Pw:hover{background:#e9ecef;color:#333}.page_header__RQo2a{text-align:center;margin-bottom:30px;color:#fff}.page_title__4CeDE{font-size:36px;font-weight:700;margin-bottom:10px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.page_subtitle__8_TnC{font-size:18px;opacity:.9;margin:0}.page_activeChallengeCard__H5NZK,.page_badgesCard__ZjcgP,.page_historyCard__5o_O1,.page_noChallengeCard__zi8CW,.page_rulesCard__Ssb9Y,.page_statsCard__Han6c{background:#fff;border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 4px 20px rgba(0,0,0,.1)}.page_activeChallengeCard__H5NZK h3,.page_badgesCard__ZjcgP h3,.page_historyCard__5o_O1 h3,.page_noChallengeCard__zi8CW h3,.page_rulesCard__Ssb9Y h3,.page_statsCard__Han6c h3{color:#333;margin-bottom:20px;font-size:20px;font-weight:600}.page_statsGrid__ntTHh{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:20px;gap:20px}.page_statItem__AQMxQ{text-align:center;padding:16px;background:#f8f9fa;border-radius:12px}.page_statValue__Qs9PN{font-size:24px;font-weight:700;color:#667eea;margin-bottom:4px}.page_statLabel__fpxLd{font-size:14px;color:#666}.page_challengeHeader__QsRn3{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page_statusBadge__sS96S{padding:6px 12px;border-radius:20px;color:#fff;font-size:12px;font-weight:600}.page_challengeInfo__ix7AB{margin-bottom:20px}.page_challengeType__WV6oV{font-size:18px;font-weight:600;color:#333;margin-bottom:16px}.page_progressInfo__bjKxi{margin-bottom:16px}.page_progressText__BNLPu{font-size:16px;color:#666;margin-bottom:8px}.page_progressBar__LfZcv{height:8px;background:#e9ecef;border-radius:4px;overflow:hidden;margin-bottom:8px}.page_progressFill__dHOIS{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.page_progressDetails__3jP83,.page_rewardInfo__FXLuT{display:flex;gap:20px;font-size:14px;color:#666}.page_rewardAmount__iWX_m{color:#28a745;font-weight:600}.page_targetBedtime__cAPey{color:#667eea;font-weight:600}.page_challengeActions__LPOzG{display:flex;flex-direction:column;gap:16px}.page_bedtimeInput__VRTvk{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page_bedtimeInput__VRTvk label{font-weight:600;color:#333;white-space:nowrap}.page_timeInput__0Hn2_{padding:8px 12px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;min-width:120px}.page_timeInput__0Hn2_:focus{outline:none;border-color:#667eea}.page_claimButton___PVY0,.page_recordButton__WSoFF,.page_startButton__hGqgi{padding:12px 24px;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px}.page_recordButton__WSoFF{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.page_recordButton__WSoFF:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(102,126,234,.3)}.page_claimButton___PVY0{background:#28a745;color:#fff}.page_claimButton___PVY0:hover{background:#218838;transform:translateY(-2px)}.page_startButton__hGqgi{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 32px;font-size:16px}.page_startButton__hGqgi:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(102,126,234,.3)}.page_noChallengeContent__apW85{text-align:center}.page_noChallengeContent__apW85 h3{color:#333;margin-bottom:16px}.page_noChallengeContent__apW85 p{color:#666;margin-bottom:30px;line-height:1.6}.page_challengeTypes__0ERjD{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:20px;gap:20px;margin-bottom:30px}.page_challengeTypeCard___lyoM{background:#f8f9fa;border-radius:12px;padding:20px;text-align:center;border:2px solid transparent;transition:all .3s ease}.page_challengeTypeCard___lyoM:hover{border-color:#667eea;transform:translateY(-4px)}.page_typeIcon____mn3{font-size:32px;margin-bottom:12px}.page_typeName__upqFB{font-size:16px;font-weight:600;color:#333;margin-bottom:8px}.page_typeReward__PFx1A{color:#28a745;font-weight:600;margin-bottom:8px}.page_typeDesc__T7g7o{color:#666;font-size:14px;line-height:1.4}.page_rulesList__JHImw{display:flex;flex-direction:column;gap:12px}.page_ruleItem__3_VMP{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#f8f9fa;border-radius:8px}.page_ruleIcon__gXK0Z{font-size:16px;flex-shrink:0}.page_ruleItem__3_VMP span:last-child{color:#555;line-height:1.5}.page_badgeStats__XDPCI{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-gap:16px;gap:16px;margin-bottom:20px}.page_badgeStatItem__pAwdq{text-align:center;padding:12px;background:#f8f9fa;border-radius:8px}.page_badgeStatValue__Cq2V9{font-size:20px;font-weight:700;color:#667eea;margin-bottom:4px}.page_badgeStatLabel__aD4Et{font-size:12px;color:#666}.page_badgesGrid__D6MSv{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:16px;gap:16px}.page_badgeItem__K2Z4j{background:#f8f9fa;border-radius:12px;padding:16px;text-align:center;border:2px solid transparent;transition:all .3s ease}.page_badgeEarned__l36mU{border-color:#28a745;background:#f8fff9}.page_badgeLocked__Pn9Ko{opacity:.6}.page_badgeIcon__L4Jz0{font-size:32px;margin-bottom:8px}.page_badgeName__2kXOi{font-size:14px;font-weight:600;color:#333;margin-bottom:4px}.page_badgeDescription__1xiY9{font-size:12px;color:#666;line-height:1.4;margin-bottom:8px}.page_badgeCount__uqwLT{background:#667eea;color:#fff;border-radius:12px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.page_badgeDate__qHqL5{font-size:10px;color:#999;margin-top:4px}.page_historyList__hmw8j{display:flex;flex-direction:column;gap:12px}.page_historyItem__jbyBE{background:#f8f9fa;border-radius:8px;padding:16px}.page_historyInfo__m29Ed{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.page_historyType__bu_VU{font-weight:600;color:#333}.page_historyDetails__LhRpY{display:flex;gap:20px;font-size:14px;color:#666}.page_modalOverlay__5mjDP{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.page_modal__eeDND{background:#fff;border-radius:16px;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.page_modalHeader__jsDD2{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e9ecef}.page_modalHeader__jsDD2 h3{margin:0;color:#333;font-size:18px}.page_closeButton__kk666{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.page_closeButton__kk666:hover{color:#333}.page_modalContent__6osH3{padding:24px}.page_challengeOptions__Aq5Be{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.page_optionItem__X2nO2{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .3s ease}.page_optionItem__X2nO2:hover{border-color:#667eea}.page_optionItem__X2nO2 input[type=radio]{margin:0}.page_optionContent__8N63f{flex:1 1}.page_optionName__T04E5{font-weight:600;color:#333;margin-bottom:4px}.page_optionReward__nL0HI{color:#28a745;font-size:14px}.page_bedtimeSetting__ZlbFq{margin-top:20px}.page_bedtimeSetting__ZlbFq label{display:block;font-weight:600;color:#333;margin-bottom:8px}.page_bedtimeNote__2FR9D{font-size:12px;color:#666;margin-top:8px;line-height:1.4}.page_modalActions__wYDQJ{display:flex;gap:12px;padding:20px 24px;border-top:1px solid #e9ecef}.page_cancelButton__g0ATx,.page_confirmButton__3EHxH{flex:1 1;padding:12px 24px;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:all .3s ease}.page_cancelButton__g0ATx{background:#f8f9fa;color:#666;border:2px solid #e9ecef}.page_cancelButton__g0ATx:hover{background:#e9ecef;color:#333}.page_confirmButton__3EHxH{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.page_confirmButton__3EHxH:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(102,126,234,.3)}@media (max-width:768px){.page_container__kJo85{padding:10px}.page_title__4CeDE{font-size:28px}.page_subtitle__8_TnC{font-size:16px}.page_statsGrid__ntTHh{grid-template-columns:repeat(3,1fr);gap:12px}.page_challengeTypes__0ERjD{grid-template-columns:1fr}.page_badgesGrid__D6MSv{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.page_bedtimeInput__VRTvk{flex-direction:column;align-items:stretch}.page_bedtimeInput__VRTvk label{text-align:center}.page_modal__eeDND{width:95%;margin:10px}.page_modalActions__wYDQJ{flex-direction:column}}