.guest-typing-page.svelte-1bt4ev4{box-sizing:border-box;flex-direction:column;width:100%;max-width:1000px;margin:0 auto;padding:2rem 1.5rem;display:flex}.page-header.svelte-1bt4ev4{margin-bottom:1rem}.page-title.svelte-1bt4ev4{color:var(--text-title);letter-spacing:-.02em}.metric-label.svelte-1bt4ev4{color:var(--text-caption);text-transform:uppercase;letter-spacing:.05em;font-size:.65rem;font-weight:700}.metric-value.svelte-1bt4ev4{color:var(--color-accent);font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:800}.passage-text.svelte-1bt4ev4{font-size:var(--passage-font-size,1.35rem);line-height:var(--passage-line-height,2);letter-spacing:.02em;word-break:break-word;-webkit-user-select:none;user-select:none;min-height:120px}.char-item.svelte-1bt4ev4{color:var(--text-caption);border-radius:3px;padding:0 1px;transition:color .1s,background-color .1s;position:relative}.char-item.correct.svelte-1bt4ev4{color:#10b981}.char-item.incorrect.svelte-1bt4ev4{color:#fff;background:var(--color-error)}.char-item.current.svelte-1bt4ev4{color:var(--text-title);border-bottom:2px solid var(--color-accent);background:#d9770626;animation:1s infinite alternate svelte-1bt4ev4-blink-cursor}.char-item.space.incorrect.svelte-1bt4ev4{background:var(--color-error);min-width:.6em;display:inline-block}.char-newline.svelte-1bt4ev4{color:var(--text-caption);opacity:.6;margin-right:.2em;font-size:.85em}.char-newline.correct.svelte-1bt4ev4{color:#10b981}.char-newline.incorrect.svelte-1bt4ev4{color:#fff;background:var(--color-error)}.char-newline.current.svelte-1bt4ev4{border-bottom:2px solid var(--color-accent);background:#d9770626}.hidden-typing-input.svelte-1bt4ev4{opacity:0;cursor:text;z-index:10;resize:none;width:100%;height:100%;position:absolute;top:0;left:0}.line-focus-mode.svelte-1bt4ev4{scroll-behavior:smooth;max-height:140px;overflow-y:hidden}.dyslexia-dimmed.svelte-1bt4ev4{opacity:.25;filter:blur(.5px);transition:opacity .2s,filter .2s}.dyslexia-active.svelte-1bt4ev4{opacity:1;filter:none;color:var(--text-title);font-weight:700;transition:opacity .2s,filter .2s}@keyframes svelte-1bt4ev4-blink-cursor{0%{border-bottom-color:var(--color-accent)}to{border-bottom-color:#0000}}.scale-in-center.svelte-1bt4ev4{animation:.25s cubic-bezier(.25,1,.5,1) both svelte-1bt4ev4-scale-in}@keyframes svelte-1bt4ev4-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
