/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */.progressCard{background:var(--color-surface-1);border:1px solid var(--color-stroke-1);border-radius:16px;padding:20px}.progressStatIcon{border-radius:12px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.progressStatIcon-amber{background:rgba(var(--color-brand-secondary-rgb),.12);color:rgb(var(--color-brand-secondary-rgb))}.progressStatIcon-blue{background:rgba(var(--color-brand-primary-rgb),.12);color:rgb(var(--color-brand-primary-rgb))}.progressStatIcon-green{background:rgba(var(--color-state-success-rgb),.12);color:rgb(var(--color-state-success-rgb))}.progressStatIcon-purple{background:rgba(var(--color-accent-indigo-rgb),.12);color:rgb(var(--color-accent-indigo-rgb))}.progressStatLabel{color:rgb(var(--color-text-muted-rgb));letter-spacing:.05em;font-size:10.5px;font-weight:700}.progressStatValue{color:var(--color-text-strong);margin-top:2px;font-size:22px;font-weight:800;line-height:1}.progressStatValue span{color:rgb(var(--color-text-muted-rgb));font-size:15px}.progressActivityCard{overflow:hidden}.progressActivityHint{color:rgb(var(--color-text-muted-rgb));margin-left:auto;font-size:11.5px;font-weight:600}.activityOverview{align-items:center;gap:28px;margin-top:16px;display:flex}.activitySummary{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0;display:grid}.activityMetric{border:1px solid rgb(var(--color-divider-rgb));background:rgb(var(--color-surface-muted-rgb));border-radius:12px;min-width:0;padding:12px 14px}.activityMetric span,.activityMetric strong{display:block}.activityMetric strong{color:var(--color-text-strong);font-variant-numeric:tabular-nums;font-size:21px;font-weight:800;line-height:1}.activityMetric span{color:rgb(var(--color-text-muted-rgb));text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:10.5px;font-weight:600;overflow:hidden}.activityCalendar{flex:none}.activityHeatmap{grid-auto-columns:14px;grid-auto-flow:column;gap:4px;display:grid}.heatCol{grid-template-rows:repeat(7,14px);gap:4px;display:grid}.heatCell{background:rgb(var(--color-surface-muted-rgb));border:1px solid rgb(var(--color-divider-rgb));border-radius:4px;width:14px;height:14px}.heatCell[data-level="1"]{background:rgba(var(--color-brand-primary-rgb),.28);border-color:#0000}.heatCell[data-level="2"]{background:rgba(var(--color-brand-primary-rgb),.5);border-color:#0000}.heatCell[data-level="3"]{background:rgba(var(--color-brand-primary-rgb),.75);border-color:#0000}.heatCell[data-level="4"]{background:rgb(var(--color-brand-primary-rgb));border-color:#0000}.activityLegend{color:rgb(var(--color-text-muted-rgb));justify-content:flex-end;align-items:center;gap:4px;margin-top:9px;font-size:9.5px;font-weight:600;display:flex}.activityLegend span:first-child{margin-right:2px}.activityLegend span:last-child{margin-left:2px}.activityLegend .heatCell{border-radius:3px;width:9px;height:9px;display:block}.progressRetentionCard{flex-direction:column;gap:6px;display:flex}.progressRetentionSub{color:rgb(var(--color-text-muted-rgb));margin:0 0 6px;font-size:12.5px}.retentionChart{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:10px;display:grid}.retentionBar{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.retentionBarTrack{background:rgb(var(--color-surface-muted-rgb));border:1px solid rgb(var(--color-divider-rgb));border-radius:10px;align-items:flex-end;width:100%;height:96px;display:flex;position:relative;overflow:hidden}.retentionBarFill{background:rgb(var(--color-brand-primary-rgb));border-radius:0 0 9px 9px;width:100%;transition:height .4s}.retentionBarPct{text-align:center;color:var(--color-text-strong);font-size:12px;font-weight:800;position:absolute;top:6px;left:0;right:0}.retentionBarLabel{color:rgb(var(--color-text-muted-rgb));text-align:center;white-space:nowrap;font-size:11px;font-weight:600}.progressSkillsRow{grid-template-columns:1fr;gap:14px;display:grid}.progressGrammarCard{flex-direction:column;gap:14px;display:flex}.progressGrammarLink{color:rgb(var(--color-brand-primary-rgb));align-items:center;gap:4px;margin-left:auto;font-size:12.5px;font-weight:700;display:inline-flex}.grammarStatusRow{flex-wrap:wrap;gap:10px;display:flex}.grammarStatusChip{background:rgb(var(--color-surface-muted-rgb));border:1px solid rgb(var(--color-divider-rgb));border-radius:12px;flex-direction:column;flex:90px;align-items:center;gap:2px;padding:10px 8px;display:flex}.grammarStatusChip strong{color:var(--color-text-strong);font-size:20px;font-weight:800;line-height:1}.grammarStatusChip span{color:rgb(var(--color-text-muted-rgb));font-size:11px;font-weight:600}.grammarStatus-mastered strong{color:rgb(var(--color-state-success-text-rgb))}.grammarStatus-progress strong{color:rgb(var(--color-brand-primary-rgb))}.grammarWeakList{flex-direction:column;gap:8px;display:flex}.grammarWeakTitle{letter-spacing:.05em;text-transform:uppercase;color:rgb(var(--color-text-muted-rgb));font-size:11px;font-weight:800}.grammarWeakRow{background:rgb(var(--color-surface-muted-rgb));border:1px solid rgb(var(--color-divider-rgb));border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex}.grammarWeakText{flex:1;min-width:0}.grammarWeakLabel{color:var(--color-text-strong);font-size:14px;font-weight:700}.grammarWeakMeta{color:rgb(var(--color-text-muted-rgb));text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.grammarTrainBtn{color:rgb(var(--color-on-accent-rgb));background:rgb(var(--color-brand-primary-rgb));border-radius:10px;flex:none;align-items:center;gap:6px;padding:7px 13px;font-size:13px;font-weight:700;display:inline-flex}.progressCardHeader{align-items:center;gap:8px;display:flex}.progressCardTitle{color:var(--color-text-strong);margin:0;font-size:15px;font-weight:800}.reviewMiniChart{align-items:flex-end;gap:6px;height:56px;margin-top:16px;display:flex}.reviewMiniBar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:5px;min-width:0;height:100%;display:flex}.reviewMiniBarFill{background:rgba(var(--color-brand-primary-rgb),.18);border-radius:5px;width:100%;max-width:52px}.reviewMiniBarToday{background:rgb(var(--color-brand-primary-rgb))}.reviewMiniBar span{color:rgb(var(--color-text-muted-rgb));font-size:10px;line-height:1}.reviewMiniBar:last-child span{color:rgb(var(--color-brand-primary-rgb));font-weight:700}.progressSkillCard{flex-direction:column;display:flex}.progressSideCard{padding:18px}.progressSideTitle{align-items:center;gap:7px;margin-bottom:14px;display:flex}.progressSideTitle svg{color:rgb(var(--color-brand-secondary-rgb))}.progressSideTitle h3{color:var(--color-text-strong);margin:0;font-size:14px;font-weight:800}.progressWordList{flex-direction:column;gap:10px;display:flex}.progressWordItem{align-items:center;gap:10px;min-width:0;display:flex}.progressWordText{flex:1;min-width:0}.progressWordKey{font-family:var(--font-golos);color:var(--color-text-strong);font-size:14px;font-weight:700}.progressWordKey,.progressWordMeta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.progressWordMeta{color:rgb(var(--color-text-muted-rgb));margin-top:2px;font-size:11px}.progressWordBadge{border-radius:7px;flex:none;padding:3px 8px;font-size:11px;font-weight:700}.progressWordBadge-hard{color:rgb(var(--color-state-danger-soft-text-rgb));background:rgba(var(--color-danger-rgb),.1)}.progressWordBadge-good{color:rgb(var(--color-state-success-rgb));background:rgba(var(--color-state-success-rgb),.1)}.progressEmptyState{background:rgb(var(--color-surface-muted-rgb));color:var(--color-text-muted);border-radius:11px;padding:14px;font-size:12px}.progressMobileSpacer{display:none}@media (max-width:980px){.activityOverview{flex-direction:column;align-items:stretch;gap:14px}.activityCalendar{align-self:flex-start}}@media (max-width:760px){.retentionChart{gap:6px}.retentionBarTrack{height:76px}.retentionBarLabel{font-size:9.5px}.grammarWeakRow{flex-wrap:wrap}.grammarTrainBtn{justify-content:center;width:100%;min-height:44px}.progressCard{border-radius:16px;padding:16px}.progressStatIcon{border-radius:10px;width:36px;height:36px}.progressStatLabel{font-size:9.5px}.progressStatValue{font-size:18px}.progressStatValue span{font-size:12px}.progressReviewCard{order:0}.progressReviewCard .reviewMiniChart{display:none}.progressCardTitle{font-size:14px}.progressActivityHint{display:none}.activityOverview{margin-top:14px}.activitySummary{gap:6px}.activityMetric{padding:10px}.activityMetric strong{font-size:18px}.activityMetric span{font-size:9.5px}.activityCalendar{max-width:100%;padding-bottom:2px;overflow-x:auto}.progressMobileSpacer{height:4px;display:block}}.progressDetailWrap{display:flex;flex-direction:column;gap:22px}.progressDetailHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.progressDetailTitle{font-size:22px;font-weight:700;color:var(--color-text-strong)}.progressDetailLede{margin-top:4px;font-size:13.5px;color:rgb(var(--color-text-muted-rgb))}.progressUpdatedAt{flex:0 0 auto;font-size:11.5px;color:rgb(var(--color-text-muted-rgb));white-space:nowrap}.progressDetailSection{display:flex;flex-direction:column;gap:12px}.progressSectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px}.progressSectionTitle{font-size:15px;font-weight:650;color:var(--color-text-strong)}.progressPeriodToggle{display:inline-flex;gap:2px;padding:3px;border-radius:10px;background:rgb(var(--color-surface-muted-rgb));border:1px solid rgb(var(--color-divider-rgb))}.progressPeriodToggle button{appearance:none;border:none;background:transparent;cursor:pointer;padding:5px 12px;border-radius:8px;font-size:12.5px;font-weight:550;color:rgb(var(--color-text-muted-rgb))}.progressPeriodToggle button.isActive{background:var(--color-surface-1);color:var(--color-text-strong);box-shadow:0 1px 2px rgba(var(--color-divider-rgb),.6)}.progressSkeleton{border-radius:16px;background:linear-gradient(90deg,rgb(var(--color-surface-muted-rgb)) 0,rgba(var(--color-divider-rgb),.5) 50%,rgb(var(--color-surface-muted-rgb)) 100%);background-size:200% 100%;animation:progressShimmer 1.4s ease-in-out infinite}@keyframes progressShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.progressSkeleton{animation:none}}.progressUnavailable{display:flex;align-items:center;justify-content:space-between;gap:12px;color:rgb(var(--color-text-muted-rgb));font-size:13.5px}.progressRetryBtn{display:inline-flex;align-items:center;gap:6px;appearance:none;cursor:pointer;border:1px solid rgb(var(--color-divider-rgb));background:rgb(var(--color-surface-muted-rgb));color:var(--color-text-strong);border-radius:9px;padding:7px 12px;min-height:44px;font-size:12.5px;font-weight:550}.progressRetryBtn:hover{background:var(--color-surface-1)}.progressMinutesRow{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.progressMinuteStat{display:flex;align-items:center;gap:10px;color:rgb(var(--color-brand-primary-rgb))}.progressMinuteStat>div{display:flex;flex-direction:column;line-height:1.15}.progressMinuteStat strong{font-size:20px;color:var(--color-text-strong)}.progressMinuteStat span{font-size:11.5px;color:rgb(var(--color-text-muted-rgb))}.activityTakeaway{margin-top:12px;font-size:12.5px;color:rgb(var(--color-text-muted-rgb))}.progressAccuracyCard{display:flex;align-items:center;gap:14px}.progressAccuracyCard .progressStatValue{font-size:26px;font-weight:700;color:var(--color-text-strong)}.progressAccuracyCard .progressStatLabel{font-size:12px;color:rgb(var(--color-text-muted-rgb));margin-top:2px}.progressRetentionScope{display:inline-block;margin-top:4px;font-size:11.5px;color:rgb(var(--color-text-muted-rgb))}.progressWordsGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.progressCanDoCard{display:flex;align-items:flex-start;gap:14px}.progressCanDoBody{min-width:0}.progressCanDoHeadline{font-size:15px;font-weight:600;color:var(--color-text-strong);line-height:1.35}.progressCanDoMeta{margin-top:4px;font-size:12px;color:rgb(var(--color-text-muted-rgb))}.progressCanDoCard .progressWordCta{margin-top:10px}.grammarWeakHint{flex:0 0 auto;font-size:11.5px;color:rgb(var(--color-text-muted-rgb));font-style:italic}@media (max-width:760px){.progressPeriodToggle button{min-height:44px}.progressMinutesRow,.progressWordsGrid{grid-template-columns:1fr}.progressDetailTitle{font-size:19px}}