.typing-practice_wrap__N3RHK{display:grid;gap:18px;container-type:inline-size}.typing-practice_bar__Lhr_c{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;justify-content:space-between}.typing-practice_chipRow__qQXRg{display:flex;flex-wrap:wrap;gap:8px}.typing-practice_chip__Ta5vB{min-height:40px;padding:0 13px;border-radius:999px;font:inherit;font-size:13px;border:1px solid var(--color-border,rgba(127,127,127,.28));background:var(--color-surface-secondary,transparent);color:inherit;cursor:pointer}.typing-practice_chip__Ta5vB:focus-visible{outline:2px solid var(--color-accent,#199be7);outline-offset:2px}.typing-practice_chipOn__NtR5n{border-color:var(--color-accent,#199be7);background:color-mix(in oklch,var(--color-accent,#199be7) 14%,transparent);font-weight:600}.typing-practice_target__82CM6{margin:0;padding:18px;border-radius:14px;border:1px solid var(--color-border,rgba(127,127,127,.22));background:var(--color-surface-secondary,rgba(127,127,127,.05));font-size:clamp(17px,3.2cqi,22px);line-height:2.1;letter-spacing:.01em;overflow-wrap:anywhere;white-space:pre-wrap}.typing-practice_pending__HOh49{color:var(--muted,#6b7280)}.typing-practice_correct__A9RCn{color:inherit}.typing-practice_wrong__PVz78{color:var(--color-warning,#b4460e);font-weight:700;background:color-mix(in oklch,var(--color-warning,#b4460e) 14%,transparent);border-radius:3px}.typing-practice_cursor__q6cWc{box-shadow:inset 0 -3px 0 0 var(--color-accent,#199be7);border-radius:2px}.typing-practice_input__q_Qot{width:100%;box-sizing:border-box;min-height:96px;padding:14px;border-radius:14px;font:inherit;font-size:16px;line-height:1.8;resize:vertical;border:1px solid var(--color-border,rgba(127,127,127,.28));background:var(--color-surface,transparent);color:inherit}.typing-practice_input__q_Qot:focus-visible{outline:2px solid var(--color-accent,#199be7);outline-offset:1px}.typing-practice_stats__94fcr{margin:0;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}@container (min-width: 620px){.typing-practice_stats__94fcr{grid-template-columns:repeat(4,minmax(0,1fr))}}.typing-practice_stats__94fcr>div{display:grid;gap:3px;min-width:0;padding:12px 14px;border-radius:12px;background:var(--color-surface-secondary,rgba(127,127,127,.06))}.typing-practice_stats__94fcr dt{font-size:11px;color:var(--muted,#6b7280)}.typing-practice_stats__94fcr dd{margin:0;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.typing-practice_statUnit__a4dpy{font-size:.55em;font-weight:600;margin-left:2px;color:var(--muted,#6b7280)}.typing-practice_actions__MFRet{display:flex;flex-wrap:wrap;gap:8px}.typing-practice_done__YSfCk{display:grid;gap:6px;padding:14px 16px;border-radius:14px;background:color-mix(in oklch,var(--color-accent,#199be7) 12%,transparent)}.typing-practice_doneTitle__HC5_n{font-size:15px;font-weight:700}.typing-practice_doneBody___FuiT{font-size:13px;line-height:1.7}.typing-practice_records___c4Jo{gap:8px}.typing-practice_recordRow__2WyC5{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;border-radius:10px;font-size:13px;background:var(--color-surface-secondary,rgba(127,127,127,.06))}.typing-practice_recordValue__1bo9W{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.typing-practice_recordWhen__pMg0e{color:var(--muted,#6b7280)}.typing-practice_hint__R63Xs{line-height:1.65}.typing-practice_note__io5x2{margin-top:4px;font-size:13px;line-height:1.7;color:var(--muted,#6b7280)}.typing-practice_modeRow__rq9Mb{display:flex;flex-wrap:wrap;gap:6px;padding:4px;border-radius:14px;background:var(--color-surface-secondary,rgba(127,127,127,.06))}.typing-practice_modeChip__0emIT{flex:1 1 auto;min-height:40px;padding:0 14px;border-radius:10px;border:1px solid transparent;background:transparent;font:inherit;font-size:13px;color:inherit;cursor:pointer;white-space:nowrap}.typing-practice_modeChip__0emIT:hover{background:color-mix(in oklch,var(--color-accent,#199be7) 8%,transparent)}.typing-practice_modeChip__0emIT:focus-visible{outline:2px solid var(--color-accent,#199be7);outline-offset:2px}.typing-practice_modeChipOn__y1NXa{background:var(--color-surface,Canvas);border-color:var(--color-border,rgba(127,127,127,.28));font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.08)}.typing-practice_hint__R63Xs{margin:0;font-size:13px;line-height:1.7;color:var(--muted,#6b7280)}.typing-practice_cover__qbJAi{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.typing-practice_cover__qbJAi .typing-practice_rights__dCxry{flex:1 1 220px}.typing-practice_coverCard__GnU8T{display:grid;gap:2px;min-width:150px;padding:14px 16px;border-radius:12px;border:1px solid var(--color-border,rgba(127,127,127,.25));background:linear-gradient(160deg,color-mix(in oklch,var(--color-accent,#199be7) 18%,transparent),transparent 70%);font-size:12px;color:var(--muted,#6b7280)}.typing-practice_coverCard__GnU8T strong{font-size:16px;color:inherit;color:var(--foreground,inherit)}.typing-practice_coverKind__aGGsX{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.typing-practice_rights__dCxry{flex:none;margin:0;font-size:12px;line-height:1.6;color:var(--muted,#6b7280)}.typing-practice_keyboard__wvJ4G{display:grid;gap:5px;padding:12px;border-radius:14px;background:var(--color-surface-secondary,rgba(127,127,127,.06));user-select:none;overflow-x:auto}.typing-practice_keyRow__yVAFP{display:flex;justify-content:center;gap:5px}.typing-practice_keyRow__yVAFP:nth-child(2){padding-left:14px}.typing-practice_keyRow__yVAFP:nth-child(3){padding-left:28px}.typing-practice_keyRow__yVAFP:nth-child(4){padding-left:42px}.typing-practice_key__RO7Ir{display:inline-flex;align-items:center;justify-content:center;width:clamp(24px,6.2cqi,40px);height:clamp(26px,6.2cqi,40px);border-radius:7px;border:1px solid var(--color-border,rgba(127,127,127,.25));background:var(--color-surface,Canvas);font-size:clamp(10px,2.4cqi,13px);font-variant-numeric:tabular-nums;transition:background .08s ease,transform .08s ease}.typing-practice_keyWide__B1_8X{width:clamp(52px,13cqi,84px);font-size:11px}.typing-practice_keySpace__luLic{width:clamp(140px,38cqi,280px);font-size:11px}.typing-practice_keyOn__b4MDC{background:var(--color-accent,#199be7);color:var(--accent-foreground,#fff);border-color:var(--color-accent,#199be7);transform:translateY(1px);font-weight:700}.typing-practice_doneNote__lQXAK{font-size:13px;color:var(--muted,#6b7280)}.typing-practice_chart__5N6kB{list-style:none;margin:0;padding:8px 4px 0;display:flex;align-items:flex-end;gap:8px;height:96px}.typing-practice_chart__5N6kB li{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%;min-width:0}.typing-practice_bar__Lhr_c{width:100%;max-width:36px;height:var(--h);border-radius:6px 6px 2px 2px;background:color-mix(in oklch,var(--color-accent,#199be7) 55%,transparent)}.typing-practice_chart__5N6kB li:last-child .typing-practice_bar__Lhr_c{background:var(--color-accent,#199be7)}.typing-practice_barLabel__pL9fw{font-size:11px;color:var(--muted,#6b7280);font-variant-numeric:tabular-nums}.typing-practice_records___c4Jo{list-style:none;margin:0;padding:0;display:grid;gap:6px}.typing-practice_records___c4Jo li{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:baseline;padding:8px 10px;border-radius:10px;background:var(--color-surface-secondary,rgba(127,127,127,.05));font-size:13px}.typing-practice_records___c4Jo li span:first-child{color:var(--muted,#6b7280);font-variant-numeric:tabular-nums}.typing-practice_records___c4Jo li strong{font-variant-numeric:tabular-nums}.typing-practice_empty__sjntS{display:grid;justify-items:center;gap:6px;padding:28px 12px;text-align:center;color:var(--muted,#6b7280);font-size:13px}.typing-practice_empty__sjntS strong{color:inherit;font-size:15px}@container (max-width: 560px){.typing-practice_records___c4Jo li{grid-template-columns:1fr auto}.typing-practice_records___c4Jo li span:nth-child(2){grid-column:1/-1}.typing-practice_keyRow__yVAFP:nth-child(2),.typing-practice_keyRow__yVAFP:nth-child(3),.typing-practice_keyRow__yVAFP:nth-child(4){padding-left:0}}.typing-practice_lineHead__ERGbm{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;color:var(--muted,#6b7280)}.typing-practice_lineSource__SE0_4{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.typing-practice_lineProgress__rnKUY{flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:600}.typing-practice_preview__eKCSu{margin:-6px 0 0;padding:0 18px;font-size:clamp(14px,2.6cqi,17px);line-height:1.9;color:var(--muted,#6b7280);opacity:.75;overflow-wrap:anywhere}.typing-practice_typeArea__x_Zb2{position:relative;border-radius:14px;border:1px solid var(--color-border,rgba(127,127,127,.22));background:var(--color-surface-secondary,rgba(127,127,127,.05));transition:border-color .12s ease,box-shadow .12s ease}.typing-practice_typeArea__x_Zb2:focus-within{border-color:var(--color-accent,#199be7);box-shadow:0 0 0 3px color-mix(in oklch,var(--color-accent,#199be7) 18%,transparent)}.typing-practice_ghostInput__P1mgX,.typing-practice_layer__XvTRh{margin:0;padding:18px;font-size:clamp(17px,3.2cqi,22px);line-height:2.1;letter-spacing:.01em;font-family:inherit;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-all}.typing-practice_layer__XvTRh{position:relative;pointer-events:none;min-height:calc(2.1em + 36px)}.typing-practice_ghost__zltpT{color:var(--muted,#6b7280);opacity:.55}.typing-practice_typedOk__KzZPK{color:inherit}.typing-practice_typedBad__8AIkK{color:var(--danger,#dc2626);font-weight:700;background:color-mix(in oklch,var(--danger,#dc2626) 14%,transparent);border-radius:3px}.typing-practice_ghostInput__P1mgX{position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box;border:0;background:transparent;color:transparent;caret-color:var(--color-accent,#199be7);resize:none;outline:none}.typing-practice_ghostInput__P1mgX::placeholder{color:transparent}.typing-practice_typeHint__WrpBT{position:absolute;right:14px;bottom:8px;font-size:11px;color:var(--muted,#6b7280);pointer-events:none}.typing-practice_shelf__h1TY_{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:14px;border-radius:14px;background:var(--color-surface-secondary,rgba(127,127,127,.06))}.typing-practice_book__S2Zjv{display:grid;gap:4px;align-content:end;min-height:140px;padding:14px 14px 12px;border-radius:6px 12px 12px 6px;border:1px solid rgba(0,0,0,.12);border-left:6px solid rgba(0,0,0,.28);color:#fff;text-align:left;font:inherit;cursor:pointer;box-shadow:0 6px 14px rgba(0,0,0,.14);transition:transform .12s ease,box-shadow .12s ease}.typing-practice_book__S2Zjv:hover{transform:translateY(-3px);box-shadow:0 12px 22px rgba(0,0,0,.2)}.typing-practice_book__S2Zjv:focus-visible{outline:3px solid var(--color-accent,#199be7);outline-offset:3px}.typing-practice_bookOn__XmLu2{outline:3px solid var(--color-accent,#199be7);outline-offset:2px}.typing-practice_book__S2Zjv strong{font-size:17px;line-height:1.3}.typing-practice_book__S2Zjv span{font-size:12px;opacity:.85}.typing-practice_book__S2Zjv small{font-size:11px;opacity:.7}.typing-practice_tone-ink__WkIjc{background:linear-gradient(160deg,#2b2f3a,#14161c)}.typing-practice_tone-plum__4GNYB{background:linear-gradient(160deg,#6b2d5c,#3a1733)}.typing-practice_tone-moss__EtwGs{background:linear-gradient(160deg,#3f6b3a,#21391f)}.typing-practice_tone-sand__tDOCd{background:linear-gradient(160deg,#b8864a,#6e4c22)}.typing-practice_tone-sea__vMcRG{background:linear-gradient(160deg,#2f5f8a,#173049)}.typing-practice_tone-rust___X0RY{background:linear-gradient(160deg,#a5452e,#5a2216)}.typing-practice_board__6U9Lu{list-style:none;margin:0;padding:0;display:grid;gap:4px}.typing-practice_board__6U9Lu li{display:grid;grid-template-columns:34px 1fr auto auto;gap:10px;align-items:baseline;padding:8px 10px;border-radius:10px;font-size:13px}.typing-practice_board__6U9Lu li:nth-child(-n+3){background:color-mix(in oklch,var(--color-accent,#199be7) 10%,transparent);font-weight:600}.typing-practice_board__6U9Lu li:nth-child(n+4){background:var(--color-surface-secondary,rgba(127,127,127,.05))}.typing-practice_rank__C7dku{font-variant-numeric:tabular-nums;color:var(--muted,#6b7280)}.typing-practice_boardName__H8M4w{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.typing-practice_boardSpeed__jQ44Q{font-variant-numeric:tabular-nums}.typing-practice_boardMeta__0KUZZ{font-size:12px;color:var(--muted,#6b7280);font-variant-numeric:tabular-nums}.typing-practice_submitRow__zyU5K{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.typing-practice_nameInput__CUbnT{min-height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--color-border,rgba(127,127,127,.28));background:var(--color-surface,transparent);color:inherit;font:inherit;font-size:14px;width:160px}.typing-practice_panelTabs__Cagi9{display:flex;gap:6px;flex-wrap:wrap}.typing-practice_problem__SUEU_{margin:0;font-size:13px;color:var(--danger,#dc2626)}.typing-practice_passage__Dat8N{display:grid;gap:4px;padding:6px 0}.typing-practice_lineDone__Gv2e5,.typing-practice_lineGhost__aWROe{margin:0;padding:0 18px;font-size:clamp(15px,2.8cqi,19px);line-height:1.9;overflow-wrap:anywhere}.typing-practice_lineDone__Gv2e5{color:inherit;opacity:.9}.typing-practice_lineGhost__aWROe{color:var(--muted,#6b7280);opacity:.6}.typing-practice_passage__Dat8N .typing-practice_typeArea__x_Zb2{margin:4px 0}.typing-practice_hero__AIsDQ{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px}.typing-practice_heroText__M5oQk{display:grid;gap:6px;min-width:0}.typing-practice_heroEyebrow___zPkC{font-size:12px;color:var(--muted,#6b7280)}.typing-practice_heroTitle__TZ83D{margin:0;font-size:clamp(22px,4cqi,30px);font-weight:700;line-height:1.25}.typing-practice_heroSub__TqjAk{margin:0;font-size:14px;color:var(--muted,#6b7280)}.typing-practice_hubGrid__3BKMR{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}@container (min-width: 760px){.typing-practice_hubGrid__3BKMR{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}.typing-practice_hubSection__7D6EK{display:grid;gap:10px}.typing-practice_hubSection__7D6EK h3{margin:0;font-size:17px;font-weight:700}.typing-practice_hubSection__7D6EK>p{margin:0;font-size:13px;color:var(--muted,#6b7280)}.typing-practice_quick__fvYbF{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.typing-practice_quickButton__mf4uT{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 16px;border-radius:14px;border:1px solid var(--color-border,rgba(127,127,127,.2));background:color-mix(in oklch,var(--color-accent,#199be7) 10%,transparent);color:inherit;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.typing-practice_quickButton__mf4uT:hover{background:color-mix(in oklch,var(--color-accent,#199be7) 18%,transparent)}.typing-practice_quickButton__mf4uT:focus-visible{outline:2px solid var(--color-accent,#199be7);outline-offset:2px}.typing-practice_quickPrimary__bjbE6{background:var(--color-accent,#199be7);color:var(--accent-foreground,#fff);border-color:transparent}.typing-practice_quickPrimary__bjbE6:hover{background:color-mix(in oklch,var(--color-accent,#199be7) 88%,black)}.typing-practice_today__xWRq2{display:grid;gap:8px;padding:18px;border-radius:16px;border:1px solid var(--color-border,rgba(127,127,127,.2));background:var(--color-surface,Canvas)}.typing-practice_todayLabel__gBHZ7{font-size:13px;font-weight:700}.typing-practice_todayText__fml93{margin:0;font-size:16px;line-height:1.7}.typing-practice_todayLink__Mupu9{justify-self:start;background:none;border:0;padding:0;font:inherit;font-size:14px;font-weight:600;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.typing-practice_cards__rf22d{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.typing-practice_cardButton__cqXZ_{display:grid;gap:8px;padding:14px 16px;border-radius:14px;border:1px solid var(--color-border,rgba(127,127,127,.2));background:var(--color-surface,Canvas);text-align:left;color:inherit;font:inherit;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease}.typing-practice_cardButton__cqXZ_:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.08)}.typing-practice_cardButton__cqXZ_:focus-visible{outline:2px solid var(--color-accent,#199be7);outline-offset:2px}.typing-practice_cardHead__uPEmq{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.typing-practice_cardHead__uPEmq strong{font-size:15px}.typing-practice_cardMeta__L5hqu,.typing-practice_cardPercent__Ey3N_{font-size:12px;color:var(--muted,#6b7280);font-variant-numeric:tabular-nums}.typing-practice_barTrack__hcdcn{height:4px;border-radius:999px;background:color-mix(in oklch,var(--muted,#6b7280) 20%,transparent);overflow:hidden}.typing-practice_barFill__eXViU{height:100%;border-radius:999px;background:var(--color-accent,#199be7)}.typing-practice_cardFoot__oHf83{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted,#6b7280)}.typing-practice_backRow__va8OM{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}