@charset "UTF-8";:root.dark-mode{background-color:#121212;color:#fff;color-scheme:dark;--color-bg:oklch(18.15% 0 0deg);--color-reset-bg:oklch(26.97% 0 0deg);--color-text:oklch(100% 0 0deg);--color-text-dim:oklch(67.18% .003 286.32deg);--color-correct:oklch(78.09% .1765 150.94deg);--color-error:oklch(60.92% .173 18.11deg);--color-timer:oklch(89.2% .1292 96.92deg);--color-cursor:oklch(71.05% .1563 250.98deg);--color-btn:oklch(61.12% .2120505878 258.012801433deg);--color-btn-hover:oklch(71.05% .1563 250.98deg);--color-divider:oklch(55.37% .0108 286.04deg)}:root.light-mode{background-color:#f2f2f2;color:#070707;color-scheme:light;--color-bg:oklch(96% 0 0deg);--color-reset-bg:oklch(88% 0 0deg);--color-text:oklch(13% 0 0deg);--color-text-dim:oklch(52% .004 286deg);--color-correct:oklch(42% .14 148deg);--color-error:oklch(48% .17 22deg);--color-timer:oklch(55% .13 68deg);--color-cursor:oklch(55% .21 258deg);--color-btn:oklch(61.12% .212 258deg);--color-btn-hover:oklch(50% .22 258deg);--color-divider:oklch(72% .005 286deg)}:root.retro-mode{background-color:#000200;color:#6fe276;color-scheme:dark;--color-bg:oklch(8% .02 145deg);--color-reset-bg:oklch(14% .03 145deg);--color-text:oklch(82% .18 145deg);--color-text-dim:oklch(48% .1 145deg);--color-correct:oklch(72% .26 145deg);--color-error:oklch(62% .19 25deg);--color-timer:oklch(82% .16 85deg);--color-cursor:oklch(78% .23 145deg);--color-btn:oklch(52% .2 145deg);--color-btn-hover:oklch(63% .23 145deg);--color-divider:oklch(32% .08 145deg)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{height:100%;scrollbar-color:var(--color-divider) transparent;scrollbar-width:thin}body{font-family:Sora,system-ui,sans-serif;min-height:100%;transition:background-color .3s ease,color .3s ease}main{align-items:stretch;display:flex;flex-direction:column;min-height:calc(100dvh - 80px)}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.confetti-canvas[data-v-ca2afefd]{inset:0;pointer-events:none;position:fixed;z-index:9999}.theme-wrapper{align-self:center;display:inline-flex;height:45px;margin-left:6ch;margin-right:1rem;position:relative;width:45px}.theme-wrapper .disabled{cursor:not-allowed;filter:grayscale(100%);opacity:.5;pointer-events:none}@media(prefers-reduced-motion:reduce){.theme-wrapper *{transition-delay:0s!important}}.theme-menu{background-color:var(--color-reset-bg);border:2px solid var(--color-divider);border-radius:8px;box-shadow:0 0 5px light-dark(rgba(0,0,0,.6),hsla(0,0%,100%,.3));position:absolute;transition:background-color .2s ease;z-index:999}@media(max-width:768px){.theme-menu{right:0;top:-.75rem}}.theme-selector{align-items:center;background:unset;border:unset;border-radius:8px;cursor:pointer;display:flex;font-weight:700;padding:.5rem;position:relative}.theme-selector:focus-visible{outline:2px solid var(--color-cursor)}.theme-selector>.iconify{color:var(--color-cursor);height:1.5rem;width:1.5rem}.theme-selection{align-items:center;display:flex;flex-direction:column;height:0;overflow-y:clip;transition:height .2s ease-in .2s,visibility 0s ease-in .2s;visibility:hidden}.theme-selection>button{background:unset;border:unset;cursor:pointer;opacity:0;padding:.5rem;position:relative;transform:translateY(-.5rem);transition-duration:.15s,175ms;transition-property:opacity,transform;transition-timing-function:ease-out;width:-moz-fit-content;width:fit-content}.theme-selection>button .iconify{height:1.5rem;transition:color .2s ease;width:1.5rem}.theme-selection>button:hover>.label{opacity:1;transition:opacity .2s ease-in}.theme-selection>button.active .iconify{color:var(--color-cursor)}.theme-selection>button .label{font-weight:700;opacity:0;position:absolute;right:3rem;top:.75rem;transition:opacity .2s ease-out}.theme-selection>hr{border-radius:5px;border-top-color:var(--color-divider);border-top-width:1px;margin-block:.015rem;opacity:0;transform:scaleX(.5);transition-delay:50ms;transition-duration:175ms,.1s,.1s;transition-property:transform,translate,opacity;transition-timing-function:ease-out;translate:0 -.5rem;width:60%}.theme-selection.open{height:calc(43px*var(--theme-count, 4) + 2px*(var(--theme-count, 4) - 1));transition:height .2s ease-in;visibility:visible}.theme-selection.open>button{opacity:1;transform:translateY(0);transition-duration:.3s,.25s;transition-property:opacity,transform;transition-timing-function:ease-out}.theme-selection.open>hr{opacity:1;transform:scaleX(1);transition-delay:.1s;transition-duration:.3s,.2s,.2s;transition-property:transform,translate,opacity;transition-timing-function:cubic-bezier(.58,-.04,.89,.75),ease-out,ease-out;translate:0 0}@media(max-width:768px){.theme-wrapper{align-self:unset;margin-top:.8rem}.theme-selection>button .label,.theme-wrapper>span{display:none}}.dropdown-select[data-v-be9583d5]{display:inline-flex;position:relative}.dropdown-select.disabled[data-v-be9583d5]{opacity:.4;pointer-events:none}.dropdown-trigger[data-v-be9583d5]{align-items:center;background:transparent;border:1px solid var(--color-divider);border-radius:100px;color:var(--color-text);cursor:pointer;display:inline-flex;font-family:inherit;font-size:clamp(.75rem,2.5vw,.875rem);font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:border-color .2s ease;white-space:nowrap}.dropdown-trigger[data-v-be9583d5]:hover{border-color:var(--color-text-dim)}.dropdown-trigger[data-v-be9583d5]:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px}@media(max-width:400px){.dropdown-trigger[data-v-be9583d5]{gap:.375rem;padding:.375rem .75rem}}.dropdown-arrow[data-v-be9583d5]{height:12px;transition:transform .2s ease;width:12px}.open .dropdown-arrow[data-v-be9583d5]{transform:rotate(180deg)}.dropdown-menu[data-v-be9583d5]{background-color:var(--color-reset-bg);border:1px solid var(--color-divider);border-radius:12px;box-shadow:0 8px 24px #0000004d;left:0;min-width:100%;padding:.375rem 0;position:absolute;top:calc(100% + 6px);z-index:20}.dropdown-option[data-v-be9583d5]{align-items:center;background:transparent;border:none;color:var(--color-text);cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:.625rem;padding:.625rem 1rem;transition:background-color .15s ease;width:100%}.dropdown-option[data-v-be9583d5]:hover{background-color:color-mix(in oklch,var(--color-divider) 30%,transparent)}.radio-dot[data-v-be9583d5]{border:2px solid var(--color-divider);border-radius:50%;flex-shrink:0;height:16px;position:relative;transition:border-color .15s ease;width:16px}.selected .radio-dot[data-v-be9583d5]{border-color:#197dff}.selected .radio-dot[data-v-be9583d5]:after{background-color:#197dff;border-radius:50%;content:"";inset:2px;position:absolute}.dropdown-enter-active[data-v-be9583d5]{transition:opacity .15s ease,transform .15s ease}.dropdown-leave-active[data-v-be9583d5]{transition:opacity .1s ease,transform .1s ease}.dropdown-enter-from[data-v-be9583d5],.dropdown-leave-to[data-v-be9583d5]{opacity:0;transform:translateY(-4px)}.test-area[data-v-ff807093]{display:flex;flex-direction:column;padding:2rem 5rem 4rem;width:100%}@media(max-width:860px){.test-area[data-v-ff807093]{padding:1.5rem 1.5rem 3rem}}@media(max-width:600px){.test-area[data-v-ff807093]{padding:1rem 1rem 2rem}}.mobile-controls[data-v-ff807093]{display:none}@media(max-width:600px){.mobile-controls[data-v-ff807093]{display:flex;gap:.625rem;justify-content:center;padding:.5rem 0 .75rem}}.sc-bar[data-v-ff807093]{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;padding:1.5rem 0}@media(max-width:600px){.sc-bar[data-v-ff807093]{padding:.75rem 0}}.sc-stats[data-v-ff807093]{align-items:center;display:flex;flex-shrink:0}@media(max-width:600px){.sc-stats[data-v-ff807093]{display:grid;gap:0;grid-template-columns:1fr 1fr 1fr;width:100%}.sc-stats .sc-sep[data-v-ff807093]{display:none}}.stat-item[data-v-ff807093]{align-items:baseline;display:flex;gap:.5rem}.stat-item.time-low .stat-value[data-v-ff807093]{color:var(--color-timer)}@media(max-width:600px){.stat-item[data-v-ff807093]{align-items:flex-start;flex-direction:column;gap:.25rem}}.stat-label[data-v-ff807093]{color:var(--color-text-dim);font-size:1rem;transition:color .3s ease}@media(max-width:600px){.stat-label[data-v-ff807093]{font-size:.8125rem}}.stat-value[data-v-ff807093]{color:var(--color-text);font-size:1.75rem;font-weight:700;line-height:1;transition:color .3s ease}.stat-value.val-error[data-v-ff807093]{color:var(--color-error)}@media(max-width:600px){.stat-value[data-v-ff807093]{font-size:1.5rem}}.timer-value[data-v-ff807093]{color:var(--color-timer)}.sc-sep[data-v-ff807093]{background-color:var(--color-divider);flex-shrink:0;height:1.5rem;margin:0 1.5rem;width:1px}@media(max-width:600px){.desktop-controls[data-v-ff807093]{display:none!important}}.sc-controls[data-v-ff807093]{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto}.ctrl-label[data-v-ff807093]{color:var(--color-text-dim);font-size:1rem;transition:color .3s ease;white-space:nowrap}.ctrl-group[data-v-ff807093]{align-items:center;display:flex}.ctrl-vsep[data-v-ff807093]{background-color:var(--color-divider);flex-shrink:0;height:1.25rem;margin:0 .5rem;width:1px}.ctrl-btn[data-v-ff807093]{background:transparent;border:1px solid var(--color-divider);border-radius:0;color:var(--color-text-dim);cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:.375rem .875rem;transition:color .2s,border-color .2s;white-space:nowrap}.ctrl-btn[data-v-ff807093]:first-child{border-radius:6px 0 0 6px}.ctrl-btn[data-v-ff807093]:last-child{border-radius:0 6px 6px 0}.ctrl-btn[data-v-ff807093]:first-child:last-child{border-radius:6px}.ctrl-btn[data-v-ff807093]:not(:first-child){margin-left:-1px}.ctrl-btn[data-v-ff807093]:hover:not(:disabled){border-color:#4da6ff;color:var(--color-text);position:relative;z-index:1}.ctrl-btn.active[data-v-ff807093]{background:transparent;border-color:#197dff;color:#197dff;position:relative;z-index:1}.ctrl-btn[data-v-ff807093]:disabled{cursor:not-allowed;opacity:.4}.ctrl-btn[data-v-ff807093]:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px;position:relative;z-index:2}.ctrl-btn--sm[data-v-ff807093]{font-size:.8125rem;padding:.25rem .625rem}.bar-divider[data-v-ff807093]{border:none;border-top:1px solid var(--color-divider);margin:0}.bonus-controls[data-v-ff807093]{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;min-height:2.5rem;padding:.75rem 0 1rem}@media(max-width:600px){.bonus-controls[data-v-ff807093]{display:none}}.passage-wrapper[data-v-ff807093]{cursor:text;padding:1.5rem 2rem;position:relative}@media(max-width:600px){.passage-wrapper[data-v-ff807093]{padding:1rem .35rem}}.hidden-input[data-v-ff807093]{border:none;height:1px;opacity:0;overflow:hidden;padding:0;pointer-events:none;position:absolute;resize:none;width:1px}.start-overlay[data-v-ff807093]{align-items:center;background:linear-gradient(to bottom,transparent 0,color-mix(in oklch,var(--color-bg) 55%,transparent) 20%,color-mix(in oklch,var(--color-bg) 90%,transparent) 50%);display:flex;flex-direction:column;gap:.875rem;inset:0;justify-content:center;position:absolute;z-index:2}.start-btn[data-v-ff807093]{align-items:center;background-color:#197dff;border:none;border-radius:100px;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:1rem;font-weight:700;gap:.5rem;padding:.875rem 2.5rem;transition:background-color .2s ease,transform .1s ease}.start-btn[data-v-ff807093]:hover{background-color:#4da6ff}.start-btn[data-v-ff807093]:active{transform:scale(.97)}.start-btn[data-v-ff807093]:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px}.start-btn .iconify[data-v-ff807093]{height:1rem;width:1rem}.start-hint[data-v-ff807093]{color:var(--color-text);font-size:.9375rem;font-weight:600}.passage[data-v-ff807093]{font-size:2rem;letter-spacing:.01em;line-height:1.65}.passage.code-mode[data-v-ff807093]{font-family:JetBrains Mono,Cascadia Code,Fira Code,Consolas,monospace;font-size:1.1rem;letter-spacing:0;line-height:1.85}@media(max-width:600px){.passage.code-mode[data-v-ff807093]{font-size:.85rem}}.passage.blurred[data-v-ff807093]{filter:blur(4px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:600px){.passage[data-v-ff807093]{font-size:1.375rem;line-height:1.6}}.language-badge[data-v-ff807093]{background:color-mix(in srgb,var(--color-accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 30%,transparent);border-radius:4px;color:var(--color-accent);display:inline-block;font-family:JetBrains Mono,Cascadia Code,Fira Code,monospace;font-size:.7rem;font-weight:600;letter-spacing:.08em;margin-bottom:.75rem;padding:.15em .5em;pointer-events:none;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.char[data-v-ff807093]{color:var(--color-text-dim);transition:color .05s;white-space:pre-wrap}.char.correct[data-v-ff807093]{color:var(--color-correct)}.char.incorrect[data-v-ff807093]{color:var(--color-error);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.char.cursor[data-v-ff807093]{background-color:var(--color-text-dim);border-radius:2px;color:var(--color-bg)}.char.cursor.cursor-active[data-v-ff807093]{animation:cursor-block-blink-ff807093 1s step-end infinite}.char-newline[data-v-ff807093]:after{content:"↵";font-family:sans-serif;font-size:.6em;opacity:.25;pointer-events:none;vertical-align:super}@keyframes cursor-block-blink-ff807093{0%,to{background-color:var(--color-cursor);color:var(--color-bg)}50%{background-color:transparent;color:inherit}}.passage-divider[data-v-ff807093]{border:none;border-top:1px solid var(--color-divider);margin:0}.test-footer[data-v-ff807093]{display:flex;justify-content:center;padding:1.5rem 0}.restart-btn[data-v-ff807093]{align-items:center;background-color:var(--color-text);border:2px solid var(--color-text);border-radius:100px;color:var(--color-bg);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9375rem;font-weight:700;gap:.625rem;padding:.75rem 2rem;transition:background-color .2s ease,color .2s ease,transform .1s ease}.restart-btn[data-v-ff807093]:hover{background-color:transparent;color:var(--color-text)}.restart-btn[data-v-ff807093]:active{transform:scale(.97)}.restart-btn[data-v-ff807093]:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px}.restart-btn .restart-icon.iconify[data-v-ff807093]{height:1.125rem;width:1.125rem}.fade-enter-active[data-v-ff807093],.fade-leave-active[data-v-ff807093]{transition:opacity .2s ease}.fade-enter-from[data-v-ff807093],.fade-leave-to[data-v-ff807093]{opacity:0}.slide-fade-enter-active[data-v-ff807093]{transition:opacity .2s ease,transform .2s ease}.slide-fade-leave-active[data-v-ff807093]{transition:opacity .15s ease,transform .15s ease}.slide-fade-enter-from[data-v-ff807093],.slide-fade-leave-to[data-v-ff807093]{opacity:0;transform:translate(-8px)}.history-chart[data-v-3c4783a2]{overflow-x:auto;width:100%}.chart-svg[data-v-3c4783a2]{height:auto;min-width:300px;width:100%}.grid-line[data-v-3c4783a2]{stroke:var(--color-divider);stroke-width:1}.chart-line[data-v-3c4783a2]{stroke:var(--color-btn);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5}.chart-dot[data-v-3c4783a2]{cursor:pointer;fill:var(--color-btn);transition:r .1s ease}.chart-dot.hovered[data-v-3c4783a2]{fill:var(--color-btn-hover);r:7}.axis-label[data-v-3c4783a2]{fill:var(--color-text-dim);font-family:Sora,sans-serif;font-size:10px}.tooltip-bg[data-v-3c4783a2]{fill:var(--color-reset-bg);stroke:var(--color-divider);stroke-width:1}.tooltip-text[data-v-3c4783a2]{fill:var(--color-text);font-family:Sora,sans-serif;font-size:10px;font-weight:600}.heatmap[data-v-a1a8c06f]{display:flex;flex-direction:column;font-size:.75rem;gap:4px;padding-bottom:.25rem;width:100%}.heatmap-row[data-v-a1a8c06f]{gap:4px}.heatmap-key[data-v-a1a8c06f],.heatmap-row[data-v-a1a8c06f]{display:flex;justify-content:center}.heatmap-key[data-v-a1a8c06f]{align-items:center;aspect-ratio:1;background-color:var(--color-bg);border:1px solid var(--color-divider);border-radius:5px;color:var(--color-text-dim);cursor:default;flex:1 1 0;max-width:2.75rem;position:relative;transition:background-color .2s,border-color .2s}.heatmap-key.key-space[data-v-a1a8c06f]{aspect-ratio:auto;flex:0 0 35%;height:2.25rem;max-width:14rem}@media(max-width:600px){.heatmap-key.key-space[data-v-a1a8c06f]{height:2rem}}.heatmap-key.key-active[data-v-a1a8c06f]{background-color:color-mix(in oklch,var(--color-btn) calc(var(--intensity, 0)*60%),var(--color-reset-bg));border-color:color-mix(in oklch,var(--color-error) calc(var(--error-rate, 0)*100%),var(--color-divider));color:color-mix(in oklch,var(--color-text) calc(var(--intensity, 0)*100%),var(--color-text-dim))}.heatmap-key.key-hovered[data-v-a1a8c06f]{border-color:var(--color-cursor);z-index:10}.key-label[data-v-a1a8c06f]{font-size:clamp(.5rem,1.8vw,.7rem);font-weight:600;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.key-tooltip[data-v-a1a8c06f]{background-color:var(--color-reset-bg);border:1px solid var(--color-divider);border-radius:4px;bottom:calc(100% + 6px);color:var(--color-text);font-size:.6rem;left:50%;padding:.2rem .4rem;pointer-events:none;position:absolute;transform:translate(-50%);white-space:nowrap;z-index:20}.report-area[data-v-91659ff5]{align-items:center;animation:slide-up-91659ff5 .35s ease;display:flex;flex-direction:column;gap:1.75rem;padding:3rem 5rem 5rem;text-align:center;width:100%}@media(max-width:860px){.report-area[data-v-91659ff5]{padding:2rem 1.5rem 4rem}}@media(max-width:600px){.report-area[data-v-91659ff5]{gap:1.25rem;padding:1.5rem 1.25rem 3rem}}@keyframes slide-up-91659ff5{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.decor-star[data-v-91659ff5]{pointer-events:none;position:fixed;z-index:0}.star-left[data-v-91659ff5]{left:6%;top:38%}.star-right[data-v-91659ff5]{bottom:28%;right:6%}@media(max-width:600px){.decor-star[data-v-91659ff5]{height:20px;position:absolute;width:20px}.star-left[data-v-91659ff5]{left:4%;top:8%}.star-right[data-v-91659ff5]{bottom:2%;right:4%}}.result-icon-wrapper[data-v-91659ff5]{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:88px;justify-content:center;width:88px}.result-icon-wrapper.icon-complete[data-v-91659ff5]{background-color:#26a651;box-shadow:0 0 0 14px #174f2a,0 0 0 28px #0e2a17}.result-icon-wrapper.icon-pb[data-v-91659ff5]{background-color:#edc61d;box-shadow:0 0 0 14px #6c5c13,0 0 0 28px #372f0c}.result-icon[data-v-91659ff5]{height:46px;width:46px}.result-headline[data-v-91659ff5]{color:var(--color-text);font-size:2.25rem;font-weight:700;margin:0;transition:color .3s ease}@media(max-width:600px){.result-headline[data-v-91659ff5]{font-size:1.5rem}}.result-subtext[data-v-91659ff5]{color:var(--color-text-dim);font-size:1rem;line-height:1.5;margin:-.75rem 0 0;max-width:480px;transition:color .3s ease}@media(max-width:600px){.result-subtext[data-v-91659ff5]{font-size:.875rem;max-width:300px}}.result-stats[data-v-91659ff5]{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}@media(max-width:600px){.result-stats[data-v-91659ff5]{flex-direction:column;gap:.75rem;width:100%}}.stat-card[data-v-91659ff5]{align-items:flex-start;border:1px solid var(--color-divider);border-radius:8px;display:flex;flex-direction:column;gap:.375rem;min-width:150px;padding:1.25rem 1.75rem;transition:border-color .3s ease}@media(max-width:600px){.stat-card[data-v-91659ff5]{min-width:unset;padding:1rem 1.25rem;width:100%}}.stat-card-label[data-v-91659ff5]{color:var(--color-text-dim);font-size:.9375rem;transition:color .3s ease}.stat-card-value[data-v-91659ff5]{color:var(--color-text);font-size:2rem;font-weight:700;line-height:1;transition:color .3s ease}.accuracy-val[data-v-91659ff5]{color:var(--color-error)}.chars-value[data-v-91659ff5]{align-items:baseline;display:flex;font-size:2rem;font-weight:700;gap:.1em;line-height:1}.chars-correct[data-v-91659ff5]{color:var(--color-correct)}.chars-incorrect[data-v-91659ff5]{color:var(--color-error)}.result-actions[data-v-91659ff5]{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.cta-btn[data-v-91659ff5]{align-items:center;background-color:var(--color-text);border:2px solid var(--color-text);border-radius:100px;color:var(--color-bg);cursor:pointer;display:inline-flex;font-family:inherit;font-size:1rem;font-weight:700;gap:.625rem;padding:.875rem 2.25rem;transition:background-color .2s ease,color .2s ease,transform .1s ease}.cta-btn[data-v-91659ff5]:hover{background-color:transparent;color:var(--color-text)}.cta-btn[data-v-91659ff5]:active{transform:scale(.97)}.cta-btn[data-v-91659ff5]:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px}.cta-btn .iconify[data-v-91659ff5]{height:1.125rem;width:1.125rem}.share-btn[data-v-91659ff5]{align-items:center;background:transparent;border:1px solid var(--color-divider);border-radius:100px;color:var(--color-text-dim);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:color .2s ease,border-color .2s ease}.share-btn[data-v-91659ff5]:hover{border-color:var(--color-text-dim);color:var(--color-text)}.share-btn[data-v-91659ff5]:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px}.share-btn .iconify[data-v-91659ff5]{height:1rem;width:1rem}.config-pb[data-v-91659ff5]{align-items:center;color:var(--color-text-dim);display:flex;font-size:.875rem;gap:.5rem;transition:color .3s ease}.config-pb-value[data-v-91659ff5]{color:var(--color-timer);font-weight:700}.history-browser[data-v-91659ff5]{max-width:760px;width:100%}.history-toggle[data-v-91659ff5]{align-items:center;background:transparent;border:1px solid var(--color-divider);border-radius:100px;color:var(--color-text-dim);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8125rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:color .2s ease,border-color .2s ease}.history-toggle[data-v-91659ff5]:hover{border-color:var(--color-text-dim);color:var(--color-text)}.history-toggle[data-v-91659ff5]:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px}.history-toggle .iconify[data-v-91659ff5]{height:.875rem;width:.875rem}.history-panel[data-v-91659ff5]{margin-top:1rem;text-align:left}.history-filters[data-v-91659ff5]{display:flex;gap:.375rem;margin-bottom:.75rem}.filter-btn[data-v-91659ff5]{background:transparent;border:1px solid var(--color-divider);border-radius:6px;color:var(--color-text-dim);cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:600;padding:.25rem .75rem;transition:color .15s ease,border-color .15s ease}.filter-btn.active[data-v-91659ff5]{border-color:#197dff;color:#197dff}.filter-btn[data-v-91659ff5]:hover:not(.active){color:var(--color-text)}.history-list[data-v-91659ff5]{max-height:280px;overflow-y:auto;scrollbar-color:var(--color-divider) transparent;scrollbar-width:thin}.history-row[data-v-91659ff5]{align-items:center;border-bottom:1px solid color-mix(in oklch,var(--color-divider) 40%,transparent);display:grid;font-size:.8125rem;gap:.75rem;grid-template-columns:80px 60px 1fr auto;padding:.5rem 0}@media(max-width:600px){.history-row[data-v-91659ff5]{grid-template-columns:70px 50px 1fr}.history-row .h-date[data-v-91659ff5]{display:none}}.h-wpm[data-v-91659ff5]{color:var(--color-text);font-weight:700}.h-wpm small[data-v-91659ff5]{color:var(--color-text-dim);font-size:.6875rem;font-weight:400}.h-acc[data-v-91659ff5]{color:var(--color-correct);font-weight:600}.h-config[data-v-91659ff5]{font-size:.75rem}.h-config[data-v-91659ff5],.h-date[data-v-91659ff5]{color:var(--color-text-dim)}.h-date[data-v-91659ff5]{font-size:.6875rem;text-align:right}.history-empty[data-v-91659ff5]{color:var(--color-text-dim);font-size:.8125rem;padding:1rem 0}.slide-fade-enter-active[data-v-91659ff5]{transition:opacity .2s ease,transform .2s ease}.slide-fade-leave-active[data-v-91659ff5]{transition:opacity .15s ease,transform .15s ease}.slide-fade-enter-from[data-v-91659ff5],.slide-fade-leave-to[data-v-91659ff5]{opacity:0;transform:translateY(-8px)}.bonus-section[data-v-91659ff5]{background-color:var(--color-reset-bg);border-radius:12px;max-width:760px;padding:1.5rem 2rem;text-align:left;transition:background-color .3s ease;width:100%}@media(max-width:600px){.bonus-section[data-v-91659ff5]{border-radius:8px;padding:1rem}}.bonus-title[data-v-91659ff5]{color:var(--color-text-dim);font-size:.875rem;font-weight:600;letter-spacing:.1em;margin:0 0 1.25rem;text-transform:uppercase}.desktop-only{display:flex!important}.mobile-only{display:none!important}@media(max-width:600px){.desktop-only{display:none!important}.mobile-only{display:inline!important}}header{gap:1.5rem;padding:1.5rem 5rem}header,header .logo-info{align-items:center;display:flex}header .logo-info{gap:.875rem}header .logo-img{height:48px;width:48px}header .logo-text{display:flex;flex-direction:column;gap:.2rem}header .logo-title{color:var(--color-text);font-size:1.25rem;font-weight:700;transition:color .3s ease}header .logo-subtitle{color:var(--color-text-dim);font-size:.75rem;transition:color .3s ease}header .header-right{align-items:center;display:flex;gap:0;margin-left:auto}header .hdr-divider{background-color:var(--color-divider);flex-shrink:0;height:1.25rem;margin:0 1.5rem;width:1px}header .personal-best{align-items:center;display:flex;gap:.5rem}header .pb-label{color:var(--color-text-dim);font-size:.875rem;transition:color .3s ease}header .pb-value{color:var(--color-text);font-size:.9375rem;font-weight:700;transition:color .3s ease}header .theme-wrapper{margin-left:0!important;margin-right:0!important}header .focus-toggle{align-items:center;background:transparent;border:1px solid var(--color-divider);border-radius:8px;color:var(--color-text-dim);cursor:pointer;display:flex;height:2.25rem;justify-content:center;margin-left:.75rem;transition:color .2s ease,border-color .2s ease,background-color .2s ease;width:2.25rem}header .focus-toggle:hover{background-color:var(--color-reset-bg);border-color:var(--color-text-dim);color:var(--color-text)}header .focus-toggle:focus-visible{outline:2px solid var(--color-cursor);outline-offset:2px}header .focus-toggle .iconify{height:1.125rem;width:1.125rem}@media(max-width:600px){header{gap:.5rem;padding:1rem 1.25rem}header .logo-img{height:36px;width:36px}header .logo-text{display:none}header .pb-value{font-weight:700}}@media(min-width:601px)and (max-width:900px){header{gap:.75rem;padding:1rem 1.5rem}header .logo-subtitle{display:none}header .pb-label.desktop-only{display:none!important}header .pb-label.mobile-only{display:inline!important}}main.focused{margin-left:auto;margin-right:auto;max-width:960px;width:100%}main.focused .report-area,main.focused .test-area{padding-left:2rem;padding-right:2rem}.mobile-theme-fab{display:none}@media(max-width:600px){.mobile-theme-fab{bottom:1.25rem;display:block;position:fixed;right:1.25rem;z-index:50}.mobile-theme-fab .theme-wrapper{height:40px!important;margin:0!important;width:40px!important}.mobile-theme-fab .theme-menu{bottom:100%;margin-bottom:.5rem;right:0;top:auto}.mobile-theme-fab .theme-wrapper>span{display:none}}
