.PublicTyping-module__-W3k1W__pageWrapper{width:100%;min-height:100vh;padding-top:calc(80px + var(--spacing-lg));padding-bottom:var(--spacing-3xl);padding-left:var(--spacing-lg);padding-right:var(--spacing-lg);background:0 0;flex-direction:column;align-items:center;display:flex}.PublicTyping-module__-W3k1W__container{gap:var(--spacing-lg);flex-direction:column;width:100%;max-width:1200px;display:flex}.PublicTyping-module__-W3k1W__backBtn{border-radius:var(--radius-full)!important;background:var(--color-surface)!important;border:1px solid var(--color-border)!important;width:38px!important;height:38px!important;color:var(--color-text-secondary)!important;margin-bottom:var(--spacing-md)!important;transition:all var(--transition-fast)!important}.PublicTyping-module__-W3k1W__backBtn:hover{border-color:var(--color-primary)!important;color:var(--color-primary)!important;background:var(--color-primary-glow)!important}.PublicTyping-module__-W3k1W__header{align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);border-radius:var(--radius-2xl);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap;display:flex}.PublicTyping-module__-W3k1W__headerIcon{border-radius:var(--radius-lg);background:var(--color-primary-glow);width:52px;height:52px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.PublicTyping-module__-W3k1W__pageTitle{font-size:var(--font-size-2xl)!important;font-weight:var(--font-weight-bold)!important;color:var(--color-text-primary)!important;margin:0 0 .15rem!important;line-height:1.2!important}.PublicTyping-module__-W3k1W__accent{background:var(--gradient-primary);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.PublicTyping-module__-W3k1W__pageSubtitle{font-size:var(--font-size-sm)!important;color:var(--color-text-secondary)!important;margin:0!important}.PublicTyping-module__-W3k1W__signInPrompt{border-radius:var(--radius-full);background:var(--color-primary-glow);border:1px solid color-mix(in srgb,var(--color-primary)25%,transparent);color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;padding:.45rem .9rem;text-decoration:none;display:inline-flex}.PublicTyping-module__-W3k1W__signInPrompt:hover{background:var(--color-primary);color:#fff;box-shadow:0 6px 16px var(--color-primary-glow);transform:translateY(-1px)}.PublicTyping-module__-W3k1W__cardsGrid{width:100%}.PublicTyping-module__-W3k1W__card{height:100%;min-height:320px;padding:var(--spacing-xl);border-radius:var(--radius-2xl);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-md);gap:var(--spacing-md);cursor:pointer;transition:all var(--transition-smooth);color:inherit;flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.PublicTyping-module__-W3k1W__card:before{content:"";background:var(--gradient-primary);opacity:.85;height:3px;position:absolute;top:0;left:0;right:0}.PublicTyping-module__-W3k1W__cardPrimary:before{background:linear-gradient(90deg,#6366f1,#8b5cf6)}.PublicTyping-module__-W3k1W__cardSecondary:before{background:linear-gradient(90deg,#06b6d4,#0891b2)}.PublicTyping-module__-W3k1W__cardTertiary:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.PublicTyping-module__-W3k1W__cardQuaternary:before{background:linear-gradient(90deg,#10b981,#059669)}.PublicTyping-module__-W3k1W__card:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-xl);transform:translateY(-6px)}.PublicTyping-module__-W3k1W__cardHeader{justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex}.PublicTyping-module__-W3k1W__cardIconBox{border-radius:var(--radius-lg);background:var(--color-primary-glow);width:56px;height:56px;color:var(--color-primary);transition:transform var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.PublicTyping-module__-W3k1W__cardSecondary .PublicTyping-module__-W3k1W__cardIconBox{background:color-mix(in srgb,var(--color-secondary)15%,transparent);color:var(--color-secondary)}.PublicTyping-module__-W3k1W__cardTertiary .PublicTyping-module__-W3k1W__cardIconBox{background:color-mix(in srgb,var(--color-warning)15%,transparent);color:var(--color-warning)}.PublicTyping-module__-W3k1W__cardQuaternary .PublicTyping-module__-W3k1W__cardIconBox{background:color-mix(in srgb,var(--color-success)15%,transparent);color:var(--color-success)}.PublicTyping-module__-W3k1W__card:hover .PublicTyping-module__-W3k1W__cardIconBox{transform:scale(1.08)rotate(-4deg)}.PublicTyping-module__-W3k1W__cardBadge{border-radius:var(--radius-full);background:var(--color-surface-hover);border:1px solid var(--color-border);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);padding:.35rem .85rem}.PublicTyping-module__-W3k1W__cardTitle{font-size:var(--font-size-2xl)!important;font-weight:var(--font-weight-bold)!important;color:var(--color-text-primary)!important;margin:0!important;line-height:1.2!important}.PublicTyping-module__-W3k1W__cardDescription{flex-grow:1;font-size:var(--font-size-sm)!important;color:var(--color-text-secondary)!important;margin:0!important;line-height:1.65!important}.PublicTyping-module__-W3k1W__cardFeatures{flex-wrap:wrap;gap:.5rem;margin-top:auto;display:flex}.PublicTyping-module__-W3k1W__feature{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);transition:all var(--transition-fast);padding:.3rem .7rem}.PublicTyping-module__-W3k1W__card:hover .PublicTyping-module__-W3k1W__feature{border-color:var(--color-primary);color:var(--color-primary)}.PublicTyping-module__-W3k1W__cardButton{border-radius:var(--radius-full);background:var(--gradient-primary);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-top:var(--spacing-sm);transition:all var(--transition-fast);box-shadow:0 6px 16px var(--color-primary-glow);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:inline-flex}.PublicTyping-module__-W3k1W__cardSecondary .PublicTyping-module__-W3k1W__cardButton{background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:0 6px 16px #06b6d44d}.PublicTyping-module__-W3k1W__cardTertiary .PublicTyping-module__-W3k1W__cardButton{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 6px 16px #f59e0b4d}.PublicTyping-module__-W3k1W__cardQuaternary .PublicTyping-module__-W3k1W__cardButton{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 6px 16px #10b9814d}.PublicTyping-module__-W3k1W__card:hover .PublicTyping-module__-W3k1W__cardButton{filter:brightness(1.08);transform:translateY(-1px)}.PublicTyping-module__-W3k1W__cardBtnIcon{transition:transform var(--transition-fast)}.PublicTyping-module__-W3k1W__card:hover .PublicTyping-module__-W3k1W__cardBtnIcon{transform:translate(4px)}.PublicTyping-module__-W3k1W__publicBanner{margin-top:var(--spacing-lg);padding:var(--spacing-md);border-radius:var(--radius-xl);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.PublicTyping-module__-W3k1W__publicBanner strong{color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.PublicTyping-module__-W3k1W__bottomStats{justify-content:center;align-items:center;gap:var(--spacing-lg);margin-top:var(--spacing-xl);padding:var(--spacing-md);flex-wrap:wrap;display:flex}.PublicTyping-module__-W3k1W__statItem{font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:.4rem;display:inline-flex}.PublicTyping-module__-W3k1W__iconPrimary{color:var(--color-primary)}.PublicTyping-module__-W3k1W__iconWarning{color:var(--color-warning)}.PublicTyping-module__-W3k1W__iconSuccess{color:var(--color-success)}.PublicTyping-module__-W3k1W__iconError{color:var(--color-error)}.PublicTyping-module__-W3k1W__iconMuted{color:var(--color-text-muted)}@media (max-width:900px){.PublicTyping-module__-W3k1W__pageWrapper{padding-top:calc(72px + var(--spacing-md));padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.PublicTyping-module__-W3k1W__header{padding:var(--spacing-md)}.PublicTyping-module__-W3k1W__pageTitle{font-size:var(--font-size-xl)!important}.PublicTyping-module__-W3k1W__card{min-height:280px;padding:var(--spacing-lg)}.PublicTyping-module__-W3k1W__cardTitle{font-size:var(--font-size-xl)!important}}@media (max-width:600px){.PublicTyping-module__-W3k1W__pageWrapper{padding-top:calc(64px + var(--spacing-sm));padding-left:var(--spacing-sm);padding-right:var(--spacing-sm);padding-bottom:var(--spacing-2xl)}.PublicTyping-module__-W3k1W__headerIcon{width:44px;height:44px}.PublicTyping-module__-W3k1W__pageTitle{font-size:var(--font-size-lg)!important}.PublicTyping-module__-W3k1W__signInPrompt{display:none}.PublicTyping-module__-W3k1W__card{min-height:auto;padding:var(--spacing-md)}.PublicTyping-module__-W3k1W__cardIconBox{width:48px;height:48px}.PublicTyping-module__-W3k1W__cardTitle{font-size:var(--font-size-lg)!important}.PublicTyping-module__-W3k1W__bottomStats{gap:var(--spacing-md);padding:var(--spacing-sm)}.PublicTyping-module__-W3k1W__statItem{font-size:var(--font-size-xs)}.PublicTyping-module__-W3k1W__publicBanner{font-size:var(--font-size-xs);flex-direction:column}}@media (prefers-reduced-motion:reduce){.PublicTyping-module__-W3k1W__card,.PublicTyping-module__-W3k1W__cardButton,.PublicTyping-module__-W3k1W__cardIconBox,.PublicTyping-module__-W3k1W__cardBtnIcon,.PublicTyping-module__-W3k1W__feature,.PublicTyping-module__-W3k1W__signInPrompt,.PublicTyping-module__-W3k1W__backBtn{transition-duration:.01ms!important}}
.TypingStats-module__Ddv-_a__page{width:100%;max-width:1000px;padding:var(--spacing-lg)var(--spacing-lg)var(--spacing-3xl);gap:var(--spacing-lg);flex-direction:column;margin:0 auto;display:flex}.TypingStats-module__Ddv-_a__pageHeader{justify-content:space-between;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);border-radius:var(--radius-2xl);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-md);flex-wrap:wrap;display:flex}.TypingStats-module__Ddv-_a__headerLeft{align-items:center;gap:var(--spacing-md);flex:1;min-width:0;display:flex}.TypingStats-module__Ddv-_a__backBtn{flex-shrink:0;border-radius:var(--radius-full)!important;background:var(--color-surface)!important;border:1px solid var(--color-border)!important;width:38px!important;height:38px!important;color:var(--color-text-secondary)!important;transition:all var(--transition-fast)!important}.TypingStats-module__Ddv-_a__backBtn:hover{border-color:var(--color-primary)!important;color:var(--color-primary)!important;background:var(--color-primary-glow)!important}.TypingStats-module__Ddv-_a__headerIcon{border-radius:var(--radius-lg);background:var(--color-primary-glow);width:48px;height:48px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.TypingStats-module__Ddv-_a__pageTitle{font-size:var(--font-size-2xl)!important;font-weight:var(--font-weight-bold)!important;color:var(--color-text-primary)!important;margin:0 0 .15rem!important;line-height:1.2!important}.TypingStats-module__Ddv-_a__pageSubtitle{font-size:var(--font-size-sm)!important;color:var(--color-text-secondary)!important;margin:0!important}.TypingStats-module__Ddv-_a__list{gap:var(--spacing-sm);flex-direction:column;display:flex}.TypingStats-module__Ddv-_a__historyItem{justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-xl);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-sm);transition:all var(--transition-fast);flex-wrap:wrap;display:flex}.TypingStats-module__Ddv-_a__historyLeft{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.TypingStats-module__Ddv-_a__historyRight{align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.TypingStats-module__Ddv-_a__stat{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);align-items:center;gap:.3rem;display:inline-flex}.TypingStats-module__Ddv-_a__stat svg{color:var(--color-primary)}.TypingStats-module__Ddv-_a__statCard{padding:var(--spacing-lg);border-radius:var(--radius-2xl);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-md);transition:all var(--transition-smooth);flex-direction:column;align-items:flex-start;gap:.5rem;height:100%;min-height:140px;display:flex}.TypingStats-module__Ddv-_a__statCard:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.TypingStats-module__Ddv-_a__statLabel{text-transform:uppercase;letter-spacing:.06em;font-size:var(--font-size-xs)!important;color:var(--color-text-secondary)!important;font-weight:var(--font-weight-medium)!important;margin:0!important}.TypingStats-module__Ddv-_a__iconPrimary{color:var(--color-primary)}.TypingStats-module__Ddv-_a__iconWarning{color:var(--color-warning)}.TypingStats-module__Ddv-_a__iconSuccess{color:var(--color-success)}.TypingStats-module__Ddv-_a__iconError{color:var(--color-error)}.TypingStats-module__Ddv-_a__empty{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-3xl)var(--spacing-md);text-align:center;flex-direction:column;display:flex}.TypingStats-module__Ddv-_a__empty svg{color:var(--color-text-muted);opacity:.6}.TypingStats-module__Ddv-_a__empty p{font-size:var(--font-size-md)!important;color:var(--color-text-secondary)!important;margin:0!important}.TypingStats-module__Ddv-_a__errorBox{padding:var(--spacing-lg);border-radius:var(--radius-xl);text-align:center;background:#ef444414;border:1px solid #ef444433}@media (max-width:600px){.TypingStats-module__Ddv-_a__page{padding:var(--spacing-md)var(--spacing-sm)var(--spacing-2xl)}.TypingStats-module__Ddv-_a__pageHeader{padding:var(--spacing-md)}.TypingStats-module__Ddv-_a__pageTitle{font-size:var(--font-size-xl)!important}.TypingStats-module__Ddv-_a__statValue{font-size:var(--font-size-2xl)!important}.TypingStats-module__Ddv-_a__historyItem{padding:var(--spacing-sm);flex-direction:column;align-items:flex-start}.TypingStats-module__Ddv-_a__historyRight{justify-content:space-between;width:100%}}@media (prefers-reduced-motion:reduce){.TypingStats-module__Ddv-_a__statCard,.TypingStats-module__Ddv-_a__historyItem,.TypingStats-module__Ddv-_a__backBtn{transition-duration:.01ms!important}}.TypingStats-module__Ddv-_a__historyItem{gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-xl);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-sm);transition:all var(--transition-fast);flex-direction:column;display:flex;position:relative;overflow:hidden}.TypingStats-module__Ddv-_a__historyItem:before{content:"";border-radius:var(--radius-full);width:4px;position:absolute;top:0;bottom:0;left:0}.TypingStats-module__Ddv-_a__historyItemHappy:before{background:linear-gradient(#10b981,#059669)}.TypingStats-module__Ddv-_a__historyItemAverage:before{background:linear-gradient(#f59e0b,#d97706)}.TypingStats-module__Ddv-_a__historyItemPoor:before{background:linear-gradient(#ef4444,#dc2626)}.TypingStats-module__Ddv-_a__historyItem:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.TypingStats-module__Ddv-_a__historyTop{justify-content:space-between;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;padding-left:.35rem;display:flex}.TypingStats-module__Ddv-_a__historyTags{flex-wrap:wrap;gap:.4rem;display:flex}.TypingStats-module__Ddv-_a__modeChip{font-size:var(--font-size-xs)!important;font-weight:var(--font-weight-bold)!important;background:var(--color-primary-glow)!important;height:22px!important;color:var(--color-primary)!important;border-radius:var(--radius-full)!important}.TypingStats-module__Ddv-_a__langChip{font-size:var(--font-size-xs)!important;font-weight:var(--font-weight-semibold)!important;background:var(--color-surface-hover)!important;height:22px!important;color:var(--color-text-secondary)!important;border-radius:var(--radius-full)!important}.TypingStats-module__Ddv-_a__historyDateRow{color:var(--color-text-muted);align-items:center;gap:.35rem;display:inline-flex}.TypingStats-module__Ddv-_a__historyDate{font-size:var(--font-size-xs)!important;color:var(--color-text-secondary)!important;margin:0!important}.TypingStats-module__Ddv-_a__historyStats{gap:var(--spacing-sm);grid-template-columns:repeat(6,1fr);padding-left:.35rem;display:grid}.TypingStats-module__Ddv-_a__historyStat{align-items:center;gap:.5rem;min-width:0;display:flex}.TypingStats-module__Ddv-_a__statIconPrimary,.TypingStats-module__Ddv-_a__statIconSuccess,.TypingStats-module__Ddv-_a__statIconWarning,.TypingStats-module__Ddv-_a__statIconError{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.TypingStats-module__Ddv-_a__statIconPrimary{background:var(--color-primary-glow);color:var(--color-primary)}.TypingStats-module__Ddv-_a__statIconSuccess{background:color-mix(in srgb,var(--color-success)15%,transparent);color:var(--color-success)}.TypingStats-module__Ddv-_a__statIconWarning{background:color-mix(in srgb,var(--color-warning)15%,transparent);color:var(--color-warning)}.TypingStats-module__Ddv-_a__statIconError{background:color-mix(in srgb,var(--color-error)15%,transparent);color:var(--color-error)}.TypingStats-module__Ddv-_a__statValue{font-variant-numeric:tabular-nums;font-size:var(--font-size-md)!important;font-weight:var(--font-weight-bold)!important;color:var(--color-text-primary)!important;margin:0!important;line-height:1!important}.TypingStats-module__Ddv-_a__statLabel{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)!important;margin:.1rem 0 0!important;font-size:.65rem!important;line-height:1!important}.TypingStats-module__Ddv-_a__paginationWrapper{margin-top:var(--spacing-xl);padding:var(--spacing-sm)0;justify-content:center;display:flex}.TypingStats-module__Ddv-_a__pagination .MuiPaginationItem-root{border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-primary);transition:all var(--transition-fast);margin:0 .15rem}.TypingStats-module__Ddv-_a__pagination .MuiPaginationItem-root:hover{background:var(--color-primary-glow);color:var(--color-primary)}.TypingStats-module__Ddv-_a__pagination .MuiPaginationItem-root.Mui-selected{background:var(--gradient-primary);color:#fff;box-shadow:0 6px 16px var(--color-primary-glow)}@media (max-width:900px){.TypingStats-module__Ddv-_a__historyStats{grid-template-columns:repeat(3,1fr)}}@media (max-width:600px){.TypingStats-module__Ddv-_a__historyItem{padding:var(--spacing-sm)var(--spacing-md)}.TypingStats-module__Ddv-_a__historyTop{flex-direction:column;align-items:flex-start}.TypingStats-module__Ddv-_a__historyStats{gap:var(--spacing-xs);grid-template-columns:repeat(2,1fr)}.TypingStats-module__Ddv-_a__statIconPrimary,.TypingStats-module__Ddv-_a__statIconSuccess,.TypingStats-module__Ddv-_a__statIconWarning,.TypingStats-module__Ddv-_a__statIconError{width:26px;height:26px}.TypingStats-module__Ddv-_a__statValue{font-size:var(--font-size-sm)!important}.TypingStats-module__Ddv-_a__paginationWrapper{margin-top:var(--spacing-lg)}.TypingStats-module__Ddv-_a__pagination .MuiPaginationItem-root{font-size:var(--font-size-xs)}}@media (prefers-reduced-motion:reduce){.TypingStats-module__Ddv-_a__historyItem{transition-duration:.01ms!important}.TypingStats-module__Ddv-_a__pagination .MuiPaginationItem-root{transition-duration:.01ms!important}}
